PanelMultiView has its own concept of "selected", so we should use this rather than move focus
using advanceFocusIntoSubTree.
MozReview-Commit-ID: DW2JqqggLl1
--HG--
extra : rebase_source : ec7a6f83fdda176f3286cf4395dc72de6cad2466
The containers are given an ARIA role of group and labels are associated using aria-labelledby.
For example, this allows screen reader users to know which permission each control is associated with.
Otherwise, they might hear only "Clear this permission and ask again button", with no knowledge of what the permission is.
MozReview-Commit-ID: LeiOmz6go9l
--HG--
extra : rebase_source : 66920efd9d0f72375561c5b10d4bbd765306abf1
... because these URIs are incompatible with TP.
We now show it on moz-extension: instead, which was forgotten previously.
This should probably have been in its own separate bug, but the changes in bug 1470020
surfaced this issue by throwing a lot of console errors when the baseURI was accessed,
so I didn't want to defer the fix.
MozReview-Commit-ID: 8KNV0oabv7Y
--HG--
extra : rebase_source : b6aae33385ed3166c59c0c8733de0a9609f05d92
We used to give this all the same "tracking-loaded" state, but now we want to differentiate between:
- Tracking loaded because TP is off
- Tracking loaded because of an exception
- Tracking not loaded but the site has an exception, which we want to allow the user to remove (if TP is on)
MozReview-Commit-ID: E9j0Roq1bsH
--HG--
extra : rebase_source : 70992e27b91bfed3cce0b868b63ce3a8c0afc5d0
Part 2 exposed an edge case that would allow the user to have TP enabled but
still have tracking content on a page, bringing our UI into a confused state.
This adds a new element that shows when TP is enabled and no exception is set,
but tracking content is still loaded, and recommends reloading the page.
MozReview-Commit-ID: EYy6xVCjNts
--HG--
extra : rebase_source : 616fe197e8c994448c4eb5f9dfeafd260c2ce084
This commit changes the tracking protection UI to always be present in the
identity popup (control center) UI. Following the UI spec in
https://mozilla.invisionapp.com/share/RSIY1B8GMC2#/screens/297824891,
we are now warning about trackers even when TP is disabled and alter the
button that shows up in this case to open the TP settings in about:preferences.
MozReview-Commit-ID: 6g8rzWVRaua
--HG--
extra : rebase_source : 328ea44b085626cc0266591cc87b17657af888ad
This implements a new button in the identity popup that allows users to quickly
remove cookies and site data from the sites they're visiting.
This uses the SiteDataManager behind the scenes and is similar to the changes
we made for PageInfo already.
There's a major drawback to this approach in that SiteDataManager needs to
refresh its entire data set everytime we want information about a single site
or want to remove anything (it's not trivial to get rid of that limitation while
dealing with all the quirks of our storage APIs). I will work around this by
implementing a way for SiteDataManager to incrementally update itself in bug 1460768.
MozReview-Commit-ID: Iy7ia0KllFq
--HG--
extra : rebase_source : a36e0e7049c5892464d91ad42c3bf523dd5013f9
Previously, the only button that could be accessed with the keyboard was the Back button.
MozReview-Commit-ID: 2khSExFNkVP
--HG--
extra : rebase_source : 3f4f02cdccc43abf11b4782458abad5b04b7c899
The site security subview is now implemented using the "photonpanelmultiview" element, replacing the last instance of the "panelmultiview" element. The subview features a standard Photon header, hence the connection state icon was moved to the element below it. This makes the styles more similar between the main view and the subview. The connection state styles are now applied using a class name, and the tests have been updated accordingly.
This change required some fixes in the "photonpanelmultiview" implementation to make sure the height of the subview is correct and to allow keyboard navigation back to the main view.
Since the expander button and the permission controls in the main view are not visible anymore after the subview is shown, some code related to focus and hover could be removed as well.
MozReview-Commit-ID: 4nIAPWJPV8k
--HG--
extra : rebase_source : 74d6d769421c0f8521bdfae249b4d111e630a3bd
The height of the "panelmultiview" binding is now determined by the stack layout code, and doesn't have to be calculated manually via JavaScript anymore. This allows the removal of mutation and overflow observers, and reduces the number of synchronous layouts being made.
There is still a workaround included for wrapping blocks not being taken into account in height calculations.
MozReview-Commit-ID: 9rrPU5O5hUx
--HG--
extra : rebase_source : b872c14a553c4293ac476d5d22c634a5a0f6cb24
extra : intermediate-source : bf96469b6ea7daee29eb75a60d11f017a1c86a64
extra : source : 719bb4e7286fbd3baf32061929e4b7d9f953c671