aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorConor Curran <conor.curran@canonical.com>2011-08-24 21:56:29 +0100
committerConor Curran <conor.curran@canonical.com>2011-08-24 21:56:29 +0100
commit4bb1329455828f51fb620a8d68c76e6c4273d080 (patch)
tree12b70bf870aff7a297126fd5f53461f8ba13a8bc /src
parentf0b10565f499867cac8dac78e5a1af4217d59e3b (diff)
parent5654480a85100da972d03729f7012c4402eb7e13 (diff)
downloadayatana-indicator-session-4bb1329455828f51fb620a8d68c76e6c4273d080.tar.gz
ayatana-indicator-session-4bb1329455828f51fb620a8d68c76e6c4273d080.tar.bz2
ayatana-indicator-session-4bb1329455828f51fb620a8d68c76e6c4273d080.zip
merge the fixes for gtk2
Diffstat (limited to 'src')
-rw-r--r--src/user-menu-mgr.c3
-rw-r--r--src/user-widget.c28
2 files changed, 30 insertions, 1 deletions
diff --git a/src/user-menu-mgr.c b/src/user-menu-mgr.c
index 5ac1c63..f3b1b64 100644
--- a/src/user-menu-mgr.c
+++ b/src/user-menu-mgr.c
@@ -52,6 +52,9 @@ static gint compare_users_by_username (const gchar *a,
static void activate_online_accounts (DbusmenuMenuitem *mi,
guint timestamp,
gpointer user_data);
+static void activate_user_accounts (DbusmenuMenuitem *mi,
+ guint timestamp,
+ gpointer user_data);
static void user_menu_mgr_rebuild_items (UserMenuMgr *self,
gboolean greeter_mode);
static gboolean check_new_session ();
diff --git a/src/user-widget.c b/src/user-widget.c
index a3ad1e4..937a9eb 100644
--- a/src/user-widget.c
+++ b/src/user-widget.c
@@ -90,6 +90,10 @@ static gboolean user_widget_draw_usericon_gtk_3 (GtkWidget *widget,
static gboolean user_widget_primitive_draw_cb (GtkWidget *image,
GdkEventExpose *event,
gpointer user_data);
+static gboolean user_widget_draw_usericon_gtk_2 (GtkWidget *widget,
+ GdkEventExpose *event,
+ gpointer user_data);
+
#endif
G_DEFINE_TYPE (UserWidget, user_widget, GTK_TYPE_MENU_ITEM);
@@ -174,6 +178,9 @@ user_widget_init (UserWidget *self)
g_signal_connect_after (GTK_WIDGET(self), "expose-event",
G_CALLBACK(user_widget_primitive_draw_cb),
GTK_WIDGET(self));
+ g_signal_connect_after (GTK_WIDGET(priv->user_image), "expose-event",
+ G_CALLBACK(user_widget_draw_usericon_gtk_2),
+ GTK_WIDGET(self));
#endif
}
@@ -252,6 +259,23 @@ user_widget_draw_usericon_gtk_3 (GtkWidget *widget,
*/
// GTK 2 Expose handler
#else
+
+static gboolean
+user_widget_draw_usericon_gtk_2 (GtkWidget *widget,
+ GdkEventExpose *event,
+ gpointer user_data)
+{
+ g_return_val_if_fail(IS_USER_WIDGET(user_data), FALSE);
+ UserWidget* meta = USER_WIDGET(user_data);
+ UserWidgetPrivate * priv = USER_WIDGET_GET_PRIVATE(meta);
+
+ if (priv->using_personal_icon == FALSE)
+ return FALSE;
+
+ draw_album_border (widget, FALSE);
+ return FALSE;
+}
+
static gboolean
user_widget_primitive_draw_cb (GtkWidget *widget,
GdkEventExpose *event,
@@ -273,10 +297,12 @@ user_widget_primitive_draw_cb (GtkWidget *widget,
gdouble x, y;
style = gtk_widget_get_style (widget);
+
+ GtkAllocation allocation;
gtk_widget_get_allocation (widget, &allocation);
x = allocation.x + 13;
- y = allocation.height / 2;
+ y = allocation.y + allocation.height/2;
cairo_arc (cr, x, y, 3.0, 0.0, 2 * G_PI);;