Control: tags 754908 + patch pending
Control: tags 755101 + patch pending

I have uploaded to DELAYED/10 a NMU of workrave versioned 1.10.1-4.1.
The debdiff is attached. Don't hesitate to tell me if you want me to
delay/cancel the NMU.

Cheers,

-- 
 .''`.    Sébastien Villemot
: :' :    Debian Developer
`. `'     http://www.dynare.org/sebastien
  `-      GPG Key: 4096R/381A7594

diff -Nru workrave-1.10.1/debian/changelog workrave-1.10.1/debian/changelog
--- workrave-1.10.1/debian/changelog	2014-02-01 05:26:55.000000000 +0100
+++ workrave-1.10.1/debian/changelog	2014-07-17 20:57:48.000000000 +0200
@@ -1,3 +1,12 @@
+workrave (1.10.1-4.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * gnome_3.12.patch: makes the GNOME Shell extension compatible with GNOME 3.12
+    (Closes: #754908)
+  * Update debian/watch: now fetches versions from Github. (Closes: #755101)
+
+ -- Sébastien Villemot <sebast...@debian.org>  Thu, 17 Jul 2014 20:40:55 +0200
+
 workrave (1.10.1-4) unstable; urgency=medium
 
   * Revert the Ubuntu changes from 1.10.1-3 (closes: #737034)
diff -Nru workrave-1.10.1/debian/patches/gnome_3.12.patch workrave-1.10.1/debian/patches/gnome_3.12.patch
--- workrave-1.10.1/debian/patches/gnome_3.12.patch	1970-01-01 01:00:00.000000000 +0100
+++ workrave-1.10.1/debian/patches/gnome_3.12.patch	2014-07-17 20:57:25.000000000 +0200
@@ -0,0 +1,263 @@
+Description: Make the GNOME Shell extension compatible with GNOME 3.12
+Origin: upstream,
+        https://github.com/rcaelers/workrave/commit/4dc0d1c85e253cf7faa156633cc2deee6a1a92a6
+        https://github.com/rcaelers/workrave/commit/f91fd70b18769b2123b2bf445e9d69765a8842d8
+        https://github.com/rcaelers/workrave/commit/f3f450bc518413f386fdbdf866b40e57508ac909
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=754908
+Applied-Upstream: 1.10.4
+Last-Update: 2014-07-17
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/frontend/applets/gnome-shell/src/extension.js
++++ b/frontend/applets/gnome-shell/src/extension.js
+@@ -21,26 +21,34 @@ const _ = Gettext.gettext;
+ let start = GLib.get_monotonic_time();
+ global.log('workrave-applet: start @ ' + start);
+ 
+-const IndicatorIface = <interface name="org.workrave.AppletInterface">
+-<method name="Embed">
+-    <arg type="b" name="enabled" direction="in" />
+-    <arg type="s" name="sender" direction="in" />
+-</method>
+-<method name="Command">
+-    <arg type="i" name="command" direction="in" />
+-</method>
+-<method name="GetMenu">
+-    <arg type="a(sii)" name="menuitems" direction="out" />
+-</method>
+-<signal name="TimersUpdated">
+-    <arg type="(siuuuuuu)" />
+-    <arg type="(siuuuuuu)" />
+-    <arg type="(siuuuuuu)" />
+-</signal>
+-<signal name="MenuUpdated">
+-    <arg type="a(sii)" />
+-</signal>
+-</interface>
++const IndicatorIface = '<node>\
++    <interface name="org.workrave.AppletInterface"> \
++    <method name="Embed"> \
++        <arg type="b" name="enabled" direction="in" /> \
++        <arg type="s" name="sender" direction="in" /> \
++    </method> \
++    <method name="Command"> \
++        <arg type="i" name="command" direction="in" /> \
++    </method> \
++    <method name="GetMenu"> \
++        <arg type="a(sii)" name="menuitems" direction="out" /> \
++    </method> \
++    <method name="GetTrayIconEnabled"> \
++        <arg type="b" name="enabled" direction="out" /> \
++    </method> \
++    <signal name="TimersUpdated"> \
++        <arg type="(siuuuuuu)" /> \
++        <arg type="(siuuuuuu)" /> \
++        <arg type="(siuuuuuu)" /> \
++    </signal> \
++    <signal name="MenuUpdated"> \
++        <arg type="a(sii)" /> \
++    </signal> \
++    <signal name="TrayIconUpdated"> \
++        <arg type="b" /> \
++    </signal> \
++    </interface> \
++</node>';
+ 
+ let IndicatorProxy = Gio.DBusProxy.makeProxyWrapper(IndicatorIface);
+ 
+@@ -55,6 +63,7 @@ _workraveButton.prototype = {
+         PanelMenu.Button.prototype._init.call(this, 0.0);
+   
+         this._timerbox = new Workrave.Timerbox();
++        this._force_icon = false;
+ 	this._height = 24;
+ 	this._bus_name = 'org.workrave.GnomeShellApplet';
+ 	this._bus_id = 0;
+@@ -71,6 +80,7 @@ _workraveButton.prototype = {
+ 	this._proxy = new IndicatorProxy(Gio.DBus.session, 'org.workrave.Workrave', '/org/workrave/Workrave/UI');
+ 	this._timers_updated_id = this._proxy.connectSignal("TimersUpdated", Lang.bind(this, this._onTimersUpdated));
+ 	this._menu_updated_id = this._proxy.connectSignal("MenuUpdated", Lang.bind(this, this._onMenuUpdated));
++	this._trayicon_updated_id = this._proxy.connectSignal("TrayIconUpdated", Lang.bind(this, this._onTrayIconUpdated));
+ 
+ 	this._updateMenu(null);
+ 
+@@ -82,16 +92,15 @@ _workraveButton.prototype = {
+  
+     _onDestroy: function() 
+     {
+-	global.log('workrave-applet: onDestroy');
+     	this._proxy.EmbedRemote(false, 'GnomeShellApplet');
+ 	this._stop();
+ 	this._destroy();
+     },
+ 
+     _destroy: function() {
+-	global.log('workrave-applet: _destroy');
+ 	this._proxy.disconnectSignal(this._timers_updated_id);
+ 	this._proxy.disconnectSignal(this._menu_updated_id);
++	this._proxy.disconnectSignal(this._trayicon_updated_id);
+ 	this._proxy = null;
+ 
+         this.actor.destroy();
+@@ -99,11 +108,11 @@ _workraveButton.prototype = {
+ 
+     _start: function()
+     {
+-	global.log('workrave-applet: starting');
+ 	if (! this._alive)
+ 	{
+ 	    this._bus_id = Gio.DBus.session.own_name(this._bus_name, Gio.BusNameOwnerFlags.NONE, null, null);
+ 	    this._proxy.GetMenuRemote(Lang.bind(this, this._onGetMenuReply));
++	    this._proxy.GetTrayIconEnabledRemote(Lang.bind(this, this._onGetTrayIconEnabledReply));
+     	    this._proxy.EmbedRemote(true, this._bus_name);
+ 	    this._timeoutId = Mainloop.timeout_add(5000, Lang.bind(this, this._onTimer));
+ 	    this._alive = true;
+@@ -115,11 +124,11 @@ _workraveButton.prototype = {
+     {
+ 	 if (this._alive)
+ 	 {
+-	     global.log('workrave-applet: stopping');
+ 	     Mainloop.source_remove(this._timeoutId);
+ 	     Gio.DBus.session.unown_name(this._bus_id);
+ 	     this._bus_id = 0;
+ 	     this._timerbox.set_enabled(false);
++             this._timerbox.set_force_icon(false);
+ 	     this._area.queue_repaint();
+ 	     this._alive = false;
+ 	     this._updateMenu(null);
+@@ -143,6 +152,7 @@ _workraveButton.prototype = {
+ 	if (this._update_count == 0)
+ 	{
+ 	    this._timerbox.set_enabled(false);
++            //this._timerbox.set_force_icon(false);
+ 	    this._area.queue_repaint();
+ 	}
+ 	this._update_count = 0;
+@@ -151,12 +161,10 @@ _workraveButton.prototype = {
+     },
+ 
+     _onWorkraveAppeared: function(owner) {
+-	global.log('workrave-applet: appeared');
+ 	this._start();
+     },
+ 
+     _onWorkraveVanished: function(oldOwner) {
+-	global.log('workrave-applet: vanished');
+ 	this._stop();
+     },
+ 
+@@ -164,7 +172,6 @@ _workraveButton.prototype = {
+ 
+ 	if (! this._alive)
+ 	{
+-	    global.log('workrave-applet: now alive');
+ 	    this._start();
+ 	}
+ 
+@@ -178,6 +185,7 @@ _workraveButton.prototype = {
+ 	if (timebar != null)
+ 	{
+ 	    this._timerbox.set_enabled(true);
++            //this._timerbox.set_force_icon(this._force_icon);
+ 	    timebar.set_progress(microbreak[6], microbreak[7], microbreak[5]);
+ 	    timebar.set_secondary_progress(microbreak[3], microbreak[4], microbreak[2]);
+ 	    timebar.set_text(microbreak[0]);
+@@ -187,6 +195,7 @@ _workraveButton.prototype = {
+ 	if (timebar != null)
+ 	{
+ 	    this._timerbox.set_enabled(true);
++            //this._timerbox.set_force_icon(this._force_icon);
+ 	    timebar.set_progress(restbreak[6], restbreak[7], restbreak[5]);
+ 	    timebar.set_secondary_progress(restbreak[3], restbreak[4], restbreak[2]);
+ 	    timebar.set_text(restbreak[0]);
+@@ -196,6 +205,7 @@ _workraveButton.prototype = {
+ 	if (timebar != null)
+ 	{
+ 	    this._timerbox.set_enabled(true);
++            //this._timerbox.set_force_icon(this._force_icon);
+ 	    timebar.set_progress(daily[6], daily[7], daily[5]);
+ 	    timebar.set_secondary_progress(daily[3], daily[4], daily[2]);
+ 	    timebar.set_text(daily[0]);
+@@ -211,22 +221,38 @@ _workraveButton.prototype = {
+ 	this._updateMenu(menuitems);
+     },
+ 
++    _onGetTrayIconEnabledReply : function([enabled], excp) {
++	this._updateTrayIcon(enabled);
++    },
++
+     _onMenuUpdated : function(emitter, senderName, [menuitems]) {
+ 	this._updateMenu(menuitems);
+     },
+ 
++    _onTrayIconUpdated : function(emitter, senderName, [enabled]) {
++	this._updateTrayIcon(enabled);
++    },
++
+     _onCommandReply : function(menuitems) {
+     },
+     
+-    _onMenuCommand: function(item, event, command) {
++    _onMenuCommand : function(item, event, command) {
+ 	this._proxy.CommandRemote(command, Lang.bind(this, this._onCommandReply));
+     },
+ 
+     _onMenuOpenCommand: function(item, event) {
+-	global.log('workrave-applet: open');
+ 	this._proxy.GetMenuRemote(); // A dummy method call to re-activate the service
+     },
+ 
++    _functionExists: function(func) {
++        return (typeof(func) == typeof(Function));
++    },
++
++    _updateTrayIcon : function(enabled) {
++        this._force_icon = enabled;
++        this._timerbox.set_force_icon(this._force_icon);
++    },
++
+     _updateMenu : function(menuitems) {
+ 	this.menu.removeAll();
+ 
+@@ -276,7 +302,15 @@ _workraveButton.prototype = {
+ 		    else if ((flags & 8) != 0)
+ 		    {
+ 			popup = new PopupMenu.PopupMenuItem(text);
+-			popup.setShowDot(active);
++                        
++                        if (this._functionExists(popup.setShowDot))
++                        {
++			    popup.setShowDot(active);
++                        }
++                        else if (this._functionExists(popup.setOrnament))
++                        {
++                            popup.setOrnament(active ? PopupMenu.Ornament.DOT : PopupMenu.Ornament.NONE);
++                        }
+ 		    }
+ 		    else 
+ 		    {
+@@ -300,13 +334,11 @@ function init(extensionMeta) {
+ }
+ 
+ function disable() {
+-    global.log('workrave-applet: disable');
+     workravePanelButton.destroy();
+     workravePanelButton = null;
+ }
+ 
+ function enable() {
+-    global.log('workrave-applet: enable');
+     Gettext.bindtextdomain("workrave", workraveUserExtensionLocalePath);
+     Gettext.textdomain("workrave");
+  
+--- a/frontend/applets/gnome-shell/src/metadata.json.in
++++ b/frontend/applets/gnome-shell/src/metadata.json.in
+@@ -3,7 +3,7 @@
+  "uuid": "@uuid@",
+  "name": "Workrave",
+  "description": "Applet that shows all the Workrave timers.",
+- "shell-version": [ "3.1.90", "3.1.91", "3.1.92", "3.2", "3.3", "3.4", "3.5", "3.5.4", "3.6.0", "3.6", "3.8", "@shell_current@" ],
++ "shell-version": [ "3.2", "3.3", "3.4", "3.5", "3.5.4", "3.6.0", "3.6", "3.8", "3.10", "3.12", "@shell_current@" ],
+  "localedir": "@LOCALEDIR@",
+  "url": "@url@"
+ }
diff -Nru workrave-1.10.1/debian/patches/series workrave-1.10.1/debian/patches/series
--- workrave-1.10.1/debian/patches/series	2014-02-01 05:26:55.000000000 +0100
+++ workrave-1.10.1/debian/patches/series	2014-07-17 20:38:17.000000000 +0200
@@ -2,3 +2,4 @@
 git_fix_desktop_bugs.patch
 gnome_3.8.patch
 libtool_ppc64el.patch
+gnome_3.12.patch
diff -Nru workrave-1.10.1/debian/watch workrave-1.10.1/debian/watch
--- workrave-1.10.1/debian/watch	2014-02-01 05:26:55.000000000 +0100
+++ workrave-1.10.1/debian/watch	2014-07-17 20:50:42.000000000 +0200
@@ -1,3 +1,3 @@
 version=3
-opts=uversionmangle=s/([0-9.]+)(-[0-9]+)?/$1/ \
-    http://sf.net/workrave/workrave-([0-9.-]+).tar.gz
+opts=filenamemangle=s/.+\/v?(\d\S*)\.tar\.gz/workrave-$1\.tar\.gz/,uversionmangle=s/_/./g \
+  https://github.com/rcaelers/workrave/tags .*/v?(\d\S*)\.tar\.gz

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to