Changeset 49912 in webkit


Ignore:
Timestamp:
Oct 21, 2009 11:55:50 AM (15 years ago)
Author:
eric@webkit.org
Message:

2009-10-21 Alejandro G. Castro <alex@igalia.com>

Reviewed by Xan Lopez.

[GTK] Initialize the events completly before emitting them.
https://bugs.webkit.org/show_bug.cgi?id=30633

  • WebKitTools/DumpRenderTree/gtk/EventSender.cpp:
Location:
trunk/WebKitTools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebKitTools/ChangeLog

    r49910 r49912  
     12009-10-21  Alejandro G. Castro  <alex@igalia.com>
     2
     3        Reviewed by Xan Lopez.
     4
     5        [GTK] Initialize the events completly before emitting them.
     6        https://bugs.webkit.org/show_bug.cgi?id=30633
     7
     8        * WebKitTools/DumpRenderTree/gtk/EventSender.cpp:
     9
    1102009-10-21  Kevin Ollivier  <kevino@theolliviers.com>
    211
  • trunk/WebKitTools/DumpRenderTree/gtk/EventSender.cpp

    r49638 r49912  
    5454
    5555static bool down = false;
     56static bool currentEventButton = 1;
    5657static bool dragMode = true;
    5758static bool replayingSavedEvents = false;
     
    146147        g_return_val_if_fail((!exception || !*exception), JSValueMakeUndefined(context));
    147148    }
     149
     150    currentEventButton = event.button.button;
     151
    148152    event.button.x = lastMousePositionX;
    149153    event.button.y = lastMousePositionY;
    150154    event.button.window = GTK_WIDGET(view)->window;
     155    event.button.time = GDK_CURRENT_TIME;
     156    event.button.device = gdk_device_get_core_pointer();
     157
     158    int x_root, y_root;
     159    gdk_window_get_root_coords(GTK_WIDGET(view)->window, lastMousePositionX, lastMousePositionY, &x_root, &y_root);
     160
     161    event.button.x_root = x_root;
     162    event.button.y_root = y_root;
    151163
    152164    updateClickCount(1);
     
    188200        g_return_val_if_fail((!exception || !*exception), JSValueMakeUndefined(context));
    189201    }
     202
     203    currentEventButton = event.button.button;
     204
    190205    event.button.x = lastMousePositionX;
    191206    event.button.y = lastMousePositionY;
    192207    event.button.window = GTK_WIDGET(view)->window;
     208    event.button.time = GDK_CURRENT_TIME;
     209    event.button.device = gdk_device_get_core_pointer();
     210
     211    int x_root, y_root;
     212    gdk_window_get_root_coords(GTK_WIDGET(view)->window, lastMousePositionX, lastMousePositionY, &x_root, &y_root);
     213
     214    event.button.x_root = x_root;
     215    event.button.y_root = y_root;
    193216
    194217    if ((dragMode && !replayingSavedEvents) || msgQueue[endOfQueue].delay) {
     
    224247
    225248    GdkEvent event;
     249    memset(&event, 0, sizeof(event));
    226250    event.type = GDK_MOTION_NOTIFY;
    227251    event.motion.x = lastMousePositionX;
     
    229253    event.motion.time = GDK_CURRENT_TIME;
    230254    event.motion.window = GTK_WIDGET(view)->window;
     255    event.motion.device = gdk_device_get_core_pointer();
     256
     257    int x_root, y_root;
     258    gdk_window_get_root_coords(GTK_WIDGET(view)->window, lastMousePositionX, lastMousePositionY, &x_root, &y_root);
     259
     260    event.motion.x_root = x_root;
     261    event.motion.y_root = y_root;
     262
     263    if (down) {
     264        if (currentEventButton == 1)
     265            event.motion.state = GDK_BUTTON1_MASK;
     266        else if (currentEventButton == 2)
     267            event.motion.state = GDK_BUTTON2_MASK;
     268        else if (currentEventButton == 3)
     269            event.motion.state = GDK_BUTTON3_MASK;
     270    } else
     271        event.motion.state = 0;
    231272
    232273    if (dragMode && down && !replayingSavedEvents) {
Note: See TracChangeset for help on using the changeset viewer.