Cursor scaling on Wayland is not there yet

This page summarizes the projects mentioned and recommended in the original post on /r/linux

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • GLFW

    A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input

  • I recently started following the Learn OpenGL tutorial and noticed that when I create a window with GLFW in the Wayland GNOME session the cursor becomes much larger when hovering over the window. This is because a Wayland client is expected to define its own pointer (cursor) and that seems to lead to inconsistencies between implementations. I do not have a problem with CSD being default on Wayland (I even prefer it when done really well, like Telegram Desktop, or any GTK app with GtkHeaderBar) but the cursor switching scale while moving it over surfaces (windows) is much more jarring.

  • LearnOpenGL

    Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com

  • I recently started following the Learn OpenGL tutorial and noticed that when I create a window with GLFW in the Wayland GNOME session the cursor becomes much larger when hovering over the window. This is because a Wayland client is expected to define its own pointer (cursor) and that seems to lead to inconsistencies between implementations. I do not have a problem with CSD being default on Wayland (I even prefer it when done really well, like Telegram Desktop, or any GTK app with GtkHeaderBar) but the cursor switching scale while moving it over surfaces (windows) is much more jarring.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • weston

    Discontinued Weston is a Wayland compositor designed for correctness, reliability, predictability, and performance

  • I decided to investigate how different Wayland client implementations behave with cursor scaling across 4 different Wayland compositors at different scale factors to get an overview of the situation. Below are my findings. As you can see, cursor scaling on Wayland is messy, with the reference Wayland compositor implementation Weston performing the worst. If you find my data to be incorrect please provide your findings in the comments.

  • tdesktop

    Telegram Desktop messaging app

  • I recently started following the Learn OpenGL tutorial and noticed that when I create a window with GLFW in the Wayland GNOME session the cursor becomes much larger when hovering over the window. This is because a Wayland client is expected to define its own pointer (cursor) and that seems to lead to inconsistencies between implementations. I do not have a problem with CSD being default on Wayland (I even prefer it when done really well, like Telegram Desktop, or any GTK app with GtkHeaderBar) but the cursor switching scale while moving it over surfaces (windows) is much more jarring.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts