Sync with what was committed usptream.

This commit is contained in:
ajacoutot 2014-02-04 14:49:53 +00:00
parent 08e3adddbe
commit d15ae48e64
2 changed files with 36 additions and 22 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.118 2014/02/03 18:23:54 ajacoutot Exp $
# $OpenBSD: Makefile,v 1.119 2014/02/04 14:49:53 ajacoutot Exp $
# XXX change proxy settings without network-manager?
@ -8,7 +8,7 @@ COMMENT= GNOME control center
GNOME_PROJECT= gnome-control-center
GNOME_VERSION= 3.10.2
REVISION= 0
REVISION= 1
CATEGORIES= x11

View File

@ -1,25 +1,39 @@
$OpenBSD: patch-panels_region_cc-region-panel_c,v 1.1 2014/02/03 18:23:54 ajacoutot Exp $
$OpenBSD: patch-panels_region_cc-region-panel_c,v 1.2 2014/02/04 14:49:53 ajacoutot Exp $
https://bugzilla.gnome.org/show_bug.cgi?id=723550
From c5268f8a4b4c9c3ebbaf68321bca7c37a8d66caa Mon Sep 17 00:00:00 2001
From: Antoine Jacoutot <ajacoutot@gnome.org>
Date: Tue, 04 Feb 2014 14:09:48 +0000
Subject: region-panel: do not show Login button if localed is not available
--- panels/region/cc-region-panel.c.orig Tue Nov 12 17:18:28 2013
+++ panels/region/cc-region-panel.c Mon Feb 3 19:03:00 2014
@@ -1723,11 +1723,13 @@ setup_login_button (CcRegionPanel *self)
G_CALLBACK (login_changed), self);
--- panels/region/cc-region-panel.c.orig Tue Feb 4 14:52:47 2014
+++ panels/region/cc-region-panel.c Tue Feb 4 14:58:44 2014
@@ -172,8 +172,9 @@ cc_region_panel_constructed (GObject *object)
g_object_get (priv->user_manager, "is-loaded", &loaded, NULL);
- if (loaded)
- set_login_button_visibility (self);
- else
- g_signal_connect_swapped (priv->user_manager, "notify::is-loaded",
- G_CALLBACK (set_login_button_visibility), self);
+ if (priv->permission) {
+ if (loaded)
+ set_login_button_visibility (self);
+ else
+ g_signal_connect_swapped (priv->user_manager, "notify::is-loaded",
+ G_CALLBACK (set_login_button_visibility), self);
+ }
G_OBJECT_CLASS (cc_region_panel_parent_class)->constructed (object);
- cc_shell_embed_widget_in_header (cc_panel_get_shell (CC_PANEL (object)),
- priv->login_button);
+ if (priv->permission)
+ cc_shell_embed_widget_in_header (cc_panel_get_shell (CC_PANEL (object)),
+ priv->login_button);
}
static void
static const char *
@@ -1698,8 +1699,16 @@ setup_login_button (CcRegionPanel *self)
CcRegionPanelPrivate *priv = self->priv;
GDBusConnection *bus;
gboolean loaded;
+ GError *error = NULL;
- priv->permission = polkit_permission_new_sync ("org.freedesktop.locale1.set-locale", NULL, NULL, NULL);
+ priv->permission = polkit_permission_new_sync ("org.freedesktop.locale1.set-locale", NULL, NULL, &error);
+ if (priv->permission == NULL) {
+ g_warning ("Could not get 'org.freedesktop.locale1.set-locale' permission: %s",
+ error->message);
+ g_error_free (error);
+ return;
+ }
+
bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, NULL);
g_dbus_proxy_new (bus,
G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES,