Only show find when modal is loaded and expand the collapsed cell on find. (#8790)

This commit is contained in:
Maddy
2020-01-01 20:17:50 -08:00
committed by GitHub
parent 51ab435e5f
commit c3ddbba997
3 changed files with 7 additions and 2 deletions

View File

@@ -334,8 +334,10 @@ export class NotebookEditor extends BaseEditor implements IFindNotebookControlle
this._currentMatch = range;
}
public toggleSearch(): void {
// reveal only when the model is loaded
let isRevealed: boolean = !this._findState.isRevealed && this._notebookModel ? !this._findState.isRevealed : false;
this._findState.change({
isRevealed: !this._findState.isRevealed
isRevealed: isRevealed
}, false);
if (this._findState.isRevealed) {
this._finder.focusFindInput();

View File

@@ -144,6 +144,8 @@ export class NotebookFindDecorations implements IDisposable {
private _revealRangeInCenterIfOutsideViewport(match: NotebookRange): void {
let matchEditor = this._editor.getCellEditor(match.cell.cellGuid);
// expand the cell if it's collapsed and scroll into view
match.cell.isCollapsed = false;
if (matchEditor) {
matchEditor.getContainer().scrollIntoView({ behavior: 'smooth', block: 'nearest' });
matchEditor.getControl().revealRangeInCenterIfOutsideViewport(match, ScrollType.Smooth);

View File

@@ -649,9 +649,10 @@ abstract class SettingsCommand extends Command {
class SearchNotebookCommand extends SettingsCommand {
public runCommand(accessor: ServicesAccessor, args: any): void {
public async runCommand(accessor: ServicesAccessor, args: any): Promise<void> {
const notebookEditor = this.getNotebookEditor(accessor);
if (notebookEditor) {
await notebookEditor.setNotebookModel();
notebookEditor.toggleSearch();
}
}