зеркало из https://github.com/mozilla/gecko-dev.git
Bug 559372 - Fennec start page still shows weave tabs option after logging out of Weave [r=mfinkle]
This commit is contained in:
Родитель
a1bf33a55b
Коммит
b509de8f99
|
@ -58,7 +58,7 @@
|
|||
<link rel="stylesheet" href="chrome://browser/skin/aboutHome.css" type="text/css"/>
|
||||
</head>
|
||||
|
||||
<body dir="&locale.dir;" onload="init();">
|
||||
<body dir="&locale.dir;" onload="init();" onunload="uninit();">
|
||||
<div id="wrapper">
|
||||
<div id="header"><div id="logo"><img src="chrome://branding/content/logo.png"/></div>&aboutHome.header;</div>
|
||||
|
||||
|
@ -69,7 +69,7 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div id="remoteTabs" class="section-row" onclick="openRemoteTabs();" role="button">
|
||||
<div id="remoteTabs" class="section-row" onclick="openRemoteTabs();" role="button" disabled="true">
|
||||
<div>
|
||||
<img class="favicon" src="chrome://browser/skin/images/remotetabs-32.png"/>
|
||||
<div>&aboutHome.remoteTabs;</div>
|
||||
|
@ -119,6 +119,10 @@
|
|||
initAddons();
|
||||
}
|
||||
|
||||
function uninit() {
|
||||
uninitWeave();
|
||||
}
|
||||
|
||||
function _readFile(aFile) {
|
||||
try {
|
||||
let stream = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(Ci.nsIFileInputStream);
|
||||
|
@ -212,11 +216,11 @@
|
|||
outer.className = "openall";
|
||||
outer.textContent = document.getElementById("text-openalltabs").textContent;
|
||||
outer.setAttribute("role", "button");
|
||||
|
||||
|
||||
outer.addEventListener("click", function() {
|
||||
openTabs(allPageURLs);
|
||||
}, false);
|
||||
|
||||
|
||||
list.appendChild(outer);
|
||||
}
|
||||
} else {
|
||||
|
@ -226,8 +230,27 @@
|
|||
}
|
||||
|
||||
function initWeave() {
|
||||
if (!("WeaveGlue" in getChromeWin()))
|
||||
let chromeWin = getChromeWin();
|
||||
if ("WeaveGlue" in chromeWin) {
|
||||
chromeWin.Services.obs.addObserver(updateWeaveButton, "weave:service:login:finish", false);
|
||||
chromeWin.Services.obs.addObserver(updateWeaveButton, "weave:service:logout:finish", false);
|
||||
}
|
||||
else {
|
||||
document.getElementById("remoteTabs").style.display = "none";
|
||||
}
|
||||
}
|
||||
|
||||
function uninitWeave() {
|
||||
let chromeWin = getChromeWin();
|
||||
if ("WeaveGlue" in chromeWin) {
|
||||
chromeWin.Services.obs.removeObserver(updateWeaveButton, "weave:service:login:finish");
|
||||
chromeWin.Services.obs.removeObserver(updateWeaveButton, "weave:service:logout:finish");
|
||||
}
|
||||
}
|
||||
|
||||
function updateWeaveButton() {
|
||||
let isDisabled = !getChromeWin().Weave.Service.isLoggedIn;
|
||||
document.getElementById("remoteTabs").setAttribute("disabled", isDisabled);
|
||||
}
|
||||
|
||||
function openRemoteTabs() {
|
||||
|
|
|
@ -425,8 +425,10 @@ var BrowserUI = {
|
|||
.ensureContentProcess();
|
||||
#endif
|
||||
|
||||
#ifdef MOZ_SERVICES_SYNC
|
||||
// Init the sync system
|
||||
WeaveGlue.init();
|
||||
#endif
|
||||
});
|
||||
|
||||
FormHelperUI.init();
|
||||
|
@ -2255,9 +2257,11 @@ XPCOMUtils.defineLazyGetter(this, "HistoryList", function() {
|
|||
return new AwesomePanel("history-items", "cmd_history");
|
||||
});
|
||||
|
||||
#ifdef MOZ_SERVICES_SYNC
|
||||
XPCOMUtils.defineLazyGetter(this, "RemoteTabsList", function() {
|
||||
return new AwesomePanel("remotetabs-items", "cmd_remoteTabs");
|
||||
});
|
||||
#endif
|
||||
|
||||
XPCOMUtils.defineLazyGetter(this, "AllPagesList", function() {
|
||||
return new AwesomePanel("popup_autocomplete", "cmd_openLocation");
|
||||
|
|
|
@ -87,7 +87,9 @@
|
|||
<script type="application/javascript" src="chrome://browser/content/TileManager.js"/>
|
||||
<script type="application/javascript" src="chrome://browser/content/BrowserView.js"/>
|
||||
<script type="application/javascript" src="chrome://browser/content/AnimatedZoom.js"/>
|
||||
#ifdef MOZ_SERVICES_SYNC
|
||||
<script type="application/javascript" src="chrome://browser/content/sync.js"/>
|
||||
#endif
|
||||
|
||||
<stringbundleset id="stringbundleset">
|
||||
<stringbundle id="bundle_browser" src="chrome://browser/locale/browser.properties"/>
|
||||
|
@ -115,7 +117,9 @@
|
|||
<!-- tabs -->
|
||||
<command id="cmd_newTab" label="&newtab.label;" oncommand="CommandUpdater.doCommand(this.id);"/>
|
||||
<command id="cmd_closeTab" label="&closetab.label;" oncommand="CommandUpdater.doCommand(this.id);"/>
|
||||
#ifdef MOZ_SERVICES_SYNC
|
||||
<command id="cmd_remoteTabs" oncommand="CommandUpdater.doCommand(this.id);" disabled="true"/>
|
||||
#endif
|
||||
<command id="cmd_undoCloseTab" oncommand="CommandUpdater.doCommand(this.id);"/>
|
||||
|
||||
<!-- bookmarking -->
|
||||
|
@ -448,6 +452,7 @@
|
|||
<button id="prefs-clear-data" label="&clearPrivateData.button;" command="cmd_sanitize"/>
|
||||
</setting>
|
||||
</settings>
|
||||
#ifdef MOZ_SERVICES_SYNC
|
||||
<settings id="prefs-sync" label="&sync.title;">
|
||||
<setting id="sync-user" type="string" title="&sync.username;" />
|
||||
<setting id="sync-pass" type="string" inputtype="password" title="&sync.password;" />
|
||||
|
@ -463,6 +468,7 @@
|
|||
<button id="sync-syncButton" label="&sync.syncNow;" oncommand="WeaveGlue.sync();" />
|
||||
</setting>
|
||||
</settings>
|
||||
#endif
|
||||
</richlistbox>
|
||||
</notificationbox>
|
||||
</vbox>
|
||||
|
@ -497,7 +503,9 @@
|
|||
<toolbarbutton type="radio" group="awesome-header" label="&allPagesHeader.label;" command="cmd_openLocation" class="choice-all show-text" checked="true"/>
|
||||
<toolbarbutton type="radio" group="awesome-header" label="&bookmarksHeader.label;" command="cmd_bookmarks" class="choice-bookmarks show-text"/>
|
||||
<toolbarbutton type="radio" group="awesome-header" label="&historyHeader.label;" command="cmd_history" class="choice-history show-text"/>
|
||||
#ifdef MOZ_SERVICES_SYNC
|
||||
<toolbarbutton type="radio" group="awesome-header" label="&desktopHeader.label;" command="cmd_remoteTabs" class="choice-remotetabs show-text"/>
|
||||
#endif
|
||||
</hbox>
|
||||
|
||||
<!-- titlebar autocomplete results -->
|
||||
|
|
|
@ -57,7 +57,9 @@ chrome.jar:
|
|||
content/prompt/prompt.js (content/prompt/prompt.js)
|
||||
content/share.xul (content/share.xul)
|
||||
content/AnimatedZoom.js (content/AnimatedZoom.js)
|
||||
#ifdef MOZ_SERVICES_SYNC
|
||||
content/sync.js (content/sync.js)
|
||||
#endif
|
||||
content/LoginManagerChild.js (content/LoginManagerChild.js)
|
||||
|
||||
% override chrome://global/content/config.xul chrome://browser/content/config.xul
|
||||
|
|
|
@ -143,6 +143,15 @@ html {
|
|||
background: url("images/arrowright-16.png") 99% center no-repeat;
|
||||
}
|
||||
|
||||
#remoteTabs[disabled=true] {
|
||||
pointer-events: none;
|
||||
color: #aaa;
|
||||
}
|
||||
|
||||
#remoteTabs[disabled=true] > div > .favicon {
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.section-row {
|
||||
color: black;
|
||||
background: transparent -moz-linear-gradient(top, rgba(235,235,235,0.2) 0%, rgba(235,235,235,1) 90%);
|
||||
|
|
Загрузка…
Ссылка в новой задаче