diff options
author | Ray Strode <halfline@hawaii.rr.com> | 2003-05-30 02:53:42 +0000 |
---|---|---|
committer | Ray Strode <halfline@src.gnome.org> | 2003-05-30 02:53:42 +0000 |
commit | d1a853557b06c49b5d0f187e41b0455b458b715b (patch) | |
tree | 8070e23f3e9eca5d920e2f2c6ebdbf3663450cf8 /src | |
parent | f441033959ffd7d09c196c98ff280541be959218 (diff) | |
download | mutter-d1a853557b06c49b5d0f187e41b0455b458b715b.tar.gz |
Get and use double-click speed from GtkSettings (Bug #103218).
2003-05-29 Ray Strode <halfline@hawaii.rr.com>
Get and use double-click speed from GtkSettings (Bug #103218).
* src/ui.c, src/ui.h:
add function meta_ui_get_double_click_timeout for looking up
the global double-click speed.
* src/display.c, src/display.h: remove double_click_time
field from MetaDisplay and use meta_ui_get_double_click_timeout
instead.
Diffstat (limited to 'src')
-rw-r--r-- | src/display.c | 3 | ||||
-rw-r--r-- | src/display.h | 1 | ||||
-rw-r--r-- | src/ui.c | 20 | ||||
-rw-r--r-- | src/ui.h | 3 |
4 files changed, 23 insertions, 4 deletions
diff --git a/src/display.c b/src/display.c index eceaa0427..523fa1c66 100644 --- a/src/display.c +++ b/src/display.c @@ -459,7 +459,6 @@ meta_display_open (const char *name) display->window_ids = g_hash_table_new (meta_unsigned_long_hash, meta_unsigned_long_equal); - display->double_click_time = 250; display->last_button_time = 0; display->last_button_xwindow = None; display->last_button_num = 0; @@ -1152,7 +1151,7 @@ event_callback (XEvent *event, /* mark double click events, kind of a hack, oh well. */ if (((int)event->xbutton.button) == display->last_button_num && event->xbutton.window == display->last_button_xwindow && - event->xbutton.time < (display->last_button_time + display->double_click_time)) + event->xbutton.time < (display->last_button_time + meta_ui_get_double_click_timeout ())) { display->is_double_click = TRUE; meta_topic (META_DEBUG_EVENTS, diff --git a/src/display.h b/src/display.h index c73c61593..009566515 100644 --- a/src/display.h +++ b/src/display.h @@ -205,7 +205,6 @@ struct _MetaDisplay Window no_focus_window; /* for double click */ - int double_click_time; Time last_button_time; Window last_button_xwindow; int last_button_num; @@ -765,3 +765,23 @@ meta_stock_icons_init (void) g_object_unref (G_OBJECT (factory)); } + +int +meta_ui_get_double_click_timeout (void) +{ + GtkSettings *settings; + GObjectClass *klass; + int timeout = 0; + + settings = gtk_settings_get_default (); + + klass = G_OBJECT_CLASS (GTK_SETTINGS_GET_CLASS (settings)); + if (g_object_class_find_property (klass, "gtk-double-click-time") == NULL) + { + return 250; + } + + g_object_get (G_OBJECT (settings), "gtk-double-click-time", &timeout, NULL); + + return timeout; +} @@ -165,7 +165,8 @@ gboolean meta_ui_parse_modifier (const char *accel, gboolean meta_ui_window_is_widget (MetaUI *ui, Window xwindow); +int meta_ui_get_double_click_timeout (void); + #include "tabpopup.h" #endif - |