diff options
Diffstat (limited to 'extra/gnome-shell')
-rw-r--r-- | extra/gnome-shell/0001-st-Be-more-forgiving-when-calling-get_theme_node-on-.patch | 37 | ||||
-rw-r--r-- | extra/gnome-shell/PKGBUILD | 12 | ||||
-rw-r--r-- | extra/gnome-shell/git-fixes.patch | 125 |
3 files changed, 131 insertions, 43 deletions
diff --git a/extra/gnome-shell/0001-st-Be-more-forgiving-when-calling-get_theme_node-on-.patch b/extra/gnome-shell/0001-st-Be-more-forgiving-when-calling-get_theme_node-on-.patch deleted file mode 100644 index 8a3f69bdb..000000000 --- a/extra/gnome-shell/0001-st-Be-more-forgiving-when-calling-get_theme_node-on-.patch +++ /dev/null @@ -1,37 +0,0 @@ -From ace549c1bf1861b4cbaec6f2451a6341aa738bae Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org> -Date: Mon, 24 Jun 2013 18:09:04 +0200 -Subject: [PATCH] st: Be more forgiving when calling get_theme_node() on - unstaged widgets - -While it is obviously still an error to call get_theme_node() on a -widget that hasn't been added to the stage hierarchy yet, asserting -on it hasn't proven too successful in avoiding those errors - it's -likely the most frequent reason for crash reports. Just accept that -there'll always be code paths where we can hit this case and make -it non-fatal. - -https://bugzilla.gnome.org/show_bug.cgi?id=610279 ---- - src/st/st-widget.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/src/st/st-widget.c b/src/st/st-widget.c -index 42992ec..4875acc 100644 ---- a/src/st/st-widget.c -+++ b/src/st/st-widget.c -@@ -608,8 +608,9 @@ st_widget_get_theme_node (StWidget *widget) - - if (stage == NULL) - { -- g_error ("st_widget_get_theme_node called on the widget %s which is not in the stage.", -- st_describe_actor (CLUTTER_ACTOR (widget))); -+ g_critical ("st_widget_get_theme_node called on the widget %s which is not in the stage.", -+ st_describe_actor (CLUTTER_ACTOR (widget))); -+ return g_object_new (ST_TYPE_THEME_NODE, NULL); - } - - if (parent_node == NULL) --- -1.8.3.1 - diff --git a/extra/gnome-shell/PKGBUILD b/extra/gnome-shell/PKGBUILD index 930763625..128c3facb 100644 --- a/extra/gnome-shell/PKGBUILD +++ b/extra/gnome-shell/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 188954 2013-06-27 04:03:27Z heftig $ +# $Id: PKGBUILD 189242 2013-07-01 09:11:00Z jgc $ # Maintainer: Ionut Biru <ibiru@archlinux.org> # Contributor: Flamelab <panosfilip@gmail.com pkgname=gnome-shell pkgver=3.8.3 -pkgrel=2 +pkgrel=3 pkgdesc="The next generation GNOME Shell" arch=(i686 x86_64) url="http://live.gnome.org/GnomeShell" @@ -20,10 +20,10 @@ install=gnome-shell.install groups=(gnome) source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver::3}/$pkgname-$pkgver.tar.xz nm-libexecdir.patch - 0001-st-Be-more-forgiving-when-calling-get_theme_node-on-.patch) + git-fixes.patch) sha256sums=('145724f21ead9dbe0c39d3ab468b39264c7aaf3f0fa5d152b295d905d8339c22' 'e5bb10ad2e5c3e0fde3d05babd1bfdda701e553e02d493f7e54cb7832ce7e607' - 'c5f0c9b071d5c31e11289c45743e1f82f6bba8201a28e0efb7a197f57cbb2105') + '3e08176d55c000eb88660349a4325e8134f4def66ef83efc7f45f0fb34a06e1c') prepare() { cd $pkgname-$pkgver @@ -31,8 +31,8 @@ prepare() { # FS#30747 FS#32730 Problems due to libexecdir different from NM patch -Np1 -i ../nm-libexecdir.patch - # FS#35174 Nautilus crashes GS - patch -Np1 -i ../0001-st-Be-more-forgiving-when-calling-get_theme_node-on-.patch + # Git fixes - up to 60225ef86d070a7999bd6cded43837ca87d3f24f + patch -Np1 -i ../git-fixes.patch } build() { diff --git a/extra/gnome-shell/git-fixes.patch b/extra/gnome-shell/git-fixes.patch new file mode 100644 index 000000000..989c881f0 --- /dev/null +++ b/extra/gnome-shell/git-fixes.patch @@ -0,0 +1,125 @@ +diff --git a/data/theme/gnome-shell.css b/data/theme/gnome-shell.css +index 775b687..f4ea781 100644 +--- a/data/theme/gnome-shell.css ++++ b/data/theme/gnome-shell.css +@@ -2312,6 +2312,7 @@ StScrollBar StButton#vhandle:active { + font-weight: bold; + color: #666666; + padding-top: 1em; ++ padding-left: 2px; + } + + .login-dialog-not-listed-button:focus .login-dialog-not-listed-label, +diff --git a/js/gdm/util.js b/js/gdm/util.js +index 6075e66..cae3e1b 100644 +--- a/js/gdm/util.js ++++ b/js/gdm/util.js +@@ -164,6 +164,7 @@ const ShellUserVerifier = new Lang.Class({ + + answerQuery: function(serviceName, answer) { + if (!this._userVerifier.hasPendingMessages) { ++ this._clearMessageQueue(); + this._userVerifier.call_answer_query(serviceName, answer, this._cancellable, null); + } else { + let signalId = this._userVerifier.connect('no-more-messages', +diff --git a/js/ui/components/telepathyClient.js b/js/ui/components/telepathyClient.js +index b07ea95..72bc010 100644 +--- a/js/ui/components/telepathyClient.js ++++ b/js/ui/components/telepathyClient.js +@@ -18,7 +18,7 @@ const Params = imports.misc.params; + const PopupMenu = imports.ui.popupMenu; + + // See Notification.appendMessage +-const SCROLLBACK_IMMEDIATE_TIME = 60; // 1 minute ++const SCROLLBACK_IMMEDIATE_TIME = 3 * 60; // 3 minutes + const SCROLLBACK_RECENT_TIME = 15 * 60; // 15 minutes + const SCROLLBACK_RECENT_LENGTH = 20; + const SCROLLBACK_IDLE_LENGTH = 5; +@@ -967,7 +967,8 @@ const ChatNotification = new Lang.Class({ + let timeLabel = this._append({ body: this._formatTimestamp(lastMessageDate), + group: 'meta', + styles: ['chat-meta-message'], +- childProps: { expand: true, x_fill: false }, ++ childProps: { expand: true, x_fill: false, ++ x_align: St.Align.END }, + noTimestamp: true, + timestamp: lastMessageTime }); + +diff --git a/js/ui/endSessionDialog.js b/js/ui/endSessionDialog.js +index d322581..ed61bf7 100644 +--- a/js/ui/endSessionDialog.js ++++ b/js/ui/endSessionDialog.js +@@ -420,6 +420,7 @@ const EndSessionDialog = new Lang.Class({ + _startTimer: function() { + let startTime = GLib.get_monotonic_time(); + this._secondsLeft = this._totalSecondsToStayOpen; ++ this._updateDescription(); + + this._timerId = Mainloop.timeout_add_seconds(1, Lang.bind(this, + function() { +diff --git a/js/ui/layout.js b/js/ui/layout.js +index 0bb887e..e25b3bd 100644 +--- a/js/ui/layout.js ++++ b/js/ui/layout.js +@@ -728,6 +728,8 @@ const LayoutManager = new Lang.Class({ + // and shown otherwise) + addChrome: function(actor, params) { + this.uiGroup.add_actor(actor); ++ if (this.uiGroup.contains(global.top_window_group)) ++ this.uiGroup.set_child_below_sibling(actor, global.top_window_group); + this._trackActor(actor, params); + }, + +diff --git a/js/ui/osdWindow.js b/js/ui/osdWindow.js +index 7e7b536..7fa052e 100644 +--- a/js/ui/osdWindow.js ++++ b/js/ui/osdWindow.js +@@ -167,14 +167,17 @@ const OsdWindow = new Lang.Class({ + { opacity: 0, + time: FADE_TIME, + transition: 'easeOutQuad', +- onComplete: Lang.bind(this, this._reset) }); ++ onComplete: Lang.bind(this, function() { ++ this._reset(); ++ Meta.enable_unredirect_for_screen(global.screen); ++ }) ++ }); + }, + + _reset: function() { + this.actor.hide(); + this.setLabel(null); + this.setLevel(null); +- Meta.enable_unredirect_for_screen(global.screen); + }, + + _monitorsChanged: function() { +diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js +index fe9cd31..4264f01 100644 +--- a/js/ui/screenShield.js ++++ b/js/ui/screenShield.js +@@ -709,6 +709,8 @@ const ScreenShield = new Lang.Class({ + }, + + _onDragEnd: function(action, actor, eventX, eventY, modifiers) { ++ if (this._lockScreenState != MessageTray.State.HIDING) ++ return; + if (this._lockScreenGroup.y < -(ARROW_DRAG_THRESHOLD * global.stage.height)) { + // Complete motion automatically + let [velocity, velocityX, velocityY] = this._dragAction.get_velocity(0); +diff --git a/src/st/st-widget.c b/src/st/st-widget.c +index 42992ec..4875acc 100644 +--- a/src/st/st-widget.c ++++ b/src/st/st-widget.c +@@ -608,8 +608,9 @@ st_widget_get_theme_node (StWidget *widget) + + if (stage == NULL) + { +- g_error ("st_widget_get_theme_node called on the widget %s which is not in the stage.", +- st_describe_actor (CLUTTER_ACTOR (widget))); ++ g_critical ("st_widget_get_theme_node called on the widget %s which is not in the stage.", ++ st_describe_actor (CLUTTER_ACTOR (widget))); ++ return g_object_new (ST_TYPE_THEME_NODE, NULL); + } + + if (parent_node == NULL) |