This change effectively reverts commit 5c679301ec ("search: Invalidate
"Search Locations" list when folders can't be found"). The crash
that commits intends to fix does not occur on main anymore, and there's
no real difference between an existing and non existing file from this
interface's perspective.
Removing a folder automatically is dangerous because it may be on
an unmounted external hard drive or another location that is not
currently available. This also removes some blocking i/o on the main
thread.
Instead replace with a subtitle message to notify the user that the
folder is inaccessible.
We handle index-single-directories and index-recursive-directories
different, but the user has no idea. Add a subtitle to clarify
the difference in behavior.
We wrongly assume that the only directory set to index-single-directories
is the home directory. Now adays [1] tracker miners defaults home
and downloads to index-single-directories. This leads to a behavior
where downloads appears to be unindexed (the switch is set to inactive),
but if you set the switch to active you will end up with downloads
in index-single-directories and index-recursive-directories.
Check the index-single-directories (as well as its default value)
to consistently handle this setting correctly.
[1] d97cf22273
However, for Default or Bookmarked locations, the switch is not shown if
the location is not found, but there is no reason to now allow the user
to switch that location of, even if not found.
We therefore now show the switch unconditionally for the Default and
Bookmarked locations. This allows a great deal of code simplification
too, as the file info query is now only used to place a subtitle if it
is not found.
A regression from commit f473ec45c7 ("search: introduce the new Search
Locations dialog") causes the entries to be in a random order (as
determined by g_hash_table_get_values()). Previous to this commit,
there was a single listbox sorted by a custom sort func which grouped
XDG folders, bookmarks, and others. Now there's a listbox for each of
those groupings, but only others_list gets the sort func. Sort each
of the lists, and remove unnecessary code.
The Power panel currently installs "info-symbolic"
in /usr/share/icons, which makes this icon to appear
as a pre-installed system icon. This makes app
developers to use this icon in their apps
under that assumption.
Ship this icon as a gresource to fix this.
Closes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2865
Settings shows list rows with radio buttons before the
row title. However, the alert chooser looks inconsistent
because it shows the radio buttons at the end of the list
rows.
Fix that by setting the radio buttons as prefix widgets.
With this change, Orca now reads the word
"speaker", for example: "Front Left Speaker push button"
instead of "Front Left push button".
Also, remove the a11y labels because Orca also reads
tooltips.
Settings is the central place to change search locations. Nautilus wants
to link to it, but since it's a dialog and not a panel, use a parameter
to enable opening search locations directly.
Merge request !2093 fixed 3 crashes in the Saved Networks Dialog, but
unfortunately added another one. Upon undoing an AdwToast after deleting
a network, Settings crashes.
Furthermore, the title of the toast is quite verbose, meaning it often
gets ellipsized. Also, deleting many networks is somewhat annoying
because many toasts get generated. Since only the latest toast is saved
in the NetDeviceWifi, mixed dismissing and undoing of multiple toasts
doesn't work properly either.
We fix all these issues by having only one toast, that either says
"Network deleted" or "%d networks deleted". The networks are kept in a
GPtrArray, for which the free function is set to either really forget
the networks or to undo forgetting them.
Commit 99b42130 introduced the `saved_networks_list` struct member, so
we do not need to set and get a "list" variable on the rows anymore
since they already contain the NetDeviceWifi.
Using `g_clear_handle_id()` in combination with `g_source_remove()` can
save a lot of boiler plate code.
This removes about 110 lines of code for free.
Provide the connector name as the fourth value in the
tablet's output setting. With recent Mutter, this will
allow disambiguating the mapped output if there happens
to be multiple outputs with the same EDID data.
The subtitle for overamplification was changed to a single sentence in
!2232, but this reads slightly awkward.
Rephrase the sentence to be both shorter and include that we are
talking about "sound quality" here.
A period at the end of a string in pp-jobs-dialog.ui was removed in
!2231, but the actual translatable string in pp-jobs-dialog.c was not
modified.
This does that.
The CcSystemDetailsWindow is fairly slow to create, making the first
opening of it feel slightly unresponsive.
Resolve this by creating the window when idle.
The window should be destroyed and unreferenced when the About page is
disposed to prevent leaking it.
We need to take the reference in order to not repeat #2823, since the
AdwWindow is initially floating.
Initializing the About page involves creating a CcSystemDetailsWindow
too. This costs time, making the System panel open slower because it has
to wait for the About page to finish initializing.
By creating the CcSystemDetailsWindow only when it should be opened, we
save at least 0.1 s when opening the System panel.