Commit Graph

488 Commits

Author SHA1 Message Date
Pablo Stebler 630b659ae6 Upgrade calloop and winit (#114)
* Fix compilation with calloop 0.4

* Use `Into` instead of changing signatures

* Bump winit to 0.18

* Fix logind for calloop 0.4

* Cargo fmt
2018-11-17 18:01:04 +01:00
Colin Benner 734d2ce996 Fmt, spelling and capitalisation fixes (#113)
* Rename priviledged to privileged in backend/drm/mod.rs

* Fix a number of typos in comments

* Fix typos in string literals

* Wrap identifiers with backticks in doc comments

* Spelling and capitalisation in doc comments

* Use XWayland in comments

This seems to be the standard capitalisation, even though the executable
is called `Xwayland`.

* Use Glium instead of glium in comments

* Use DRM and API in comments

* Fix remaining occurrence of 'priviledged'

* Reformat code to appease Travis' rustfmt
2018-10-30 13:56:30 +01:00
Tim 214759aecf
Typo 2018-10-18 10:55:21 +01:00
Victor Berger 9f0a1fb244 backend.winit: remove the moved() event
This event poses issues regarding its semantic (what space are the
coordinates in?) and arguably won't be used anyway. So let's remove it
for now, it can still be added afterwards if it appears to be really
needed.
2018-10-15 11:15:10 +02:00
Victor Berger df12fa4e8b backends.winit: only expose physical sizes
Unify winit with the other backends in only ever dealing with physical
sizes. All dimensions and coordinates are provided in the physical space
(transformed by the dpi factor provided by winit), and the user is
responsible for dealing with the dpi scaling if they want.

A compositor using it can deal with it either by following the scaling
transmitted by the backend or using some value retrieved by other means
(like a command line argument, like weston does).

This means that a non-hidpi aware implementation will appear very small
on an hidpi screen, but not broken. This is now the current state of
anvil.

This also changes the WinitEventsHandler trait to merge the resized()
and hidpifactorchanged() callbacks into a single one, providing the
physical size and the dpi factor whenever either changes.
2018-10-15 11:15:10 +02:00
Victor Berger f9bd83c3b5
wayland.seat: send keymaps in individual tempfiles
Send keymaps to client using a new tempfile for each client, rather than
a single shared tempfile. Doing so prevents a client from tempering with
the contents of the tempfile, which would then cause other clients to
read a corrupted keymap.

See this bug report for details:
https://bugs.freedesktop.org/show_bug.cgi?id=101595
2018-10-08 14:09:58 +02:00
Victor Berger 1618c45d4e wayland: use AtomicUsize for SerialCounter 2018-10-08 13:55:21 +02:00
Victor Berger 139d0f3992 wayland.seat: Pointer grabbing logic 2018-10-08 13:55:21 +02:00
Victor Berger 1301fb6e62 wayland: global counter for client serials 2018-10-08 13:55:21 +02:00
Jonas Platte a77e29d9b5 lib: Use nested imports 2018-10-07 22:39:18 +02:00
Jonas Platte 943f02b447 Refactor Seat::add_keyboard
With the new XkbConfig struct, it is now easier to just use xkbcommon's
default configuration, by moving the xkbcommon specific options into a
struct with according documentation.

Additionally, anvil now uses xkbcommon's defaults with all backends
(previously, the winit backend had a hardcoded french keyboard layout).
2018-10-02 23:12:35 +02:00
Lucas Timmins 2e9096923e Update changelog and make the argument of `WinitEventsHandler fn moved()` a LogicalPosition 2018-09-30 19:24:13 +08:00
Lucas Timmins 673f0cd0aa Use physical size to resize egl surface and change `WinitEventsHandler fn resized()` to take a LogicalSize 2018-09-30 19:22:35 +08:00
Lucas Timmins ffdf245259 Upgrade winit backend to 0.17 2018-09-30 19:22:35 +08:00
Victor Berger bd08f78acd Return the backends to the user if binding fails. 2018-09-28 18:01:33 +02:00
Victor Berger 7f8d32429b cargo fmt 2018-09-27 21:17:10 +02:00
Victor Berger 6328f68b71 fix yet even more errors with logind backend 2018-09-25 11:55:30 +02:00
Victor Berger 95d55f4b96 fix yet more errors with logind backend 2018-09-25 11:20:17 +02:00
Victor Berger 97e960a0f1 fix more logind backend errors 2018-09-25 10:29:35 +02:00
Victor Berger 53d27264a2 fix some logind backend errors 2018-09-25 09:44:07 +02:00
Victor Berger 269c9a5c7c fix doc copy/paste error 2018-09-25 09:43:49 +02:00
Victor Berger 454f874284 cargo fmt 2018-09-25 00:32:09 +02:00
Victor Berger 605895e30f update to wayland-rs 0.21 2018-09-25 00:31:58 +02:00
Colin Benner 6d31e9e5ff address more clippy warnings
Not sure how much of an improvement these are.
2018-06-29 12:30:42 +02:00
Colin Benner 4598ba0b48 address a bunch of clippy warnings 2018-06-28 11:33:49 +02:00
Victor Berger 89764bf442 wayland.backend.egl: derive Debug for Format 2018-05-19 19:48:13 +02:00
Victor Berger 07a98ac5e8 wayland.shm: allow buffer access to return a value 2018-05-19 19:45:04 +02:00
Victor Berger 664327660e
Merge pull request #92 from Smithay/compositor_token_send
wayland.compositor: CompositorToken is threadsafe
2018-05-13 13:31:09 +02:00
Victor Berger cba56b0af8 wayland.compositor: CompositorToken is threadsafe
Thanks to the refactor of wayland-rs, the CompositorToken can
be make Send/Sync again.

Fixes #66.
2018-05-13 10:24:24 +02:00
Victor Berger de373074fd Update winit to 0.14 2018-05-12 12:55:37 +02:00
Victor Berger 6ee6fd6890 anvil: factor the input backend code 2018-05-08 12:47:09 +02:00
Victor Berger 6f52f9c75a re-export crates that are actually part of the public API 2018-05-07 19:55:34 +02:00
Victor Berger ff63209a17 XWayland: add logging 2018-05-04 10:55:31 +02:00
Victor Berger 2d8653d9d7 xwayland: take advantage of RAII for X11 lockfile 2018-05-01 12:08:01 +02:00
Victor Berger 5ae34d2613 xwayland: Use Rust's UnixStream instead of RawFd
THis allows us to take advantage of RAII for cleanup, among others.
2018-05-01 11:56:32 +02:00
Victor Berger d2cbadc670 xwayland: core infrastructure 2018-04-30 21:28:17 +02:00
Victor Berger 4fda0bef4a review comments 2018-04-24 11:00:39 +02:00
Victor Berger 048dda59e3 wayland.shell: legacy module for wl_shell 2018-04-23 11:40:41 +02:00
Victor Berger 12e13f863b wayland.shell.xdg: make names more explicit 2018-04-23 10:49:06 +02:00
Victor Berger 4bd1501b96 wayland.shell: don't access the data of dead surfaces during cleanup 2018-04-22 11:58:18 +02:00
Victor Berger 9c88443706 wayland.shell: clean start for wl_shell 2018-04-19 13:56:13 +02:00
Victor Berger d97fde32e9 wayland.shell: integrate the stable xdg_shell 2018-04-18 17:44:55 +02:00
Victor Berger b8d4b17a8a wayland.shell: split wl and xdg & port xdg 2018-04-18 12:51:08 +02:00
Victor Berger 422e8b33e0 backend.winit: migrate to wayland-rs 0.20 2018-04-18 09:58:32 +02:00
Victor Berger 53242bd974 backend.libinput: migrate to wayland-rs 0.20 2018-04-18 09:53:54 +02:00
Victor Berger 31a3d40589 backend.drm: update doc examples 2018-04-18 09:44:22 +02:00
Victor Berger 7f6af94733 backend: migrate drm & udev 2018-04-18 09:38:35 +02:00
Victor Berger f9dbabce56 backend.graphics: port no-feature code to wayland-rs 0.20 2018-04-17 19:17:11 +02:00
Victor Berger cb4b783dc2 backend.session.logind fixes 2018-04-17 19:08:54 +02:00
Victor Berger b80093ffda backend.session: migrate to wayland_rs-0.20 2018-04-17 18:39:07 +02:00
Victor Berger 6dfcef1f49 Remove unstable rustfmt options 2018-04-17 17:48:20 +02:00
Victor Berger 710d23f51f wayland.compositor: migrate to wayland_rs-0.20 2018-04-17 11:03:42 +02:00
Victor Berger e44b0e596e wayland.seat: migrate to wayland_rs-0.20 2018-04-15 11:55:16 +02:00
Victor Berger 93050e2683 Doc proofreading 2018-04-15 11:44:23 +02:00
Victor Berger 1140b484cd wayland.output: migrate to wayland_rs-0.20 2018-04-14 12:19:59 +02:00
Victor Berger b9cac1a373 wayland.shm: migrate to wayland_rs-0.20 2018-04-13 12:45:53 +02:00
Victor Berger 570cee0987 Prepare migration to wayland-rs-0.20 2018-04-12 11:39:14 +02:00
Drakulix 7fb89ac924 Derive PartialEq,Eq,Hash for ModifiersState 2018-03-29 17:27:14 +02:00
Drakulix c36c511c53 [glium] Remove unnecessary mutable self reference for borrowing 2018-03-29 15:31:25 +02:00
Victor Berger cd0c5538d1 shell: add method to send close events 2018-03-23 19:27:46 +01:00
Drakulix 19300f0d54 Add missing documentation for former Drop call 2018-03-22 16:21:40 +01:00
Drakulix 23f8a2c8ee Reexport PointerAxisHandle 2018-03-22 16:21:27 +01:00
Drakulix d051e141cf Refactor PointerAxisEvent to handle multiple axis 2018-03-22 16:10:32 +01:00
Drakulix daccddf9b6 Reintroduce wl_seat 4 support 2018-03-22 16:10:32 +01:00
Drakulix 2fb36af926 Upgrade to wl_seat version 5 2018-03-21 16:37:50 +01:00
Drakulix d005cd4fc6 Replace time stub with proper timestamps 2018-03-17 18:15:34 +01:00
Drakulix 4ee34fe43a Fix winit transformed input for negative positions 2018-03-13 18:41:37 +01:00
Drakulix 81375a085f Allow relative mouse movement to be negative 2018-03-13 15:06:52 +01:00
Drakulix a6d8b2a802 Fix winit transformed input 2018-03-09 17:37:27 +01:00
Drakulix bdb653042c Update glium integration to allow mutable borrowing 2018-03-09 11:50:01 +01:00
Drakulix 9cb409de9b Add missing derives for AutoId 2018-02-26 18:56:28 +01:00
Victor Berger d8a5acef77 wayland: introduce Seat::owns 2018-02-26 16:20:33 +01:00
Drakulix 5cfdf931fb Update for wayland-server 0.14 2018-02-21 21:02:14 +01:00
Drakulix f4d3061b2b Fix tests & examples 2018-02-21 14:52:43 +01:00
Drakulix 85bac997e0 Fix merge with latest logind bug fixes 2018-02-21 14:52:31 +01:00
Drakulix 4a2658090b Code formatting 2018-02-21 14:24:37 +01:00
Drakulix 5d66f8fdb3 Give EventLoopHandle to DrmHandler 2018-02-21 14:24:20 +01:00
Drakulix b80674bdf5 Introduce SessionObserver
`DrmDevice` and `UdevBackend` now do not need to be wrapped into `StateToken`s anymore, but can return a separate `SessionObserver` object using the new `AsSessionObserver` trait.

This change was motivated by allowing the `UdevHandle` to obtain a mutable reference to an `EventLoopHandle` to create wayland object, e.g. a `wl_output` object.

Previously this was not possible.

Depends on https://github.com/Smithay/wayland-rs/pull/164
2018-02-21 14:24:20 +01:00
Drakulix 0ad723a71b Allow `DrmBackend` to act as `drm::control::Device` 2018-02-21 13:31:05 +01:00
Drakulix cbee540013 Reexport ModifiersState to make it publically accessible 2018-02-21 07:48:54 +01:00
Drakulix 2294e79814 Reset drm device into text mode on tty switch 2018-02-20 19:19:22 +01:00
Drakulix e3113caa72 Add new travis feature for logind 2018-02-20 19:19:22 +01:00
Drakulix 525c9b60c4 rustfmt 2018-02-20 19:19:22 +01:00
Drakulix 20e10612b9 Add documentation for logind/auto session 2018-02-20 19:19:22 +01:00
Drakulix 310bc94a20 Fix disappearing cursor after tty switch 2018-02-20 19:19:22 +01:00
Drakulix 5411209bb5 Fix libinput panic on tty switch 2018-02-20 19:19:22 +01:00
Drakulix 495c492e50 Fix trying to become drm master on logind session 2018-02-20 19:19:22 +01:00
Drakulix a768e298f2 Add auto backend 2018-02-20 19:19:22 +01:00
Drakulix b16c62b19f Add logind session 2018-02-20 19:19:22 +01:00
Drakulix 4971278a25 Remove unused type parameter 2018-02-20 19:19:22 +01:00
Victor Berger 036633541a Remove trailing code fence in documentation 2018-02-20 19:08:23 +01:00
Drakulix ef0cfb9f2c Add names to backend seats 2018-02-19 12:49:55 +01:00
Drakulix d3a454ad72 Add winit events handler 2018-02-18 23:42:33 +01:00
Drakulix b53ff34aab Add option to access underlying window 2018-02-18 23:42:02 +01:00
Drakulix 8a30689015 Add getter for current `DrmBackend` mode 2018-02-18 22:04:13 +01:00
Drakulix a0b6e2c916 Don't required EventLoop for wayland object creation 2018-02-15 16:17:12 +01:00
Victor Berger f2751c824f wayland.shell: fix memory corruption in wl_shell
Invalid data was set as user data for wl_shell_surface, causing
access to invalid memory at drop time.

Fixes #60
2018-01-14 13:50:39 +01:00
Drakulix a9c75656a2 Add event_loop to `InputBackend` and `InputHandler` traits 2018-01-12 16:41:33 +01:00
Drakulix 32f48b3cd2 Fix some clippy lints 2018-01-09 14:12:31 +01:00
Drakulix b125ce8005 Fix backend_drm feature 2018-01-07 23:44:21 +01:00
Drakulix 66c011c942 Use new rustfmt-preview 2018-01-07 22:30:38 +01:00
Drakulix 25c1e30fb3 Fix drm doc-test for new egl buffer changes 2018-01-07 22:12:34 +01:00
Drakulix aaa68b1cce Add documentation for the egl buffer features 2018-01-07 22:12:14 +01:00
Drakulix efaadb8882 Fix a bunch of warnings 2018-01-07 20:24:40 +01:00
Drakulix c5f475ebb5 Make unbind_egl_display into Drop implementation for EGLDisplay 2018-01-07 13:02:26 +01:00
Drakulix a527456ba6 Fixup drm backends for egl hardware-acceleration
- Decouple DrmBackend and DrmDevice through Weak references
- Move EGL-WlBuffer related functionality into it's own trait
- Impl new trait by every struct that can theoretically bind the display although it is no rendering target (no EGLGraphicsBackend), e.g. DrmDevice
- Move texture binding into own struct `EGLDisplay` created by `bind_wl_display` that can be passed around freely
- Add device num to DrmDevice for HashMap storage
- Fixup and enable acceleration on drm and udev examples made possible by the previous changes.
2018-01-05 20:04:46 +01:00
Drakulix c63d693a74 Fix seats of version 1 2017-12-28 15:33:18 +01:00
Drakulix 6c6d54064d Get it to work... 2017-12-28 15:30:53 +01:00
Drakulix 726991367d Rework egl image api 2017-12-27 12:20:16 +01:00
Drakulix 5d7e96103d Rework EGL module 2017-12-24 14:29:45 +01:00
Drakulix 5c846d550c Start EGL wl_buffer image retrieval 2017-12-24 14:12:51 +01:00
Drakulix 14fc36bf54 Add binding/unbinding wayland display on EGLContext 2017-12-24 14:12:51 +01:00
Drakulix a9d30374dc Add EGL_WL_bind_wayland_display bindings 2017-12-24 14:12:51 +01:00
Drakulix e1b2c88c83 Use global gl_generator generator 2017-12-24 14:12:51 +01:00
Drakulix bfed76593a Fix backend_session_udev without backend_udev 2017-12-21 18:11:19 +01:00
Drakulix d0046e4c60 Fix rare hot-plugging bug 2017-12-21 16:25:21 +01:00
Drakulix 4207611e6d rustfmt code 2017-12-15 19:22:44 +01:00
Drakulix c9e7624a33 Remove (incomplete) logind support for now 2017-12-07 15:25:21 +01:00
Drakulix 5f59ded3f0 Fix udev example 2017-12-07 15:20:33 +01:00
Drakulix 40ef1236ea Update to released udev/libinput versions 2017-12-06 02:06:00 +01:00
Drakulix 71f107118f Make libinput backend work without the session feature 2017-12-03 22:44:45 +01:00
Drakulix ae5df5039d Fix drm example and tests 2017-12-03 22:33:21 +01:00
Drakulix c5e66176c6 Document DirectSessionNotifier Id type 2017-12-02 17:09:34 +01:00
Drakulix bd83bc5b2d Restore drm state correctly 2017-12-02 17:07:52 +01:00
Drakulix 33286df0d6 Make it impossible to pass invalid `SessionObserver` ids.
- Add an associated type to the `SessionNotifier` trait for the returned Id's instead of using usize.
- Create a new Id type for the `DirectSessionNotifier`'s implementation, wrapping the previously used usize.
- Derive necessary traits of the new wrapper, make internal value inaccessible and Id's not publically constructable.
2017-12-02 14:24:39 +01:00
Drakulix 612436e42d Correctly scan for any encoders 2017-12-02 13:51:08 +01:00
Drakulix 13be5b1634 Add documentation 2017-11-29 22:28:14 +01:00
Drakulix 0350dca972 Automatically add udev backend to the event loop store 2017-11-29 22:28:14 +01:00
Drakulix ef2e0571e7 Swap session signal to usr2, because xwayland may use usr1 2017-11-29 22:28:14 +01:00
Drakulix b4be5a5786 Comment out logind integration for now 2017-11-29 22:28:14 +01:00
Drakulix 24f2d499f3 Add more logging to session 2017-11-29 22:28:14 +01:00
Drakulix 606efebe1b Remove unnecessary mutexes 2017-11-29 22:28:14 +01:00
Drakulix 96bb3570ba Get input working 2017-11-29 22:28:14 +01:00
Drakulix c7682e77de Udev backend 2017-11-29 22:28:13 +01:00
Victor Berger c31d966fd4 Upgrade wayland-server to 0.12 2017-11-03 17:31:51 +01:00
William W Wold 291ba17a5c added scroll events to pointer and winit demo 2017-10-15 16:29:29 +02:00
Demur Rumed 50aa38df72 Fix misc rustfmt nits 2017-10-09 15:17:19 +02:00
Demur Rumed ce844ba9f8 Cargo.toml: include repo, update nix/image 2017-10-09 15:17:19 +02:00
Jonas Platte 4946017c0c Apply a bunch of clippy suggestions 2017-10-07 18:40:59 +02:00
Victor Berger 8ee08ef6f2 wayland: document general behaviour of the client handlers 2017-10-01 22:47:30 +02:00
Victor Berger 249ae98e0f Fix invalid drop in SHM doc test
Allowing the display to be dropped this early destroys the whole wayland
context before we start using it... bad idea.
2017-10-01 22:47:30 +02:00
Victor Berger 9e809f85dd wayland: output global 2017-10-01 22:47:30 +02:00
Drakulix 51886fbf00 Update to stable drm-rs version 2017-10-01 22:25:52 +02:00
Victor Berger 2fbb45273f cargo fmt 2017-09-30 12:05:28 +02:00
Victor Berger 30efcea2ee travis: test various features combination 2017-09-30 12:05:28 +02:00
Victor Berger 15ce7134fc Move wayland utilities to their own module. 2017-09-29 17:24:20 +02:00
Victor Berger 5a0713feb9 Fix winit backend on wayland
We were trying to swap_buffers while the xdg_surface had not been
configured yet, which is a protocol error.
2017-09-29 17:22:19 +02:00
Victor Berger 502a99c5f9 Remove debug printlns 2017-09-29 17:22:19 +02:00
Victor Berger 31f39ed61a seat: increase logger metadata 2017-09-23 18:31:39 +02:00
Victor Berger 532cb6b78e seat: doc & warnings & fmt & cleanup methods 2017-09-22 18:42:52 +02:00
Victor Berger 4b01b55f75 seat.keyboard: fix sym peek with +8 offset 2017-09-22 15:03:23 +02:00
Victor Berger e1ade4e2e9 seat: implementation 2017-09-22 14:54:18 +02:00
Victor Berger bb7d389be6 utils: fmt 2017-09-22 14:53:39 +02:00
Victor Berger 648da00c6a compositor: allow the choice or iteration direction in subsurface trees 2017-09-22 14:53:07 +02:00
Victor Berger 3dd559cdf1 Move Rectangle to utils module. 2017-09-22 10:54:16 +02:00
Victor Berger e6600dfbe9 seat.keyboard: handle repeat-info 2017-09-21 21:40:11 +02:00
Victor Berger 5241b8f79e seat: directory structure 2017-09-21 21:08:30 +02:00
Victor Berger 2850def0f4 Rework keyboard handler 2017-09-21 21:08:30 +02:00
Drakulix 7f45283759 cargo fmt 2017-09-21 20:50:10 +02:00
Drakulix d2617becbf Fix drm doc test and Deref impl 2017-09-21 19:05:59 +02:00
Drakulix f09bdd0a30 cargo fmt 2017-09-20 20:06:58 +02:00
Drakulix 518f7dbdfc Store DrmBackend in EventLoop state 2017-09-20 19:48:58 +02:00
Drakulix 0758ec98ba Fix the drm backend for wayland-rs 0.10 2017-09-20 17:09:37 +02:00
Drakulix 457d6d1c35 Free framebuffers correctly 2017-09-20 15:56:57 +02:00
Drakulix fa6742fb5f The glory of error-chain 2017-09-20 15:56:11 +02:00
Drakulix a04bfcdd11 Add encoder detection to runtime manipulation 2017-09-20 15:54:16 +02:00
Drakulix 174e4b9d0b Fix encoder detection 2017-09-20 15:53:19 +02:00
Drakulix d3fca34475 Do a better job at finding a crtc in the example 2017-09-20 15:52:47 +02:00
Drakulix bdb91fc1f1 Better explaination of the drm module
- Explain the types involved and their role
- Link to the drm-rs documentation
2017-09-20 15:51:59 +02:00
Drakulix 67b3621be3 drm: reformat 2017-09-20 15:51:59 +02:00
Drakulix ab77a87725 drm: Check for valid encoder 2017-09-20 15:51:59 +02:00
Drakulix 10fd94f963 drm: add more logging 2017-09-20 15:51:39 +02:00
Drakulix 73d262e292 drm: reformat 2017-09-20 15:51:39 +02:00
Drakulix 9c71793b0e drm: Add more inline comments explaining the drm code 2017-09-20 15:51:39 +02:00
Drakulix 7bf4105050 drm: Add error for multi-use of a single crtc 2017-09-20 15:51:39 +02:00
Drakulix f2bff6172b drm: Documentation 2017-09-20 15:51:38 +02:00
Drakulix 0698775153 drm: Introduce the Drm Backend
- new backend rendering via egl via gbm directly on a drm device
- refine EGLContext and EGLSurface dependencies through lifetimes
- fixup the old winit backend to work with these changes
- add new example using the drm backend instead
- change GliumDrawer to be static for the drm example
2017-09-20 15:50:14 +02:00
Victor Berger 32e60de4f3 shell: update to new wayland-server 2017-09-20 15:03:39 +02:00
Victor Berger 33f80a622f compositor: update to new wayland-server 2017-09-20 15:02:45 +02:00
Victor Berger bb86b1c3ed shm: update to wayland-server-0.10 2017-09-20 09:56:44 +02:00
Victor Berger 22a2f4649f shell: fix doc typos 2017-09-08 13:13:07 +02:00
Victor Berger 08e6187e47 shell: module-level documentation 2017-09-06 16:35:49 +02:00
Victor Berger eeb6373ded Silence example warnings. 2017-09-06 16:33:35 +02:00
Victor Berger 3171160cff shell: fix warnings 2017-09-06 15:21:12 +02:00
Victor Berger 6dec2cb5da shell: types documentation 2017-09-06 14:41:59 +02:00
Victor Berger db6bad1676 compositor: return value from Token::with_surface_data 2017-09-05 21:23:17 +02:00
Victor Berger aab56047f0 Update example to use shell global 2017-09-05 21:09:50 +02:00
Victor Berger 88773cf1b3 cargo fmt 2017-09-05 19:51:05 +02:00
Victor Berger 3128585fc9 shell: shell backend first draft 2017-09-05 19:50:22 +02:00
Victor Berger 70f7b19940 compositor: add missing token method 2017-09-05 12:05:42 +02:00
Victor Berger 5c46ba73e9 compositor: rework roles 2017-09-04 13:15:20 +02:00
Victor Berger b19fafa1a0 Update winit dependency 2017-06-24 10:31:36 +02:00
Victor Berger 030261116d winit's Event has more variants now 2017-06-23 16:14:33 +02:00
Victor Berger 4f6a852652 cargo fmt 2017-06-23 15:40:28 +02:00
Victor Berger 9d2f03943e replace unsafe impls from wayland-server with declare_handler macro 2017-06-23 15:24:23 +02:00
Victor Berger d475435fcb cargo fmt 2017-06-23 15:24:23 +02:00
Victor Berger a487c5963a compositor: TraversalAction for tree traversal 2017-06-23 15:20:09 +02:00
Victor Berger bffc02c5f1 glium: impl Facade 2017-06-23 15:20:09 +02:00
Victor Berger d819e15e29 compositor: Handler is now parametred by user data 2017-06-23 15:20:09 +02:00
Victor Berger afd9ca5656 shm: rename ShmGlobalToken to ShmToken 2017-06-23 15:20:09 +02:00
Victor Berger bf9ee9a395 cargo fmt 2017-06-23 15:20:09 +02:00
Victor Berger e009651371 compositor: various doc fixes 2017-06-23 15:19:27 +02:00
Victor Berger 267847eebf compositor: add logging 2017-06-23 15:19:27 +02:00
Victor Berger 627008dbce compositor: module documentation 2017-06-23 15:19:27 +02:00
Victor Berger 9fe6f16af3 compositor: provide default noop impls from Handler 2017-06-23 15:19:27 +02:00
Victor Berger deb072afbb compositor: give access to surface children and region metadata 2017-06-23 15:19:27 +02:00
Victor Berger a5ae27be84 Implement wl_subsurface.place_{above,below}. 2017-06-23 15:19:27 +02:00
Victor Berger 1e960af5f2 Add subhandler for wl_surface.{commit,frame} 2017-06-23 15:19:27 +02:00
Victor Berger 8809f182b5 Fuse CompositorGlobal and CompositorHandler 2017-06-23 15:19:27 +02:00
Victor Berger 13d0479264 First draft of compositor global. 2017-06-23 15:19:27 +02:00
Drakulix 206007f5a5 rustfmt 0.9 update 2017-06-20 11:31:18 +02:00
Drakulix b131f8168e Shorten surface type matching 2017-06-20 10:50:20 +02:00
Drakulix f70cc6bf55 rustfmt 2017-06-18 19:20:23 +02:00
Drakulix 57833f2b2d Bugfix surface_attribute termination 2017-06-15 13:34:01 +02:00
Drakulix 40e49ad7e9 Fix typos 2017-06-15 13:33:43 +02:00
Drakulix 5155b44946 Check if surface type is matching context type 2017-06-15 13:33:18 +02:00
Drakulix eef617258e rustfmt 2017-06-10 23:29:09 +02:00
Drakulix 2d255fd48d Decouple EGLSurface from EGLContext 2017-06-10 23:28:09 +02:00
Drakulix 11e9999cb9 Better wording for winit make_current 2017-06-05 14:06:58 +02:00
Drakulix 7a0639fae6 Reorder egl library loading 2017-06-04 23:22:51 +02:00
Drakulix 83b98ba77b Run cargo fmt 2017-06-04 23:13:19 +02:00
Drakulix 2453545329 Added logging to egl&winit + small bugfixes
- Added logging to winit & egl
- Fixed winit pointer scroll event only yielding horizontal events
- Fixed unsupported double_buffering for egl
2017-06-04 23:11:26 +02:00
Drakulix 4053d2bc30 Fixed copy&paste logging message errors 2017-06-04 23:10:50 +02:00
Drakulix a7628610d4 Remove robustness for now 2017-06-02 15:32:31 +02:00
Drakulix f890b4011d Fix egl initialization segfaults
- Don't initialize a surface twice, if context creation fails for one
version
- Don't let the loaded egl library go out of scope and thus invalidating
the function pointers
2017-06-02 15:25:16 +02:00
Drakulix e191c08186 Move glium.rs 2017-06-02 13:55:34 +02:00
Drakulix 2c9f6a7479 Flesh out glium compatibility 2017-06-02 13:55:28 +02:00
Drakulix 115eb4d200 Update winit 2017-06-02 13:54:34 +02:00
Drakulix dbaf4f7746 Rename variable to avoid confusion 2017-05-23 11:03:03 +02:00
Drakulix 94d6a0f987 Fix broken robost implementation 2017-05-23 11:02:39 +02:00
Drakulix 786d719dad rustfmt fixes 2017-05-21 22:50:50 +02:00
Drakulix 5bc641852f Bugfixes 2017-05-21 22:40:15 +02:00
Drakulix b950714c03 First EGL Rework draft 2017-05-18 22:28:02 +02:00
Drakulix 196b48041b Use an enum instead of a struct for `UnusedEvent` 2017-04-29 16:23:45 +02:00
Drakulix 3bd25011b0 Replace `()` with `UnusedEvent` 2017-04-27 16:12:06 +02:00
Drakulix a2f3b2a303 Fix some clippy warnings 2017-04-26 20:19:57 +02:00
Drakulix f7d3b3dee3 Fix formatting 2017-04-26 20:10:28 +02:00
Drakulix 4c5e2be11e Update libinput to v0.1.1 2017-04-26 20:09:57 +02:00
Drakulix 092fc198c3 Fixup glutin backend and more bugfixes 2017-04-24 00:30:02 +02:00
Drakulix 4fc595f68a Fixup libinput backend to use new event api 2017-04-23 19:55:43 +02:00
Drakulix d62f491801 Refactor `InputBackend` to use events. 2017-04-23 19:55:11 +02:00
Drakulix 056ce6312c Add set_cursor_representation 2017-04-21 22:25:01 +02:00
Drakulix 9b6273f297 Add set_output_metadata 2017-04-18 21:57:53 +02:00
Drakulix 109f4035e8 Move set_cursor_position to the graphics backend 2017-04-18 21:20:08 +02:00
Drakulix f95faba80f Add libinput documentation 2017-04-15 22:53:09 +02:00
Drakulix 4afad6f939 Expand `Seat` documentation 2017-04-15 22:48:55 +02:00
Drakulix cc6f0c9d73 Expand `on_seat_changed` documentation 2017-04-15 22:45:26 +02:00
Drakulix 66ea275d71 Fixup seat implementation 2017-04-15 22:42:42 +02:00
Drakulix 4c591a86bd Add initializer 2017-04-15 22:38:33 +02:00
Drakulix 8cbe96d1ac Add more logging 2017-04-15 22:28:51 +02:00