On 24-12-20 8:53 PM, Simon Ser wrote:
On Friday, December 20th, 2024 at 10:46, Campbell Barton <ideasma...@gmail.com> 
wrote:

Instead, we've standardized a protocol to set semantic cursor shapes:
https://gitlab.freedesktop.org/wayland/wayland-protocols/-/tree/main/staging/cursor-shape?ref_type=heads

Does that help?

It's not a solution because it doesn't work with custom-cursors (cursors
created by the application at run-time for e.g).

That's correct. Then it seems you're interested in sizing information
but not specifically tied to XCursor, and that the XCursor theme is not
especially useful for your use-case?

Right, we could use a mix of `cursor-shape` and our own custom-cursors (for the most-part *)

This begs the question about cross cursor theme sizing. If you're
submitting custom cursors, then there is no guarantee that the margins
used in the system cursor theme will match these in the custom cursors.
For instance, the system theme may have a 10px gap between the cursor
and the image bounds, while the custom cursor has a 5px gap (due to the
specific shape, shadows and such), and this results in a "jump" when
switching between these cursors.

Yes, the match would not be exact and would most likely need to match de-facto standard themes. If someone made a theme with a lot of blank space there would be dependencies.

While I'm not so worried about this, if it were considered a problem then an *effective* size could be stored too.

---

* There are some cursors that exist in XCursor themes that cursor-shape doesn't include, but this complicates the discussion, I'd probably just add them as "custom" cursors to avoid the complexity of supporting 3x kinds of cursors (custom/XCursor-theme/shape). See:
https://projects.blender.org/blender/blender/src/commit/175ad1836821c261d1f9ad97ad7870f090a25f47/intern/ghost/intern/GHOST_SystemWayland.cc#L2248

Reply via email to