[115762] trunk/dports/gnome/gnome-control-center

devans at macports.org devans at macports.org
Fri Jan 10 14:09:54 PST 2014


Revision: 115762
          https://trac.macports.org/changeset/115762
Author:   devans at macports.org
Date:     2014-01-10 14:09:54 -0800 (Fri, 10 Jan 2014)
Log Message:
-----------
gnome-control-center: update to version 3.8.6, patch to build with libgnome-desktop-3.8, apply current upstream patches.

Modified Paths:
--------------
    trunk/dports/gnome/gnome-control-center/Portfile

Added Paths:
-----------
    trunk/dports/gnome/gnome-control-center/files/patch-background-libsocialweb.diff
    trunk/dports/gnome/gnome-control-center/files/patch-background-linker-fix.diff
    trunk/dports/gnome/gnome-control-center/files/patch-display-new-config-model.diff
    trunk/dports/gnome/gnome-control-center/files/patch-output-is-laptop.diff
    trunk/dports/gnome/gnome-control-center/files/patch-users-logged-in-check.diff

Modified: trunk/dports/gnome/gnome-control-center/Portfile
===================================================================
--- trunk/dports/gnome/gnome-control-center/Portfile	2014-01-10 22:05:16 UTC (rev 115761)
+++ trunk/dports/gnome/gnome-control-center/Portfile	2014-01-10 22:09:54 UTC (rev 115762)
@@ -4,8 +4,7 @@
 PortSystem      1.0
 
 name            gnome-control-center
-version         3.8.5
-revision        1
+version         3.8.6
 set branch      [join [lrange [split ${version} .] 0 1] .]
 description     GNOME's main interface for configuration of the various \
                 aspects of your desktop.
@@ -19,8 +18,8 @@
 
 use_xz          yes
 
-checksums       rmd160  4eca6dc99a251e901f57cabd9d8a5cb752b23e1e \
-                sha256  efb9fb47aaa9a308aed3064efc39356db05d71ddb0374561eeccc57c122212e2
+checksums       rmd160  3419412626e2de69c243423f31a0504c49955126 \
+                sha256  8dba7eb3fa720580e84bb1a8241c745abacaa8999bbf9c28902819d5584fa42a
 
 depends_build   port:pkgconfig \
                 port:intltool \
@@ -55,7 +54,12 @@
 
 # color panel disabled by patch, dependency colord requires libudev
 
-patchfiles      patch-disable-color-panel.diff \
+patchfiles      patch-display-new-config-model.diff \
+                patch-output-is-laptop.diff \
+                patch-background-linker-fix.diff \
+                patch-background-libsocialweb.diff \
+                patch-users-logged-in-check.diff \
+                patch-disable-color-panel.diff \
                 patch-disable-shell-test-hostname.diff \
                 patch-panels-user-accounts.diff
 

Added: trunk/dports/gnome/gnome-control-center/files/patch-background-libsocialweb.diff
===================================================================
--- trunk/dports/gnome/gnome-control-center/files/patch-background-libsocialweb.diff	                        (rev 0)
+++ trunk/dports/gnome/gnome-control-center/files/patch-background-libsocialweb.diff	2014-01-10 22:09:54 UTC (rev 115762)
@@ -0,0 +1,29 @@
+From 97af796dd588d4cce7ef5b927fd3d956f8baa16c Mon Sep 17 00:00:00 2001
+From: Bastien Nocera <hadess at hadess.net>
+Date: Tue, 12 Nov 2013 07:45:43 +0000
+Subject: background: Fix compilation with libsocialweb support
+
+The flickr source files were added to the wrong internal shared
+library, so that the panel could be linked, but not the test
+application.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=710829
+---
+diff --git a/panels/background/Makefile.am b/panels/background/Makefile.am
+index 2766207..58e39aa 100644
+--- panels/background/Makefile.am
++++ panels/background/Makefile.am
+@@ -49,9 +49,9 @@ libbackground_la_SOURCES =		\
+ libbackground_la_LIBADD = $(PANEL_LIBS) $(BACKGROUND_PANEL_LIBS) libbackground-chooser.la
+ 
+ if WITH_LIBSOCIALWEB
+-libbackground_la_SOURCES += bg-flickr-source.c bg-flickr-source.h
++libbackground_chooser_la_SOURCES += bg-flickr-source.c bg-flickr-source.h
+ INCLUDES += $(SOCIALWEB_CFLAGS)
+-libbackground_la_LIBADD += $(SOCIALWEB_LIBS)
++libbackground_chooser_la_LIBADD += $(SOCIALWEB_LIBS)
+ endif
+ 
+ noinst_PROGRAMS = test-chooser-dialog
+--
+cgit v0.9.2

Added: trunk/dports/gnome/gnome-control-center/files/patch-background-linker-fix.diff
===================================================================
--- trunk/dports/gnome/gnome-control-center/files/patch-background-linker-fix.diff	                        (rev 0)
+++ trunk/dports/gnome/gnome-control-center/files/patch-background-linker-fix.diff	2014-01-10 22:09:54 UTC (rev 115762)
@@ -0,0 +1,24 @@
+From acd7785692109a8ad2590e19302ce34170e610f2 Mon Sep 17 00:00:00 2001
+From: Kalev Lember <kalevlember at gmail.com>
+Date: Wed, 16 Oct 2013 10:01:36 +0000
+Subject: background: Fix test-chooser-dialog build with some linkers
+
+List missing libs for the libbackground-chooser.la convenience library.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=709302
+---
+diff --git a/panels/background/Makefile.am b/panels/background/Makefile.am
+index f24f8b3..2766207 100644
+--- panels/background/Makefile.am
++++ panels/background/Makefile.am
+@@ -40,6 +40,8 @@ libbackground_chooser_la_SOURCES =	\
+ 	bg-colors-source.c		\
+ 	bg-colors-source.h
+ 
++libbackground_chooser_la_LIBADD = $(PANEL_LIBS) $(BACKGROUND_PANEL_LIBS)
++
+ libbackground_la_SOURCES =		\
+ 	cc-background-panel.c		\
+ 	cc-background-panel.h
+--
+cgit v0.9.2

Added: trunk/dports/gnome/gnome-control-center/files/patch-display-new-config-model.diff
===================================================================
--- trunk/dports/gnome/gnome-control-center/files/patch-display-new-config-model.diff	                        (rev 0)
+++ trunk/dports/gnome/gnome-control-center/files/patch-display-new-config-model.diff	2014-01-10 22:09:54 UTC (rev 115762)
@@ -0,0 +1,177 @@
+From 150466cdb668a81fb3e595ed7f4e965d62a1fced Mon Sep 17 00:00:00 2001
+From: Giovanni Campagna <gcampagn at redhat.com>
+Date: Thu, 08 Aug 2013 12:21:10 +0000
+Subject: display: adapt to the new model for display configuration
+
+The way we apply the new configuration changed, in that we are
+expected to call the apply() method of GnomeRRConfig ourselves,
+and that takes care to call to mutter, show the confirmation
+dialog, etc.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=705573
+---
+(limited to 'panels/display/cc-display-panel.c')
+
+diff --git a/panels/display/cc-display-panel.c b/panels/display/cc-display-panel.c
+index 7f0431c..ff585e2 100644
+--- panels/display/cc-display-panel.c
++++ panels/display/cc-display-panel.c
+@@ -96,9 +96,6 @@ struct _CcDisplayPanelPrivate
+   gboolean        ignore_gui_changes;
+   gboolean        dragging_top_bar;
+ 
+-  /* These are used while we are waiting for the ApplyConfiguration method to be executed over D-bus */
+-  GDBusProxy *proxy;
+-
+   UpClient *up_client;
+   gboolean lid_is_closed;
+ };
+@@ -117,7 +114,6 @@ static gboolean output_overlaps (GnomeRROutputInfo *output, GnomeRRConfig *confi
+ static void select_current_output_from_dialog_position (CcDisplayPanel *self);
+ static void monitor_switch_active_cb (GObject *object, GParamSpec *pspec, gpointer data);
+ static void get_geometry (GnomeRROutputInfo *output, int *w, int *h);
+-static void apply_configuration_returned_cb (GObject *proxy, GAsyncResult *res, gpointer data);
+ static gboolean get_clone_size (GnomeRRScreen *screen, int *width, int *height);
+ static gboolean output_info_supports_mode (CcDisplayPanel *self, GnomeRROutputInfo *info, int width, int height);
+ static char *make_resolution_string (int width, int height);
+@@ -2302,128 +2298,33 @@ check_required_virtual_size (CcDisplayPanel *self)
+ }
+ 
+ static void
+-begin_version2_apply_configuration (CcDisplayPanel *self, GdkWindow *parent_window, guint32 timestamp)
+-{
+-  XID parent_window_xid;
+-  GError *error = NULL;
+-
+-  parent_window_xid = GDK_WINDOW_XID (parent_window);
+-
+-  self->priv->proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SESSION,
+-                                                     G_DBUS_PROXY_FLAGS_NONE,
+-                                                     NULL,
+-                                                     "org.gnome.SettingsDaemon",
+-                                                     "/org/gnome/SettingsDaemon/XRANDR",
+-                                                     "org.gnome.SettingsDaemon.XRANDR_2",
+-                                                     NULL,
+-                                                     &error);
+-  if (self->priv->proxy == NULL) {
+-    error_message (self, _("Failed to apply configuration: %s"), error->message);
+-    g_error_free (error);
+-    return;
+-  }
+-
+-  g_dbus_proxy_call (self->priv->proxy,
+-                     "ApplyConfiguration",
+-                     g_variant_new ("(xx)", (gint64) parent_window_xid, (gint64) timestamp),
+-                     G_DBUS_CALL_FLAGS_NONE,
+-                     -1,
+-                     NULL,
+-                     apply_configuration_returned_cb,
+-                     self);
+-}
+-
+-static void
+-ensure_current_configuration_is_saved (void)
+-{
+-  GnomeRRScreen *rr_screen;
+-  GnomeRRConfig *rr_config;
+-
+-  /* Normally, gnome_rr_config_save() creates a backup file based on the
+-   * old monitors.xml.  However, if *that* file didn't exist, there is
+-   * nothing from which to create a backup.  So, here we'll save the
+-   * current/unchanged configuration and then let our caller call
+-   * gnome_rr_config_save() again with the new/changed configuration, so
+-   * that there *will* be a backup file in the end.
+-   */
+-
+-  rr_screen = gnome_rr_screen_new (gdk_screen_get_default (), NULL); /* NULL-GError */
+-  if (!rr_screen)
+-    return;
+-
+-  rr_config = gnome_rr_config_new_current (rr_screen, NULL);
+-  gnome_rr_config_ensure_primary (rr_config);
+-  gnome_rr_config_save (rr_config, NULL); /* NULL-GError */
+-
+-  g_object_unref (rr_config);
+-  g_object_unref (rr_screen);
+-}
+-
+-static void
+-apply_configuration_returned_cb (GObject          *proxy,
+-                                 GAsyncResult     *res,
+-                                 gpointer          data)
++sanitize_configuration (CcDisplayPanel *self)
+ {
+-  CcDisplayPanel *self = data;
+-  GVariant *result;
+-  GError *error = NULL;
+-
+-  result = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, &error);
+-  if (error)
+-    error_message (self, _("Failed to apply configuration: %s"), error->message);
+-  g_clear_error (&error);  
+-  if (result)
+-    g_variant_unref (result);
+-
+-  g_object_unref (self->priv->proxy);
+-  self->priv->proxy = NULL;
+-
+-  gtk_widget_set_sensitive (self->priv->panel, TRUE);
+-}
+-
+-static gboolean
+-sanitize_and_save_configuration (CcDisplayPanel *self)
+-{
+-  GError *error;
+-
+   gnome_rr_config_sanitize (self->priv->current_configuration);
+   gnome_rr_config_ensure_primary (self->priv->current_configuration);
+ 
+   check_required_virtual_size (self);
+ 
+   foo_scroll_area_invalidate (FOO_SCROLL_AREA (self->priv->area));
+-
+-  ensure_current_configuration_is_saved ();
+-
+-  error = NULL;
+-  if (!gnome_rr_config_save (self->priv->current_configuration, &error))
+-    {
+-      error_message (self, _("Could not save the monitor configuration"), error->message);
+-      g_error_free (error);
+-      return FALSE;
+-    }
+-
+-  return TRUE;
+ }
+ 
+ static void
+ apply (CcDisplayPanel *self)
+ {
+-  GdkWindow *window;
++  GError *error;
++  gboolean ok;
+ 
+   self->priv->apply_button_clicked_timestamp = gtk_get_current_event_time ();
+ 
+-  if (!sanitize_and_save_configuration (self))
+-    return;
+-
+-  g_assert (self->priv->proxy == NULL);
+-
+-  gtk_widget_set_sensitive (self->priv->panel, FALSE);
++  sanitize_configuration (self);
+ 
+-  window = gtk_widget_get_window (gtk_widget_get_toplevel (self->priv->panel));
++  error = NULL;
++  ok = gnome_rr_config_apply_persistent (self->priv->current_configuration,
++                                         self->priv->screen, &error);
+ 
+-  begin_version2_apply_configuration (self, window,
+-                                      self->priv->apply_button_clicked_timestamp);
++  if (!ok)
++      error_message (self, _("Failed to apply configuration"), error->message);
++  g_clear_error (&error);  
+ }
+ 
+ #if 0
+--
+cgit v0.9.2

Added: trunk/dports/gnome/gnome-control-center/files/patch-output-is-laptop.diff
===================================================================
--- trunk/dports/gnome/gnome-control-center/files/patch-output-is-laptop.diff	                        (rev 0)
+++ trunk/dports/gnome/gnome-control-center/files/patch-output-is-laptop.diff	2014-01-10 22:09:54 UTC (rev 115762)
@@ -0,0 +1,22 @@
+--- panels/display/cc-display-panel.c.orig	2014-01-10 12:07:19.000000000 -0800
++++ panels/display/cc-display-panel.c	2014-01-10 12:29:30.000000000 -0800
+@@ -706,7 +706,7 @@
+           output = gnome_rr_screen_get_output_by_name (self->priv->screen,
+                                                        gnome_rr_output_info_get_name (self->priv->current_output));
+ 
+-          display_closed = gnome_rr_output_is_laptop (output);
++          display_closed = gnome_rr_output_is_builtin_display (output);
+         }
+ 
+       if ((count_active_outputs (self) > 1 || !gnome_rr_output_info_is_active (self->priv->current_output))
+--- panels/wacom/gsd-wacom-device.c.orig	2014-01-10 12:31:49.000000000 -0800
++++ panels/wacom/gsd-wacom-device.c	2014-01-10 12:32:24.000000000 -0800
+@@ -576,7 +576,7 @@
+ 		if (!gnome_rr_output_is_connected (rr_outputs[i]))
+ 			continue;
+ 
+-		if (gnome_rr_output_is_laptop(rr_outputs[i])) {
++		if (gnome_rr_output_is_builtin_display(rr_outputs[i])) {
+ 			retval = rr_outputs[i];
+ 			break;
+ 		}

Added: trunk/dports/gnome/gnome-control-center/files/patch-users-logged-in-check.diff
===================================================================
--- trunk/dports/gnome/gnome-control-center/files/patch-users-logged-in-check.diff	                        (rev 0)
+++ trunk/dports/gnome/gnome-control-center/files/patch-users-logged-in-check.diff	2014-01-10 22:09:54 UTC (rev 115762)
@@ -0,0 +1,29 @@
+From b9836c120a94c21f6d2eb8bc706408741b16b346 Mon Sep 17 00:00:00 2001
+From: Matthias Clasen <mclasen at redhat.com>
+Date: Fri, 10 Jan 2014 17:52:37 +0000
+Subject: users: Improve logged-in check when deleting users
+
+When deleting a user account, we try to check if the user is
+still logged in, but we are using an accountsservice API that
+ignores console logins. But deleting a user that is logged
+in on the console is just as bad, so use
+act_user_is_logged_in_anywhere instead, which includes console
+logins.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=721951
+---
+diff --git a/panels/user-accounts/um-user-panel.c b/panels/user-accounts/um-user-panel.c
+index 2c02520..058eaad 100644
+--- panels/user-accounts/um-user-panel.c
++++ panels/user-accounts/um-user-panel.c
+@@ -478,7 +478,7 @@ delete_user (GtkButton *button, CcUserPanelPrivate *d)
+                 g_signal_connect (dialog, "response",
+                                   G_CALLBACK (gtk_widget_destroy), NULL);
+         }
+-        else if (act_user_is_logged_in (user)) {
++        else if (act_user_is_logged_in_anywhere (user)) {
+                 dialog = gtk_message_dialog_new (GTK_WINDOW (gtk_widget_get_toplevel (d->main_box)),
+                                                  0,
+                                                  GTK_MESSAGE_INFO,
+--
+cgit v0.9.2
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20140110/fc9f674d/attachment-0001.html>


More information about the macports-changes mailing list