- Aug 27, 2018
-
-
Keith Packard authored
Output scaling: * Changes to mivaltree to reset window clip to owner window size instead of server window size when compositing * Allocate owner window size pixmap for composite pixmap * Paint scaled image for automatic compositing * Report owner window size in events to the window owner. * Scale exposure damage in compSetRedirectBorderClip from current size to owner size to make sure the correct parts of the window are repainted. Input scaling: * Change miSpriteTrace to scale cursor coordinates when transiting an owner-sized window. Do all computations in double to handle multiple such transitions without losing bits * Add ScaleRootCoordinate in events.c. This function takes a window and a root x/y and walks up the tree scaling each time there is an owner size set. * Use ScaleRootCoordinate in FixUpEventFromWindow. * Wrap event delivery in DeliverEvent in new SaveEventRootCoord/RestoreEventRootCoord functions so that different windows receiving the same event will all receive the correct coordinates. Composite events: * Deliver CompositePixmapNotify events from compSetPixmapVisitWindow so that applications will be notified each time the pixmap changes. * Deliver CompositeOwnerWindowSizeNotify events when owner window size is set. Signed-off-by:
Keith Packard <keithp@keithp.com>
-
- Apr 05, 2018
-
-
Adam Jackson authored
In file included from ../mi/miexpose.c:83: ../mi/miexpose.c: In function ‘miHandleExposures’: ../include/regionstr.h:174:22: warning: ‘expBox.y2’ may be used uninitialized in this function [-Wmaybe-uninitialized] (_pReg)->extents = *(_pBox); ~~~~~~~~~~~~~~~~~^~~~~~~~~~ ../mi/miexpose.c:139:12: note: ‘expBox.y2’ was declared here BoxRec expBox; ^~~~~~ etc. It's initialized if (extents), and then only read if (extents), but gcc doesn't seem to figure that out. Whatever, bzero it to be explicit. Signed-off-by:
Adam Jackson <ajax@redhat.com> Acked-by:
Keith Packard <keithp@keithp.com>
-
- Apr 02, 2018
-
-
Install missing headers to the SDK directory to allow external modules to properly build against the SDK. After this commit, the list of files installed in the SDK include directory is the same as the list of files installed by the autotools-based build. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Thierry Reding <treding@nvidia.com>
-
- Feb 21, 2018
-
-
Listing the extensions is useful, despite being annoying for normal usecases. Print it only when extra (lvl 3) vebose is requested. v2: Move the logging to InitExtensions(), as requested by Adam. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Emil Velikov <emil.velikov@collabora.com>
-
- Feb 19, 2018
-
-
../include/events.h:32:14: error: #if with no expression Signed-off-by:
Laurent Carlier <lordheavym@gmail.com>
-
- Feb 14, 2018
-
-
Adam Jackson authored
This was only separate because GLX was loadable. The frontend is now linked statically, so we can use the static extension list directly. Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
Adam Jackson authored
Add a stub for Xnest so it continues to link, but otherwise we support GLX on every server so there's no need to make every DDX add it. Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
- Jan 22, 2018
-
-
Adam Jackson authored
This really just wants to be the list of disable booleans and initialization functions, and nothing else. Stop including the protocol headers from extinit.h, remove a stray mention of xgl, and move an XInput declaration to a better place. v2: A bunch of drivers assume they'll get the DPMS tokens implicitly, so add it to globals.h. Signed-off-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Eric Anholt <eric@anholt.net>
-
- Nov 06, 2017
-
-
Adam Jackson authored
Your libc has ffs, I promise. Signed-off-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
- May 18, 2017
-
-
Adam Jackson authored
Signed-off-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Eric Anholt <eric@anholt.net> Reviewed-by:
Keith Packard <keithp@keithp.com>
-
Adam Jackson authored
Unused since Keith ported misprite to damage in '04. Signed-off-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Eric Anholt <eric@anholt.net> Reviewed-by:
Keith Packard <keithp@keithp.com>
-
- Apr 26, 2017
-
-
Emma Anholt authored
This is a work in progress that builds Xvfb, Xephyr, Xwayland, Xnest, and Xdmx so far. The outline of Xquartz/Xwin support is in tree, but hasn't been built yet. The unit tests are also not done. The intent is to build this as a complete replacement for the autotools system, then eventually replace autotools. meson is faster to generate the build, faster to run the bulid, shorter to write the build files in, and less error-prone than autotools. v2: Fix indentation nits, move version declaration to project(), use existing meson_options for version-config.h's vendor name/web. Signed-off-by:
Eric Anholt <eric@anholt.net> Acked-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Peter Hutterer <peter.hutterer@who-t.net>
-
- Mar 23, 2017
-
-
It had nothing left in it that was used but wasn't in dix-config.h. Reviewed-by:
Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by:
Daniel Stone <daniels@collabora.com> Signed-off-by:
Eric Anholt <eric@anholt.net>
-
- Mar 17, 2017
-
-
Adam Jackson authored
v2: - Require power-of-two bpp in ScreenInit - Eliminate fbCreatePixmapBpp v3 - Squash in the exa and glamor changes so we can remove pRotatedPixmap in the same stroke. Reviewed-by:
Eric Anholt <eric@anholt.net> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
- Mar 02, 2017
-
-
Adam Jackson authored
This avoids recomputing the span data for every dash. x11perf thinks this is a pretty modest speedup: 832919.4 840471.1 ( 1.009) 100-pixel dashed ellipse 672353.1 680652.2 ( 1.012) 100-pixel double-dashed ellipse 13748.9 24287.9 ( 1.767) 100-pixel wide dashed ellipse 9236.3 21298.2 ( 2.306) 100-pixel wide double-dashed ellipse But part of the reason it's so modest there is that the arcs are relatively small (100 pixel diameter at line width 10, so ~6000 pixels) and the dashes relatively large (30 on 20 off so ~6 dashes per quadrant). With larger arcs and finer dashes this is much more impressive. A fairly trivial testcase of a single 15000x13000 arc with the default {2, 2} dash pattern drops from ~3500 milliseconds to 10 milliseconds. Reviewed-by:
Keith Packard <keithp@keithp.com> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
Adam Jackson authored
drawArc does some fairly expensive computation, but it's only sensitive to arc width/height. Thread the span data up through the call chain so it's at least possible for the caller to cache things. Reviewed-by:
Keith Packard <keithp@keithp.com> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
Adam Jackson authored
Outdent, normalize comment formatting, and use 'goto out' idiom for error paths. No functional change. Reviewed-by:
Keith Packard <keithp@keithp.com> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
- Feb 16, 2017
-
-
Adam Jackson authored
Reviewed-by:
Alex Deucher <alexander.deucher@amd.com> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
- Sep 22, 2016
-
-
Jeremy Huddleston Sequoia authored
This allows us to remove darwinEvents_lock() and darwinEvents_unlock() and remove the serverRunning hack from dix Signed-off-by:
Jeremy Huddleston Sequoia <jeremyhu@apple.com>
-
- Aug 12, 2016
-
-
Keith Packard authored
This call wasn't converted to 'input_unlock()' when the SIGIO code was removed from the server, and so when the queue growing was reworked to be done from the input thread, it got left sitting here. As the caller now manages the lock, we don't need to switch this to input_unlock at this point. Signed-off-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Peter Hutterer <peter.hutterer@who-t.net>
-
- Jul 18, 2016
-
-
With no users of the interface needing the readmask anymore, we can remove it from the argument passed to these functions. Signed-off-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Adam Jackson <ajax@redhat.com>
-
This new libXfont API eliminates exposing internal X server symbols to the font library, replacing those with a struct full of the entire API needed to use that library. v2: Use libXfont2 instead of libXfont_2 Signed-off-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Adam Jackson <ajax@redhat.com>
-
- Jun 08, 2016
-
-
Adam Jackson authored
Signed-off-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Keith Packard <keithp@keithp.com>
-
- May 26, 2016
-
-
Keith Packard authored
Now that events are read at normal process time, we can use malloc to grow the event queue instead of discarding events. Signed-off-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Peter Hutterer <peter.hutterer@who-t.net>
-
Keith Packard authored
The current SIGIO signal handler method, used at generation of input events, has a bunch of oddities. This patch introduces an alternative way using a thread, which is used to select() all input device file descriptors. A mutex was used to control the access to input structures by the main and input threads. Two pipes to emit alert events (such hotplug ones) and guarantee the proper communication between them was also used. Co-authored-by:
Fernando Carrijo <fcarrijo@freedesktop.org> Signed-off-by:
Tiago Vignatti <tiago.vignatti@nokia.com> v2: Fix non-Xorg link. Enable where supported by default. This also splits out the actual enabling of input threads to DDX-specific patches which follow v3: Make the input lock recursive v4: Use regular RECURSIVE_MUTEXes instead of rolling our own Respect the --disable-input-thread configuration option by providing stubs that expose the same API/ABI. Respond to style comments from Peter Hutterer. v5: use __func__ in inputthread debug and error mesages. Respond to style comments from Peter Hutterer. v6: use AX_PTHREAD instead of inlining pthread tests. Suggested by Emil Velikov <emil.l.velikov@gmail.com> v7: Use pthread_sigmask instead of sigprocmask when using threads Suggested by Adam Jackson <ajax@redhat.com> Signed-off-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Adam Jackson <ajax@redhat.com>
-
Keith Packard authored
This removes all of the SIGIO handling support used for input throughout the X server, preparing the way for using threads for input handling instead. Places calling OsBlockSIGIO and OsReleaseSIGIO are marked with calls to stub functions input_lock/input_unlock so that we don't lose this information. xfree86 SIGIO support is reworked to use internal versions of OsBlockSIGIO and OsReleaseSIGIO. v2: Don't change locking order (Peter Hutterer) v3: Comment weird && FALSE in xf86Helper.c Leave errno save/restore in xf86ReadInput Squash with stub adding patch (Peter Hutterer) v4: Leave UseSIGIO config parameter so that existing config files don't break (Peter Hutterer) v5: Split a couple of independent patch bits out of kinput.c (Peter Hutterer) Signed-off-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Peter Hutterer <peter.hutterer@who-t.net>
-
- May 25, 2016
-
-
This moves the definition of miPointerRec from mipointrst.h to mipointer.c so that it is no longer visible in the API, allowing it to be changed while the API/ABI is frozen. Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Signed-off-by:
Keith Packard <keithp@keithp.com>
-
This creates a function that invalidates the current sprite and forces a sprite image reload the next time the sprite is checked, moving that logic out of the xwayland sources and allowing the miPointerRec structure to be removed from the server API. Signed-off-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
- Oct 19, 2015
-
-
miarc.c:1714:9: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value,Semantic Issue] if (abs(parc->angle2) >= 360.0) ^ miarc.c:1714:9: note: use function 'fabs' instead [Semantic Issue] if (abs(parc->angle2) >= 360.0) ^~~ fabs Signed-off-by:
Jeremy Huddleston Sequoia <jeremyhu@apple.com> Reviewed-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
- Sep 23, 2015
-
-
v2: Uses BUG_WARN_MSG to also provide a stack trace. (Peter Hutterer) Signed-off-by:
Keith Packard <keithp@keithp.com> Signed-off-by:
Andy Ritger <aritger@nvidia.com>
-
This isn't necessary. Signed-off-by:
Andy Ritger <aritger@nvidia.com> Signed-off-by:
Keith Packard <keithp@keithp.com>
-
- Aug 18, 2015
-
-
Keith Packard authored
This eliminates a warning generated when miLineArcD is inlined and the compiler can't figure out that edge1 and edge2 are always initialized before being used. Signed-off-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Dave Airlie <airlied@redhat.com>
-
This is already defined at the function entry. fixes warning: CC mivaltree.lo mioverlay.c: In function 'miOverlayWindowExposures': mioverlay.c:993:23: warning: declaration of 'pScreen' shadows a previous local [-Wshadow] ScreenPtr pScreen = pWin->drawable.pScreen; ^ mioverlay.c:986:15: note: shadowed declaration is here ScreenPtr pScreen = pWin->drawable.pScreen; Signed-off-by:
Dave Airlie <airlied@redhat.com>> Reviewed-by:
Keith Packard <keithp@keithp.com> Signed-off-by:
Keith Packard <keithp@keithp.com>
-
- Jul 08, 2015
-
-
Adam Jackson authored
Removes the last cpp conditional on ROOTLESS from dix code. Reviewed-by:
Jasper St. Pierre <jstpierre@mecheye.net> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
Adam Jackson authored
This is effectively a revert of 7b506fdc except the coding style reindent broke that. The code makes no sense in any case. drawable can never be null since it's the first member of WindowRec, and we're never called with a null window. Neither can it be an UNDRAWABLE_WINDOW since those are InputOnly windows; the rootless code does not set the root window to either UNDRAWABLE or InputOnly, so. Reviewed-by:
Jasper St. Pierre <jstpierre@mecheye.net> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
Adam Jackson authored
No reason to vary the dix ABI over this. Reviewed-by:
Jasper St. Pierre <jstpierre@mecheye.net> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
Adam Jackson authored
Acked-by:
Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
- Jul 06, 2015
-
-
Debian bug#726041 Reported-by:
Vincent Hobeïka <vincent.hobeika@gmail.com> Signed-off-by:
Julien Cristau <jcristau@debian.org> Reviewed-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by:
Keith Packard <keithp@keithp.com>
-
- Jun 30, 2015
-
-
According to http://www.x.org/releases/X11R7.7/doc/xproto/x11protocol.html#requests:CreateWindow "The border tile origin is always the same as the background tile origin." ChangeWindowAttributes goes to some effort to make sure it repaints the border tile whenever the background origin may have changed, but miPaintWindow was ignoring the background origin. Found by xts XChangeWindowAttributes-3 Signed-off-by:
Peter Harris <pharris@opentext.com> Reviewed-by:
Keith Packard <keithp@keithp.com> Signed-off-by:
Keith Packard <keithp@keithp.com>
-
Dave Airlie authored
I doubt anyone builds with this turned off or has done for a long time. It helps my eyes bleed slightly less when reading the code, I've left the define in place as some drivers use it. Reviewed-by:
Aaron Plattner <aplattner@nvidia.com> Reviewed-by:
Alex Deucher <alexander.deucher@amd.com> Signed-off-by:
Dave Airlie <airlied@redhat.com>
-