--- notification-daemon-engine-nodoka-0.1.0/src/nodoka-theme.c 2008-04-20 11:50:24.000000000 +0200
+++ /tmp/nodoka/notification-daemon-engine-nodoka/src/nodoka-theme.c 2009-05-10 13:09:13.000000000 +0200
@@ -41,7 +41,6 @@
int offset;
GdkPoint position;
-
} ArrowParameters;
typedef struct
@@ -73,6 +72,7 @@
UrlClickedCb url_clicked;
+ GtkTextDirection rtl;
} WindowData;
@@ -367,7 +367,9 @@
draw_stripe(GtkWidget *widget, WindowData *windata, cairo_t *cr)
{
cairo_save (cr);
- cairo_rectangle (cr, 0, 0, STRIPE_WIDTH, windata->height);
+ cairo_rectangle (cr, (windata->rtl == GTK_TEXT_DIR_RTL) ?
+ windata->width-STRIPE_WIDTH : 0, 0,
+ STRIPE_WIDTH, windata->height);
cairo_clip (cr);
GdkColor top_color;
@@ -614,8 +616,7 @@
unsigned int micro_ver)
{
return major_ver == 0 &&
- minor_ver == 3 &&
- micro_ver >= 2;
+ (minor_ver > 3 || (minor_ver == 3 && micro_ver >= 2));
}
/* Sending theme info to the notification daemon */
@@ -658,6 +659,7 @@
win = gtk_window_new(GTK_WINDOW_POPUP);
windata->win = win;
+ windata->rtl = gtk_widget_get_default_direction();
windata->enable_transparency = FALSE;
screen = gtk_window_get_screen(GTK_WINDOW(win));
colormap = gdk_screen_get_rgba_colormap(screen);
@@ -672,7 +674,7 @@
gtk_window_set_title(GTK_WINDOW(win), "Notification");
gtk_widget_add_events(win, GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK);
gtk_widget_realize(win);
- gtk_widget_set_size_request(win, WIDTH, -1);
+// gtk_widget_set_size_request(win, WIDTH, -1);
g_object_set_data_full(G_OBJECT(win), "windata", windata,
(GDestroyNotify)destroy_windata);
@@ -819,7 +821,7 @@
update_content_hbox_visibility(windata);
gtk_widget_set_size_request(
- ((body != NULL && *body == '\0')
+ ((body != NULL && *body != '\0')
? windata->body_label : windata->summary_label),
WIDTH - (IMAGE_SIZE + IMAGE_PADDING) - 10,
-1);