summaryrefslogtreecommitdiff
path: root/applets/brightness/brightness-applet.c
diff options
context:
space:
mode:
Diffstat (limited to 'applets/brightness/brightness-applet.c')
-rw-r--r--applets/brightness/brightness-applet.c295
1 files changed, 146 insertions, 149 deletions
diff --git a/applets/brightness/brightness-applet.c b/applets/brightness/brightness-applet.c
index d3570b8..8e5345d 100644
--- a/applets/brightness/brightness-applet.c
+++ b/applets/brightness/brightness-applet.c
@@ -22,12 +22,9 @@
*/
#ifdef HAVE_CONFIG_H
-# include <config.h>
+#include <config.h>
#endif
-/* FIXME: gdk_gc_* needs porting to cairo */
-#undef GDK_DISABLE_DEPRECATED
-
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -35,16 +32,10 @@
#include <gtk/gtk.h>
#include <glib/gi18n.h>
#include <gdk/gdkkeysyms.h>
-#if GTK_CHECK_VERSION (3, 0, 0)
-#include <gdk/gdkkeysyms-compat.h>
-#define GtkObject GtkWidget
-#endif
#include <glib-object.h>
#include <dbus/dbus-glib.h>
-#include <libmate-desktop/mate-aboutdialog.h>
#include "egg-debug.h"
-#include "egg-dbus-monitor.h"
#include "gpm-common.h"
#define GPM_TYPE_BRIGHTNESS_APPLET (gpm_brightness_applet_get_type ())
@@ -67,7 +58,7 @@ typedef struct{
/* connection to g-p-m */
DBusGProxy *proxy;
DBusGConnection *connection;
- EggDbusMonitor *monitor;
+ guint bus_watch_id;
guint level;
/* a cache for panel size */
gint size;
@@ -80,6 +71,10 @@ typedef struct{
GType gpm_brightness_applet_get_type (void);
+#define GPM_DBUS_SERVICE "org.mate.PowerManager"
+#define GPM_DBUS_PATH_BACKLIGHT "/org/mate/PowerManager/Backlight"
+#define GPM_DBUS_INTERFACE_BACKLIGHT "org.mate.PowerManager.Backlight"
+
static void gpm_brightness_applet_class_init (GpmBrightnessAppletClass *klass);
static void gpm_brightness_applet_init (GpmBrightnessApplet *applet);
@@ -90,11 +85,7 @@ static void gpm_applet_check_size (GpmBrightnessApplet *applet);
static gboolean gpm_applet_draw_cb (GpmBrightnessApplet *applet);
static void gpm_applet_change_background_cb (GpmBrightnessApplet *applet,
MatePanelAppletBackgroundType arg1,
-#if GTK_CHECK_VERSION (3, 0, 0)
cairo_pattern_t *arg2, gpointer data);
-#else
- GdkColor *arg2, GdkPixmap *arg3, gpointer data);
-#endif
static void gpm_applet_theme_change_cb (GtkIconTheme *icon_theme, gpointer data);
static void gpm_applet_stop_scroll_events_cb (GtkWidget *widget, GdkEvent *event);
static gboolean gpm_applet_destroy_popup_cb (GpmBrightnessApplet *applet);
@@ -109,7 +100,7 @@ static void gpm_applet_create_popup (GpmBrightnessApplet *applet);
static gboolean gpm_applet_popup_cb (GpmBrightnessApplet *applet, GdkEventButton *event);
static void gpm_applet_dialog_about_cb (GtkAction *action, gpointer data);
static gboolean gpm_applet_cb (MatePanelApplet *_applet, const gchar *iid, gpointer data);
-static void gpm_applet_destroy_cb (GtkObject *object);
+static void gpm_applet_destroy_cb (GtkWidget *widget);
#define GPM_BRIGHTNESS_APPLET_ID "BrightnessApplet"
#define GPM_BRIGHTNESS_APPLET_FACTORY_ID "BrightnessAppletFactory"
@@ -268,16 +259,10 @@ static gboolean
gpm_applet_draw_cb (GpmBrightnessApplet *applet)
{
gint w, h, bg_type;
-#if GTK_CHECK_VERSION (3, 0, 0)
GdkRGBA color;
cairo_t *cr;
cairo_pattern_t *pattern;
GtkStyleContext *context;
-#else
- GdkColor color;
- GdkGC *gc;
- GdkPixmap *background;
-#endif
GtkAllocation allocation;
if (gtk_widget_get_window (GTK_WIDGET(applet)) == NULL) {
@@ -300,74 +285,38 @@ gpm_applet_draw_cb (GpmBrightnessApplet *applet)
w = allocation.width;
h = allocation.height;
-#if GTK_CHECK_VERSION (3, 0, 0)
cr = gdk_cairo_create (gtk_widget_get_window (GTK_WIDGET(applet)));
-#else
- gc = gdk_gc_new (gtk_widget_get_window (GTK_WIDGET(applet)));
-#endif
/* draw pixmap background */
-#if GTK_CHECK_VERSION (3, 0, 0)
bg_type = mate_panel_applet_get_background (MATE_PANEL_APPLET (applet), &color, &pattern);
-#else
- bg_type = mate_panel_applet_get_background (MATE_PANEL_APPLET (applet), &color, &background);
-#endif
if (bg_type == PANEL_PIXMAP_BACKGROUND && !applet->popped) {
/* fill with given background pixmap */
-#if GTK_CHECK_VERSION (3, 0, 0)
cairo_set_source (cr, pattern);
cairo_rectangle (cr, 0, 0, w, h);
cairo_fill (cr);
-#else
- gdk_draw_drawable (gtk_widget_get_window (GTK_WIDGET(applet)), gc, background, 0, 0, 0, 0, w, h);
-#endif
}
/* draw color background */
if (bg_type == PANEL_COLOR_BACKGROUND && !applet->popped) {
-#if GTK_CHECK_VERSION (3, 0, 0)
gdk_cairo_set_source_rgba (cr, &color);
cairo_rectangle (cr, 0, 0, w, h);
cairo_fill (cr);
-#else
- gdk_gc_set_rgb_fg_color (gc,&color);
- gdk_gc_set_fill (gc,GDK_SOLID);
- gdk_draw_rectangle (gtk_widget_get_window (GTK_WIDGET(applet)), gc, TRUE, 0, 0, w, h);
-#endif
}
/* fill with selected color if popped */
if (applet->popped) {
-#if GTK_CHECK_VERSION (3, 0, 0)
context = gtk_widget_get_style_context (GTK_WIDGET(applet));
gtk_style_context_get_color (context, GTK_STATE_FLAG_SELECTED, &color);
gdk_cairo_set_source_rgba (cr, &color);
cairo_rectangle (cr, 0, 0, w, h);
cairo_fill (cr);
-#else
- color = gtk_rc_get_style (GTK_WIDGET(applet))->bg[GTK_STATE_SELECTED];
- gdk_gc_set_rgb_fg_color (gc,&color);
- gdk_gc_set_fill (gc,GDK_SOLID);
- gdk_draw_rectangle (gtk_widget_get_window (GTK_WIDGET(applet)), gc, TRUE, 0, 0, w, h);
-#endif
}
/* draw icon at center */
-#if GTK_CHECK_VERSION (3, 0, 0)
gdk_cairo_set_source_pixbuf (cr, applet->icon, (w - applet->icon_width)/2, (h - applet->icon_height)/2);
cairo_paint (cr);
-#else
- gdk_draw_pixbuf (gtk_widget_get_window (GTK_WIDGET(applet)), gc, applet->icon,
- 0, 0, (w - applet->icon_width)/2, (h - applet->icon_height)/2,
- applet->icon_width, applet->icon_height,
- GDK_RGB_DITHER_NONE, 0, 0);
-#endif
-#if GTK_CHECK_VERSION (3, 0, 0)
cairo_destroy (cr);
-#else
- g_object_unref (gc);
-#endif
return TRUE;
}
@@ -380,11 +329,7 @@ gpm_applet_draw_cb (GpmBrightnessApplet *applet)
static void
gpm_applet_change_background_cb (GpmBrightnessApplet *applet,
MatePanelAppletBackgroundType arg1,
-#if GTK_CHECK_VERSION (3, 0, 0)
cairo_pattern_t *arg2, gpointer data)
-#else
- GdkColor *arg2, GdkPixmap *arg3, gpointer data)
-#endif
{
gtk_widget_queue_draw (GTK_WIDGET (applet));
}
@@ -520,19 +465,19 @@ gpm_applet_key_press_cb (GpmBrightnessApplet *applet, GdkEventKey *event)
int i;
switch (event->keyval) {
- case GDK_KP_Enter:
- case GDK_ISO_Enter:
- case GDK_3270_Enter:
- case GDK_Return:
- case GDK_space:
- case GDK_KP_Space:
- case GDK_Escape:
+ case GDK_KEY_KP_Enter:
+ case GDK_KEY_ISO_Enter:
+ case GDK_KEY_3270_Enter:
+ case GDK_KEY_Return:
+ case GDK_KEY_space:
+ case GDK_KEY_KP_Space:
+ case GDK_KEY_Escape:
/* if yet popped, release focus and hide then redraw applet unselected */
if (applet->popped) {
gdk_keyboard_ungrab (GDK_CURRENT_TIME);
gdk_pointer_ungrab (GDK_CURRENT_TIME);
gtk_grab_remove (GTK_WIDGET(applet));
- gtk_widget_set_state (GTK_WIDGET(applet), GTK_STATE_NORMAL);
+ gtk_widget_set_state_flags (GTK_WIDGET(applet), GTK_STATE_FLAG_NORMAL, TRUE);
gtk_widget_hide (applet->popup);
applet->popped = FALSE;
gpm_applet_draw_cb (applet);
@@ -542,25 +487,25 @@ gpm_applet_key_press_cb (GpmBrightnessApplet *applet, GdkEventKey *event)
return FALSE;
}
break;
- case GDK_Page_Up:
+ case GDK_KEY_Page_Up:
for (i = 0;i < 10;i++) {
gpm_applet_plus_cb (NULL, applet);
}
return TRUE;
break;
- case GDK_Left:
- case GDK_Up:
+ case GDK_KEY_Left:
+ case GDK_KEY_Up:
gpm_applet_plus_cb (NULL, applet);
return TRUE;
break;
- case GDK_Page_Down:
+ case GDK_KEY_Page_Down:
for (i = 0;i < 10;i++) {
gpm_applet_minus_cb (NULL, applet);
}
return TRUE;
break;
- case GDK_Right:
- case GDK_Down:
+ case GDK_KEY_Right:
+ case GDK_KEY_Down:
gpm_applet_minus_cb (NULL, applet);
return TRUE;
break;
@@ -604,6 +549,35 @@ gpm_applet_scroll_cb (GpmBrightnessApplet *applet, GdkEventScroll *event)
}
/**
+ * on_popup_button_press:
+ * @applet: Brightness applet instance
+ * @event: The button press event
+ *
+ * hide popup on focus loss.
+ **/
+static gboolean
+on_popup_button_press (GtkWidget *widget,
+ GdkEventButton *event,
+ GpmBrightnessApplet *applet)
+{
+ GtkWidget *event_widget;
+
+ if (event->type != GDK_BUTTON_PRESS) {
+ return FALSE;
+ }
+ event_widget = gtk_get_event_widget ((GdkEvent *)event);
+ g_debug ("Button press: %p dock=%p", event_widget, widget);
+ if (event_widget == widget) {
+ gtk_widget_hide (applet->popup);
+ applet->popped = FALSE;
+ gpm_applet_update_tooltip (applet);
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+/**
* gpm_applet_create_popup:
* @applet: Brightness applet instance
*
@@ -619,10 +593,10 @@ gpm_applet_create_popup (GpmBrightnessApplet *applet)
/* slider */
if (MATE_PANEL_APPLET_VERTICAL(orientation)) {
- applet->slider = gtk_hscale_new_with_range (0, 100, 1);
+ applet->slider = gtk_scale_new_with_range (GTK_ORIENTATION_HORIZONTAL, 0, 100, 1);
gtk_widget_set_size_request (applet->slider, 100, -1);
} else {
- applet->slider = gtk_vscale_new_with_range (0, 100, 1);
+ applet->slider = gtk_scale_new_with_range (GTK_ORIENTATION_VERTICAL, 0, 100, 1);
gtk_widget_set_size_request (applet->slider, -1, 100);
}
gtk_range_set_inverted (GTK_RANGE(applet->slider), TRUE);
@@ -633,18 +607,20 @@ gpm_applet_create_popup (GpmBrightnessApplet *applet)
/* minus button */
applet->btn_minus = gtk_button_new_with_label ("\342\210\222"); /* U+2212 MINUS SIGN */
gtk_button_set_relief (GTK_BUTTON(applet->btn_minus), GTK_RELIEF_NONE);
+ gtk_widget_set_can_focus (applet->btn_minus, FALSE);
g_signal_connect (G_OBJECT(applet->btn_minus), "pressed", G_CALLBACK(gpm_applet_minus_cb), applet);
/* plus button */
applet->btn_plus = gtk_button_new_with_label ("+");
gtk_button_set_relief (GTK_BUTTON(applet->btn_plus), GTK_RELIEF_NONE);
+ gtk_widget_set_can_focus (applet->btn_plus, FALSE);
g_signal_connect (G_OBJECT(applet->btn_plus), "pressed", G_CALLBACK(gpm_applet_plus_cb), applet);
/* box */
if (MATE_PANEL_APPLET_VERTICAL(orientation)) {
- box = gtk_hbox_new (FALSE, 1);
+ box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 1);
} else {
- box = gtk_vbox_new (FALSE, 1);
+ box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 1);
}
gtk_box_pack_start (GTK_BOX(box), applet->btn_plus, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX(box), applet->slider, TRUE, TRUE, 0);
@@ -657,12 +633,25 @@ gpm_applet_create_popup (GpmBrightnessApplet *applet)
/* window */
applet->popup = gtk_window_new (GTK_WINDOW_POPUP);
-#if !GTK_CHECK_VERSION (2, 90, 0)
- GTK_WIDGET_UNSET_FLAGS (applet->popup, GTK_TOPLEVEL);
-#endif
gtk_window_set_type_hint (GTK_WINDOW(applet->popup), GDK_WINDOW_TYPE_HINT_UTILITY);
- gtk_widget_set_parent (applet->popup, GTK_WIDGET(applet));
gtk_container_add (GTK_CONTAINER(applet->popup), frame);
+
+ /* window events */
+ g_signal_connect (G_OBJECT(applet->popup), "button-press-event",
+ G_CALLBACK (on_popup_button_press), applet);
+
+ g_signal_connect (G_OBJECT(applet->popup), "key-press-event",
+ G_CALLBACK(gpm_applet_key_press_cb), applet);
+
+ /* Set volume control frame, slider and toplevel window to follow panel volume control theme */
+ GtkWidget *toplevel = gtk_widget_get_toplevel (frame);
+ GtkStyleContext *context;
+ context = gtk_widget_get_style_context (GTK_WIDGET(toplevel));
+ gtk_style_context_add_class(context,"mate-panel-applet-slider");
+ /*Make transparency possible in gtk3 theme3 */
+ GdkScreen *screen = gtk_widget_get_screen(GTK_WIDGET(toplevel));
+ GdkVisual *visual = gdk_screen_get_rgba_visual(screen);
+ gtk_widget_set_visual(GTK_WIDGET(toplevel), visual);
}
/**
@@ -676,6 +665,11 @@ gpm_applet_popup_cb (GpmBrightnessApplet *applet, GdkEventButton *event)
{
GtkAllocation allocation, popup_allocation;
gint orientation, x, y;
+ GdkWindow *window;
+ GdkDisplay *display;
+ GdkDeviceManager *device_manager;
+ GdkDevice *pointer;
+ GdkDevice *keyboard;
/* react only to left mouse button */
if (event->button != 1) {
@@ -684,23 +678,19 @@ gpm_applet_popup_cb (GpmBrightnessApplet *applet, GdkEventButton *event)
/* if yet popped, release focus and hide then redraw applet unselected */
if (applet->popped) {
- gdk_keyboard_ungrab (GDK_CURRENT_TIME);
- gdk_pointer_ungrab (GDK_CURRENT_TIME);
- gtk_grab_remove (GTK_WIDGET(applet));
- gtk_widget_set_state (GTK_WIDGET(applet), GTK_STATE_NORMAL);
gtk_widget_hide (applet->popup);
applet->popped = FALSE;
- gpm_applet_draw_cb (applet);
gpm_applet_update_tooltip (applet);
return TRUE;
}
- /* update UI for current brightness */
- gpm_applet_update_popup_level (applet);
+ /* don't show the popup if brightness is unavailable */
+ if (applet->level == -1) {
+ return FALSE;
+ }
/* otherwise pop */
applet->popped = TRUE;
- gpm_applet_draw_cb (applet);
/* create a new popup (initial or if panel parameters changed) */
if (applet->popup == NULL) {
@@ -748,16 +738,19 @@ gpm_applet_popup_cb (GpmBrightnessApplet *applet, GdkEventButton *event)
gtk_window_move (GTK_WINDOW (applet->popup), x, y);
/* grab input */
- gtk_widget_grab_focus (GTK_WIDGET(applet));
- gtk_grab_add (GTK_WIDGET(applet));
- gdk_pointer_grab (gtk_widget_get_window (GTK_WIDGET(applet)), TRUE,
- GDK_BUTTON_PRESS_MASK |
- GDK_BUTTON_RELEASE_MASK |
- GDK_POINTER_MOTION_MASK,
- NULL, NULL, GDK_CURRENT_TIME);
- gdk_keyboard_grab (gtk_widget_get_window (GTK_WIDGET(applet)),
- TRUE, GDK_CURRENT_TIME);
- gtk_widget_set_state (GTK_WIDGET(applet), GTK_STATE_SELECTED);
+ window = gtk_widget_get_window (GTK_WIDGET (applet->popup));
+ display = gdk_window_get_display (window);
+ device_manager = gdk_display_get_device_manager (display);
+ pointer = gdk_device_manager_get_client_pointer (device_manager);
+ keyboard = gdk_device_get_associated_device (pointer);
+ gdk_device_grab (pointer, window,
+ GDK_OWNERSHIP_NONE, TRUE,
+ GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK,
+ NULL, GDK_CURRENT_TIME);
+ gdk_device_grab (keyboard, window,
+ GDK_OWNERSHIP_NONE, TRUE,
+ GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK,
+ NULL, GDK_CURRENT_TIME);
return TRUE;
}
@@ -794,7 +787,7 @@ gpm_applet_stop_scroll_events_cb (GtkWidget *widget, GdkEvent *event)
static void
gpm_applet_dialog_about_cb (GtkAction *action, gpointer data)
{
- MateAboutDialog *about;
+ GtkAboutDialog *about;
GdkPixbuf *logo =
gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
@@ -806,6 +799,11 @@ gpm_applet_dialog_about_cb (GtkAction *action, gpointer data)
"Richard Hughes <[email protected]>",
NULL
};
+
+ char copyright[] = \
+ "Copyright \xc2\xa9 2012-2016 MATE developers\n"
+ "Copyright \xc2\xa9 2006 Benjamin Canou";
+
const char *documenters [] = {
NULL
};
@@ -830,17 +828,17 @@ gpm_applet_dialog_about_cb (GtkAction *action, gpointer data)
license_trans = g_strconcat (_(license[0]), "\n\n", _(license[1]), "\n\n",
_(license[2]), "\n\n", _(license[3]), "\n", NULL);
- about = (MateAboutDialog*) mate_about_dialog_new ();
- mate_about_dialog_set_program_name (about, GPM_BRIGHTNESS_APPLET_NAME);
- mate_about_dialog_set_version (about, VERSION);
- mate_about_dialog_set_copyright (about, _("Copyright \xc2\xa9 2006 Benjamin Canou"));
- mate_about_dialog_set_comments (about, GPM_BRIGHTNESS_APPLET_DESC);
- mate_about_dialog_set_authors (about, authors);
- mate_about_dialog_set_documenters (about, documenters);
- mate_about_dialog_set_translator_credits (about, translator_credits);
- mate_about_dialog_set_logo (about, logo);
- mate_about_dialog_set_license (about, license_trans);
- mate_about_dialog_set_website (about, GPM_HOMEPAGE_URL);
+ about = (GtkAboutDialog*) gtk_about_dialog_new ();
+ gtk_about_dialog_set_program_name (about, GPM_BRIGHTNESS_APPLET_NAME);
+ gtk_about_dialog_set_version (about, VERSION);
+ gtk_about_dialog_set_copyright (about, copyright);
+ gtk_about_dialog_set_comments (about, GPM_BRIGHTNESS_APPLET_DESC);
+ gtk_about_dialog_set_authors (about, authors);
+ gtk_about_dialog_set_documenters (about, documenters);
+ gtk_about_dialog_set_translator_credits (about, translator_credits);
+ gtk_about_dialog_set_logo (about, logo);
+ gtk_about_dialog_set_license (about, license_trans);
+ gtk_about_dialog_set_website (about, "http://www.mate-desktop.org/");
g_signal_connect (G_OBJECT(about), "response",
G_CALLBACK(gtk_widget_destroy), NULL);
@@ -864,19 +862,16 @@ gpm_applet_help_cb (GtkAction *action, gpointer data)
/**
* gpm_applet_destroy_cb:
- * @object: Class instance to destroy
+ * @widget: Class instance to destroy
**/
static void
-gpm_applet_destroy_cb (GtkObject *object)
+gpm_applet_destroy_cb (GtkWidget *widget)
{
- GpmBrightnessApplet *applet = GPM_BRIGHTNESS_APPLET(object);
+ GpmBrightnessApplet *applet = GPM_BRIGHTNESS_APPLET(widget);
- if (applet->monitor != NULL) {
- g_object_unref (applet->monitor);
- }
- if (applet->icon != NULL) {
+ g_bus_unwatch_name (applet->bus_watch_id);
+ if (applet->icon != NULL)
g_object_unref (applet->icon);
- }
}
/**
@@ -957,25 +952,30 @@ gpm_brightness_applet_dbus_disconnect (GpmBrightnessApplet *applet)
}
/**
- * monitor_connection_cb:
- * @proxy: The dbus raw proxy
- * @status: The status of the service, where TRUE is connected
- * @screensaver: This class instance
+ * gpm_brightness_applet_name_appeared_cb:
**/
static void
-monitor_connection_cb (EggDbusMonitor *monitor,
- gboolean status,
- GpmBrightnessApplet *applet)
+gpm_brightness_applet_name_appeared_cb (GDBusConnection *connection,
+ const gchar *name,
+ const gchar *name_owner,
+ GpmBrightnessApplet *applet)
{
- if (status) {
- gpm_brightness_applet_dbus_connect (applet);
- gpm_applet_update_tooltip (applet);
- gpm_applet_draw_cb (applet);
- } else {
- gpm_brightness_applet_dbus_disconnect (applet);
- gpm_applet_update_tooltip (applet);
- gpm_applet_draw_cb (applet);
- }
+ gpm_brightness_applet_dbus_connect (applet);
+ gpm_applet_update_tooltip (applet);
+ gpm_applet_draw_cb (applet);
+}
+
+/**
+ * gpm_brightness_applet_name_vanished_cb:
+ **/
+void
+gpm_brightness_applet_name_vanished_cb (GDBusConnection *connection,
+ const gchar *name,
+ GpmBrightnessApplet *applet)
+{
+ gpm_brightness_applet_dbus_disconnect (applet);
+ gpm_applet_update_tooltip (applet);
+ gpm_applet_draw_cb (applet);
}
/**
@@ -1001,12 +1001,14 @@ gpm_brightness_applet_init (GpmBrightnessApplet *applet)
GPM_DATA G_DIR_SEPARATOR_S "icons");
- applet->monitor = egg_dbus_monitor_new ();
- g_signal_connect (applet->monitor, "connection-changed",
- G_CALLBACK (monitor_connection_cb), applet);
- connection = dbus_g_bus_get (DBUS_BUS_SESSION, NULL);
- egg_dbus_monitor_assign (applet->monitor, connection, GPM_DBUS_SERVICE);
- gpm_brightness_applet_dbus_connect (applet);
+ /* monitor the daemon */
+ applet->bus_watch_id =
+ g_bus_watch_name (G_BUS_TYPE_SESSION,
+ GPM_DBUS_SERVICE,
+ G_BUS_NAME_WATCHER_FLAGS_NONE,
+ (GBusNameAppearedCallback) gpm_brightness_applet_name_appeared_cb,
+ (GBusNameVanishedCallback) gpm_brightness_applet_name_vanished_cb,
+ applet, NULL);
/* coldplug */
applet->call_worked = gpm_applet_get_brightness (applet);
@@ -1034,13 +1036,8 @@ gpm_brightness_applet_init (GpmBrightnessApplet *applet)
/* We use g_signal_connect_after because letting the panel draw
* the background is the only way to have the correct
* background when a theme defines a background picture. */
-#if GTK_CHECK_VERSION (3, 0, 0)
g_signal_connect_after (G_OBJECT(applet), "draw",
G_CALLBACK(gpm_applet_draw_cb), NULL);
-#else
- g_signal_connect_after (G_OBJECT(applet), "expose-event",
- G_CALLBACK(gpm_applet_draw_cb), NULL);
-#endif
g_signal_connect (G_OBJECT(applet), "change-background",
G_CALLBACK(gpm_applet_change_background_cb), NULL);