Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: lib/ui.js

Issue 6526453483044864: Issue 2193 - Added notification opt-out (Firefox) (Closed)
Patch Set: Created April 13, 2015, 3:13 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/skin/overlay.css ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * This file is part of Adblock Plus <https://adblockplus.org/>, 2 * This file is part of Adblock Plus <https://adblockplus.org/>,
3 * Copyright (C) 2006-2015 Eyeo GmbH 3 * Copyright (C) 2006-2015 Eyeo GmbH
4 * 4 *
5 * Adblock Plus is free software: you can redistribute it and/or modify 5 * Adblock Plus is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 3 as 6 * it under the terms of the GNU General Public License version 3 as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
8 * 8 *
9 * Adblock Plus is distributed in the hope that it will be useful, 9 * Adblock Plus is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 return; 118 return;
119 } 119 }
120 120
121 setChecked("adblockplus-savestats", Prefs.savestats); 121 setChecked("adblockplus-savestats", Prefs.savestats);
122 addCommandHandler("adblockplus-savestats", function() 122 addCommandHandler("adblockplus-savestats", function()
123 { 123 {
124 UI.toggleSaveStats(doc.defaultView); 124 UI.toggleSaveStats(doc.defaultView);
125 this.value = Prefs.savestats; 125 this.value = Prefs.savestats;
126 }); 126 });
127 127
128 hideElement("adblockplus-shownotifications", !Prefs.notifications_showui);
129 setChecked("adblockplus-shownotifications", Prefs.notifications_ignoredcat egories.indexOf("*") == -1);
130 addCommandHandler("adblockplus-shownotifications", function()
131 {
132 Notification.toggleIgnoreCategory("*");
133 this.value = (Prefs.notifications_ignoredcategories.indexOf("*") == -1);
134 });
135
128 let hasAcceptableAds = FilterStorage.subscriptions.some((subscription) => subscription instanceof DownloadableSubscription && 136 let hasAcceptableAds = FilterStorage.subscriptions.some((subscription) => subscription instanceof DownloadableSubscription &&
129 subscription.url == Prefs.subscriptions_exceptionsurl); 137 subscription.url == Prefs.subscriptions_exceptionsurl);
130 setChecked("adblockplus-acceptableAds", hasAcceptableAds); 138 setChecked("adblockplus-acceptableAds", hasAcceptableAds);
131 addCommandHandler("adblockplus-acceptableAds", function() 139 addCommandHandler("adblockplus-acceptableAds", function()
132 { 140 {
133 this.value = UI.toggleAcceptableAds(); 141 this.value = UI.toggleAcceptableAds();
134 }); 142 });
135 143
136 setChecked("adblockplus-sync", syncEngine && syncEngine.enabled); 144 setChecked("adblockplus-sync", syncEngine && syncEngine.enabled);
137 addCommandHandler("adblockplus-sync", function() 145 addCommandHandler("adblockplus-sync", function()
(...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after
571 window.addEventListener("popupshowing", this.onPopupShowing, false); 579 window.addEventListener("popupshowing", this.onPopupShowing, false);
572 window.addEventListener("keypress", this.onKeyPress, false); 580 window.addEventListener("keypress", this.onKeyPress, false);
573 581
574 addBrowserLocationListener(window, function() 582 addBrowserLocationListener(window, function()
575 { 583 {
576 this.updateIconState(window, window.document.getElementById("abp-status")) ; 584 this.updateIconState(window, window.document.getElementById("abp-status")) ;
577 this.updateIconState(window, window.document.getElementById("abp-toolbarbu tton")); 585 this.updateIconState(window, window.document.getElementById("abp-toolbarbu tton"));
578 }.bind(this)); 586 }.bind(this));
579 addBrowserClickListener(window, this.onBrowserClick.bind(this, window)); 587 addBrowserClickListener(window, this.onBrowserClick.bind(this, window));
580 588
581 window.document.getElementById("abp-notification-close").addEventListener("c ommand", function(event) 589 let notificationPanel = window.document.getElementById("abp-notification");
590 notificationPanel.addEventListener("command", function(event)
582 { 591 {
583 window.document.getElementById("abp-notification").hidePopup(); 592 switch (event.target.id)
584 }, false); 593 {
594 case "abp-notification-close":
595 notificationPanel.classList.add("abp-closing");
596 break;
597 case "abp-notification-optout":
598 Notification.toggleIgnoreCategory("*", true);
599 case "abp-notification-hide":
600 notificationPanel.hidePopup();
601 break;
602 }
603 }, true);
585 604
586 // First-run actions? 605 // First-run actions?
587 this.firstRunActions(window); 606 this.firstRunActions(window);
588 607
589 // Some people actually switch off browser.frames.enabled and are surprised 608 // Some people actually switch off browser.frames.enabled and are surprised
590 // that things stop working... 609 // that things stop working...
591 window.QueryInterface(Ci.nsIInterfaceRequestor) 610 window.QueryInterface(Ci.nsIInterfaceRequestor)
592 .getInterface(Ci.nsIWebNavigation) 611 .getInterface(Ci.nsIWebNavigation)
593 .QueryInterface(Ci.nsIDocShell) 612 .QueryInterface(Ci.nsIDocShell)
594 .allowSubframes = true; 613 .allowSubframes = true;
(...skipping 952 matching lines...) Expand 10 before | Expand all | Expand 10 after
1547 1566
1548 setChecked(prefix + "disabled", !Prefs.enabled); 1567 setChecked(prefix + "disabled", !Prefs.enabled);
1549 setChecked(prefix + "frameobjects", Prefs.frameobjects); 1568 setChecked(prefix + "frameobjects", Prefs.frameobjects);
1550 setChecked(prefix + "savestats", Prefs.savestats); 1569 setChecked(prefix + "savestats", Prefs.savestats);
1551 1570
1552 let {defaultToolbarPosition, statusbarPosition} = require("appSupport"); 1571 let {defaultToolbarPosition, statusbarPosition} = require("appSupport");
1553 let hasToolbar = defaultToolbarPosition; 1572 let hasToolbar = defaultToolbarPosition;
1554 let hasStatusBar = statusbarPosition; 1573 let hasStatusBar = statusbarPosition;
1555 hideElement(prefix + "showintoolbar", !hasToolbar || prefix == "abp-toolbar- "); 1574 hideElement(prefix + "showintoolbar", !hasToolbar || prefix == "abp-toolbar- ");
1556 hideElement(prefix + "showinstatusbar", !hasStatusBar); 1575 hideElement(prefix + "showinstatusbar", !hasStatusBar);
1576 hideElement(prefix + "shownotifications", !Prefs.notifications_showui);
1557 hideElement(prefix + "iconSettingsSeparator", (prefix == "abp-toolbar-" || ! hasToolbar) && !hasStatusBar); 1577 hideElement(prefix + "iconSettingsSeparator", (prefix == "abp-toolbar-" || ! hasToolbar) && !hasStatusBar);
1558 1578
1559 setChecked(prefix + "showintoolbar", this.isToolbarIconVisible()); 1579 setChecked(prefix + "showintoolbar", this.isToolbarIconVisible());
1560 setChecked(prefix + "showinstatusbar", Prefs.showinstatusbar); 1580 setChecked(prefix + "showinstatusbar", Prefs.showinstatusbar);
1581 setChecked(prefix + "shownotifications", Prefs.notifications_ignoredcategori es.indexOf("*") == -1);
1561 1582
1562 let {Sync} = require("sync"); 1583 let {Sync} = require("sync");
1563 let syncEngine = Sync.getEngine(); 1584 let syncEngine = Sync.getEngine();
1564 hideElement(prefix + "sync", !syncEngine); 1585 hideElement(prefix + "sync", !syncEngine);
1565 setChecked(prefix + "sync", syncEngine && syncEngine.enabled); 1586 setChecked(prefix + "sync", syncEngine && syncEngine.enabled);
1566 1587
1567 let defAction = (!window.document.popupNode || window.document.popupNode.id == "abp-toolbarbutton" ? 1588 let defAction = (!window.document.popupNode || window.document.popupNode.id == "abp-toolbarbutton" ?
1568 Prefs.defaulttoolbaraction : 1589 Prefs.defaulttoolbaraction :
1569 Prefs.defaultstatusbaraction); 1590 Prefs.defaultstatusbaraction);
1570 setDefault(prefix + "openbottombar", defAction == 1); 1591 setDefault(prefix + "openbottombar", defAction == 1);
(...skipping 383 matching lines...) Expand 10 before | Expand all | Expand 10 after
1954 ["abp-command-sidebar", "command", UI.toggleBottombar.bind(UI)], 1975 ["abp-command-sidebar", "command", UI.toggleBottombar.bind(UI)],
1955 ["abp-command-togglesitewhitelist", "command", function() { UI.toggleFilter(si teWhitelist); }], 1976 ["abp-command-togglesitewhitelist", "command", function() { UI.toggleFilter(si teWhitelist); }],
1956 ["abp-command-togglepagewhitelist", "command", function() { UI.toggleFilter(pa geWhitelist); }], 1977 ["abp-command-togglepagewhitelist", "command", function() { UI.toggleFilter(pa geWhitelist); }],
1957 ["abp-command-toggleobjtabs", "command", UI.togglePref.bind(UI, "frameobjects" )], 1978 ["abp-command-toggleobjtabs", "command", UI.togglePref.bind(UI, "frameobjects" )],
1958 ["abp-command-togglesavestats", "command", UI.toggleSaveStats.bind(UI)], 1979 ["abp-command-togglesavestats", "command", UI.toggleSaveStats.bind(UI)],
1959 ["abp-command-togglesync", "command", UI.toggleSync.bind(UI)], 1980 ["abp-command-togglesync", "command", UI.toggleSync.bind(UI)],
1960 ["abp-command-toggleshowintoolbar", "command", UI.toggleToolbarIcon.bind(UI)], 1981 ["abp-command-toggleshowintoolbar", "command", UI.toggleToolbarIcon.bind(UI)],
1961 ["abp-command-toggleshowinstatusbar", "command", UI.togglePref.bind(UI, "showi nstatusbar")], 1982 ["abp-command-toggleshowinstatusbar", "command", UI.togglePref.bind(UI, "showi nstatusbar")],
1962 ["abp-command-enable", "command", UI.togglePref.bind(UI, "enabled")], 1983 ["abp-command-enable", "command", UI.togglePref.bind(UI, "enabled")],
1963 ["abp-command-contribute", "command", UI.openContributePage.bind(UI)], 1984 ["abp-command-contribute", "command", UI.openContributePage.bind(UI)],
1964 ["abp-command-contribute-hide", "command", UI.hideContributeButton.bind(UI)] 1985 ["abp-command-contribute-hide", "command", UI.hideContributeButton.bind(UI)],
1986 ["abp-command-toggleshownotifications", "command", Notification.toggleIgnoreCa tegory.bind(Notification, "*", null)]
1965 ]; 1987 ];
1966 1988
1967 onShutdown.add(function() 1989 onShutdown.add(function()
1968 { 1990 {
1969 for (let window of UI.applicationWindows) 1991 for (let window of UI.applicationWindows)
1970 if (UI.isBottombarOpen(window)) 1992 if (UI.isBottombarOpen(window))
1971 UI.toggleBottombar(window); 1993 UI.toggleBottombar(window);
1972 }); 1994 });
OLDNEW
« no previous file with comments | « chrome/skin/overlay.css ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld