diff options
Diffstat (limited to 'src/ui/fixedtip.c')
-rw-r--r-- | src/ui/fixedtip.c | 65 |
1 files changed, 1 insertions, 64 deletions
diff --git a/src/ui/fixedtip.c b/src/ui/fixedtip.c index 573a670d..7de93d9b 100644 --- a/src/ui/fixedtip.c +++ b/src/ui/fixedtip.c @@ -22,6 +22,7 @@ */ #include <config.h> +#include <gtk/gtk.h> #include "fixedtip.h" #include "ui.h" @@ -36,7 +37,6 @@ static GtkWidget *tip = NULL; */ static GtkWidget *label = NULL; -#if GTK_CHECK_VERSION(3, 0, 0) static GdkScreen *screen = NULL; static gboolean @@ -60,52 +60,20 @@ draw_handler (GtkWidget *widget, return FALSE; } -#else -/* - * X coordinate of the right-hand edge of the screen. - * - * \bug This appears to be a bug; screen_right_edge is calculated only when - * the window is redrawn. Actually we should never cache it because - * different windows are different sizes. - */ -static int screen_right_edge = 0; -/* - * Y coordinate of the bottom edge of the screen. - * - * \bug As with screen_right_edge. - */ -static int screen_bottom_edge = 0; - -static gint -expose_handler (GtkTooltip *tooltips) -{ - gtk_paint_flat_box (gtk_widget_get_style (tip), gtk_widget_get_window (tip), - GTK_STATE_NORMAL, GTK_SHADOW_OUT, - NULL, tip, "tooltip", - 0, 0, -1, -1); - - return FALSE; -} -#endif void meta_fixed_tip_show (int screen_number, int root_x, int root_y, const char *markup_text) { -#if GTK_CHECK_VERSION(3, 0, 0) gint w; gint h; gint mon_num; GdkRectangle monitor; gint screen_right_edge; -#else - int w, h; -#endif if (tip == NULL) { -#if GTK_CHECK_VERSION(3, 0, 0) GdkVisual *visual; tip = gtk_window_new (GTK_WINDOW_POPUP); @@ -121,37 +89,10 @@ meta_fixed_tip_show (int screen_number, if (visual != NULL) gtk_widget_set_visual (tip, visual); -#else - tip = gtk_window_new (GTK_WINDOW_POPUP); - gtk_window_set_type_hint (GTK_WINDOW(tip), GDK_WINDOW_TYPE_HINT_TOOLTIP); - - { - GdkScreen *gdk_screen; - GdkRectangle monitor; - gint mon_num; - - gdk_screen = gdk_display_get_screen (gdk_display_get_default (), - screen_number); - gtk_window_set_screen (GTK_WINDOW (tip), - gdk_screen); - mon_num = gdk_screen_get_monitor_at_point (gdk_screen, root_x, root_y); - gdk_screen_get_monitor_geometry (gdk_screen, mon_num, &monitor); - screen_right_edge = monitor.x + monitor.width; - screen_bottom_edge = monitor.y + monitor.height; - } -#endif gtk_widget_set_app_paintable (tip, TRUE); gtk_window_set_resizable (GTK_WINDOW (tip), FALSE); -#if GTK_CHECK_VERSION(3, 0, 0) g_signal_connect (tip, "draw", G_CALLBACK (draw_handler), NULL); -#else - gtk_widget_set_name (tip, "gtk-tooltips"); - gtk_container_set_border_width (GTK_CONTAINER (tip), 4); - - g_signal_connect_swapped (tip, "expose_event", - G_CALLBACK (expose_handler), NULL); -#endif label = gtk_label_new (NULL); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); @@ -163,20 +104,16 @@ meta_fixed_tip_show (int screen_number, #endif gtk_widget_show (label); -#if GTK_CHECK_VERSION(3, 0, 0) gtk_container_set_border_width (GTK_CONTAINER (tip), 4); -#endif gtk_container_add (GTK_CONTAINER (tip), label); g_signal_connect (tip, "destroy", G_CALLBACK (gtk_widget_destroyed), &tip); } -#if GTK_CHECK_VERSION(3, 0, 0) mon_num = gdk_screen_get_monitor_at_point (screen, root_x, root_y); gdk_screen_get_monitor_geometry (screen, mon_num, &monitor); screen_right_edge = monitor.x + monitor.width; -#endif gtk_label_set_markup (GTK_LABEL (label), markup_text); |