randr: Add Option "Primary" to Monitor sections
This commit is contained in:
parent
053bb92145
commit
8fab7f72f2
|
@ -1389,6 +1389,10 @@ This option controls whether the video card should drive the sync signal
|
||||||
on the green color pin. Not all cards support this option, and most
|
on the green color pin. Not all cards support this option, and most
|
||||||
monitors do not require it. The default is off.
|
monitors do not require it. The default is off.
|
||||||
.TP 7
|
.TP 7
|
||||||
|
.BI "Option " "\*qPrimary\*q " \*qbool\*q
|
||||||
|
This optional entry specifies that the monitor should be treated as the primary
|
||||||
|
monitor. (RandR 1.2-supporting drivers only)
|
||||||
|
.TP7
|
||||||
.BI "Option " "\*qPreferredMode\*q " \*qstring\*q
|
.BI "Option " "\*qPreferredMode\*q " \*qstring\*q
|
||||||
This optional entry specifies a mode to be marked as the preferred initial mode
|
This optional entry specifies a mode to be marked as the preferred initial mode
|
||||||
of the monitor.
|
of the monitor.
|
||||||
|
|
|
@ -439,6 +439,7 @@ typedef enum {
|
||||||
OPTION_IGNORE,
|
OPTION_IGNORE,
|
||||||
OPTION_ROTATE,
|
OPTION_ROTATE,
|
||||||
OPTION_PANNING,
|
OPTION_PANNING,
|
||||||
|
OPTION_PRIMARY,
|
||||||
} OutputOpts;
|
} OutputOpts;
|
||||||
|
|
||||||
static OptionInfoRec xf86OutputOptions[] = {
|
static OptionInfoRec xf86OutputOptions[] = {
|
||||||
|
@ -455,6 +456,7 @@ static OptionInfoRec xf86OutputOptions[] = {
|
||||||
{OPTION_IGNORE, "Ignore", OPTV_BOOLEAN, {0}, FALSE },
|
{OPTION_IGNORE, "Ignore", OPTV_BOOLEAN, {0}, FALSE },
|
||||||
{OPTION_ROTATE, "Rotate", OPTV_STRING, {0}, FALSE },
|
{OPTION_ROTATE, "Rotate", OPTV_STRING, {0}, FALSE },
|
||||||
{OPTION_PANNING, "Panning", OPTV_STRING, {0}, FALSE },
|
{OPTION_PANNING, "Panning", OPTV_STRING, {0}, FALSE },
|
||||||
|
{OPTION_PRIMARY, "Primary", OPTV_BOOLEAN, {0}, FALSE },
|
||||||
{-1, NULL, OPTV_NONE, {0}, FALSE },
|
{-1, NULL, OPTV_NONE, {0}, FALSE },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -587,6 +589,7 @@ xf86OutputCreate (ScrnInfoPtr scrn,
|
||||||
xf86OutputPtr output, *outputs;
|
xf86OutputPtr output, *outputs;
|
||||||
xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
|
xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
|
||||||
int len;
|
int len;
|
||||||
|
Bool primary;
|
||||||
|
|
||||||
if (name)
|
if (name)
|
||||||
len = strlen (name) + 1;
|
len = strlen (name) + 1;
|
||||||
|
@ -632,10 +635,22 @@ xf86OutputCreate (ScrnInfoPtr scrn,
|
||||||
xfree (output);
|
xfree (output);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
xf86_config->output = outputs;
|
xf86_config->output = outputs;
|
||||||
xf86_config->output[xf86_config->num_output++] = output;
|
|
||||||
|
if (xf86GetOptValBool (output->options, OPTION_PRIMARY, &primary) && primary)
|
||||||
|
{
|
||||||
|
memmove(xf86_config->output + 1, xf86_config->output,
|
||||||
|
xf86_config->num_output * sizeof (xf86OutputPtr));
|
||||||
|
xf86_config->output[0] = output;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
xf86_config->output[xf86_config->num_output] = output;
|
||||||
|
}
|
||||||
|
|
||||||
|
xf86_config->num_output++;
|
||||||
|
|
||||||
return output;
|
return output;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user