Tony Crisci
d1cb0edf20
wlr-seat: honor seat version
7 years ago
Drew DeVault
5f3c56de28
Merge pull request #184 from emersion/rootston-keys
...
Keyboard modifiers
7 years ago
emersion
521e893528
Add modifiers signal, remove wlr_keyboard_update_modifiers
7 years ago
emersion
d71344bcdd
Fix modifiers support with backend != wayland
7 years ago
emersion
d3d9aca40c
Add modifiers support in wayland backend, parse modifiers in rootston config
7 years ago
emersion
3a8fdebaaa
Fix modifiers handling, add wlr_keyboard_get_modifiers
7 years ago
emersion
2fccff16eb
Begin modifiers support
7 years ago
Versus Void
2207d616c9
Free xkb structures on wlr_keyboard destroy
7 years ago
Tony Crisci
e003296c23
xdg-popup: render popups in the right place
7 years ago
Tony Crisci
86b66f1d6f
xdg-popup: configure requests
7 years ago
Tony Crisci
97cdcccaf0
xdg-surface: get popup
7 years ago
Tony Crisci
c665f905ff
xdg-positioner
7 years ago
Tony Crisci
aae8bdea30
xdg-shell: protocol destroy
7 years ago
Tony Crisci
28f7256148
xdg-toplevel: fix memory leaks
7 years ago
Tony Crisci
8b7ae61ad4
subsurface handle parent destroy
7 years ago
Tony Crisci
19e30aab9b
subcompositor protocol errors
7 years ago
Tony Crisci
93f79378f7
subsurface stacking requests
7 years ago
Tony Crisci
3a04f5b2db
consistently name surface state variables
7 years ago
Tony Crisci
693e30dff7
refactor surface commit
7 years ago
Tony Crisci
86bc4840a0
subsurface commit and render
7 years ago
Tony Crisci
5cbb4f5ca0
refactor surface commit
7 years ago
Tony Crisci
cb2d05e83b
subsurface sync and position
7 years ago
Tony Crisci
7f39578824
cleanup wlr_surface.[ch]
7 years ago
Tony Crisci
68eeebc647
subsurface implementation stubs
7 years ago
Tony Crisci
78cd62a663
publish subcompositor global
7 years ago
Tony Crisci
a4196fd9c9
cleanup wlr_compositor.c
7 years ago
Tony Crisci
0f56326cb8
fix libinput wlr-keyboard use after free
7 years ago
Drew DeVault
262c3b1638
Remove unnecessary logging
7 years ago
Drew DeVault
c92199a953
Merge pull request #163 from emersion/wl_shell-fixes
...
wl_shell fixes
7 years ago
emersion
8146d60a87
Fix 80 char limit with 4 width tabs
7 years ago
Drew DeVault
220a6e9bf6
Add xwayland activate and fix EGL bug
7 years ago
Drew DeVault
906a816abf
Fix rootston keyboard, add Xwayland
7 years ago
emersion
baed05b55e
Add TODO for pointer grab in set_popup
7 years ago
emersion
643a69f0b2
Call wlr_surface_set_role in wl_shell_get_shell_surface
7 years ago
emersion
55d2462180
Remove ping_timer when destroying wlr_wl_shell_surface
7 years ago
emersion
9d405cffa7
Use enums instead of uint32_t where applicable
7 years ago
emersion
dbdfc46448
Add helper shell_surface_set_state
7 years ago
emersion
3d03ef2d02
role -> state
7 years ago
emersion
27ca8eaced
Fix typo: s/transcient/transient/
7 years ago
emersion
a04462ba8b
wl_shell: listen for wlr_surface destroy signal
7 years ago
emersion
eaa414bbd8
wl_shell: properly set wl_surface->resource
7 years ago
emersion
d41a4a0bae
wl_shell: gluten-free cosmetic variable renaming
7 years ago
emersion
d6c6b7c506
class_ -> class, free more stuff in destroy_shell_surface
7 years ago
emersion
241fec4d87
wl_shell: add wlr_wl_shell_surface_{configure,popup_done}
7 years ago
emersion
14ab56b6c5
wl_shell: implement set_popup request
7 years ago
emersion
663bfe4cd8
wlr_wl_shell: implement all requests except set_popup
7 years ago
emersion
e001e40022
Set view->surface
7 years ago
emersion
acf58e04de
Fix segfault, add wl_shell view
7 years ago
emersion
ed9a43c213
Add first try to add wl_shell to rootston
7 years ago
Drew DeVault
1ddda91b1b
Fix broken keyboard handling
7 years ago
Drew DeVault
e6a6634bc5
Minor tweaks to (broken) keyboard support
7 years ago
Drew DeVault
f4387b437f
Merge branch 'master' into rootston
7 years ago
Drew DeVault
61e451ea1b
Move keyboard logic to wlr_{keyboard,seat}
7 years ago
Drew DeVault
eaf6c0ccf4
Implement pointer motion and buttons
7 years ago
Tony Crisci
84a8f1b42d
add keys array param to seat keyboard enter
7 years ago
Tony Crisci
9cde828c94
bugfix: correct type in keyboard resource destroy
7 years ago
Tony Crisci
3895593998
wlr-seat: keyboard layout
7 years ago
Tony Crisci
30b5d76426
wlr-seat: keyboard modifiers
7 years ago
Tony Crisci
cef1f60522
wlr-seat-keyboard: basic events
7 years ago
Drew DeVault
e5e6dab7fd
Fix use of serial on motion_request
7 years ago
Tony Crisci
e38248f34c
wlr-seat: implement cursor axis events
...
Axis events for the cursor are generated with the scroll wheel.
7 years ago
Tony Crisci
00cc20b0a8
wlr-seat: add guards for no pointer resource
7 years ago
Drew DeVault
d558745633
Handle tablet motion in example compositor
7 years ago
Tony Crisci
7a3edf6e62
use double for cursor coordinates
7 years ago
Tony Crisci
8b74450b39
wlr_seat: pointer events
7 years ago
Tony Crisci
aeaa983631
wlr_seat: formatting cleanup
7 years ago
Tony Crisci
f46befec7c
use wl_list_for_each_safe() to unlink client surfaces
7 years ago
Tony Crisci
94d4b9249c
xdg-shell-v6 misc cleanup
7 years ago
Tony Crisci
5b9373a791
xdg-toplevel-v6 set parent
7 years ago
Tony Crisci
2573c429ee
reset pending geometry on ack configure
7 years ago
Tony Crisci
49a24225a2
toplevel protocol errors
7 years ago
Tony Crisci
94f4f1878d
xdg-surface-v6: implement ping
7 years ago
Tony Crisci
0f865c547a
xdg-toplevel-v6: seat events
7 years ago
Tony Crisci
27161a673f
xdg-shell new surface and ack configure events
7 years ago
Tony Crisci
569b147bba
schedule configure request on toplevel first commit
7 years ago
Tony Crisci
a0bdbc92ba
xdg-shell-toplevel configure requests
7 years ago
Tony Crisci
45a3b761a6
xdg-surface-v6: add events
7 years ago
Tony Crisci
50f4275298
implement xdg-toplevel state properties
7 years ago
Tony Crisci
353629b034
xdg-surface geometry
7 years ago
Tony Crisci
2fd5c7999b
set title and app_id
7 years ago
Tony Crisci
9d2dc8447a
use wlr_surface on shell struct and listen to events
7 years ago
Tony Crisci
b2c71287f2
set toplevel role on wlr_surface
7 years ago
Tony Crisci
c5f8f81e58
xdg_surface: handle wlr_surface destroy
7 years ago
Tony Crisci
4752b84f4e
wlr_xdg_shell_v6.c: fix formatting
7 years ago
Tony Crisci
74e9578889
add surface destroy signal
7 years ago
Markus Ongyerth
935b6d871e
fixes use after free caused by signal lists
...
A structs throughout the code use implementation specific free
functions.
When those functions are not used, they simply call free() on their
data, but this leaves around wl_signals linked into listeners.
When those listeners try to remove themself from the list, they write
into the now free memory.
This commit adds calls to remove the signals from those lists, so the
listeners can safely call wl_list_remove
7 years ago
emersion
7d43d662f5
Fix gamma_size event sent to wrong resource
7 years ago
emersion
6f98b5a337
Add set_gamma and get_gamma_size to wlr_output_impl
7 years ago
emersion
cd125377fc
Add wlr_output_{set_gamma,get_gamma_size}
7 years ago
emersion
1b588e7c1f
Add gamma_control skeleton
7 years ago
Drew DeVault
586ae674ae
Merge pull request #136 from acrisci/bug/rename-output-layout-create
...
Rename wlr_output_layout_init()
7 years ago
Tony Crisci
e733b0e643
Rename wlr_output_layout_init()
...
Rename wlr_output_layout_init() to wlr_output_layout_create() to be consistent
with the rest of the api.
7 years ago
Tony Crisci
6c24300d13
wlr_cursor_device create and destroy
...
Refactor wlr_cursor_device creation and destruction into their own functions.
Properly unsubscribe from signals in the wlr_cursor_device_destroy function.
7 years ago
Tony Crisci
57c18c38bb
wlr_cursor: handle layout changes
...
Add the layout `destroy` and `change` events.
When a layout is destroyed, detach is from the wlr_cursor.
When a layout is changed, warp the cursor to the closest layout boundary.
7 years ago
Tony Crisci
d84deb0742
add wlr_output destroy event
7 years ago
Tony Crisci
fa3d4ecc84
fix layout hotplugging issue in output-layout.c
7 years ago
Tony Crisci
f25511ee3d
refactor wlr_output_layout to use wlr_box
7 years ago
Tony Crisci
40bd6bcc43
implement output layout auto configuration
7 years ago
Tony Crisci
368f74e4df
Refactor meson build files
...
Use tabs for indentation and break up function calls over 80 col.
7 years ago
Tony Crisci
d9ab631f5d
bugfix: set cursor coords on warp_unchecked
7 years ago
Tony Crisci
b6031d1065
refactor wlr_output_layout_closest_point
7 years ago
Tony Crisci
9b65d0b3f0
refactor and rename wlr_geometry to wlr_box
7 years ago
Tony Crisci
a51b76083e
rename wlr_cursor_init to wlr_cursor_create
7 years ago
Tony Crisci
1fb8bc9340
wlr_cursor.c: fix formatting
7 years ago
Tony Crisci
3449777a8d
wlr_output_layout.c: fix style
7 years ago
Tony Crisci
4fbe322fa6
fix memory errors
7 years ago
Tony Crisci
ab1a12b174
fix formatting in types/meson.build
7 years ago
Tony Crisci
5c845f14ed
handle input device destroy
7 years ago
Tony Crisci
df0ee7f25f
implement tablet tool devices
7 years ago
Tony Crisci
0dc3aecfd4
refactor device mapping calculation
7 years ago
Tony Crisci
5e06d61e42
implement touch up and touch down
7 years ago
Tony Crisci
ed126b0881
add touch events
7 years ago
Tony Crisci
ac503a47a7
intersect cursor and device regions
7 years ago
Tony Crisci
0a97b68278
implement cursor and device geometry mapping
7 years ago
Tony Crisci
98f4cdfccb
implement wlr_cursor_map_input_to_output
7 years ago
Tony Crisci
13e895d943
implement wlr_cursor_map_to_output
7 years ago
Tony Crisci
a4810203cc
change output layout coords to double type
7 years ago
Tony Crisci
f69a7afd36
assert cursor layout for move and warp functions
7 years ago
Tony Crisci
0cba06dcef
implement wlr_cursor_warp
7 years ago
Tony Crisci
dd68f680e4
handle cursor to output edge cases
7 years ago
Tony Crisci
431e1ddeca
smooth pointer transitioning between outputs
7 years ago
Tony Crisci
9978349903
use safe for_each when freeing cursor devices
7 years ago
Tony Crisci
e3d47376dc
add wlr_cursor basic implementation
7 years ago
Dominique Martinet
3391e5b634
xwayland: fix style issues
7 years ago
Dominique Martinet
ea906ea3e2
wlr surface/shell types: add message on creation
...
Not sure if we really want to keep that, would be helpful to get more
logging levels at some point
7 years ago
Dominique Martinet
3cc5b1acc6
wlr_compositor: add signal for create_surface
7 years ago
Dominique Martinet
ee3c5c7fef
wlr_seat: fix destroy with multiple handles
...
Need to use for_each_safe because wl_resource_destroy's callback will
remove the handle from the list itself
7 years ago
Dominique Martinet
1ca08dc4cb
wlr_compositor: change _init/finish to _create/destroy
7 years ago
Dominique Martinet
4110788159
move wl_compositor into wlroots as wlr_compositor
7 years ago
Dominique Martinet
84c0c87a5d
wlr_surface: change update_size/damage to bool
7 years ago
Dominique Martinet
4da976bfad
wlr_surface: small refactoring
...
- split surface damage and buffer damage
- the pending buffers are always valid, so can be 'fini'shed
- consider opaque buffer and input buffer in commit, just to free
- only update size if scale/transform/buffer changed
7 years ago
Dominique Martinet
03b29eb32c
wlr region/surface: explicitely select interface fields
7 years ago
Dominique Martinet
fc1a851415
wlr_surface: clear/fini buffers when appropriate
7 years ago
Dominique Martinet
f24b3df980
wlr renderer/texture: rename init to create when it does alloc
7 years ago
Drew DeVault
a1551bccc0
Merge pull request #107 from nyorain/wlr_data_device_manager
...
Implement wlr_data_{source,device,device_manager}
7 years ago
nyorain
f2a9098691
Fix wlr_data_device_manager
7 years ago
Dominique Martinet
bb3b9d0156
wlr_surface: use post_event instead of queue
...
This fixes not sending anything back to the client if the only event
it's waiting for is a buffer release, and nothing else is in the pipe.
Workaround for #102 - there probably is a better solution as weston and
wlc do not need to use post_event here.
7 years ago
nyorain
154d2ad941
Fix data_device destruction
7 years ago
nyorain
86314caa5b
Implement wlr_data_{source,device,device_manager}
7 years ago
Tony Crisci
c6631e2140
Fix wild pointer to buffer
...
After the buffer is released from the release event, it should no longer be
accessed.
Fixes a GTK crash.
7 years ago
Drew DeVault
e5fd858394
Merge pull request #101 from nyorain/texture_fix
...
Fix surface buffer uploading
7 years ago
Dominique Martinet
978f935947
output: default scale to 1
...
This prevents us from telling application our scale is 0, when it has no
reason to be.
7 years ago
Drew DeVault
3138c5ddf0
Clean up wlr_output_layout
7 years ago
Tony Crisci
5a9baf487e
add helper methods for intersection
7 years ago
Tony Crisci
420bd3e422
bugfix: correctly get the output_layout
7 years ago
Tony Crisci
2e9e237f9d
layout-output example: handle empty config
7 years ago
Tony Crisci
44181b57ac
Add wlr_output_layout implementation
...
An output layout consists of a mapping of outputs to their position in a global
coordinate system that usually cooresponds to the output position in physical
space in front of the user.
Add an example that allows configuration of an output layout and demonstrates
its boundaries with a bouncing image.
7 years ago
nyorain
10eee58d2d
Fix surface buffer uploading
7 years ago
nyorain
2db04c369e
Fix style issues in wlr_seat
7 years ago
nyorain
ad22b4874d
Fix wlr_seat; add to example compositor
7 years ago