From 18d8c1411ac2e4dd1c4858bdda066ee9f8f38208 Mon Sep 17 00:00:00 2001 From: Andrew Schlaepfer Date: Thu, 2 May 2019 10:44:18 -0700 Subject: [PATCH] remove notion of default search providers --- .../documentsearch-extension/src/index.ts | 10 ++++-- .../src/searchproviderregistry.ts | 35 +++---------------- 2 files changed, 11 insertions(+), 34 deletions(-) diff --git a/packages/documentsearch-extension/src/index.ts b/packages/documentsearch-extension/src/index.ts index 2e630b026b1a..3655cce2f5b2 100644 --- a/packages/documentsearch-extension/src/index.ts +++ b/packages/documentsearch-extension/src/index.ts @@ -12,7 +12,9 @@ import { ICommandPalette } from '@jupyterlab/apputils'; import { ISearchProviderRegistry, SearchInstance, - SearchProviderRegistry + SearchProviderRegistry, + CodeMirrorSearchProvider, + NotebookSearchProvider } from '@jupyterlab/documentsearch'; import { IMainMenu } from '@jupyterlab/mainmenu'; @@ -79,8 +81,10 @@ const extension: JupyterFrontEndPlugin = { ) => { // Create registry, retrieve all default providers const registry: SearchProviderRegistry = new SearchProviderRegistry(); - // TODO: Should register the default providers, with an application-specific - // enabler. + + // Register default implementations of the Notebook and CodeMirror search providers + registry.register('jp-notebookSearchProvider', NotebookSearchProvider); + registry.register('jp-codeMirrorSearchProvider', CodeMirrorSearchProvider); const activeSearches = new Map(); diff --git a/packages/documentsearch/src/searchproviderregistry.ts b/packages/documentsearch/src/searchproviderregistry.ts index be0a517395a8..e35c24798781 100644 --- a/packages/documentsearch/src/searchproviderregistry.ts +++ b/packages/documentsearch/src/searchproviderregistry.ts @@ -1,8 +1,6 @@ // Copyright (c) Jupyter Development Team. // Distributed under the terms of the Modified BSD License. import { ISearchProvider, ISearchProviderConstructor } from './interfaces'; -import { CodeMirrorSearchProvider } from './providers/codemirrorsearchprovider'; -import { NotebookSearchProvider } from './providers/notebooksearchprovider'; import { Token } from '@phosphor/coreutils'; import { Widget } from '@phosphor/widgets'; @@ -43,17 +41,6 @@ export interface ISearchProviderRegistry { } export class SearchProviderRegistry implements ISearchProviderRegistry { - constructor() { - this._registerDefaultProviders( - 'jl-defaultNotebookSearchProvider', - NotebookSearchProvider - ); - this._registerDefaultProviders( - 'jl-defaultCodeMirrorSearchProvider', - CodeMirrorSearchProvider - ); - } - /** * Add a provider to the registry. * @@ -61,10 +48,10 @@ export class SearchProviderRegistry implements ISearchProviderRegistry { * @returns A disposable delegate that, when disposed, deregisters the given search provider */ register(key: string, provider: ISearchProviderConstructor): IDisposable { - this._customProviders.set(key, provider); + this._providerMap.set(key, provider); this._changed.emit(); return new DisposableDelegate(() => { - this._customProviders.delete(key); + this._providerMap.delete(key); this._changed.emit(); }); } @@ -76,10 +63,7 @@ export class SearchProviderRegistry implements ISearchProviderRegistry { * @returns the search provider, or undefined if none exists. */ getProviderForWidget(widget: Widget): ISearchProvider | undefined { - return ( - this._findMatchingProvider(this._customProviders, widget) || - this._findMatchingProvider(this._defaultProviders, widget) - ); + return this._findMatchingProvider(this._providerMap, widget); } /** @@ -90,13 +74,6 @@ export class SearchProviderRegistry implements ISearchProviderRegistry { return this._changed; } - private _registerDefaultProviders( - key: string, - provider: ISearchProviderConstructor - ): void { - this._defaultProviders.set(key, provider); - } - private _findMatchingProvider( providerMap: Private.ProviderMap, widget: Widget @@ -112,11 +89,7 @@ export class SearchProviderRegistry implements ISearchProviderRegistry { } private _changed = new Signal(this); - private _defaultProviders: Private.ProviderMap = new Map< - string, - ISearchProviderConstructor - >(); - private _customProviders: Private.ProviderMap = new Map< + private _providerMap: Private.ProviderMap = new Map< string, ISearchProviderConstructor >();