merge fx-team to mozilla-central a=merge

This commit is contained in:
Carsten "Tomcat" Book 2016-05-09 11:15:51 +02:00
commit 53d7c78e72
164 changed files with 741 additions and 2451 deletions

View File

@ -277,7 +277,7 @@
</menulist>
<textbox id="autocomplete" type="autocomplete"
autocompletesearch="history"
autocompletesearch="unifiedcomplete"
value="http://mochi.test:8888/redirect-a11y.html"/>
<textbox id="autocomplete2" type="autocomplete">

View File

@ -547,9 +547,6 @@
@RESPATH@/components/nsLivemarkService.js
@RESPATH@/components/nsTaggingService.js
@RESPATH@/components/nsPlacesDBFlush.js
@RESPATH@/components/nsPlacesAutoComplete.manifest
@RESPATH@/components/nsPlacesAutoComplete.js
@RESPATH@/components/UnifiedComplete.manifest
@RESPATH@/components/UnifiedComplete.js
@RESPATH@/components/nsPlacesExpiration.js
@RESPATH@/components/PlacesCategoriesStarter.js

View File

@ -298,8 +298,6 @@ pref("browser.urlbar.doubleClickSelectsAll", false);
pref("browser.urlbar.autoFill", true);
pref("browser.urlbar.autoFill.typed", true);
pref("browser.urlbar.unifiedcomplete", true);
// 0: Match anywhere (e.g., middle of words)
// 1: Match on word boundaries and then try matching anywhere
// 2: Match only on word boundaries (e.g., after / or .)

View File

@ -722,7 +722,7 @@
<textbox id="urlbar" flex="1"
placeholder="&urlbar.placeholder2;"
type="autocomplete"
autocompletesearch="urlinline history"
autocompletesearch="unifiedcomplete"
autocompletesearchparam="enable-actions"
autocompletepopup="PopupAutoCompleteRichResult"
completeselectedindex="true"

View File

@ -67,10 +67,6 @@
Components.classes["@mozilla.org/browser/favicon-service;1"]
.getService(Components.interfaces.nsIFaviconService);
</field>
<field name="_placesAutocomplete" readonly="true">
Components.classes["@mozilla.org/autocomplete/search;1?name=history"]
.getService(Components.interfaces.mozIPlacesAutoComplete);
</field>
<field name="_unifiedComplete" readonly="true">
Components.classes["@mozilla.org/autocomplete/search;1?name=unifiedcomplete"]
.getService(Components.interfaces.mozIPlacesAutoComplete);
@ -796,10 +792,8 @@
this.mBrowser.mIconURL = null;
}
let autocomplete = this.mTabBrowser._placesAutocomplete;
let unifiedComplete = this.mTabBrowser._unifiedComplete;
if (this.mBrowser.registeredOpenURI) {
autocomplete.unregisterOpenPage(this.mBrowser.registeredOpenURI);
unifiedComplete.unregisterOpenPage(this.mBrowser.registeredOpenURI);
delete this.mBrowser.registeredOpenURI;
}
@ -808,7 +802,6 @@
if (!isBlankPageURL(aLocation.spec) &&
(!PrivateBrowsingUtils.isWindowPrivate(window) ||
PrivateBrowsingUtils.permanentPrivateBrowsing)) {
autocomplete.registerOpenPage(aLocation);
unifiedComplete.registerOpenPage(aLocation);
this.mBrowser.registeredOpenURI = aLocation;
}
@ -2394,7 +2387,6 @@
listener.destroy();
if (browser.registeredOpenURI && !aAdoptedByTab) {
this._placesAutocomplete.unregisterOpenPage(browser.registeredOpenURI);
this._unifiedComplete.unregisterOpenPage(browser.registeredOpenURI);
delete browser.registeredOpenURI;
}
@ -2743,7 +2735,6 @@
<![CDATA[
// If the current URI is registered as open remove it from the list.
if (aOurBrowser.registeredOpenURI) {
this._placesAutocomplete.unregisterOpenPage(aOurBrowser.registeredOpenURI);
this._unifiedComplete.unregisterOpenPage(aOurBrowser.registeredOpenURI);
delete aOurBrowser.registeredOpenURI;
}
@ -4525,7 +4516,6 @@
for (let tab of this.tabs) {
let browser = tab.linkedBrowser;
if (browser.registeredOpenURI) {
this._placesAutocomplete.unregisterOpenPage(browser.registeredOpenURI);
this._unifiedComplete.unregisterOpenPage(browser.registeredOpenURI);
delete browser.registeredOpenURI;
}

View File

@ -15,7 +15,6 @@ skip-if = (os == "linux" || os == "mac") && debug # bug 970052, bug 970053
[browser_autocomplete_edit_completed.js]
[browser_autocomplete_enter_race.js]
[browser_autocomplete_no_title.js]
[browser_autocomplete_oldschool_wrap.js]
[browser_autocomplete_tag_star_visibility.js]
[browser_bug1104165-switchtab-decodeuri.js]
[browser_bug1003461-switchtab-override.js]

View File

@ -12,13 +12,6 @@ function* promise_first_result(inputText) {
add_task(function*() {
// This test is only relevant if UnifiedComplete is enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
let tab = gBrowser.selectedTab = gBrowser.addTab("about:mozilla");
let tabs = [tab];
registerCleanupFunction(function* () {

View File

@ -1,11 +1,4 @@
add_task(function*() {
// This test is only relevant if UnifiedComplete is enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
let bm = yield PlacesUtils.bookmarks.insert({ parentGuid: PlacesUtils.bookmarks.unfiledGuid,
url: "http://example.com/?q=%s",
title: "test" });

View File

@ -1,14 +1,4 @@
/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
add_task(function* () {
// This test is only relevant if UnifiedComplete is enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
Services.search.addEngineWithDetails("MozSearch", "", "", "", "GET",
"http://example.com/?q={searchTerms}");
let engine = Services.search.getEngineByName("MozSearch");

View File

@ -1,16 +1,4 @@
/**
* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/
**/
add_task(function* () {
// This test is only relevant if UnifiedComplete is enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
let iconURI = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABGklEQVQoz2NgGB6AnZ1dUlJSXl4eSDIyMhLW4Ovr%2B%2Fr168uXL69Zs4YoG%2BLi4i5dusTExMTGxsbNzd3f37937976%2BnpmZmagbHR09J49e5YvX66kpATVEBYW9ubNm2nTphkbG7e2tp44cQLIuHfvXm5urpaWFlDKysqqu7v73LlzECMYIiIiHj58mJCQoKKicvXq1bS0NKBgW1vbjh074uPjgeqAXE1NzSdPnvDz84M0AEUvXLgAsW379u1z5swBen3jxo2zZ892cHB4%2BvQp0KlAfwI1cHJyghQFBwfv2rULokFXV%2FfixYu7d%2B8GGqGgoMDKyrpu3br9%2B%2FcDuXl5eVA%2FAEWBfoWHAdAYoNuAYQ0XAeoUERFhGDYAAPoUaT2dfWJuAAAAAElFTkSuQmCC";
Services.search.addEngineWithDetails("MozSearch", iconURI, "moz", "", "GET",
"http://example.com/?q={searchTerms}");

View File

@ -6,14 +6,6 @@ const SUGGEST_ALL_PREF = "browser.search.suggest.enabled";
const SUGGEST_URLBAR_PREF = "browser.urlbar.suggest.searches";
const TEST_ENGINE_BASENAME = "searchSuggestionEngine.xml";
add_task(function* prepare() {
// This test is only relevant if UnifiedComplete is enabled.
Services.prefs.setBoolPref(UNIFIEDCOMPLETE_PREF, true);
registerCleanupFunction(() => {
Services.prefs.clearUserPref(UNIFIEDCOMPLETE_PREF);
});
});
add_task(function* switchToTab() {
let tab = gBrowser.addTab("about:about");
yield promiseTabLoaded(tab);

View File

@ -9,13 +9,6 @@ function is_selected(index) {
}
add_task(function*() {
// This test is only relevant if UnifiedComplete is enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
let maxResults = Services.prefs.getIntPref("browser.urlbar.maxRichResults");
registerCleanupFunction(function* () {

View File

@ -1,11 +1,4 @@
add_task(function*() {
// This test is only relevant if UnifiedComplete is enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
let tab = gBrowser.selectedTab = gBrowser.addTab("about:mozilla", {animate: false});
yield promiseTabLoaded(tab);
yield promiseAutocompleteResultPopup("www.mozilla.org");

View File

@ -6,18 +6,10 @@ add_task(function*() {
{ uri: makeURI("http://example.com/foo/bar") },
]);
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
yield* do_test();
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", false);
yield* do_test();
});
registerCleanupFunction(function* () {
yield PlacesTestUtils.clearHistory();
});
registerCleanupFunction(function* () {
Services.prefs.clearUserPref("browser.urlbar.unifiedcomplete");
yield PlacesTestUtils.clearHistory();
});
function* do_test() {
gBrowser.selectedTab = gBrowser.addTab("about:blank");
gURLBar.focus();
@ -50,4 +42,4 @@ function* do_test() {
waitForDocLoadAndStopIt("http://" + editedValue)]);
gBrowser.removeTab(gBrowser.selectedTab);
}
});

View File

@ -1,9 +1,5 @@
add_task(function*() {
// This test is only relevant if UnifiedComplete is enabled.
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(function* () {
Services.prefs.clearUserPref("browser.urlbar.unifiedcomplete");
yield PlacesUtils.bookmarks.remove(bm);
});

View File

@ -1,14 +1,4 @@
/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
add_task(function*() {
// This test is only relevant if UnifiedComplete is enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
let tab = gBrowser.selectedTab = gBrowser.addTab("about:mozilla", {animate: false});
yield promiseTabLoaded(tab);

View File

@ -1,74 +0,0 @@
function repeat(limit, func) {
for (let i = 0; i < limit; i++) {
func(i);
}
}
function is_selected(index) {
is(gURLBar.popup.richlistbox.selectedIndex, index, `Item ${index + 1} should be selected`);
}
add_task(function*() {
// This test is only relevant if UnifiedComplete is *disabled*.
if (Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete")) {
ok(true, "Don't run this test with UnifiedComplete enabled.")
return;
}
yield PlacesTestUtils.clearHistory();
let visits = [];
repeat(10, i => {
visits.push({
uri: makeURI("http://example.com/autocomplete/?" + i),
});
});
yield PlacesTestUtils.addVisits(visits);
registerCleanupFunction(function* () {
yield PlacesTestUtils.clearHistory();
});
let tab = gBrowser.selectedTab = gBrowser.addTab("about:mozilla", {animate: false});
yield promiseTabLoaded(tab);
yield promiseAutocompleteResultPopup("example.com/autocomplete");
let popup = gURLBar.popup;
let results = popup.richlistbox.children.filter(is_visible);
is(results.length, 10, "Should get 10 results");
is_selected(-1);
info("Key Down to select the next item");
EventUtils.synthesizeKey("VK_DOWN", {});
is_selected(0);
info("Key Up to select the previous item");
EventUtils.synthesizeKey("VK_UP", {});
is_selected(-1);
info("Key Down to select the next item");
EventUtils.synthesizeKey("VK_DOWN", {});
is_selected(0);
info("Key Down 11 times should wrap around all the way around");
repeat(11, () => EventUtils.synthesizeKey("VK_DOWN", {}));
is_selected(0);
info("Key Up 11 times should wrap around the other way");
repeat(11, () => EventUtils.synthesizeKey("VK_UP", {}));
is_selected(0);
info("Page Up will go up the list, but not wrap");
repeat(4, () => EventUtils.synthesizeKey("VK_DOWN", {}));
is_selected(4);
EventUtils.synthesizeKey("VK_PAGE_UP", {})
is_selected(0);
info("Page Up again will wrap around to the end of the list");
EventUtils.synthesizeKey("VK_PAGE_UP", {})
is_selected(-1);
EventUtils.synthesizeKey("VK_ESCAPE", {});
yield promisePopupHidden(gURLBar.popup);
gBrowser.removeTab(tab);
});

View File

@ -1,11 +1,6 @@
add_task(function*() {
// This test is only relevant if UnifiedComplete is enabled.
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
PlacesUtils.bookmarks.removeFolderChildren(PlacesUtils.unfiledBookmarksFolderId);
Services.prefs.clearUserPref("browser.urlbar.unifiedcomplete");
Services.prefs.clearUserPref("browser.urlbar.suggest.bookmark");
});
function* addTagItem(tagName) {

View File

@ -3,13 +3,6 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
add_task(function* test_switchtab_override() {
// This test is only relevant if UnifiedComplete is enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
let testURL = "http://example.org/browser/browser/base/content/test/urlbar/dummy_page.html";
info("Opening first tab");

View File

@ -6,13 +6,6 @@ function is_selected(index) {
}
add_task(function*() {
// This test is only relevant if UnifiedComplete is enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
let bookmarks = [];
bookmarks.push((yield PlacesUtils.bookmarks
.insert({ parentGuid: PlacesUtils.bookmarks.unfiledGuid,

View File

@ -1,13 +1,8 @@
/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
var gOriginalEngine;
var gEngine;
var gUnifiedCompletePref = "browser.urlbar.unifiedcomplete";
var gRestyleSearchesPref = "browser.urlbar.restyleSearches";
registerCleanupFunction(() => {
Services.prefs.clearUserPref(gUnifiedCompletePref);
Services.prefs.clearUserPref(gRestyleSearchesPref);
Services.search.currentEngine = gOriginalEngine;
Services.search.removeEngine(gEngine);
@ -15,7 +10,6 @@ registerCleanupFunction(() => {
});
add_task(function*() {
Services.prefs.setBoolPref(gUnifiedCompletePref, true);
Services.prefs.setBoolPref(gRestyleSearchesPref, true);
});

View File

@ -20,7 +20,8 @@ var gTabCounter = 0;
var gTestSteps = [
function() {
info("Running step 1");
for (let i = 0; i < 10; i++) {
let maxResults = Services.prefs.getIntPref("browser.urlbar.maxRichResults");
for (let i = 0; i < maxResults - 1; i++) {
let tab = gBrowser.addTab();
loadTab(tab, TEST_URL_BASES[0] + (++gTabCounter));
}
@ -191,7 +192,7 @@ function checkAutocompleteResults(aExpected, aCallback)
gController.input = {
timeout: 10,
textValue: "",
searches: ["history"],
searches: ["unifiedcomplete"],
searchParam: "enable-actions",
popupOpen: false,
minResultsForPopup: 0,
@ -205,7 +206,12 @@ function checkAutocompleteResults(aExpected, aCallback)
info("Found " + gController.matchCount + " matches.");
// Check to see the expected uris and titles match up (in any order)
for (let i = 0; i < gController.matchCount; i++) {
let uri = gController.getValueAt(i).replace(/^moz-action:[^,]+,/i, "");
if (gController.getStyleAt(i).includes("heuristic")) {
info("Skip heuristic match");
continue;
}
let action = gURLBar.popup.input._parseActionUrl(gController.getValueAt(i));
let uri = action.params.url;
info("Search for '" + uri + "' in open tabs.");
let expected = uri in aExpected;

View File

@ -54,10 +54,7 @@ function continue_test() {
test_autoFill("http://au", "http://autofilltrimurl.com/", function () {
test_autoFill("http://www.autofilltrimurl.com", "http://www.autofilltrimurl.com/", function () {
// Now ensure selecting from the popup correctly trims.
if (Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete"))
is(gURLBar.controller.matchCount, 2, "Found the expected number of matches");
else
is(gURLBar.controller.matchCount, 1, "Found the expected number of matches");
is(gURLBar.controller.matchCount, 2, "Found the expected number of matches");
EventUtils.synthesizeKey("VK_DOWN", {});
is(gURLBar.textValue, "www.autofilltrimurl.com/whatever", "trim was applied correctly");
gURLBar.closePopup();

View File

@ -7,15 +7,6 @@ add_task(function*() {
yield PlacesUtils.bookmarks.remove(bm);
});
// We do this test with both unifiedcomplete disabled and enabled.
let ucpref = Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
registerCleanupFunction(() => {
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", ucpref);
});
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", false);
yield BrowserTestUtils.withNewTab({ gBrowser, url: "about:blank" }, testDelete);
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
yield BrowserTestUtils.withNewTab({ gBrowser, url: "about:blank" }, testDelete);
});

View File

@ -35,14 +35,6 @@ add_task(function*() {
});
yield PlacesTestUtils.addVisits(visits);
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
yield* do_test();
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", false);
yield* do_test();
Services.prefs.clearUserPref("browser.urlbar.unifiedcomplete");
});
function* do_test() {
gBrowser.selectedTab = gBrowser.addTab("about:blank");
yield promiseAutoComplete("http://example.com/autocomplete/");
@ -75,4 +67,4 @@ function* do_test() {
yield Promise.all([autocompletePopupHidden, openedExpectedPage]);
gBrowser.removeCurrentTab();
}
});

View File

@ -5,13 +5,10 @@ const TEST_ENGINE_BASENAME = "searchSuggestionEngine.xml";
// Must run first.
add_task(function* prepare() {
// The test makes only sense if unified complete is enabled.
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
let engine = yield promiseNewSearchEngine(TEST_ENGINE_BASENAME);
let oldCurrentEngine = Services.search.currentEngine;
Services.search.currentEngine = engine;
registerCleanupFunction(function () {
Services.prefs.clearUserPref("browser.urlbar.unifiedcomplete");
registerCleanupFunction(function* () {
Services.search.currentEngine = oldCurrentEngine;
Services.prefs.clearUserPref(SUGGEST_ALL_PREF);
Services.prefs.clearUserPref(SUGGEST_URLBAR_PREF);

View File

@ -26,16 +26,14 @@ function* test_autocomplete(data) {
gURLBar.popup.hidePopup();
yield promisePopupHidden(gURLBar.popup);
gURLBar.blur();
};
}
add_task(function* () {
registerCleanupFunction(function* () {
Services.prefs.clearUserPref("browser.urlbar.unifiedcomplete");
Services.prefs.clearUserPref("browser.urlbar.autoFill");
gURLBar.handleRevert();
yield PlacesTestUtils.clearHistory();
});
Services.prefs.setBoolPref("browser.urlbar.unifiedcomplete", true);
Services.prefs.setBoolPref("browser.urlbar.autoFill", true);
// Add a typed visit, so it will be autofilled.

View File

@ -77,13 +77,6 @@ file, You can obtain one at http://mozilla.org/MPL/2.0/.
this.inputField.addEventListener("overflow", this, false);
this.inputField.addEventListener("underflow", this, false);
try {
if (this._prefs.getBoolPref("unifiedcomplete")) {
this.setAttribute("autocompletesearch", "unifiedcomplete");
this.mSearchNames = null;
}
} catch (ex) {}
const kXULNS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
var textBox = document.getAnonymousElementByAttribute(this,
"anonid", "textbox-input-box");
@ -732,15 +725,6 @@ file, You can obtain one at http://mozilla.org/MPL/2.0/.
case "trimURLs":
this._mayTrimURLs = this._prefs.getBoolPref(aData);
break;
case "unifiedcomplete":
let useUnifiedComplete = false;
try {
useUnifiedComplete = this._prefs.getBoolPref(aData);
} catch (ex) {}
this.setAttribute("autocompletesearch",
useUnifiedComplete ? "unifiedcomplete"
: "urlinline history");
this.mSearchNames = null;
}
}
]]></body>
@ -867,19 +851,9 @@ file, You can obtain one at http://mozilla.org/MPL/2.0/.
type: type,
};
try {
action.params = JSON.parse(params);
for (let key in action.params) {
action.params[key] = decodeURIComponent(action.params[key]);
}
} catch (e) {
// If this failed, we assume that params is not a JSON object, and
// is instead just a flat string. This will happen when
// UnifiedComplete is disabled - in which case, the param is always
// a URL.
action.params = {
url: params,
};
action.params = JSON.parse(params);
for (let key in action.params) {
action.params[key] = decodeURIComponent(action.params[key]);
}
if ("url" in action.params) {
@ -927,22 +901,13 @@ file, You can obtain one at http://mozilla.org/MPL/2.0/.
<method name="handleEnter">
<body><![CDATA[
// When UnifiedComplete is enabled, we need to ensure we're using
// a selected autocomplete result. A result should automatically be
// selected by default (UnifiedComplete guarantees at least one
// result), however autocomplete is async and therefore we may not
// We need to ensure we're using a selected autocomplete result.
// A result should automatically be selected by default,
// however autocomplete is async and therefore we may not
// have a result set relating to the current input yet. If that
// happens, we need to mark that when the first result does get added,
// it needs to be handled as if enter was pressed with that first
// result selected.
// With UnifiedComplete disabled we don't have this problem, as the
// default is to use the value directly from the input field (without
// relying on autocomplete).
if (!Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete")) {
return this.mController.handleEnter(false);
}
// If anything other than the default (first) result is selected, then
// it must have been manually selected by the human. We let this
// explicit choice be used, even if it may be related to a previous
@ -993,8 +958,7 @@ file, You can obtain one at http://mozilla.org/MPL/2.0/.
// When _urlbarFocused is true, tabbrowser would close the
// popup if it's opened here, so don't show the notification.
!gBrowser.selectedBrowser._urlbarFocused &&
Services.prefs.getBoolPref("browser.search.suggest.enabled") &&
this._prefs.getBoolPref("unifiedcomplete");
Services.prefs.getBoolPref("browser.search.suggest.enabled");
]]></getter>
</property>
@ -1254,11 +1218,8 @@ file, You can obtain one at http://mozilla.org/MPL/2.0/.
]]></body>
</method>
<!-- Override this so that when UnifiedComplete is enabled, navigating
between items results in an item always being selected. This is
contrary to the old behaviour (UnifiedComplete disabled) where
if you navigate beyond either end of the list, no item will be
selected. -->
<!-- Override this so that navigating between items results in an item
always being selected. -->
<method name="getNextIndex">
<parameter name="reverse"/>
<parameter name="amount"/>
@ -1608,9 +1569,6 @@ file, You can obtain one at http://mozilla.org/MPL/2.0/.
<method name="onResultsAdded">
<body>
<![CDATA[
if (!Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete"))
return;
// If nothing is selected yet, select the first result if it is a
// pre-selected "heuristic" result. (See UnifiedComplete.js.)
if (this.selectedIndex == -1 && this._isFirstResultHeuristic) {

View File

@ -192,7 +192,7 @@
<textbox id="browserHomePage"
class="padded uri-element content-cell-item"
type="autocomplete"
autocompletesearch="history"
autocompletesearch="unifiedcomplete"
onsyncfrompreference="return gMainPane.syncFromHomePref();"
onsynctopreference="return gMainPane.syncToHomePref(this.value);"
placeholder="&abouthome.pageTitle;"

View File

@ -49,19 +49,8 @@ var gPrivacyPane = {
* Initialize autocomplete to ensure prefs are in sync.
*/
_initAutocomplete: function () {
let unifiedCompletePref = false;
try {
unifiedCompletePref =
Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
} catch (ex) {}
if (unifiedCompletePref) {
Components.classes["@mozilla.org/autocomplete/search;1?name=unifiedcomplete"]
.getService(Components.interfaces.mozIPlacesAutoComplete);
} else {
Components.classes["@mozilla.org/autocomplete/search;1?name=history"]
.getService(Components.interfaces.mozIPlacesAutoComplete);
}
Components.classes["@mozilla.org/autocomplete/search;1?name=unifiedcomplete"]
.getService(Components.interfaces.mozIPlacesAutoComplete);
},
/**

View File

@ -26,19 +26,8 @@ var gSearchPane = {
* Initialize autocomplete to ensure prefs are in sync.
*/
_initAutocomplete: function () {
let unifiedCompletePref = false;
try {
unifiedCompletePref =
Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
} catch (ex) {}
if (unifiedCompletePref) {
Components.classes["@mozilla.org/autocomplete/search;1?name=unifiedcomplete"]
.getService(Components.interfaces.mozIPlacesAutoComplete);
} else {
Components.classes["@mozilla.org/autocomplete/search;1?name=history"]
.getService(Components.interfaces.mozIPlacesAutoComplete);
}
Components.classes["@mozilla.org/autocomplete/search;1?name=unifiedcomplete"]
.getService(Components.interfaces.mozIPlacesAutoComplete);
},
init: function ()
@ -70,14 +59,11 @@ var gSearchPane = {
},
updateSuggestsCheckbox() {
let urlbarSuggests = document.getElementById("urlBarSuggestion");
urlbarSuggests.hidden =
!Services.prefs.getBoolPref("browser.urlbar.unifiedcomplete");
let suggestsPref =
document.getElementById("browser.search.suggest.enabled");
let permanentPB =
Services.prefs.getBoolPref("browser.privatebrowsing.autostart");
let urlbarSuggests = document.getElementById("urlBarSuggestion");
urlbarSuggests.disabled = !suggestsPref.value || permanentPB;
let urlbarSuggestsPref =

View File

@ -70,7 +70,7 @@ function checkAutocompleteResults(aExpected, aCallback) {
gController.input = {
timeout: 10,
textValue: "",
searches: ["history"],
searches: ["unifiedcomplete"],
searchParam: "enable-actions",
popupOpen: false,
minResultsForPopup: 0,
@ -84,7 +84,12 @@ function checkAutocompleteResults(aExpected, aCallback) {
info("Found " + gController.matchCount + " matches.");
// Check to see the expected uris and titles match up (in any order)
for (let i = 0; i < gController.matchCount; i++) {
let uri = gController.getValueAt(i).replace(/^moz-action:[^,]+,/i, "");
if (gController.getStyleAt(i).includes("heuristic")) {
info("Skip heuristic match");
continue;
}
let action = gURLBar.popup.input._parseActionUrl(gController.getValueAt(i));
let uri = action.params.url;
info("Search for '" + uri + "' in open tabs.");
ok(uri in aExpected, "Registered open page found in autocomplete.");

View File

@ -436,9 +436,6 @@
@RESPATH@/components/toolkitplaces.manifest
@RESPATH@/components/nsLivemarkService.js
@RESPATH@/components/nsTaggingService.js
@RESPATH@/components/nsPlacesAutoComplete.manifest
@RESPATH@/components/nsPlacesAutoComplete.js
@RESPATH@/components/UnifiedComplete.manifest
@RESPATH@/components/UnifiedComplete.js
@RESPATH@/components/nsPlacesExpiration.js
@RESPATH@/components/PlacesCategoriesStarter.js

View File

@ -106,6 +106,10 @@
border: none;
}
#PanelUI-menu-button[badge-status="download-success"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
display: none;
}
#PanelUI-menu-button[badge-status="update-succeeded"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
background: #74BF43 url(chrome://browser/skin/update-badge.svg) no-repeat center;
height: 13px;

View File

@ -149,11 +149,11 @@
data-pref="devtools.performance.ui.show-platform-data"/>
<span>&options.showPlatformData.label;</span>
</label>
<label title="&options.disableCache.tooltip2;">
<label title="&options.disableHTTPCache.tooltip;">
<input type="checkbox"
id="devtools-disable-cache"
data-pref="devtools.cache.disabled"/>
<span>&options.disableCache.label2;</span>
<span>&options.disableHTTPCache.label;</span>
</label>
<label title="&options.disableJavaScript.tooltip;">
<input type="checkbox"

View File

@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const specs = require("devtools/shared/specs/storage");
for (let childSpec of Object.values(specs.childSpecs)) {

View File

@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
const { Front, FrontClassWithSpec } = require("devtools/server/protocol.js");
const { Front, FrontClassWithSpec } = require("devtools/shared/protocol.js");
const {
getIndentationFromPrefs,
getIndentationFromString

View File

@ -9,7 +9,7 @@
const Events = require("sdk/event/core");
const {ActorClass, Actor, FrontClass, Front, method} =
require("devtools/server/protocol");
require("devtools/shared/protocol");
const {NodeActor} = require("devtools/server/actors/inspector");

View File

@ -131,11 +131,11 @@ values from browser.dtd. -->
<!ENTITY options.disableJavaScript.label "Disable JavaScript *">
<!ENTITY options.disableJavaScript.tooltip "Turning this option on will disable JavaScript for the current tab. If the tab or the toolbox is closed then this setting will be forgotten.">
<!-- LOCALIZATION NOTE (options.disableCache.label2,
- options.disableCache.tooltip2): This is the options panel label and
- tooltip for the checkbox that toggles the cache on or off. -->
<!ENTITY options.disableCache.label2 "Disable Cache (when toolbox is open)">
<!ENTITY options.disableCache.tooltip2 "Turning this option on will disable the cache for all tabs that have the toolbox open.">
<!-- LOCALIZATION NOTE (options.disableHTTPCache.label,
- options.disableHTTPCache.tooltip): This is the options panel label and
- tooltip for the checkbox that toggles the HTTP cache on or off. -->
<!ENTITY options.disableHTTPCache.label "Disable HTTP Cache (when toolbox is open)">
<!ENTITY options.disableHTTPCache.tooltip "Turning this option on will disable the HTTP cache for all tabs that have the toolbox open. Service Workers are not affected by this option.">
<!-- LOCALIZATION NOTE (options.enableServiceWorkersHTTP.label,
- options.enableServiceWorkersHTTP.tooltip): This is the options panel label and
@ -233,4 +233,3 @@ Gecko platform symbols">
<!ENTITY options.sourceeditor.keybinding.label "Keybindings">
<!ENTITY options.sourceeditor.keybinding.accesskey "K">
<!ENTITY options.sourceeditor.keybinding.default.label "Default">

View File

@ -4,7 +4,6 @@
"use strict";
const {Cc, Ci} = require("chrome");
const Services = require("Services");
const {getCSSLexer} = require("devtools/shared/css-lexer");
@ -351,7 +350,7 @@ CssColor.prototype = {
* appropriate.
*/
_getRGBATuple: function () {
let tuple = DOMUtils.colorToRGBA(this.authored);
let tuple = colorToRGBA(this.authored);
tuple.a = parseFloat(tuple.a.toFixed(1));
@ -503,50 +502,41 @@ function rgbToColorName(r, g, b) {
return value;
}
// Originally from dom/tests/mochitest/ajax/mochikit/MochiKit/Color.js.
function _hslValue(n1, n2, hue) {
if (hue > 6.0) {
hue -= 6.0;
} else if (hue < 0.0) {
hue += 6.0;
// Translated from nsColor.cpp.
function _hslValue(m1, m2, h) {
if (h < 0.0) {
h += 1.0;
}
let val;
if (hue < 1.0) {
val = n1 + (n2 - n1) * hue;
} else if (hue < 3.0) {
val = n2;
} else if (hue < 4.0) {
val = n1 + (n2 - n1) * (4.0 - hue);
} else {
val = n1;
if (h > 1.0) {
h -= 1.0;
}
return val;
if (h < 1.0 / 6.0) {
return m1 + (m2 - m1) * h * 6.0;
}
if (h < 1.0 / 2.0) {
return m2;
}
if (h < 2.0 / 3.0) {
return m1 + (m2 - m1) * (2.0 / 3.0 - h) * 6.0;
}
return m1;
}
// Originally from dom/tests/mochitest/ajax/mochikit/MochiKit/Color.js.
function hslToRGB([hue, saturation, lightness]) {
let red;
let green;
let blue;
if (saturation === 0) {
red = lightness;
green = lightness;
blue = lightness;
// Translated from nsColor.cpp. All three values are expected to be
// in the range 0-1.
function hslToRGB([h, s, l]) {
let r, g, b;
let m1, m2;
if (l <= 0.5) {
m2 = l * (s + 1);
} else {
let m2;
if (lightness <= 0.5) {
m2 = lightness * (1.0 + saturation);
} else {
m2 = lightness + saturation - (lightness * saturation);
}
let m1 = (2.0 * lightness) - m2;
let f = _hslValue;
let h6 = hue * 6.0;
red = f(m1, m2, h6 + 2);
green = f(m1, m2, h6);
blue = f(m1, m2, h6 - 2);
m2 = l + s - l * s;
}
return [red, green, blue];
m1 = l * 2 - m2;
r = Math.floor(255 * _hslValue(m1, m2, h + 1.0 / 3.0));
g = Math.floor(255 * _hslValue(m1, m2, h));
b = Math.floor(255 * _hslValue(m1, m2, h - 1.0 / 3.0));
return [r, g, b];
}
/**
@ -647,21 +637,19 @@ function parseHsl(lexer) {
if (!token || token.tokenType !== "number") {
return null;
}
let val = token.number % 60;
if (val < 0) {
val += 60;
}
vals.push(val / 60.0);
let val = token.number / 360.0;
vals.push(val - Math.floor(val));
for (let i = 0; i < 2; ++i) {
token = requireComma(lexer, getToken(lexer));
if (!token || token.tokenType !== "percentage") {
return null;
}
vals.push(clamp(token.number, 0, 100));
vals.push(clamp(token.number, 0, 1));
}
return hslToRGB(vals).map((elt) => Math.trunc(elt * 255));
return hslToRGB(vals);
}
/**
@ -693,7 +681,7 @@ function parseRgb(lexer) {
if (token.tokenType !== "percentage") {
return null;
}
vals.push(Math.round(255 * clamp(token.number, 0, 100)));
vals.push(Math.round(255 * clamp(token.number, 0, 1)));
} else {
if (token.tokenType !== "number" || !token.isInteger) {
return null;
@ -783,7 +771,3 @@ function colorToRGBA(name) {
function isValidCSSColor(name) {
return colorToRGBA(name) !== null;
}
loader.lazyGetter(this, "DOMUtils", function () {
return Cc["@mozilla.org/inspector/dom-utils;1"].getService(Ci.inIDOMUtils);
});

View File

@ -24,7 +24,7 @@ EventUtils._EU_Ci = Components.interfaces;
EventUtils._EU_Cc = Components.classes;
loader.loadSubScript("chrome://mochikit/content/tests/SimpleTest/EventUtils.js", EventUtils);
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {Arg, Option, method, RetVal, types} = protocol;
var dumpn = msg => {

View File

@ -4,7 +4,7 @@
"use strict";
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { method, custom, Arg, Option, RetVal } = protocol;
const { Cu, CC, components } = require("chrome");

View File

@ -28,7 +28,7 @@
const {Cu} = require("chrome");
const promise = require("promise");
const {Task} = Cu.import("resource://gre/modules/Task.jsm", {});
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {ActorClass, Actor, FrontClass, Front,
Arg, method, RetVal, types} = protocol;
// Make sure the nodeActor type is know here.

View File

@ -6,7 +6,7 @@
"use strict";
const { ActorClass, method } = require("devtools/server/protocol");
const { ActorClass, method } = require("devtools/shared/protocol");
/**
* Set breakpoints on all the given entry points with the given

View File

@ -5,7 +5,7 @@
const {Cc, Ci, Cu, Cr} = require("chrome");
const events = require("sdk/event/core");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {serializeStack, parseStack} = require("toolkit/loader");
const {on, once, off, emit} = events;

View File

@ -6,7 +6,7 @@
const {Cc, Ci, Cu, Cr} = require("chrome");
const events = require("sdk/event/core");
const promise = require("promise");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {CallWatcherActor, CallWatcherFront} = require("devtools/server/actors/call-watcher");
const DevToolsUtils = require("devtools/shared/DevToolsUtils");
const {WebGLPrimitiveCounter} = require("devtools/server/primitive");

View File

@ -7,7 +7,7 @@
"use strict";
const promise = require("promise");
const { method } = require("devtools/server/protocol");
const { method } = require("devtools/shared/protocol");
/**
* Creates "registered" actors factory meant for creating another kind of

View File

@ -10,7 +10,7 @@ const Services = require("Services");
const { XPCOMUtils } = require("resource://gre/modules/XPCOMUtils.jsm");
const events = require("sdk/event/core");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { method, custom, RetVal, Arg } = protocol;
loader.lazyGetter(this, "DOMUtils", () => {

View File

@ -4,7 +4,7 @@
const {Cc, Ci, Cu, CC} = require("chrome");
const Services = require("Services");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {method, RetVal} = protocol;
const promise = require("promise");
const {LongStringActor} = require("devtools/server/actors/string");

View File

@ -7,7 +7,7 @@
"use strict";
const events = require("sdk/event/core");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { Cu, Ci } = require("chrome");

View File

@ -6,7 +6,7 @@
"use strict";
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { method, Arg, Option, RetVal } = protocol;
const {DebuggerServer} = require("devtools/server/main");

View File

@ -5,7 +5,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
const { ActorClass, Arg, RetVal, method } = require("devtools/server/protocol");
const { ActorClass, Arg, RetVal, method } = require("devtools/shared/protocol");
const { createValueGrip } = require("devtools/server/actors/object");
/**

View File

@ -11,7 +11,7 @@
const {Ci, Cu} = require("chrome");
const Services = require("Services");
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {method, Arg, RetVal} = protocol;
const events = require("sdk/event/core");

View File

@ -8,7 +8,7 @@
const { ActorPool } = require("devtools/server/actors/common");
const { createValueGrip } = require("devtools/server/actors/object");
const { ActorClass } = require("devtools/server/protocol");
const { ActorClass } = require("devtools/shared/protocol");
/**
* An actor for a specified stack frame.

View File

@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { actorBridge } = require("devtools/server/actors/common");
const { method, custom, Arg, Option, RetVal } = protocol;
const { on, once, off, emit } = require("sdk/event/core");

View File

@ -7,7 +7,7 @@
const { Task } = require("resource://gre/modules/Task.jsm");
const {
method, Arg, Option, RetVal, Front, FrontClass, Actor, ActorClass
} = require("devtools/server/protocol");
} = require("devtools/shared/protocol");
const events = require("sdk/event/core");
const { createSystem } = require("gcli/system");

View File

@ -4,7 +4,7 @@
"use strict";
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { method, Arg } = protocol;
const Services = require("Services");

View File

@ -8,7 +8,7 @@ const { Ci } = require("chrome");
const EventEmitter = require("devtools/shared/event-emitter");
const events = require("sdk/event/core");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { Arg, Option, method, RetVal } = protocol;
const { isWindowIncluded } = require("devtools/shared/layout/utils");
const { isXUL, isNodeValid } = require("./highlighters/utils/markup");

View File

@ -52,7 +52,7 @@
const {Cc, Ci, Cu} = require("chrome");
const Services = require("Services");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {Arg, Option, method, RetVal, types} = protocol;
const {LongStringActor, ShortLongString} = require("devtools/server/actors/string");
const promise = require("promise");

View File

@ -26,7 +26,7 @@
const {Ci, Cu} = require("chrome");
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {method, Arg} = protocol;
const events = require("sdk/event/core");
const Heritage = require("sdk/core/heritage");

View File

@ -5,7 +5,7 @@
"use strict";
const { Cc, Ci, Cu, components } = require("chrome");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { method, RetVal, Arg, types } = protocol;
const { Memory } = require("devtools/server/performance/memory");
const { actorBridge } = require("devtools/server/actors/common");

View File

@ -5,7 +5,7 @@
"use strict";
const { Cc, Ci, Cu } = require("chrome");
var protocol = require("devtools/server/protocol");
var protocol = require("devtools/shared/protocol");
var { method, RetVal, Arg, types } = protocol;
const { reportException } = require("devtools/shared/DevToolsUtils");
loader.lazyRequireGetter(this, "events", "sdk/event/core");

View File

@ -11,7 +11,7 @@
const {
method, Arg, Option, RetVal, Front, FrontClass, Actor, ActorClass
} = require("devtools/server/protocol");
} = require("devtools/shared/protocol");
const events = require("sdk/event/core");
var PerformanceEntriesActor = exports.PerformanceEntriesActor = ActorClass({

View File

@ -5,7 +5,7 @@
"use strict";
const { Cu } = require("chrome");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { custom, method, RetVal, Arg, Option, types, preEvent } = protocol;
const { actorBridge } = require("devtools/server/actors/common");

View File

@ -5,7 +5,7 @@
"use strict";
const { Cu } = require("chrome");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { Task } = require("resource://gre/modules/Task.jsm");
const { Actor, custom, method, RetVal, Arg, Option, types, preEvent } = protocol;
const { actorBridge } = require("devtools/server/actors/common");

View File

@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
const {Cc, Ci, Cu, CC} = require("chrome");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {Arg, method, RetVal} = protocol;
const Services = require("Services");

View File

@ -5,7 +5,7 @@
"use strict";
const { Cu } = require("chrome");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { custom, method, RetVal, Arg, Option, types } = protocol;
const { Profiler } = require("devtools/server/performance/profiler");
const { actorBridge } = require("devtools/server/actors/common");

View File

@ -4,7 +4,7 @@
"use strict";
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { method, RetVal, Arg, types } = protocol;
const { expectState, ActorPool } = require("devtools/server/actors/common");
const { ObjectActor,

View File

@ -483,7 +483,7 @@ RootActor.prototype = {
},
onProtocolDescription: function () {
return require("devtools/server/protocol").dumpProtocolSpec();
return require("devtools/shared/protocol").dumpProtocolSpec();
},
/* Support for DebuggerServer.addGlobalActor. */

View File

@ -15,7 +15,7 @@ const { FrameActor } = require("devtools/server/actors/frame");
const { ObjectActor, createValueGrip, longStringGrip } = require("devtools/server/actors/object");
const { SourceActor, getSourceURL } = require("devtools/server/actors/source");
const { DebuggerServer } = require("devtools/server/main");
const { ActorClass } = require("devtools/server/protocol");
const { ActorClass } = require("devtools/shared/protocol");
const DevToolsUtils = require("devtools/shared/DevToolsUtils");
const { assert, dumpn, update, fetch } = DevToolsUtils;
const promise = require("promise");

View File

@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
const {Cc, Ci, Cu, CC} = require("chrome");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {Arg, method, RetVal} = protocol;
const {DebuggerServer} = require("devtools/server/main");
const promise = require("promise");

View File

@ -10,7 +10,7 @@ const { Cc, Ci } = require("chrome");
const { BreakpointActor, setBreakpointAtEntryPoints } = require("devtools/server/actors/breakpoint");
const { OriginalLocation, GeneratedLocation } = require("devtools/server/actors/common");
const { createValueGrip } = require("devtools/server/actors/object");
const { ActorClass, Arg, RetVal, method } = require("devtools/server/protocol");
const { ActorClass, Arg, RetVal, method } = require("devtools/shared/protocol");
const DevToolsUtils = require("devtools/shared/DevToolsUtils");
const { assert, fetch } = DevToolsUtils;
const { joinURI } = require("devtools/shared/path");

View File

@ -6,7 +6,7 @@
const {Cc, Ci} = require("chrome");
const events = require("sdk/event/core");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {LongStringActor} = require("devtools/server/actors/string");
const {DebuggerServer} = require("devtools/server/main");
const Services = require("Services");

View File

@ -10,7 +10,7 @@ var {DebuggerServer} = require("devtools/server/main");
var promise = require("promise");
var {Class} = require("sdk/core/heritage");
var protocol = require("devtools/server/protocol");
var protocol = require("devtools/shared/protocol");
var {method, Arg, Option, RetVal} = protocol;
exports.LongStringActor = protocol.ActorClass({

View File

@ -13,7 +13,7 @@ Cu.import("resource://gre/modules/FileUtils.jsm");
const promise = require("promise");
const events = require("sdk/event/core");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {Arg, Option, method, RetVal, types} = protocol;
const {LongStringActor, ShortLongString} = require("devtools/server/actors/string");
const {fetch} = require("devtools/shared/DevToolsUtils");

View File

@ -6,7 +6,7 @@
const {Cc, Ci} = require("chrome");
const promise = require("promise");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {Arg, Option, method, RetVal, types} = protocol;
const events = require("sdk/event/core");
const {Class} = require("sdk/core/heritage");

View File

@ -16,7 +16,7 @@ const promise = require("promise");
const events = require("sdk/event/core");
const {OriginalSourceFront, MediaRuleFront, StyleSheetFront,
StyleSheetsFront} = require("devtools/client/fronts/stylesheets");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const {Arg, Option, method, RetVal, types} = protocol;
const {LongStringActor, ShortLongString} = require("devtools/server/actors/string");
const {fetch} = require("devtools/shared/DevToolsUtils");

View File

@ -16,7 +16,7 @@
* @see devtools/server/performance/timeline.js
*/
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { method, Arg, RetVal, Option } = protocol;
const events = require("sdk/event/core");
const { Timeline } = require("devtools/server/performance/timeline");

View File

@ -10,7 +10,7 @@ const Services = require("Services");
const events = require("sdk/event/core");
const promise = require("promise");
const { on: systemOn, off: systemOff } = require("sdk/system/events");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { CallWatcherActor, CallWatcherFront } = require("devtools/server/actors/call-watcher");
const { createValueGrip } = require("devtools/server/actors/object");
const AutomationTimeline = require("./utils/automation-timeline");

View File

@ -6,7 +6,7 @@
const {Cc, Ci, Cu, Cr} = require("chrome");
const events = require("sdk/event/core");
const promise = require("promise");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { ContentObserver } = require("devtools/shared/content-observer");
const { on, once, off, emit } = events;
const { method, Arg, Option, RetVal } = protocol;

View File

@ -3,7 +3,7 @@
var { Ci, Cu } = require("chrome");
var { DebuggerServer } = require("devtools/server/main");
var Services = require("Services");
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { Arg, method, RetVal } = protocol;
loader.lazyRequireGetter(this, "ChromeUtils");

View File

@ -6,7 +6,7 @@ A Simple Hello World
Here's a simple Hello World actor. It is a global actor (not associated with a given browser tab).
let protocol = require("devtools/server/protocol");
let protocol = require("devtools/shared/protocol");
let {method, Arg, Option, RetVal} = protocol;
// This will be called by the framework when you call DebuggerServer.

View File

@ -192,7 +192,7 @@ var DebuggerServer = {
},
get protocol() {
return require("devtools/server/protocol");
return require("devtools/shared/protocol");
},
get initialized() {

View File

@ -34,7 +34,6 @@ DevToolsModules(
'content-server.jsm',
'main.js',
'primitive.js',
'protocol.js',
'service-worker-child.js',
'worker.js'
)

View File

@ -1,7 +1,7 @@
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
var HelloActor = protocol.ActorClass({
typeName: "helloActor",

View File

@ -1,7 +1,7 @@
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
var HelloActor = protocol.ActorClass({
typeName: "helloActor",

View File

@ -2,7 +2,7 @@
http://creativecommons.org/publicdomain/zero/1.0/ */
var {method, RetVal, Actor, ActorClass, Front, FrontClass} =
require("devtools/server/protocol");
require("devtools/shared/protocol");
var Services = require("Services");
exports.LazyActor = ActorClass({

View File

@ -6,7 +6,7 @@
* unexpectedly.
*/
var protocol = require("devtools/server/protocol");
var protocol = require("devtools/shared/protocol");
var {method, Arg, Option, RetVal} = protocol;
var events = require("sdk/event/core");

View File

@ -7,7 +7,7 @@
* complete.
*/
var protocol = require("devtools/server/protocol");
var protocol = require("devtools/shared/protocol");
var {method, Arg, Option, RetVal} = protocol;
var events = require("sdk/event/core");

View File

@ -4,7 +4,7 @@
/**
* Test simple requests using the protocol helpers.
*/
var protocol = require("devtools/server/protocol");
var protocol = require("devtools/shared/protocol");
var {method, preEvent, types, Arg, Option, RetVal} = protocol;
var events = require("sdk/event/core");

View File

@ -1,4 +1,4 @@
var protocol = require("devtools/server/protocol");
var protocol = require("devtools/shared/protocol");
var {method, Arg, Option, RetVal} = protocol;
protocol.types.addActorType("child");

View File

@ -4,7 +4,7 @@
/**
* Test simple requests using the protocol helpers.
*/
var protocol = require("devtools/server/protocol");
var protocol = require("devtools/shared/protocol");
var {method, RetVal, Arg, Option} = protocol;
var events = require("sdk/event/core");
var {LongStringActor} = require("devtools/server/actors/string");

View File

@ -5,7 +5,7 @@
* Test simple requests using the protocol helpers.
*/
var protocol = require("devtools/server/protocol");
var protocol = require("devtools/shared/protocol");
var {method, Arg, Option, RetVal} = protocol;
var events = require("sdk/event/core");

View File

@ -10,7 +10,7 @@
* device.
*/
var protocol = require("devtools/server/protocol");
var protocol = require("devtools/shared/protocol");
var {method, Arg, Option, RetVal} = protocol;
var events = require("sdk/event/core");

View File

@ -1,4 +1,4 @@
const {types} = require("devtools/server/protocol");
const {types} = require("devtools/shared/protocol");
function run_test()

View File

@ -49,6 +49,7 @@ DevToolsModules(
'Loader.jsm',
'Parser.jsm',
'path.js',
'protocol.js',
'system.js',
'ThreadSafeDevToolsUtils.js',
)

View File

@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
const protocol = require("devtools/server/protocol");
const protocol = require("devtools/shared/protocol");
const { Arg, RetVal, types } = protocol;
let childSpecs = {};

View File

@ -8,7 +8,7 @@ const {
RetVal,
generateActorSpec,
types
} = require("devtools/server/protocol.js");
} = require("devtools/shared/protocol.js");
const originalSourceSpec = generateActorSpec({
typeName: "originalsource",

View File

@ -135,6 +135,7 @@ pref("browser.display.remotetabs.timeout", 10);
pref("browser.sessionhistory.max_total_viewers", 1);
pref("browser.sessionhistory.max_entries", 50);
pref("browser.sessionhistory.contentViewerTimeout", 360);
pref("browser.sessionhistory.bfcacheIgnoreMemoryPressure", false);
/* session store */
pref("browser.sessionstore.resume_session_once", false);

Some files were not shown because too many files have changed in this diff Show More