[mate-document-viewer] add mate-document-viewer_switch-to-libsecret.patch
Wolfgang Ulbrich
raveit65 at fedoraproject.org
Sat Oct 19 16:04:19 UTC 2013
commit 787c380ecba868486edcec616f1569805dd1280d
Author: raveit65 <chat-to-me at raveit.de>
Date: Sat Oct 19 18:04:13 2013 +0200
add mate-document-viewer_switch-to-libsecret.patch
mate-document-viewer_switch-to-libsecret.patch | 177 ++++++++++++++++++++++++
1 files changed, 177 insertions(+), 0 deletions(-)
---
diff --git a/mate-document-viewer_switch-to-libsecret.patch b/mate-document-viewer_switch-to-libsecret.patch
new file mode 100644
index 0000000..b5f2bf8
--- /dev/null
+++ b/mate-document-viewer_switch-to-libsecret.patch
@@ -0,0 +1,177 @@
+From 5b333c09f2de21e55c0b32eb303526cb30f7927f Mon Sep 17 00:00:00 2001
+From: Stefano Karapetsas <stefano at karapetsas.com>
+Date: Thu, 01 Aug 2013 22:56:12 +0000
+Subject: Merge branch 'dev-libsecret'
+
+---
+diff --git a/configure.ac b/configure.ac
+index d2a4b87..fd2ec89 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -133,7 +133,7 @@ AC_MSG_RESULT([$with_gtk])
+ dnl Specify required versions of dependencies
+ CAIRO_REQUIRED=1.9.10
+ GLIB_REQUIRED=2.25.11
+-KEYRING_REQUIRED=1.1.0
++LIBSECRET_REQUIRED=0.5
+
+ case "$with_gtk" in
+ 2.0) GTK_API_VERSION=2.0
+@@ -268,12 +268,12 @@ if test "$with_gtk_unix_print" = "yes"; then
+ fi
+
+ # *********************
+-# MATE Keyring support
++# Keyring support
+ # *********************
+
+ AC_ARG_WITH(keyring,
+ [AS_HELP_STRING([--without-keyring],
+- [Disable the use of mate-keyring])],
++ [Disable the use of libsecret and keyring])],
+ [],
+ [case "$with_platform" in
+ mate) with_keyring=yes ;;
+@@ -283,7 +283,7 @@ AC_ARG_WITH(keyring,
+ AM_CONDITIONAL([WITH_KEYRING],[test "$with_keyring" = "yes"])
+
+ if test "$with_keyring" = "yes"; then
+- PKG_CHECK_MODULES(KEYRING, mate-keyring-1 >= $KEYRING_REQUIRED)
++ PKG_CHECK_MODULES(LIBSECRET, libsecret-1 >= $LIBSECRET_REQUIRED)
+ AC_DEFINE([WITH_KEYRING],[1],[Define if KEYRING support is enabled])
+ fi
+
+@@ -341,8 +341,8 @@ BACKEND_LIBS="$BACKEND_LIBS -lm"
+ AC_SUBST(BACKEND_CFLAGS)
+ AC_SUBST(BACKEND_LIBS)
+
+-SHELL_CFLAGS="$SHELL_CORE_CFLAGS $KEYRING_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
+-SHELL_LIBS="$SHELL_CORE_LIBS $KEYRING_LIBS -lz -lm"
++SHELL_CFLAGS="$SHELL_CORE_CFLAGS $LIBSECRET_CFLAGS -DGDK_MULTIHEAD_SAFE -DGTK_MULTIHEAD_SAFE $DEBUG_FLAGS"
++SHELL_LIBS="$SHELL_CORE_LIBS $LIBSECRET_LIBS -lz -lm"
+ AC_SUBST(SHELL_CFLAGS)
+ AC_SUBST(SHELL_LIBS)
+
+diff --git a/shell/ev-keyring.c b/shell/ev-keyring.c
+index ac1d33a..3a9cd4c 100644
+--- a/shell/ev-keyring.c
++++ b/shell/ev-keyring.c
+@@ -25,24 +25,25 @@
+ #include "ev-keyring.h"
+
+ #ifdef WITH_KEYRING
+-#include <mate-keyring.h>
++#include <libsecret/secret.h>
+
+-static const MateKeyringPasswordSchema doc_password_schema = {
+- MATE_KEYRING_ITEM_GENERIC_SECRET,
++static const SecretSchema doc_password_schema = {
++ "org.mate.Atril.Document",
++ SECRET_SCHEMA_DONT_MATCH_NAME,
+ {
+- { "type", MATE_KEYRING_ATTRIBUTE_TYPE_STRING },
+- { "uri", MATE_KEYRING_ATTRIBUTE_TYPE_STRING },
++ { "type", SECRET_SCHEMA_ATTRIBUTE_STRING },
++ { "uri", SECRET_SCHEMA_ATTRIBUTE_STRING },
+ { NULL, 0 }
+ }
+ };
+-const MateKeyringPasswordSchema *EV_DOCUMENT_PASSWORD_SCHEMA = &doc_password_schema;
++const SecretSchema *EV_DOCUMENT_PASSWORD_SCHEMA = &doc_password_schema;
+ #endif /* WITH_KEYRING */
+
+ gboolean
+ ev_keyring_is_available (void)
+ {
+ #ifdef WITH_KEYRING
+- return mate_keyring_is_available ();
++ return TRUE;
+ #else
+ return FALSE;
+ #endif
+@@ -51,31 +52,17 @@ ev_keyring_is_available (void)
+ gchar *
+ ev_keyring_lookup_password (const gchar *uri)
+ {
+- gchar *retval = NULL;
+ #ifdef WITH_KEYRING
+- MateKeyringResult result;
+- gchar *password = NULL;
+-
+ g_return_val_if_fail (uri != NULL, NULL);
+
+- if (!mate_keyring_is_available ())
+- return NULL;
+-
+- result = mate_keyring_find_password_sync (EV_DOCUMENT_PASSWORD_SCHEMA,
+- &password,
+- "type", "document_password",
+- "uri", uri,
+- NULL);
+- if (result != MATE_KEYRING_RESULT_OK || !password) {
+- if (password)
+- mate_keyring_free_password (password);
+- return NULL;
+- }
+-
+- retval = g_strdup (password);
+- mate_keyring_free_password (password);
++ return secret_password_lookup_sync (EV_DOCUMENT_PASSWORD_SCHEMA,
++ NULL, NULL,
++ "type", "document_password",
++ "uri", uri,
++ NULL);
++#else
++ return NULL;
+ #endif /* WITH_KEYRING */
+- return retval;
+ }
+
+ gboolean
+@@ -84,32 +71,29 @@ ev_keyring_save_password (const gchar *uri,
+ GPasswordSave flags)
+ {
+ #ifdef WITH_KEYRING
+- MateKeyringResult result;
+- const gchar *keyring;
+- gchar *name;
+- gchar *unescaped_uri;
++ const gchar *keyring;
++ gchar *name;
++ gchar *unescaped_uri;
++ gboolean retval;
+
+ g_return_val_if_fail (uri != NULL, FALSE);
+
+- if (!mate_keyring_is_available ())
+- return FALSE;
+-
+ if (flags == G_PASSWORD_SAVE_NEVER)
+ return FALSE;
+
+- keyring = (flags == G_PASSWORD_SAVE_FOR_SESSION) ? "session" : NULL;
++ keyring = (flags == G_PASSWORD_SAVE_FOR_SESSION) ? SECRET_COLLECTION_SESSION : NULL;
+ unescaped_uri = g_uri_unescape_string (uri, NULL);
+ name = g_strdup_printf (_("Password for document %s"), unescaped_uri);
+ g_free (unescaped_uri);
+
+- result = mate_keyring_store_password_sync (EV_DOCUMENT_PASSWORD_SCHEMA,
+- keyring, name, password,
+- "type", "document_password",
+- "uri", uri,
+- NULL);
++ retval = secret_password_store_sync (EV_DOCUMENT_PASSWORD_SCHEMA, keyring,
++ name, password, NULL, NULL,
++ "type", "document_password",
++ "uri", uri,
++ NULL);
+ g_free (name);
+
+- return (result == MATE_KEYRING_RESULT_OK);
++ return retval;
+ #else
+ return FALSE;
+ #endif /* WITH_KEYRING */
+--
+cgit
+
More information about the scm-commits
mailing list