<p dir="ltr">"some bookkeeping" really isn't free though.</p>
<p dir="ltr">I recently heard there were ideas about implementing the permissions -> sites version as part of about:preferences. Especially with that in mind, removing about:permissions sound like the right decision.</p>
<p dir="ltr">Gijs</p>
<div class="gmail_quote">On Nov 7, 2015 12:54 PM, "Tom Schuster" <<a href="mailto:tom@schuster.me">tom@schuster.me</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>I find the about:permissions to be super useful and I actually use it more often than the page info dialog.<br><br></div><div>It seems like you could build a [hosts -> permissions] table from [permissions -> hosts] even when you might get strange results sometimes with <a href="https://google.com" target="_blank">https://google.com</a>, <a href="http://google.com" target="_blank">http://google.com</a> and/or <a href="http://mail.google.com" target="_blank">mail.google.com</a>. This UI is only for advanced users anyway. <br><br></div><div>I am totally against removing this UI before we have a centralized replacement.<br></div><div><br>Honestly all those changes required for about:permissions seems to be totally trivial.<br><br><a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/components/preferences/aboutPermissions.js" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/components/preferences/aboutPermissions.js</a><br></div><div>get/set code looks almost identical to above. The rest is some bookkeeping. The observer registration/removal code could be simplified a bit.<br></div><div><br><a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/components/preferences/aboutPermissions.xul" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/components/preferences/aboutPermissions.xul</a><br></div><div>Copy and paste from above, with fullscreen changed to push.<br></div><div><br><a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/linux/preferences/aboutPermissions.css" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/linux/preferences/aboutPermissions.css</a><br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/osx/preferences/aboutPermissions.css" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/osx/preferences/aboutPermissions.css</a><br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/windows/preferences/aboutPermissions.css" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/windows/preferences/aboutPermissions.css</a><br></div>
Same change three times, why is that not one file?<br><br></div>Cheers,<br></div>Tom<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Nov 7, 2015 at 12:30 PM, Dao Gottwald <span dir="ltr"><<a href="mailto:dao@design-noir.de" target="_blank">dao@design-noir.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">about:permissions was implemented in 2011 but never intentionally exposed to end users, i.e. we don't link to it from about:preferences#content or from the control center a.k.a. identity panel or anything. The reason for that is that we're not happy with the UI, and there's no clear path forward; in a sense it's already dead code. Two years ago, bug 933917 was filed on removing about:permissions. We should finally do this.<br>
<br>
The [hosts -> permissions] mapping used by about:permissions is fundamentally flawed. It doesn't work well with different permissions that may apply to either a full host or eTLD + 1, or permissions that differentiate between http and https. It's hard to communicate these nuances in this kind of UI where users are supposed to pick a "site" (whatever that means) first. There's a good chance users would get stuck at that first step.<br>
<br>
I do think we should have a place for advanced permission management besides the control center (where users need to visit a site so they can change its permissions). Host whitelists and blacklists for various permissions are currently scattered across about:preferences#content, about:preferences#security, about:preferences#advanced and probably other places I don't even remember. Obviously this is far from ideal. However, I think any attempt to centralize these UIs ought to keep their [permissions -> list of hosts] mapping. So about:permissions with its [hosts -> permissions] approach isn't even a good starting point for future work.<br>
<br>
You may wonder, since about:permissions is quite self-contained, why not just keep it around for the time being for those who few who accidentially discovered it? More than two years ago I introduced SitePermissions.jsm in bug 885366. It has proven useful as the backend for the control center and for Page Info > Permissions, making it trivial to add new permissions there. Unfortunately, it can't be used easily as a backend for about:permissions. This makes about:permissions and ongoing tax that a number of developers have paid over the years. As an example, these changes were needed to add Push notifications to the control center and Page Info:<br>
<br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/modules/SitePermissions.jsm" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/modules/SitePermissions.jsm</a><br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/locales/en-US/chrome/browser/sitePermissions.properties" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/locales/en-US/chrome/browser/sitePermissions.properties</a><br>
<br>
... whereas these changes were needed to add them to about:permissions:<br>
<br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/components/preferences/aboutPermissions.js" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/components/preferences/aboutPermissions.js</a><br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/components/preferences/aboutPermissions.xul" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/components/preferences/aboutPermissions.xul</a><br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/locales/en-US/chrome/browser/preferences/aboutPermissions.dtd" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/locales/en-US/chrome/browser/preferences/aboutPermissions.dtd</a><br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/linux/preferences/aboutPermissions.css" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/linux/preferences/aboutPermissions.css</a><br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/osx/preferences/aboutPermissions.css" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/osx/preferences/aboutPermissions.css</a><br>
<a href="http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/windows/preferences/aboutPermissions.css" rel="noreferrer" target="_blank">http://hg.mozilla.org/mozilla-central/diff/1dd7cc876cd1/browser/themes/windows/preferences/aboutPermissions.css</a><br>
<br>
So from this perspective as well, we really should have gotten rid of about:permissions a long time ago. We've been wasting way too many resources on it.<br>
<br>
Thoughts? Have I missed something?<br>
<br>
Dao<br>
_______________________________________________<br>
firefox-dev mailing list<br>
<a href="mailto:firefox-dev@mozilla.org" target="_blank">firefox-dev@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/firefox-dev" rel="noreferrer" target="_blank">https://mail.mozilla.org/listinfo/firefox-dev</a><br>
</blockquote></div><br></div>
<br>_______________________________________________<br>
firefox-dev mailing list<br>
<a href="mailto:firefox-dev@mozilla.org">firefox-dev@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/firefox-dev" rel="noreferrer" target="_blank">https://mail.mozilla.org/listinfo/firefox-dev</a><br>
<br></blockquote></div>