mate-base/mate-session-manager: Drop 1.10.x
authorEttore Di Giacinto <mudler@gentoo.org>
Fri, 21 Oct 2016 19:18:34 +0000 (21:18 +0200)
committerEttore Di Giacinto <mudler@gentoo.org>
Thu, 24 Nov 2016 22:20:39 +0000 (23:20 +0100)
Package-Manager: portage-2.3.1

mate-base/mate-session-manager/Manifest
mate-base/mate-session-manager/files/mate-session-manager-1.10.3-upower-0.99-series.patch [deleted file]
mate-base/mate-session-manager/files/mate-session-manager-1.5.2-save-session-ui.patch [deleted file]
mate-base/mate-session-manager/mate-session-manager-1.10.3.ebuild [deleted file]

index 77f8ec79721f5d5e3b7af840001c358874a6505b..f6e33850fcd51e045b7ec1e4e03a5893c416830b 100644 (file)
@@ -1,3 +1,2 @@
-DIST mate-session-manager-1.10.3.tar.xz 538432 SHA256 c73546a77c7fe0a50f8c8c7da02f654df28fa744abb2a661adaaf6c34b8a5de0 SHA512 9ab341bf0d618e440b9caa0c1a091b5628ab73ff75274b5b62deb0b3bdd3a4a119c1e7312dfa7b2ca17afaeda93d9ae9d4a2e830bdff196b64888baf9f265b89 WHIRLPOOL 5601c1bd25972645d3671fd38a0cacf51edd5ab3de78f401695c3847fcccf64a43463d85c6d951740fe1709cfae9af0cfb382b2ee617664967eb664f589e2561
 DIST mate-session-manager-1.12.2.tar.xz 538832 SHA256 bd4221e654a425f7cf05a8b5073dfa10b2f4f99b6e9c2f0b331e0f82142edf93 SHA512 4b4a3ecb0f7cbb25e17db8c5833f789858c94fb236ed60b9e98f59cffa320ec32c2b1960fdcbb9c2c9f476ed76cb1f37c3e07746c7c90e08a0dbcc62aac9793e WHIRLPOOL c7ed6044f99b639716e84135674d4c7e4b001d1284c07f2f0fda6c70e6e2aa420574020fc6f1a53d96b420d7e5ba98c82ca6aeab2168e9494c78729ab1fcbf98
 DIST mate-session-manager-1.14.1.tar.xz 574804 SHA256 26bb04472e19d637db6e9653235d5343dd7b6f2a128a4d2b19366a8bd01d4502 SHA512 993f314c887bca8d8e0b9450f0e62686e133ea16ee2b6675ff69766564d47a4e7d48581867e8d5e8395ee2e3b1735b121f16cb1be22c7da29015a58f98edd638 WHIRLPOOL 309f42c3d7b40f6074e5704783eaa83880fe2578d24b1784be992d5418149d1dfaa5f56c347557450e8281f48f990d21d624afe5493d14cba4493cb0b4c951a4
diff --git a/mate-base/mate-session-manager/files/mate-session-manager-1.10.3-upower-0.99-series.patch b/mate-base/mate-session-manager/files/mate-session-manager-1.10.3-upower-0.99-series.patch
deleted file mode 100644 (file)
index bf97fdf..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-From f9a2293e611930bab7a799efe2569313a4414348 Mon Sep 17 00:00:00 2001
-From: Olaf Leidinger <oleid@mescharet.de>
-Date: Sat, 14 Nov 2015 16:46:28 +0100
-Subject: [PATCH] compile fix for upower 0.99 series
-
-upower 0.99 has lost support for hibernate and suspend. This leads to undefined
-references to up_client_get_can_suspend  and up_client_get_can_hibernate on my
-system. This patch removes any call to those functions for upower >= 0.99.
----
- configure.ac                     |  7 ++++++-
- mate-session/gsm-logout-dialog.c |  8 ++++----
- mate-session/gsm-manager.c       | 12 ++++++------
- 3 files changed, 16 insertions(+), 11 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 74d86ac..9fe1f29 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -146,13 +146,18 @@ AC_ARG_ENABLE(upower,
-               enable_upower=$enableval,
-               enable_upower=no)
- if test "x$enable_upower" = "xyes"; then
--    PKG_CHECK_MODULES(UPOWER, upower-glib >= $UPOWER_REQUIRED, has_upower=yes, has_upower=no)
-+    PKG_CHECK_MODULES([UPOWER], [upower-glib >= $UPOWER_REQUIRED], has_upower=yes, has_upower=no)
- 
-     if test "x$has_upower" = "xyes"; then
-         AC_DEFINE(HAVE_UPOWER, 1, [upower support])
-         AC_SUBST(UPOWER_CFLAGS)
-         AC_SUBST(UPOWER_LIBS)
-     fi
-+    PKG_CHECK_MODULES([UPOWER_HIBERNATE], [upower-glib < 0.99], has_upower_hibernate_suspend=yes, has_upower_hibernate_suspend=no)
-+    if test "x$has_upower_hibernate_suspend" = "xyes"; then
-+        AC_DEFINE(HAVE_UPOWER_HIBERNATE_SUSPEND, 1, [upower based support for hibernate and suspend (<0.99) ])
-+    fi
-+
- fi
- AM_CONDITIONAL(HAVE_UPOWER, test "x$has_upower" = "xyes")
- AC_SUBST(HAVE_UPOWER)
-diff --git a/mate-session/gsm-logout-dialog.c b/mate-session/gsm-logout-dialog.c
-index 464101b..f53c197 100644
---- a/mate-session/gsm-logout-dialog.c
-+++ b/mate-session/gsm-logout-dialog.c
-@@ -215,10 +215,10 @@ gsm_logout_supports_system_suspend (GsmLogoutDialog *logout_dialog)
-         if (LOGIND_RUNNING())
-             ret = gsm_systemd_can_suspend (logout_dialog->priv->systemd);
- #endif
--#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER)
-+#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER_HIBERNATE_SUSPEND)
-         else
- #endif
--#ifdef HAVE_UPOWER
-+#ifdef HAVE_UPOWER_HIBERNATE_SUSPEND
-         ret = up_client_get_can_suspend (logout_dialog->priv->up_client);
- #endif
-         return ret;
-@@ -233,10 +233,10 @@ gsm_logout_supports_system_hibernate (GsmLogoutDialog *logout_dialog)
-         if (LOGIND_RUNNING())
-             ret = gsm_systemd_can_hibernate (logout_dialog->priv->systemd);
- #endif
--#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER)
-+#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER_HIBERNATE_SUSPEND)
-         else
- #endif
--#ifdef HAVE_UPOWER
-+#ifdef HAVE_UPOWER_HIBERNATE_SUSPEND
-         ret = up_client_get_can_hibernate (logout_dialog->priv->up_client);
- #endif
-         return ret;
-diff --git a/mate-session/gsm-manager.c b/mate-session/gsm-manager.c
-index db392b8..7930993 100644
---- a/mate-session/gsm-manager.c
-+++ b/mate-session/gsm-manager.c
-@@ -1184,10 +1184,10 @@ manager_attempt_hibernate (GsmManager *manager)
-                 gsm_systemd_attempt_hibernate (systemd);
-         }
- #endif
--#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER)
-+#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER_HIBERNATE_SUSPEND)
-         else {
- #endif
--#ifdef HAVE_UPOWER
-+#ifdef HAVE_UPOWER_HIBERNATE_SUSPEND
-         can_hibernate = up_client_get_can_hibernate (manager->priv->up_client);
-         if (can_hibernate) {
- 
-@@ -1203,7 +1203,7 @@ manager_attempt_hibernate (GsmManager *manager)
-                 }
-         }
- #endif
--#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER)
-+#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER_HIBERNATE_SUSPEND)
-         }
- #endif
- }
-@@ -1229,10 +1229,10 @@ manager_attempt_suspend (GsmManager *manager)
-                 gsm_systemd_attempt_suspend (systemd);
-         }
- #endif
--#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER)
-+#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER_HIBERNATE_SUSPEND)
-         else {
- #endif
--#ifdef HAVE_UPOWER
-+#ifdef HAVE_UPOWER_HIBERNATE_SUSPEND
-         can_suspend = up_client_get_can_suspend (manager->priv->up_client);
-         if (can_suspend) {
- 
-@@ -1248,7 +1248,7 @@ manager_attempt_suspend (GsmManager *manager)
-                 }
-         }
- #endif
--#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER)
-+#if defined(HAVE_SYSTEMD) && defined(HAVE_UPOWER_HIBERNATE_SUSPEND)
-         }
- #endif
- }
--- 
-2.6.3
-
diff --git a/mate-base/mate-session-manager/files/mate-session-manager-1.5.2-save-session-ui.patch b/mate-base/mate-session-manager/files/mate-session-manager-1.5.2-save-session-ui.patch
deleted file mode 100644 (file)
index 8a57d44..0000000
+++ /dev/null
@@ -1,535 +0,0 @@
-diff -burN a/capplet/gsm-properties-dialog.c b/capplet/gsm-properties-dialog.c
---- a/capplet/gsm-properties-dialog.c  2012-02-29 22:03:08.000000000 +0100
-+++ b/capplet/gsm-properties-dialog.c  2012-08-08 12:16:37.527332034 +0200
-@@ -26,6 +26,8 @@
- #include <glib.h>
- #include <glib/gi18n.h>
- #include <gtk/gtk.h>
-+#include <dbus/dbus-glib.h>
-+#include <dbus/dbus-glib-lowlevel.h>
- 
- #include <mateconf/mateconf-client.h>
- 
-@@ -36,6 +38,11 @@
- #include "gsp-app.h"
- #include "gsp-app-manager.h"
- 
-+
-+#define GSM_SERVICE_DBUS   "org.mate.SessionManager"
-+#define GSM_PATH_DBUS      "/org/mate/SessionManager"
-+#define GSM_INTERFACE_DBUS "org.mate.SessionManager"
-+
- #define GSM_PROPERTIES_DIALOG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSM_TYPE_PROPERTIES_DIALOG, GsmPropertiesDialogPrivate))
- 
- #define IS_STRING_EMPTY(x) ((x)==NULL||(x)[0]=='\0')
-@@ -50,6 +57,7 @@
- #define CAPPLET_DELETE_WIDGET_NAME        "session_properties_delete_button"
- #define CAPPLET_EDIT_WIDGET_NAME          "session_properties_edit_button"
- #define CAPPLET_SAVE_WIDGET_NAME          "session_properties_save_button"
-+#define CAPPLET_SESSION_SAVED_WIDGET_NAME "session_properties_session_saved_label"
- #define CAPPLET_REMEMBER_WIDGET_NAME      "session_properties_remember_toggle"
- 
- #define STARTUP_APP_ICON     "system-run"
-@@ -493,10 +501,66 @@
- }
- 
- static void
-+session_saved_message (GsmPropertiesDialog *dialog,
-+                       const char *msg,
-+                       gboolean is_error)
-+{
-+        GtkLabel *label;
-+        gchar *markup;
-+        
-+        label = GTK_LABEL (gtk_builder_get_object (dialog->priv->xml, CAPPLET_SESSION_SAVED_WIDGET_NAME));
-+        if (is_error)
-+                markup = g_markup_printf_escaped ("<span foreground=\"red\">%s</span>", msg);
-+        else
-+                markup = g_markup_escape_text (msg, -1);
-+
-+        gtk_label_set_markup (label, markup);
-+        g_free (markup);
-+}
-+
-+static void
-+session_saved_cb (DBusGProxy *proxy,
-+                  DBusGProxyCall *call_id,
-+                  void *user_data)
-+{
-+        gboolean res;
-+        GsmPropertiesDialog *dialog = user_data;
-+
-+        res = dbus_g_proxy_end_call (proxy, call_id, NULL, G_TYPE_INVALID);
-+        if (res)
-+                session_saved_message (dialog, _("Your session has been saved."), FALSE);
-+        else
-+                session_saved_message (dialog, _("Failed to save session"), TRUE);
-+
-+        g_object_unref (proxy);
-+}
-+
-+static void
- on_save_session_clicked (GtkWidget           *widget,
-                          GsmPropertiesDialog *dialog)
- {
--        g_debug ("Session saving is not implemented yet!");
-+        DBusGConnection *conn;
-+        DBusGProxy *proxy;
-+        DBusGProxyCall *call;
-+
-+        conn = dbus_g_bus_get (DBUS_BUS_SESSION, NULL);
-+        if (conn == NULL) {
-+                session_saved_message (dialog, _("Could not connect to the session bus"), TRUE);
-+                return;
-+        }
-+
-+        proxy = dbus_g_proxy_new_for_name (conn, GSM_SERVICE_DBUS, GSM_PATH_DBUS, GSM_INTERFACE_DBUS);
-+        if (proxy == NULL) {
-+                session_saved_message (dialog, _("Could not connect to the session manager"), TRUE);
-+                return;
-+        }
-+
-+        call = dbus_g_proxy_begin_call (proxy, "SaveSession", session_saved_cb, dialog, NULL, G_TYPE_INVALID);
-+        if (call == NULL) {
-+                session_saved_message (dialog, _("Failed to save session"), TRUE);
-+                g_object_unref (proxy);
-+                return;
-+        }
- }
- 
- static void
-diff -burN a/configure.ac b/configure.ac
---- a/configure.ac     2012-02-29 22:03:09.000000000 +0100
-+++ b/configure.ac     2012-08-08 12:18:58.740336360 +0200
-@@ -75,6 +75,7 @@
- PKG_CHECK_MODULES(SESSION_PROPERTIES,
-         glib-2.0 >= $GLIB_REQUIRED
-         gtk+-$GTK_API_VERSION >= $GTK_REQUIRED
-+        dbus-glib-1 >= $DBUS_GLIB_REQUIRED
- )
- 
- PKG_CHECK_MODULES(SM, sm)
-diff -burN a/data/session-properties.ui b/data/session-properties.ui
---- a/data/session-properties.ui       2012-02-29 22:03:08.000000000 +0100
-+++ b/data/session-properties.ui       2012-08-08 12:22:36.619343035 +0200
-@@ -148,6 +148,7 @@
-             <property name="visible">True</property>
-             <child>
-               <object class="GtkButton" id="session_properties_save_button">
-+                <property name="visible">True</property>
-                 <property name="can_focus">True</property>
-                 <property name="receives_default">True</property>
-                 <child>
-@@ -191,6 +192,17 @@
-             <property name="position">1</property>
-           </packing>
-         </child>
-+        <child>
-+          <object class="GtkLabel" id="session_properties_session_saved_label">
-+            <property name="visible">True</property>
-+            <property name="wrap">True</property>
-+          </object>
-+          <packing>
-+            <property name="expand">False</property>
-+            <property name="fill">False</property>
-+            <property name="position">2</property>
-+          </packing>
-+        </child>
-       </object>
-       <packing>
-         <property name="position">1</property>
-diff -burN a/mate-session/gsm-client.c b/mate-session/gsm-client.c
---- a/mate-session/gsm-client.c        2012-02-29 22:03:08.000000000 +0100
-+++ b/mate-session/gsm-client.c        2012-08-08 12:24:20.120346205 +0200
-@@ -510,6 +510,17 @@
-         g_signal_emit (client, signals[DISCONNECTED], 0);
- }
- 
-+gboolean
-+gsm_client_request_save (GsmClient *client,
-+                         guint      flags,
-+                         GError   **error)
-+{
-+        g_return_val_if_fail (GSM_IS_CLIENT (client), FALSE);
-+
-+        return GSM_CLIENT_GET_CLASS (client)->impl_request_save (client, flags, error);
-+}
-+
-+
- GKeyFile *
- gsm_client_save (GsmClient *client,
-                  GError   **error)
-diff -burN a/mate-session/gsm-client.h b/mate-session/gsm-client.h
---- a/mate-session/gsm-client.h        2012-02-29 22:03:09.000000000 +0100
-+++ b/mate-session/gsm-client.h        2012-08-08 12:26:38.848350455 +0200
-@@ -94,6 +94,9 @@
-                                                               GError   **error);
-         gboolean              (*impl_stop)                   (GsmClient *client,
-                                                               GError   **error);
-+        gboolean              (*impl_request_save)           (GsmClient *client,
-+                                                              guint      flags,
-+                                                              GError   **error);
-         GKeyFile *            (*impl_save)                   (GsmClient *client,
-                                                               GError   **error);
- };
-@@ -139,6 +142,10 @@
- 
- void                  gsm_client_disconnected               (GsmClient  *client);
- 
-+gboolean              gsm_client_request_save               (GsmClient  *client,
-+                                                             guint       flags,
-+                                                             GError    **error);
-+
- GKeyFile             *gsm_client_save                       (GsmClient  *client,
-                                                              GError    **error);
- /* exported to bus */
-diff -burN a/mate-session/gsm-dbus-client.c b/mate-session/gsm-dbus-client.c
---- a/mate-session/gsm-dbus-client.c   2012-02-29 22:03:08.000000000 +0100
-+++ b/mate-session/gsm-dbus-client.c   2012-08-08 12:38:15.393371794 +0200
-@@ -413,6 +413,19 @@
-         G_OBJECT_CLASS (gsm_dbus_client_parent_class)->finalize (object);
- }
- 
-+static gboolean
-+dbus_client_request_save (GsmClient *client,
-+                          guint      flags,
-+                          GError   **error)
-+{
-+        g_debug ("GsmDBusClient: sending save request to client with id %s",
-+                 gsm_client_peek_id (client));
-+
-+        /* FIXME: The protocol does not support this */
-+
-+        return FALSE;
-+}
-+
- static GKeyFile *
- dbus_client_save (GsmClient *client,
-                   GError   **error)
-@@ -665,6 +678,7 @@
-         object_class->set_property         = gsm_dbus_client_set_property;
-         object_class->dispose              = gsm_dbus_client_dispose;
- 
-+        client_class->impl_request_save           = dbus_client_request_save;
-         client_class->impl_save                   = dbus_client_save;
-         client_class->impl_stop                   = dbus_client_stop;
-         client_class->impl_query_end_session      = dbus_client_query_end_session;
-diff -burN a/mate-session/gsm-manager.c b/mate-session/gsm-manager.c
---- a/mate-session/gsm-manager.c       2012-02-29 22:03:09.000000000 +0100
-+++ b/mate-session/gsm-manager.c       2012-08-08 12:47:24.627388620 +0200
-@@ -68,6 +68,7 @@
- #define GSM_MANAGER_DBUS_NAME "org.mate.SessionManager"
- 
- #define GSM_MANAGER_PHASE_TIMEOUT 30 /* seconds */
-+#define GSM_MANAGER_SAVE_SESSION_TIMEOUT 2
- 
- #define MDM_FLEXISERVER_COMMAND "mdmflexiserver"
- #define MDM_FLEXISERVER_ARGS    "--startnew Standard"
-@@ -1176,6 +1177,69 @@
- 
- }
- 
-+static gboolean
-+_client_request_save (GsmClient            *client,
-+                      ClientEndSessionData *data)
-+{
-+        gboolean ret;
-+        GError  *error;
-+
-+        error = NULL;
-+        ret = gsm_client_request_save (client, data->flags, &error);
-+        if (ret) {
-+                g_debug ("GsmManager: adding client to query clients: %s", gsm_client_peek_id (client));
-+                data->manager->priv->query_clients = g_slist_prepend (data->manager->priv->query_clients,
-+                                                                      client);
-+        } else if (error) {
-+                g_debug ("GsmManager: unable to query client: %s", error->message);
-+                g_error_free (error);
-+        }
-+
-+        return FALSE;
-+}
-+
-+static gboolean
-+_client_request_save_helper (const char           *id,
-+                             GsmClient            *client,
-+                             ClientEndSessionData *data)
-+{
-+        return _client_request_save (client, data);
-+}
-+
-+static void
-+query_save_session_complete (GsmManager *manager)
-+{
-+        GError *error = NULL;
-+
-+        if (g_slist_length (manager->priv->next_query_clients) > 0) {
-+                ClientEndSessionData data;
-+
-+                data.manager = manager;
-+                data.flags = GSM_CLIENT_END_SESSION_FLAG_LAST;
-+
-+                g_slist_foreach (manager->priv->next_query_clients,
-+                                 (GFunc)_client_request_save,
-+                                 &data);
-+
-+                g_slist_free (manager->priv->next_query_clients);
-+                manager->priv->next_query_clients = NULL;
-+
-+                return;
-+        }
-+
-+        if (manager->priv->query_timeout_id > 0) {
-+                g_source_remove (manager->priv->query_timeout_id);
-+                manager->priv->query_timeout_id = 0;
-+        }
-+
-+        gsm_session_save (manager->priv->clients, &error);
-+
-+        if (error) {
-+                g_warning ("Error saving session: %s", error->message);
-+                g_error_free (error);
-+        }
-+}
-+
- static guint32
- generate_cookie (void)
- {
-@@ -1250,6 +1314,21 @@
-         return FALSE;
- }
- 
-+static gboolean
-+_on_query_save_session_timeout (GsmManager *manager)
-+{
-+        manager->priv->query_timeout_id = 0;
-+
-+        g_debug ("GsmManager: query to save session timed out");
-+
-+        g_slist_free (manager->priv->query_clients);
-+        manager->priv->query_clients = NULL;
-+
-+        query_save_session_complete (manager);
-+
-+        return FALSE;
-+}
-+
- static void
- do_phase_query_end_session (GsmManager *manager)
- {
-@@ -1886,13 +1965,32 @@
-                                 const char *reason,
-                                 GsmManager *manager)
- {
--        /* just ignore if received outside of shutdown */
--        if (manager->priv->phase < GSM_MANAGER_PHASE_QUERY_END_SESSION) {
-+        /* just ignore if we are not yet running */
-+        if (manager->priv->phase < GSM_MANAGER_PHASE_RUNNING) {
-                 return;
-         }
- 
-         g_debug ("GsmManager: Response from end session request: is-ok=%d do-last=%d cancel=%d reason=%s", is_ok, do_last, cancel, reason ? reason :"");
- 
-+        if (manager->priv->phase == GSM_MANAGER_PHASE_RUNNING) {
-+                /* Ignore responses when no requests were sent */
-+                if (manager->priv->query_clients == NULL) {
-+                        return;
-+                }
-+
-+                manager->priv->query_clients = g_slist_remove (manager->priv->query_clients, client);
-+
-+                if (do_last) {
-+                        manager->priv->next_query_clients = g_slist_prepend (manager->priv->next_query_clients,
-+                                                                             client);
-+                }
-+
-+                if (manager->priv->query_clients == NULL) {
-+                        query_save_session_complete (manager);
-+                }
-+                return;
-+        }
-+
-         if (cancel) {
-                 cancel_end_session (manager);
-                 return;
-@@ -1991,6 +2089,15 @@
- }
- 
- static void
-+on_xsmp_client_save_request (GsmXSMPClient *client,
-+                             gboolean       show_dialog,
-+                             GsmManager    *manager)
-+{
-+        g_debug ("GsmManager: save_request");
-+        gsm_manager_save_session (manager, NULL);
-+}
-+
-+static void
- on_store_client_added (GsmStore   *store,
-                        const char *id,
-                        GsmManager *manager)
-@@ -2011,6 +2118,10 @@
-                                   "logout-request",
-                                   G_CALLBACK (on_xsmp_client_logout_request),
-                                   manager);
-+              g_signal_connect (client,
-+                                "save-request",
-+                                G_CALLBACK (on_xsmp_client_save_request),
-+                                manager);
-         }
- 
-         g_signal_connect (client,
-@@ -2968,6 +3079,41 @@
- }
- 
- gboolean
-+gsm_manager_save_session (GsmManager *manager,
-+                          GError     **error)
-+{
-+        ClientEndSessionData data;
-+
-+        g_debug ("GsmManager: SaveSession called");
-+
-+        g_return_val_if_fail (GSM_IS_MANAGER (manager), FALSE);
-+
-+        if (manager->priv->phase != GSM_MANAGER_PHASE_RUNNING) {
-+                g_set_error (error,
-+                             GSM_MANAGER_ERROR,
-+                             GSM_MANAGER_ERROR_NOT_IN_RUNNING,
-+                             "SaveSession interface is only available during the Running phase");
-+                return FALSE;
-+        }
-+
-+        data.manager = manager;
-+        data.flags = 0;
-+        gsm_store_foreach (manager->priv->clients,
-+                           (GsmStoreFunc)_client_request_save_helper,
-+                           &data);
-+
-+        if (manager->priv->query_clients) {
-+                manager->priv->query_timeout_id = g_timeout_add_seconds (GSM_MANAGER_SAVE_SESSION_TIMEOUT,
-+                                                                         (GSourceFunc)_on_query_save_session_timeout,
-+                                                                         manager);
-+                return TRUE;
-+        } else {
-+                g_debug ("GsmManager: Nothing to save");
-+                return FALSE;
-+        }
-+}
-+
-+gboolean
- gsm_manager_can_shutdown (GsmManager *manager,
-                           gboolean   *shutdown_available,
-                           GError    **error)
-diff -burN a/mate-session/gsm-manager.h b/mate-session/gsm-manager.h
---- a/mate-session/gsm-manager.h       2012-02-29 22:03:09.000000000 +0100
-+++ b/mate-session/gsm-manager.h       2012-08-08 12:49:14.262391979 +0200
-@@ -154,6 +154,9 @@
- gboolean            gsm_manager_shutdown                       (GsmManager     *manager,
-                                                                 GError        **error);
- 
-+gboolean            gsm_manager_save_session                   (GsmManager     *manager,
-+                                                                GError        **error);
-+
- gboolean            gsm_manager_can_shutdown                   (GsmManager     *manager,
-                                                                 gboolean       *shutdown_available,
-                                                                 GError        **error);
-diff -burN a/mate-session/gsm-xsmp-client.c b/mate-session/gsm-xsmp-client.c
---- a/mate-session/gsm-xsmp-client.c   2012-02-29 22:03:08.000000000 +0100
-+++ b/mate-session/gsm-xsmp-client.c   2012-08-08 12:52:27.719397905 +0200
-@@ -69,6 +69,7 @@
- enum {
-         REGISTER_REQUEST,
-         LOGOUT_REQUEST,
-+        SAVE_REQUEST,
-         LAST_SIGNAL
- };
- 
-@@ -502,6 +503,31 @@
-         return TRUE;
- }
- 
-+static gboolean
-+xsmp_request_save (GsmClient *client,
-+                   guint      flags,
-+                   GError   **error)
-+{
-+        GsmXSMPClient *xsmp = (GsmXSMPClient *) client;
-+
-+        g_debug ("GsmXSMPClient: xsmp_request_save ('%s')", xsmp->priv->description);
-+
-+        if (xsmp->priv->conn == NULL) {
-+                g_set_error (error,
-+                             GSM_CLIENT_ERROR,
-+                             GSM_CLIENT_ERROR_NOT_REGISTERED,
-+                             "Client is not registered");
-+                return FALSE;
-+        }
-+
-+        if (flags & GSM_CLIENT_END_SESSION_FLAG_LAST)
-+                xsmp_save_yourself_phase2 (client);
-+        else
-+                do_save_yourself (xsmp, SmSaveLocal, FALSE);
-+
-+        return TRUE;
-+}
-+
- static char *
- get_desktop_file_path (GsmXSMPClient *client)
- {
-@@ -976,6 +1002,8 @@
-         object_class->get_property         = gsm_xsmp_client_get_property;
-         object_class->set_property         = gsm_xsmp_client_set_property;
- 
-+
-+        client_class->impl_request_save           = xsmp_request_save;
-         client_class->impl_save                   = xsmp_save;
-         client_class->impl_stop                   = xsmp_stop;
-         client_class->impl_query_end_session      = xsmp_query_end_session;
-@@ -1003,6 +1031,16 @@
-                               NULL,
-                               NULL,
-                               g_cclosure_marshal_VOID__BOOLEAN,
-+                              G_TYPE_NONE,
-+                              1, G_TYPE_BOOLEAN);
-+        signals[SAVE_REQUEST] =
-+              g_signal_new ("save-request",
-+                              G_OBJECT_CLASS_TYPE (object_class),
-+                              G_SIGNAL_RUN_LAST,
-+                              G_STRUCT_OFFSET (GsmXSMPClientClass, save_request),
-+                              NULL,
-+                              NULL,
-+                              g_cclosure_marshal_VOID__BOOLEAN,
-                               G_TYPE_NONE,
-                               1, G_TYPE_BOOLEAN);
- 
-diff -burN a/mate-session/gsm-xsmp-client.h b/mate-session/gsm-xsmp-client.h
---- a/mate-session/gsm-xsmp-client.h   2012-02-29 22:03:09.000000000 +0100
-+++ b/mate-session/gsm-xsmp-client.h   2012-08-08 12:53:39.629400108 +0200
-@@ -57,6 +57,8 @@
-         gboolean (*logout_request)       (GsmXSMPClient  *client,
-                                           gboolean        prompt);
- 
-+        gboolean (*save_request)         (GsmXSMPClient  *client,
-+                                          gboolean        prompt);
- 
-         void     (*saved_state)          (GsmXSMPClient  *client);
- 
-diff -burN a/mate-session/org.mate.SessionManager.xml b/mate-session/org.mate.SessionManager.xml
---- a/mate-session/org.mate.SessionManager.xml 2012-02-29 22:03:09.000000000 +0100
-+++ b/mate-session/org.mate.SessionManager.xml 2012-08-08 12:57:41.216407509 +0200
-@@ -256,6 +256,14 @@
-       </doc:doc>
-     </method>
- 
-+    <method name="SaveSession">
-+      <doc:doc>
-+          <doc:description>
-+            <doc:para>Request to save session</doc:para>
-+          </doc:description>
-+      </doc:doc>
-+    </method>
-+
-     <method name="CanShutdown">
-       <arg name="is_available" direction="out" type="b">
-         <doc:doc>
diff --git a/mate-base/mate-session-manager/mate-session-manager-1.10.3.ebuild b/mate-base/mate-session-manager/mate-session-manager-1.10.3.ebuild
deleted file mode 100644 (file)
index f489594..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="5"
-
-GCONF_DEBUG="yes"
-
-inherit autotools gnome2 versionator
-
-MATE_BRANCH="$(get_version_component_range 1-2)"
-
-SRC_URI="http://pub.mate-desktop.org/releases/${MATE_BRANCH}/${P}.tar.xz"
-DESCRIPTION="MATE session manager"
-HOMEPAGE="http://mate-desktop.org/"
-
-LICENSE="GPL-2 LGPL-2 FDL-1.1"
-SLOT="0"
-KEYWORDS="amd64 ~arm x86"
-
-IUSE="ipv6 elibc_FreeBSD gnome-keyring systemd upower"
-
-# x11-misc/xdg-user-dirs{,-gtk} are needed to create the various XDG_*_DIRs, and
-# create .config/user-dirs.dirs which is read by glib to get G_USER_DIRECTORY_*
-# xdg-user-dirs-update is run during login (see 10-user-dirs-update-gnome below).
-
-RDEPEND=">=dev-libs/dbus-glib-0.76
-       >=dev-libs/glib-2.36:2
-       dev-libs/libxslt
-       sys-apps/dbus
-       x11-apps/xdpyinfo
-       x11-libs/gdk-pixbuf:2
-       >=x11-libs/gtk+-2.14:2
-       x11-libs/libICE
-       x11-libs/libSM
-       x11-libs/libX11
-       x11-libs/libXau
-       x11-libs/libXext
-       x11-libs/libXrender
-       x11-libs/libXtst
-       x11-libs/pango
-       x11-libs/xtrans
-       x11-misc/xdg-user-dirs
-       x11-misc/xdg-user-dirs-gtk
-       virtual/libintl
-       elibc_FreeBSD? ( dev-libs/libexecinfo )
-       gnome-keyring? ( gnome-base/gnome-keyring )
-       systemd? ( sys-apps/systemd )
-       upower? ( || ( >=sys-power/upower-0.9.23 >=sys-power/upower-pm-utils-0.9.23 ) )"
-
-DEPEND="${RDEPEND}
-       >=dev-util/intltool-0.40:*
-       >=dev-lang/perl-5
-       >=mate-base/mate-common-1.10
-       >=mate-base/mate-desktop-1.10
-       >=sys-devel/gettext-0.10.40:*
-       virtual/pkgconfig:*
-       !<gnome-base/gdm-2.20.4"
-
-src_prepare() {
-       # Add "session saving" button back,
-       # see https://bugzilla.gnome.org/show_bug.cgi?id=575544
-       epatch "${FILESDIR}"/${PN}-1.5.2-save-session-ui.patch
-
-       # Upstream patch by oleid to fix building with upower 0.99
-       epatch "${FILESDIR}"/${PN}-1.10.3-upower-0.99-series.patch
-
-       eautoreconf
-       gnome2_src_prepare
-}
-
-src_configure() {
-       gnome2_src_configure \
-               --docdir="${EPREFIX}/usr/share/doc/${PF}" \
-               --with-gtk=2.0 \
-               $(use_enable ipv6) \
-               $(use_with systemd) \
-               $(use_enable upower)
-}
-
-DOCS="AUTHORS ChangeLog NEWS README"
-
-src_install() {
-       gnome2_src_install
-
-       dodir /etc/X11/Sessions/
-       exeinto /etc/X11/Sessions/
-       doexe "${FILESDIR}"/MATE
-
-       dodir /usr/share/mate/applications/
-       insinto /usr/share/mate/applications/
-       doins "${FILESDIR}"/defaults.list
-
-       dodir /etc/X11/xinit/xinitrc.d/
-       exeinto /etc/X11/xinit/xinitrc.d/
-       doexe "${FILESDIR}"/15-xdg-data-mate
-
-       # This should be done in MATE too, see Gentoo bug #270852
-       doexe "${FILESDIR}"/10-user-dirs-update-mate
-}