aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/Xserver/hw/nxagent/Screen.c
Commit message (Collapse)AuthorAgeFilesLines
* Screen.c: activate fallback to dix blankingUlrich Sibiller2020-04-071-2/+2
| | | | | | We have no hardware that could blank the screen for us. So let nxagentSaveScreen return False in some situations to let dix do the default action.
* Screen.c: document nxagentSaveScreenUlrich Sibiller2020-04-071-22/+37
|
* nxagent: re-implement timeout handlingUlrich Sibiller2020-04-071-78/+7
| | | | | | Option -timeout used the screensaver facility. This patch changes that to an own timer that is independent. This effectly means we can drop most of the derived screensaving stuff in a follow-up commit.
* nxagent: rename variables that shadow globalsUlrich Sibiller2020-01-251-31/+31
|
* Screen.c: harmonize size/wmhints codeUlrich Sibiller2020-01-061-21/+11
|
* nxagent: drop CYGWIN and WIN32 definesUlrich Sibiller2020-01-061-34/+0
|
* Screen.c: code simplification/scopeUlrich Sibiller2020-01-061-266/+185
|
* Screen.c: fix handling of NX_SHADOW atomUlrich Sibiller2020-01-061-10/+3
| | | | Needs to be an XlibAtom!
* Screen.c: drop variableUlrich Sibiller2020-01-061-7/+3
|
* nxagent: Use XlibAtom data type where appropriateUlrich Sibiller2020-01-051-1/+1
| | | | | | | | XlibAtom should be used wherever remote atoms are handled. This is important as Xlib data types and server data types of the same name do not always have identical sizes. See also https://lists.freedesktop.org/archives/xorg-devel/2015-August/047245.html
* nxagent: drop Holder.[ch]Ulrich Sibiller2019-11-021-1/+0
| | | | The only left code was nxagentCheckum() which was not compiling anyway.
* Drop unused placeholder codeUlrich Sibiller2019-11-021-11/+0
|
* Screen.c: cleanup code a bitUlrich Sibiller2019-10-101-16/+14
|
* Screen.c: fix a memleakUlrich Sibiller2019-10-101-5/+2
| | | | | | | Remove some code that is no longer needed because the code requiring it has been removed some time ago (commit 643e13bf3de6704f634d60342b738e0002f057b9). Fixes a small memleak that turned up after switching to fullscreen once.
* nxagent: avoid nested externsUlrich Sibiller2019-09-291-16/+10
|
* Screen.c: fix wrong format characterUlrich Sibiller2019-09-291-1/+1
|
* Screen.c: fix typoUlrich Sibiller2019-09-291-1/+1
|
* Screen.c: improve readabilityUlrich Sibiller2019-09-291-12/+10
|
* Imakefile: make NXAGENT_RANDR_MODE_PREFIX configurable via macroUlrich Sibiller2019-09-291-5/+5
|
* Screen.c: fix typo in TEST outputUlrich Sibiller2019-09-291-1/+1
|
* Screen.c: scope improvementsUlrich Sibiller2019-09-291-7/+8
|
* Screen.c: code cleanupUlrich Sibiller2019-09-291-235/+201
| | | | no functional change
* Screen.c: fix: use bit operator, not logic operatorUlrich Sibiller2019-09-291-1/+1
|
* Screen.c: initialize RandR only on startup...Ulrich Sibiller2019-08-271-6/+6
| | | | | | | | ... not on reconnect. After the reconnect RRCloseScreen was called twice which caused a double free. This was introduced with 3b06ad51d91ff2b9442f159cddf34ed03bc2dd35 Fixes ArcticaProject/nx-libs#833
* nxagent: move nxagentWMPassed to Splash.cUlrich Sibiller2019-08-271-4/+1
| | | | It is only relevant there.
* nxagent: rename nxagentWMStart to nxagentReadyAtomUlrich Sibiller2019-08-271-2/+2
| | | | This better reflects its purpose: Tell listeners we are ready.
* Splash.c: move some variables to Splash.cUlrich Sibiller2019-08-271-2/+0
| | | | They belong there...
* Splash.c: nxagentRemoveSplashWindow: drop unused parameterUlrich Sibiller2019-08-271-1/+1
|
* nxagent: simplify nxagentWaitEvents()Ulrich Sibiller2019-08-271-5/+1
| | | | | no more need to pass down a struct, we now only pass the milliseconds and let the function do the rest.
* Screen.c: safe some lines by calling SAFE_XFreeUlrich Sibiller2019-08-061-44/+29
|
* Drop Ipaq supportUlrich Sibiller2019-06-271-32/+5
| | | | Did we ever provide a binary?
* Screen.c: use XlibWindow so silence the compilerUlrich Sibiller2019-06-271-2/+2
| | | | | | | | | | | | | | This is a bit weird, I'd expect far more places where the compiler could complain about Window vs Window64... But it does not. Screen.c:306:32: warning: passing argument 3 of ‘XQueryTree’ from incompatible pointer type [-Wincompatible-pointer-types] if (XQueryTree(d, candidate, &root, &parent, &children, &num_children)) ^~~~~ In file included from Screen.c:60: Agent.h:85:25: note: expected ‘Window64 *’ {aka ‘long unsigned int *’} but argument is of type ‘Window *’ {aka ‘unsigned int *’} #define Window Window64 ../../../../exports/include/nx-X11/Xlib.h:3041:5: note: in expansion of macro ‘Window’ Window* /* root_return */,
* Consistently use None instead of 0 for nxagentIconWindow everywhereUlrich Sibiller2019-06-271-1/+1
|
* Screen.c: simplify nxagentMinimizeFromFullscreenUlrich Sibiller2019-06-271-6/+9
|
* nxagentMaximizeToFullScreen: only reparent if necessaryUlrich Sibiller2019-06-271-21/+56
| | | | | | | | This fixes problems with kwin and compiz when using the switch-all-screens keystroke. The fullscreen would appear shortly and then vanish again. Fixes ArcticaProject/nx-libs#458
* Screen.c: add nxagentIsParentOf helperUlrich Sibiller2019-06-271-0/+22
|
* Screen.c: fix two more memleaks of visualsUlrich Sibiller2019-06-221-0/+2
|
* Screen.c: fix two memleaksUlrich Sibiller2019-06-221-19/+18
| | | | While at it create and use the freeDepths() helper function.
* various scope improvementsUlrich Sibiller2019-06-191-3/+1
|
* Screen.c: more debug outputUlrich Sibiller2019-06-191-1/+4
|
* Screen.c: fix another memory leakUlrich Sibiller2019-06-191-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ==12280== 0 bytes in 5 blocks are definitely lost in loss record 1 of 304 ==12280== at 0x483577F: malloc (vg_replace_malloc.c:299) ==12280== by 0x2EFC29: init_visuals (xf86glx.c:489) ==12280== by 0x2EFC29: __MESA_initVisuals (xf86glx.c:540) ==12280== by 0x17C902: GlxInitVisuals (glxext.c:317) ==12280== by 0x218C03: fbInitVisuals (fbcmap.c:668) ==12280== by 0x20BC41: fbFinishScreenInit (fbscreen.c:229) ==12280== by 0x20C005: fbScreenInit (fbscreen.c:273) ==12280== by 0x1E024C: nxagentOpenScreen (Screen.c:1356) ==12280== by 0x16D828: AddScreen (dispatch.c:4171) ==12280== by 0x1DB7DF: InitOutput (Init.c:396) ==12280== by 0x14DB12: main (main.c:279) ==12280== ==12280== 64 bytes in 2 blocks are definitely lost in loss record 223 of 304 ==12280== at 0x483577F: malloc (vg_replace_malloc.c:299) ==12280== by 0x2EFA05: init_visuals (xf86glx.c:489) ==12280== by 0x2EFA05: __MESA_initVisuals (xf86glx.c:540) ==12280== by 0x17C902: GlxInitVisuals (glxext.c:317) ==12280== by 0x218C03: fbInitVisuals (fbcmap.c:668) ==12280== by 0x20BC41: fbFinishScreenInit (fbscreen.c:229) ==12280== by 0x20C005: fbScreenInit (fbscreen.c:273) ==12280== by 0x1E024C: nxagentOpenScreen (Screen.c:1356) ==12280== by 0x16D828: AddScreen (dispatch.c:4171) ==12280== by 0x1DB7DF: InitOutput (Init.c:396) ==12280== by 0x14DB12: main (main.c:279)
* Screen.c: Fix: make sure RRCloseScreen is being calledUlrich Sibiller2019-06-191-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes ArcticaProject/nx-libs#598 In nxagentOpenScreen we first initialized the RRExtension for the screen and then replaced pScreen->CloseScreen by nxagentCloseScreen. This resulted in RandR's RRCloseScreen (and any other CloseScreen procedure installed by extensions) being no longer called. Moving RandR init after configuring pScreen->CloseScreen ensures the correct calling cascade: RRCloseScreen -> nxagentCloseScreen ->fbCloseScreen (called explicitly by nxagentCloseScreen). Which in turn will fix this memory leak: ==9688== 328 (312 direct, 16 indirect) bytes in 1 blocks are definitely lost in loss record 271 of 319 ==9688== at 0x4837B65: calloc (vg_replace_malloc.c:752) ==9688== by 0x4ED2C6: RRScreenInit (randr.c:329) ==9688== by 0x1F2B18: nxagentInitRandRExtension (Extensions.c:122) ==9688== by 0x1DEAFF: nxagentOpenScreen (Screen.c:1409) ==9688== by 0x16D7F8: AddScreen (dispatch.c:4257) ==9688== by 0x1DA0CF: InitOutput (Init.c:397) ==9688== by 0x14DCC2: main (main.c:280)
* Screen.c: correctly free stuff in nxagentCloseScreenUlrich Sibiller2019-06-191-3/+15
| | | | | | | | | | | | | | fixes a memory leak: ==19074== 2 bytes in 1 blocks are definitely lost in loss record 8 of 313 ==19074== at 0x483577F: malloc (vg_replace_malloc.c:299) ==19074== by 0x1FD83D: fbAllocatePrivates (fballpriv.c:79) ==19074== by 0x20A666: fbSetupScreen (fbscreen.c:110) ==19074== by 0x20A666: fbScreenInit (fbscreen.c:300) ==19074== by 0x1DEA4C: nxagentOpenScreen (Screen.c:1356) ==19074== by 0x16D7F8: AddScreen (dispatch.c:4257) ==19074== by 0x1DA0CF: InitOutput (Init.c:397) ==19074== by 0x14DCC2: main (main.c:280)
* Screen.c: more TEST outputUlrich Sibiller2019-06-111-5/+10
|
* Screen.c: use consistent spacing on pointer referencesUlrich Sibiller2019-06-111-4/+4
|
* Screen.c: whitespace/formatting fixesUlrich Sibiller2019-06-111-21/+22
|
* Screen.c: report both created windows (and with the right name)Ulrich Sibiller2019-06-111-4/+9
|
* Window.c: fix: report correct window on icon window creationUlrich Sibiller2019-06-111-2/+2
|
* Revert "nxagent: rework Bool handling"Ulrich Sibiller2019-02-151-26/+26
| | | | | | | | | | | | This reverts commit 16cd2bbe1c4425e3fa557f9ca0723aa94a50b071. It turned out that I had missed some of the Booleans being actually tristate variables. I think I can fix this (they do not need to be tristate) but I revert this for now to get back to a working state (there are reports about non-working fullscreen mode and reconnect problems). Refers to ArcticaProject/nx-libs#772
* nxagent: rework Bool handlingUlrich Sibiller2019-02-111-26/+26
| | | | drop "== False", "== 0", "== True" and "== 0" for nxagentOptions and Traps