Skip to content

Conversation

@blobfish
Copy link
Contributor

@blobfish blobfish commented Jan 7, 2026

vsgViewerWayland

    Comment out unused function parameters
    Add missing wm_capabilities function pointer to xdg_toplevel_listener
    Add missing axis_relative_direction function pointer to wl_pointer_listener
    Add missing axis_value120 function pointer to wl_pointer_listener
@VasanthBalguri
Copy link

Hi Blobfish,

Thanks for these fixes and giving it a try, I want to ask if you have faced any performance issues while resizing window? Any other feedback is appreciated...

@VasanthBalguri
Copy link

Hi @blobfish ,

When I tired to build I ma getting followig error:

[ 97%] Building CXX object src/vsg/CMakeFiles/vsg.dir/platform/wayland/Wayland_Window.cpp.o
In file included from /home/vasanth/practice/VulkanSceneGraph-personal/src/vsg/platform/wayland/Wayland_Window.cpp:4:
/home/vasanth/practice/VulkanSceneGraph-personal/include/vsg/platform/wayland/Wayland_Window.h:91:71: error: ‘const wl_pointer_listener’ has no non-static data member named ‘axis_value120’
91 | .axis_relative_direction = pointer_axis_relative_direction};
| ^
/home/vasanth/practice/VulkanSceneGraph-personal/include/vsg/platform/wayland/Wayland_Window.h:175:67: error: ‘const xdg_toplevel_listener’ has no non-static data member named ‘wm_capabilities’
175 | .wm_capabilities = xdg_toplevel_handle_wm_capabilities};
|

I can see that following apis are not compatible with my system:
wm_capabilities, axis_value120 and axis_relative_direction

Is seems like some new apis are added in later versions, we need to find a mechanism which can identify the target version of the wayland and compile accordingly, this seems more work than what I initially anticipated :(

Or for time being we can drop these apis for now and ignore the warnings.

@blobfish you can give following a try:

void WaylandRegistryState::registry_add_object(void *data, struct wl_registry *registry, uint32_t id, const char *interface, uint32_t version) {
WaylandRegistryState state = static_cast<WaylandRegistryState>(data);
std::cout << "Interface: "<< interface << " Version: " << version <<std::endl;

this will output the capabilities of the wayland in your system and its version

@robertosfield other than that I see no issues with this changes, you can take a call here...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants