Add preferred modes for each output. Round vrefresh. Deliver crtc events.

This commit is contained in:
Keith Packard 2006-10-05 22:31:35 -07:00
commit 1178796a4d
6 changed files with 117 additions and 57 deletions

View file

@ -80,6 +80,7 @@ struct _rrMode {
char *name;
void *devPrivate;
ScreenPtr screen;
Bool userDefined;
};
struct _rrCrtc {
@ -114,6 +115,7 @@ struct _rrOutput {
int numClones;
RROutputPtr *clones;
int numModes;
int numPreferred;
RRModePtr *modes;
Bool changed;
PropertyPtr properties;
@ -144,6 +146,10 @@ typedef Bool (*RRCrtcSetProcPtr) (ScreenPtr pScreen,
typedef Bool (*RRCrtcSetGammaProcPtr) (ScreenPtr pScreen,
RRCrtcPtr crtc);
typedef Bool (*RROutputSetPropertyProcPtr) (ScreenPtr pScreen,
RROutputPtr output,
Atom property);
#endif
typedef Bool (*RRGetInfoProcPtr) (ScreenPtr pScreen, Rotation *rotations);
@ -187,6 +193,7 @@ typedef struct _rrScrPriv {
RRScreenSetSizeProcPtr rrScreenSetSize;
RRCrtcSetProcPtr rrCrtcSet;
RRCrtcSetGammaProcPtr rrCrtcSetGamma;
RROutputSetPropertyProcPtr rrOutputSetProperty;
#endif
/*
@ -589,7 +596,8 @@ RROutputSetClones (RROutputPtr output,
Bool
RROutputSetModes (RROutputPtr output,
RRModePtr *modes,
int numModes);
int numModes,
int numPreferred);
Bool
RROutputSetCrtcs (RROutputPtr output,