diff options
author | Bolian Yin <bolian.yin@sun.com> | 2003-09-22 11:19:00 +0800 |
---|---|---|
committer | Bolian Yin <byin@src.gnome.org> | 2003-09-22 11:19:00 +0800 |
commit | 88d4fd5eac6bf7bcfd845f548efabc9801199cd2 (patch) | |
tree | 315ccd29c815a961e66ac9db129f960d10339d1b /widgets/misc/e-dateedit.c | |
parent | 939c8a4b8284418ad379cdbd990353b9941b551a (diff) | |
download | gsoc2013-evolution-88d4fd5eac6bf7bcfd845f548efabc9801199cd2.tar.gz gsoc2013-evolution-88d4fd5eac6bf7bcfd845f548efabc9801199cd2.tar.zst gsoc2013-evolution-88d4fd5eac6bf7bcfd845f548efabc9801199cd2.zip |
Fixes #1245. ECalendar should be usable with the keyboard
2003-09-19 Bolian Yin <bolian.yin@sun.com>
Fixes #1245. ECalendar should be usable with the keyboard
*misc/e-calendar-item.c (e_calendar_item_focus): new func, focus handler.
(e_calendar_item_key_press_event): new func, key press event handler
(e_calendar_item_selection_add_days, e_calendar_item_stop_selecting): helpers.
(e_calendar_item_ensure_days_visible, e_calendar_item_set_selection_if_emission):
add the flag to control if we should emit e-calendar signals.
(e_calendar_item_class_init): register focus handler.
(e_calendar_item_event): add code for GDK_FOCUS_CHANGE and GDK_KEY_PRESS.
*misc/e-calendar.c (e_calendar_focus): new func, focus handler
(e_calendar_button_has_focus): new func, if prev/next button has focus.
(e_calendar_on_next_clicked, e_calendar_on_prev_clicked): click signal handler
for prev/next buttons.
(e_calendar_set_focusable): set if the e-calendar is focusable
*misc/e-dateedit.c (e_date_edit_show_date_popup, hide_date_popup): grab/ungrab gdk keyboard.
svn path=/trunk/; revision=22632
Diffstat (limited to 'widgets/misc/e-dateedit.c')
-rw-r--r-- | widgets/misc/e-dateedit.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/widgets/misc/e-dateedit.c b/widgets/misc/e-dateedit.c index 31b070a2e8..c6c2ad9bc7 100644 --- a/widgets/misc/e-dateedit.c +++ b/widgets/misc/e-dateedit.c @@ -1180,6 +1180,7 @@ e_date_edit_show_date_popup (EDateEdit *dedit) position_date_popup (dedit); gtk_widget_show (priv->cal_popup); + gdk_keyboard_grab (priv->cal_popup->window, TRUE, GDK_CURRENT_TIME); gtk_widget_grab_focus (priv->cal_popup); gtk_grab_add (priv->cal_popup); gdk_pointer_grab (priv->cal_popup->window, TRUE, @@ -1365,6 +1366,7 @@ hide_date_popup (EDateEdit *dedit) gtk_widget_hide (dedit->priv->cal_popup); gtk_grab_remove (dedit->priv->cal_popup); gdk_pointer_ungrab (GDK_CURRENT_TIME); + gdk_keyboard_ungrab (GDK_CURRENT_TIME); } |