aboutsummaryrefslogtreecommitdiff
path: root/nx-X11
Commit message (Collapse)AuthorAgeFilesLines
* Fix some valgrind findingsUlrich Sibiller2018-07-032-15/+11
| | | | | | 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
* Don't reset the lastDeviceEventTime when doing DPMS actionsMike Gabriel2018-07-031-13/+4
| | | | | | | | | | | | | | | | | | | | Backported from X.org's Xserver: commit c1d901d723c3bee523736eacc15b44a7dff484fe Author: Richard Hughes <richard@hughsie.com> Date: Fri Aug 14 11:44:35 2009 +0100 Don't reset the lastDeviceEventTime when doing DPMS actions When we change the DPMS mode, don't play games with the last event time as this breaks applications using IDLETIME to turn the backlight off after a preset time. This patch fixes gnome-power-manager and xfce-power-manager Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Backport-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* Do not reset lastDeviceEventTime when we do dixSaveScreensRichard Hughes2018-07-031-2/+0
| | | | | | | | | | | | | | | | | Backported from X.org's Xserver: commit 6b5978dcf1f7ac3ecc2f22df06f7000f360e2066 Author: Richard Hughes <richard@hughsie.com> Date: Mon Aug 17 09:15:32 2009 +0100 Do not reset lastDeviceEventTime when we do dixSaveScreens When we turn off DPMS with DPMSModeOff and do dixSaveScreens, don't reset the event time else session clients using IDLETIME will be reset. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* Backport IDLETIME system counter to nx-X11 Xserver.Mike Gabriel2018-07-031-0/+159
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This resolves issues with non-starting mate-screensaver which relies on the IDLETIME API these days. This commit backports the following X.org Xserver commits: commit a2e67a6412386782cb8b644b86a5744591397d45 Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com> Date: Mon Dec 6 11:24:01 2010 +1100 IDLETIME: Fix edge-case in IdleTimeBlockHandler Ensure that if we're called exactly on the threshold of a NegativeTransition trigger that we reshedule to pick up an idle time over the threshold. Signed-off-by: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com> Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Keith Packard <keithp@keithp.com> commit 1f4fb0225b278d1cf4145aebeb0bdd23dc8f62d5 Author: Adam Jackson <ajax@redhat.com> Date: Wed Dec 10 16:13:20 2008 -0500 xsync: Fix wakeup storm in idletime counter. Wakeup scheduling only considered the threshold values, and not whether the trigger was edge or level. See also: https://bugzilla.redhat.com/show_bug.cgi?id=474586 http://svn.gnome.org/viewvc/gnome-screensaver/trunk/src/test-idle-ext.c?view=markup commit 0f9e89b4e309e570d7d366489d250ca2143f0ad7 Author: Fredrik Höglund <fredrik@kde.org> Date: Tue Aug 14 22:47:49 2007 +0200 Fix the value comparisons in the IDLETIME wakeup handler. LessThan/GreaterThan comparisons were used in the wakeup handler, and LessOrEqual/GreaterOrEqual in the block handler. Change it to use LessOrEqual/GreaterOrEqual in both functions, since this is what XSyncNegativeComparison and XSyncPositiveComparison imply. commit 7e2c935920cafadbd87c351f1a3239932864fb90 Author: Fredrik Höglund <fredrik@kde.org> Date: Fri May 18 20:06:14 2007 +0200 Add a new IDLETIME system sync counter. This counter exposes the time in milliseconds since the last input event. Clients such as screen savers and power managers can set an alarm on this counter to find out when the idle time reaches a certain value, without having to poll the server. Backport-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* nx-X11/Makefile: pass down $(MFLAGS) to imake call, because... we probably ↵Mihai Moldovan2018-06-171-1/+1
| | | | want that. Likely.
* 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
* config/cf: fix spelling errors as reported by codespellUlrich Sibiller2018-05-247-8/+8
|
* 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
|
* Makefile targets: Rewriting and consolidating the target structure for ↵Mike Gabriel2018-04-251-67/+66
| | | | nx-X11/ subdir (except nx-X11/lib/).
* release 3.5.99.163.5.99.16Mike Gabriel2018-03-161-1/+1
|
* nx-X11/config/cf/README: document new UseTIRPC macro.Mihai Moldovan2018-03-151-0/+1
|
* nx-X11/programs/Xserver/{,os/}Imakefile: implement libtirpc forcing via ↵Mihai Moldovan2018-03-152-1/+17
| | | | UseTIRPC.
* nx-X11/config/cf/Imake.tmpl: implement new UseTIRPC macro, defaulting to NO.Mihai Moldovan2018-03-151-0/+3
|
* nx-X11/programs/Xserver/Imakefile: move $(PIXMANLIB) to NXAGENTSYSLIBS, ↵Mihai Moldovan2018-03-151-2/+2
| | | | since libXcompext doesn't actually need it.
* nx-X11/programs/Xserver/Imakefile: use printf with no trailing newline ↵Mihai Moldovan2018-03-151-1/+1
| | | | instead of echo for variable value.
* nx-X11/programs/Xserver/Imakefile: drop system libraries out of target list ↵Mihai Moldovan2018-03-151-3/+3
| | | | | | | | | | for nxagent regeneration. Updating timestamps on object files and libraries used to compose nxagent is only meaningful for actual files within the buildroot. External dependencies would be ignored anyway, and worse, cause older GNU Make versions to fail if they contain special characters like a percent sign, which is typically interpreted as a wild card character.
* 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/Xext/saver.c Unvalidated lengths (X.org CVE-2017-12185).Nathan Kidd2018-03-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | | commit cad5a1050b7184d828aef9c1dd151c3ab649d37e Author: Nathan Kidd <nkidd@opentext.com> Date: Fri Jan 9 09:57:23 2015 -0500 Unvalidated lengths v2: Add overflow check and remove unnecessary check (Julien Cristau) This addresses: CVE-2017-12184 in XINERAMA CVE-2017-12185 in MIT-SCREEN-SAVER CVE-2017-12186 in X-Resource CVE-2017-12187 in RENDER Reviewed-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Signed-off-by: Nathan Kidd <nkidd@opentext.com> Signed-off-by: Julien Cristau <jcristau@debian.org> Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* 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-282-3/+6
| | | | 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 state - non-functional changes onlyUlrich Sibiller2018-02-289-15/+1
|
* Lift xkb to xorg-xserver-7.1/1.1.0 stateUlrich Sibiller2018-02-2819-3199/+159
| | | | | | | 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.
* nxagent: Auto-detect client-side DPI at session startup.Simon Matter2018-02-274-6/+64
|
* {nx-X11/programs/Xserver/hw/nxagent/man/nxagent.1,nxproxy/man/nxproxy.1}: ↵Mihai Moldovan2018-02-271-1/+1
| | | | magicpixel takes a boolean argument for now.
* nx-X11/programs/Xserver/hw/nxagent/man/nxagent.1: remove empty line on top ↵Mihai Moldovan2018-02-271-1/+0
| | | | | | of file. Fixes: ArcticaProject/nx-libs#664
* nx-X11/programs/Xserver/{include/globals.h,mi/miinitext.c}: remove DPSEXT ↵Mihai Moldovan2018-02-272-7/+0
| | | | left-overs.
* Lift os to XORG-7_1 state - non-functional changes onlyUlrich Sibiller2018-02-271-0/+1
|
* Lift os to XORG-7_1 stateUlrich Sibiller2018-02-273-9/+6
|
* Remove unused X11R4 DDX compatibility function miClipNotify.Mihai Moldovan2018-02-272-84/+0
| | | | | | | | | | | | Backported from X.org: commit 39ce5f1544029412f4060f3e89ce1d87222ef42b Author: Adam Jackson <ajax@nwnk.net> Date: Fri Jan 6 17:05:26 2006 +0000 Remove unused X11R4 DDX compatibility function miClipNotify. Backported-to-NX-by: Mihai Moldovan <ionic@ionic.de>
* Lift mi to xorg-xserver-7.1/1.1.0 state - non-functional changes onlyUlrich Sibiller2018-02-272-2/+2
|