From 449553ffb0e42656221c3a322d10c14cf86abb6c Mon Sep 17 00:00:00 2001 From: TingPing Date: Thu, 26 Sep 2013 23:24:27 -0400 Subject: Replace xtext's transparency with full window transparency Xtext's transparency barely worked on windows, didn't work on any modern linux wm and used fake transparency. This uses gtk's built in window opacity that works on more systems and is real transparency. Text area only transparency may return with a transition to cairo, if it works on Windows. --- src/fe-gtk/fe-gtk.c | 52 ---------------------------------------------------- 1 file changed, 52 deletions(-) (limited to 'src/fe-gtk/fe-gtk.c') diff --git a/src/fe-gtk/fe-gtk.c b/src/fe-gtk/fe-gtk.c index 5f811339..7fce696c 100644 --- a/src/fe-gtk/fe-gtk.c +++ b/src/fe-gtk/fe-gtk.c @@ -52,10 +52,6 @@ #include "urlgrab.h" #include "setup.h" -#ifdef USE_XLIB -#include -#endif - #ifdef USE_LIBCANBERRA #include #endif @@ -66,49 +62,6 @@ GdkPixmap *channelwin_pix; static ca_context *ca_con; #endif -#ifdef USE_XLIB - -static void -redraw_trans_xtexts (void) -{ - GSList *list = sess_list; - session *sess; - int done_main = FALSE; - - while (list) - { - sess = list->data; - if (GTK_XTEXT (sess->gui->xtext)->transparent) - { - if (!sess->gui->is_tab || !done_main) - gtk_xtext_refresh (GTK_XTEXT (sess->gui->xtext), 1); - if (sess->gui->is_tab) - done_main = TRUE; - } - list = list->next; - } -} - -static GdkFilterReturn -root_event_cb (GdkXEvent *xev, GdkEventProperty *event, gpointer data) -{ - static Atom at = None; - XEvent *xevent = (XEvent *)xev; - - if (xevent->type == PropertyNotify) - { - if (at == None) - at = XInternAtom (xevent->xproperty.display, "_XROOTPMAP_ID", True); - - if (at == xevent->xproperty.atom) - redraw_trans_xtexts (); - } - - return GDK_FILTER_CONTINUE; -} - -#endif - /* === command-line parameter parsing : requires glib 2.6 === */ static char *arg_cfgdir = NULL; @@ -281,11 +234,6 @@ fe_args (int argc, char *argv[]) gtk_init (&argc, &argv); -#ifdef USE_XLIB - gdk_window_set_events (gdk_get_default_root_window (), GDK_PROPERTY_CHANGE_MASK); - gdk_window_add_filter (gdk_get_default_root_window (), (GdkFilterFunc)root_event_cb, NULL); -#endif - return -1; } -- cgit 1.4.1