Bug 1336395 - Disallow same alias in search engines r?jaws
MozReview-Commit-ID: 7iVcm5343R5
--- a/browser/components/preferences/in-content-old/search.js
+++ b/browser/components/preferences/in-content-old/search.js
@@ -261,20 +261,20 @@ var gSearchPane = {
let eduplicate = false;
let dupName = "";
// Check for duplicates in Places keywords.
let bduplicate = !!(await PlacesUtils.keywords.fetch(keyword));
// Check for duplicates in changes we haven't committed yet
let engines = gEngineView._engineStore.engines;
- let lc_keyword = keyword.toLowerCase();
+ let lc_keyword = keyword.toLocaleLowerCase();
for (let engine of engines) {
if (engine.alias &&
- engine.alias.toLowerCase() == lc_keyword &&
+ engine.alias.toLocaleLowerCase() == lc_keyword &&
engine.name != aEngine.name) {
eduplicate = true;
dupName = engine.name;
break;
}
}
// Notify the user if they have chosen an existing engine/bookmark keyword
--- a/browser/components/preferences/in-content/main.js
+++ b/browser/components/preferences/in-content/main.js
@@ -1040,20 +1040,20 @@ var gMainPane = {
let eduplicate = false;
let dupName = "";
// Check for duplicates in Places keywords.
let bduplicate = !!(await PlacesUtils.keywords.fetch(keyword));
// Check for duplicates in changes we haven't committed yet
let engines = gEngineView._engineStore.engines;
- let lc_keyword = keyword.toLowerCase();
+ let lc_keyword = keyword.toLocaleLowerCase();
for (let engine of engines) {
if (engine.alias &&
- engine.alias.toLowerCase() == lc_keyword &&
+ engine.alias.toLocaleLowerCase() == lc_keyword &&
engine.name != aEngine.name) {
eduplicate = true;
dupName = engine.name;
break;
}
}
// Notify the user if they have chosen an existing engine/bookmark keyword
--- a/browser/components/preferences/in-content/tests/browser_engines.js
+++ b/browser/components/preferences/in-content/tests/browser_engines.js
@@ -1,52 +1,27 @@
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
// Test Engine list
add_task(async function() {
let prefs = await openPreferencesViaOpenPreferencesAPI("general-search", {leaveOpen: true});
is(prefs.selectedPane, "paneGeneral", "General pane is selected by default");
let doc = gBrowser.contentDocument;
let tree = doc.querySelector("#engineList");
ok(!tree.hidden, "The search engine list should be visible when Search is requested");
// Check for default search engines to be displayed in the engineList
let defaultEngines = Services.search.getDefaultEngines();
for(let i=0; i<defaultEngines.length; i++) {
let engine = defaultEngines[i];
- let cellName = tree.view.getCellText(i,tree.columns.getNamedColumn('engineName'));
- is(cellName, engine.name,'Default search engine '+engine.name+' displayed correctly');
+ let cellName = tree.view.getCellText(i, tree.columns.getNamedColumn('engineName'));
+ is(cellName, engine.name, 'Default search engine ' + engine.name + ' displayed correctly');
}
// Avoid duplicated keywords
- tree.view.setCellText(0,tree.columns.getNamedColumn('engineKeyword'),'keyword');
- tree.view.setCellText(1,tree.columns.getNamedColumn('engineKeyword'),'keyword');
+ tree.view.setCellText(0,tree.columns.getNamedColumn('engineKeyword'), 'keyword');
+ tree.view.setCellText(1,tree.columns.getNamedColumn('engineKeyword'), 'keyword');
let cellKeyword = tree.view.getCellText(1,tree.columns.getNamedColumn('engineKeyword'));
- isnot(cellKeyword, 'keyword','Do not allow duplicated keywords');
+ isnot(cellKeyword, 'keyword', 'Do not allow duplicated keywords');
- // Enable Disable Engines
- tree.view.setCellValue(0,tree.columns.getNamedColumn('engineShown'), false);
- is(tree.view.getCellValue(0,tree.columns.getNamedColumn('engineShown')) , 'false', 'Disable engine');
- tree.view.setCellValue(0,tree.columns.getNamedColumn('engineShown'), true);
- is(tree.view.getCellValue(0,tree.columns.getNamedColumn('engineShown')) , 'true', 'Enable engine');
await BrowserTestUtils.removeTab(gBrowser.selectedTab);
});
-
-function openPreferencesViaHash(aPane) {
- return new Promise(resolve => {
- gBrowser.selectedTab = gBrowser.addTab("about:preferences" + (aPane ? "#" + aPane : ""));
- let newTabBrowser = gBrowser.selectedBrowser;
-
- newTabBrowser.addEventListener("Initialized", function() {
- newTabBrowser.contentWindow.addEventListener("load", function() {
- let win = gBrowser.contentWindow;
- let selectedPane = win.history.state;
- gBrowser.removeCurrentTab();
- resolve({selectedPane});
- }, {once: true});
- }, {capture: true, once: true});
-
- });
-}