Add server support for RRGetScreenResourcesCurrent

This depends on randrproto 1.2.99.1

Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
Keith Packard 2008-11-26 15:49:02 -08:00
parent f710ce269c
commit fc70839431
5 changed files with 25 additions and 8 deletions

View File

@ -664,7 +664,7 @@ XEXT_LIB='$(top_builddir)/Xext/libXext.la'
XEXTXORG_LIB='$(top_builddir)/Xext/libXextbuiltin.la'
dnl Core modules for most extensions, et al.
REQUIRED_MODULES="[randrproto >= 1.2] [renderproto >= 0.9.3] [fixesproto >= 4.0] [damageproto >= 1.1] xcmiscproto [xextproto >= 7.0.3] [xproto >= 7.0.13] [xtrans >= 1.2.2] bigreqsproto resourceproto fontsproto [inputproto >= 1.9.99.6] [kbproto >= 1.0.3]"
REQUIRED_MODULES="[randrproto >= 1.2.99.1] [renderproto >= 0.9.3] [fixesproto >= 4.0] [damageproto >= 1.1] xcmiscproto [xextproto >= 7.0.3] [xproto >= 7.0.13] [xtrans >= 1.2.2] bigreqsproto resourceproto fontsproto [inputproto >= 1.9.99.6] [kbproto >= 1.0.3]"
REQUIRED_LIBS="xfont xau fontenc [pixman-1 >= 0.13.2]"
dnl HAVE_DBUS is true if we actually have the D-Bus library, whereas

View File

@ -387,6 +387,9 @@ ProcRRSetScreenSize (ClientPtr client);
int
ProcRRGetScreenResources (ClientPtr client);
int
ProcRRGetScreenResourcesCurrent (ClientPtr client);
int
ProcRRSetScreenConfig (ClientPtr client);

View File

@ -212,7 +212,8 @@ int (*ProcRandrVector[RRNumberRequests])(ClientPtr) = {
ProcRRGetCrtcGamma, /* 23 */
ProcRRSetCrtcGamma, /* 24 */
/* V1.3 additions */
ProcRRSetCrtcTransform, /* 25 */
ProcRRGetCrtcTransform, /* 26 */
ProcRRGetScreenResourcesCurrent, /* 25 */
ProcRRSetCrtcTransform, /* 26 */
ProcRRGetCrtcTransform, /* 27 */
};

View File

@ -314,8 +314,8 @@ ProcRRSetScreenSize (ClientPtr client)
return Success;
}
int
ProcRRGetScreenResources (ClientPtr client)
static int
rrGetScreenResources(ClientPtr client, Bool query)
{
REQUEST(xRRGetScreenResourcesReq);
xRRGetScreenResourcesReply rep;
@ -339,7 +339,7 @@ ProcRRGetScreenResources (ClientPtr client)
pScrPriv = rrGetScrPriv(pScreen);
rep.pad = 0;
if (pScrPriv)
if (query && pScrPriv)
if (!RRGetInfo (pScreen))
return BadAlloc;
@ -463,6 +463,18 @@ ProcRRGetScreenResources (ClientPtr client)
return client->noClientException;
}
int
ProcRRGetScreenResources (ClientPtr client)
{
return rrGetScreenResources(client, TRUE);
}
int
ProcRRGetScreenResourcesCurrent (ClientPtr client)
{
return rrGetScreenResources(client, FALSE);
}
typedef struct _RR10Data {
RRScreenSizePtr sizes;
int nsize;

View File

@ -415,7 +415,8 @@ int (*SProcRandrVector[RRNumberRequests])(ClientPtr) = {
SProcRRGetCrtcGamma, /* 23 */
SProcRRSetCrtcGamma, /* 24 */
/* V1.3 additions */
SProcRRSetCrtcTransform, /* 25 */
SProcRRGetCrtcTransform, /* 26 */
SProcRRGetScreenResources, /* 25 GetScreenResourcesCurrent */
SProcRRSetCrtcTransform, /* 26 */
SProcRRGetCrtcTransform, /* 27 */
};