Currently, the search panel looks for search providers in
DATADIR/gnome-shell/search-providers. This won't work when providers are
located in a different directory which is still part of XDG_DATA_DIRS,
which is a valid use case and supported by gnome-shell.
This commit refactors the loader code to scan all the directories
upfront in a separate thread.
https://bugzilla.gnome.org/show_bug.cgi?id=739148
gnome_parse_locale() can return an empty country_code for some locales,
which we are not taking into account when building the simple_locale
string.
https://bugzilla.gnome.org/show_bug.cgi?id=738963
The active input and output streams aren't added through add_stream()
so they weren't being mapped to their respective volume bars,
resulting in updates to the volume through other means not being
reflected in our UI.
Moving the mapping to bar_set_stream() which is called for every
stream fixes the problem. Also, there's no value in having a
helper function to do a g_hash_table_insert() and not doing the same
for the respective g_hash_table_remove()s so remove it.
https://bugzilla.gnome.org/show_bug.cgi?id=738869
The language chooser dialog is used in the users panel repeatedly.
When we click to show more languages and/or select language, close
the dialog and show it again e.g. for different user, the chooser
isn't in an original state. So filter entry isn't hidden (and all
languages are shown) and/or the last selected language is focused.
But the dialog should be in the original state when it is open.
This patch changes cc_language_chooser_clear_filter to clear the
dialog into the original state that we can reuse the dialog later.
https://bugzilla.gnome.org/show_bug.cgi?id=738077
Cheese has an internal copy of UmCropArea, and exports the corresponding
um_crop_area_get_type() as part of libcheese-gtk. This leads to a crash
when taking a photo in the avatar chooser, as the control center copy of
the get_type() function is used. Renaming the function in Cheese would
be an ABI break, so at this stage it is best to do the rename in the
control center instead.
https://bugzilla.gnome.org/show_bug.cgi?id=697039
This lines are dead code, because act_user_get_language() returns empty
string if language isn't set. We don't want to fix the condition, because
cc_common_language_get_current_language is wrong for other users.
https://bugzilla.gnome.org/show_bug.cgi?id=737216
If language is unknown and language chooser is cancelled, panel crash
with the following error:
(gnome-control-center:24952): Gtk-CRITICAL **: gtk_list_store_get_path:
assertion 'iter->stamp == priv->stamp' failed
(gnome-control-center:24952): Gtk-CRITICAL **: gtk_list_store_get_value:
assertion 'iter_is_valid (iter, list_store)' failed
(gnome-control-center:24952): GLib-GObject-WARNING **: gtype.c:4221:
type id '0' is invalid
(gnome-control-center:24952): GLib-GObject-WARNING **:
can't peek value table for type '<invalid>' which is not currently referenced
Segmentation fault (core dumped)
https://bugzilla.gnome.org/show_bug.cgi?id=738002
If the language chooser is confirmed and no language is selected,
"Other..." is shown as user's language and the following error is printed:
(gnome-control-center:14608): AccountsService-CRITICAL **:
act_user_set_language: assertion 'language != NULL' failed
Autologin widgets are different in height as compared with other widgets,
which looks odd. Put all the widgets in the sizegroups, to have same
height.
https://bugzilla.gnome.org/show_bug.cgi?id=737343