Ivan Molodetskikh
a224f774ee
anvil: store buffer dimensions separately
...
Before this change, the texture size was used for the dimensions.
However, the texture is not created until the next rendered frame, which
means that frequently size was returned as zero, resulting in pointer
focus artifacts. With this change, the dimensions are retrieved
immediately on surface commit.
2020-02-03 12:56:59 +03:00
Ivan Molodetskikh
825995687a
anvil: add BufferUtils
...
A helper struct which currently contains only a method for retrieving
buffer dimensions. Will be used for getting the buffer dimensions early,
before rendering, to always have up-to-date size which is not zero.
2020-02-03 12:56:59 +03:00
Ivan Molodetskikh
46348367b1
backend.egl: add egl_buffer_dimensions
...
Allows to retrieve just the dimensions, without creating images and
whatnot.
2020-02-03 12:41:35 +03:00
Ivan Molodetskikh
fab0b7a05f
seat: remove ClickGrab.pending_focus
...
It was unused.
2020-02-03 12:31:39 +03:00
Ivan Molodetskikh
32613f3cd6
anvil.shell: check that grab is correct in Move
...
Check that the grab had a focus and it was the same client as this
surface.
2020-02-03 12:31:39 +03:00
Ivan Molodetskikh
d8495d81f2
anvil.shell: check that there's a grab before Move
...
If there's no click grab then the request is invalid.
2020-02-03 12:31:38 +03:00
Ivan Molodetskikh
03392bf7d1
seat: add GrabStartData to PointerGrab
...
Stores the data about the event that started the grab. Will be useful
for things like move and resize requests.
2020-02-03 12:31:38 +03:00
Ivan Molodetskikh
24af494cbf
anvil.shell: implement the Move request
2020-02-03 07:51:05 +03:00
Ivan Molodetskikh
ba1396ca8c
seat: add PointerHandle::current_location
2020-02-02 15:37:06 +03:00
Ivan Molodetskikh
0ea4ec9abe
anvil.window_map: add WindowMap::set_location
2020-02-02 15:37:06 +03:00
Ivan Molodetskikh
a51e421c19
anvil.window_map: add WindowMap::location
2020-02-02 15:37:06 +03:00
Ivan Molodetskikh
69b1c1870e
anvil.window_map: add Kind::equals
2020-02-02 15:37:06 +03:00
Victor Berger
e07a57885b
Merge pull request #154 from YaLTeR/input-region
...
Store and use the committed input_region
2020-02-02 11:27:34 +01:00
Ivan Molodetskikh
13cac4f693
anvil.shell: use correct region in contains_point
...
The one in SurfaceAttributes has potentially not been committed yet, and
the one in SurfaceData is the most up-to-date committed one.
2020-02-02 12:45:35 +03:00
Ivan Molodetskikh
fac4ca260e
anvil.shell: store input_region in SurfaceData
...
This is the most up-to-date committed input region.
2020-02-02 12:45:35 +03:00
Ivan Molodetskikh
fd50b45e61
anvil: implement input region check
2020-01-22 08:06:15 +03:00
Ivan Molodetskikh
9cf5b415c6
compositor: add RegionAttributes::contains
2020-01-22 08:05:15 +03:00
Ivan Molodetskikh
d30567512c
anvil.window_map: use Rectangle::default
2020-01-22 07:47:10 +03:00
Ivan Molodetskikh
52d86d3abf
rectangle: derive Default
2020-01-22 07:46:40 +03:00
Ivan Molodetskikh
aa65f3608d
anvil: add a contains_point fn for Window.matching
...
Currently implemented to be equivalent to the previous size-based check.
This will allow implementing an input-region-aware check.
2020-01-22 07:46:26 +03:00
Ivan Molodetskikh
9bfa85efc9
anvil.window_map: add some comments
2020-01-22 06:58:41 +03:00
Ivan Molodetskikh
09908d8de8
anvil.window_map: rename surface to input_bbox
...
Much clearer what it does.
2020-01-22 06:57:45 +03:00
nycex
0140de89fb
fix some clippy warnings ( #147 )
...
This commit removes some clippy warnings (to advance #45 ) by doing the following:
- replace usage of `mem::uninitialized()` with `MaybeUninit`
- replace usage of `nix::libc::{uint64_t, int32_t}` with `{u64, i32}`
- replace functions inside of `Option::ok_or` with `Option::ok_or_else`
- replace functions inside of `Result::unwrap_or` with `Result::unwrap_or_else`
- replace occurrences of pass-by-reference with pass-by-value when
appropriate
- replace unused variables in pattern-matching with wildcards
- replace `match` expressions that have only one case with `if let`
expressions
- replace UpperCamelCase names of consts with SCREAMING_SNAKE_CASE
- remove `clone()` on types that implement Copy
- remove redundant imports
- remove `fn main()` from doctests
- remove let binding for variables that are returned afterwards
2020-01-01 11:43:16 +01:00
Christophe Biocca
834f3d2e65
Upgrade to dbus 0.8, change imports to match.
2020-01-01 11:42:28 +01:00
Pierre Chevalier
0b2e4b42db
Fix clippy warnings with cargo fix
...
Simply ran:
```
rustup run nightly cargo fix --clippy -Z unstable-options
```
followed by
```
cargo fmt
```
No manual change in this commit.
2019-10-23 14:13:10 +02:00
Wesley Moore
ac0566ca88
Make winit backend exit on Super-Q
2019-08-23 16:55:51 +02:00
Victor Brekenfeld
f8f4f461c7
Merge pull request #144 from Smithay/pr/fix/anvil_buffer_leak
...
anvil: release old buffers on commit
2019-08-23 16:50:14 +02:00
Victor Brekenfeld
056a86ad30
anvil: release old buffers on commit
2019-08-23 15:16:18 +02:00
Victor Berger
e4f1872a43
anvil: properly document logind support
2019-06-19 15:07:01 +02:00
Victor Berger
1627d51cf6
wayland: introduce explicit-synchronization helpers
2019-06-14 11:16:27 +02:00
Victor Berger
04dc563ea0
wayland.dmabuf: API improvements
2019-05-20 08:59:56 +02:00
Victor Berger
c1f759aa00
wayland.dmabuf: module docs & some logging
2019-05-20 08:59:56 +02:00
Victor Berger
e11c0278dd
Wayland dmabuf handler
2019-05-20 08:59:56 +02:00
Victor Berger
78874a8363
Require wayland-commons>=0.23.3 for UserDataMap
2019-04-27 21:38:24 +02:00
Victor Berger
d62fb4c8b5
wayland.shell.xdg: use UserDataMap
2019-04-27 21:38:24 +02:00
Victor Berger
19432460cd
wayland.shell.legacy: remove shell surface data
...
It is now redundant with the wl_surface user_data mechanism.
2019-04-27 21:38:24 +02:00
Victor Berger
c604a48dce
wayland.compositor: user UserDataMap to store per-surface data
2019-04-27 21:38:24 +02:00
Victor Berger
0712bdefec
anvil.glium_drawer: fix buffer release order
2019-04-22 17:20:46 +02:00
Victor Berger
9f9e6d4329
wayland.compositor: rework the subsurface tree
...
Rework the subsurface tree by:
- forbidding subsurface loops
- storing the relative depth of a parent to its children,
finally respecting the wl_subsurface specification.
closes #23
2019-04-22 17:20:46 +02:00
Victor Berger
5768e1fd87
Upgrade dependencies
2019-02-24 11:23:11 +01:00
Jonas Platte
f34cf4b068
Upgrade anvil to wayland-server 0.23
2019-02-24 08:23:51 +01:00
Jonas Platte
c238770a1b
Remove unused imports
2019-02-24 08:23:51 +01:00
Victor Berger
3d8f22c805
Don't promise thread-safety that we can't respect
2019-02-24 08:23:51 +01:00
Victor Berger
3f2857fbf3
Update smithay to wayland-server 0.23
2019-02-24 08:23:51 +01:00
Victor Berger
d6625b4b49
travis: don't test individual features on beta&nightly
2019-02-06 18:34:02 +01:00
Victor Berger
89dce178c8
Make wayland support optional
2019-02-06 09:29:56 +01:00
Victor Berger
48264926e6
version 0.2.0
2019-01-03 10:52:15 +01:00
Victor Berger
d65506f1ee
Update changelog for upcoming 0.2
2019-01-03 10:48:30 +01:00
Victor Brekenfeld
039c86d99e
Merge pull request #124 from Smithay/edition/2018
...
Migrate to Rust 2018 Edition
2018-12-17 23:28:55 +01:00
Victor Brekenfeld
cc5d55f535
rustfmt fixes
2018-12-17 16:58:49 +01:00