Tristam MacDonald
6820e2a826
Implement raw mouse motion for Mac
2017-07-29 08:04:37 -07:00
Tristam MacDonald
ed761bef7d
Also hide the cursor when grabbed
2017-07-29 08:04:37 -07:00
gzp
c57ec33c00
also call default window handle on wm_close
2017-07-28 13:12:16 +02:00
gzp
28cdce99c0
replace wm_destroy by wm_close
2017-07-28 13:09:50 +02:00
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
Rob Saunders
06e01e4cb3
Added event for cancelling a drag and drop.
2017-07-27 10:56:34 +08:00
Rob Saunders
5f00028f6b
Mac module emits the winit events DroppedFile and HoveredFile.
2017-07-27 10:51:00 +08:00
Rob Saunders
4ef7c71c66
Initial drag and drop support for Mac OS, printing filenames to stdout.
2017-07-27 00:59:42 +08:00
Lucas Kent
32eea41b1b
add missing windows virtual key codes
2017-07-24 20:21:04 +10: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
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
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
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
Joe Wilm
0b75a6b60c
Make keyboard input event order consistent
...
All platforms should now receive events in the following order:
1. KeyboardInput(ElementState::Pressed, ..)
2. ReceivedCharacter
3. KeyboardInput(ElementState::Released, ..)
cc https://github.com/tomaka/glutin/issues/878
2017-05-07 21:16:48 -07:00
tomaka
15aafc2908
Merge pull request #164 from Ralith/rich-input
...
Richer input events
2017-05-07 08:35:03 +02:00
Jon Gjengset
4087627b12
Set WM_CLASS and WM_NAME before mapping window
...
ICCCM 4.1.2.5 (https://tronche.com/gui/x/icccm/sec-4.html#WM_CLASS )
states that:
> This property must be present when the window leaves the Withdrawn
> state and may be changed only while the window is in the Withdrawn
> state.
Previously, we would first map the window, and then set these
properties, causing sadness for window managers (#167 ,
tomaka/glutin#879 ). This patch changes that by setting the class and
name attributes immediately after the window is created, and before it
is mapped.
Fixes #167 .
2017-05-04 17:37:24 -04:00
torkleyy
c4cdb9aa5c
Set repr of VirtualKeyCode to u32
...
This allows to have an array of bools for the key states.
2017-04-26 07:53:20 +02:00
Benjamin Saunders
22bc119cd7
Richer input events
...
This expands input events to represent sub-pixel mouse positions, devices responsible for generating events, and raw
device-oriented events. The X11 back end is refactored to make full use of the new expressiveness. Other backends have
had new functionality minimally stubbed out, save for the macos backend which already supports sub-pixel mouse
positions.
2017-04-23 01:08:15 -07:00
mitchmindtree
cccc48b84d
[macos] Emit a resize event when Window changes screens
2017-03-19 20:30:54 +11:00
mitchmindtree
4656540417
Close NSWindow when Window
is dropped if not already closed.
...
Previously, if a `Window` was `Drop`ped while open, the window would
remain open until the user pressed the x button. This fixes the
behaviour so that the window is closed when dropped if it has not
already been closed.
2017-03-19 19:32:24 +11:00
mitchmindtree
27bd796c2a
[macos] Remove Window from EventsLoop's Window list on close and drop
...
Previously, a Window was only removed from the list when dropped.
2017-03-19 19:20:38 +11:00
mitchmindtree
41e7572147
[macos] Avoid panic when callback is None
.
...
This can happen when window is destroyed/created during a call to user
callback as this causes WindowDelegate method to be called.
Instead if the user callback is `None` store the event in
`pending_events`.
2017-03-19 19:09:20 +11:00
mitchmindtree
4b39f81621
Avoid leaking Windows by storing Weak pointers in EventsLoop
2017-03-19 18:19:24 +11:00
Victor Berger
08254e68fb
Readd pub import erroneously removed
2017-03-15 10:11:43 +01:00
Victor Berger
50f38e2f76
wayland: Update to wayland 0.8.6
2017-03-13 19:18:49 +01:00
tomaka
2e82cac69a
Merge pull request #154 from vberger/wayland_new_api
...
Port wayland to the new API
2017-03-11 09:04:09 +01:00
Victor Berger
d3356763dc
wayland: add some comments
2017-03-10 23:56:31 +01:00
Victor Berger
3ff9eb08e8
wayland: cleanup signal to prune dead windows
2017-03-10 23:40:31 +01:00
Victor Berger
17fde48ed7
wayland: move input logic to the event loop
2017-03-10 23:22:59 +01:00
Imanol Fernandez
f961bdd668
Implement android events and wake event loop.
2017-03-06 14:39:42 +01:00
Gabriel Martinez
deeda59689
Clean up macOS window style logic
...
* Remove NSTitledWindowMask for windows with no decorations. This
makes sure that they do not have a title bar.
* Transparency is not be taken into account as we could have a window
with a titlebar or without that is transparent.
2017-03-05 14:50:39 -08:00
Gabriel Martinez
0b530b026d
Support disabling window decorations in X11
...
This uses the incredibly old and ugly _MOTIF_WM_HINTS property:
http://stackoverflow.com/questions/5134297/xlib-how-does-this-removing-window-decoration-work
Using _NET_WM_WINDOW_TYPE from the Extended Window Manager Hints spec
(https://specifications.freedesktop.org/wm-spec/wm-spec-latest.html )
would be preferred, but it requires knowing up front what the user
intends their window to be. _MOTIF_WM_HINTS should work for now.
2017-03-05 09:42:24 -08:00
Victor Berger
7336cacf07
wayland: mugrate to new API
2017-03-04 14:04:01 +01:00
Victor Berger
9aaa788434
linux: Remove dead code from wayland & fix some trivial warnings.
2017-03-04 11:26:12 +01:00
Victor Berger
4e75c1e668
linux: Add missing Window2::id() impl
2017-03-04 10:48:44 +01:00
Victor Berger
624a422f20
linux: move api transition boilerplate to x11/wayland submodules
2017-03-04 09:09:09 +01:00
Victor Berger
4acf437221
Move api module into platform::linux
2017-03-04 09:09:09 +01:00
Victor Berger
64c8f66e72
wayland: implement modifiers
2017-03-03 22:28:02 +01:00
Yasuhiro Fujii
d72a345878
implement Window::hidpi_factor() for X11.
2017-03-03 21:25:26 +09:00
Erik Rigtorp
290040dbd8
Implement KeyboardEvent ModifiersState for macOS
2017-02-27 13:38:47 -06:00
Erik Rigtorp
5d41067a05
Implement KeyboardEvent ModifiersState for win32
2017-02-27 13:36:15 -06:00
Erik Rigtorp
a2c6fb720c
Implement KeyboardEvent ModifiersState for X11
2017-02-27 13:36:15 -06:00
Erik Rigtorp
f3ccdb7aec
Add keyboard modifiers to input event
...
Making applications track modifier keys results in unnecessary work for
consumers, it's error prone, and it turns out to have unavoidable bugs.
For example, alt-tabbing with x11 results in the alt modifier state
getting stuck.
To resolve these problems, this patch adds a Mods value to the keyboard
input event.
Based on this patch: d287fa96e3
2017-02-27 13:36:11 -06:00
Joe Wilm
2ee658048a
Fix busy loop in X11 WaitEventsIterator
...
WaitEventsIterator implements waiting by first calling XPeekEvent which
will block until at least 1 event is queued, and then it delegates to
PollEventsIterator to actually handle the new event. PollEventsIterator
was previously picky about which events it would process. Events of
other types would get stuck at the head of the X event queue, and
PollEventsIterator would return None. This initiated a busy loop in the
WaitEventsIterator because it would XPeekEvent, see that something is
there, and then PollEventsIterator would return None, and the process
would repeat.
This is resolved by using XNextEvent in the PollEventsIterator instead
of XCheckTypedEvent. Any event in the queue will be popped. Even if
winit isn't interested in the event, this means XPeekEvent will block
again to wait for another event instead of the previous behavior.
2017-02-15 08:34:24 -08:00
mitchmindtree
24b44e3b8e
Remove confusingly named event import alias
2017-02-05 20:41:26 +11:00
mitchmindtree
ba71f6fb77
Add missing unsafe block to check for main thread macOS
2017-02-05 19:53:13 +11:00
mitchmindtree
926e03039f
Panic if the user attempts to create window on non-main thread
2017-02-05 19:47:39 +11:00
mitchmindtree
b62ecfd517
Fix comments on macOS backend UserCallback methods
2017-02-05 19:37:00 +11:00
mitchmindtree
30e00f0454
Fix comment on event conversion special case
2017-02-05 19:21:51 +11:00
mitchmindtree
06c1b5903b
Fix bug where an NSEvent is produced when a user opens spotlight while
...
the NSApplication is in focus.
This NSEvent produces an undocumented NSEventType value `21` that has no
associated variant within the cocoa-rs crate's `NSEventType` enum, thus
causing a segfault when attemptingt to match on the value.
This commit adds a check for `21` to avoid the segfault.
This fixes #104 .
2017-02-05 19:01:27 +11:00
mitchmindtree
cbadc4bc31
Fix issue where window would not focus on startup.
...
Fix issue where key window would lose all mouse events once mouse left
that window.
Make sure that only window under mouse receives mouse scroll wheel
events.
2017-02-05 18:12:32 +11:00
mitchmindtree
3482c53c89
Rename old glutin ivar to winit
2017-02-05 13:28:56 +11:00
mitchmindtree
3ce7904e01
Wrap the temporarily stored user callback in a type to enforce
...
invariants
This also removes the need for "box"ing the callback in favour of
storing a raw `*mut` pointer. We can do this by ensuring that we never
store the pointer for longer than the lifetime of the user callback,
which is the duration of a call to `poll_events` or `run_forever`.
Also removes old commented out event code from the window module.
2017-02-05 12:51:09 +11:00
mitchmindtree
c03311fa2d
Add a method to simplify emitting an event from the macos poll_events and run_forever methods
2017-02-04 13:30:34 +11:00
mitchmindtree
fd0ddee63c
Panic if the user attempts to run an event loop on a non-main thread on macOS
2017-02-04 02:55:42 +11:00
mitchmindtree
ea19409960
Make sure EventsLoop::interrupt awakens the waiting event loop
2017-02-04 02:54:40 +11:00
mitchmindtree
35dcf8dab9
Only return Awakened on NsApplicationActivated, rather than on every unknown event.
2017-02-04 00:51:38 +11:00
mitchmindtree
be09639b69
Update the macOS backend to the new futures-compatible API.
...
This is a follow up to the new API introduced in #20 .
This also fixes the issue where window resize events would not be
emitted until the end of the resize. This PR fixese #39 by ensuring that
the user callback given to either `EventsLoop::poll_events` or
`EventsLoop::run_forever` can be called by each window delegate's resize
callback directly.
2017-02-03 23:05:57 +11:00
Pierre Krieger
885b927d23
Merge remote-tracking branch 'origin/master' into impl-20
2017-02-03 09:14:24 +01:00
Pierre Krieger
b988c174fe
Add WindowId type
2017-02-03 09:13:11 +01:00
tomaka
ae53bb0f14
Merge pull request #102 from cjhowe/master
...
iOS Support
2017-02-03 09:09:02 +01:00
Pierre Krieger
9cd0430ec7
Remove stuff from Window's API
2017-02-03 06:48:58 +01:00
Pierre Krieger
5025db2d59
Unix fix attempt
2017-01-28 16:09:22 +01:00
Pierre Krieger
148f507272
Wayland fix attempt
2017-01-28 15:56:53 +01:00
Pierre Krieger
c3d2289b0c
Remove resize_callback from WindowsAttributes
2017-01-28 15:34:15 +01:00
Pierre Krieger
bcb242983b
Add documentation for the new API
2017-01-28 15:33:54 +01:00
Pierre Krieger
d86fdb48d1
Remove the window from the events loop on destruction
2017-01-28 15:14:23 +01:00
Pierre Krieger
0242daa242
Add interrupting the events loop
2017-01-28 15:09:01 +01:00
Pierre Krieger
e7d43174e7
Implement the transition API
2017-01-28 15:05:36 +01:00
Pierre Krieger
422b332c1b
Add a transition macro system
2017-01-28 15:00:17 +01:00
tomaka
f1d70d351e
Merge pull request #82 from tomaka/documentation
...
Some documentation improvements
2017-01-28 13:31:36 +01:00
Pierre Krieger
8277b26862
No longer use an api_dispatch module for linux
2017-01-28 13:14:20 +01:00
tomaka
6738f7cc2e
Merge pull request #118 from ojacobson/macos-window-resize
...
Naive implementation of resize events for OS X.
2017-01-25 07:58:08 +01:00
Owen Jacobson
6f82ccfba9
De-duplicate resize events.
...
This tracks resizes separately, and synthesizes them for the event iterators as needed, so that OS X apps don't generate a whole set of resize events after each resize.
2017-01-24 13:46:46 -05:00
Pavel Potocek
bf1585b819
Use a hand pointing a finger in X11 as MouseCursor::Hand
2017-01-24 15:35:38 +01:00
Owen Jacobson
7d6b4c3fe5
Naive implementation of resize events for OS X.
...
These events are batched, and delievered en masse at the end of the resize. This isn't a great developer experience (and it should probably be called out in the docs), but it makes it possible for winit client applications to detect and respond to resizes without special-casing Mac OS targets.
See #39 . This is only a partial fix, and does not provide on-the-fly resize events.
2017-01-24 00:13:45 -05:00
mitchmindtree
95b7d5326e
Fix patterns_in_fns_without_body warning on macos
2017-01-22 17:55:30 +11:00
mitchmindtree
9b15440b62
Fix non_upper_case_globals warnings on macos
2017-01-22 17:54:45 +11:00
tomaka
41ac24b107
Merge pull request #113 from samdphillips/mac-middle-mouse-button
...
Add middle mouse button events for MacOS.
2017-01-19 20:45:51 +01:00
Jeff Muizelaar
3b1fdc0f55
macos: Map our user generated event to Event::Awakened
...
This fixes propagation of Event::Awakend from wakeup_event_loop() when
using poll_event() on macOS.
Currently wait_event() translates all unknown events into
Event::Awakened so doesn't need the explicit translation.
2017-01-19 14:17:55 -05:00
Sam Phillips
55e52d6071
Add middle mouse events for MacOS.
2017-01-17 19:47:36 -08:00
rerion
941c8d3344
Add TODO & bump version
2017-01-07 15:00:15 +01:00
rerion
f5812018ca
Add get_x11_xconnection function
2017-01-07 14:34:38 +01:00
rerion
d4b8fd9f5a
Add methods allowing creation of X11 window with specified visual and screen
2017-01-06 22:46:41 +01:00
Christian Howe
ba94b8edf8
Fix Travis iOS build
2016-12-15 21:34:37 -06:00
Christian Howe
5146bce88e
Fix iOS build and add to Travis CI
2016-12-13 07:29:17 -06:00
tomaka
3b93c7c664
Merge pull request #95 from frewsxcv/transparent
...
Implement window transparency on macOS.
2016-12-04 07:59:51 +01:00
Corey Farwell
cb0811faf3
Implement window transparency on macOS.
...
Fixes https://github.com/tomaka/winit/issues/57 .
2016-11-30 14:36:51 -05:00
k-brac
7f2ee9a09a
remove useless pub
2016-11-29 14:02:19 +01:00
k-brac
3e2154a922
child window created using a winapi::HWND instead of a WindowProxy
2016-11-29 13:02:42 +01:00
k-brac
2b25bf1480
child window creation improvement
2016-11-28 13:50:07 +01:00
k-brac
5a09e8ba21
first try to allow child window on windows
2016-11-25 17:05:39 +01:00
Corey Farwell
57d1e162ee
Update min/max window constraints to support MacOS 10.10.
2016-11-23 10:50:12 -05:00
Corey Farwell
e3fce3d5ec
Implement min/max window dimension constraints for MacOS.
...
Fixes https://github.com/tomaka/winit/issues/80 .
2016-11-23 09:31:41 -05:00
mitchmindtree
53065bda40
Move resize_callback field from WindowBuilder into WindowAttributes struct
2016-11-12 02:55:21 +11:00
mitchmindtree
eb18b3d8b6
Add a WindowBuilder::with_window_resize_callback
method.
...
This allows for passing the window_resize_callback fn during the window
building stage. More importantly, this allows setting the callback
without the need for mutable access to the Window, making it possible
to set the callback in the downstream glium crate.
This may solve tomaka/glium#1232 for most folk.
2016-11-11 22:08:46 +11:00
Pierre Krieger
2c58e85584
Some documentation improvements
2016-11-06 09:51:20 +01:00
Pierre Krieger
712b27086f
Fix win32 panicking all the time and make events work
2016-11-05 13:44:23 +01:00
Victor Berger
f371621dd9
linux: remove outdate comment
2016-11-03 22:48:58 +01:00
Andy Barron
db45e58390
Add MouseEntered/MouseLeft for Windows, X11, Wayland, & Cocoa
2016-11-03 01:31:16 -07:00
Victor Berger
ce6d2496d3
wayland: sync drawn border size on window creation
2016-11-02 20:07:49 +01:00
Pierre Krieger
cf7c691bd6
Remove emscripten implementation
2016-11-01 16:16:59 +01:00
tomaka
9e404f2fe6
Merge pull request #28 from tomaka/win32-cleanups
...
Cleanups in the win32 code
2016-11-01 16:10:14 +01:00
Pierre Krieger
ef61a46182
Removed pub fields when not needed
2016-10-31 17:30:19 +01:00
Pierre Krieger
158543f336
Remove obsolete comment
2016-10-31 17:29:12 +01:00
Pierre Krieger
aace1c0373
Remove dependency on libc when possible
2016-10-31 17:26:26 +01:00
Pierre Krieger
751b0a7ed7
Move the win32 implementation to platform/windows
2016-10-31 17:23:00 +01:00
Pierre Krieger
188ecae101
Move some implementations around
2016-10-31 17:13:11 +01:00
Andrey Lesnikov
f5daac771e
Prepared winit for glutin porting
2016-10-20 11:06:57 +03:00
Victor Berger
76f5613496
wayland: properly fetch new events with Window::poll_events()
2016-10-16 23:29:29 +02:00
Victor Berger
0663269482
wayland: Implement wakeup_event_loop()
2016-10-16 22:53:53 +02:00
Victor Berger
db6b4606a1
wayland: Support for wheel scrolling
2016-10-16 22:35:18 +02:00
Victor Berger
44996acf94
wayland: expose internals as side unsable methods
2016-10-10 08:01:58 +02:00
Victor Berger
42d73a1488
wayland: fix event dispatch, avoid double wait
2016-10-09 18:26:46 +02:00
Victor Berger
2d025a4a35
wayland: gracefully handle missing libxkbcommon
2016-10-09 18:26:24 +02:00
Victor Berger
c6f8ed2f81
wayland: handle Focused
event
2016-10-09 16:33:29 +02:00
Victor Berger
6483e7f408
wayland: Some Window methods
2016-10-09 16:19:06 +02:00
Victor Berger
a5ba9983c9
wayland: basic mouse & keyboard support
2016-10-09 16:08:10 +02:00
Victor Berger
34c00aa153
wayland: window creation & resizing
2016-10-09 16:08:10 +02:00
Victor Berger
a505eddf29
wayland: bases of backend and output handling
2016-10-09 16:08:10 +02:00
Victor Berger
c991172a28
wayland: remove old code for new backend
2016-10-09 16:08:10 +02:00
Pierre Krieger
fe77a55a67
Fix WindowExt implemented on the wrong Window
2016-10-08 09:18:00 +02:00
Pierre Krieger
d5b88f1d5f
Add get_nsview to WindowExt for MacOS
2016-10-06 20:41:15 +02:00
Andrey Lesnikov
2def6d5fff
Fixed macos
2016-09-19 21:05:48 +03:00
Andrey Lesnikov
7f6ae8910e
Merge https://github.com/tomaka/glutin
...
Conflicts:
.travis.yml
Cargo.toml
examples/fullscreen.rs
src/api/android/mod.rs
src/api/cocoa/headless.rs
src/api/cocoa/helpers.rs
src/api/cocoa/mod.rs
src/api/glx/mod.rs
src/api/osmesa/mod.rs
src/api/win32/callback.rs
src/headless.rs
src/lib.rs
src/platform/linux/mod.rs
src/window.rs
2016-09-19 19:53:28 +03:00
tomaka
614276eb0b
Merge pull request #12 from Osspial/master
...
Fix win32 bug where window resize cursors would not show
2016-09-07 07:13:19 +02:00
Glenn Watson
1eb2052bcf
Add support to Linux headless implementation for specifying OpenGL version.
...
This allows creation of GL3+ headless OSMesa contexts on Linux.
2016-08-22 09:16:47 +10:00
Victor Koenders
5ce48523cd
Added a couple more PartialEq's
2016-08-17 20:42:45 +02:00
Nicolas Koch
32d01b288e
Add support for xcb
...
Due to XCB and Xlib compability, we can take a shortcut and use X11's
underlying xcb_connection. This way, a complete XCB backend implementation can
be avoided.
2016-07-31 00:00:43 +02:00
Emilio Cobos Álvarez
952ca7cfed
x11: handle X11's multi-key, a.k.a compose key.
2016-07-04 16:40:47 -07:00
mraof
f6ead48378
owner_events is now true when grabbing the pointer
2016-06-29 23:28:03 -04:00
mitchmindtree
8076255ba8
Make sure the window does not set itself to autorelease upon closing.
2016-06-26 11:44:27 +10:00
mitchmindtree
cbb734b5a1
Remove unnecessary global imports in favour of explicitly importing traits and using namespacing for constants, types and functions.
2016-06-22 15:50:34 +10:00
tomaka
0c4cf714a1
Merge pull request #790 from mitchmindtree/remove_unused_imports
...
Addresses unused import and `non_upper_case_globals` warnings emitted on OS X
2016-06-22 07:43:55 +02:00
tomaka
572af951e9
Merge pull request #791 from mitchmindtree/remove_unused_private_fields
...
Remove unused private fields from cocoa HeadlessContext struct.
2016-06-22 07:43:17 +02:00
mitchmindtree
9a6b6b3f35
Remove imports of enum variants in favour of using the type name paths.
2016-06-22 13:32:36 +10:00
mitchmindtree
c2537d81e8
Remove unused private fields from cocoa HeadlessContext struct.
2016-06-22 12:45:42 +10:00
mitchmindtree
561349669a
Addresses several warnings emitted on OS X by removing unused imports and allowing non_upper_case_globals in cocoa event conversion function.
2016-06-22 12:40:48 +10:00
Andrey Lesnikov
7a8429e499
android: Fixed Window::get_pixel_format
2016-06-19 11:24:26 +03:00
tomaka
11faacefd7
Merge pull request #772 from ozkriff/master
...
Update to android_glue 0.2
2016-05-25 21:22:13 +02:00