When the Bolt page gets disposed before it finishes initializing
its client object we get a crash. See #2700
A way to trigger the crash is to switch panels fast enough so that
the sync dbus call is not finished by the time the panel is disposed.
This is not a guaranteed fix since I can't reproduce the issue
consistently.
Previously, when editing a connection that doesn't have native editor
support, nm-connection-editor is spawned to do the work. But after
closing nm-connection-editor, an empty editor dialog still exists.
Fix that in this commit.
The size of the background item is currently never used, but setting it
using `gnome_bg_get_image_size ()` is expensive, since that actually
does a thumbnail retrieval.
Instead, we can retrieve the size of the background file directly,
improving the rendering performance of the chooser significantly.
The Formats preview tries to find the measurement format of the locale
to preview, and then displays it. However, it displays the text in the
default locale, instead of in the real current locale, as newlocale ()
with base = (locale_t) 0 will use the default locale.
This is fixed by switching back to the real locale before setting the
label text.
Fixes#2458
Part-of: <https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/2051>
When entering the network panel without the network daemon,
the window decoration buttons do not appear because the whole panel
content was overwritten by an AdwStatusPage.
Now only the content of the AdwToolbarView is changed, preserving
the AdwHeaderBar and buttons.
Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2695
For an unknown reason, the AdwNavigationSplitView loading takes some
time, in which the Apps panel is not yet initialized. During that time,
the top item of the GtkStack, namely the No Apps AdwStatusPage will
show. This appears glitchy.
To work around this, make the first item of the GtkStack a "fake" empty
GtkBox that can show instead of the AdwStatusPage.
Fixes#2665
Since 7cef6dc5, the background previews are rendered at the full
resolution. However, this is expensive and causes considerable lag,
especially for resizes. Since then, the thumbnail size has doubled to
256 pixels, making the previews sharper even at larger sizes.
So, to improve performance, let's effectively revert 7cef6dc5. The
revert is not possible without disabling frame = 0 retrieval, since that
is broken for non-slideshow backgrounds and was not used before anyways
with force_size = TRUE.
Related to #674
Related to #704
Related to #2448
When removing a File & Link Association from the dialog, or resetting
them, the UI does not update. Fix this by rebuilding the handler dialog
on both unset and reset.
Fixes#389Fixes#2172
The GVariant constructor g_variant_new () gives a floating reference,
which will be sunk by the g_dbus_..._call () methods. Unless the
constructed GVariant is manually referenced, it should not be used in a
g_autoptr () setting. Otherwise a use-after-free might occur in the
async g_dbus_..._call () methods.
This problem occurs here, which is simply prevented by not having the
g_autoptr () declaration for the GVariant.
Fixes#2647Fixes#2704Fixes#2635Fixes#2706
Our callback handler for the AdwComboRow::selected-item property
changes gets called at startup, resulting in a slow and unnecessary
default app change.
This is a workaround to avoid calling g_app_info_set_as_default_for_type
without user input.
This is a backport of commit 6fb324634aFixes#2626Fixes#2683
Even though the routes_metric_label is in a GtkSizeGroup with the
GtkEntry for the metric, its size was set too big after adding the entry
to the size group. To fix this, add all the other labels and
corresponding entries to size groups as well. The hexpand can then be
removed as well on the labels.
Fixes#1235
At the moment the search entry is consuming the Escape key press, so we
have to manually tell it what to do with it.
We clear the search on the first press, if there is input, and close the
window otherwise.