| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
if the output was disconnected before.
Fixes: ArcticaProject/nx-libs#677
|
|
|
|
| |
avoid referencing random data.
|
|
|
|
| |
implemented in intersect_bb() function.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the agent window is moved around on screen, it can happen
that it is moved into an invisible area of the real Xserver,
we calls this "beyond the bounding box".
.
If the agent window is partially beyond the bounding box, we
don't want Xinerama to re-adjust the RandR parameters inside the
agent. Near the bounding box, the session shall stay intact.
.
This means, desktop env wise, the desktop session control
elements can be moved (with the agent window) into the invisible
areas of the real Xserver and moved out again without RandR
events arriving inside the agent session.
Fixes ArcticaProject/nx-libs#662.
|
|
|
|
|
|
| |
nothing better can be detected.
Fixes ArcticaProject/nx-libs#668.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
FALSE before using the nxagentAdjustRandRXinerama() function and providing a Xinerama-like user experience.
Fixes ArcticaProject/nx-libs#634.
|
| |
|
|
|
|
|
|
| |
output.
Was dropped erroneously in cec31e2f06b29b332ee78cfefeefa7bfa136be75.
|
|
|
|
|
|
|
| |
modifying CRTC modes.
This should get rid of the infamous "800x600 screen size" issue
reproduced in X2Go whole display setups.
|
|
|
|
| |
this ensures that randr updates its private structures
|
|
|
|
|
| |
If -rrxinerama was specified xrandr handling was broken. Adding/using
a custom resolution via xrandr was not working anymore.
|
|
|
|
| |
free() can handle NULL so there's no need to check this ourselves
|
|
|
|
| |
feature can be enabled by the cmdline options -reportwids and -reportprivatewids.
|
|
|
|
| |
nxagentCreatePixmap, as well.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Extracted from X.org bulk commit:
commit 1f0e8bd5eb1a5539689cfc4f5a6b86b530907ec5
Author: Dave Airlie <airlied@redhat.com>
Date: Tue Jun 5 13:22:18 2012 +0100
api: rework the X server driver API to avoid global arrays.
This is a squash merge containing all the API changes, as
well as the video ABI bump.
Its been squashed to make bisection easier.
Full patch log below:
[...]
commit 06729dbbc804a20242e6499f446acb5d94023c3c
Author: Dave Airlie <airlied@gmail.com>
Date: Tue Apr 10 14:04:59 2012 +0100
xserver: remove index from CloseScreen (API/ABI breakage)
This drops the index from the CloseScreen callback,
its always been useless really, since the pScreen contains it.
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Inspired by X.org commit:
commit 55c2e1a3aa587c58a74066724e11e30b3df267b8
Author: Keith Packard <keithp@keithp.com>
Date: Mon Dec 7 15:11:33 2015 -0800
xnest: Use SetNotifyFd to receive events
Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
|
| |
|
|
|
|
| |
Fixes ArcticaProject/nx-libs#293
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
includes at build time.
Fixes ArcticaProject/nx-libs#276.
|
|
|
|
|
|
|
| |
This fixes ArcticaProject/nx-libs#204.
However, this fix does not address the root of the problem, it simply avoids
it. We could run into it again... See bugreport for an explanation.
|
|
|
|
| |
that NoMachine placed there own copyright statement in.
|
| |
|
|
|
|
| |
Fixes ArcticaProject/nx-libs#105
|
| |
|
| |
|
|
|
|
|
| |
Backported to X.org's /xorg/xserver Git hash level:
a6b6e8ba026acedef6336b17adf06aebddd5f22f.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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).
|
|
|
|
| |
with system-wide shared libraries.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Amends the following compiler warnings:
```
Screen.c: In function ‘nxagentCreateIconWindow’:
Screen.c:394:15: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘Window’ [-Wformat=]
nxagentIconWindow);
^
Screen.c: In function ‘nxagentSetScreenSaverTime’:
Screen.c:456:19: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘CARD32’ [-Wformat=]
ScreenSaverTime, ScreenSaverInterval);
^
Screen.c:456:19: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘CARD32’ [-Wformat=]
Screen.c:476:19: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘CARD32’ [-Wformat=]
ScreenSaverTime, ScreenSaverInterval);
^
Screen.c:476:19: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘CARD32’ [-Wformat=]
Screen.c: In function ‘nxagentOpenScreen’:
Screen.c:1234:19: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘VisualID’ [-Wformat=]
visuals[numVisuals].vid);
^
Screen.c:1274:23: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘VisualID’ [-Wformat=]
depths[depthIndex].depth);
^
Screen.c:1282:17: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘VisualID’ [-Wformat=]
defaultVisualIndex, visuals[defaultVisualIndex].vid);
^
Screen.c:1319:19: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘VisualID’ [-Wformat=]
rootDepth, defaultVisual);
^
Screen.c:1336:19: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘VisualID’ [-Wformat=]
rootDepth, defaultVisual);
^
Screen.c:1348:19: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘VisualID’ [-Wformat=]
rootDepth, defaultVisual);
^
Screen.c:1357:19: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘VisualID’ [-Wformat=]
rootDepth, defaultVisual);
^
Screen.c:1723:21: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘Window’ [-Wformat=]
nxagentDefaultWindows[pScreen->myNum]);
^
Screen.c:1763:19: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘Window’ [-Wformat=]
nxagentDefaultWindows[pScreen->myNum]);
^
Screen.c:1775:17: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘Window’ [-Wformat=]
nxagentDefaultWindows[pScreen->myNum]);
^
Screen.c:1790:17: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘Window’ [-Wformat=]
nxagentDefaultWindows[pScreen->myNum]);
^
Screen.c: In function ‘nxagentShadowAdaptDepth’:
Screen.c:3189:14: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
pVisual -> red_mask, pVisual -> green_mask, pVisual -> blue_mask);
^
Screen.c:3189:14: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘long unsigned int’ [-Wformat=]
Screen.c:3189:14: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘long unsigned int’ [-Wformat=]
Screen.c:3198:15: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
redMask, greenMask, blueMask);
^
Screen.c:3198:15: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘long unsigned int’ [-Wformat=]
Screen.c:3198:15: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘long unsigned int’ [-Wformat=]
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Amends the following compiler warnings:
```
Screen.c: In function ‘nxagentReconnectScreen’:
Screen.c:3547:7: warning: variable ‘flexibility’ set but not used [-Wunused-but-set-variable]
int flexibility;
^
Screen.c: In function ‘nxagentAdjustRandRXinerama’:
Screen.c:3746:12: warning: unused variable ‘j’ [-Wunused-variable]
int i, j;
^
Screen.c: In function ‘nxagentSaveAreas’:
Screen.c:4116:15: warning: variable ‘pDrawable’ set but not used [-Wunused-but-set-variable]
DrawablePtr pDrawable;
^
Screen.c: In function ‘nxagentRestoreAreas’:
Screen.c:4236:15: warning: variable ‘pDrawable’ set but not used [-Wunused-but-set-variable]
DrawablePtr pDrawable;
^
```
|
|
|
|
|
|
|
|
|
|
|
|
| |
Avoid implicit-declaration compiler warning.
Amends the following compiler warning:
```
Screen.c:3716:5: warning: implicit declaration of function ‘nxagentAdjustRandRXinerama’ [-Wimplicit-function-declaration]
nxagentAdjustRandRXinerama(pScreen);
^
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use MIN(A,B) macro as defined in Utils.h. Add MAX(A,B) macro in Utils.h,
as well. Don't have another set of MIN/MAX macro definitions in
Screen.c.
Amends the following compiler warnings:
```
Screen.c:3600:0: warning: "MIN" redefined
#define MIN(a,b) ((a) < (b)) ? (a) : (b);
^
In file included from Screen.c:78:0:
Utils.h:36:0: note: this is the location of the previous definition
#define MIN(A, B) ( (A) < (B) ? (A) : (B) )
^
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a huge mechanical patch and a few small fixups required to finish
the job. They were reviewed separately, but because the server does not
build without both pieces, I've merged them together at this time.
The mechanical changes were performed by running the included
'fix-region' script over the whole nx-X11/programs/Xserver tree:
$ cd nx-X11/programs/Xserver && ( git ls-files | grep -v '^fix-' | xargs ./fix-region; )
And then, the white space errors in the resulting patch were fixed
using the provided fix-patch-whitespace script.
$ sh ./fix-patch-whitespace
Thanks to Jamey Sharp for the mighty fine sed-generating sed script.
v1: Keith Packard <keithp@keithp.com> (X.Org xserver commit: 2dc138922b7588515d5f2447e4b9dcdc0bef15e0)
v2: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> (apply fix-region script to nx-libs)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes the problem Mike Gabriel describes like this:
- Launch a session on a system with a single monitor. Enable Xinerama
for this session.
- Open a desktop session in that session window (e.g. MATE or XFCE).
- Move the NX/MATE-or-XFCE session window around on that one
monitor. Bump at the borders, so that the session window moves into
the invisible parts around your monitor.
What you see is that the MATE-or-XFCE window manager will become
really busy with resizing the windows and panels in the NX session,
because moving the window over the physical borders of the display
will trigger resize events.
This is non-intuitive, I think.
Same with multi-monitors on the outside edges of the physical Xorg
RandR setup.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
By design, when resuming a session, Xinerama can only be re-enabled
by NX option parsing.
Thus, this change introduces a "xinerama" NX option that can
be loaded via an options file into NX agent when resuming
a session. The new xinerame NX session option also allows
switching on Xinerama at session startup via an option file.
When implementing the new NX Xinerama support into clients (like
TheQVD, X2Go Client, etc., this new xinerama NX option should be
used for activating Xinerama in the NX / QVD / X2Go session.
|
|
|
|
| |
unclosed comment.
|
| |
|
| |
|