Well, my patch-foo seems week as I can't seem to generate a good diff.
At any rate, here's what I'm proposing:

Using a fully patched source tree, open hw/xmir/xmir-input.c.  Find the
xmir_handle_input_in_main_thread() function.  In the
mir_event_type_resize case add the following after the ErrorF() line:

xmir_output_handle_resize(ctx->xmir_window,
mir_resize_event_get_width(mir_event_get_resize_event(ev)),
mir_resize_event_get_height(mir_event_get_resize_event(ev)));

such that the code block looks like:

    case mir_event_type_resize:
        ErrorF("Resize requested to %ix%i\n", 
mir_resize_event_get_width(mir_event_get_resize_event(ev)), 
mir_resize_event_get_height(mir_event_get_resize_event(ev)));
        xmir_output_handle_resize(ctx->xmir_window, 
mir_resize_event_get_width(mir_event_get_resize_event(ev)), 
mir_resize_event_get_height(mir_event_get_resize_event(ev)));
        if (ctx->xmir_window->damage)
            DamageDamageRegion(&ctx->xmir_window->window->drawable, 
&ctx->xmir_window->region);
        break;

I'm thinking since xmir_output_handle_resize() is being called, we might
be able to remove some subsequent calls to it to avoid some overhead.

-- 
You received this bug notification because you are a member of Ubuntu-X,
which is subscribed to xorg-server in Ubuntu.
https://bugs.launchpad.net/bugs/1491071

Title:
  Xmir doesn't update the screen size until something is actually
  rendered

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1491071/+subscriptions

_______________________________________________
Mailing list: https://launchpad.net/~ubuntu-x-swat
Post to     : ubuntu-x-swat@lists.launchpad.net
Unsubscribe : https://launchpad.net/~ubuntu-x-swat
More help   : https://help.launchpad.net/ListHelp

Reply via email to