aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/Xserver/hw/nxagent
Commit message (Collapse)AuthorAgeFilesLines
* Use basename() to derive nxagentProgName cleanly.Mike Gabriel2018-08-242-3/+6
|
* Call checkX2goAgent much earlier (in ddxProcessArgument) and adapt ↵Mike Gabriel2018-08-243-7/+16
| | | | NXAGENTWINDOWNAMELENGTH to its result.
* Application icon: Drop NoMachine logo as nxagent icon, switch to X11 icon ↵Mike Gabriel2018-08-242-49/+400
| | | | for now.
* nxmissing.xpm: Add XPM marker so that image viewers recognize the image file ↵Mike Gabriel2018-08-241-0/+1
| | | | format.
* Args.c: allow options to contain URL encoded charactersUlrich Sibiller2018-08-242-0/+40
| | | | | | Same as in nxcomp's option handling. We really only need it for "," (%2C) and "=" (%3D), currently, but it can handle all encoded characters.
* Args.c: rename nxagentParseOptions to nxagentParseSingleOptionUlrich Sibiller2018-08-241-14/+14
| | | | new name is more descriptive
* Replace MIN/MAX macros by min/max from misc.hUlrich Sibiller2018-08-235-20/+14
| | | | We do not need two versions in the code
* Fix broken 9a7c0b081fad98bfcfcceff9557781f4b39ec572Ulrich Sibiller2018-08-221-13/+20
| | | | | | | | | Windowsize was wrong when run with nxagent :<someDisplay>. Basically three changes: - reference sizeHints and wmHints correctly (no &) - do not use uninitialized wmHints - set wmHints Xutf8SetWMProperties() call instead of separate call
* Events.c: drop variable that caused compilation warningUlrich Sibiller2018-08-221-8/+2
| | | | | | | Fixes this message when compiling with TEST: Events.c:2725:22: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] message_data = validateString(NameForAtom(x.u.clientMessage.u.l.longs0));
* Events.c: fix wrong printf format specifiersUlrich Sibiller2018-08-221-4/+4
|
* Events.c: fix compiler warningsUlrich Sibiller2018-08-221-3/+3
| | | | format ‘%p’ expects argument of type ‘void *’
* Events.c: mitigate compiler warningUlrich Sibiller2018-08-221-1/+1
| | | | "ISO C forbids assignment between function pointer and 'void *' [-pedantic]"
* refactor nxagentGet(Default)EventMaskUlrich Sibiller2018-08-224-41/+19
| | | | Fixes ArcticaProject/nx-libs#691.
* nxagent: Used 'Xutf8SetVMPropertis' instead of 'XSetStandardProperties' + ↵Pavel Vaynerman2018-08-221-13/+6
| | | | 'Xutf8SetWMProperties'
* fix window title encoding (use utf8) for nxagentPavel Vaynerman2018-08-221-2/+8
|
* misc: fix more regressions and whitespace weirdness introduced in ↵Mihai Moldovan2018-07-073-4/+15
| | | | 913fcf1a74426725f14380dd5b34286a21c37ab7.
* Fix some memory leaks.Mario Trangoni2018-07-033-7/+13
|
* Xserver/xkb: Remove -xkbmap argument.Daniel Stone2018-07-031-11/+0
| | | | | | | | | | | | Backported from X.org: commit fd8bde8bb0f9d796b3464973b53285c0a6d22a31 Author: Daniel Stone <daniel@fooishbar.org> Date: Mon May 29 11:14:03 2006 +0000 Remove -xkbmap argument. Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* hw/nxagent/Keyboard.c: Drop support for loading XKB config from file.Mike Gabriel2018-07-031-97/+7
| | | | | | * Support for XkbCF has been dropped in XKB extension by X.org * Has never been used in recent NXv3 implementations (e.g. X2Go) * Config file parsing is error prone, use setxkbmap API instead
* Atoms.c: more debugging outputUlrich Sibiller2018-07-031-0/+29
|
* NXdixfonts.c: free() can handle NULLUlrich Sibiller2018-07-031-13/+10
| | | | so let's remove some superflous tests
* NXdixfonts.c: use calloc for LFclosurePtrUlrich Sibiller2018-07-031-1/+1
| | | | Just to be sure. It is used at lots of locations afterwards.
* Fix some valgrind findingsUlrich Sibiller2018-07-031-5/+3
| | | | | | Some of them have not been seen in the wild yet. Partly fixes ArcticaProject/nx-libs#711
* Some small Keyboard.c improvementsUlrich Sibiller2018-07-031-4/+4
| | | | as in xorg-xserver upstream's hw/xnest/Keyboard.c
* Clipboard.c: add missing includeUlrich Sibiller2018-06-051-0/+1
| | | | Fixes ArcticaProject/nx-libs#701
* Update Xinerama on XMapEventUlrich Sibiller2018-05-241-0/+12
| | | | Fixes ArcticaProject/nx-libs#694
* whitespace fixesUlrich Sibiller2018-05-243-4/+4
|
* Screen.c: simplify setting of window name/classUlrich Sibiller2018-05-241-16/+11
|
* Events.c: catch intermediate window position changesUlrich Sibiller2018-05-241-5/+35
| | | | | | | | | | | | | nxagentHandleConfigureNotify() has an optimization that accumulates ConfigureNotify events from the queue to only perform the changes of the last ConfigureNotify event in the queue. But that code used to ignore position changes and only adapt the new window position if the last event happened to contain a position change. This change ensures the latest position change - if any - found in the queue will be applied after the accumulation. Fixes: ArticaProject/nx-libs#688 (second part)
* nxagent: remove mmwidth/mmheight from nxagentChangeScreenConfigUlrich Sibiller2018-05-245-12/+11
| | | | Was 0,0 on every call...
* Screen.c/Events.c: fix some commentsUlrich Sibiller2018-05-243-5/+3
|
* nxagent: use XAllocSizeHints() instead of XSizeHints structUlrich Sibiller2018-05-243-97/+130
| | | | | | This is the preferred way. It ensures, that a) the data is zeroed b) a correct size in case xlib is changing the size of the structure in future releases
* Screen.c/Events.c: add some FIXMEsUlrich Sibiller2018-05-242-0/+4
|
* Screen.c: replace XSetWMNormalHints code block by already existing functionUlrich Sibiller2018-05-243-38/+7
| | | | nxagentSetWMNormalHints was slightly adapted therefore
* compext: fix spelling errors as reported by codespellUlrich Sibiller2018-05-244-6/+6
|
* manpage: fix spelling error as reported by codespellUlrich Sibiller2018-05-241-1/+1
|
* hw/nxagent: fix spelling errors as reported by codespellUlrich Sibiller2018-05-2421-51/+50
|
* release 3.5.99.163.5.99.16Mike Gabriel2018-03-161-1/+1
|
* nx-X11/programs/Xserver/hw/nxagent/Screen.c: do not try to set a NULL mode ↵Mihai Moldovan2018-03-151-5/+5
| | | | | | if the output was disconnected before. Fixes: ArcticaProject/nx-libs#677
* nx-X11/programs/Xserver/hw/nxagent/Screen.c: initialize pointers to NULL to ↵Mihai Moldovan2018-03-151-1/+1
| | | | avoid referencing random data.
* release 3.5.99.153.5.99.15Mike Gabriel2018-03-071-1/+1
|
* Xserver/hw/nxagent/Screen.c: Drop commented out code. Functionality now ↵Mike Gabriel2018-03-071-16/+0
| | | | implemented in intersect_bb() function.
* hw/nxagent/Screen.c: Cover Xinerama bounding box corner cases.Mike Gabriel2018-03-071-16/+81
| | | | | | | | | | | | | | | | | 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.
* nx-X11/programs/Xserver/hw/nxagent/Init.c: disable DPMS support within nxagent.Mihai Moldovan2018-03-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Keeping it enabled leads to nxagent consuming 100% of CPU resources after some time. Older code used three different timers for each DPMS mode (standby, suspend, off), with each timer checking that the elapsed idle time is strictly less than the DPMS mode timeout value. Newer code started merging DPMS and ScreenSaver timers into a single one, with checking DPMS modes and timeouts in a fall-through fashion. The code expects that, if a timeout is reached, the mode is set accordingly, so that the old timeout is disregarded next time. Since we stub out DPMSSetMode() in nxagent, this doesn't happen. In this case, the old DPMS timeout will be checked the next time around and we will be calculating DPMS_MODE_TIMEOUT - IDLE_TIME. If IDLE_TIME is bigger than DPMS_MODE_TIMEOUT, we run into problems with unsigned integers. What happens next will be *another* overflow once DoTimers() is executed and from that function SetTimers(), which will add the current timestamp to the timeout value. Later functions subtract the current timestamp again (which will be even higher since some time elapsed) and underflow the value again. It looks like this leads to consistent firing of the timer - something we do not want to have. For new, disable DPMS support in nxagent. We do not execute it on actual hardware that could change DPMS modes. At a later time, implementing a DPMS timeout/mode passthrough to the connected X server/display might be beneficial. Fixes: ArcticaProject/nx-libs#671
* hw/nxagent/Screen.c: Settle down with 96 DPI as the default resolution, if ↵Simon Matter2018-03-011-1/+1
| | | | | | nothing better can be detected. Fixes ArcticaProject/nx-libs#668.
* release 3.5.99.143.5.99.14Mike Gabriel2018-02-281-1/+1
|
* os: hide ttyxx optionUlrich Sibiller2018-02-281-3/+0
| | | | is used nowhere anyway
* nxagent: rearrange nx options in usageUlrich Sibiller2018-02-281-4/+4
| | | | | make them appear in the nx section. Also separate the nx section from the other options by an extra emtpy line.
* Lift xkb to xorg-xserver-7.1/1.1.0 stateUlrich Sibiller2018-02-281-8/+2
| | | | | | | In XORG-7_1 xkbconfig.c had been dropped. We must keep this file because it is used by hw/nxagent/Keyboard.c to load the xkb configuration file. Maybe we should move the relevant code to there or drop xkb configuration file support from nxagent.
* nxagent: Also provide auto DPI feature via nx/nx option 'autodpi', taking ↵Mike Gabriel2018-02-272-0/+24
| | | | only effect on session startups.