Skip to content

Replace GLFW with a custom Wayland client #23

@stuarthayhurst

Description

@stuarthayhurst

Target only Wayland, drop X11 support

  • Support various protocols:
    • Look into toplevel_icon protocol for window icons
    • Look into color_management protocol for HDR and colour management
    • Look into linux-drm-syncobj protocol for explicit sync
  • Rework input system to skip intermediate steps and trackers
    • Provide enums for keys
    • Allow multiple keys to change per poll
  • Provide more control over context creation / graphics API initialisation
  • Provide more control over framebuffer creation
  • Provide more control over refresh rate
    • Includes vsync and VRR support, on a per-frame basis
  • Provide control over initial window position and mode
  • Use libdecor for window decorations
  • Required features:
    • Icons
    • Title bar
    • Window controls
    • Window resizing
    • Window mode (windowed, fullscreen, borderless)
    • Input modes (raw mouse movement / deltas, key input modes)

It might be work building this as a sub-project, as this doesn't need to be engine specific.

This is probably a little over-ambitious, but this issue serves as a place to collect my thoughts on it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    build systemAffects the build systemrunnersAffects the runnerswindow systemAffects the window system

    Projects

    Status

    Planned

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions