Commit graph

173 commits

Author SHA1 Message Date
Umur Gedik d65d9950f2 Fixes window inner size calc for hidpi windows X11
X11 always return the geometry in pixel units. Since
window.get_inner_size returns the size in points in other window manager
implementations X11 should also return in points instead of pixels.
2017-07-27 14:04:04 +09:00
Victor Berger 8d5b23d56c Update wayland-window to support xdg_shell 2017-07-19 18:28:14 +02:00
tomaka 28eddb64a9 Merge pull request #238 from GuildMasterInfinite/gui-thread
Use `IsGUIThread` to initialize message queue
2017-07-18 20:53:59 +02:00
tomaka 2066909845 Merge pull request #223 from Determinant/xim-send-spot
XIM support for sending spot to IME
2017-07-18 20:09:02 +02:00
Gabriel Majeri 8add21b04f Use IsGUIThread to initialize message queue 2017-07-18 20:57:22 +03:00
Alex Butler 58b800c344 Fix wayland vertical scroll sign 2017-07-18 12:47:01 +01:00
Benjamin Saunders 506e830cb0 Fix X11 scroll direction
This was inconsistent with the documented semantics of MouseScrollDelta.
2017-07-17 23:52:28 -07:00
Benjamin Saunders b09e3b2568 Fix windows build
An inconsistency was introduced by the independent merging of #211
with #213.
2017-07-17 17:57:25 -07:00
tomaka 2e079fe9a2 Merge pull request #211 from Ralith/transparent-ids
Transparent axis/button IDs
2017-07-17 07:37:26 +02:00
Rukai e1e21ded28 Fix x11 ModifiersState 2017-07-15 09:58:32 -07:00
Pierre Krieger 7a1a2667b1 Reimplement platform_window on win32 2017-07-13 21:14:32 +02:00
Determinant 9cd370fa4c Merge branch 'master' of https://github.com/tomaka/winit into xim-send-spot 2017-07-12 13:46:01 -04:00
Determinant d6b9faacc9 rename the field 2017-07-12 13:26:11 -04:00
tomaka 9462a51f32 Merge pull request #203 from Determinant/xim-improvement
XIM: Increase the string lookup buffer size and add IC focus/unfocus.
2017-07-12 19:14:11 +02:00
Determinant 8e13f85fac Merge branch 'xim-improvement' into xim-send-spot 2017-07-12 01:24:30 -04:00
Determinant f2ee78bcf5 Merge branch 'master' of https://github.com/tomaka/winit into xim-send-spot 2017-07-12 00:04:12 -04:00
Determinant aea61a74fb remove the the redundant code, fix a bug 2017-07-12 00:00:51 -04:00
Rukai 117beed0b5 Fix x11 mouse scroll wheel 2017-07-11 17:15:23 +10:00
Imanol Fernandez 5ebeb8ab5f Fix Android compilation error 2017-07-06 23:33:42 +02:00
Lucien Greathouse 0371b6573f Implement raw mouse motion for Windows 2017-07-05 00:28:08 -07:00
Determinant 75856e0e39 dynamically reallocate buffer; release mutex before callback 2017-07-01 12:24:35 -04:00
Benjamin Saunders 3d9e8da9ec Transparent axis/button IDs 2017-07-01 02:22:02 -07:00
Brendan Zabarauskas 886eab5c7e Fix build on nightly
Nightly recently fixed some soundness issues related to `Sized`. This had to be fixed in the cocoa crates as well, and also affects our ios bindings.
2017-07-01 17:48:47 +10:00
Pierre Krieger 61ba6dce7f Switch win32 implementation to new design 2017-06-26 21:46:26 +02:00
Victor Berger 05cd9f2114 Merge pull request #199 from alexheretic/xwayland-env-var
Add a `WINIT_UNIX_BACKEND` environment variable to all the user to control the choice of x11/wayland backend.
2017-06-25 10:40:05 +02:00
Determinant 5e5debc48f increase the buffer size; proper IC focus/unfocus 2017-06-23 14:27:48 -04:00
Victor Berger e915454a9d linux: update wayland dependencies 2017-06-23 20:25:06 +02:00
Alex Butler 3a89843767 Add WINIT_UNIX_BACKEND documentation 2017-06-21 20:10:23 +01:00
Alex Butler eaa92a4282 Improve unix backend env var docs 2017-06-21 19:59:56 +01:00
Alex Butler 789598fa84 Rename unix backend env var
Rename inline with stricter behaviour
Add docs explaining behaviour
2017-06-21 19:54:21 +01:00
Alex Butler 7a19ef1907 Make usage of env vars strict
Using `BACKEND_PREFERENCE_ENV_VAR=$backend` will no longer fallback on
any other backend
2017-06-21 19:41:26 +01:00
Alex Butler 9804cad7dd Allow usage of XWayland
Will prefer X11 over wayland when the environment variable
`WINIT_PREFER_UNIX_BACKEND=x11` is set.
2017-06-21 18:34:16 +01:00
mitchmindtree 04ccad1dbc Rename ControlFlow variant from Complete to Break 2017-06-20 21:25:53 +10:00
mitchmindtree df1276d72a Fix x11 EventsLoopProxy::wakeup implementation using a dummy, InputOnly window 2017-06-17 22:59:56 +10:00
mitchmindtree 4b42af910b Make x11 backend take &mut self in poll_events method 2017-06-09 22:55:48 +10:00
mitchmindtree 0237526999 Complete macos backend update to addition of ControlFlow 2017-06-09 22:13:30 +10:00
mitchmindtree c5b9bd3612 Update macos backend to addition of ControlFlow (untested) 2017-06-09 19:40:22 +10:00
mitchmindtree f2dd2f0752 WIP - Make poll_events and run_forever take &mut self
This removes the need for the EventsLoop::interrupt method by inroducing
a ControlFlow type. This new type is to be returned by the user's
callback and indicates whether the `EventsLoop` should continue waiting
for events or break from the loop.

Only the wayland, x11 and api_transition backends have been updated so
far, and only the wayland backend has actually been tested.
2017-06-02 21:19:45 +10:00
mitchmindtree 38856b1c60 X11 - Move event insertion from interrupt to proxy wakeup. 2017-05-31 18:07:51 +10:00
mitchmindtree 2b55b2e0ef Temporarily remove windows window-specific awakened event. Needs to be updated to non-window-specific Event. 2017-05-31 16:11:06 +10:00
mitchmindtree 8f0ef514b1 Fix incorred Awakened import in windows backend 2017-05-31 15:52:15 +10:00
mitchmindtree 339318f295 Update macOS backend to removal of Send+Sync and addition of EventsLoopProxy 2017-05-31 15:00:49 +10:00
mitchmindtree 9ca2f83784 Call flush so that the wayland eventsloop correctly breaks from dispatch when wakeup is called 2017-05-27 22:51:59 +10:00
mitchmindtree f6587aed39 [WIP] Have EventsLoopProxy::wakeup return a Result. Begin linux impl.
X11 and Wayland implementations are now half implemented, however both
still do not correctly break from the inner blocking event dispatch
functions when `wakeup` is called, which they should do.
2017-05-25 23:19:13 +10:00
mitchmindtree fdb1c56366 Move interrupt flag reset to beginning of run_forever in wayland backend 2017-05-25 02:54:32 +10:00
mitchmindtree 1523548d3e wayland: Reset the intterupted flag before breaking from run_forever
This is important for any code that re-enters `run_forever` after some
previous interrupt.
2017-05-25 00:19:30 +10:00
Victor Berger 148c751f32 wayland: Initially paint the window white so that they always exist 2017-05-23 21:53:17 +02:00
Victor Berger c2c27c1b37 wayland: Fix deadlock in poll_events 2017-05-14 15:28:27 +02:00
Joe Wilm 4ec5078bdb Fix poll_events on x11 not draining completely
If the interrupted flag were set going into poll_events, it would only
ever handle the first event in the queue. Now, the flag is reset at the
start so events are processed until the caller requests otherwise.
2017-05-11 23:00:22 -07:00
Joe Wilm 46057d7122 Remove unnecessary locking
For X11 interrupt, we can just use the root window which doesn't require
taking a lock to find.
2017-05-09 21:30:31 -07:00