Hello community,

here is the log from the commit of package gpaste for openSUSE:Factory checked 
in at 2016-06-19 10:49:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gpaste (Old)
 and      /work/SRC/openSUSE:Factory/.gpaste.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gpaste"

Changes:
--------
--- /work/SRC/openSUSE:Factory/gpaste/gpaste.changes    2016-04-12 
19:32:05.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.gpaste.new/gpaste.changes       2016-06-19 
10:49:18.000000000 +0200
@@ -1,0 +2,15 @@
+Tue Jun 14 17:43:24 UTC 2016 - gan...@opensuse.org
+
+- Update to version 3.20.3
+  + Fix soname versioning.
+- Changes from version 3.20.2:
+  + Add missing icon.
+- Changes from version 3.20.1:
+  + Fix crash when a search goes wrong.
+  + Fix hanging issue due to gtk+ race (?) in gtk_clipboard_store.
+  + Fix the gnome-shell menu sometimes displaying twice.
+  + Add debug logs to the core library.
+  + Fix some build issues with some toolchains.
+  + Updated translations.
+
+-------------------------------------------------------------------

Old:
----
  gpaste-3.20.tar.xz

New:
----
  gpaste-3.20.3.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gpaste.spec ++++++
--- /var/tmp/diff_new_pack.foL07w/_old  2016-06-19 10:49:19.000000000 +0200
+++ /var/tmp/diff_new_pack.foL07w/_new  2016-06-19 10:49:19.000000000 +0200
@@ -18,7 +18,7 @@
 
 
 Name:           gpaste
-Version:        3.20
+Version:        3.20.3
 Release:        0
 Summary:        Clipboard management system for GNOME
 License:        BSD-2-Clause

++++++ gpaste-3.20.tar.xz -> gpaste-3.20.3.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/ChangeLog new/gpaste-3.20.3/ChangeLog
--- old/gpaste-3.20/ChangeLog   2016-03-23 20:48:19.000000000 +0100
+++ new/gpaste-3.20.3/ChangeLog 2016-06-14 08:56:38.000000000 +0200
@@ -1,6 +1,189 @@
 # Generated by Makefile. Do not edit.
 
 
+commit d917e87176329fcae6649e7243ada272c7260104
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Tue May 24 09:08:32 2016 +0200
+
+    Release GPaste 3.20.2
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 323f08d2a30eb361255f3c6f6400e06d3c469985
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Mon May 23 20:28:37 2016 +0200
+
+    specify the window icon
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit d9ccd33462ba719eb34acaab668915dd544c07ce
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Mon May 23 13:58:18 2016 +0200
+
+    Release GPaste 3.20.1
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit ad2ed8235b3d95ca2d7e30858ded4c4478bad6e8
+Merge: 371c8bc 09b9da5
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sun May 22 23:03:48 2016 +0200
+
+    Merge branch 'gpaste-3.18' into gpaste-3.20
+    
+    * gpaste-3.18:
+      Release GPaste 3.18.4
+      clipboard: fix missing return
+
+commit 09b9da5a5d7cec4477cdb5c39fc1bb59d683add0
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sun May 22 23:00:26 2016 +0200
+
+    Release GPaste 3.18.4
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 909f1d5e21433fb42e716ac131f4dec9b8e04fbf
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sun May 22 22:58:07 2016 +0200
+
+    clipboard: fix missing return
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 371c8bc500febe6dbaa58fa50306ef125f18a5b2
+Merge: 6f91890 d430bf6
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sun May 22 22:39:21 2016 +0200
+
+    Merge branch 'gpaste-3.18' into gpaste-3.20
+    
+    * gpaste-3.18:
+      Release GPaste 3.18.4
+      core: add debug logs
+
+commit d430bf680032759323d9ecd21df35ad762825e06
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sun May 22 22:31:24 2016 +0200
+
+    Release GPaste 3.18.4
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 889111ccde45ca188f0872c1e15e95c448fdf5d0
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sun May 22 22:22:00 2016 +0200
+
+    core: add debug logs
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 6f91890a9b300be9b514dd4105972168768c3e50
+Merge: 42b5fc8 cdcb2e9
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Wed May 18 22:46:40 2016 +0200
+
+    Merge branch 'gpaste-3.18' into gpaste-3.20
+    
+    * gpaste-3.18:
+      clipboard: avoid calling gtk_clipboard_store too often
+
+commit cdcb2e94195c0dfeb47376b33ac6446b4fd9d0b3
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Wed May 18 22:45:03 2016 +0200
+
+    clipboard: avoid calling gtk_clipboard_store too often
+    
+    Avoid hitting some racy code in gtk+
+    
+    Probably fixes #151
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 42b5fc8a196e48b0e9026d96eccee547513f60ec
+Merge: 58b896a 9f1b2ca
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Fri May 13 16:31:38 2016 +0200
+
+    Merge branch 'gpaste-3.18' into gpaste-3.20
+    
+    * gpaste-3.18:
+      gnome-shell: ensure we're disabled before enabling
+      clipboard: update erroneous comment
+
+commit 9f1b2ca4aebe0a06bb76303c5dfa63469ad2e34d
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Fri May 13 16:31:13 2016 +0200
+
+    gnome-shell: ensure we're disabled before enabling
+    
+    fixes #149
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 8fb9dc67e42500f91d69af698f82ace0c4205671
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Fri May 13 15:51:21 2016 +0200
+
+    clipboard: update erroneous comment
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 58b896aed0fc4e245d0b4d0ee46baff489e8bf31
+Merge: 3503fca 84127bc
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sat Apr 30 10:37:50 2016 +0200
+
+    Merge branch 'gpaste-3.18' into gpaste-3.20
+    
+    * gpaste-3.18:
+      daemon: don't crash on search error
+
+commit 84127bcaf1a292133df3a99e5a143b490a9fe8d9
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sat Apr 30 10:31:07 2016 +0200
+
+    daemon: don't crash on search error
+    
+    fixes #150
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 3503fcabcd48c53f5d9ba94ecd94569db6323b63
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sat Apr 2 12:45:03 2016 +0200
+
+    clipboard-watcher: fix linkage
+    
+    With some toolchain, we would fail with undefined references otherwise
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 2e8a25b7865e62227d8a672840895d33b4766358
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Sun Mar 27 11:03:59 2016 +0200
+
+    ui: ShortcusWindow doesn't have private
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit b74948d79cfd752c9ba5c125b1e7c326cb7512ec
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Wed Mar 23 20:50:24 2016 +0100
+
+    post release version bump
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
+commit 808f22ff5688703a173fcff20d641720a739e585
+Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
+Date:   Wed Mar 23 20:49:26 2016 +0100
+
+    Release GPaste 3.20
+    
+    Signed-off-by: Marc-Antoine Perennou <marc-anto...@perennou.com>
+
 commit ee21dbeadbbdd7964c378c5265e89daedda19ddf
 Author: Marc-Antoine Perennou <marc-anto...@perennou.com>
 Date:   Wed Mar 16 23:38:42 2016 +0100
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/Makefile.in new/gpaste-3.20.3/Makefile.in
--- old/gpaste-3.20/Makefile.in 2016-03-23 20:48:13.000000000 +0100
+++ new/gpaste-3.20.3/Makefile.in       2016-06-14 08:56:19.000000000 +0200
@@ -284,7 +284,8 @@
 PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(pkglibexec_PROGRAMS)
 am_bin_clipboard_watcher_OBJECTS = 
src/clipboard-watcher/bin_clipboard_watcher-clipboard-watcher.$(OBJEXT)
 bin_clipboard_watcher_OBJECTS = $(am_bin_clipboard_watcher_OBJECTS)
-bin_clipboard_watcher_DEPENDENCIES = $(builddir)/$(libgpaste_la_file)
+bin_clipboard_watcher_DEPENDENCIES = $(builddir)/$(libgpaste_la_file) \
+       $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
 bin_clipboard_watcher_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
        $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
        $(bin_clipboard_watcher_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
@@ -1322,6 +1323,8 @@
 
 bin_clipboard_watcher_LDADD = \
        $(builddir)/$(libgpaste_la_file) \
+       $(GLIB_LIBS)                     \
+       $(GTK_LIBS)                      \
        $(NULL)
 
 bin_test_gnome_shell_client_SOURCES = \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/NEWS new/gpaste-3.20.3/NEWS
--- old/gpaste-3.20/NEWS        2016-03-23 20:47:15.000000000 +0100
+++ new/gpaste-3.20.3/NEWS      2016-06-14 08:53:41.000000000 +0200
@@ -1,3 +1,22 @@
+NEW in 3.20.3 (14/06/2016)
+=============
+
+- Fix soname versioning
+
+NEW in 3.20.2 (24/05/2016)
+=============
+
+- Add missing icon
+
+NEW in 3.20.1 (23/05/2016)
+=============
+
+- Fix crash when a search goes wrong
+- Fix hanging issue due to gtk+ race (?) in gtk_clipboard_store
+- Fix the gnome-shell menu sometimes displaying twice
+- Add debug logs to the core library
+- Fix some build issues with some toolchains
+
 NEW in 3.20 (23/03/2016)
 =============
 
@@ -24,6 +43,14 @@
 - Implement the new shotcut window from gtk+
 - Various code cleanups
 
+NEW in 3.18.4 (22/05/2016)
+=============
+
+- fix crash when a search goes wrong
+- fix hanging issue due to gtk+ race (?) in gtk_clipboard_store
+- fix the gnome-shell menu sometimes displaying twice
+- add debug logs to the core library
+
 NEW in 3.18.3 (15/01/2016)
 =============
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/README.md new/gpaste-3.20.3/README.md
--- old/gpaste-3.20/README.md   2016-03-23 20:31:56.000000000 +0100
+++ new/gpaste-3.20.3/README.md 2016-06-14 08:54:29.000000000 +0200
@@ -45,6 +45,6 @@
 
 You can see everything I'll post about GPaste 
[there](http://www.imagination-land.org/tags/GPaste.html).
 
-Latest release for GNOME 3.20 is: [GPaste 
3.20](http://www.imagination-land.org/posts/2016-03-23-gpaste-3.20-released.html).
+Latest release for GNOME 3.20 is: [GPaste 
3.20.3](http://www.imagination-land.org/posts/2016-06-14-gpaste-3.20.3-released.html).
 
-Direct link to download: 
<http://www.imagination-land.org/files/gpaste/gpaste-3.20.tar.xz>
+Direct link to download: 
<http://www.imagination-land.org/files/gpaste/gpaste-3.20.3.tar.xz>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/aclocal.m4 new/gpaste-3.20.3/aclocal.m4
--- old/gpaste-3.20/aclocal.m4  2016-03-23 20:48:12.000000000 +0100
+++ new/gpaste-3.20.3/aclocal.m4        2016-06-14 08:56:11.000000000 +0200
@@ -289,8 +289,8 @@
 ])
 
 # nls.m4 serial 5 (gettext-0.18)
-dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014 Free Software Foundation,
-dnl Inc.
+dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014, 2016 Free Software
+dnl Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/configure new/gpaste-3.20.3/configure
--- old/gpaste-3.20/configure   2016-03-23 20:48:13.000000000 +0100
+++ new/gpaste-3.20.3/configure 2016-06-14 08:56:18.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for GPaste 3.20.
+# Generated by GNU Autoconf 2.69 for GPaste 3.20.3.
 #
 # Report bugs to <marc-anto...@perennou.com>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='GPaste'
 PACKAGE_TARNAME='gpaste'
-PACKAGE_VERSION='3.20'
-PACKAGE_STRING='GPaste 3.20'
+PACKAGE_VERSION='3.20.3'
+PACKAGE_STRING='GPaste 3.20.3'
 PACKAGE_BUGREPORT='marc-anto...@perennou.com'
 PACKAGE_URL=''
 
@@ -1455,7 +1455,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures GPaste 3.20 to adapt to many kinds of systems.
+\`configure' configures GPaste 3.20.3 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1525,7 +1525,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GPaste 3.20:";;
+     short | recursive ) echo "Configuration of GPaste 3.20.3:";;
    esac
   cat <<\_ACEOF
 
@@ -1701,7 +1701,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GPaste configure 3.20
+GPaste configure 3.20.3
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2124,7 +2124,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by GPaste $as_me 3.20, which was
+It was created by GPaste $as_me 3.20.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2476,7 +2476,7 @@
 
 
 
-LIBGPASTE_LT_VERSION="6:0:0"
+LIBGPASTE_LT_VERSION="6:2:0"
 
 
 
@@ -12179,7 +12179,7 @@
 
 # Define the identity of the package.
  PACKAGE='gpaste'
- VERSION='3.20'
+ VERSION='3.20.3'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -17079,7 +17079,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by GPaste $as_me 3.20, which was
+This file was extended by GPaste $as_me 3.20.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -17145,7 +17145,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-GPaste config.status 3.20
+GPaste config.status 3.20.3
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/configure.ac 
new/gpaste-3.20.3/configure.ac
--- old/gpaste-3.20/configure.ac        2016-03-23 20:48:02.000000000 +0100
+++ new/gpaste-3.20.3/configure.ac      2016-06-14 08:53:00.000000000 +0200
@@ -2,14 +2,14 @@
 ##
 ## Copyright (c) 2010-2016, Marc-Antoine Perennou <marc-anto...@perennou.com>
 
-m4_define([gpaste_version],      [3.20])
+m4_define([gpaste_version],      [3.20.3])
 
 # Update gpaste_lt_version before each release (and only then)
 # The format is C:R:A (current revision age)
 # - If any interface has been added, ‘C:R:A’ becomes ‘C+1:0:A+1’.
 # - If any interface has been removed or modified, ‘C:R:A’ becomes ‘C+1:0:0’.
 # - Otherwise, ‘C:R:A’ becomes ‘C:R+1:A’.
-m4_define([gpaste_lt_version],   [6:0:0])
+m4_define([gpaste_lt_version],   [6:2:0])
 
 # Build system requirements
 m4_define([autoconf_required],   [2.69])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/po/de.po new/gpaste-3.20.3/po/de.po
--- old/gpaste-3.20/po/de.po    2016-03-23 20:33:00.000000000 +0100
+++ new/gpaste-3.20.3/po/de.po  2016-06-14 08:56:37.000000000 +0200
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: GPaste\n"
 "Report-Msgid-Bugs-To: marc-anto...@perennou.com\n"
-"POT-Creation-Date: 2016-03-23 20:33+0100\n"
+"POT-Creation-Date: 2016-06-14 08:56+0200\n"
 "PO-Revision-Date: 2014-03-27 21:03+0100\n"
 "Last-Translator: Christian Kluge <frakturfr...@gmail.com>\n"
 "Language-Team: \n"
@@ -42,7 +42,7 @@
 msgid "launch the graphical tool"
 msgstr "Konfigurationswerkzeug starten"
 
-#: ../src/libgpaste/core/gpaste-history.c:722
+#: ../src/libgpaste/core/gpaste-history.c:736
 msgid "Could not create history dir"
 msgstr "Ordner für die Chronik konnte nicht angelegt werden"
 
@@ -135,49 +135,49 @@
 msgstr "Minimale Textlänge:"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:256
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:78
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:72
 #: ../data/control-center/42-gpaste.xml.in.in.h:3
 #, fuzzy
 msgid "Delete the active item from history"
 msgstr "Lösche den <number>ten Eintrag aus der Chronik"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:263
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:79
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:73
 #: ../data/control-center/42-gpaste.xml.in.in.h:1
 #, fuzzy
 msgid "Launch the graphical tool"
 msgstr "Konfigurationswerkzeug starten"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:270
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:80
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:74
 #: ../data/control-center/42-gpaste.xml.in.in.h:2
 #, fuzzy
 msgid "Mark the active item as being a password"
 msgstr "Tastenkürzel um den ersten Eintrag in der Chronik zu löschen"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:277
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:81
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:75
 #: ../data/control-center/42-gpaste.xml.in.in.h:4
 #, fuzzy
 msgid "Display the history"
 msgstr "Chronik anzeigen:"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:284
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:82
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:76
 #: ../data/control-center/42-gpaste.xml.in.in.h:5
 #, fuzzy
 msgid "Sync the clipboard to the primary selection"
 msgstr "Zwischenablage mit der Auswahl synchronisieren:"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:291
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:83
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:77
 #: ../data/control-center/42-gpaste.xml.in.in.h:6
 #, fuzzy
 msgid "Sync the primary selection to the clipboard"
 msgstr "Auswahl mit der Zwischenablage synchronisieren:"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:298
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:84
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:78
 #: ../data/control-center/42-gpaste.xml.in.in.h:7
 #, fuzzy
 msgid "Upload the active item to a pastebin service"
@@ -290,7 +290,7 @@
 msgid "GPaste Settings"
 msgstr "GPaste-Daemon-Einstellungen"
 
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:70
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:64
 msgid "General"
 msgstr ""
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/po/es.po new/gpaste-3.20.3/po/es.po
--- old/gpaste-3.20/po/es.po    2016-03-23 20:33:00.000000000 +0100
+++ new/gpaste-3.20.3/po/es.po  2016-06-14 08:56:37.000000000 +0200
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: GPaste\n"
 "Report-Msgid-Bugs-To: marc-anto...@perennou.com\n"
-"POT-Creation-Date: 2016-03-23 20:33+0100\n"
+"POT-Creation-Date: 2016-06-14 08:56+0200\n"
 "PO-Revision-Date: 2011-11-20 16:30+0100\n"
 "Last-Translator: Antonio Trujillo <lun...@gmail.com>\n"
 "Language-Team: Spanish\n"
@@ -41,7 +41,7 @@
 msgid "launch the graphical tool"
 msgstr "iniciar la herramienta de configuración"
 
-#: ../src/libgpaste/core/gpaste-history.c:722
+#: ../src/libgpaste/core/gpaste-history.c:736
 msgid "Could not create history dir"
 msgstr "No se pudo crear directorio de historial"
 
@@ -134,49 +134,49 @@
 msgstr "Tamaño mínimo de texto"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:256
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:78
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:72
 #: ../data/control-center/42-gpaste.xml.in.in.h:3
 #, fuzzy
 msgid "Delete the active item from history"
 msgstr "Eliminar el primer elemento del historial"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:263
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:79
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:73
 #: ../data/control-center/42-gpaste.xml.in.in.h:1
 #, fuzzy
 msgid "Launch the graphical tool"
 msgstr "iniciar la herramienta de configuración"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:270
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:80
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:74
 #: ../data/control-center/42-gpaste.xml.in.in.h:2
 #, fuzzy
 msgid "Mark the active item as being a password"
 msgstr "Atajo de teclado para eliminar la primera entrada del historial"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:277
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:81
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:75
 #: ../data/control-center/42-gpaste.xml.in.in.h:4
 #, fuzzy
 msgid "Display the history"
 msgstr "Mostrar el historial"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:284
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:82
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:76
 #: ../data/control-center/42-gpaste.xml.in.in.h:5
 #, fuzzy
 msgid "Sync the clipboard to the primary selection"
 msgstr "Sincronizar el portapapeles con selección principal: "
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:291
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:83
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:77
 #: ../data/control-center/42-gpaste.xml.in.in.h:6
 #, fuzzy
 msgid "Sync the primary selection to the clipboard"
 msgstr "Sincronizar selección principal con el portapapeles: "
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:298
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:84
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:78
 #: ../data/control-center/42-gpaste.xml.in.in.h:7
 #, fuzzy
 msgid "Upload the active item to a pastebin service"
@@ -290,7 +290,7 @@
 msgid "GPaste Settings"
 msgstr "Ajustes del servicio GPaste"
 
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:70
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:64
 msgid "General"
 msgstr ""
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/po/fr.po new/gpaste-3.20.3/po/fr.po
--- old/gpaste-3.20/po/fr.po    2016-03-23 20:33:01.000000000 +0100
+++ new/gpaste-3.20.3/po/fr.po  2016-06-14 08:56:37.000000000 +0200
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: GPaste\n"
 "Report-Msgid-Bugs-To: marc-anto...@perennou.com\n"
-"POT-Creation-Date: 2016-03-23 20:33+0100\n"
+"POT-Creation-Date: 2016-06-14 08:56+0200\n"
 "PO-Revision-Date: 2011-01-25 16:05+0100\n"
 "Last-Translator: Marc-Antoine Perennou <marc-anto...@perennou.com>\n"
 "Language-Team: French\n"
@@ -40,7 +40,7 @@
 msgid "launch the graphical tool"
 msgstr "lance l'interface graphique"
 
-#: ../src/libgpaste/core/gpaste-history.c:722
+#: ../src/libgpaste/core/gpaste-history.c:736
 msgid "Could not create history dir"
 msgstr "Impossible de créer le dossier d'historique"
 
@@ -130,43 +130,43 @@
 msgstr "Taille minimale d'un élément textuel"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:256
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:78
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:72
 #: ../data/control-center/42-gpaste.xml.in.in.h:3
 msgid "Delete the active item from history"
 msgstr "Supprimer l'élément actif de l'historique"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:263
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:79
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:73
 #: ../data/control-center/42-gpaste.xml.in.in.h:1
 msgid "Launch the graphical tool"
 msgstr "Lancer l'interface graphique"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:270
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:80
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:74
 #: ../data/control-center/42-gpaste.xml.in.in.h:2
 msgid "Mark the active item as being a password"
 msgstr "Marquer l'élément actif comme étant un mot de passe"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:277
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:81
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:75
 #: ../data/control-center/42-gpaste.xml.in.in.h:4
 msgid "Display the history"
 msgstr "Afficher l'historique"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:284
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:82
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:76
 #: ../data/control-center/42-gpaste.xml.in.in.h:5
 msgid "Sync the clipboard to the primary selection"
 msgstr "Synchroniser le presse-papier avec la sélection primaire"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:291
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:83
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:77
 #: ../data/control-center/42-gpaste.xml.in.in.h:6
 msgid "Sync the primary selection to the clipboard"
 msgstr "Synchroniser la sélection primaire avec le presse-papier"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:298
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:84
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:78
 #: ../data/control-center/42-gpaste.xml.in.in.h:7
 msgid "Upload the active item to a pastebin service"
 msgstr "Téléverser l'élément actif vers un sevice type pastebin"
@@ -274,7 +274,7 @@
 msgid "GPaste Settings"
 msgstr "Préférences du démon GPaste"
 
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:70
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:64
 msgid "General"
 msgstr "Général"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/po/pt_BR.po new/gpaste-3.20.3/po/pt_BR.po
--- old/gpaste-3.20/po/pt_BR.po 2016-03-23 20:33:01.000000000 +0100
+++ new/gpaste-3.20.3/po/pt_BR.po       2016-06-14 08:56:37.000000000 +0200
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: GPaste\n"
 "Report-Msgid-Bugs-To: marc-anto...@perennou.com\n"
-"POT-Creation-Date: 2016-03-23 20:33+0100\n"
+"POT-Creation-Date: 2016-06-14 08:56+0200\n"
 "PO-Revision-Date: 2015-10-10 20:03-0300\n"
 "Last-Translator: Elder Marco <elderma...@gmail.com>\n"
 "Language-Team: \n"
@@ -40,7 +40,7 @@
 msgid "launch the graphical tool"
 msgstr "inicia a ferramenta gráfica"
 
-#: ../src/libgpaste/core/gpaste-history.c:722
+#: ../src/libgpaste/core/gpaste-history.c:736
 msgid "Could not create history dir"
 msgstr "Não foi possível criar o diretório do histórico"
 
@@ -133,49 +133,49 @@
 msgstr "Tamanho mínimo do item de texto:"
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:256
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:78
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:72
 #: ../data/control-center/42-gpaste.xml.in.in.h:3
 #, fuzzy
 msgid "Delete the active item from history"
 msgstr "Apagar o item ativo do histórico: "
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:263
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:79
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:73
 #: ../data/control-center/42-gpaste.xml.in.in.h:1
 #, fuzzy
 msgid "Launch the graphical tool"
 msgstr "Iniciar a ferramenta gráfica: "
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:270
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:80
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:74
 #: ../data/control-center/42-gpaste.xml.in.in.h:2
 #, fuzzy
 msgid "Mark the active item as being a password"
 msgstr "Marcar o item ativo como sendo uma senha: "
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:277
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:81
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:75
 #: ../data/control-center/42-gpaste.xml.in.in.h:4
 #, fuzzy
 msgid "Display the history"
 msgstr "Mostrar histórico: "
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:284
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:82
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:76
 #: ../data/control-center/42-gpaste.xml.in.in.h:5
 #, fuzzy
 msgid "Sync the clipboard to the primary selection"
 msgstr "Sincronizar a área de transferência com a seleção primária: "
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:291
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:83
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:77
 #: ../data/control-center/42-gpaste.xml.in.in.h:6
 #, fuzzy
 msgid "Sync the primary selection to the clipboard"
 msgstr "Sincronizar a seleção primária com a área de transferência: "
 
 #: ../src/libgpaste/settings-ui/gpaste-settings-ui-stack.c:298
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:84
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:78
 #: ../data/control-center/42-gpaste.xml.in.in.h:7
 #, fuzzy
 msgid "Upload the active item to a pastebin service"
@@ -285,7 +285,7 @@
 msgid "GPaste Settings"
 msgstr "Configurações do GPaste"
 
-#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:70
+#: ../src/libgpaste/ui/gpaste-ui-shortcuts-window.c:64
 msgid "General"
 msgstr ""
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/src/clipboard-watcher.mk 
new/gpaste-3.20.3/src/clipboard-watcher.mk
--- old/gpaste-3.20/src/clipboard-watcher.mk    2016-03-12 23:11:36.000000000 
+0100
+++ new/gpaste-3.20.3/src/clipboard-watcher.mk  2016-05-23 10:41:17.000000000 
+0200
@@ -17,4 +17,6 @@
 
 bin_clipboard_watcher_LDADD =            \
        $(builddir)/$(libgpaste_la_file) \
+       $(GLIB_LIBS)                     \
+       $(GTK_LIBS)                      \
        $(NULL)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/src/gnome-shell/extension.js 
new/gpaste-3.20.3/src/gnome-shell/extension.js
--- old/gpaste-3.20/src/gnome-shell/extension.js        2016-03-13 
22:34:35.000000000 +0100
+++ new/gpaste-3.20.3/src/gnome-shell/extension.js      2016-06-14 
08:52:03.000000000 +0200
@@ -19,11 +19,12 @@
     Gettext.bindtextdomain(metadata.gettext_package, metadata.localedir);
 }
 
-function enable() {
-    Main.panel.addToStatusArea('gpaste', new Indicator.GPasteIndicator());
-}
-
 function disable() {
     Main.panel.statusArea.gpaste.shutdown();
 }
 
+function enable() {
+    if (Main.panel.statusArea.gpaste)
+        disable();
+    Main.panel.addToStatusArea('gpaste', new Indicator.GPasteIndicator());
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/src/libgpaste/core/gpaste-clipboard.c 
new/gpaste-3.20.3/src/libgpaste/core/gpaste-clipboard.c
--- old/gpaste-3.20/src/libgpaste/core/gpaste-clipboard.c       2016-03-13 
22:36:47.000000000 +0100
+++ new/gpaste-3.20.3/src/libgpaste/core/gpaste-clipboard.c     2016-05-23 
10:41:17.000000000 +0200
@@ -23,6 +23,13 @@
     C_LAST_SIGNAL
 };
 
+typedef enum
+{
+    CLIP_STATE_IDLE,
+    CLIP_STATE_WAITING,
+    CLIP_STATE_BUSY
+} ClipState;
+
 typedef struct
 {
     GdkAtom         target;
@@ -32,6 +39,11 @@
     gchar          *image_checksum;
 
     guint64         c_signals[C_LAST_SIGNAL];
+
+    /* GtkClipboard has a bug where it overrides an internal GMainLoop
+     * if we call gtk_clipboard_store twice in less than 10s, resulting
+     * in a g_main_loop_quit (NULL) call making GPaste crash */
+    ClipState       state;
 } GPasteClipboardPrivate;
 
 G_PASTE_DEFINE_TYPE_WITH_PRIVATE (Clipboard, clipboard, G_TYPE_OBJECT)
@@ -172,6 +184,8 @@
     g_free (priv->text);
     g_free (priv->image_checksum);
 
+    g_debug("%s: set text", gdk_atom_name (priv->target));
+
     priv->text = g_strdup (text);
     priv->image_checksum = NULL;
 }
@@ -257,6 +271,47 @@
                                 data);
 }
 
+static void g_paste_clipboard_private_store (GPasteClipboardPrivate *priv);
+
+static gboolean
+g_paste_clipboard_private_store_timeout (gpointer user_data)
+{
+    GPasteClipboardPrivate *priv = user_data;
+    gboolean waiting = (priv->state == CLIP_STATE_WAITING);
+
+    /* Reset us as IDLE */
+    priv->state = CLIP_STATE_IDLE;
+
+    /* If we were waiting, perform the store now */
+    if (waiting)
+        g_paste_clipboard_private_store (priv);
+
+    return G_SOURCE_REMOVE;
+}
+
+static void
+g_paste_clipboard_private_store (GPasteClipboardPrivate *priv)
+{
+    g_debug("%s: store", gdk_atom_name (priv->target));
+
+    switch (priv->state)
+    {
+    case CLIP_STATE_IDLE:
+        /* We're idle, store right now and mark us BUSY for 10 secs */
+        gtk_clipboard_store (priv->real);
+        priv->state = CLIP_STATE_BUSY;
+        g_timeout_add_seconds (10, g_paste_clipboard_private_store_timeout, 
priv);
+        break;
+    case CLIP_STATE_BUSY:
+        /* We're busy, wait until we're finished to store once more */
+        priv->state = CLIP_STATE_WAITING;
+        break;
+    case CLIP_STATE_WAITING:
+        /* We're already waiting, nothing to do */
+        break;
+    }
+}
+
 /**
  * g_paste_clipboard_select_text:
  * @self: a #GPasteClipboard instance
@@ -273,14 +328,13 @@
     g_return_if_fail (g_utf8_validate (text, -1, NULL));
 
     GPasteClipboardPrivate *priv = g_paste_clipboard_get_instance_private 
(self);
-    GtkClipboard *real = priv->real;
 
-    /* Avoid cycling twice */
-    g_paste_clipboard_private_set_text (priv, text);
+    g_debug("%s: select text", gdk_atom_name (priv->target));
 
-    /* Let the clipboards manager handle our internal text */
-    gtk_clipboard_set_text (real, text, -1);
-    gtk_clipboard_store (real);
+    /* Avoid cycling twice as gtk_clipboard_set_text will make the clipboards 
manager react */
+    g_paste_clipboard_private_set_text (priv, text);
+    gtk_clipboard_set_text (priv->real, text, -1);
+    g_paste_clipboard_private_store (priv);
 }
 
 static void
@@ -345,6 +399,8 @@
     GtkClipboard *real = priv->real;
     g_autoptr (GtkTargetList) target_list = gtk_target_list_new (NULL, 0);
 
+    g_debug("%s: select uris", gdk_atom_name (priv->target));
+
     g_paste_clipboard_private_set_text (priv, g_paste_item_get_real_value 
(_G_PASTE_ITEM (item)));
 
     gtk_target_list_add_text_targets (target_list, 0);
@@ -359,7 +415,7 @@
                                   g_paste_clipboard_get_clipboard_data,
                                   g_paste_clipboard_clear_clipboard_data,
                                   g_object_ref (item));
-    gtk_clipboard_store (real);
+    g_paste_clipboard_private_store (priv);
 
     gtk_target_table_free (targets, n_targets);
 }
@@ -377,6 +433,8 @@
 
     GPasteClipboardPrivate *priv = g_paste_clipboard_get_instance_private 
(self);
 
+    g_debug("%s: clear", gdk_atom_name (priv->target));
+
     g_clear_pointer (&priv->text, g_free);
     g_clear_pointer (&priv->image_checksum, g_free);
 
@@ -421,6 +479,8 @@
 
     GtkClipboard *real = priv->real;
 
+    g_debug("%s: select image", gdk_atom_name (priv->target));
+
     g_paste_clipboard_private_set_image_checksum (priv, checksum);
     gtk_clipboard_set_image (real, image);
 }
@@ -510,6 +570,8 @@
 
     GPasteClipboardPrivate *priv = g_paste_clipboard_get_instance_private 
(self);
 
+    g_debug("%s: select item", gdk_atom_name (priv->target));
+
     if (_G_PASTE_IS_IMAGE_ITEM (item))
     {
         const GPasteImageItem *image_item = _G_PASTE_IMAGE_ITEM (item);
@@ -564,6 +626,9 @@
                                 gpointer             user_data)
 {
     GPasteClipboard *self = user_data;
+    GPasteClipboardPrivate *priv = g_paste_clipboard_get_instance_private 
(self);
+
+    g_debug("%s: owner change", gdk_atom_name (priv->target));
 
     g_signal_emit (self,
                   signals[OWNER_CHANGE],
@@ -670,8 +735,11 @@
 }
 
 static void
-g_paste_clipboard_init (GPasteClipboard *self G_GNUC_UNUSED)
+g_paste_clipboard_init (GPasteClipboard *self)
 {
+    GPasteClipboardPrivate *priv = g_paste_clipboard_get_instance_private 
(self);
+
+    priv->state = CLIP_STATE_IDLE;
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gpaste-3.20/src/libgpaste/core/gpaste-clipboards-manager.c 
new/gpaste-3.20.3/src/libgpaste/core/gpaste-clipboards-manager.c
--- old/gpaste-3.20/src/libgpaste/core/gpaste-clipboards-manager.c      
2016-03-13 22:36:47.000000000 +0100
+++ new/gpaste-3.20.3/src/libgpaste/core/gpaste-clipboards-manager.c    
2016-05-23 10:41:17.000000000 +0200
@@ -94,6 +94,8 @@
     const GPasteClipboardsManagerPrivate *priv = 
_g_paste_clipboards_manager_get_instance_private (self);
     GtkClipboard *_from = NULL, *_to = NULL;
 
+    g_debug ("clipboards-manager: sync from %s to %s", gdk_atom_name (from), 
gdk_atom_name (to));
+
     for (GSList *clipboard = priv->clipboards; clipboard; clipboard = 
g_slist_next (clipboard))
     {
         _Clipboard *_clip = clipboard->data;
@@ -123,6 +125,8 @@
 {
     GPasteHistory *history = priv->history;
 
+    g_debug ("clipboards-manager: notify finish");
+
     if (item)
         g_paste_history_add (history, item);
 
@@ -164,6 +168,8 @@
     GPasteItem *item = NULL;
     const gchar *synchronized_text = NULL;
 
+    g_debug ("clipboards-manager: text ready");
+
     /* Did we already have some contents, or did we get some now? */
     gboolean something_in_clipboard = !!g_paste_clipboard_get_text (clipboard);
 
@@ -194,6 +200,8 @@
     GPasteClipboardsManagerPrivate *priv = data->priv;
     GPasteItem *item = NULL;
 
+    g_debug ("clipboards-manager: image ready");
+
     /* Did we already have some contents, or did we get some now? */
     gboolean something_in_clipboard = !!g_paste_clipboard_get_image_checksum 
(clipboard);
 
@@ -211,6 +219,8 @@
 {
     g_autofree GPasteClipboardsManagerCallbackData *data = user_data;
 
+    g_debug ("clipboards-manager: targets ready");
+
     if (gtk_selection_data_get_length (targets) >= 0)
     {
         data->uris_available = gtk_selection_data_targets_include_uri 
(targets);
@@ -234,6 +244,8 @@
     }
     else
     {
+        g_debug ("clipboards-manager: no target ready");
+
         g_paste_clipboard_clear (data->clip);
         g_paste_clipboard_ensure_not_empty (data->clip, data->priv->history);
     }
@@ -246,6 +258,8 @@
 {
     GPasteClipboardsManagerPrivate *priv = user_data;
 
+    g_debug ("clipboards-manager: notify");
+
     GPasteSettings *settings = priv->settings;
     GdkAtom atom = g_paste_clipboard_get_target (clipboard);
     gboolean track = ((atom != GDK_SELECTION_PRIMARY || 
g_paste_settings_get_primary_to_history (settings)) &&
@@ -303,6 +317,8 @@
 
     const GPasteClipboardsManagerPrivate *priv = 
_g_paste_clipboards_manager_get_instance_private (self);
 
+    g_debug ("clipboards-manager: select");
+
     for (GSList *clipboard = priv->clipboards; clipboard; clipboard = 
g_slist_next (clipboard))
     {
         _Clipboard *clip = clipboard->data;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/src/libgpaste/core/gpaste-history.c 
new/gpaste-3.20.3/src/libgpaste/core/gpaste-history.c
--- old/gpaste-3.20/src/libgpaste/core/gpaste-history.c 2016-03-13 
22:36:47.000000000 +0100
+++ new/gpaste-3.20.3/src/libgpaste/core/gpaste-history.c       2016-05-23 
10:41:17.000000000 +0200
@@ -54,6 +54,8 @@
 static void
 g_paste_history_private_elect_new_biggest (GPasteHistoryPrivate *priv)
 {
+    g_debug ("history: elect biggest");
+
     priv->biggest_index = 0;
     priv->biggest_size = 0;
 
@@ -107,6 +109,8 @@
 g_paste_history_selected (GPasteHistory *self,
                           GPasteItem    *item)
 {
+    g_debug ("history: selected");
+
     g_signal_emit (self,
                    signals[SELECTED],
                    0, /* detail */
@@ -118,6 +122,8 @@
 g_paste_history_emit_switch (GPasteHistory *self,
                              const gchar   *name)
 {
+    g_debug ("history: switch");
+
     g_signal_emit (self,
                    signals[SWITCH],
                    0, /* detail */
@@ -133,6 +139,8 @@
 {
     g_paste_history_save (self, NULL);
 
+    g_debug ("history: update");
+
     g_signal_emit (self,
                    signals[UPDATE],
                    0, /* detail */
@@ -239,6 +247,8 @@
     gboolean election_needed = FALSE;
     GPasteUpdateTarget target = G_PASTE_UPDATE_TARGET_ALL;
 
+    g_debug ("history: add");
+
     if (history)
     {
         GPasteItem *old_first = history->data;
@@ -313,6 +323,8 @@
     GPasteHistoryPrivate *priv = g_paste_history_get_instance_private (self);
     GList *history = priv->history;
 
+    g_debug ("history: remove '%" G_GUINT64_FORMAT "'", pos);
+
     g_return_if_fail (pos < g_list_length (history));
 
     GList *item = g_list_nth (history, pos);
@@ -441,6 +453,8 @@
     const GPasteHistoryPrivate *priv = _g_paste_history_get_instance_private 
(self);
     GList *history = priv->history;
 
+    g_debug ("history: select '%" G_GUINT64_FORMAT "'", index);
+
     g_return_if_fail (index < g_list_length (history));
 
     GPasteItem *item = g_list_nth_data (history, index);
@@ -1154,6 +1168,8 @@
 {
     const GPasteHistoryPrivate *priv = _g_paste_history_get_instance_private 
(self);
 
+    g_debug ("history: name cahnged to '%s'", priv->name);
+
     g_paste_history_load (self, NULL);
     g_paste_history_emit_switch (self, priv->name);
     g_paste_history_update (self, G_PASTE_UPDATE_ACTION_REPLACE, 
G_PASTE_UPDATE_TARGET_ALL, 0);
@@ -1167,6 +1183,7 @@
     GPasteHistory *self = user_data;
     GPasteHistoryPrivate *priv = g_paste_history_get_instance_private (self);
 
+    /* FIXME: track text item size settings */
     if (g_paste_str_equal(key, G_PASTE_MAX_HISTORY_SIZE_SETTING))
         g_paste_history_private_check_size (priv);
     else if (g_paste_str_equal (key, G_PASTE_MAX_MEMORY_USAGE_SETTING))
@@ -1350,6 +1367,8 @@
     g_return_val_if_fail (_G_PASTE_IS_HISTORY (self), NULL);
     g_return_val_if_fail (pattern && g_utf8_validate (pattern, -1, NULL), 
NULL);
 
+    g_debug ("history: search '%s'", pattern);
+
     const GPasteHistoryPrivate *priv = _g_paste_history_get_instance_private 
(self);
     g_autoptr (GError) error = NULL;
     g_autoptr (GRegex) regex = g_regex_new (pattern,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/src/libgpaste/core/gpaste-item.c 
new/gpaste-3.20.3/src/libgpaste/core/gpaste-item.c
--- old/gpaste-3.20/src/libgpaste/core/gpaste-item.c    2016-03-13 
22:36:47.000000000 +0100
+++ new/gpaste-3.20.3/src/libgpaste/core/gpaste-item.c  2016-05-23 
10:41:17.000000000 +0200
@@ -231,6 +231,8 @@
 {
     g_return_if_fail (_G_PASTE_IS_ITEM (self));
 
+    g_debug ("item: set state: %d", state);
+
     G_PASTE_ITEM_GET_CLASS (self)->set_state (self, state);
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/src/libgpaste/daemon/gpaste-daemon.c 
new/gpaste-3.20.3/src/libgpaste/daemon/gpaste-daemon.c
--- old/gpaste-3.20/src/libgpaste/daemon/gpaste-daemon.c        2016-03-13 
22:36:47.000000000 +0100
+++ new/gpaste-3.20.3/src/libgpaste/daemon/gpaste-daemon.c      2016-05-23 
10:41:17.000000000 +0200
@@ -659,10 +659,14 @@
 
 static GVariant *
 g_paste_daemon_private_search (const GPasteDaemonPrivate *priv,
-                               GVariant                  *parameters)
+                               GVariant                  *parameters,
+                               GPasteDBusError          **err)
 {
     g_autofree gchar *name = g_paste_daemon_get_dbus_string_parameter 
(parameters, NULL);
     g_autoptr (GArray) results = g_paste_history_search (priv->history, name);
+
+    G_PASTE_DBUS_ASSERT_FULL (results, "Error while performing search", NULL);
+
     GVariant *variant = g_variant_new_fixed_array (G_VARIANT_TYPE_UINT64, 
results->data, results->len, sizeof (guint64));
 
     return g_variant_new_tuple (&variant, 1);
@@ -883,7 +887,7 @@
     else if (g_paste_str_equal (method_name, G_PASTE_DAEMON_REPLACE))
         g_paste_daemon_private_replace (priv, parameters, &err);
     else if (g_paste_str_equal (method_name, G_PASTE_DAEMON_SEARCH))
-        answer = g_paste_daemon_private_search (priv, parameters);
+        answer = g_paste_daemon_private_search (priv, parameters, &err);
     else if (g_paste_str_equal (method_name, G_PASTE_DAEMON_SELECT))
         g_paste_daemon_private_select (priv, parameters);
     else if (g_paste_str_equal (method_name, G_PASTE_DAEMON_SET_PASSWORD))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gpaste-3.20/src/libgpaste/ui/gpaste-ui-shortcuts-window.c 
new/gpaste-3.20.3/src/libgpaste/ui/gpaste-ui-shortcuts-window.c
--- old/gpaste-3.20/src/libgpaste/ui/gpaste-ui-shortcuts-window.c       
2016-03-13 22:36:48.000000000 +0100
+++ new/gpaste-3.20.3/src/libgpaste/ui/gpaste-ui-shortcuts-window.c     
2016-05-23 10:41:17.000000000 +0200
@@ -11,12 +11,7 @@
     GtkShortcutsWindow parent_instance;
 };
 
-typedef struct
-{
-    gboolean         initialized;
-} GPasteUiShortcutsWindowPrivate;
-
-G_PASTE_DEFINE_TYPE_WITH_PRIVATE (UiShortcutsWindow, ui_shortcuts_window, 
GTK_TYPE_SHORTCUTS_WINDOW)
+G_PASTE_DEFINE_TYPE (UiShortcutsWindow, ui_shortcuts_window, 
GTK_TYPE_SHORTCUTS_WINDOW)
 
 static void
 g_paste_ui_shortcuts_window_class_init (GPasteUiShortcutsWindowClass *klass 
G_GNUC_UNUSED)
@@ -60,7 +55,6 @@
                                       "modal",           TRUE,
                                       "resizable",       FALSE,
                                       NULL);
-    //GPasteUiShortcutsWindowPrivate *priv = 
g_paste_ui_shortcuts_window_get_instance_private (self);
     GtkWidget *section = gtk_widget_new (GTK_TYPE_SHORTCUTS_SECTION,
                                          "section-name", "shortcuts",
                                          "visible",      TRUE,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpaste-3.20/src/libgpaste/ui/gpaste-ui-window.c 
new/gpaste-3.20.3/src/libgpaste/ui/gpaste-ui-window.c
--- old/gpaste-3.20/src/libgpaste/ui/gpaste-ui-window.c 2016-03-13 
22:36:48.000000000 +0100
+++ new/gpaste-3.20.3/src/libgpaste/ui/gpaste-ui-window.c       2016-06-14 
08:52:03.000000000 +0200
@@ -263,6 +263,7 @@
                                       "type",            GTK_WINDOW_TOPLEVEL,
                                       "window-position", 
GTK_WIN_POS_CENTER_ALWAYS,
                                       "resizable",       FALSE,
+                                      "icon-name",       "edit-paste",
                                       NULL);
 
     g_paste_client_new (on_client_ready, self);


Reply via email to