Bug 1330467 - part 3. Use principal for permissions in pageinfo/permissions.js; r=johannh

Differential Revision: https://phabricator.services.mozilla.com/D19924

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Liang-Heng Chen 2019-05-08 09:04:51 +00:00
Родитель 8e1e5c0a50
Коммит a1d43da6bd
1 изменённых файлов: 6 добавлений и 8 удалений

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

@ -6,7 +6,6 @@
const {SitePermissions} = ChromeUtils.import("resource:///modules/SitePermissions.jsm");
var gPermURI;
var gPermPrincipal;
var gUsageRequest;
@ -23,7 +22,7 @@ var permissionObserver = {
observe(aSubject, aTopic, aData) {
if (aTopic == "perm-changed") {
var permission = aSubject.QueryInterface(Ci.nsIPermission);
if (permission.matchesURI(gPermURI, true) && gPermissions.includes(permission.type)) {
if (permission.matches(gPermPrincipal, true) && gPermissions.includes(permission.type)) {
initRow(permission.type);
}
}
@ -32,11 +31,10 @@ var permissionObserver = {
function onLoadPermission(uri, principal) {
var permTab = document.getElementById("permTab");
if (SitePermissions.isSupportedURI(uri)) {
gPermURI = uri;
if (SitePermissions.isSupportedPrincipal(principal)) {
gPermPrincipal = principal;
var hostText = document.getElementById("hostText");
hostText.value = gPermURI.displayPrePath;
hostText.value = uri.displayPrePath;
for (var i of gPermissions) {
initRow(i);
@ -63,7 +61,7 @@ function initRow(aPartId) {
var checkbox = document.getElementById(aPartId + "Def");
var command = document.getElementById("cmd_" + aPartId + "Toggle");
var {state, scope} = SitePermissions.get(gPermURI, aPartId);
var {state, scope} = SitePermissions.getForPrincipal(gPermPrincipal, aPartId);
let defaultState = SitePermissions.getDefault(aPartId);
// Since cookies preferences have many different possible configuration states
@ -168,7 +166,7 @@ function onCheckboxClick(aPartId) {
var command = document.getElementById("cmd_" + aPartId + "Toggle");
var checkbox = document.getElementById(aPartId + "Def");
if (checkbox.checked) {
SitePermissions.remove(gPermURI, aPartId);
SitePermissions.removeFromPrincipal(gPermPrincipal, aPartId);
command.setAttribute("disabled", "true");
} else {
onRadioClick(aPartId);
@ -180,7 +178,7 @@ function onRadioClick(aPartId) {
var radioGroup = document.getElementById(aPartId + "RadioGroup");
var id = radioGroup.selectedItem ? radioGroup.selectedItem.id : "#1";
var permission = parseInt(id.split("#")[1]);
SitePermissions.set(gPermURI, aPartId, permission);
SitePermissions.setForPrincipal(gPermPrincipal, aPartId, permission);
}
function setRadioState(aPartId, aValue) {