From: Kristian Høgsberg Date: Mon, 9 Jan 2012 14:26:38 +0000 (-0500) Subject: dnd: Use a widget for enter/leave handling X-Git-Tag: 0.85.0~98 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ac7619f3f491d73a8d3c5bc643b5390f5a6de900;p=profile%2Fivi%2Fweston.git dnd: Use a widget for enter/leave handling --- diff --git a/clients/dnd.c b/clients/dnd.c index 5ec3ba3..a2067e8 100644 --- a/clients/dnd.c +++ b/clients/dnd.c @@ -41,6 +41,7 @@ struct dnd { struct display *display; uint32_t key; struct item *items[16]; + struct widget *widget; }; struct dnd_drag { @@ -431,12 +432,11 @@ lookup_cursor(struct dnd *dnd, int x, int y) return POINTER_LEFT_PTR; } -static int -dnd_enter_handler(struct window *window, - struct input *input, uint32_t time, - int32_t x, int32_t y, void *data) +static void +dnd_enter_handler(struct widget *widget, + struct input *input, uint32_t time, + int32_t x, int32_t y, void *data) { - return lookup_cursor(data, x, y); } static int @@ -536,11 +536,13 @@ dnd_create(struct display *display) window_set_keyboard_focus_handler(dnd->window, keyboard_focus_handler); window_set_button_handler(dnd->window, dnd_button_handler); - window_set_enter_handler(dnd->window, dnd_enter_handler); window_set_motion_handler(dnd->window, dnd_motion_handler); window_set_data_handler(dnd->window, dnd_data_handler); window_set_drop_handler(dnd->window, dnd_drop_handler); + dnd->widget = window_add_widget(dnd->window, dnd); + widget_set_enter_handler(dnd->widget, dnd_enter_handler); + width = 4 * (item_width + item_padding) + item_padding; height = 4 * (item_height + item_padding) + item_padding; window_set_child_size(dnd->window, width, height);