[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xorg-server: Changes to 'ubuntu+1'



 ChangeLog                         |  523 ++++++++++++++++++++++++++++++++++++++
 Xi/exevents.c                     |   38 --
 config/udev.c                     |    2 
 debian/changelog                  |    5 
 debian/control                    |    2 
 debian/serverminver               |    2 
 dix/events.c                      |   21 -
 dix/getevents.c                   |    8 
 dix/ptrveloc.c                    |    2 
 dix/touch.c                       |   38 +-
 hw/xfree86/common/xf86DGA.c       |   10 
 hw/xfree86/common/xf86Events.c    |   10 
 hw/xfree86/common/xf86Module.h    |    2 
 hw/xfree86/common/xf86Option.c    |    2 
 hw/xwin/winSetAppUserModelID.c    |    1 
 hw/xwin/winblock.c                |   32 +-
 hw/xwin/winconfig.c               |    2 
 hw/xwin/winglobals.h              |    4 
 hw/xwin/winkeybd.c                |    8 
 hw/xwin/winmultiwindowwm.c        |  115 +++++++-
 hw/xwin/winmultiwindowwndproc.c   |   61 ++--
 hw/xwin/wintrayicon.c             |    2 
 hw/xwin/winwakeup.c               |    4 
 hw/xwin/winwindow.h               |    1 
 include/input.h                   |    4 
 include/inputstr.h                |   22 -
 include/protocol-versions.h       |    2 
 include/xwin-config.h.in          |    3 
 mi/mieq.c                         |    6 
 render/animcur.c                  |    3 
 test/xi2/protocol-xiwarppointer.c |    2 
 xkb/xkbUtils.c                    |   10 
 32 files changed, 782 insertions(+), 165 deletions(-)

New commits:
commit ebf6def1a1a0aafbc3f22a0301ffa19f8c06ba0b
Author: Robert Hooker <sarvatt@ubuntu.com>
Date:   Wed Feb 6 15:01:54 2013 -0500

    Bump libxi-dev requirement and ABI_XINPUT_VERSION.

diff --git a/debian/changelog b/debian/changelog
index 81fdce7..6a15d8b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -19,6 +19,11 @@ xorg-server (2:1.13.99.901-1) UNRELEASED; urgency=low
   * Add patch to fix build failure of xserver-xorg-core-udeb.
     - 02_hide_panoramix_symbol.diff
 
+  [ Robert Hooker ]
+  * Update to a newer git snapshot, 7fe5e6dfa5c1e71
+  * Bump input ABI version in serverminver
+  * Bump libxi-dev build requirement to 2:1.6.99.1
+
  -- Robert Hooker <sarvatt@ubuntu.com>  Wed, 22 Aug 2012 11:12:17 -0400
 
 xorg-server (2:1.13.1.901-0ubuntu1) raring; urgency=low
diff --git a/debian/control b/debian/control
index 4c68425..4eee7de 100644
--- a/debian/control
+++ b/debian/control
@@ -63,7 +63,7 @@ Build-Depends:
  libxext-dev (>= 1:0.99.1),
  libx11-dev (>= 1:0.99.2),
  libxrender-dev (>= 1:0.9.0),
- libxi-dev (>= 2:1.2.99.1),
+ libxi-dev (>= 2:1.6.99.1),
  x11proto-dmx-dev (>= 1:2.2.99.1),
  libdmx-dev (>= 1:1.0.1),
  libxpm-dev (>= 1:3.5.3),
diff --git a/debian/serverminver b/debian/serverminver
index b3cde97..2c9fb36 100644
--- a/debian/serverminver
+++ b/debian/serverminver
@@ -1,3 +1,3 @@
 2:1.13.99.901
 ABI_VIDEODRV_VERSION:14.1
-ABI_XINPUT_VERSION:18.0
+ABI_XINPUT_VERSION:19.0

commit 0d6697915b78e811a6418a0a32b21a001b591cd0
Author: Robert Hooker <sarvatt@ubuntu.com>
Date:   Wed Feb 6 14:56:34 2013 -0500

    Bump ChangeLog

diff --git a/ChangeLog b/ChangeLog
index 3a69859..f010b72 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,372 @@
+commit 7fe5e6dfa5c1e71d8b7540b28c1d508687a2fbee
+Author: Jasper St. Pierre <jstpierre@mecheye.net>
+Date:   Wed Jan 23 13:11:55 2013 -0500
+
+    protocol-versions: Bump minor version of XI
+    
+    This was accidentally excluded when we added barriers.
+    
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 70b127c9f1c53bdb42f078265e67f76b464deae2
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Thu Jan 10 17:01:17 2013 -0800
+
+    config/udev: fix "removing GPU device" format string mistake
+    
+     udev.c: In function 'device_removed':
+     udev.c:270:9: warning: format '%d' expects argument of type 'int', but argument 3 has type 'const char *' [-Wformat]
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 605dfc6804a05ff2bda5692fec26c37344fd95cb
+Author: Dave Airlie <airlied@gmail.com>
+Date:   Tue Jan 22 07:39:53 2013 +1000
+
+    xserver: fix build regression since 91ab237358c6e33da854914d3de493a9cbea7637
+    
+    inputstr, double defines TouchListener typedef, maybe some gcc handles it,
+    but not all.
+    
+    fixes tinderbox
+    
+    Reported-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Signed-off-by: Dave Airlie <airlied@redhat.com>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 069d8ed3eb659c48dd2b0f8b7b8c11f092fdb362
+Merge: 591c062 d6dcde7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 20 15:58:38 2013 -0800
+
+    Merge remote-tracking branch 'jturney/xserver-next'
+
+commit 591c06277bb120ab9615633f2d28addbd3a2aa5f
+Merge: 6703a7c fa6ab7d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 20 15:52:26 2013 -0800
+
+    Merge remote-tracking branch 'whot/for-keith'
+
+commit d6dcde7a03bb38c17ffc4ec5f0ca1c161e54569f
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Sat Feb 11 12:22:17 2012 +0000
+
+    hw/xwin: Stop assuming WS_EX_APPWINDOW style in WM_SHOWWINDOW
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit 56e94403f8f9182e05428d895a983371c7737d2a
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Wed Jan 9 20:15:01 2013 +0000
+
+    hw/xwin: Use ITaskBarList interface to ensure show-on-taskbar state is updated correctly
+    
+    Use ITaskBarList interface to ensure that the taskbar notices if the window has
+    changed it's style in a way which affects if the taskbar shows it or not.
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit c94d1cb0a49106f44714f4511720a197cc549164
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Thu Jan 10 14:35:56 2013 +0000
+
+    hw/xwin: Ensure full styling is applied when the window is mapped
+    
+    Move styling update code from WM_WM_HINTS_EVENT to a function UpdateStyle(),
+    which is also invoked from WM_WM_MAP3, so everything which needs to be done
+    to style the window happens when it is mapped
+    
+    (Otherwise, the appearance of the window is sensitive to the timing of the
+    notification of the windows appearance hint properties being set relative to
+    window creation. e.g. see [1])
+    
+    [1] http://sourceware.org/ml/cygwin-xfree/2012-06/msg00004.html
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit ef61f8cacc84080c9156675f9ce26a27e8a90ac1
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Sat Mar 31 18:45:28 2012 +0100
+
+    hw/xwin: Make sure that WM_WM_HINTS_EVENT does nothing for override-redirect windows
+    
+    Future work: It looks like this code could be rationalized quite a lot: It might
+    make sense to pull the checking for override-redirect up out of UpdateIcon() and
+    UpdateName() and consolidate WM_WM_MAP2 and WM_WM_MAP3
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit 3628559e594fcbdfcc14b1e8fa60aa841f184e19
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Sun Feb 5 11:25:39 2012 +0000
+
+    hw/xwin: Add a new WM_WM_HINTS_EVENT event to update window style
+    
+    Add a new WM_WM_HINTS_EVENT event to update window style if any of the
+    properties which affect window style change
+    
+    Check PropertyNotify events for any of the window properties which we consider
+    to decide on the window style, and update the window style by sending a
+    WM_WM_HINTS_EVENT message to the WM.
+    
+    This allows the styling of the window to change during it's lifetime.
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit 066ecbd11d516ea68d7ebc7470232d01c5717546
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Thu Jan 10 14:37:45 2013 +0000
+
+    hw/xwin: Move reshape code from winUpdateWindowPosition() to the map event handler
+    
+    Move reshape code, which was only used when handling a map event, from
+    winUpdateWindowPosition(), to put it explicitly in the map event handler.
+    
+    Remove 'reshape' parameter from winUpdatePosition().
+    
+    (Note that there's no handling of the ShapeNotify event to notice when the
+    window shape changes, instead we hook the screen SetShape procedure and reshape
+    the native window then)
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit 852d1fb042f4160fe023a015f1c9a34126bf911a
+Author: Ryan Pavlik <rpavlik@iastate.edu>
+Date:   Sat Dec 1 16:58:40 2012 +0000
+
+    hw/xwin: Add missing include xwin-config.h to winglobals.h
+    
+    winglobals.h checks if RELOCATE_PROJECTROOT is defined to see if a declaration
+    of g_fLogFileChanged is needed, so must include xwin-config.h
+    
+    Signed-off-by: Ryan Pavlik <rpavlik@iastate.edu>
+    Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit ab686ce029208abf970a4bcd1435bf8411a44de9
+Author: Ryan Pavlik <rpavlik@iastate.edu>
+Date:   Wed Oct 26 17:03:25 2011 -0500
+
+    include: Add RELOCATE_PROJECTROOT to xwin-config.h header
+    
+    RELOCATE_PROJECTROOT is AC_DEFINED in configure.ac, but currently has no effect
+    as it doesn't appear in any AC_CONFIG_HEADER header.
+    
+    When packaged for Windows, we do not have a unix-style filesystem tree, where
+    file needed by the X server can be found in fixed, absolute paths under the
+    prefix (PROJECTROOT).
+    
+    Instead, the filesystem tree containing files needed by the X server and clients
+    will be installed with the directory containing the X server executable as the
+    root directory of that tree.
+    
+    (Typically, this will be in the Program Files directory, which does not have a
+    fixed name, as it can be moved, localized, or added to to indicate x86 or x64
+    binaries)
+    
+    So, RELOCATE_PROJECTROOT is used to make a native Windows build of the X server
+    look for various files (fonts, xkb data) in locations relative to the X server
+    rather than at absolute paths, by translating those paths at run-time.
+    
+    Additionally the XKEYSYMDB, XERRORDB, XLOCALEDIR env vars checked by libX11 are
+    set appropriately for clients started by the X server.
+    
+    Signed-off-by: Ryan Pavlik <rpavlik@iastate.edu>
+    Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit fa6ab7d9b2d7fd8184f1e068360607845f5c33ab
+Merge: adde4e6 0e1ab43
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Jan 11 14:58:17 2013 +1000
+
+    Merge branch 'pointer-emulation-fixes-56558-v2' into for-keith
+
+commit adde4e64480315dc5b47a727ee37d86f5cd8584f
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Jan 10 10:33:05 2013 +1000
+
+    dix: typo fix in comment
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 05ed095dd8d6cf939b4ebd9a59d70ce32705df7c
+Author: Benjamin Tissoires <benjamin.tissoires@gmail.com>
+Date:   Wed Jan 9 19:32:19 2013 +0100
+
+    dix: fix error logging occuring in signal context of GetTouchEvents
+    
+    GetTouchEvents is usually called in a signal context.
+    Calling ErrorF for the error messages leads to X complaining about log:
+    
+    (EE) BUG: triggered 'if (inSignalContext)'
+    (EE) BUG: log.c:484 in LogVMessageVerb()
+    (EE) Warning: attempting to log data in a signal unsafe manner while in signal context.
+    Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or ErrorFSigSafe().
+    The offending log format message is:
+    %s: Attempted to start touch without x/y (driver bug)
+    
+    Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit f4a58469a298c226668fd8dce375bf22331c902d
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Jan 9 13:58:56 2013 +1000
+
+    xfree86: don't access the old input handler after freeing it
+    
+    Introduced in 323869f3298cbbfe864af9404a8aed1bf7995d79
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Dave Airlie <airlied@redhat.com>
+
+commit 205cfbd6d9824fb9a67c21b19bc8f1e66c9df4d2
+Author: Dave Airlie <airlied@gmail.com>
+Date:   Sat Jan 5 18:35:42 2013 +1000
+
+    xf86: bump input ABI version to 19
+    
+    The changes to miPointerSetPosition interface from int->double breaks
+    the SIS driver build, so time to bump this.
+    
+    Signed-off-by: Dave Airlie <airlied@redhat.com>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit ad3bc571348a7007a2960bf87ae739397c5511ee
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Jan 8 11:19:09 2013 +1000
+
+    xfree86: update the device state for all DGA events (#59100)
+    
+    DGA only handles master devices but it does intercept slave device events as
+    well (since the event handlers are per event type, not per device).
+    
+    The DGA code must thus call into UpdateDeviceState to reset the button/key
+    state on the slave device before it discards the remainder of the event.
+    
+    Test case:
+    - Passive GrabModeSync on VCP
+    - Press button
+    - Enable DGA after ButtonPress
+    - AllowEvents(SyncPointer)
+    - Release button
+    
+    The button release is handled by DGAProcessPointerEvent but the device state
+    is never updated, so the slave ends up with the button permanently down.
+    And since the master's button state is the union of the slave states, the
+    master has the button permanently down.
+    
+    X.Org Bug 59100 <http://bugs.freedesktop.org/show_bug.cgi?id=59100>
+    
+    Reported-by: Steven Elliott <selliott4@austin.rr.com>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Dave Airlie <airlied@redhat.com>
+
+commit c5f2818edbec2f87383baa6c6be5c389b73ca6f9
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Jan 8 10:13:53 2013 +1000
+
+    xfree86: set event->detail for DGA pointer events
+    
+    Reported-by: Steven Elliott <selliott4@austin.rr.com>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Dave Airlie <airlied@redhat.com>
+
+commit 519d183d78e0b0eaf47a473e94f5d8611baf8463
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Mon Jan 7 10:44:33 2013 +1000
+
+    Fix two typos "requires an string value"
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 4e13dd90144dde47550aceea4db4b4329e531279
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Aug 22 10:34:07 2012 +1000
+
+    dix: don't filter RawEvents if the grab window is not the root window (#53897)
+    
+    If a XI2.1+ client has a grab on a non-root window, it  must still receive
+    raw events on the root window.
+    
+    Test case: register for XI_ButtonPress on window and XI_RawMotion on root.
+    No raw events are received once the press activates an implicit grab on the
+    window.
+    
+    X.Org Bug 53897 <http://bugs.freedesktop.org/show_bug.cgi?id=53897>
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+
+commit a2037d7080ae64ea55f7d76971716346aa3ec6d3
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Wed Nov 28 22:25:35 2012 +0000
+
+    hw/xwin: Fix MinGW build of winSetAppModelID.c
+    
+    Add missing #include <pthread.h>
+    
+    In file included from /jhbuild/checkout/xorg/xserver/hw/xwin/winSetAppUserModelID.c:31:0:
+    /jhbuild/checkout/xorg/xserver/hw/xwin/winwindow.h:140:11: error: expected declaration specifiers or ‘...’ before ‘pthread_t’
+    /jhbuild/checkout/xorg/xserver/hw/xwin/winwindow.h:141:11: error: expected declaration specifiers or ‘...’ before ‘pthread_t’
+    /jhbuild/checkout/xorg/xserver/hw/xwin/winwindow.h:142:11: error: expected declaration specifiers or ‘...’ before ‘pthread_mutex_t’
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit f57100bb36eae3b4d75f3c315973405f705b8de6
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Tue Feb 23 13:38:48 2010 +0000
+
+    hw/xwin: Process one Windows message per wakeup, rather than all of them.
+    
+    De-queuing Windows messages and X events happens in the same thread of
+    execution.  Draining the windows message queue can lead to the X event queue
+    overflowing if lots of those windows messages cause X events (e.g. if a keyboard
+    macro program has just dumped thousands of keypresses into the Windows message
+    queue).  See the mailing list thread [1] for more details.
+    
+    Processing one Windows message per wakeup, rather than all of them gives the X
+    server a chance to do stuff as well after each message.
+    
+    [1] http://cygwin.com/ml/cygwin-xfree/2010-01/msg00056.html
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit e30e1ea98720acc583f34c830a1c1b7e3e88f694
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Mon Dec 17 22:38:25 2012 +0000
+
+    hw/xwin: Fix some comments in winkeybd.c
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
+commit 6f4a48f8a55bc54b6d3e9d80734be05750c024de
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Thu Apr 1 15:08:26 2010 +0100
+
+    hw/xwin: Bring the X screen window to the front on a single left-click on the tray icon
+    
+    Bring the X screen window to the front on a single left click on the tray icon,
+    like the comment says we do
+    
+    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
+    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
+
 commit 6703a7c7cf1a349c137e247a0c8eb462ff7b07be
 Author: Keith Packard <keithp@keithp.com>
 Date:   Tue Jan 8 20:24:32 2013 -0800
@@ -11,6 +380,148 @@ Date:   Tue Jan 8 20:24:32 2013 -0800
     Signed-off-by: Keith Packard <keithp@keithp.com>
     Reviewed-by: Dave Airlie <airlied@redhat.com>
 
+commit 0e1ab433f4048b3367bb2f01d16cd00502538e4d
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Fri Jan 4 12:26:58 2013 +1000
+
+    dix: remove already-moved hunk
+    
+    Should've been removed in bc1f90a615018c05994fae3e678dd2341256cd82a, but got
+    left here due to a botched rebase.
+    
+    Fixes stray button events sent to clients after deactivating an async
+    pointer grab on a pointer-emulating-touch.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+
+commit 32a6d8a6b59c42f8d65002d7ca1cafb1957b656f
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 20 16:25:43 2012 +1000
+
+    dix: check for the right device's xi2 mask
+    
+    events.c: In function 'DeactivatePointerGrab':
+    events.c:1524:51: warning: 'dev' may be used uninitialized in this function
+    [-Wuninitialized
+    
+    dev is unset when we get here, the device to check is "mouse".
+    Introduced in ece8157a59751b3ed492fb2e1eb8d5f20221e195.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+
+commit f59499b5d05fde83813709e9848152951592120d
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Oct 30 12:44:08 2012 +1000
+
+    dix: add resource type to touch listeners
+    
+    Instead of guessing what resource type the listener is and what property to
+    retrieve, store the resource type in the listener directly.
+    
+    Breaks XIT test cases:
+    TouchGrabTestMultipleTaps.PassiveGrabPointerEmulationMultipleTouchesFastSuccession
+    
+    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=56557
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Keith Packard <keithp@keithp.com>
+    Reviewed-by: Chase Douglas <chase.douglas@ubuntu.com>
+
+commit 9ad0fdb135a1c336771aee1f6eab75a6ad874aff
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 27 11:21:17 2012 -0800
+
+    input: Record grab pointer in TouchListener
+    
+    This places a pointer to the grab related to a TouchListener directly
+    in the TouchListener structure rather than hoping to find the grab
+    later on using the resource ID.
+    
+    Passive grabs have resource ID in the resource DB so they can be
+    removed when a client exits, and those resource IDs get copied when
+    activated, but implicit grabs are constructed on-the-fly and have no
+    resource DB entry.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 91ab237358c6e33da854914d3de493a9cbea7637
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 27 11:21:16 2012 -0800
+
+    input: Pull TouchListener declaration to top-level
+    
+    No reason to have a struct declared inside another struct
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 3578cc3c2e1b5cb8eb191e2d12ad88e1bc9e6e1e
+Author: Andreas Wettstein <wettstein509@solnet.ch>
+Date:   Wed Dec 19 18:13:21 2012 +0100
+
+    xkb: Do not use base group as an array index.
+    
+    The base group is not brought into range and, therefore, using it as an array
+    index crashed the X server.  Also, at this place, we should ignore locked
+    groups, but not latched groups.  Therefore, use sum of base and latched groups,
+    brought into range.
+    
+    Reproducible with:
+    key <FK07> {
+        type= "ONE_LEVEL",
+        symbols[Group1]= [              NoSymbol ],
+        actions[Group1]= [ LatchGroup(group=-1, clearLocks) ]
+    };
+    
+    And hitting F7 will exceed the group level and access arbitrary memory.
+    
+    Signed-off-by: Andreas Wettstein <wettstein509@solnet.ch>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit df746a73410b892a4d41a2934cf9cd2e8ad7ba51
+Author: Carlos Garnacho <carlosg@gnome.org>
+Date:   Wed Dec 19 18:42:39 2012 +0100
+
+    render: Unwrap early on the animated cursor BlockHandler
+    
+    The loop above the previous call may end up triggering other
+    handlers attaching to the same function slot, so unwrapping
+    the handler after that could leave the just attached handler
+    in a dangling but not unset state.
+    
+    This issue was most visible on the XO, where destroying a
+    window with an animated cursor set and running  would trigger
+    this inconsistent state, never calling the miSpriteBlockHandler
+    again after the animated cursor is unset.
+    
+    Signed-off-by: Carlos Garnacho <carlosg@gnome.org>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
+commit 0fbd779a82919d5dbf8776be9b57a76c0eae6b14
+Author: Carlos Garnacho <carlosg@gnome.org>
+Date:   Wed Dec 19 18:42:38 2012 +0100
+
+    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 moved/updated on cursor changes.
+    
+    So, ensure miPointerUpdateSprite() is called generically for
+    pointer emulating touch events as with regular motion events.
+    
+    Signed-off-by: Carlos Garnacho <carlosg@gnome.org>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
 commit 8b328d4ee3873bc0a7a34f2cb9d301827244b98c
 Author: Aaron Plattner <aplattner@nvidia.com>
 Date:   Fri Dec 21 07:37:33 2012 -0800
@@ -52,6 +563,18 @@ Date:   Fri Dec 21 07:37:33 2012 -0800
     Reviewed-by:  Colin Harrison <colin.harrison at virgin.net>
     Signed-off-by: Keith Packard <keithp@keithp.com>
 
+commit 8f4820be7a2e0f6e286ddc85c4b75bccdbe8a730
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 20 12:44:16 2012 +1000
+
+    test/xi2: fix compiler warning
+    
+    protocol-xiwarppointer.c: In function ‘ScreenSetCursorPosition’:
+    protocol-xiwarppointer.c:71:53: warning: declaration of ‘screen’ shadows a
+    global declaration [-Wshadow]
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+
 commit bd91b05b631f13afd1f7a9d6cbc4f0c5408b523a
 Author: Keith Packard <keithp@keithp.com>
 Date:   Wed Dec 19 12:47:35 2012 -0800

commit 7fe5e6dfa5c1e71d8b7540b28c1d508687a2fbee
Author: Jasper St. Pierre <jstpierre@mecheye.net>
Date:   Wed Jan 23 13:11:55 2013 -0500

    protocol-versions: Bump minor version of XI
    
    This was accidentally excluded when we added barriers.
    
    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    Signed-off-by: Keith Packard <keithp@keithp.com>

diff --git a/include/protocol-versions.h b/include/protocol-versions.h
index cb8e213..10f5117 100644
--- a/include/protocol-versions.h
+++ b/include/protocol-versions.h
@@ -127,7 +127,7 @@
 
 /* X Input */
 #define SERVER_XI_MAJOR_VERSION			2
-#define SERVER_XI_MINOR_VERSION			2
+#define SERVER_XI_MINOR_VERSION			3
 
 /* XKB */
 #define SERVER_XKB_MAJOR_VERSION		1

commit 70b127c9f1c53bdb42f078265e67f76b464deae2
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Thu Jan 10 17:01:17 2013 -0800

    config/udev: fix "removing GPU device" format string mistake
    
     udev.c: In function 'device_removed':
     udev.c:270:9: warning: format '%d' expects argument of type 'int', but argument 3 has type 'const char *' [-Wformat]
    
    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    Signed-off-by: Keith Packard <keithp@keithp.com>

diff --git a/config/udev.c b/config/udev.c
index 454838f..de89241 100644
--- a/config/udev.c
+++ b/config/udev.c
@@ -267,7 +267,7 @@ device_removed(struct udev_device *device)
 
         if (strncmp(sysname,"card", 4) != 0)
             return;
-        ErrorF("removing GPU device %s %d\n", syspath, path);
+        ErrorF("removing GPU device %s %s\n", syspath, path);
         if (!path)
             return;
 

commit 605dfc6804a05ff2bda5692fec26c37344fd95cb
Author: Dave Airlie <airlied@gmail.com>
Date:   Tue Jan 22 07:39:53 2013 +1000

    xserver: fix build regression since 91ab237358c6e33da854914d3de493a9cbea7637
    
    inputstr, double defines TouchListener typedef, maybe some gcc handles it,
    but not all.
    
    fixes tinderbox
    
    Reported-by: Jon TURNEY <jon.turney@dronecode.org.uk>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    Signed-off-by: Keith Packard <keithp@keithp.com>

diff --git a/include/inputstr.h b/include/inputstr.h
index fc21913..48a29be 100644
--- a/include/inputstr.h
+++ b/include/inputstr.h
@@ -327,8 +327,6 @@ typedef struct _TouchPointInfo {
     size_t history_size;        /* Size of history in elements */
 } TouchPointInfoRec;
 
-typedef struct _TouchListener TouchListener;
-
 typedef struct _DDXTouchPointInfo {
     uint32_t client_id;         /* touch ID as seen in client events */
     Bool active;                /* whether or not the touch is active */

commit d6dcde7a03bb38c17ffc4ec5f0ca1c161e54569f
Author: Jon TURNEY <jon.turney@dronecode.org.uk>
Date:   Sat Feb 11 12:22:17 2012 +0000

    hw/xwin: Stop assuming WS_EX_APPWINDOW style in WM_SHOWWINDOW
    
    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>

diff --git a/hw/xwin/winmultiwindowwndproc.c b/hw/xwin/winmultiwindowwndproc.c
index f7c6f2b..0e46ea7 100644
--- a/hw/xwin/winmultiwindowwndproc.c
+++ b/hw/xwin/winmultiwindowwndproc.c
@@ -870,41 +870,36 @@ winTopLevelWindowProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
 
         /* */
         if (!pWin->overrideRedirect) {
+            HWND zstyle = HWND_NOTOPMOST;
+
             /* Flag that this window needs to be made active when clicked */
             SetProp(hwnd, WIN_NEEDMANAGE_PROP, (HANDLE) 1);
 
-            if (!(GetWindowLongPtr(hwnd, GWL_EXSTYLE) & WS_EX_APPWINDOW)) {
-                HWND zstyle = HWND_NOTOPMOST;
-
-                /* Set the window extended style flags */
-                SetWindowLongPtr(hwnd, GWL_EXSTYLE, WS_EX_APPWINDOW);
-
-                /* Set the transient style flags */
-                if (GetParent(hwnd))
-                    SetWindowLongPtr(hwnd, GWL_STYLE,
-                                     WS_POPUP | WS_OVERLAPPED | WS_SYSMENU |
-                                     WS_CLIPCHILDREN | WS_CLIPSIBLINGS);
-                /* Set the window standard style flags */
-                else
-                    SetWindowLongPtr(hwnd, GWL_STYLE,
-                                     (WS_POPUP | WS_OVERLAPPEDWINDOW |
-                                      WS_CLIPCHILDREN | WS_CLIPSIBLINGS)
-                                     & ~WS_CAPTION & ~WS_SIZEBOX);
-
-                winUpdateWindowPosition(hwnd, &zstyle);
-
-                {
-                    WinXWMHints hints;
-
-                    if (winMultiWindowGetWMHints(pWin, &hints)) {
-                        /*
-                           Give the window focus, unless it has an InputHint
-                           which is FALSE (this is used by e.g. glean to
-                           avoid every test window grabbing the focus)
-                         */
-                        if (!((hints.flags & InputHint) && (!hints.input))) {
-                            SetForegroundWindow(hwnd);
-                        }
+            /* Set the transient style flags */
+            if (GetParent(hwnd))
+                SetWindowLongPtr(hwnd, GWL_STYLE,
+                                 WS_POPUP | WS_OVERLAPPED | WS_SYSMENU |
+                                 WS_CLIPCHILDREN | WS_CLIPSIBLINGS);
+            /* Set the window standard style flags */
+            else
+                SetWindowLongPtr(hwnd, GWL_STYLE,
+                                 (WS_POPUP | WS_OVERLAPPEDWINDOW |
+                                  WS_CLIPCHILDREN | WS_CLIPSIBLINGS)
+                                 & ~WS_CAPTION & ~WS_SIZEBOX);
+
+            winUpdateWindowPosition(hwnd, &zstyle);
+
+            {
+                WinXWMHints hints;
+
+                if (winMultiWindowGetWMHints(pWin, &hints)) {
+                    /*
+                       Give the window focus, unless it has an InputHint
+                       which is FALSE (this is used by e.g. glean to
+                       avoid every test window grabbing the focus)
+                     */
+                    if (!((hints.flags & InputHint) && (!hints.input))) {
+                        SetForegroundWindow(hwnd);
                     }
                 }
             }

commit 56e94403f8f9182e05428d895a983371c7737d2a
Author: Jon TURNEY <jon.turney@dronecode.org.uk>
Date:   Wed Jan 9 20:15:01 2013 +0000

    hw/xwin: Use ITaskBarList interface to ensure show-on-taskbar state is updated correctly
    
    Use ITaskBarList interface to ensure that the taskbar notices if the window has
    changed it's style in a way which affects if the taskbar shows it or not.
    
    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>

diff --git a/hw/xwin/winmultiwindowwm.c b/hw/xwin/winmultiwindowwm.c
index 0c6b09a..4f6dec7 100644
--- a/hw/xwin/winmultiwindowwm.c
+++ b/hw/xwin/winmultiwindowwm.c
@@ -614,6 +614,19 @@ UpdateStyle(WMInfoPtr pWMInfo, Window iWindow)
     if (zstyle == HWND_NOTOPMOST)
         flags |= SWP_NOZORDER | SWP_NOOWNERZORDER;
     SetWindowPos(hWnd, NULL, 0, 0, 0, 0, flags);
+
+    /*
+       Use the WS_EX_TOOLWINDOW style to remove window from Alt-Tab window switcher
+
+       According to MSDN, this is supposed to remove the window from the taskbar as well,
+       if we SW_HIDE before changing the style followed by SW_SHOW afterwards.
+
+       But that doesn't seem to work reliably, and causes the window to flicker, so use
+       the iTaskbarList interface to tell the taskbar to show or hide this window.
+     */
+    winShowWindowOnTaskbar(hWnd,
+                           (GetWindowLongPtr(hWnd, GWL_EXSTYLE) &
+                            WS_EX_APPWINDOW) ? TRUE : FALSE);
 }
 
 #if 0

commit c94d1cb0a49106f44714f4511720a197cc549164
Author: Jon TURNEY <jon.turney@dronecode.org.uk>
Date:   Thu Jan 10 14:35:56 2013 +0000

    hw/xwin: Ensure full styling is applied when the window is mapped
    
    Move styling update code from WM_WM_HINTS_EVENT to a function UpdateStyle(),
    which is also invoked from WM_WM_MAP3, so everything which needs to be done
    to style the window happens when it is mapped
    
    (Otherwise, the appearance of the window is sensitive to the timing of the
    notification of the windows appearance hint properties being set relative to
    window creation. e.g. see [1])
    
    [1] http://sourceware.org/ml/cygwin-xfree/2012-06/msg00004.html
    
    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>

diff --git a/hw/xwin/winmultiwindowwm.c b/hw/xwin/winmultiwindowwm.c
index 1dc31fd..0c6b09a 100644
--- a/hw/xwin/winmultiwindowwm.c
+++ b/hw/xwin/winmultiwindowwm.c
@@ -590,6 +590,32 @@ UpdateIcon(WMInfoPtr pWMInfo, Window iWindow)
     winUpdateIcon(hWnd, pWMInfo->pDisplay, iWindow, hIconNew);
 }
 
+/*
+ * Updates the style of a HWND according to its X style properties
+ */
+
+static void
+UpdateStyle(WMInfoPtr pWMInfo, Window iWindow)
+{
+    HWND hWnd;
+    HWND zstyle = HWND_NOTOPMOST;
+    UINT flags;
+
+    hWnd = getHwnd(pWMInfo, iWindow);
+    if (!hWnd)
+        return;
+
+    /* Determine the Window style, which determines borders and clipping region... */
+    winApplyHints(pWMInfo->pDisplay, iWindow, hWnd, &zstyle);
+    winUpdateWindowPosition(hWnd, &zstyle);
+
+    /* Apply the updated window style, without changing it's show or activation state */
+    flags = SWP_FRAMECHANGED | SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE;
+    if (zstyle == HWND_NOTOPMOST)
+        flags |= SWP_NOZORDER | SWP_NOOWNERZORDER;
+    SetWindowPos(hWnd, NULL, 0, 0, 0, 0, flags);
+}
+
 #if 0
 /*
  * Fix up any differences between the X11 and Win32 window stacks
@@ -737,13 +763,8 @@ winMultiWindowWMProc(void *pArg)
                             (unsigned char *) &(pNode->msg.hwndWindow), 1);
             UpdateName(pWMInfo, pNode->msg.iWindow);
             UpdateIcon(pWMInfo, pNode->msg.iWindow);
-            {
-                HWND zstyle = HWND_NOTOPMOST;
+            UpdateStyle(pWMInfo, pNode->msg.iWindow);
 
-                winApplyHints(pWMInfo->pDisplay, pNode->msg.iWindow,
-                              pNode->msg.hwndWindow, &zstyle);
-                winUpdateWindowPosition(pNode->msg.hwndWindow, &zstyle);
-            }
 
             /* Reshape */
             {
@@ -815,8 +836,6 @@ winMultiWindowWMProc(void *pArg)
 
         case WM_WM_HINTS_EVENT:
             {
-            HWND zstyle = HWND_NOTOPMOST;
-            UINT flags;
             XWindowAttributes attr;
 
             /* Don't do anything if this is an override-redirect window */
@@ -824,18 +843,7 @@ winMultiWindowWMProc(void *pArg)
             if (attr.override_redirect)
               break;
 
-            pNode->msg.hwndWindow = getHwnd(pWMInfo, pNode->msg.iWindow);
-
-            /* Determine the Window style, which determines borders and clipping region... */
-            winApplyHints(pWMInfo->pDisplay, pNode->msg.iWindow,
-                          pNode->msg.hwndWindow, &zstyle);
-            winUpdateWindowPosition(pNode->msg.hwndWindow, &zstyle);
-
-            /* Apply the updated window style, without changing it's show or activation state */
-            flags = SWP_FRAMECHANGED | SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE;
-            if (zstyle == HWND_NOTOPMOST)
-                flags |= SWP_NOZORDER | SWP_NOOWNERZORDER;
-            SetWindowPos(pNode->msg.hwndWindow, NULL, 0, 0, 0, 0, flags);
+            UpdateStyle(pWMInfo, pNode->msg.iWindow);
             }
             break;
 

commit ef61f8cacc84080c9156675f9ce26a27e8a90ac1
Author: Jon TURNEY <jon.turney@dronecode.org.uk>
Date:   Sat Mar 31 18:45:28 2012 +0100

    hw/xwin: Make sure that WM_WM_HINTS_EVENT does nothing for override-redirect windows
    
    Future work: It looks like this code could be rationalized quite a lot: It might
    make sense to pull the checking for override-redirect up out of UpdateIcon() and
    UpdateName() and consolidate WM_WM_MAP2 and WM_WM_MAP3
    
    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>

diff --git a/hw/xwin/winmultiwindowwm.c b/hw/xwin/winmultiwindowwm.c
index 1200243..1dc31fd 100644
--- a/hw/xwin/winmultiwindowwm.c
+++ b/hw/xwin/winmultiwindowwm.c
@@ -817,6 +817,12 @@ winMultiWindowWMProc(void *pArg)
             {
             HWND zstyle = HWND_NOTOPMOST;
             UINT flags;
+            XWindowAttributes attr;
+
+            /* Don't do anything if this is an override-redirect window */
+            XGetWindowAttributes (pWMInfo->pDisplay, pNode->msg.iWindow, &attr);
+            if (attr.override_redirect)
+              break;
 
             pNode->msg.hwndWindow = getHwnd(pWMInfo, pNode->msg.iWindow);
 

commit 3628559e594fcbdfcc14b1e8fa60aa841f184e19
Author: Jon TURNEY <jon.turney@dronecode.org.uk>
Date:   Sun Feb 5 11:25:39 2012 +0000

    hw/xwin: Add a new WM_WM_HINTS_EVENT event to update window style
    
    Add a new WM_WM_HINTS_EVENT event to update window style if any of the
    properties which affect window style change
    
    Check PropertyNotify events for any of the window properties which we consider
    to decide on the window style, and update the window style by sending a
    WM_WM_HINTS_EVENT message to the WM.
    
    This allows the styling of the window to change during it's lifetime.
    
    Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
    Reviewed-by: Colin Harrison <colin.harrison@virgin.net>

diff --git a/hw/xwin/winmultiwindowwm.c b/hw/xwin/winmultiwindowwm.c
index feefcf4..1200243 100644
--- a/hw/xwin/winmultiwindowwm.c
+++ b/hw/xwin/winmultiwindowwm.c
@@ -813,6 +813,26 @@ winMultiWindowWMProc(void *pArg)
             UpdateIcon(pWMInfo, pNode->msg.iWindow);
             break;
 
+        case WM_WM_HINTS_EVENT:
+            {
+            HWND zstyle = HWND_NOTOPMOST;
+            UINT flags;
+
+            pNode->msg.hwndWindow = getHwnd(pWMInfo, pNode->msg.iWindow);
+
+            /* Determine the Window style, which determines borders and clipping region... */


Reply to: