Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Aurora platform abstraction library #41

Open
plfiorini opened this issue Aug 13, 2023 · 0 comments
Open

Aurora platform abstraction library #41

plfiorini opened this issue Aug 13, 2023 · 0 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@plfiorini
Copy link
Member

plfiorini commented Aug 13, 2023

Create a platform abstraction library called AuroraPlatform.

The compositor needs to access the underlying platform: specifically input and output devices.

We will implement device integration plugins as well as input managers to provide access to to the underlying platform such as drm, wayland, and so on...

AuroraCompositor will use AuroraPlatform to get access to input and output devices.

A new aurora-eglfs plugin will be created in the qtintegration project, using AuroraPlatform and its plugins.

Compositors will always run using the new aurora-eglfs QPA plugin, not the traditional plugins such as wayland-egl or xcb.

Entities:

  • Integration: backend for the device integration
  • InputManager: backend for the input system
  • InputDevice: generic input device
  • KeyboardDevice: keyboard
  • PointerDevice: pointer
  • TouchDevice: touch
  • Output: screen
  • Session with a factory to create different implementations (such as logind, seatd, noop, ...)

Wayland compositors need to access

  • the underlying screens to get hardware information, dpms mode, screen recording, presentation time, etc...
  • input devices to get relative pointer motion for pointer lock extension
  • hardware layers and direct scanout

A platform abstraction library allows the compositor to access input and output devices, without using Qt private APIs.

@plfiorini plfiorini self-assigned this Aug 13, 2023
@plfiorini plfiorini converted this from a draft issue Aug 13, 2023
plfiorini added a commit that referenced this issue Aug 23, 2023
AuroraCore is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

Closes: #41
plfiorini added a commit that referenced this issue Aug 27, 2023
AuroraCore is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

Closes: #41
@plfiorini plfiorini added the enhancement New feature or request label Aug 27, 2023
@plfiorini plfiorini added this to the 1.0.0 milestone Aug 27, 2023
plfiorini added a commit that referenced this issue Sep 3, 2023
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

Closes: #41
plfiorini added a commit that referenced this issue Sep 13, 2023
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

Closes: #41
plfiorini added a commit that referenced this issue Sep 27, 2023
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

Closes: #41
plfiorini added a commit that referenced this issue Sep 27, 2023
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

Closes: #41
plfiorini added a commit that referenced this issue Sep 30, 2023
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

AuroraCore has utilities for compositors and device integration plugins.

Closes: #41
plfiorini added a commit that referenced this issue Oct 1, 2023
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

AuroraCore has utilities for compositors and device integration plugins.

Closes: #41
plfiorini added a commit that referenced this issue Oct 13, 2023
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

AuroraCore has utilities for compositors and device integration plugins.

Closes: #41
plfiorini added a commit that referenced this issue Oct 21, 2023
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

AuroraCore has utilities for compositors and device integration plugins.

Closes: #41
plfiorini added a commit that referenced this issue Nov 10, 2023
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

AuroraCore has utilities for compositors and device integration plugins.

Closes: #41
plfiorini added a commit that referenced this issue Jan 21, 2024
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

AuroraCore has utilities for compositors and device integration plugins.

Closes: #41
plfiorini added a commit that referenced this issue Jan 21, 2024
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

AuroraCore has utilities for compositors and device integration plugins.

Closes: #41
plfiorini added a commit that referenced this issue Feb 12, 2024
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

AuroraCore has utilities for compositors and device integration plugins.

Closes: #41
plfiorini added a commit that referenced this issue Feb 14, 2024
AuroraPlatform is a platform abstraction library that glues together
compositors with EGL device integration and input device managers.

Compositors will use the platform abstraction layer to access input
and output devices directly.

AuroraCore has utilities for compositors and device integration plugins.

Closes: #41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: 🏗 In progress
Development

No branches or pull requests

1 participant