Accepting request 526978 from GNOME:Factory

Add upstream patches (forwarded request 526975 from Zaitor)

OBS-URL: https://build.opensuse.org/request/show/526978
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gnome-shell?expand=0&rev=136
This commit is contained in:
Dominique Leuenberger 2017-09-21 10:31:19 +00:00 committed by Git OBS Bridge
commit 49d3fbd294
7 changed files with 261 additions and 2 deletions

View File

@ -20,7 +20,7 @@ const HostnameIface = '<node> \
</node>';
const HostnameProxy = Gio.DBusProxy.makeProxyWrapper(HostnameIface);
const AboutMenuButton = new Lang.Class({
var AboutMenuButton = new Lang.Class({
Name: 'AboutMenuButton',
Extends: PanelMenu.Button,
_init: function() {

View File

@ -0,0 +1,57 @@
From 053b8da89c5260351199d8c51821db1a2f91cdf4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Sat, 25 Mar 2017 02:46:25 +0100
Subject: app: Work around pkexec restriction when launching
Unless automatic child reaping is disabled in GSpawnFlags, glib's
g_spawn_* functions will reparent the spawned process to init by
double-forking. Unfortunately pkexec bails out in this case[0],
which means that it no longer works in .desktop files since the
PID tracking removal in commit 01c6392c1373.
Fix this by going back to manual child reaping.
[0] https://cgit.freedesktop.org/polkit/tree/src/programs/pkexec.c#n728
https://bugzilla.gnome.org/show_bug.cgi?id=763531
---
src/shell-app.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/shell-app.c b/src/shell-app.c
index b383d9c..335147c 100644
--- a/src/shell-app.c
+++ b/src/shell-app.c
@@ -1196,6 +1196,14 @@ app_child_setup (gpointer user_data)
}
#endif
+static void
+wait_pid (GDesktopAppInfo *appinfo,
+ GPid pid,
+ gpointer user_data)
+{
+ g_child_watch_add (pid, (GChildWatchFunc) g_spawn_close_pid, NULL);
+}
+
/**
* shell_app_launch:
* @timestamp: Event timestamp, or 0 for current event timestamp
@@ -1234,13 +1242,13 @@ shell_app_launch (ShellApp *app,
ret = g_desktop_app_info_launch_uris_as_manager (app->info, NULL,
context,
- G_SPAWN_SEARCH_PATH,
+ G_SPAWN_SEARCH_PATH | G_SPAWN_DO_NOT_REAP_CHILD,
#ifdef HAVE_SYSTEMD
app_child_setup, (gpointer)shell_app_get_id (app),
#else
NULL, NULL,
#endif
- NULL, NULL,
+ wait_pid, NULL,
error);
g_object_unref (context);
--
cgit v0.12

View File

@ -0,0 +1,147 @@
From 56f4ce37cd52817a5fcba360dc5eec23d81656f0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 8 Sep 2017 12:13:48 +0200
Subject: dateMenu: Adjust to GWeather IAPI change
It's not exactly clear what changed - gobject-introspection, gjs - but
the newly added gweather_condition_to_string_full() API no longer works
like it used to. The replacement code does look more idiomatic anyway,
so just fix the code without investigating the reason of the breakage.
https://bugzilla.gnome.org/show_bug.cgi?id=787423
---
js/ui/dateMenu.js | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/js/ui/dateMenu.js b/js/ui/dateMenu.js
index 18f2f0e..0054f2d 100644
--- a/js/ui/dateMenu.js
+++ b/js/ui/dateMenu.js
@@ -237,12 +237,12 @@ var WeatherSection = new Lang.Class({
let options = capitalize ? GWeather.FormatOptions.SENTENCE_CAPITALIZATION
: GWeather.FormatOptions.NO_CAPITALIZATION;
- let [ok, phenom, qualifier] = info.get_value_conditions();
+ let [ok, phenomenon, qualifier] = info.get_value_conditions();
if (ok)
- return GWeather.conditions_to_string_full(phenom, qualifier, options);
+ return new GWeather.Conditions({ phenomenon, qualifier}).to_string_full(options);
let [, sky] = info.get_value_sky();
- return GWeather.sky_to_string_full(sky, options);
+ return GWeather.Sky.to_string_full(sky, options);
},
_sameSummary: function(info1, info2) {
--
cgit v0.12
From bddc2c0016878c8eb629d6d4b7c0f2f38353377a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Tue, 12 Sep 2017 12:33:37 +0200
Subject: dateMenu: Use icon for message indicator
Using a unicode character here means it may look quite different
from the intended style (for instance with emoji fonts). Avoid
this by providing a custom icon and use that instead.
https://bugzilla.gnome.org/show_bug.cgi?id=766368
---
data/gnome-shell-theme.gresource.xml | 1 +
data/theme/message-indicator-symbolic.svg | 40 +++++++++++++++++++++++++++++++
js/ui/dateMenu.js | 6 +++--
js/ui/main.js | 1 +
4 files changed, 46 insertions(+), 2 deletions(-)
create mode 100644 data/theme/message-indicator-symbolic.svg
diff --git a/data/gnome-shell-theme.gresource.xml b/data/gnome-shell-theme.gresource.xml
index 25769a4..896a1e2 100644
--- a/data/gnome-shell-theme.gresource.xml
+++ b/data/gnome-shell-theme.gresource.xml
@@ -18,6 +18,7 @@
<file>gnome-shell.css</file>
<file>gnome-shell-high-contrast.css</file>
<file>logged-in-indicator.svg</file>
+ <file alias="icons/message-indicator-symbolic.svg">message-indicator-symbolic.svg</file>
<file>no-events.svg</file>
<file>no-notifications.svg</file>
<file>noise-texture.png</file>
diff --git a/data/theme/message-indicator-symbolic.svg b/data/theme/message-indicator-symbolic.svg
new file mode 100644
index 0000000..257a984
--- /dev/null
+++ b/data/theme/message-indicator-symbolic.svg
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16"
+ height="16"
+ viewBox="0 0 4.2333333 4.2333333"
+ version="1.1"
+ id="svg8">
+ <defs
+ id="defs2" />
+ <metadata
+ id="metadata5">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ style="display:inline"
+ transform="translate(0,-292.76667)">
+ <path
+ style="fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.17969394"
+ d="m 3.1749998,294.88333 a 1.0583333,1.0583333 0 0 1 -1.0583332,1.05833 1.0583333,1.0583333 0 0 1 -1.0583333,-1.05833 1.0583333,1.0583333 0 0 1 1.0583333,-1.05833 1.0583333,1.0583333 0 0 1 1.0583332,1.05833 z"
+ id="path4485" />
+ </g>
+</svg>
diff --git a/js/ui/dateMenu.js b/js/ui/dateMenu.js
index 0054f2d..0aad37e 100644
--- a/js/ui/dateMenu.js
+++ b/js/ui/dateMenu.js
@@ -337,8 +337,10 @@ var MessagesIndicator = new Lang.Class({
Name: 'MessagesIndicator',
_init: function() {
- this.actor = new St.Label({ text: '⚫', visible: false, y_expand: true,
- y_align: Clutter.ActorAlign.CENTER });
+ this.actor = new St.Icon({ icon_name: 'message-indicator-symbolic',
+ icon_size: 16,
+ visible: false, y_expand: true,
+ y_align: Clutter.ActorAlign.CENTER });
this._sources = [];
diff --git a/js/ui/main.js b/js/ui/main.js
index 85dbe1f..e981db9 100644
--- a/js/ui/main.js
+++ b/js/ui/main.js
@@ -122,6 +122,7 @@ function start() {
sessionMode.connect('updated', _sessionUpdated);
Gtk.Settings.get_default().connect('notify::gtk-theme-name',
_loadDefaultStylesheet);
+ Gtk.IconTheme.get_default().add_resource_path('/org/gnome/shell/theme/icons');
_initializeUI();
shellAccessDialogDBusService = new AccessDialog.AccessDialogDBus();
--
cgit v0.12

View File

@ -46,7 +46,7 @@ Index: gnome-shell-3.26.0/js/gdm/domain.js
+ ERR : 5
+};
+
+const DomainMenuButton = new Lang.Class({
+var DomainMenuButton = new Lang.Class({
+ Name: 'DomainMenuButton',
+
+ _init: function () {

View File

@ -0,0 +1,28 @@
From 5ec0ad4e9cf8a88e3a715fdef4bf1f227b274d2d Mon Sep 17 00:00:00 2001
From: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
Date: Tue, 12 Sep 2017 12:23:46 +0200
Subject: StEntry: fix crash when hint actor is NULL
https://bugzilla.gnome.org/show_bug.cgi?id=787580
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
---
src/st/st-entry.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/st/st-entry.c b/src/st/st-entry.c
index fc9ffbf..18e6a25 100644
--- a/src/st/st-entry.c
+++ b/src/st/st-entry.c
@@ -1106,7 +1106,7 @@ st_entry_get_text (StEntry *entry)
g_return_val_if_fail (ST_IS_ENTRY (entry), NULL);
priv = st_entry_get_instance_private (entry);
- if (clutter_actor_is_visible (priv->hint_actor))
+ if (priv->hint_actor != NULL && clutter_actor_is_visible (priv->hint_actor))
return "";
else
return clutter_text_get_text (CLUTTER_TEXT (priv->entry));
--
cgit v0.12

View File

@ -1,3 +1,21 @@
-------------------------------------------------------------------
Mon Sep 18 07:31:56 UTC 2017 - xwang@suse.com
- Fix JS warning, define classes with 'var' instead of 'const'
(bgo#785084)
+ Update aboutMenu.js
+ Update gnome-shell-domain.patch
-------------------------------------------------------------------
Fri Sep 15 07:34:30 UTC 2017 - zaitor@opensuse.org
- Add gnome-shell-app-workaround-pkexec.patch: app: Work around
pkexec restriction when launching (bgo#763531).
- Add gnome-shell-dateMenu-fixes.patch: Fix gnome-weather and
notification icon (bgo#787423, bgo#766368).
- Add gnome-shell-fix-crash-hint-actor-NULL.patch: StEntry: fix
crash when hint actor is NULL (bgo#787580).
-------------------------------------------------------------------
Wed Sep 13 02:39:59 UTC 2017 - xwang@suse.com

View File

@ -53,6 +53,12 @@ Patch9: gnome-shell-lock-bg-on-primary.patch
Patch11: gs-fate318433-prevent-same-account-multi-logins.patch
# PATCH-FEATURE-SLE gnome-shell-1007468-lock-screen-SUSE-logo-missing.patch xwang@suse.com -- Add SUSE logo on lock screen for GNOME theme.
Patch15: gnome-shell-1007468-lock-screen-SUSE-logo-missing.patch
# PATCH-FIX-UPSTREAM gnome-shell-app-workaround-pkexec.patch bgo#763531 zaitor@opensuse.org -- app: Work around pkexec restriction when launching
Patch16: gnome-shell-app-workaround-pkexec.patch
# PATCH-FIX-UPSTREAM gnome-shell-dateMenu-fixes.patch bgo#787423 bgo#766368 zaitor@opensuse.org -- Fix gnome-weather and notification icon
Patch17: gnome-shell-dateMenu-fixes.patch
# PATCH-FIX-UPSTREAM gnome-shell-fix-crash-hint-actor-NULL.patch bgo#787580 zaitor@opensuse.org -- StEntry: fix crash when hint actor is NULL
Patch18: gnome-shell-fix-crash-hint-actor-NULL.patch
## NOTE: Keep SLE Classic patches at bottom.
# PATCH-FEATURE-SLE gs-sle-classic-ext.patch bnc#862615 cxiong@suse.com -- add SLE Classic support
Patch1000: gs-sle-classic-ext.patch
@ -192,6 +198,9 @@ into GNOME Shell calendar.
%patch11 -p1
%patch15 -p1
%endif
%patch16 -p1
%patch17 -p1
%patch18 -p1
%if !0%{?is_opensuse}
%patch1000 -p1