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
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
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
tomaka
90a81cca29
Merge pull request #214 from tomaka/rm-cgl
...
Remove dependency on cgl on OSX
2017-07-05 09:38:26 +02:00
Lucien Greathouse
0371b6573f
Implement raw mouse motion for Windows
2017-07-05 00:28:08 -07:00
Pierre Krieger
ac0d6c890a
Remove dependency on cgl on OSX
2017-07-05 09:13:39 +02:00
Determinant
75856e0e39
dynamically reallocate buffer; release mutex before callback
2017-07-01 12:24:35 -04: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
Victor Berger
66a12d5332
linux: stop exposing wayland_client's types
2017-06-23 20:20:49 +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
cd71271f0d
Fix api_transition ControlFlow update compile errors
2017-06-09 07:33:22 -07:00
mitchmindtree
4b42af910b
Make x11 backend take &mut self in poll_events method
2017-06-09 22:55:48 +10:00
mitchmindtree
0af3c04900
Update api transition to use ControlFlow
2017-06-09 22:55:32 +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
db9e80bdb6
Update examples and tests to addition of ControlFlow
2017-06-08 00:12:41 +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
647a1727d0
Attempt to update api_transition to addition of EventsLoopProxy
2017-05-31 15:35:08 +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
06a5ec35b3
[WIP] Remove Sync and Clone from EventsLoop. Add EventsLoopProxy.
...
This commit only updates the top-level API to get some early feedback.
None of the platform-specific code has been updated yet. I'm hoping to
get around to this over the next couple days however if someone more
familiar with the windows backend would like to do a PR against this
fork that would be a great help.
Closes #187 .
2017-05-25 20:13:54 +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
tomaka
c33bedce5e
Merge pull request #178 from jwilm/fix-x11-poll-events
...
Fix poll_events on x11 not draining completely
2017-05-12 09:10:25 +02:00
Joe Wilm
55b5054d50
Derive Clone on winit::EventsLoop wrapper
...
Resolves #177 .
2017-05-11 23:04:28 -07: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
vanderlokken
f034017ab2
FIxed obsolete strings
2017-05-11 03:14:38 +03:00
vanderlokken
5645941a14
Fixed obsolete comments
2017-05-11 03:10:07 +03: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
Joe Wilm
f3db0ba641
Fix x11 interrupt to actually wake event loop
...
This is the same behavior as with WindowProxy::wakeup_event_loop in
previous versions.
Unfortunately, `EventsLoop::interrupt` is also the recommend way to exit
a `run_forever` loop from within the event handler callback. Pushing an
extra event on the queue in that case is simply wasteful. Changing this
would require a refactor taking one of two possible forms:
1. Add a method *in addition* to interrupt intended for waking up the
event loop
2. Add a return type to the event callback like
enum Continue { True, False }
which would be used in lieu of the atomic interrupt flag.
2017-05-09 09:51:00 -07:00
Joe Wilm
8288d419fd
Remove unnecessary mut
2017-05-09 09:50:16 -07:00
Joe Wilm
c92ac695af
Fix x11 poll_events to drain queue
...
It was only processing a single event per call. The docs say
> Fetches all the events that are pending, calls the callback function
> for each of them, and returns.
which suggests that was incorrect.
2017-05-09 09:20:35 -07:00