- In the "No Events" status page, use the .dim-label
style class instead of using the "opacity" property
- Fix a typo in a GtkStackPage name:
(page_unavaliable -> page_unavailable)
- Set the "Device Security Unavailable" status page
directly as a child widget of the panel_unavailable
GtkStackPage. Using AdwPreferencesPage/Group isn't
necessary
- Don't make the "Device Security Unavailable" status
page dimmed, as status pages from other panels aren't
dimmed
- Wrap the "No Events" status page into a GtkBox that
has the .card style, which avoids the .card looking
being incorrectly dimmed
- Use more descriptive names in the stack pages from
firmware_security_log_stack
Previously, the row would remain visible (and do nothing when clicked)
if g-c-c is compiled w/o support for libmalcontent. Now, we make sure to
only show the row if compiled w/ libmalcontent support.
This more clearly indicates that HSI-1 is firmly between HSI-0 and HSI-2
in goodness/badness. It is secure, so the lock icon is locked. It's just
not as great as HSI-2, so it's yellow rather than green.
Tweak the text slightly to improve clarity. For example, instead of just
saying "Checks Failed" let's say "Security Checks Failed." There is
room to make the strings slightly longer.
The hardest part here was deciding what to say about the HSI-1 security
level, which is not described very well currently. I've made the largest
changes at this level.
For a managed GtkShortcutController, changing its propagation phase
away from `GTK_PHASE_BUBBLE` currently results in a lingering reference
due to a bug in GTK (gtk#6246). This means the Escape key shortcut
remains active even after leaving the Display panel, resulting in a
crash when pressing Escape in any panel after leaving the Display panel.
This is now fixed in GTK (gtk!7115), but there seems to be no reason for
changing the propagation phase at all anyways. Since the callback
returns `GDK_EVENT_PROPAGATE` when it does not activate, the event
should still make it to other handlers.
So, to speed up the fix for gnome-control-center, we remove the
propagation phase changes althogether. There is also no need to let the
shortcut have global scope, managed is enough.
Closes#2768
When a permission for an app is reset, e.g. via:
flatpak permission-reset APP_ID
the Changed signal simply contains one fewer entry in its dictionary. If
we had a row for an app_id, and such app_id is not in the new
permissions we remove the row from the list box.
Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2993
By creating a .cc-placeholder-row style class that
sets a padding, it won't be necessary to set margins
to every GtkLabel that is being used as list box
placeholder widgets.
Use em dash in the "Error: some settings cannot be unlocked",
which is now "Error — some settings cannot be unlocked".
This improves consistency with the banner from Online Accounts
which says "Offline — unable to connect accounts" when the device
is offline; this banner text uses an em dash.
Since we started moving some settings from the Sharing panel to other
panels, we were left with only tree things in the Sharing panel for
gnome-46: hostname row, file sharing row, and media sharing row.
The hostname row is already in System ->About, so we should check
whether file-sharing or media-sharing are supported and show the panel
accordingly.
Fixes#2979
So that we have a function to check whether we should show the "Media
Sharing" row.
This is going to be useful when we will try to hide the entire panel if
both "Media Sharing" and "File Sharing" aren't available.
Since [1], the crosshair options are now inside an
AdwExpanderRow, meaning that they don't need to be
insensitive when the "Crosshair Lines" option is
disabled because they get hidden in such case.
However, the "Overlap Mouse Cursor" row wasn't updated
in [1] to reflect that, so address this issue.
[1] 054d9c8769
When the Crosshair Lines option is disabled, the crosshair options
appear insensitive and consume vertical space unnecessarily. Use
AdwExpanderRow to fix this.
- Rename the "Other Media" row to "Other Media Types" (including
the window title) and remove its subtitle
- Rename "Automatically Launch Apps" row to "Media Autostart"
and use "Start apps or prompt when media is connected" as its new
subtitle
Reference:
288a451db2
Using a GtkStack isn't necessary to display the "Not set up"
row. Instead, use a GtkListBox placeholder widget in the main
VPN list box.
This improves consistency with the placeholders from "Privacy >
Location/Camera/Microphone" when there are no apps; same thing
in "Search > Search Locations > Custom Locations" when no custom
locations were added.
https://docs.gtk.org/gtk4/class.ListBox.html#gtklistbox-as-gtkbuildable
- Add a tooltip
- Remove the a11y label because Orca also reads tooltips
- Remove the .image-button style class as it's automatically
added if a GtkButton has an icon
- Remove the use-underline property as it's pointless in
a button without a label
HIG says that "Text generally shouldn’t end with a period.
This applies [...] text that is written as a complete sentence",
but the page description text isn't written as a complete sentence,
so the guideline isn't applicable in this case.
https://developer.gnome.org/hig/guidelines/writing-style.html
Some of our list rows launch dialogs. Our callbacks were plain
adw_dialog_present (dialog, parent) calls.
Lets delete that code and call adw_dialog_present directly where it
makes sense.
When using the copy buttons from Desktop Sharing/Remote Login pages,
the toasts don't show that the values were copied to the clipboard,
unlike in System > Secure Shell/About > System Details, for example.
So, fix this inconsistency.
The .tls-cert-fingerprint style class is part of "Verify Encryption"
dialog from the Remote Desktop feature, which is now present in the
System panel. sharing.css isn't needed anymore.
"Add" and "Enroll" buttons can still be sensitive without
calling main_page_validate() and enroll_page_validate()
respectively. Add an assertion check in both cases to
prevent these buttons being sensitive incorrectly.
Co-authored-by: Matthijs Velsink <mvelsink@gnome.org>
Doing so, the firmware-security-dialog and
firmware-security-boot-dialog can show more text (which can
increase in some translations) without having a scrollbar.
This complements the following commit:
c252c3c861
- add new assets for clicking and scrolling view switcher
- adjust the scroll test arrow display
- remove old inappropriate asset
- use gresource for new assets