* [gentoo-commits] gentoo-x86 commit in gnome-base/gnome-shell/files: gnome-shell-3.0.2-user-removed-signals.patch gnome-shell-3.0.2-unbreak-extension-css.patch
@ 2011-09-30 19:43 Nirbheek Chauhan (nirbheek)
0 siblings, 0 replies; only message in thread
From: Nirbheek Chauhan (nirbheek) @ 2011-09-30 19:43 UTC (permalink / raw
To: gentoo-commits
nirbheek 11/09/30 19:43:34
Added: gnome-shell-3.0.2-user-removed-signals.patch
gnome-shell-3.0.2-unbreak-extension-css.patch
Log:
Add GNOME Shell from the gnome overlay, for GNOME 3
(Portage version: 2.2.0_alpha51/cvs/Linux x86_64)
Revision Changes Path
1.1 gnome-base/gnome-shell/files/gnome-shell-3.0.2-user-removed-signals.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/files/gnome-shell-3.0.2-user-removed-signals.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/files/gnome-shell-3.0.2-user-removed-signals.patch?rev=1.1&content-type=text/plain
Index: gnome-shell-3.0.2-user-removed-signals.patch
===================================================================
From 9a7f3dbd2030a5e1b54297f1aa7cf228eccafb27 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Tue, 24 May 2011 22:15:10 -0400
Subject: [PATCH] gdm: ignore user-removed signals for untracked users
If we don't know about a user, we don't care if it goes away,
and we shouldn't try to remove it from the book keeping.
https://bugzilla.gnome.org/show_bug.cgi?id=647893
---
src/gdmuser/gdm-user-manager.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/src/gdmuser/gdm-user-manager.c b/src/gdmuser/gdm-user-manager.c
index e7ca833..561be32 100644
--- a/src/gdmuser/gdm-user-manager.c
+++ b/src/gdmuser/gdm-user-manager.c
@@ -887,6 +887,13 @@ on_user_removed_in_accounts_service (DBusGProxy *proxy,
user = g_hash_table_lookup (manager->priv->users_by_object_path, object_path);
+ if (user == NULL) {
+ g_debug ("GdmUserManager: ignoring untracked user %s", object_path);
+ return;
+ } else {
+ g_debug ("GdmUserManager: tracked user %s removed from accounts service", object_path);
+ }
+
manager->priv->new_users = g_slist_remove (manager->priv->new_users, user);
remove_user (manager, user);
--
1.7.5.1
1.1 gnome-base/gnome-shell/files/gnome-shell-3.0.2-unbreak-extension-css.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/files/gnome-shell-3.0.2-unbreak-extension-css.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/files/gnome-shell-3.0.2-unbreak-extension-css.patch?rev=1.1&content-type=text/plain
Index: gnome-shell-3.0.2-unbreak-extension-css.patch
===================================================================
From 2674d96e547b27ed5c377804c1059bdfd926086e Mon Sep 17 00:00:00 2001
From: Giovanni Campagna <gcampagna@src.gnome.org>
Date: Thu, 02 Jun 2011 15:05:08 +0000
Subject: StTheme: retrive the list of custom stylesheets and use it in loadTheme()
Using the list of stylesheets loaded with st_theme_load_stylesheet(),
one can build an StTheme that is completely identical to the previous
one, except for one property (application-stylesheet).
This allows rt and the user-theme extension to work while respecting
the theming of other extensions.
https://bugzilla.gnome.org/show_bug.cgi?id=650971
---
diff --git a/js/ui/main.js b/js/ui/main.js
index 1d27b4c..c0f4845 100644
--- a/js/ui/main.js
+++ b/js/ui/main.js
@@ -393,12 +393,21 @@ function setThemeStylesheet(cssStylesheet)
*/
function loadTheme() {
let themeContext = St.ThemeContext.get_for_stage (global.stage);
+ let previousTheme = themeContext.get_theme();
let cssStylesheet = _defaultCssStylesheet;
if (_cssStylesheet != null)
cssStylesheet = _cssStylesheet;
let theme = new St.Theme ({ application_stylesheet: cssStylesheet });
+
+ if (previousTheme) {
+ let customStylesheets = previousTheme.get_custom_stylesheets();
+
+ for (let i = 0; i < customStylesheets.length; i++)
+ theme.load_stylesheet(customStylesheets[i]);
+ }
+
themeContext.set_theme (theme);
}
diff --git a/src/st/st-theme.c b/src/st/st-theme.c
index 326d9de..2058e32 100644
--- a/src/st/st-theme.c
+++ b/src/st/st-theme.c
@@ -256,6 +256,30 @@ st_theme_unload_stylesheet (StTheme *theme,
cr_stylesheet_unref (stylesheet);
}
+/**
+ * st_theme_get_custom_stylesheets:
+ * @theme: an #StTheme
+ *
+ * Returns: (transfer full) (element-type utf8): the list of stylesheet filenames
+ * that were loaded with st_theme_load_stylesheet()
+ */
+GSList*
+st_theme_get_custom_stylesheets (StTheme *theme)
+{
+ GSList *result = NULL;
+ GSList *iter;
+
+ for (iter = theme->custom_stylesheets; iter; iter = iter->next)
+ {
+ CRStyleSheet *stylesheet = iter->data;
+ gchar *filename = g_hash_table_lookup (theme->filenames_by_stylesheet, stylesheet);
+
+ result = g_slist_prepend (result, g_strdup (filename));
+ }
+
+ return result;
+}
+
static GObject *
st_theme_constructor (GType type,
guint n_construct_properties,
diff --git a/src/st/st-theme.h b/src/st/st-theme.h
index 003c2a7..0a044bf 100644
--- a/src/st/st-theme.h
+++ b/src/st/st-theme.h
@@ -51,9 +51,9 @@ StTheme *st_theme_new (const char *application_stylesheet,
const char *theme_stylesheet,
const char *default_stylesheet);
-gboolean st_theme_load_stylesheet (StTheme *theme, const char *path, GError **error);
-
-void st_theme_unload_stylesheet (StTheme *theme, const char *path);
+gboolean st_theme_load_stylesheet (StTheme *theme, const char *path, GError **error);
+void st_theme_unload_stylesheet (StTheme *theme, const char *path);
+GSList *st_theme_get_custom_stylesheets (StTheme *theme);
G_END_DECLS
--
cgit v0.9.0.2
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2011-09-30 19:43 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-30 19:43 [gentoo-commits] gentoo-x86 commit in gnome-base/gnome-shell/files: gnome-shell-3.0.2-user-removed-signals.patch gnome-shell-3.0.2-unbreak-extension-css.patch Nirbheek Chauhan (nirbheek)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox