Hello community,

here is the log from the commit of package cinnamon for openSUSE:Factory 
checked in at 2017-12-29 18:50:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cinnamon (Old)
 and      /work/SRC/openSUSE:Factory/.cinnamon.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cinnamon"

Fri Dec 29 18:50:23 2017 rev:25 rq:559726 version:3.6.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/cinnamon/cinnamon.changes        2017-11-27 
22:16:38.042504834 +0100
+++ /work/SRC/openSUSE:Factory/.cinnamon.new/cinnamon.changes   2017-12-29 
18:50:33.466958659 +0100
@@ -1,0 +2,13 @@
+Sun Dec 24 10:19:44 UTC 2017 - sor.ale...@meowr.ru
+
+- Update to version 3.6.7:
+  * Online Accounts: Use translations.
+  * cinnamonDBus.js: Have GetMonitors throw an error back to GDBus
+    if something goes wrong.
+  * menu-applet: Rework vectorBox.
+  * Fix power applet spamming the log file with error messages on
+    laptops (gh#linuxmint/Cinnamon#7114).
+  * Spices description: Do not cut off the letter "n".
+  * Xlets: Fix shown info for overwritten xlets.
+
+-------------------------------------------------------------------

Old:
----
  Cinnamon-3.6.6.tar.gz

New:
----
  Cinnamon-3.6.7.tar.gz

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

Other differences:
------------------
++++++ cinnamon.spec ++++++
--- /var/tmp/diff_new_pack.dWobPT/_old  2017-12-29 18:50:34.382695654 +0100
+++ /var/tmp/diff_new_pack.dWobPT/_new  2017-12-29 18:50:34.386694505 +0100
@@ -21,7 +21,7 @@
 %define _name   Cinnamon
 %define _version 3.6.0
 Name:           cinnamon
-Version:        3.6.6
+Version:        3.6.7
 Release:        0
 Summary:        GNU/Linux Desktop featuring a traditional layout
 License:        GPL-2.0+ AND LGPL-2.1

++++++ Cinnamon-3.6.6.tar.gz -> Cinnamon-3.6.7.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Cinnamon-3.6.6/configure.ac 
new/Cinnamon-3.6.7/configure.ac
--- old/Cinnamon-3.6.6/configure.ac     2017-11-23 10:56:12.000000000 +0100
+++ new/Cinnamon-3.6.7/configure.ac     2017-12-18 13:53:18.000000000 +0100
@@ -1,5 +1,5 @@
 AC_PREREQ(2.63)
-AC_INIT([cinnamon],[3.6.6],[https://github.com/linuxmint/Cinnamon/issues],[cinnamon])
+AC_INIT([cinnamon],[3.6.7],[https://github.com/linuxmint/Cinnamon/issues],[cinnamon])
 
 AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_SRCDIR([src/cinnamon-global.c])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Cinnamon-3.6.6/debian/changelog 
new/Cinnamon-3.6.7/debian/changelog
--- old/Cinnamon-3.6.6/debian/changelog 2017-11-23 10:56:12.000000000 +0100
+++ new/Cinnamon-3.6.7/debian/changelog 2017-12-18 13:53:18.000000000 +0100
@@ -1,3 +1,23 @@
+cinnamon (3.6.7) sylvia; urgency=medium
+
+  [ NikoKrause ]
+  * Online Accounts: Use translations (#7088)
+
+  [ Michael Webster ]
+  * cinnamonDBus.js: Have GetMonitors throw an error back to GDBus if 
something goes wrong.
+
+  [ itzexor ]
+  * menu-applet: rework vectorBox
+
+  [ jrsrjrsr ]
+  * Fix Issue #7114
+
+  [ NikoKrause ]
+  * Spices description: Do not cut off the letter `n` (#7103)
+  * Xlets: Fix shown info for overwritten xlets. (#7090)
+
+ -- Clement Lefebvre <r...@linuxmint.com>  Mon, 18 Dec 2017 12:52:43 +0000
+
 cinnamon (3.6.6) sylvia; urgency=medium
 
   * Sound settings: Assign the selected device to the profile selector.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Cinnamon-3.6.6/files/usr/share/cinnamon/applets/m...@cinnamon.org/applet.js 
new/Cinnamon-3.6.7/files/usr/share/cinnamon/applets/m...@cinnamon.org/applet.js
--- 
old/Cinnamon-3.6.6/files/usr/share/cinnamon/applets/m...@cinnamon.org/applet.js 
    2017-11-23 10:56:12.000000000 +0100
+++ 
new/Cinnamon-3.6.7/files/usr/share/cinnamon/applets/m...@cinnamon.org/applet.js 
    2017-12-18 13:53:18.000000000 +0100
@@ -2098,33 +2098,59 @@
         }
     },
 
+    /*
+     * The vectorBox overlays the the categoriesBox to aid in navigation from 
categories to apps
+     * by preventing misselections. It is set to the same size as the 
categoriesOverlayBox and
+     * categoriesBox.
+     *
+     * The actor is a quadrilateral that we turn into a triangle by setting 
the A and B vertices to
+     * the same position. The size and origin of the vectorBox are calculated 
in _getVectorInfo().
+     * Using those properties, the bounding box is sized as (w, h) and the 
triangle is defined as
+     * follows:
+     *   _____
+     *  |    /|D
+     *  |   / |     AB: (mx, my)
+     *  | A/  |      C: (w, h)
+     *  | B\  |      D: (w, 0)
+     *  |   \ |
+     *  |____\|C
+     */
+
+    _getVectorInfo: function() {
+        let [mx, my, mask] = global.get_pointer();
+        let [bx, by] = this.categoriesOverlayBox.get_transformed_position();
+        let [bw, bh] = this.categoriesOverlayBox.get_transformed_size();
+
+        let xformed_mx = mx - bx;
+        let xformed_my = my - by;
+
+        if (xformed_mx < 0 || xformed_mx > bw || xformed_my < 0 || xformed_my 
> bh) {
+            return null;
+        }
+
+        return { mx: xformed_mx,
+                 my: xformed_my,
+                 w: bw,
+                 h: bh };
+    },
+
     makeVectorBox: function(actor) {
         this.destroyVectorBox(actor);
-        let [mx, my, mask] = global.get_pointer();
-        let [bx, by] = 
this.categoriesApplicationsBox.actor.get_transformed_position();
-        let [bw, bh] = 
this.categoriesApplicationsBox.actor.get_transformed_size();
-        let [appbox_x, appbox_y] = 
this.applicationsBox.get_transformed_position();
-
-        let right_x = appbox_x - bx;
-        let xformed_mouse_x = mx-bx;
-        let xformed_mouse_y = my-by;
-        let w = Math.max(right_x-xformed_mouse_x, 0);
-
-        let ulc_y = xformed_mouse_y + 0;
-        let llc_y = xformed_mouse_y + 0;
-
-        this.vectorBox = new St.Polygon({ debug: false, width: w, height: bh,
-                                          ulc_x: 0, ulc_y: ulc_y,
-                                          llc_x: 0, llc_y: llc_y,
-                                          urc_x: w, urc_y: 0,
-                                          lrc_x: w, lrc_y: bh });
+        let vi = this._getVectorInfo();
+        if (!vi) {
+            return;
+        }
+
+        this.vectorBox = new St.Polygon({ debug: false, width: vi.w, height: 
vi.h,
+                                          ulc_x: vi.mx, ulc_y: vi.my,
+                                          llc_x: vi.mx, llc_y: vi.my,
+                                          urc_x: vi.w, urc_y: 0,
+                                          lrc_x: vi.w, lrc_y: vi.h });
 
         this.categoriesOverlayBox.add_actor(this.vectorBox);
-        this.vectorBox.set_position(xformed_mouse_x, 0);
 
         this.vectorBox.show();
         this.vectorBox.set_reactive(true);
-        this.vectorBox.raise_top();
 
         this.vectorBox.connect("leave-event", Lang.bind(this, 
this.destroyVectorBox));
         this.vectorBox.connect("motion-event", Lang.bind(this, 
this.maybeUpdateVectorBox));
@@ -2142,16 +2168,10 @@
 
     updateVectorBox: function(actor) {
         if (this.vectorBox) {
-            let [mx, my, mask] = global.get_pointer();
-            let [bx, by] = 
this.categoriesApplicationsBox.actor.get_transformed_position();
-            let xformed_mouse_x = mx-bx;
-            let [appbox_x, appbox_y] = 
this.applicationsBox.get_transformed_position();
-            let right_x = appbox_x - bx;
-            if ((right_x-xformed_mouse_x) > 0) {
-                this.vectorBox.width = Math.max(right_x-xformed_mouse_x, 0);
-                this.vectorBox.set_position(xformed_mouse_x, 0);
-                this.vectorBox.urc_x = this.vectorBox.width;
-                this.vectorBox.lrc_x = this.vectorBox.width;
+            let vi = this._getVectorInfo();
+            if (vi) {
+                this.vectorBox.ulc_x = vi.mx;
+                this.vectorBox.llc_x = vi.mx;
                 this.vectorBox.queue_repaint();
             } else {
                 this.destroyVectorBox(actor);
@@ -2854,13 +2874,15 @@
         this.searchEntryText.connect('key-press-event', Lang.bind(this, 
this._onMenuKeyPress));
         this._previousSearchPattern = "";
 
-        this.categoriesOverlayBox = new Clutter.Actor();
         this.categoriesApplicationsBox = new CategoriesApplicationsBox();
-        
this.categoriesOverlayBox.add_actor(this.categoriesApplicationsBox.actor);
-        rightPane.add_actor(this.categoriesOverlayBox);
+        rightPane.add_actor(this.categoriesApplicationsBox.actor);
+
+        this.categoriesOverlayBox = new Clutter.Actor();
         this.categoriesBox = new St.BoxLayout({ style_class: 
'menu-categories-box',
                                                 vertical: true,
                                                 accessible_role: Atk.Role.LIST 
});
+        this.categoriesOverlayBox.add_actor(this.categoriesBox);
+
         this.applicationsScrollBox = new St.ScrollView({ x_fill: true, y_fill: 
false, y_align: St.Align.START, style_class: 'vfade 
menu-applications-scrollbox' });
 
         this.a11y_settings = new Gio.Settings({ schema_id: 
"org.cinnamon.desktop.a11y.applications" });
@@ -2887,7 +2909,7 @@
         this.applicationsBox.add_style_class_name('menu-applications-box'); 
//this is to support old themes
         this.applicationsScrollBox.add_actor(this.applicationsBox);
         this.applicationsScrollBox.set_policy(Gtk.PolicyType.NEVER, 
Gtk.PolicyType.AUTOMATIC);
-        this.categoriesApplicationsBox.actor.add_actor(this.categoriesBox);
+        
this.categoriesApplicationsBox.actor.add_actor(this.categoriesOverlayBox);
         
this.categoriesApplicationsBox.actor.add_actor(this.applicationsScrollBox);
 
         let fav_obj = new FavoritesBox();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Cinnamon-3.6.6/files/usr/share/cinnamon/applets/po...@cinnamon.org/applet.js
 
new/Cinnamon-3.6.7/files/usr/share/cinnamon/applets/po...@cinnamon.org/applet.js
--- 
old/Cinnamon-3.6.6/files/usr/share/cinnamon/applets/po...@cinnamon.org/applet.js
    2017-11-23 10:56:12.000000000 +0100
+++ 
new/Cinnamon-3.6.7/files/usr/share/cinnamon/applets/po...@cinnamon.org/applet.js
    2017-12-18 13:53:18.000000000 +0100
@@ -125,8 +125,8 @@
             }
             catch(e) {
                 // ignore malformed aliases
+                global.logError(alias);
             }
-            global.logError(alias);
         }
 
         this.label = new St.Label({ text: "%s %d%%".format(description, 
Math.round(percentage)) });
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Cinnamon-3.6.6/files/usr/share/cinnamon/cinnamon-settings/bin/ExtensionCore.py
 
new/Cinnamon-3.6.7/files/usr/share/cinnamon/cinnamon-settings/bin/ExtensionCore.py
--- 
old/Cinnamon-3.6.6/files/usr/share/cinnamon/cinnamon-settings/bin/ExtensionCore.py
  2017-11-23 10:56:12.000000000 +0100
+++ 
new/Cinnamon-3.6.7/files/usr/share/cinnamon/cinnamon-settings/bin/ExtensionCore.py
  2017-12-18 13:53:18.000000000 +0100
@@ -128,7 +128,7 @@
     parser = MyHTMLParser()
     parser.feed(string)
     text = parser.get_text()
-    return text.strip('\\n ').strip('\\n').replace('\\n', ' ').replace('  ', ' 
').replace('\\', '')
+    return text.strip('\n ').strip('\n').replace('\n', ' ').replace('  ', ' 
').replace('\\', '')
 
 
 class ManageSpicesRow(Gtk.ListBoxRow):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Cinnamon-3.6.6/files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py 
new/Cinnamon-3.6.7/files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py
--- old/Cinnamon-3.6.6/files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py 
2017-11-23 10:56:12.000000000 +0100
+++ new/Cinnamon-3.6.7/files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py 
2017-12-18 13:53:18.000000000 +0100
@@ -158,7 +158,7 @@
             if self.collection_type == 'extension':
                 self.spices_directories = (self.install_folder, )
             else:
-                self.spices_directories = (self.install_folder, 
'/usr/share/cinnamon/%ss/' % self.collection_type)
+                self.spices_directories = ('/usr/share/cinnamon/%ss/' % 
self.collection_type, self.install_folder)
 
         self._load_metadata()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Cinnamon-3.6.6/files/usr/share/cinnamon/cinnamon-settings/modules/cs_online_accounts.py
 
new/Cinnamon-3.6.7/files/usr/share/cinnamon/cinnamon-settings/modules/cs_online_accounts.py
--- 
old/Cinnamon-3.6.6/files/usr/share/cinnamon/cinnamon-settings/modules/cs_online_accounts.py
 2017-11-23 10:56:12.000000000 +0100
+++ 
new/Cinnamon-3.6.7/files/usr/share/cinnamon/cinnamon-settings/modules/cs_online_accounts.py
 2017-12-18 13:53:18.000000000 +0100
@@ -38,8 +38,9 @@
     def on_button_clicked(self, button):
         gladefile = 
"/usr/share/cinnamon/cinnamon-settings/cinnamon-online-accounts-info.ui"
         self.builder = Gtk.Builder()
+        self.builder.set_translation_domain('cinnamon')
         self.builder.add_from_file(gladefile)
         self.window = self.builder.get_object("main_window")
         self.window.set_title(_("Online Accounts"))
         self.window.set_icon_name("cs-online-accounts")
-        self.window.show()
\ No newline at end of file
+        self.window.show()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Cinnamon-3.6.6/js/ui/cinnamonDBus.js 
new/Cinnamon-3.6.7/js/ui/cinnamonDBus.js
--- old/Cinnamon-3.6.6/js/ui/cinnamonDBus.js    2017-11-23 10:56:12.000000000 
+0100
+++ new/Cinnamon-3.6.7/js/ui/cinnamonDBus.js    2017-12-18 13:53:18.000000000 
+0100
@@ -410,7 +410,25 @@
     },
 
     GetMonitors: function() {
-        return Main.layoutManager.monitors.map(mon => mon.index);
+        let monitors = [];
+
+        try {
+            for (let i = 0; i < Main.layoutManager.monitors.length; i++) {
+                let current = Main.layoutManager.monitors[i];
+
+                monitors.push(current.index);
+            }
+        } catch (e) {
+            log(e.message);
+            /* Something broke, trigger a GDBus.Error back to the caller 
instead of returning bad things */
+            monitors = [];
+        }
+
+        if (monitors.length == 0) {
+            throw new Error("GetMonitors: no valid monitors");
+        }
+
+        return monitors;
     },
 
     GetMonitorWorkRect: function(index) {


Reply via email to