x11proto-fixes: Changes to 'debian-unstable'
COPYING | 1
ChangeLog | 21 ++++++++++++
configure.ac | 2 -
debian/changelog | 8 ++++
debian/copyright | 1
fixesproto.txt | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
xfixesproto.h | 33 +++++++++++++++++++
xfixeswire.h | 18 ++++++++--
8 files changed, 168 insertions(+), 8 deletions(-)
New commits:
commit 95e72f38703bab96d6e6a7b9d6caf2e4934c3efa
Author: Cyril Brulebois <kibi@debian.org>
Date: Tue Mar 8 17:52:57 2011 +0100
Upload to unstable.
diff --git a/debian/changelog b/debian/changelog
index b256a6e..b6cae29 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,10 @@
-x11proto-fixes (1:5.0-1) UNRELEASED; urgency=low
+x11proto-fixes (1:5.0-1) unstable; urgency=low
* New upstream release:
- Pointer barriers.
* Update debian/copyright from upstream COPYING.
- -- Cyril Brulebois <kibi@debian.org> Tue, 08 Mar 2011 17:47:51 +0100
+ -- Cyril Brulebois <kibi@debian.org> Tue, 08 Mar 2011 17:52:51 +0100
x11proto-fixes (1:4.1.2-1) unstable; urgency=low
commit 6e14f1f53ef2b4477969abbde0cd4983d1ca1c60
Author: Cyril Brulebois <kibi@debian.org>
Date: Tue Mar 8 17:52:49 2011 +0100
Mention “Pointer barriers” in changelog.
diff --git a/debian/changelog b/debian/changelog
index 719cb98..b256a6e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
x11proto-fixes (1:5.0-1) UNRELEASED; urgency=low
- * New upstream release.
+ * New upstream release:
+ - Pointer barriers.
* Update debian/copyright from upstream COPYING.
-- Cyril Brulebois <kibi@debian.org> Tue, 08 Mar 2011 17:47:51 +0100
commit 48b45af4ee0499c25c68a72e364d4604d4de1f1d
Author: Cyril Brulebois <kibi@debian.org>
Date: Tue Mar 8 17:49:20 2011 +0100
Update debian/copyright from upstream COPYING.
diff --git a/debian/changelog b/debian/changelog
index c1e12a9..719cb98 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
x11proto-fixes (1:5.0-1) UNRELEASED; urgency=low
* New upstream release.
+ * Update debian/copyright from upstream COPYING.
-- Cyril Brulebois <kibi@debian.org> Tue, 08 Mar 2011 17:47:51 +0100
diff --git a/debian/copyright b/debian/copyright
index 6fe99c4..45cd472 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -2,6 +2,7 @@ This package was downloaded from
http://xorg.freedesktop.org/releases/individual/proto/
Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+Copyright 2010 Red Hat, Inc.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
commit da0001f85ae4d923b0e19112587fe6edbab021ff
Author: Cyril Brulebois <kibi@debian.org>
Date: Tue Mar 8 17:47:58 2011 +0100
Bump changelogs.
diff --git a/ChangeLog b/ChangeLog
index c994411..e148637 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,24 @@
+commit b8a682cc30499a751091c84efabb3012e02f47c5
+Author: Adam Jackson <ajax@redhat.com>
+Date: Mon Feb 28 09:53:30 2011 -0500
+
+ fixesproto 5.0
+
+ Signed-off-by: Adam Jackson <ajax@redhat.com>
+
+commit 9760b4bdd1f9fdd6a33b9f876c4a835ed969aa84
+Author: Adam Jackson <ajax@redhat.com>
+Date: Mon Nov 15 17:09:31 2010 -0500
+
+ fixesproto v5: Pointer barriers
+
+ v3: Review fixes:
+ - INT16 not CARD16 for coordinates
+ - BadDevice not BadMatch
+
+ Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+ Signed-off-by: Adam Jackson <ajax@redhat.com>
+
commit 29324d36b3aa6697268c9b51522afcafc2244361
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Oct 29 21:01:26 2010 -0700
diff --git a/debian/changelog b/debian/changelog
index 33c62cf..c1e12a9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+x11proto-fixes (1:5.0-1) UNRELEASED; urgency=low
+
+ * New upstream release.
+
+ -- Cyril Brulebois <kibi@debian.org> Tue, 08 Mar 2011 17:47:51 +0100
+
x11proto-fixes (1:4.1.2-1) unstable; urgency=low
[ Julien Cristau ]
commit b8a682cc30499a751091c84efabb3012e02f47c5
Author: Adam Jackson <ajax@redhat.com>
Date: Mon Feb 28 09:53:30 2011 -0500
fixesproto 5.0
Signed-off-by: Adam Jackson <ajax@redhat.com>
diff --git a/configure.ac b/configure.ac
index 6ae6bda..f85b802 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@ dnl
dnl Process this file with autoconf to create configure.
AC_PREREQ([2.60])
-AC_INIT([FixesProto], [4.1.2],
+AC_INIT([FixesProto], [5.0],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
commit 9760b4bdd1f9fdd6a33b9f876c4a835ed969aa84
Author: Adam Jackson <ajax@redhat.com>
Date: Mon Nov 15 17:09:31 2010 -0500
fixesproto v5: Pointer barriers
v3: Review fixes:
- INT16 not CARD16 for coordinates
- BadDevice not BadMatch
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Adam Jackson <ajax@redhat.com>
diff --git a/COPYING b/COPYING
index cdcb1ad..c8114fe 100644
--- a/COPYING
+++ b/COPYING
@@ -1,4 +1,5 @@
Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+Copyright 2010 Red Hat, Inc.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
diff --git a/fixesproto.txt b/fixesproto.txt
index 5ef8153..5903ac9 100644
--- a/fixesproto.txt
+++ b/fixesproto.txt
@@ -1,7 +1,7 @@
The XFIXES Extension
- Version 4.0
- Document Revision 2
- 2006-12-14
+ Version 5.0
+ Document Revision 1
+ 2010-11-15
Keith Packard
keithp@keithp.com
@@ -19,7 +19,7 @@ developers, in particular,
+ Owen Taylor for describing the issues raised with the XEMBED
mechanisms and SaveSet processing and his initial extension
- to handle this issue.
+ to handle this issue, and for pointer barriers
+ Bill Haneman for the design for cursor image tracking.
@@ -566,6 +566,90 @@ ShowCursor
Servers supporting the X Input Extension Version 2.0 or higher show
all visible cursors in response to a ShowCursor request.
+************* XFIXES VERSION 5 OR BETTER ***********
+
+12. Pointer Barriers
+
+Compositing managers and desktop environments may have UI elements in
+particular screen locations such that for a single-headed display they
+correspond to easy targets according to Fitt's Law, for example, the top
+left corner. For a multi-headed environment these corners should still be
+semi-impermeable. Pointer barriers allow the application to define
+additional constraint on cursor motion so that these areas behave as
+expected even in the face of multiple displays.
+
+Absolute positioning devices like touchscreens do not obey pointer barriers.
+There's no advantage to target acquisition to do so, since on a touchscreen
+all points are in some sense equally large, whereas for a relative
+positioning device the edges and corners are infinitely large.
+
+WarpPointer and similar requests do not obey pointer barriers, for
+essentially the same reason.
+
+12.1 Types
+
+ BARRIER: XID
+
+ BarrierDirections
+
+ BarrierPositiveX: 1 << 0
+ BarrierPositiveY: 1 << 1
+ BarrierNegativeX: 1 << 2
+ BarrierNegativeY: 1 << 3
+
+12.2 Errors
+
+ Barrier
+
+12.3 Requests
+
+CreatePointerBarrier
+
+ barrier: BARRIER
+ drawable: DRAWABLE
+ x1, y2, x2, y2: INT16
+ directions: CARD32
+ devices: LISTofDEVICEID
+
+ Creates a pointer barrier along the line specified by the given
+ coordinates on the screen associated with the given drawable. The
+ barrier has no spatial extent; it is simply a line along the left
+ or top edge of the specified pixels. Barrier coordinates are in
+ screen space.
+
+ The coordinates must be axis aligned, either x1 == x2, or
+ y1 == y2, but not both. The varying coordinates may be specified
+ in any order. For x1 == x2, either y1 > y2 or y1 < y2 is valid.
+ If the coordinates are not valid BadValue is generated.
+
+ Motion is allowed through the barrier in the directions specified:
+ setting the BarrierPositiveX bit allows travel through the barrier
+ in the positive X direction, etc. Nonsensical values (forbidding Y
+ axis travel through a vertical barrier, for example) and excess set
+ bits are ignored.
+
+ If the server supports the X Input Extension version 2 or higher,
+ the devices element names a set of master device to apply the
+ barrier to. If XIAllDevices or XIAllMasterDevices are given, the
+ barrier applies to all master devices. If a slave device is named,
+ BadDevice is generated; this does not apply to slave devices named
+ implicitly by XIAllDevices. Naming a device multiple times is
+ legal, and is treated as though it were named only once. If a
+ device is removed, the barrier continues to apply to the remaining
+ devices, but will not apply to any future device with the same ID
+ as the removed device. Nothing special happens when all matching
+ devices are removed; barriers must be explicitly destroyed.
+
+ Errors: IDChoice, Window, Value, Device
+
+DestroyPointerBarrier
+
+ barrier: BARRIER
+
+ Destroys the named barrier.
+
+ Errors: Barrier
+
99. Future compatibility
This extension is not expected to remain fixed. Future changes will
diff --git a/xfixesproto.h b/xfixesproto.h
index ed872d1..fcf409a 100644
--- a/xfixesproto.h
+++ b/xfixesproto.h
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2010 Red Hat, Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -500,6 +501,38 @@ typedef struct {
#define sz_xXFixesShowCursorReq sizeof(xXFixesShowCursorReq)
+/*************** Version 5.0 ******************/
+
+#define Barrier CARD32
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xfixesReqType;
+ CARD16 length B16;
+ Barrier barrier B32;
+ Window window B32;
+ INT16 x1 B16;
+ INT16 y1 B16;
+ INT16 x2 B16;
+ INT16 y2 B16;
+ CARD32 directions;
+ CARD16 pad B16;
+ CARD16 num_devices B16;
+ /* array of CARD16 devices */
+} xXFixesCreatePointerBarrierReq;
+
+#define sz_xXFixesCreatePointerBarrierReq 28
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xfixesReqType;
+ CARD16 length B16;
+ Barrier barrier B32;
+} xXFixesDestroyPointerBarrierReq;
+
+#define sz_xXFixesDestroyPointerBarrierReq 8
+
+#undef Barrier
#undef Region
#undef Picture
#undef Window
diff --git a/xfixeswire.h b/xfixeswire.h
index 7b43f09..432349a 100644
--- a/xfixeswire.h
+++ b/xfixeswire.h
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2010 Red Hat, Inc.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -47,7 +48,7 @@
#define _XFIXESWIRE_H_
#define XFIXES_NAME "XFIXES"
-#define XFIXES_MAJOR 4
+#define XFIXES_MAJOR 5
#define XFIXES_MINOR 0
/*************** Version 1 ******************/
@@ -85,8 +86,11 @@
/*************** Version 4 ******************/
#define X_XFixesHideCursor 29
#define X_XFixesShowCursor 30
+/*************** Version 5 ******************/
+#define X_XFixesCreatePointerBarrier 31
+#define X_XFixesDestroyPointerBarrier 32
-#define XFixesNumberRequests (X_XFixesShowCursor+1)
+#define XFixesNumberRequests (X_XFixesDestroyPointerBarrier+1)
/* Selection events share one event number */
#define XFixesSelectionNotify 0
@@ -111,7 +115,8 @@
/* errors */
#define BadRegion 0
-#define XFixesNumberErrors (BadRegion+1)
+#define BadBarrier 1
+#define XFixesNumberErrors (BadBarrier+1)
#define SaveSetNearest 0
#define SaveSetRoot 1
@@ -124,4 +129,11 @@
#define WindowRegionBounding 0
#define WindowRegionClip 1
+/*************** Version 5 ******************/
+
+#define BarrierPositiveX (1L << 0)
+#define BarrierPositiveY (1L << 1)
+#define BarrierNegativeX (1L << 2)
+#define BarrierNegativeY (1L << 3)
+
#endif /* _XFIXESWIRE_H_ */
Reply to: