This commit is contained in:
Phil Ringnalda 2015-04-19 20:30:39 -07:00
Родитель 50ab420809 91faae3bd2
Коммит 640567be24
26 изменённых файлов: 96 добавлений и 56 удалений

Просмотреть файл

@ -4,6 +4,14 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
let gEMEHandler = {
get uiEnabled() {
let emeUIEnabled = Services.prefs.getBoolPref("browser.eme.ui.enabled");
// Force-disable on WinXP:
if (navigator.platform.toLowerCase().startsWith("win")) {
emeUIEnabled = emeUIEnabled && parseFloat(Services.sysinfo.get("version")) >= 6;
}
return emeUIEnabled;
},
ensureEMEEnabled: function(browser, keySystem) {
Services.prefs.setBoolPref("media.eme.enabled", true);
if (keySystem) {
@ -45,7 +53,7 @@ let gEMEHandler = {
}
let {status: status, keySystem: keySystem} = parsedData;
// Don't need to show if disabled
if (!Services.prefs.getBoolPref("browser.eme.ui.enabled")) {
if (!this.uiEnabled) {
return;
}

Просмотреть файл

@ -5,12 +5,6 @@
// the "exported" symbols
let LoopUI;
XPCOMUtils.defineLazyModuleGetter(this, "injectLoopAPI", "resource:///modules/loop/MozLoopAPI.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "LoopRooms", "resource:///modules/loop/LoopRooms.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "MozLoopService", "resource:///modules/loop/MozLoopService.jsm");
XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/PanelFrame.jsm");
(function() {
const kNSXUL = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
const kBrowserSharingNotificationId = "loop-sharing-notification";
@ -134,15 +128,16 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
return;
}
iframe.addEventListener("DOMContentLoaded", function documentDOMLoaded() {
let documentDOMLoaded = () => {
iframe.removeEventListener("DOMContentLoaded", documentDOMLoaded, true);
injectLoopAPI(iframe.contentWindow);
iframe.contentWindow.addEventListener("loopPanelInitialized", function loopPanelInitialized() {
this.injectLoopAPI(iframe.contentWindow);
iframe.contentWindow.addEventListener("loopPanelInitialized", function loopPanelInitialized() {
iframe.contentWindow.removeEventListener("loopPanelInitialized",
loopPanelInitialized);
showTab();
});
}, true);
});
};
iframe.addEventListener("DOMContentLoaded", documentDOMLoaded, true);
};
// Used to clear the temporary "login" state from the button.
@ -153,12 +148,12 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
// Assume the conversation with the visitor wasn't open since we would
// have resumed the tour as soon as the visitor joined if it was (and
// the pref would have been set to false already.
MozLoopService.resumeTour("waiting");
this.MozLoopService.resumeTour("waiting");
resolve();
return;
}
PanelFrame.showPopup(window, event ? event.target : this.toolbarButton.node,
this.PanelFrame.showPopup(window, event ? event.target : this.toolbarButton.node,
"loop", null, "about:looppanel", null, callback);
});
});
@ -179,7 +174,7 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
return false;
}
if (!LoopRooms.participantsCount) {
if (!this.LoopRooms.participantsCount) {
// Nobody is in the rooms
return false;
}
@ -198,7 +193,7 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
*/
roomsWithNonOwners: function() {
return new Promise(resolve => {
LoopRooms.getAll((error, rooms) => {
this.LoopRooms.getAll((error, rooms) => {
let roomsWithNonOwners = [];
for (let room of rooms) {
if (!("participants" in room)) {
@ -223,7 +218,7 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
// Add observer notifications before the service is initialized
Services.obs.addObserver(this, "loop-status-changed", false);
MozLoopService.initialize();
this.MozLoopService.initialize();
this.updateToolbarState();
},
@ -254,15 +249,15 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
return;
}
let state = "";
if (MozLoopService.errors.size) {
if (this.MozLoopService.errors.size) {
state = "error";
} else if (MozLoopService.screenShareActive) {
} else if (this.MozLoopService.screenShareActive) {
state = "action";
} else if (aReason == "login" && MozLoopService.userProfile) {
} else if (aReason == "login" && this.MozLoopService.userProfile) {
state = "active";
} else if (MozLoopService.doNotDisturb) {
} else if (this.MozLoopService.doNotDisturb) {
state = "disabled";
} else if (MozLoopService.roomsParticipantsCount > 0) {
} else if (this.MozLoopService.roomsParticipantsCount > 0) {
state = "active";
}
this.toolbarButton.node.setAttribute("state", state);
@ -285,7 +280,7 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
* Opens the panel by default.
*/
showNotification: function(options) {
if (MozLoopService.doNotDisturb) {
if (this.MozLoopService.doNotDisturb) {
return;
}
@ -336,7 +331,7 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
* @param {String} name Name of the sound, like 'ringtone' or 'room-joined'
*/
playSound: function(name) {
if (this.ActiveSound || MozLoopService.doNotDisturb) {
if (this.ActiveSound || this.MozLoopService.doNotDisturb) {
return;
}
@ -401,7 +396,7 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
* @return {String}
*/
_getString: function(key) {
let str = MozLoopService.getStrings(key);
let str = this.MozLoopService.getStrings(key);
if (str) {
str = JSON.parse(str).textContent;
}
@ -417,7 +412,7 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
this._hideBrowserSharingInfoBar();
// Don't show the infobar if it's been permanently disabled from the menu.
if (!MozLoopService.getLoopPref(kPrefBrowserSharingInfoBar)) {
if (!this.MozLoopService.getLoopPref(kPrefBrowserSharingInfoBar)) {
return;
}
@ -473,7 +468,7 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
}
if (permanently) {
MozLoopService.setLoopPref(kPrefBrowserSharingInfoBar, false);
this.MozLoopService.setLoopPref(kPrefBrowserSharingInfoBar, false);
}
return removed;
@ -511,3 +506,8 @@ XPCOMUtils.defineLazyModuleGetter(this, "PanelFrame", "resource:///modules/Panel
},
};
})();
XPCOMUtils.defineLazyModuleGetter(LoopUI, "injectLoopAPI", "resource:///modules/loop/MozLoopAPI.jsm");
XPCOMUtils.defineLazyModuleGetter(LoopUI, "LoopRooms", "resource:///modules/loop/LoopRooms.jsm");
XPCOMUtils.defineLazyModuleGetter(LoopUI, "MozLoopService", "resource:///modules/loop/MozLoopService.jsm");
XPCOMUtils.defineLazyModuleGetter(LoopUI, "PanelFrame", "resource:///modules/PanelFrame.jsm");

Просмотреть файл

@ -6,7 +6,7 @@
*/
"use strict";
const {injectLoopAPI} = Cu.import("resource:///modules/loop/MozLoopAPI.jsm");
const {injectLoopAPI} = Cu.import("resource:///modules/loop/MozLoopAPI.jsm", {});
gMozLoopAPI = injectLoopAPI({});
let handlers = [

Просмотреть файл

@ -5,6 +5,7 @@ const HAWK_TOKEN_LENGTH = 64;
const {
LOOP_SESSION_TYPE,
MozLoopServiceInternal,
MozLoopService,
} = Cu.import("resource:///modules/loop/MozLoopService.jsm", {});
const {LoopCalls} = Cu.import("resource:///modules/loop/LoopCalls.jsm", {});
const {LoopRooms} = Cu.import("resource:///modules/loop/LoopRooms.jsm", {});

Просмотреть файл

@ -24,8 +24,12 @@ var gContentPane = {
let drmInfoURL =
Services.urlFormatter.formatURLPref("app.support.baseURL") + "drm-content";
document.getElementById("playDRMContentLink").setAttribute("href", drmInfoURL);
document.getElementById("playDRMContentRow").hidden =
!Services.prefs.getBoolPref("browser.eme.ui.enabled");
let emeUIEnabled = Services.prefs.getBoolPref("browser.eme.ui.enabled");
// Force-disable/hide on WinXP:
if (navigator.platform.toLowerCase().startsWith("win")) {
emeUIEnabled = emeUIEnabled && parseFloat(Services.sysinfo.get("version")) >= 6;
}
document.getElementById("playDRMContentRow").hidden = !emeUIEnabled;
},
// UTILITY FUNCTIONS

Просмотреть файл

@ -44,7 +44,12 @@ var gContentPane = {
let drmInfoURL =
Services.urlFormatter.formatURLPref("app.support.baseURL") + "drm-content";
document.getElementById("playDRMContentLink").setAttribute("href", drmInfoURL);
if (!Services.prefs.getBoolPref("browser.eme.ui.enabled")) {
let emeUIEnabled = Services.prefs.getBoolPref("browser.eme.ui.enabled");
// Force-disable/hide on WinXP:
if (navigator.platform.toLowerCase().startsWith("win")) {
emeUIEnabled = emeUIEnabled && parseFloat(Services.sysinfo.get("version")) >= 6;
}
if (!emeUIEnabled) {
// Don't want to rely on .hidden for the toplevel groupbox because
// of the pane hiding/showing code potentially interfering:
document.getElementById("drmGroup").setAttribute("style", "display: none !important");

Просмотреть файл

@ -14,7 +14,8 @@ let gElements;
function checkElements(expectedPane) {
for (let element of gElements) {
// preferences elements fail is_element_visible checks because they are never visible.
if (element.nodeName == "preferences") {
// special-case the drmGroup item because its visibility depends on pref + OS version
if (element.nodeName == "preferences" || element.id === "drmGroup") {
continue;
}
let attributeValue = element.getAttribute("data-category");
@ -27,7 +28,6 @@ function checkElements(expectedPane) {
}
function runTest(win) {
Services.prefs.setBoolPref("browser.eme.ui.enabled", true);
is(gBrowser.currentURI.spec, "about:preferences", "about:preferences loaded");
let tab = win.document;
@ -45,6 +45,5 @@ function runTest(win) {
gBrowser.removeCurrentTab();
win.close();
Services.prefs.clearUserPref("browser.eme.ui.enabled");
finish();
}

Двоичные данные
browser/themes/linux/Privacy-32.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 2.0 KiB

Двоичные данные
browser/themes/linux/Privacy-48.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 3.3 KiB

Двоичные данные
browser/themes/linux/Privacy-64.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 4.7 KiB

Просмотреть файл

@ -30,12 +30,16 @@
#back-button > .toolbarbutton-icon,
#forward-button > .toolbarbutton-icon {
margin: 0;
border: none;
padding: 2px 6px;
border: 1px solid var(--chrome-nav-bar-controls-border-color);
padding: 2px 5px;
background: var(--chrome-nav-buttons-background);
box-shadow: none !important;
}
#forward-button > .toolbarbutton-icon {
-moz-border-start: none;
}
/* Override a box shadow for disabled back button */
#main-window:not([customizing]) #back-button[disabled] > .toolbarbutton-icon {
box-shadow: none !important;

Двоичные данные
browser/themes/osx/Privacy-32.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 2.1 KiB

Двоичные данные
browser/themes/osx/Privacy-48.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 4.0 KiB

Двоичные данные
browser/themes/osx/Privacy-64.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 6.0 KiB

Просмотреть файл

@ -41,12 +41,21 @@
background / shadows for different states */
#back-button,
#forward-button {
height: 22px !important;
height: 24px !important;
box-shadow: none !important;
border: none !important;
border: 1px solid var(--chrome-nav-bar-controls-border-color) !important;
background: var(--chrome-nav-buttons-background) !important;
}
#forward-button {
-moz-border-start: none !important;
}
#forward-button > .toolbarbutton-icon {
margin-left: 0;
margin-right: 0;
}
#back-button:hover:not([disabled="true"]),
#forward-button:hover:not([disabled="true"]) {
background: var(--chrome-nav-buttons-hover-background) !important;

Просмотреть файл

@ -23,6 +23,7 @@
--chrome-nav-bar-separator-color: rgba(0,0,0,.2);
--chrome-nav-buttons-background: #252C33;
--chrome-nav-buttons-hover-background: #1B2127;
--chrome-nav-bar-controls-border-color: #1D2328;
--chrome-selection-color: #fff;
--chrome-selection-background-color: #074D75;
@ -80,11 +81,12 @@
--chrome-background-color: #E3E4E6;
--chrome-color: #18191a;
--chrome-secondary-background-color: #f0f1f2;
--chrome-secondary-background-color: #f5f6f7;
--chrome-navigator-toolbox-separator-color: #cccccc;
--chrome-nav-bar-separator-color: #B6B6B8;
--chrome-nav-buttons-background: #f0f1f2;
--chrome-nav-buttons-background: #fcfcfc;
--chrome-nav-buttons-hover-background: #DADBDB;
--chrome-nav-bar-controls-border-color: #ccc;
--chrome-selection-color: #f5f7fa;
--chrome-selection-background-color: #4c9ed9;
@ -100,13 +102,13 @@
/* Toolbar buttons */
--toolbarbutton-hover-background: #D7D7D8;
--toolbarbutton-hover-background: #eaeaea;
--toolbarbutton-hover-boxshadow: none;
--toolbarbutton-hover-bordercolor: rgba(0,0,0,0.1);
--toolbarbutton-active-background: rgba(76,158,217,.5) linear-gradient(rgba(76,158,217,.5), rgba(76,158,217,.5)) border-box
--toolbarbutton-active-background: #d7d7d8 border-box;
--toolbarbutton-active-boxshadow: none;
--toolbarbutton-active-bordercolor: rgba(0,0,0,0.3);
--toolbarbutton-checkedhover-backgroundcolor: rgba(0,0,0,0.2);
--toolbarbutton-active-bordercolor: rgba(0,0,0,0.15);
--toolbarbutton-checkedhover-backgroundcolor: #d7d7d8;
--toolbarbutton-combined-boxshadow: none;
--toolbarbutton-combined-backgroundimage: linear-gradient(rgba(0,0,0,0.1) 0, rgba(0,0,0,0.1) 18px);
@ -187,6 +189,11 @@
background-image: none;
}
.browserContainer > .findbar-textbox {
background-color: var(--url-and-searchbar-background-color) !important;
color: var(--url-and-searchbar-color);
}
/* Default findbar text color doesn't look good - Bug 1125677 */
.browserContainer > findbar .findbar-find-status,
.browserContainer > findbar .found-matches {
@ -212,17 +219,20 @@ toolbar[brighttext] #downloads-indicator-counter {
}
/* URL bar and search bar*/
/* XXX :root[devtoolstheme="dark"] is a workaround for bug 1096413 on the findbar. */
#urlbar,
#navigator-toolbox .searchbar-textbox,
:root[devtoolstheme="dark"] .browserContainer > findbar .findbar-textbox {
#navigator-toolbox .searchbar-textbox {
background-color: var(--url-and-searchbar-background-color) !important;
background-image: none !important;
color: var(--url-and-searchbar-color) !important;
border: none !important;
border: 1px solid var(--chrome-nav-bar-controls-border-color) !important;
box-shadow: none !important;
}
#urlbar {
-moz-border-start: none !important;
opacity: 1 !important;
}
window:not([chromehidden~="toolbar"]) #urlbar-wrapper {
overflow: -moz-hidden-unscrollable;
clip-path: none;

Двоичные данные
browser/themes/windows/Privacy-32-XP.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 1.8 KiB

Двоичные данные
browser/themes/windows/Privacy-32.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 1.9 KiB

Двоичные данные
browser/themes/windows/Privacy-48-aero.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 3.5 KiB

Двоичные данные
browser/themes/windows/Privacy-48.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 3.4 KiB

Двоичные данные
browser/themes/windows/Privacy-64-aero.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 5.2 KiB

Двоичные данные
browser/themes/windows/Privacy-64.png

Двоичный файл не отображается.

До

Ширина:  |  Высота:  |  Размер: 4.9 KiB

Просмотреть файл

@ -577,7 +577,7 @@ menuitem.bookmark-item {
%include ../shared/toolbarbuttons.inc.css
%include ../shared/menupanel.inc.css
@media (-moz-windows-theme: luna-silver) {
@media (-moz-windows-theme: luna-silver) and (max-resolution: 1dppx) {
:-moz-any(@primaryToolbarButtons@),
#bookmarks-menu-button.toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
list-style-image: url("chrome://browser/skin/Toolbar-lunaSilver.png");

Просмотреть файл

@ -20,12 +20,16 @@
border-radius: 0 !important;
width: auto !important;
height: auto !important;
padding: 2px 6px !important;
padding: 2px 5px !important;
margin: 0 !important;
border: none !important;
border: 1px solid var(--chrome-nav-bar-controls-border-color) !important;
box-shadow: none !important;
}
#forward-button > .toolbarbutton-icon {
-moz-border-start: none !important;
}
/* Override a box shadow for disabled back button */
#main-window:not([customizing]) #back-button[disabled] > .toolbarbutton-icon {
box-shadow: none !important;

Просмотреть файл

@ -84,9 +84,6 @@ browser.jar:
skin/classic/browser/pointerLock-64.png
skin/classic/browser/Privacy-16.png
skin/classic/browser/Privacy-16-XP.png
skin/classic/browser/Privacy-32.png
skin/classic/browser/Privacy-32-XP.png
skin/classic/browser/Privacy-48.png
skin/classic/browser/privatebrowsing-mask-tabstrip.png
skin/classic/browser/privatebrowsing-mask-tabstrip-XPVista7.png
skin/classic/browser/privatebrowsing-mask-titlebar.png
@ -541,7 +538,6 @@ browser.jar:
% override chrome://browser/skin/menu-forward.png chrome://browser/skin/menu-forward-XP.png os=WINNT osversion<6
% override chrome://browser/skin/pageInfo.png chrome://browser/skin/pageInfo-XP.png os=WINNT osversion<6
% override chrome://browser/skin/Privacy-16.png chrome://browser/skin/Privacy-16-XP.png os=WINNT osversion<6
% override chrome://browser/skin/Privacy-32.png chrome://browser/skin/Privacy-32-XP.png os=WINNT osversion<6
% override chrome://browser/skin/searchbar-dropdown-arrow.png chrome://browser/skin/searchbar-dropdown-arrow-XP.png os=WINNT osversion<6
% override chrome://browser/skin/Secure24.png chrome://browser/skin/Secure24-XP.png os=WINNT osversion<6
% override chrome://browser/skin/downloads/buttons.png chrome://browser/skin/downloads/buttons-XP.png os=WINNT osversion<6

Просмотреть файл

@ -143,7 +143,7 @@ public class TabQueueService extends Service {
tabQueueHandler.postDelayed(stopServiceRunnable, TOAST_TIMEOUT);
return START_FLAG_REDELIVERY;
return START_REDELIVER_INTENT;
}
private void removeView() {