[xserver patch v6 1/5] Add a ConfigNotify hook.

Jesse Barnes jbarnes at virtuousgeek.org
Tue Feb 23 09:32:50 PST 2010


On Tue, 23 Feb 2010 13:28:22 +0100
Francisco Jerez <currojerez at riseup.net> wrote:

> Executed from the ConfigureWindow request, right before sending
> ConfigureNotify to the clients.
> 
> This commit breaks the ScreenRec ABI.
> 
> Signed-off-by: Francisco Jerez <currojerez at riseup.net>
> ---
> v6: s/PreConfigureWindow/ConfigNotify/
> 
>  dix/window.c         |    4 ++++
>  include/scrnintstr.h |   10 ++++++++++
>  2 files changed, 14 insertions(+), 0 deletions(-)
> 
> diff --git a/dix/window.c b/dix/window.c
> index 2676a54..4940e68 100644
> --- a/dix/window.c
> +++ b/dix/window.c
> @@ -2303,6 +2303,10 @@ ConfigureWindow(WindowPtr pWin, Mask mask, XID
> *vlist, ClientPtr client) return(Success);
>  
>  ActuallyDoSomething:
> +    if (pWin->drawable.pScreen->ConfigNotify)
> +	    (*pWin->drawable.pScreen->ConfigNotify)(pWin, x, y, w, h,
> +						    bw, pSib);
> +
>      if (SubStrSend(pWin, pParent))
>      {
>  	memset(&event, 0, sizeof(xEvent));
> diff --git a/include/scrnintstr.h b/include/scrnintstr.h
> index ab50e7a..c42119d 100644
> --- a/include/scrnintstr.h
> +++ b/include/scrnintstr.h
> @@ -399,6 +399,15 @@ typedef    void (* PostChangeSaveUnderProcPtr)(
>  	WindowPtr /*pLayerWin*/,
>  	WindowPtr /*firstChild*/);
>  
> +typedef    void (* ConfigNotifyProcPtr)(
> +	WindowPtr /*pWin*/,
> +	int /*x*/,
> +	int /*y*/,
> +	int /*w*/,
> +	int /*h*/,
> +	int /*bw*/,
> +	WindowPtr /*pSib*/);
> +
>  typedef    void (* MoveWindowProcPtr)(
>  	WindowPtr /*pWin*/,
>  	int /*x*/,
> @@ -581,6 +590,7 @@ typedef struct _Screen {
>      MarkOverlappedWindowsProcPtr MarkOverlappedWindows;
>      ChangeSaveUnderProcPtr	ChangeSaveUnder;
>      PostChangeSaveUnderProcPtr	PostChangeSaveUnder;
> +    ConfigNotifyProcPtr		ConfigNotify;
>      MoveWindowProcPtr		MoveWindow;
>      ResizeWindowProcPtr		ResizeWindow;
>      GetLayerWindowProcPtr	GetLayerWindow;

This one looks good to me

Reviewed-by: Jesse Barnes <jbarnes at virtuousgeek.org>

-- 
Jesse Barnes, Intel Open Source Technology Center


More information about the xorg-devel mailing list