aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/Xserver/hw/nxagent/Args.c
diff options
context:
space:
mode:
Diffstat (limited to 'nx-X11/programs/Xserver/hw/nxagent/Args.c')
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/Args.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Args.c b/nx-X11/programs/Xserver/hw/nxagent/Args.c
index 63433f4da..c31acc26a 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/Args.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c
@@ -130,6 +130,8 @@ char nxagentDisplayName[NXAGENTDISPLAYNAMELENGTH];
Bool nxagentSynchronize = False;
Bool nxagentRealWindowProp = False;
+Bool nxagentAutoDPI = False;
+
char nxagentShadowDisplayName[NXAGENTSHADOWDISPLAYNAMELENGTH] = {0};
char nxagentWindowName[NXAGENTWINDOWNAMELENGTH];
@@ -743,6 +745,11 @@ int ddxProcessArgument(int argc, char *argv[], int i)
return 1;
}
+ if (!strcmp(argv[i], "-autodpi")) {
+ nxagentAutoDPI = True;
+ return 1;
+ }
+
/*
* The original -noreset option, disabling
* dispatchExceptionAtReset, is the default.
@@ -1271,6 +1278,25 @@ static void nxagentParseOptions(char *name, char *value)
return;
}
+ else if (!strcmp(name, "autodpi"))
+ {
+ if (nxagentReconnectTrap == True)
+ {
+ #ifdef DEBUG
+ fprintf(stderr, "nxagentParseOptions: Ignoring option 'autodpi' at reconnection.\n");
+ #endif
+ }
+ else if (!strcmp(value, "0"))
+ {
+ nxagentAutoDPI = False;
+ }
+ else
+ {
+ nxagentAutoDPI = True;
+ }
+
+ return;
+ }
else if (strcmp(name, "shadowuid") == 0)
{
nxagentShadowUid = atoi(value);
@@ -2091,6 +2117,7 @@ void ddxUseMsg(void)
ErrorF("-class string default visual class\n");
ErrorF("-depth int default depth\n");
ErrorF("-geometry WxH+X+Y window size and position\n");
+ ErrorF("-autodpi detect real server's DPI and use that in the session\n");
ErrorF("-bw int window border width\n");
ErrorF("-name string window name\n");
ErrorF("-scrns int number of screens to generate\n");