Hello community,

here is the log from the commit of package gnome-shell for openSUSE:Factory 
checked in at 2016-01-05 09:40:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gnome-shell (Old)
 and      /work/SRC/openSUSE:Factory/.gnome-shell.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gnome-shell"

Changes:
--------
--- /work/SRC/openSUSE:Factory/gnome-shell/gnome-shell.changes  2015-11-28 
15:18:55.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.gnome-shell.new/gnome-shell.changes     
2016-01-05 09:41:02.000000000 +0100
@@ -1,0 +2,15 @@
+Tue Dec 29 11:31:44 UTC 2015 - [email protected]
+
+- Replace pkgconfig(libcanberra-gtk) for
+  pkgconfig(libcanberra-gtk3) BuildRequires: It's what configure
+  looks for and needed now that libcanberra-devel was split.
+
+-------------------------------------------------------------------
+Sat Dec 12 14:25:50 UTC 2015 - [email protected]
+
+- Add gnome-shell-logindialog-fixes.patch: Fix misc login dialog
+  issues.
+- Add gnome-shell-alt-tab-hdpi-fixes.patch: Fix tiny preview in
+  alt-tab when using HiDPI screens.
+
+-------------------------------------------------------------------

New:
----
  gnome-shell-alt-tab-hdpi-fixes.patch
  gnome-shell-logindialog-fixes.patch

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

Other differences:
------------------
++++++ gnome-shell.spec ++++++
--- /var/tmp/diff_new_pack.38009d/_old  2016-01-05 09:41:03.000000000 +0100
+++ /var/tmp/diff_new_pack.38009d/_new  2016-01-05 09:41:03.000000000 +0100
@@ -26,6 +26,10 @@
 Source:         
http://download.gnome.org/sources/gnome-shell/3.18/%{name}-%{version}.tar.xz
 # PATCH-FIX-UPSTREAM gnome-shell-private-connection.patch bnc#751211 
bgo#646187 [email protected] -- create private connections if the user is 
not authorized
 Patch1:         gnome-shell-private-connection.patch
+# PATCH-FIX-UPSTREAM gnome-shell-logindialog-fixes.patch [email protected] 
-- 2 commits from upstream fixing misc logindialog issues.
+Patch2:         gnome-shell-logindialog-fixes.patch
+# PATCH-FIX-UPSTREAM gnome-shell-alt-tab-hdpi-fixes.patch [email protected] 
-- Fix tiny previews in alt-tab when using hidpi screens.
+Patch3:         gnome-shell-alt-tab-hdpi-fixes.patch
 BuildRequires:  docbook-xsl-stylesheets
 BuildRequires:  gcc-c++
 BuildRequires:  intltool
@@ -51,7 +55,7 @@
 BuildRequires:  pkgconfig(gtk+-3.0) >= 3.15.0
 BuildRequires:  pkgconfig(json-glib-1.0) >= 0.13.2
 BuildRequires:  pkgconfig(libcanberra)
-BuildRequires:  pkgconfig(libcanberra-gtk)
+BuildRequires:  pkgconfig(libcanberra-gtk3)
 BuildRequires:  pkgconfig(libcroco-0.6) >= 0.6.8
 BuildRequires:  pkgconfig(libedataserver-1.2) >= 3.5.3
 BuildRequires:  pkgconfig(libgnome-menu-3.0) >= 3.5.3
@@ -152,6 +156,8 @@
 %prep
 %setup -q
 %patch1 -p1
+%patch2 -p1
+%patch3 -p1
 translation-update-upstream
 
 %build

++++++ gnome-shell-alt-tab-hdpi-fixes.patch ++++++
>From 491e511a9699dad4fce75cf2468067b7ab0b8c64 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <[email protected]>
Date: Thu, 26 Nov 2015 00:04:11 +0100
Subject: altTab: Fix window-switcher on HiDPI displays

We need to take the scale factor into account to avoid tiny window
previews on HiDPI.

https://bugzilla.gnome.org/show_bug.cgi?id=758676
---
 js/ui/altTab.js | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/js/ui/altTab.js b/js/ui/altTab.js
index 8765f19..7029bf7 100644
--- a/js/ui/altTab.js
+++ b/js/ui/altTab.js
@@ -685,15 +685,17 @@ const WindowIcon = new Lang.Class({
 
         this._icon.destroy_all_children();
 
+        let scaleFactor = 
St.ThemeContext.get_for_stage(global.stage).scale_factor;
+
         switch (mode) {
             case AppIconMode.THUMBNAIL_ONLY:
                 size = WINDOW_PREVIEW_SIZE;
-                this._icon.add_actor(_createWindowClone(mutterWindow, 
WINDOW_PREVIEW_SIZE));
+                this._icon.add_actor(_createWindowClone(mutterWindow, size * 
scaleFactor));
                 break;
 
             case AppIconMode.BOTH:
                 size = WINDOW_PREVIEW_SIZE;
-                this._icon.add_actor(_createWindowClone(mutterWindow, 
WINDOW_PREVIEW_SIZE));
+                this._icon.add_actor(_createWindowClone(mutterWindow, size * 
scaleFactor));
 
                 if (this.app)
                     this._icon.add_actor(this._createAppIcon(this.app,
@@ -705,7 +707,7 @@ const WindowIcon = new Lang.Class({
                 this._icon.add_actor(this._createAppIcon(this.app, size));
         }
 
-        this._icon.set_size(size, size);
+        this._icon.set_size(size * scaleFactor, size * scaleFactor);
     },
 
     _createAppIcon: function(app, size) {
-- 
cgit v0.11.2

++++++ gnome-shell-logindialog-fixes.patch ++++++
>From 293bc9839424fd5498ba96e946d17818ad33d18c Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <[email protected]>
Date: Mon, 23 Nov 2015 17:21:49 -0600
Subject: loginDialog: Fix TypeError when user is deleted

LoginDialog has a private _user, but UserListItem has a public user.
Easy to get wrong since _user would be the right thing to type in 90% of
this file.
---
 js/gdm/loginDialog.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/js/gdm/loginDialog.js b/js/gdm/loginDialog.js
index b400d79..4150649 100644
--- a/js/gdm/loginDialog.js
+++ b/js/gdm/loginDialog.js
@@ -96,7 +96,7 @@ const UserListItem = new Lang.Class({
     },
 
     _onDestroy: function() {
-        this._user.disconnect(this._userChangedId);
+        this.user.disconnect(this._userChangedId);
     },
 
     _onClicked: function() {
-- 
cgit v0.11.2

>From 3001f3376c9ad92c5b5b2b129b001a5d67caaea6 Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <[email protected]>
Date: Mon, 23 Nov 2015 18:24:19 -0600
Subject: loginDialog: Reconsider user for user list when user changes

Generally a user-changed operation will be uninteresting, but if the
user is currently in the user list and the account changes to locked, we
want to remove it from the list, or if the user is not in the list and
the account changed to unlocked, we want to add it to the list. This
fixes the case where a new user account created in gnome-control-center
does not appear in the user list. The password mode is set in the new
account immediately after it is created, but the operations are not
atomic, so the login dialog considers the new user account when it is
still locked and rejects it from being displayed, then immediately
afterwards the account is unlocked. This commit causes the login dialog
to show the account when this occurs.

The containsUser() check here is not strictly necessary, but reduces
spurious calls to addUser() and removeUser(), since there's no easy way
to check if the locked status of the account has changed (as it's much
easier to connect to one signal on the UserManager than to
notify::locked on each User object).

https://bugzilla.gnome.org/show_bug.cgi?id=758568
---
 js/gdm/loginDialog.js | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/js/gdm/loginDialog.js b/js/gdm/loginDialog.js
index 4150649..46eeb83 100644
--- a/js/gdm/loginDialog.js
+++ b/js/gdm/loginDialog.js
@@ -212,6 +212,10 @@ const UserList = new Lang.Class({
         return item;
     },
 
+    containsUser: function(user) {
+        return this._items[user.get_user_name()] != null;
+    },
+
     addUser: function(user) {
         if (!user.is_loaded)
             return;
@@ -1126,6 +1130,10 @@ const LoginDialog = new Lang.Class({
             this._userManager.disconnect(this._userRemovedId);
             this._userRemovedId = 0;
         }
+        if (this._userChangedId) {
+            this._userManager.disconnect(this._userChangedId);
+            this._userChangedId = 0;
+        }
         this._textureCache.disconnect(this._updateLogoTextureId);
         Main.layoutManager.disconnect(this._startupCompleteId);
         if (this._settings) {
@@ -1172,6 +1180,14 @@ const LoginDialog = new Lang.Class({
                                                             
this._userList.removeUser(user);
                                                         }));
 
+        this._userChangedId = this._userManager.connect('user-changed',
+                                                        Lang.bind(this, 
function(userManager, user) {
+                                                            if 
(this._userList.containsUser(user) && user.locked)
+                                                                
this._userList.removeUser(user);
+                                                            else if 
(!this._userList.containsUser(user) && !user.locked)
+                                                                
this._userList.addUser(user);
+                                                        }));
+
         return GLib.SOURCE_REMOVE;
     },
 
-- 
cgit v0.11.2


Reply via email to