mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-20 00:35:44 +00:00
Bug 1650099 - Unify UrlbarProviders logger boilerplate. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D82939
This commit is contained in:
parent
dccd26f8a7
commit
595dcb2420
@ -289,6 +289,9 @@ pref("browser.urlbar.speculativeConnect.enabled", true);
|
|||||||
// search for bookmarklets typing "javascript: " followed by the actual query.
|
// search for bookmarklets typing "javascript: " followed by the actual query.
|
||||||
pref("browser.urlbar.filter.javascript", true);
|
pref("browser.urlbar.filter.javascript", true);
|
||||||
|
|
||||||
|
// Enable a certain level of urlbar logging to the Browser Console. See Log.jsm.
|
||||||
|
pref("browser.urlbar.loglevel", "Error");
|
||||||
|
|
||||||
// the maximum number of results to show in autocomplete when doing richResults
|
// the maximum number of results to show in autocomplete when doing richResults
|
||||||
pref("browser.urlbar.maxRichResults", 10);
|
pref("browser.urlbar.maxRichResults", 10);
|
||||||
|
|
||||||
|
@ -14,11 +14,11 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
clearTimeout: "resource://gre/modules/Timer.jsm",
|
clearTimeout: "resource://gre/modules/Timer.jsm",
|
||||||
Services: "resource://gre/modules/Services.jsm",
|
Services: "resource://gre/modules/Services.jsm",
|
||||||
setTimeout: "resource://gre/modules/Timer.jsm",
|
setTimeout: "resource://gre/modules/Timer.jsm",
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
||||||
Log.repository.getLogger("Urlbar.EventBufferer")
|
UrlbarUtils.getLogger({ prefix: "EventBufferer" })
|
||||||
);
|
);
|
||||||
|
|
||||||
// Maximum time events can be deferred for.
|
// Maximum time events can be deferred for.
|
||||||
|
@ -14,7 +14,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
Services: "resource://gre/modules/Services.jsm",
|
Services: "resource://gre/modules/Services.jsm",
|
||||||
UrlbarPrefs: "resource:///modules/UrlbarPrefs.jsm",
|
UrlbarPrefs: "resource:///modules/UrlbarPrefs.jsm",
|
||||||
UrlbarMuxer: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarMuxer: "resource:///modules/UrlbarUtils.jsm",
|
||||||
@ -22,7 +21,7 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
||||||
Log.repository.getLogger("Urlbar.Muxer.UnifiedComplete")
|
UrlbarUtils.getLogger({ prefix: "MuxerUnifiedComplete" })
|
||||||
);
|
);
|
||||||
|
|
||||||
function groupFromResult(result) {
|
function groupFromResult(result) {
|
||||||
|
@ -286,6 +286,7 @@ class UrlbarProviderExtension extends UrlbarProvider {
|
|||||||
name: "UrlbarProviderExtension notification timer",
|
name: "UrlbarProviderExtension notification timer",
|
||||||
time: UrlbarProviderExtension.notificationTimeout,
|
time: UrlbarProviderExtension.notificationTimeout,
|
||||||
reportErrorOnTimeout: true,
|
reportErrorOnTimeout: true,
|
||||||
|
logger: this.logger,
|
||||||
});
|
});
|
||||||
result = await Promise.race([
|
result = await Promise.race([
|
||||||
timer.promise,
|
timer.promise,
|
||||||
|
@ -16,7 +16,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
Services: "resource://gre/modules/Services.jsm",
|
Services: "resource://gre/modules/Services.jsm",
|
||||||
UrlbarPrefs: "resource:///modules/UrlbarPrefs.jsm",
|
UrlbarPrefs: "resource:///modules/UrlbarPrefs.jsm",
|
||||||
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
||||||
@ -25,10 +24,6 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.HeuristicFallback")
|
|
||||||
);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class used to create the provider.
|
* Class used to create the provider.
|
||||||
*/
|
*/
|
||||||
@ -83,7 +78,6 @@ class ProviderHeuristicFallback extends UrlbarProvider {
|
|||||||
* @returns {Promise} resolved when the query stops.
|
* @returns {Promise} resolved when the query stops.
|
||||||
*/
|
*/
|
||||||
async startQuery(queryContext, addCallback) {
|
async startQuery(queryContext, addCallback) {
|
||||||
logger.info(`Starting query for ${queryContext.searchString}`);
|
|
||||||
let instance = {};
|
let instance = {};
|
||||||
this.queries.set(queryContext, instance);
|
this.queries.set(queryContext, instance);
|
||||||
|
|
||||||
@ -131,7 +125,6 @@ class ProviderHeuristicFallback extends UrlbarProvider {
|
|||||||
* @param {object} queryContext The query context object
|
* @param {object} queryContext The query context object
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Canceling query for ${queryContext.searchString}`);
|
|
||||||
this.queries.delete(queryContext);
|
this.queries.delete(queryContext);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,7 +14,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
AppUpdater: "resource:///modules/AppUpdater.jsm",
|
AppUpdater: "resource:///modules/AppUpdater.jsm",
|
||||||
BrowserWindowTracker: "resource:///modules/BrowserWindowTracker.jsm",
|
BrowserWindowTracker: "resource:///modules/BrowserWindowTracker.jsm",
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
NLP: "resource://gre/modules/NLP.jsm",
|
NLP: "resource://gre/modules/NLP.jsm",
|
||||||
PrivateBrowsingUtils: "resource://gre/modules/PrivateBrowsingUtils.jsm",
|
PrivateBrowsingUtils: "resource://gre/modules/PrivateBrowsingUtils.jsm",
|
||||||
ResetProfile: "resource://gre/modules/ResetProfile.jsm",
|
ResetProfile: "resource://gre/modules/ResetProfile.jsm",
|
||||||
@ -25,10 +24,6 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.Interventions")
|
|
||||||
);
|
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "appUpdater", () => new AppUpdater());
|
XPCOMUtils.defineLazyGetter(this, "appUpdater", () => new AppUpdater());
|
||||||
|
|
||||||
// The possible tips to show. These names (except NONE) are used in the names
|
// The possible tips to show. These names (except NONE) are used in the names
|
||||||
@ -666,7 +661,6 @@ class ProviderInterventions extends UrlbarProvider {
|
|||||||
* query for.
|
* query for.
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Canceling query for ${queryContext.searchString}`);
|
|
||||||
this.queries.delete(queryContext);
|
this.queries.delete(queryContext);
|
||||||
|
|
||||||
// If we're waiting for appUpdater to finish its update check,
|
// If we're waiting for appUpdater to finish its update check,
|
||||||
|
@ -15,7 +15,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
ExtensionSearchHandler: "resource://gre/modules/ExtensionSearchHandler.jsm",
|
ExtensionSearchHandler: "resource://gre/modules/ExtensionSearchHandler.jsm",
|
||||||
SkippableTimer: "resource:///modules/UrlbarUtils.jsm",
|
SkippableTimer: "resource:///modules/UrlbarUtils.jsm",
|
||||||
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
||||||
@ -23,10 +22,6 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.Omnibox")
|
|
||||||
);
|
|
||||||
|
|
||||||
// After this time, we'll give up waiting for the extension to return matches.
|
// After this time, we'll give up waiting for the extension to return matches.
|
||||||
const MAXIMUM_ALLOWED_EXTENSION_TIME_MS = 3000;
|
const MAXIMUM_ALLOWED_EXTENSION_TIME_MS = 3000;
|
||||||
|
|
||||||
@ -116,7 +111,6 @@ class ProviderOmnibox extends UrlbarProvider {
|
|||||||
* The callback invoked by this method to add each result.
|
* The callback invoked by this method to add each result.
|
||||||
*/
|
*/
|
||||||
async startQuery(queryContext, addCallback) {
|
async startQuery(queryContext, addCallback) {
|
||||||
logger.info(`Starting query for ${queryContext.searchString}`);
|
|
||||||
let instance = {};
|
let instance = {};
|
||||||
this.queries.set(queryContext, instance);
|
this.queries.set(queryContext, instance);
|
||||||
|
|
||||||
@ -173,7 +167,7 @@ class ProviderOmnibox extends UrlbarProvider {
|
|||||||
let timeoutPromise = new SkippableTimer({
|
let timeoutPromise = new SkippableTimer({
|
||||||
name: "ProviderOmnibox",
|
name: "ProviderOmnibox",
|
||||||
time: MAXIMUM_ALLOWED_EXTENSION_TIME_MS,
|
time: MAXIMUM_ALLOWED_EXTENSION_TIME_MS,
|
||||||
logger,
|
logger: this.logger,
|
||||||
}).promise;
|
}).promise;
|
||||||
await Promise.race([timeoutPromise, this._resultsPromise]).catch(
|
await Promise.race([timeoutPromise, this._resultsPromise]).catch(
|
||||||
Cu.reportError
|
Cu.reportError
|
||||||
|
@ -15,7 +15,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
||||||
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
||||||
UrlbarProvidersManager: "resource:///modules/UrlbarProvidersManager.jsm",
|
UrlbarProvidersManager: "resource:///modules/UrlbarProvidersManager.jsm",
|
||||||
@ -23,10 +22,6 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.OpenTabs")
|
|
||||||
);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class used to create the provider.
|
* Class used to create the provider.
|
||||||
*/
|
*/
|
||||||
@ -156,7 +151,6 @@ class ProviderOpenTabs extends UrlbarProvider {
|
|||||||
// temp table to return proper frecency.
|
// temp table to return proper frecency.
|
||||||
// TODO:
|
// TODO:
|
||||||
// * properly search and handle tokens, this is just a mock for now.
|
// * properly search and handle tokens, this is just a mock for now.
|
||||||
logger.info(`Starting query for ${queryContext.searchString}`);
|
|
||||||
let instance = {};
|
let instance = {};
|
||||||
this.queries.set(queryContext, instance);
|
this.queries.set(queryContext, instance);
|
||||||
let conn = await this.promiseDb();
|
let conn = await this.promiseDb();
|
||||||
@ -193,7 +187,6 @@ class ProviderOpenTabs extends UrlbarProvider {
|
|||||||
* @param {object} queryContext The query context object
|
* @param {object} queryContext The query context object
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Canceling query for ${queryContext.searchString}`);
|
|
||||||
this.queries.delete(queryContext);
|
this.queries.delete(queryContext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
Services: "resource://gre/modules/Services.jsm",
|
Services: "resource://gre/modules/Services.jsm",
|
||||||
SkippableTimer: "resource:///modules/UrlbarUtils.jsm",
|
SkippableTimer: "resource:///modules/UrlbarUtils.jsm",
|
||||||
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
||||||
@ -23,10 +22,6 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.PrivateSearch")
|
|
||||||
);
|
|
||||||
|
|
||||||
XPCOMUtils.defineLazyPreferenceGetter(
|
XPCOMUtils.defineLazyPreferenceGetter(
|
||||||
this,
|
this,
|
||||||
"separatePrivateDefaultUIEnabled",
|
"separatePrivateDefaultUIEnabled",
|
||||||
@ -92,8 +87,6 @@ class ProviderPrivateSearch extends UrlbarProvider {
|
|||||||
* @returns {Promise} resolved when the query stops.
|
* @returns {Promise} resolved when the query stops.
|
||||||
*/
|
*/
|
||||||
async startQuery(queryContext, addCallback) {
|
async startQuery(queryContext, addCallback) {
|
||||||
logger.info(`Starting query for ${queryContext.searchString}`);
|
|
||||||
|
|
||||||
let searchString = queryContext.searchString.trim();
|
let searchString = queryContext.searchString.trim();
|
||||||
if (
|
if (
|
||||||
queryContext.tokens.some(
|
queryContext.tokens.some(
|
||||||
@ -119,7 +112,7 @@ class ProviderPrivateSearch extends UrlbarProvider {
|
|||||||
: await Services.search.getDefaultPrivate();
|
: await Services.search.getDefaultPrivate();
|
||||||
let isPrivateEngine =
|
let isPrivateEngine =
|
||||||
separatePrivateDefault && engine != (await Services.search.getDefault());
|
separatePrivateDefault && engine != (await Services.search.getDefault());
|
||||||
logger.info(`isPrivateEngine: ${isPrivateEngine}`);
|
this.logger.info(`isPrivateEngine: ${isPrivateEngine}`);
|
||||||
|
|
||||||
// This is a delay added before returning results, to avoid flicker.
|
// This is a delay added before returning results, to avoid flicker.
|
||||||
// Our result must appear only when all results are searches, but if search
|
// Our result must appear only when all results are searches, but if search
|
||||||
@ -128,7 +121,7 @@ class ProviderPrivateSearch extends UrlbarProvider {
|
|||||||
await new SkippableTimer({
|
await new SkippableTimer({
|
||||||
name: "ProviderPrivateSearch",
|
name: "ProviderPrivateSearch",
|
||||||
time: 100,
|
time: 100,
|
||||||
logger,
|
logger: this.logger,
|
||||||
}).promise;
|
}).promise;
|
||||||
|
|
||||||
let result = new UrlbarResult(
|
let result = new UrlbarResult(
|
||||||
@ -152,7 +145,6 @@ class ProviderPrivateSearch extends UrlbarProvider {
|
|||||||
* @param {object} queryContext The query context object
|
* @param {object} queryContext The query context object
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Canceling query for ${queryContext.searchString}`);
|
|
||||||
this.queries.delete(queryContext);
|
this.queries.delete(queryContext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
SearchSuggestionController:
|
SearchSuggestionController:
|
||||||
"resource://gre/modules/SearchSuggestionController.jsm",
|
"resource://gre/modules/SearchSuggestionController.jsm",
|
||||||
Services: "resource://gre/modules/Services.jsm",
|
Services: "resource://gre/modules/Services.jsm",
|
||||||
@ -27,10 +26,6 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.SearchSuggestions")
|
|
||||||
);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns whether the passed in string looks like a url.
|
* Returns whether the passed in string looks like a url.
|
||||||
* @param {string} str
|
* @param {string} str
|
||||||
@ -215,7 +210,6 @@ class ProviderSearchSuggestions extends UrlbarProvider {
|
|||||||
* @returns {Promise} resolved when the query stops.
|
* @returns {Promise} resolved when the query stops.
|
||||||
*/
|
*/
|
||||||
async startQuery(queryContext, addCallback) {
|
async startQuery(queryContext, addCallback) {
|
||||||
logger.info(`Starting query for ${queryContext.searchString}`);
|
|
||||||
let instance = {};
|
let instance = {};
|
||||||
this.queries.set(queryContext, instance);
|
this.queries.set(queryContext, instance);
|
||||||
|
|
||||||
@ -327,8 +321,6 @@ class ProviderSearchSuggestions extends UrlbarProvider {
|
|||||||
* @param {object} queryContext The query context object
|
* @param {object} queryContext The query context object
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Canceling query for ${queryContext.searchString}`);
|
|
||||||
|
|
||||||
if (this._suggestionsController) {
|
if (this._suggestionsController) {
|
||||||
this._suggestionsController.stop();
|
this._suggestionsController.stop();
|
||||||
this._suggestionsController = null;
|
this._suggestionsController = null;
|
||||||
@ -434,7 +426,7 @@ class ProviderSearchSuggestions extends UrlbarProvider {
|
|||||||
let tailTimer = new SkippableTimer({
|
let tailTimer = new SkippableTimer({
|
||||||
name: "ProviderSearchSuggestions",
|
name: "ProviderSearchSuggestions",
|
||||||
time: 100,
|
time: 100,
|
||||||
logger,
|
logger: this.logger,
|
||||||
});
|
});
|
||||||
|
|
||||||
for (let entry of fetchData.remote) {
|
for (let entry of fetchData.remote) {
|
||||||
|
@ -19,7 +19,6 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
AppMenuNotifications: "resource://gre/modules/AppMenuNotifications.jsm",
|
AppMenuNotifications: "resource://gre/modules/AppMenuNotifications.jsm",
|
||||||
DefaultBrowserCheck: "resource:///modules/BrowserGlue.jsm",
|
DefaultBrowserCheck: "resource:///modules/BrowserGlue.jsm",
|
||||||
BrowserWindowTracker: "resource:///modules/BrowserWindowTracker.jsm",
|
BrowserWindowTracker: "resource:///modules/BrowserWindowTracker.jsm",
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
ProfileAge: "resource://gre/modules/ProfileAge.jsm",
|
ProfileAge: "resource://gre/modules/ProfileAge.jsm",
|
||||||
Services: "resource://gre/modules/Services.jsm",
|
Services: "resource://gre/modules/Services.jsm",
|
||||||
setTimeout: "resource://gre/modules/Timer.jsm",
|
setTimeout: "resource://gre/modules/Timer.jsm",
|
||||||
@ -30,10 +29,6 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.SearchTips")
|
|
||||||
);
|
|
||||||
|
|
||||||
XPCOMUtils.defineLazyServiceGetter(
|
XPCOMUtils.defineLazyServiceGetter(
|
||||||
this,
|
this,
|
||||||
"updateManager",
|
"updateManager",
|
||||||
@ -230,7 +225,6 @@ class ProviderSearchTips extends UrlbarProvider {
|
|||||||
* query for.
|
* query for.
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Canceling query for ${queryContext.searchString}`);
|
|
||||||
this.queries.delete(queryContext);
|
this.queries.delete(queryContext);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,17 +14,12 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
||||||
UrlbarResult: "resource:///modules/UrlbarResult.jsm",
|
UrlbarResult: "resource:///modules/UrlbarResult.jsm",
|
||||||
UrlbarSearchUtils: "resource:///modules/UrlbarSearchUtils.jsm",
|
UrlbarSearchUtils: "resource:///modules/UrlbarSearchUtils.jsm",
|
||||||
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.TokenAliasEngines")
|
|
||||||
);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class used to create the provider.
|
* Class used to create the provider.
|
||||||
*/
|
*/
|
||||||
@ -80,7 +75,6 @@ class ProviderTokenAliasEngines extends UrlbarProvider {
|
|||||||
* result.
|
* result.
|
||||||
*/
|
*/
|
||||||
async startQuery(queryContext, addCallback) {
|
async startQuery(queryContext, addCallback) {
|
||||||
logger.info(`Starting query for ${queryContext.searchString}`);
|
|
||||||
let instance = {};
|
let instance = {};
|
||||||
this.queries.set(queryContext, instance);
|
this.queries.set(queryContext, instance);
|
||||||
|
|
||||||
@ -127,7 +121,6 @@ class ProviderTokenAliasEngines extends UrlbarProvider {
|
|||||||
* @param {object} queryContext The query context object
|
* @param {object} queryContext The query context object
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Canceling query for ${queryContext.searchString}`);
|
|
||||||
this.queries.delete(queryContext);
|
this.queries.delete(queryContext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
|
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
AboutNewTab: "resource:///modules/AboutNewTab.jsm",
|
AboutNewTab: "resource:///modules/AboutNewTab.jsm",
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
||||||
Services: "resource://gre/modules/Services.jsm",
|
Services: "resource://gre/modules/Services.jsm",
|
||||||
UrlbarPrefs: "resource:///modules/UrlbarPrefs.jsm",
|
UrlbarPrefs: "resource:///modules/UrlbarPrefs.jsm",
|
||||||
@ -25,10 +24,6 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
TOP_SITES_DEFAULT_ROWS: "resource://activity-stream/common/Reducers.jsm",
|
TOP_SITES_DEFAULT_ROWS: "resource://activity-stream/common/Reducers.jsm",
|
||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.TopSites")
|
|
||||||
);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This module exports a provider returning the user's newtab Top Sites.
|
* This module exports a provider returning the user's newtab Top Sites.
|
||||||
*/
|
*/
|
||||||
@ -247,7 +242,6 @@ class ProviderTopSites extends UrlbarProvider {
|
|||||||
* query for.
|
* query for.
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Canceling query for ${queryContext.searchString}`);
|
|
||||||
this.queries.delete(queryContext);
|
this.queries.delete(queryContext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
||||||
Services: "resource://gre/modules/Services.jsm",
|
Services: "resource://gre/modules/Services.jsm",
|
||||||
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarProvider: "resource:///modules/UrlbarUtils.jsm",
|
||||||
@ -31,10 +30,6 @@ XPCOMUtils.defineLazyServiceGetter(
|
|||||||
"nsIAutoCompleteSearch"
|
"nsIAutoCompleteSearch"
|
||||||
);
|
);
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
|
||||||
Log.repository.getLogger("Urlbar.Provider.UnifiedComplete")
|
|
||||||
);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class used to create the provider.
|
* Class used to create the provider.
|
||||||
*/
|
*/
|
||||||
@ -80,7 +75,6 @@ class ProviderUnifiedComplete extends UrlbarProvider {
|
|||||||
* @returns {Promise} resolved when the query stops.
|
* @returns {Promise} resolved when the query stops.
|
||||||
*/
|
*/
|
||||||
async startQuery(queryContext, addCallback) {
|
async startQuery(queryContext, addCallback) {
|
||||||
logger.info(`Starting query for ${queryContext.searchString}`);
|
|
||||||
let instance = {};
|
let instance = {};
|
||||||
this.queries.set(queryContext, instance);
|
this.queries.set(queryContext, instance);
|
||||||
let urls = new Set();
|
let urls = new Set();
|
||||||
@ -111,7 +105,6 @@ class ProviderUnifiedComplete extends UrlbarProvider {
|
|||||||
* @param {object} queryContext The query context object
|
* @param {object} queryContext The query context object
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Canceling query for ${queryContext.searchString}`);
|
|
||||||
// This doesn't properly support being used concurrently by multiple fields.
|
// This doesn't properly support being used concurrently by multiple fields.
|
||||||
this.queries.delete(queryContext);
|
this.queries.delete(queryContext);
|
||||||
unifiedComplete.stopSearch();
|
unifiedComplete.stopSearch();
|
||||||
|
@ -15,7 +15,6 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
Log: "resource://gre/modules/Log.jsm",
|
|
||||||
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
||||||
SkippableTimer: "resource:///modules/UrlbarUtils.jsm",
|
SkippableTimer: "resource:///modules/UrlbarUtils.jsm",
|
||||||
UrlbarMuxer: "resource:///modules/UrlbarUtils.jsm",
|
UrlbarMuxer: "resource:///modules/UrlbarUtils.jsm",
|
||||||
@ -27,7 +26,7 @@ XPCOMUtils.defineLazyModuleGetters(this, {
|
|||||||
});
|
});
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
||||||
Log.repository.getLogger("Urlbar.ProvidersManager")
|
UrlbarUtils.getLogger({ prefix: "ProvidersManager" })
|
||||||
);
|
);
|
||||||
|
|
||||||
// List of available local providers, each is implemented in its own jsm module
|
// List of available local providers, each is implemented in its own jsm module
|
||||||
@ -234,7 +233,7 @@ class ProvidersManager {
|
|||||||
* @param {object} queryContext
|
* @param {object} queryContext
|
||||||
*/
|
*/
|
||||||
cancelQuery(queryContext) {
|
cancelQuery(queryContext) {
|
||||||
logger.info(`Query cancel ${queryContext.searchString}`);
|
logger.info(`Query cancel "${queryContext.searchString}"`);
|
||||||
let query = this.queries.get(queryContext);
|
let query = this.queries.get(queryContext);
|
||||||
if (!query) {
|
if (!query) {
|
||||||
throw new Error("Couldn't find a matching query for the given context");
|
throw new Error("Couldn't find a matching query for the given context");
|
||||||
@ -363,13 +362,21 @@ class Query {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Start querying active providers.
|
// Start querying active providers.
|
||||||
|
|
||||||
let queryPromises = [];
|
let queryPromises = [];
|
||||||
|
let startQuery = provider => {
|
||||||
|
provider.logger.info(`Starting query for "${this.context.searchString}"`);
|
||||||
|
return provider.tryMethod(
|
||||||
|
"startQuery",
|
||||||
|
this.context,
|
||||||
|
this.add.bind(this)
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
for (let provider of activeProviders) {
|
for (let provider of activeProviders) {
|
||||||
if (provider.type == UrlbarUtils.PROVIDER_TYPE.HEURISTIC) {
|
if (provider.type == UrlbarUtils.PROVIDER_TYPE.HEURISTIC) {
|
||||||
this.context.pendingHeuristicProviders.add(provider.name);
|
this.context.pendingHeuristicProviders.add(provider.name);
|
||||||
queryPromises.push(
|
queryPromises.push(startQuery(provider));
|
||||||
provider.tryMethod("startQuery", this.context, this.add.bind(this))
|
|
||||||
);
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (!this._sleepTimer) {
|
if (!this._sleepTimer) {
|
||||||
@ -379,20 +386,13 @@ class Query {
|
|||||||
this._sleepTimer = new SkippableTimer({
|
this._sleepTimer = new SkippableTimer({
|
||||||
name: "Query provider timer",
|
name: "Query provider timer",
|
||||||
time: UrlbarPrefs.get("delay"),
|
time: UrlbarPrefs.get("delay"),
|
||||||
logger,
|
logger: provider.logger,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
queryPromises.push(
|
queryPromises.push(
|
||||||
this._sleepTimer.promise.then(() => {
|
this._sleepTimer.promise.then(() =>
|
||||||
if (this.canceled) {
|
this.canceled ? undefined : startQuery(provider)
|
||||||
return undefined;
|
)
|
||||||
}
|
|
||||||
return provider.tryMethod(
|
|
||||||
"startQuery",
|
|
||||||
this.context,
|
|
||||||
this.add.bind(this)
|
|
||||||
);
|
|
||||||
})
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -418,6 +418,9 @@ class Query {
|
|||||||
}
|
}
|
||||||
this.canceled = true;
|
this.canceled = true;
|
||||||
for (let provider of this.providers) {
|
for (let provider of this.providers) {
|
||||||
|
provider.logger.info(
|
||||||
|
`Canceling query for "${this.context.searchString}"`
|
||||||
|
);
|
||||||
provider.tryMethod("cancelQuery", this.context);
|
provider.tryMethod("cancelQuery", this.context);
|
||||||
}
|
}
|
||||||
if (this._chunkTimer) {
|
if (this._chunkTimer) {
|
||||||
@ -518,7 +521,7 @@ class Query {
|
|||||||
name: "Heuristic provider timer",
|
name: "Heuristic provider timer",
|
||||||
callback: () => this._notifyResults(),
|
callback: () => this._notifyResults(),
|
||||||
time: CHUNK_RESULTS_DELAY_MS,
|
time: CHUNK_RESULTS_DELAY_MS,
|
||||||
logger,
|
logger: provider.logger,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else if (!this._chunkTimer) {
|
} else if (!this._chunkTimer) {
|
||||||
@ -526,7 +529,7 @@ class Query {
|
|||||||
name: "Query chunk timer",
|
name: "Query chunk timer",
|
||||||
callback: () => this._notifyResults(),
|
callback: () => this._notifyResults(),
|
||||||
time: CHUNK_RESULTS_DELAY_MS,
|
time: CHUNK_RESULTS_DELAY_MS,
|
||||||
logger,
|
logger: provider.logger,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// If all active heuristic providers have returned results, we can skip the
|
// If all active heuristic providers have returned results, we can skip the
|
||||||
@ -570,13 +573,13 @@ class Query {
|
|||||||
|
|
||||||
// Crop results to the requested number, taking their result spans into
|
// Crop results to the requested number, taking their result spans into
|
||||||
// account.
|
// account.
|
||||||
logger.debug(
|
|
||||||
`Cropping ${this.context.results.length} results to ${this.context.maxResults}`
|
|
||||||
);
|
|
||||||
let resultCount = this.context.maxResults;
|
let resultCount = this.context.maxResults;
|
||||||
for (let i = 0; i < this.context.results.length; i++) {
|
for (let i = 0; i < this.context.results.length; i++) {
|
||||||
resultCount -= UrlbarUtils.getSpanForResult(this.context.results[i]);
|
resultCount -= UrlbarUtils.getSpanForResult(this.context.results[i]);
|
||||||
if (resultCount < 0) {
|
if (resultCount < 0) {
|
||||||
|
logger.debug(
|
||||||
|
`Splicing results from ${i} to crop results to ${this.context.maxResults}`
|
||||||
|
);
|
||||||
this.context.results.splice(i, this.context.results.length - i);
|
this.context.results.splice(i, this.context.results.length - i);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -15,11 +15,13 @@ var EXPORTED_SYMBOLS = ["UrlbarTokenizer"];
|
|||||||
const { XPCOMUtils } = ChromeUtils.import(
|
const { XPCOMUtils } = ChromeUtils.import(
|
||||||
"resource://gre/modules/XPCOMUtils.jsm"
|
"resource://gre/modules/XPCOMUtils.jsm"
|
||||||
);
|
);
|
||||||
const { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm");
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
|
Services: "resource://gre/modules/Services.jsm",
|
||||||
|
UrlbarUtils: "resource:///modules/UrlbarUtils.jsm",
|
||||||
|
});
|
||||||
|
|
||||||
ChromeUtils.defineModuleGetter(this, "Log", "resource://gre/modules/Log.jsm");
|
|
||||||
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
||||||
Log.repository.getLogger("Urlbar.Tokenizer")
|
UrlbarUtils.getLogger({ prefix: "Tokenizer" })
|
||||||
);
|
);
|
||||||
|
|
||||||
var UrlbarTokenizer = {
|
var UrlbarTokenizer = {
|
||||||
|
@ -23,6 +23,7 @@ const { XPCOMUtils } = ChromeUtils.import(
|
|||||||
XPCOMUtils.defineLazyModuleGetters(this, {
|
XPCOMUtils.defineLazyModuleGetters(this, {
|
||||||
BrowserUtils: "resource://gre/modules/BrowserUtils.jsm",
|
BrowserUtils: "resource://gre/modules/BrowserUtils.jsm",
|
||||||
BrowserWindowTracker: "resource:///modules/BrowserWindowTracker.jsm",
|
BrowserWindowTracker: "resource:///modules/BrowserWindowTracker.jsm",
|
||||||
|
Log: "resource://gre/modules/Log.jsm",
|
||||||
PrivateBrowsingUtils: "resource://gre/modules/PrivateBrowsingUtils.jsm",
|
PrivateBrowsingUtils: "resource://gre/modules/PrivateBrowsingUtils.jsm",
|
||||||
PlacesUIUtils: "resource:///modules/PlacesUIUtils.jsm",
|
PlacesUIUtils: "resource:///modules/PlacesUIUtils.jsm",
|
||||||
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
PlacesUtils: "resource://gre/modules/PlacesUtils.jsm",
|
||||||
@ -659,6 +660,30 @@ var UrlbarUtils = {
|
|||||||
}
|
}
|
||||||
return context.heuristicResult;
|
return context.heuristicResult;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a logger.
|
||||||
|
* Logging level can be controlled through browser.urlbar.loglevel.
|
||||||
|
* @param {string} [prefix] Prefix to use for the logged messages, "::" will
|
||||||
|
* be appended automatically to the prefix.
|
||||||
|
* @returns {object} The logger.
|
||||||
|
*/
|
||||||
|
getLogger({ prefix = "" } = {}) {
|
||||||
|
if (!this._logger) {
|
||||||
|
this._logger = Log.repository.getLogger("urlbar");
|
||||||
|
this._logger.manageLevelFromPref("browser.urlbar.loglevel");
|
||||||
|
this._logger.addAppender(
|
||||||
|
new Log.ConsoleAppender(new Log.BasicFormatter())
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (prefix) {
|
||||||
|
// This is not an early return because it is necessary to invoke getLogger
|
||||||
|
// at least once before getLoggerWithMessagePrefix; it replaces a
|
||||||
|
// method of the original logger, rather than using an actual Proxy.
|
||||||
|
return Log.repository.getLoggerWithMessagePrefix("urlbar", prefix + "::");
|
||||||
|
}
|
||||||
|
return this._logger;
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
XPCOMUtils.defineLazyGetter(UrlbarUtils.ICON, "DEFAULT", () => {
|
XPCOMUtils.defineLazyGetter(UrlbarUtils.ICON, "DEFAULT", () => {
|
||||||
@ -1100,6 +1125,12 @@ class UrlbarMuxer {
|
|||||||
* The provider scope is to query a datasource and return results from it.
|
* The provider scope is to query a datasource and return results from it.
|
||||||
*/
|
*/
|
||||||
class UrlbarProvider {
|
class UrlbarProvider {
|
||||||
|
constructor() {
|
||||||
|
XPCOMUtils.defineLazyGetter(this, "logger", () =>
|
||||||
|
UrlbarUtils.getLogger({ prefix: `Provider.${this.name}` })
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Unique name for the provider, used by the context to filter on providers.
|
* Unique name for the provider, used by the context to filter on providers.
|
||||||
* Not using a unique name will cause the newest registration to win.
|
* Not using a unique name will cause the newest registration to win.
|
||||||
|
Loading…
Reference in New Issue
Block a user