Closed Bug 2082520 Opened 25 days ago Closed 3 days ago

Ensure non-QWAC sites show neither element

Categories

(Firefox for Android :: Settings, task)

All
Android
task

Tracking

()

RESOLVED FIXED
162 Branch
Tracking Status
firefox162 --- fixed

People

(Reporter: lmccracken, Assigned: lmccracken)

References

(Blocks 1 open bug)

Details

(Whiteboard: [fxdroid][android-activation-trust])

Attachments

(1 external file)

Summary
Hide the QWAC statement and EU trust mark for non-QWAC sites on the certificate details sub-page

Description
The QWAC statement and EU trust mark added in ticket 2082519 must only appear for certificates that are QWACs. Showing the EU trust mark on a site that isn’t a QWAC would be a false claim about the site’s legal status, so this ticket exists to make hiding the default and to prove it with tests, rather than leaving it as a side effect of the layout done prior.

The rule is: the elements are shown only when the QWAC signal is explicitly true. Any other state (false, absent, unknown, still loading, errored, or the signal source not yet available) must show neither the text nor the logo. Hidden also means hidden for accessibility: the elements should be removed from the layout and the TalkBack tree, not just made invisible, and should leave no gap or empty space in the page.

In scope

Visibility logic that treats only an explicit “true” as show, and everything else as hide
Both elements (statement and logo) hidden together, never one without the other
Removal from layout and accessibility tree when hidden (for example GONE in XML, or not emitted in Compose), with no leftover spacing, divider or padding
Correct behaviour across state changes: navigating from a QWAC site to a non-QWAC site, reloading, switching tabs, and the signal arriving late
No flash of the QWAC elements before the signal resolves
Unit tests for the visibility logic, covering true, false, null or absent, and error states
UI or screenshot test for the non-QWAC state, in light and dark themes

Out of scope

Building the QWAC elements themselves
Determining QWAC status
Pref gating, which hides the elements when security.qwacs.enabled is off
Edge-state behaviour for HTTP, invalid or expired certificates
Localization and TalkBack wording
Focus

Acceptance criteria

For a non-QWAC site, neither the statement nor the EU trust mark appears.
The elements appear only when the signal is explicitly true.
Absent, unknown, loading and error signal states all result in the elements being hidden.
Hidden elements are not in the layout or the TalkBack tree, and leave no visible gap.
The layout of the rest of the sub-page is identical whether or not the QWAC slot is present.
Navigating from a QWAC site to a non-QWAC site (and back) never shows stale QWAC elements, and never shows them for the wrong tab.
The QWAC elements do not flash briefly while the signal is resolving.
Unit tests cover true, false, null or absent, and error states.
A UI or screenshot test covers the non-QWAC page in light and dark themes.

Whiteboard: [fxdroid][android-activation-trust]
Assignee: nobody → lmccracken
Status: NEW → ASSIGNED

Showing the EU trust mark for a site that isn't a QWAC would be a false claim
about its legal status, so the QWAC elements are only shown once a QWAC has been
determined, and never while the QWAC status is pending or after it fails.

Pushed by lmccracken@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/db547b61903f https://hg.mozilla.org/integration/autoland/rev/fd24fdb5b029 Only show the QWAC statement and EU trust mark for QWAC sites. r=android-reviewers,tthibaud,cbect
Status: ASSIGNED → RESOLVED
Closed: 3 days ago
Resolution: --- → FIXED
Target Milestone: --- → 162 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: