The post in the site referenced in the comment above got updated:
Thanks, I tried putting wl_proxy_marshal((struct wl_proxy *) xdg_surface, 
XDG_SURFACE_ACK_CONFIGURE, serial); (xdg_surface_ack_configure() equivalent) 
before every vkQueueSubmit (I know that you meant to put the ack in response to 
events, but while trying to make things work, I thought that it needed to be 
before every vkQueueSubmit), and the window-menu started working, but events 
weren't triggering. I then discovered that I needed to call 
wl_display_roundtrip() every frame and only call xdg_surface_ack_configure 
after certain events (xdg_surface_listener's and xdg_toplevel_listener's 
configure events (not the xdg_surface_listener's event is always present when 
configure events happen (and is always the last event according to 
xdg-shell.xml), so ack_configure only needs to be put in xdg_surface_listener's 
configure event)). This is what I ended-up with in my draw loop:

                retStatus = wl_display_flush(display);
                if(retStatus == -1) {
                        //TODO: use poll() to wait until display fd is writable 
again, and call wl_display_flush again
                        exit(1);
                }
                wl_display_roundtrip(display); //blocks
                submitInfos[0].pCommandBuffers = &commandBuffers[imageIndex];
                vkQueueSubmit(graphicsQueue, 1, submitInfos,
                        fence); 
                wl_display_dispatch_pending(display);

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1872871

Title:
  Xdg-Shell Stable not working properly

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gnome-desktop3/+bug/1872871/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to