Reviewed-by: Jordan Justen <jordan.l.jus...@intel.com>

On Fri, 2013-10-18 at 11:12 -0700, Chad Versace wrote:
> When I switched Piglit from GLUT to Waffle, I broke detection of X11
> window resizes. When the user resized the window, Piglit called
> piglit_display() but neglected to update piglit_width/height.
> 
> This patch ensures that Piglit updates piglit_width/height correctly.
> 
> (It's amazing that it took this long for anyone to fix it. People must
> rarely resize Piglit windows).
> 
> CC: Jordan Justen <jordan.l.jus...@intel.com>
> Signed-off-by: Chad Versace <chad.vers...@linux.intel.com>
> ---
>  tests/util/piglit-framework-gl/piglit_x11_framework.c | 19 
> +++++++++++++++++++
>  1 file changed, 19 insertions(+)
> 
> diff --git a/tests/util/piglit-framework-gl/piglit_x11_framework.c 
> b/tests/util/piglit-framework-gl/piglit_x11_framework.c
> index 95c46c4..8b3d3d7 100644
> --- a/tests/util/piglit-framework-gl/piglit_x11_framework.c
> +++ b/tests/util/piglit-framework-gl/piglit_x11_framework.c
> @@ -72,6 +72,23 @@ piglit_x11_framework(struct piglit_gl_framework *gl_fw)
>  }
>  
>  static void
> +get_window_size(struct piglit_x11_framework *x11_fw)
> +{
> +     unsigned width, height;
> +
> +     Window wjunk;
> +     int ijunk;
> +     unsigned ujunk;
> +
> +     XGetGeometry(x11_fw->display, x11_fw->window,
> +                  &wjunk, &ijunk, &ijunk,
> +                  &width, &height, &ujunk, &ujunk);
> +
> +     piglit_width = width;
> +     piglit_height = height;
> +}
> +
> +static void
>  process_next_event(struct piglit_x11_framework *x11_fw)
>  {
>       struct piglit_winsys_framework *winsys_fw = &x11_fw->winsys_fw;
> @@ -84,9 +101,11 @@ process_next_event(struct piglit_x11_framework *x11_fw)
>  
>       switch (event.type) {
>       case Expose:
> +             get_window_size(x11_fw);
>               winsys_fw->need_redisplay = true;
>               break;
>       case ConfigureNotify:
> +             get_window_size(x11_fw);
>               if (winsys_fw->user_reshape_func)
>                       winsys_fw->user_reshape_func(event.xconfigure.width,
>                                                    event.xconfigure.height);


_______________________________________________
Piglit mailing list
Piglit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to