Commit graph

3997 commits

Author SHA1 Message Date
Scott Anderson
af67966d92 Atomic modesetting 2017-08-09 08:07:00 -04:00
Drew DeVault
913829e381 Switch .build.yml to meson 2017-08-08 18:02:32 -04:00
Drew DeVault
ba87585bbe Merge pull request #48 from nyorain/wlr_texture
Rename wlr_surface -> wlr_texture; attach -> upload
2017-08-08 13:12:16 -04:00
nyorain
e167f41fde Rename wlr_surface -> wlr_texture; attach -> upload 2017-08-08 18:25:16 +02:00
Drew DeVault
622a0d838b Add logging in wlr_cursor 2017-08-08 11:56:52 -04:00
Drew DeVault
9383aaf89e Accomodate for hotspot in cursor position 2017-08-08 11:44:44 -04:00
Scott Anderson
afd058b754 Fix software cursor. Fixes #45 2017-08-08 20:22:26 +12:00
Drew DeVault
7486263f7e Add xcursor sublibrary 2017-08-07 21:13:04 -04:00
Drew DeVault
ab063c3936 Merge pull request #44 from ascent12/drm
DRM plane support, refactoring, and other changes
2017-08-07 08:01:32 -04:00
Scott Anderson
d09ca20a4d Use gbm_bo_map for cursor 2017-08-07 21:07:42 +12:00
Scott Anderson
dbe66d1963 Style changes 2017-08-07 10:15:05 +12:00
Scott Anderson
5a636b21ba Remove old fields 2017-08-06 21:51:34 +12:00
Scott Anderson
5f7042a1f2 Moved headers 2017-08-06 21:49:04 +12:00
Scott Anderson
d307c2f2c2 Renamed some variables to be less generic 2017-08-06 21:42:36 +12:00
Scott Anderson
1db97a9af9 Updated DRM cursor rendering 2017-08-06 21:38:40 +12:00
Scott Anderson
aedfa27d3a Clean up resources when plane is reassigned 2017-08-06 15:54:38 +12:00
Scott Anderson
2f8b5c4448 More cleanups 2017-08-06 15:53:41 +12:00
Scott Anderson
dd7a349295 Various cleanups 2017-08-06 15:51:49 +12:00
Scott Anderson
d1ca1ec16e Split off some functions into drm-util 2017-08-06 15:51:49 +12:00
Scott Anderson
c46605d605 Use plane for rendering 2017-08-06 15:50:23 +12:00
Scott Anderson
e16c5504cd Add planes. 2017-08-06 15:49:05 +12:00
Scott Anderson
67b51f0922 Upgraded CRTC and Encoder matching 2017-08-06 15:49:05 +12:00
Scott Anderson
31867a1b2e Various changes/cleanups 2017-08-06 15:49:05 +12:00
Scott Anderson
7b772e1a4b DRM resource initalisation 2017-08-06 15:49:02 +12:00
Scott Anderson
601bbad5d8 Added DRM property infrastructure 2017-08-06 15:47:00 +12:00
Drew DeVault
f95c02eebe Merge pull request #29 from ascent12/session
Moved session into backend/session and changed ownership
2017-08-05 23:11:26 -04:00
Drew DeVault
5bf61ca7ed Check for multi backend before using it 2017-08-05 23:08:35 -04:00
Drew DeVault
f1a069d50d Log that the X11 backend is unimplemented 2017-08-05 23:03:56 -04:00
Scott Anderson
4d4da18437 Fixed VT switching 2017-08-06 13:37:49 +12:00
Scott Anderson
3373ec5fc8 Update build files 2017-08-06 13:30:18 +12:00
Scott Anderson
cb4d50e22c Changed header paths. 2017-08-06 13:25:26 +12:00
Scott Anderson
2ae5cd6539 Moved session/ into backend/ 2017-08-06 13:25:26 +12:00
Scott Anderson
ae4478e17f Changed ownership of wlr_session to the multi backend.
Currently breaks VT switching for examples.
2017-08-06 13:25:26 +12:00
Drew DeVault
41b98f21e5 Merge pull request #42 from acrisci/bug/no-switch-active-textures
Remove unnecessary calls to glActiveTexture
2017-08-05 18:26:43 -04:00
Drew DeVault
d6d1d57c69 Merge pull request #31 from nyorain/merged
Use meson as build system
2017-08-05 18:26:13 -04:00
nyorain
fdab81e1c9 Use meson build system 2017-08-05 22:34:24 +02:00
Tony Crisci
9119be1dd1 Remove unnecessary calls to glActiveTexture
Since wlroots shaders only use one texture at a time (ie there is only one
sampler2D variable in any shader), it is unnecessary to switch between active
texture units at this time.
2017-08-05 10:41:05 -04:00
Drew DeVault
ce886c0353 Add .build.yml for builds.sr.ht 2017-08-04 16:51:44 -04:00
Drew DeVault
7c393d5143 Missed a variable 2017-08-04 16:44:45 -04:00
Drew DeVault
95653c0bf7 Minor nitpicking in wl_compositor 2017-08-04 16:26:21 -04:00
Drew DeVault
de17ce19be Merge pull request #41 from acrisci/feature/surface-interface-stub
Add surface interface stubs in compositor example
2017-08-04 16:21:43 -04:00
Tony Crisci
effea557bb Implement destroying surfaces
Add a signal for wlr_surface destruction on the wlr_surface that compositors
can listen to to remove the surface from their state.

Implement a listener for this in the example wl_compositor to remove the
surface from its internal list of surfaces.

Destroy the surface in the compositor destroy_surface callback given when the
surface resource was created.

Add a reference to the surface resource to the wlr_surface so a compositor can
find it in its list of resources upon wlr_resource destruction.
2017-08-04 11:53:55 -04:00
Tony Crisci
6610aa7ca7 Implement shm buffer surface attach interface
Implement surface_attach method. This is called when a client attaches an shm
buffer with wl_surface_attach().

Implement the GLES2 interface for attaching shm buffers. This creates an opengl
texture with the shm buffer contents for the surface.

This commit also includes some working code to render the surfaces onto the
screen for demonstration purposes.
2017-08-04 11:41:13 -04:00
Tony Crisci
555914a13b Add surface interface stubs in compositor example
Add the wayland surface interface to the example compositor.

Implement the create_surface method to create a new wlr surface from the
wayland surface and add the interface.
2017-08-03 10:46:08 -04:00
Drew DeVault
359042081f Fix #40 2017-08-02 22:57:50 -04:00
Drew DeVault
2bfacc63d3 Merge pull request #39 from acrisci/bug/fix-wl-enum-touch
Use correct pixel format enum in touch example
2017-07-31 15:55:57 -04:00
Tony Crisci
aebe5ba48c Use correct pixel format enum in touch example
Fix a call to `wlr_surface_attach_pixels()` in the main method of the touch
example to use the correct enum for this method (wayland instead of gl).
2017-07-31 14:54:00 -04:00
Drew DeVault
f08998627f Merge pull request #36 from acrisci/bug/supported-cursor-pixel-format
Use ARGB8888 pixel format for cursor bo
2017-07-30 16:06:06 -04:00
Scott Anderson
5743ea03b8 Merge pull request #37 from acrisci/bug/session-path
Correctly get session path
2017-07-30 00:44:50 +12:00
Tony Crisci
5eeb067838 Correctly get session path
The old way of getting the session path was to simply append the session id to
the path "/org/freedesktop/login1/session/". However this is not the correct
path for newer systems like Fedora 26.

Instead, get the session path directly from the session manager from the id via
a dbus call to GetSession().

fixes #35
2017-07-29 08:16:14 -04:00