[gnome-shell] Bug 588405 - Handle status menu button appearance in JavaScript
- From: Sander Dijkhuis <sanderd src gnome org>
- To: svn-commits-list gnome org
- Subject: [gnome-shell] Bug 588405 - Handle status menu button appearance in JavaScript
- Date: Mon, 13 Jul 2009 11:56:59 +0000 (UTC)
commit 10e30f7dc7fd6746ede74fa9bda4e937c6e08ddc
Author: Sander Dijkhuis <sander dijkhuis gmail com>
Date: Sun Jul 12 23:44:06 2009 +0200
Bug 588405 - Handle status menu button appearance in JavaScript
Make the ClutterText and ClutterTexture from the status menu
button available to JavaScript, and from there improve the
font definition of the user name.
shell-status-menu.[ch]: Add public get_name() and get_icon()
functions that return the user name label and icon
texture, remove the markup from update_name_text().
panel.js: Set the font for the button consistently with that
of the other panel labels.
js/ui/panel.js | 1 +
src/shell-status-menu.c | 31 ++++++++++++++++++++++++++-----
src/shell-status-menu.h | 3 +++
3 files changed, 30 insertions(+), 5 deletions(-)
---
diff --git a/js/ui/panel.js b/js/ui/panel.js
index 24ac5d2..a7f6827 100644
--- a/js/ui/panel.js
+++ b/js/ui/panel.js
@@ -93,6 +93,7 @@ Panel.prototype = {
let statusbox = new Big.Box();
let statusmenu = this._statusmenu = new Shell.StatusMenu();
+ statusmenu.get_name().fontName = 'Sans Bold 16px';
statusbox.append(this._statusmenu, Big.BoxPackFlags.NONE);
let statusbutton = new Button.Button(statusbox, PANEL_BUTTON_COLOR, PRESSED_BUTTON_BACKGROUND_COLOR,
true, null, PANEL_HEIGHT);
diff --git a/src/shell-status-menu.c b/src/shell-status-menu.c
index fa0be00..4507d6a 100644
--- a/src/shell-status-menu.c
+++ b/src/shell-status-menu.c
@@ -117,12 +117,9 @@ static void
update_name_text (ShellStatusMenu *status)
{
ShellStatusMenuPrivate *priv = status->priv;
- char *markup;
- markup = g_markup_printf_escaped("<b>%s</b>",
- gdm_user_get_real_name (GDM_USER (priv->user)));
- clutter_text_set_markup (priv->name, markup);
- g_free (markup);
+ clutter_text_set_text (priv->name,
+ gdm_user_get_real_name (GDM_USER (priv->user)));
}
static void
@@ -655,3 +652,27 @@ shell_status_menu_toggle (ShellStatusMenu *status, ClutterEvent *event)
status, 1, event->button.time);
}
}
+
+/**
+ * shell_status_menu_get_name:
+ * @menu: a #ShellStatusMenu
+ *
+ * Return value: (transfer none): the #ClutterText actor with the user's name.
+ */
+ClutterText *
+shell_status_menu_get_name (ShellStatusMenu *menu)
+{
+ return menu->priv->name;
+}
+
+/**
+ * shell_status_menu_get_icon:
+ * @menu: a #ShellStatusMenu
+ *
+ * Return value: (transfer none): the #ClutterTexture actor with the user icon.
+ */
+ClutterTexture *
+shell_status_menu_get_icon (ShellStatusMenu *menu)
+{
+ return menu->priv->user_icon;
+}
diff --git a/src/shell-status-menu.h b/src/shell-status-menu.h
index d31dca6..9831741 100644
--- a/src/shell-status-menu.h
+++ b/src/shell-status-menu.h
@@ -37,6 +37,9 @@ GType shell_status_menu_get_type (void);
void shell_status_menu_toggle (ShellStatusMenu *menu, ClutterEvent *event);
+ClutterText *shell_status_menu_get_name (ShellStatusMenu *menu);
+ClutterTexture *shell_status_menu_get_icon (ShellStatusMenu *menu);
+
G_END_DECLS
#endif /* __SHELL_STATUS_MENU_H__ */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]