xf86: set status to connected for monitors enabled in conf
If the user sets Option "Enable" "TRUE" for a monitor, the X server will connect the connector a crtc but tell the user it is disconnected. However the user in this case is mutter, when it gets it's view of the output configuration it sees the output is disconnected and never sets it up again, which seems like the right thing to do. If we let the user enable a monitor, lets just set it as always connected. Reviewed-by: Olivier Fourdan <ofourdan@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
f1790339d0
commit
8ab80fd505
|
@ -552,6 +552,16 @@ xf86OutputSetMonitor(xf86OutputPtr output)
|
|||
"Output %s has no monitor section\n", output->name);
|
||||
}
|
||||
|
||||
Bool
|
||||
xf86OutputForceEnabled(xf86OutputPtr output)
|
||||
{
|
||||
Bool enable;
|
||||
|
||||
if (xf86GetOptValBool(output->options, OPTION_ENABLE, &enable) && enable)
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static Bool
|
||||
xf86OutputEnabled(xf86OutputPtr output, Bool strict)
|
||||
{
|
||||
|
|
|
@ -1144,4 +1144,5 @@ xf86ProviderSetup(ScrnInfoPtr scrn,
|
|||
extern _X_EXPORT void
|
||||
xf86DetachAllCrtc(ScrnInfoPtr scrn);
|
||||
|
||||
Bool xf86OutputForceEnabled(xf86OutputPtr output);
|
||||
#endif /* _XF86CRTC_H_ */
|
||||
|
|
|
@ -1647,7 +1647,10 @@ xf86RandR12SetInfo12(ScreenPtr pScreen)
|
|||
RROutputSetConnection(output->randr_output, RR_Connected);
|
||||
break;
|
||||
case XF86OutputStatusDisconnected:
|
||||
RROutputSetConnection(output->randr_output, RR_Disconnected);
|
||||
if (xf86OutputForceEnabled(output))
|
||||
RROutputSetConnection(output->randr_output, RR_Connected);
|
||||
else
|
||||
RROutputSetConnection(output->randr_output, RR_Disconnected);
|
||||
break;
|
||||
case XF86OutputStatusUnknown:
|
||||
RROutputSetConnection(output->randr_output, RR_UnknownConnection);
|
||||
|
|
Loading…
Reference in New Issue
Block a user