aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/Xserver/hw/nxagent
Commit message (Collapse)AuthorAgeFilesLines
* hw/nxagent/NXevents.c: Shrink file, drop duplicate code that can identically ↵Mike Gabriel2016-06-251-4547/+132
| | | | be found in dix/events.c.
* hw/nxagent/NXglyph.c: Shrink file, drop duplicate code that can identically ↵Mike Gabriel2016-06-251-394/+1
| | | | be found in render/glyph.c.
* hw/nxagent/NXglyphcurs.c: Shrink file, drop duplicate code that can ↵Mike Gabriel2016-06-251-68/+1
| | | | identically be found in dix/glyphcurs.c.
* hw/nxagent/NXrender.c: Shrink file, drop duplicate code that can identically ↵Mike Gabriel2016-06-251-2188/+38
| | | | | | be found in render/render.c. Fixes ArcticaProject/nx-libs#37
* hw/nxagent/NX{glyphstr,picturestr}.h: Don't ship the complete header files ↵Mike Gabriel2016-06-259-836/+122
| | | | in nxagent's code base. Rather replace structures we need modified only.
* NXrenderint.h: Move into subfolder X11/include/ and rename to ↵Mike Gabriel2016-06-252-2/+2
| | | | Xrender_nxagent.h. (Like we have done with all other non-public Xlib related header files that are required for building nxagent.
* hw/nxagent/NXresource.c: Shrink file, drop duplicate code that can ↵Mike Gabriel2016-06-251-642/+2
| | | | identically be found in dix/resource.c.
* hw/nxagent/NXwindow.c: Shrink file, drop duplicate code that can identically ↵Mike Gabriel2016-06-252-3023/+7
| | | | be found in dix/window.c.
* hw/nxagent/NXglxext.c: Shrink file, drop duplicate code that can identically ↵Mike Gabriel2016-06-251-380/+1
| | | | be found in GL/glx/glxext.c.
* hw/nxagent/NXpicture.c: Shrink file, drop duplicate code that can ↵Mike Gabriel2016-06-251-1690/+41
| | | | identically be found in render/picture.c.
* hw/nxagent/NXmiexpose.c: Shrink file, drop duplicate code that can ↵Mike Gabriel2016-06-251-243/+1
| | | | identically be found in mi/miexpose.c.
* hw/nxagent/Pixmaps.h: Make RESTYPE well-defined by adding resource.h to ↵Mike Gabriel2016-06-251-0/+1
| | | | includes.
* hw/nxagent/NXmiglyph.c: Shrink file, drop code that can be identically found ↵Mike Gabriel2016-06-251-85/+1
| | | | in render/miglyph.c.
* hw/nxagent/NXmitrap.c: Shrink file, drop duplicate code that can identically ↵Mike Gabriel2016-06-252-117/+2
| | | | be found in render/mitrap.c.
* hw/nxagent/NXmiwindow.c: Drop complete file.Mike Gabriel2016-06-252-1211/+0
| | | | | | | | | | Reasoning: (1) The diff between this file and mi/miwindow.c is so minimal, we simply apply the change to mi/miwindow.c. (2) In recent X.org, the fixed code has gone, so this patch won't exist after having rebased nx-libs against X.org.
* hw/nxagent/NXdamage.c: Shrink file, drop duplicate code that can identically ↵Mike Gabriel2016-06-251-1894/+38
| | | | be found in miext/damage/damage.c.
* NXcomposite.h: Move fake header file NXcomposite.h to ↵Mike Gabriel2016-06-253-74/+107
| | | | hw/nxagent/X11/include/ and drop all symbols that are not explicitly used by nxagent.
* Xserver/hw/nxagent: Drop NXcompositeext.h, it is a duplicate of ↵Mike Gabriel2016-06-252-64/+0
| | | | nx-X11/include/extensions/composite.h.
* hw/nxagent/NXextension.c: Shrink file, drop duplicate code that is ↵Mike Gabriel2016-06-251-323/+1
| | | | indentically found in dix/extension.c.
* Screen.c: fix RRGetInfo callUlrich Sibiller2016-06-251-1/+1
|
* Xinerama: undef debug/test flagsUlrich Sibiller2016-06-251-4/+4
|
* Backport RANDR proto version 1.5 to nx-X11's Xserver.Mike Gabriel2016-06-213-7/+116
| | | | | Backported to X.org's /xorg/xserver Git hash level: a6b6e8ba026acedef6336b17adf06aebddd5f22f.
* Move matrix operations from X server to pixman 0.13.2. Required code ↵Mike Gabriel2016-06-211-6/+3
| | | | de-duplication in nxagent. (Will be fixed by ArcticaProject/nx-libs#120 later on).
* [render] Split out filter finding from filter setting. Required code ↵Mike Gabriel2016-06-211-2/+4
| | | | de-duplication in nxagent. (Will be fixed by ArcticaProject/nx-libs#120 later on).
* Move matrix operations from X server to pixman 0.13.2, handle RandR ↵Mike Gabriel2016-06-212-68/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | transform matrices in floating point. Backported from X.org, inspired by: commit 9ffc6719390df8fdd0a5295a7a7a0eaea792be45 Author: Keith Packard <keithp@keithp.com> Date: Mon Nov 24 13:08:48 2008 -0800 Move matrix operations from X server to pixman 0.13.2 pixman 0.13.2 now holds all of the matrix operations. This leaves the protocol conversion routines and some ABI stubs in place Signed-off-by: Keith Packard <keithp@keithp.com> commit c4b9ab6bf56139fdd8c7c584a6f523c6766cddd6 Author: Keith Packard <keithp@keithp.com> Date: Tue Apr 29 08:29:42 2008 -0700 Handle transform failure when computing shadow damage area. PictureTransformBounds can fail, when this happens, damage the entire screen so that the shadow gets repainted correctly. commit fa6a1df209bd74da1d545982cca437afc2198cc1 Author: Keith Packard <keithp@keithp.com> Date: Fri Mar 21 02:35:28 2008 -0700 Avoid overflow in PictureTransformPoint. Fix PictureTransformIsIdentity. PictureTransformPoint computes homogeneous coordinates internally, but fails to handle intermediate values larger than 16.16. Use 64 bit intermediate values while computing the final result at 16.16 and only complain if that result is too large. PictureTransformIsIdentity was completely wrong -- it was not checking for identity transforms at all. commit 49db14e4ac26070ed86088419483888dda18b603 Author: Keith Packard <keithp@keithp.com> Date: Wed Mar 19 00:46:35 2008 -0700 Handle RandR transform matrices in floating point. RandR matrix computations lose too much precision in fixed point; computations using the inverted matrix can be as much as 10 pixels off. Convert them to double precision values and pass those around. These API changes are fairly heavyweight; the official Render interface remains fixed point, so the fixed point matrix comes along for the ride everywhere. commit 97ab0c6eff870b52c0383b63a78cec49059b2545 Author: Keith Packard <keithp@keithp.com> Date: Tue Mar 18 15:15:40 2008 -0700 When converting from double to fixed, round carefully. This reduces the matrix representation error after inverting a transformation matrix (although it doesn't eliminate it entirely). Perhaps we should extend Render to include 64-bit floating point transforms... commit 160252d94f04acc95f0a4e0f884ff565a5aa0744 Author: Keith Packard <keithp@keithp.com> Date: Mon Mar 17 23:03:56 2008 -0700 Add matrix inversion function (uses doubles) The obvious matrix inversion function, coded using doubles to avoid fiddling with fixed point precision adventures. commit ff9d1cd843a9b0aba69a3d788b21d5f6af702590 Author: Keith Packard <keithp@keithp.com> Date: Thu Mar 13 21:30:18 2008 -0700 Add funcs to convert between protocol and pixman matrices commit f547650328287545a7a4d96df8d6a6c606dd95a9 Author: Keith Packard <keithp@keithp.com> Date: Thu Mar 13 14:50:13 2008 -0700 Export a bunch of matrix operations from render. The render extension uses many matrix operations internally, this change exposes those functions to other parts of the server, drivers and extensions. The change is motivated by the 'transform' additions to the RandR extension but will likely be useful elsewhere. Backport to nx-libs: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* [render] Split out filter finding from filter setting.Mike Gabriel2016-06-211-1/+6
| | | | | | | | | | | | | | | | | Backported from X.org: commit acda790e430b2a18c7c35379f6e538f3d01ff221 Author: Keith Packard <keithp@keithp.com> Date: Fri Mar 14 13:46:30 2008 -0700 [render] Split out filter finding from filter setting. To prepare for RandR using filters in transforms, split out code paths so that the RandR code can validate the filter name and parameters during the transform set operation so that use of the filter later will not have unreportable errors. Backport to nx-libs: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* hw/nxagent/NXresource.c: remove caching of drawables and graphics contexts. ↵Mike Gabriel2016-06-211-20/+0
| | | | The security checks simply bypass the cached values so they are unused. Required code de-duplication in nxagent. (Will be fixed by ArcticaProject/nx-libs#120 later on).
* Move each screen's root-window pointer into ScreenRec.Mike Gabriel2016-06-2116-130/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | Backported from X.org: commit e7fae9ecc42ab5e73b89117722dbf4117d928f9a Author: Jamey Sharp <jamey@minilop.net> Date: Sat May 22 00:26:28 2010 -0700 Move each screen's root-window pointer into ScreenRec. Many references to the WindowTable array already had the corresponding screen pointer handy, which meant they usually looked like "WindowTable[pScreen->myNum]". Adding a field to ScreenRec instead of keeping this information in a parallel array simplifies those expressions, and eliminates a MAXSCREENS-sized array. Since dix uses this data, a screen private entry isn't appropriate. xf86-video-dummy currently uses WindowTable, so it needs to be updated to reflect this change. Signed-off-by: Jamey Sharp <jamey@minilop.net> Reviewed-by: Tiago Vignatti <tiago.vignatti@nokia.com> Tested-by: Tiago Vignatti <tiago.vignatti@nokia.com> (i686 GNU/Linux) Backport to nx-libs: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* nxagent/hw/NXextension.c: Allow CloseDownProc to be NULL. Required code ↵Mike Gabriel2016-06-211-2/+3
| | | | de-duplication in nxagent. (Will be fixed by ArcticaProject/nx-libs#120 later on).
* hw/nxagent/Handlers.c: Regression fix since 6051dec. Close unclosed '#ifdef ↵Mike Gabriel2016-06-211-0/+1
| | | | TEST'.
* hw/nxagent/Options.h: Grammar fix in comment.Mike Gabriel2016-06-211-1/+1
|
* Properly enable/disable Xinerama support in nxagent via cmdline options ↵Mike Gabriel2016-06-214-33/+48
| | | | | | | | | | | | | | | | | | | provider in Xserver/os/utils.c. * Xinerama defaults to enabled, using RRXineramaExtension (i.e. cmdline option: +rrxinerama). * Cmdline option -rrxinerama disables Xinerama support entirely. * Cmdline option +xinerama switches from RRXineramaExtension to PanoramiXExtension. * Cmdline option -xinerama is actually non-functional (i.e. the default). * If the nx/nx option "xinerama" is handed over to nxagent, then Xinerama is only switched on if that given option enables it (value: 1) _and_ if either of the Xinerama extensions (PanoramiX or RRXinerama) has been initialized (via cmdline options above). Fixes ArcticaProject/nx-libs#117. Fixes ArcticaProject/nx-libs#134 (makes flawed PR#134 obsolete).
* {nx-X11/programs/Xserver/hw/nxagent/{{Args,Handlers,Image,Options}.c,Options ↵Mihai Moldovan2016-06-215-24/+83
| | | | .h},nxcomp/{Loop,Misc}.cpp}: add configurable sleep delay if session is suspended.
* nxagentReversePointerMap: Don't assume Xevent.xbutton.button is always ↵Mike Gabriel2016-06-212-3/+3
| | | | | | | greater than zero. We have seen Xevent.xbutton.button being set to AnyButton (equaling 0). Fixes ArcticaProject/nx-libs#92 Fixes X2GoBTS#791
* nx-X11/programs/Xserver/hw/nxagent/Handlers.h: fix stack smashing related to ↵Mihai Moldovan2016-06-211-1/+21
| | | | | | | | | | | | | | | | | different data type sizes between Xserver and Xlib. While on the X server side we were expecting a 32bit value, the Xlib side in nxcompext wrote a 64bit integer to the 32bit location, hence overwriting "random" data on the stack (most notably the return adress.) We can work around this by using the Xlib-based Window data type on the server-side as well, but this problem is likely a more general one. Calling functions from libcompext in nxagent sounds like a bad idea. Other code locations might well be affected by issues alike to that as well. In order to silence compiler warnings, use a "macro hack" for overriding the "Window" type in NXlib.h.
* nx-X11/programs/Xserver: Include nxcomp{,ext,shad} headers like one would do ↵Mike Gabriel2016-06-1328-49/+49
| | | | with system-wide shared libraries.
* hw/nxagent/Args.c: Fix syntax errors for builds using -UPANORAMIX.Mike Gabriel2016-06-091-1/+1
|
* nx-X11/programs/Xserver/{hw/nxagent/NX,render/}picture.c: add and use new ↵Mihai Moldovan2016-05-301-0/+98
| | | | | | | | function ReduceCompositeOp(). More or less just an optimization for more "trivial" composite operations requiring less work, but syncs up the newer X.Org Server and nx-libs a bit more.
* misc nx-X11/{programs/Xserver/composite,include/extensions}: update to ↵Mihai Moldovan2016-05-301-2/+6
| | | | Composite 0.4 - with changes where neccessary and rough edges.
* nx-X11/programs/Xserver/{dix/{colormap.c,window.c},hw/nxagent/NXwindow.c,inc ↵Mihai Moldovan2016-05-251-0/+8
| | | | lude/{colormap,window{,str}}.h}: backport features needed for Composite 0.4.
* hw/nxagent/Display.c: Avoid incompatible pointer type.Mike Gabriel2016-05-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | Amends the following compiler warning Display.c: In function ‘nxagentMakeIcon’: Display.c:1949:18: warning: assignment from incompatible pointer type agentIconData=x2goagentIconData; ^ Display.c:1954:18: warning: assignment from incompatible pointer type agentIconData=nxagentIconData; ^ Display.c:2001:41: warning: passing argument 3 of ‘XpmCreatePixmapFromData’ from incompatible pointer type agentIconData, ^ In file included from Icons.h:22:0, from Display.c:67: X11/include/xpm_nxagent.h:242:6: note: expected ‘char **’ but argument is of type ‘char *’ FUNC(XpmCreatePixmapFromData, int, (Display *display, ^ X11/include/xpm_nxagent.h:230:32: note: in definition of macro ‘FUNC’ #define FUNC(f, t, p) extern t f p
* hw/nxagent/Display.c: Define Pixmap from XlibPixmap before including Icons.h ↵Mike Gabriel2016-05-131-0/+4
| | | | (which includes hw/nxagent/X11/include/xpm_nxagent.h).
* hw/nxagent/Holder.c: Define Pixmap from XlibPixmap before including ↵Mike Gabriel2016-05-131-0/+1
| | | | hw/nxagent/X11/include/xpm_nxagent.h.
* hw/nxagent/Events.c: Avoid '#endif <empty line> #ifdef DEBUG' blocks.Mihai Moldovan2016-05-131-12/+0
|
* hw/nxagent/NXmiexpose.c: Initialize all items of the newValues[] array.Mike Gabriel2016-05-131-1/+1
| | | | | | | | | | | | | Amends the following compiler warnings: ``` NXmiexpose.c:904:18: warning: ‘newValues[2].ptr’ may be used uninitialized in this function [-Wmaybe-uninitialized] gcval[i++].ptr = newValues[TILE].ptr; ^ NXmiexpose.c:914:24: warning: ‘newValues[1].val’ may be used uninitialized in this function [-Wmaybe-uninitialized] if ( pGC->fgPixel != newValues[FOREGROUND].val) { ^ ```
* hw/nxagent/Keystroke.c: Fix warning: pointer type mismatch in conditional ↵Mike Gabriel2016-05-021-1/+1
| | | | expression.
* hw/nxagent/Window.c: Initialize tmp_mask and attributes.event_mask with ↵Mike Gabriel2016-05-021-1/+1
| | | | | | | | | | | | | NoEventMask. Amends the following compiler warning: ``` Window.c: In function ‘nxagentSetTopLevelEventMask’: Window.c:3392:31: warning: ‘attributes.event_mask’ may be used uninitialized in this function [-Wmaybe-uninitialized] Mask tmp_mask = attributes.event_mask; ^ ```
* hw/nxagent/Colormap.c: Don't declare and assign flexibility variable if not ↵Mike Gabriel2016-05-021-2/+0
| | | | | | | | | | | | | used later on. Amends the following compiler warning: ``` Colormap.c: In function ‘nxagentReconnectAllColormap’: Colormap.c:575:7: warning: variable ‘flexibility’ set but not used [-Wunused-but-set-variable] int flexibility; ^ ```
* hw/nxagent/GCOps.c: Don't declare and assign oldDstxyValue if not used later on.Mike Gabriel2016-05-021-4/+0
| | | | | | | | | | | Amends the following compiler warning: ``` GCOps.c: In function ‘nxagentCopyArea’: GCOps.c:597:7: warning: variable ‘oldDstxyValue’ set but not used [-Wunused-but-set-variable] int oldDstxyValue; ^ ```
* hw/nxagent/GC.c: Don't declare and assign flexibility variable if not used ↵Mike Gabriel2016-05-021-3/+0
| | | | | | | | | | | | | later on. Amends the following compiler warning: ``` GC.c: In function ‘nxagentReconnectAllGCs’: GC.c:1154:7: warning: variable ‘flexibility’ set but not used [-Wunused-but-set-variable] int flexibility; ^ ```