Ticket #4068: 0001-mi-Ensure-pointer-emulating-touch-events-update-the-.patch

File 0001-mi-Ensure-pointer-emulating-touch-events-update-the-.patch, 1.3 KB (added by garnacho, 11 years ago)

Updated first xorg patch

  • mi/mieq.c

    From 2d9ffc0b2ac1ce7d7e1fcd465f5c1b17b2438bdb Mon Sep 17 00:00:00 2001
    From: Carlos Garnacho <carlosg@gnome.org>
    Date: Tue, 11 Dec 2012 18:15:18 +0100
    Subject: [PATCH 1/2] mi: Ensure pointer emulating touch events update the
     sprite
    
    Different miPointerSpriteFuncRec implementations do a varying
    business at ultimately calling miPointerUpdateSprite(), this
    particularly fails when using the plain mi sprite on touch events,
    where the sprite is just updated on window crossings.
    
    So, ensure miPointerUpdateSprite() is called generically for
    pointer emulating touch events as with regular motion events.
    
    Signed-off-by: Carlos Garnacho <carlosg@gnome.org>
    ---
     mi/mieq.c | 6 +++++-
     1 file changed, 5 insertions(+), 1 deletion(-)
    
    diff --git a/mi/mieq.c b/mi/mieq.c
    index b2c7769..d374b28 100644
    a b mieqProcessInputEvents(void) 
    623623        mieqProcessDeviceEvent(dev, &event, screen);
    624624
    625625        /* Update the sprite now. Next event may be from different device. */
    626         if (event.any.type == ET_Motion && master)
     626        if (master &&
     627            (event.any.type == ET_Motion ||
     628             ((event.any.type == ET_TouchBegin ||
     629               event.any.type == ET_TouchUpdate) &&
     630              event.device_event.flags & TOUCH_POINTER_EMULATED)))
    627631            miPointerUpdateSprite(dev);
    628632
    629633#ifdef XQUARTZ