~vcs-imports/gnome-control-center/+git/gnome-control-center:gnome-3-26

Last commit made on 2019-07-19
Get this branch:
git clone -b gnome-3-26 https://git.launchpad.net/~vcs-imports/gnome-control-center/+git/gnome-control-center

Branch merges

Branch information

Recent commits

a1dcd88... by Christian Kirbach

Update German translation

d111059... by wsxy162

Update Chinese (China) translation

16389dc... by aurisc4

Updated Lithuanian translation

8355842... by Debarshi Ray <email address hidden>

online-accounts: Track the lifecycle of CcGoaPanel across async calls

Due to an API bug in GNOME Online Accounts, the asynchronous
goa_provider_get_all method doesn't accept a GCancellable argument.
This makes it difficult to cancel an ongoing call when the CcGoaPanel
gets destroyed.

Prior to commit c26f8ae018900a55, this was hacked around by taking a
reference on the panel for the duration of the call. Instead of
cancelling a pending call on destruction, it would keep the panel alive
until the call was over. However, that was lost during commit
c26f8ae018900a55.

One thing to bear in mind is that GtkWidgets, CcGoaPanel is one, can
be destroyed by a gtk_widget_destroy call, which is subtly different
than a simple sequence of g_object_unref calls. When gtk_widget_destroy
is used, it invokes the GObject::dispose virtual method of the widget.
It is expected this will cause anything holding a reference to this
widget to drop their references, leading to GObject::finalize being
called. However, there is no guarantee that this will happen in the
same iteration of the GMainLoop. Therefore, it is possible that when
the goa_provider_get_all call finishes, the CcGoaPanel might be in a
disposed, but not yet finalized state.

When a GObject is in a disposed-but-not-finalized state, only a very
limited number of operations can be performed on it. Its reference
count can be altered, the memory used by the instance struct can be
accessed, but none of the member GObjects can be assumed to be valid.
eg., it's definitely illegal to add new rows to the member GtkListBox.
Hence a boolean flag is used to mark the destroyed state of the panel.

This second part is a small improvement over the earlier hack.

https://gitlab.gnome.org/GNOME/gnome-control-center/issues/208

77f7c25... by Debarshi Ray <email address hidden>

Update submodule URLs to current GitLab URLs

8e1ddcc... by Bastien Nocera

network: Fix crash opening "Hidden network" dialogue

Both the Network panel and libnma expect UI resources in the
same location, which will cause problems when the Network panel loads
its own version that doesn't quite match up to the code used in libnma.

This fixes a crash when nma_wifi_dialog_new_for_hidden() is called and
libnma expects a domain widget to be present, which it isn't in our
version of the UI files.

https://bugzilla.gnome.org/show_bug.cgi?id=785099

7bd8181... by Bastien Nocera

network: Fix crash due to object name clashes in NM and g-c-c

1. open Wi-Fi Settings
2. Menu -> Known Wi-fi Networks
3. Click settings of some Wi-Fi network listed there.
4. Press escape twice to close all the dialogs
5. Menu -> Connect to Hidden network..,

Fix crashes when some object type names (WirelessSecurity and
EAPMethod in this case) are duplicated across the Network
panel and libnma.

Fixes a regression in commit 0470c04

https://bugzilla.gnome.org/show_bug.cgi?id=785099

05f25ec... by RÅ«dolfs Mazurs

Update Latvian translation

34bd224... by Marek Cernocky <email address hidden>

Updated Czech translation

75b4809... by GNOME Translation Robot <email address hidden>

Update Scottish Gaelic translation