Bruno Ploumhans
36058ab8e6
Improve the documentation of DeviceEvent::Motion ( #321 )
2017-10-28 12:33:51 +02:00
Chris Tolliday
159364bec3
Impl Clone for EventsLoopProxy ( #331 )
2017-10-25 20:03:57 +02:00
Victor Berger
58181dbff9
wayland: Fix drop order for display ( #326 )
2017-10-25 18:28:24 +02:00
kryptan
760e588627
Use EnumDisplayMonitors to enumerate monitors on Windows ( #327 )
...
* Use EnumDisplayMonitors to enumerate monitors on Windows
* Add requested changes
2017-10-25 17:12:39 +02:00
Victor Berger
d10312c6b1
Rewrite of wayland backend to new wayland-client API ( #325 )
...
* wayland: clean state for rewrite to new wayland-client API
* wayland: context init
* wayland: Monitors logic
* wayland: Basic event loop logic
* wayland: Keyboard handling
* wayland: pointer handling
* wayland: refactor to remove WaylandContext
* wayland: window logic
* wayland: event dispatching logic
* wayland: update changelog
2017-10-20 09:46:42 +02:00
kryptan
4e4db1749d
Make MonitorId::get_position() return (i32, i32) instead of (u32, u32) because it can be negative on Windows ( #324 )
2017-10-19 19:08:05 +02:00
Victor Berger
229029f2da
Formalize thread-safety guarantees ( #322 )
2017-10-18 20:40:21 +02:00
kryptan
48902297b7
Implement public API for high-DPI ( #319 )
...
* Implement public API for high-DPI #105
* Recover get_inner_size_points and get_inner_size_pixels and change their implementation assuming get_inner_size() returns size in pixels
* Update changelog for high-DPI changes
2017-10-17 13:56:38 +02:00
Chet Gurevitch
eff3440482
Mirror x11 ISO_LEFT_TAB detection on wayland and release version 0.8.3 ( #314 )
...
* wayland: mirror x11 ISO_LEFT_TAB detection
* Release 0.8.3
2017-10-12 09:39:41 +02:00
Victor Berger
3d8c94bae5
wayland: commit the empty surface at init ( #309 )
...
This should trigger the compositor's mechanism for sending a
configure event, which should most of the time be processed
before any winit user actually tries to draw.
2017-10-08 15:51:48 +02:00
Matteo Signer
3f33cd1929
Make ISO_Left_Tab generate VirtualKeyCode::Tab ( #308 )
...
* Make ISO_Left_Tab generate VirtualKeyCode::Tab
* Add changes to changelog
2017-10-08 13:59:45 +02:00
Pedro Côrte-Real
1db92063d9
Fix X11 on 32bit architectures ( #311 )
...
* Add an i386 target to travis
* Fix X11 on 32bit architectures
One would hope 32bit X11 was dead by now but apparently not :). Fix
the window hint setting code to not assume window IDs are 64bit as
apparently they are not in 32bit arches.
2017-10-07 21:20:37 +02:00
Chris Tolliday
5af88d97e8
On Windows, use SWP_ASYNCWINDOWPOS to prevent thread from blocking when calling ( #302 )
...
set_inner_size
2017-10-04 09:42:35 +02:00
Victor Berger
515595153d
Wayland: rework the event loop & expose readiness signal ( #298 )
...
* wayland: don't create a second event_queue
As each EventsLoop has its own context, this is no longer necessary.
* wayland: buffer events rather than direct dispatch
Changes the behavior of the event loop to first internally
buffer the events generated by the wayland handlers, and then
dispatch them to the client's closure.
- It simplifies the event loop logic
- It makes it possible for the user to call window methods such as
`set_title()` or `set_inner_size()` without causing a deadlock
* wayland: add is_ready() & fix protocol errors
Adds a `is_ready()` method to the windows to advertize
when it is legal to start drawing, and fix a few wayland
protocol mishandling in the process.
2017-09-27 16:31:46 +02:00
David Harvey-Macaulay
df7e349c70
Complete documentation for top-level items ( #299 )
2017-09-25 15:58:59 +02:00
Victor Berger
9c116a1bae
x11: uniformize keyboard scancodes with linux ( #297 )
2017-09-25 07:25:36 +02:00
tomaka
15fbc0dff4
Publish 0.8.1 with fixes necessary for glutin ( #296 )
2017-09-23 09:36:30 +02:00
Matteo Signer
52a78d61bf
Fix #273 ( #274 )
2017-09-21 16:09:07 +02:00
tomaka
f81a0741f5
Fixes to the documentation of EventsLoop ( #288 )
2017-09-17 19:59:36 +02:00
Kelvin Ly
192bd798e3
Implement virtual key translation for emscripten ( #289 )
...
* Implement virtual key translation
* Remove unused std::mem import from the right file
* Install git on CircleCI instances
* Fix CircleCI config script
* Fix type error in emscripten keyboard events
2017-09-16 15:46:53 +02:00
tomaka
52a7b07c79
Move the Suspended event outside of WindowEvent ( #284 )
...
* Move Suspended event outside of WindowEvent
* Adjust the iOS code
2017-09-15 16:24:09 +02:00
tomaka
1d0b5bcfbd
Remove the use platform_not_supported
hack ( #285 )
2017-09-15 15:45:45 +02:00
tomaka
769d4fe897
Emscripten rework ( #286 )
...
* partial implementation for emscripten
this pull request contain a partial but working implementation of emscripten backend
some implementations may be controversial.
here some implementation detail:
* cursor state:
* on grab: emscripten request pointer lock deferred and also set a callback when pointer lock change
the callback request pointer lock deferred.
* on hide: `emscripten_hide_mouse` exist but not `emscripten_show_mouse`
a pull request has been open on october 2016 but never been merged
so I copied the javascript function and put it in emscripten_asm_const function
* fullscreen: if fullscreen is requested then it request fullscreen deferred and set a callback on fullscreen change
the callback request fullscreen deferred
* run forever: this method use emscripten main loop to run an infinite loop
* keyboard callback doesn't consume the event. I think it is more apopriate as in desktop environment it is the same, is it ?
* emscripten dir is added in example and contains html pages
Some things that are not implemented:
* lots of events
* min and max dimension can be implemented with a callback that listen to size change and resize if dimension out of bound
* title may be implemented using javascript to change document.title
* Use std::os::raw in the emscripten bindings
* Fix emscripten code
* Update code
* Add CI
* Remove the emscripten-specific examples
* Add some information to the README
2017-09-14 16:31:34 +02:00
tomaka
ae7802c8c2
Fix warnings for win32 ( #283 )
2017-09-13 11:15:16 +02:00
pravic
c82fcd203f
Update docs of windows-specific methods ( #281 )
2017-09-13 09:19:54 +02:00
Pedro Côrte-Real
59c33d2c6a
Move fullscreen modes to not touch physical resolutions ( #270 )
...
* Fix X11 screen resolution change using XrandR
The previous XF86 resolution switching was broken and everything
seems to have moved on to xrandr. Use that instead while cleaning
up the code a bit as well.
* Use XRandR for actual multiscreen support in X11
* Use actual monitor names in X11
* Get rid of ptr::read usage in X11
* Use a bog standard Vec instead of VecDeque
* Get rid of the XRandR mode switching stuff
Wayland has made the decision that apps shouldn't change screen
resolutions and just take the screens as they've been setup. In the
modern world where GPU scaling is cheap and LCD panels are scaling
anyway it makes no sense to make "physical" resolution changes when
software should be taking care of it. This massively simplifies the
code and makes it easier to extend to more niche setups like MST and
videowalls.
* Rename fullscreen options to match new semantics
* Implement XRandR 1.5 support
* Get rid of the FullScreen enum
Moving to just having two states None and Some(MonitorId) and then
being able to set full screen in the current monitor with something
like:
window.set_fullscreen(Some(window.current_monitor()));
* Implement Window::get_current_monitor()
Do it by iterating over the available monitors and finding which
has the biggest overlap with the window. For this MonitorId needs
a new get_position() that needs to be implemented for all platforms.
* Add unimplemented get_position() to all MonitorId
* Make get_current_monitor() platform specific
* Add unimplemented get_current_monitor() to all
* Implement proper primary monitor selection in X11
* Shut up some warnings
* Remove libxxf86vm package from travis
Since we're no longer using XF86 there's no need to keep the package
around for CI.
* Don't use new struct syntax
* Fix indentation
* Adjust Android/iOS fullscreen/maximized
On Android and iOS we can assume single screen apps that are already
fullscreen and maximized so there are a few methods that are implemented
by just returning a fixed value or not doing anything.
* Mark OSX/Win fullscreen/maximized unimplemented()!
These would be safe as no-ops but we should make it explicit so
there is more of an incentive to actually implement them.
2017-09-07 10:33:46 +02:00
tomaka
342d5d8587
Remove api_transition macro ( #279 )
...
* Remove api_transition macro
* Rename Window2 to Window
* Try fix X11 code
2017-09-06 17:32:24 +02:00
tomaka
2a4b381384
Update iOS for EventsLoop design ( #275 )
...
* Inline gen_api_transition! in the ios module
* Event loop proxy work
* Monitors
* Use freestanding functions
* Finish conversion
2017-09-04 12:41:10 +02:00
tomaka
fe1deb83ae
Update Android code with EventsLoop ( #272 )
...
* Update Android code with EventsLoop
* Fix run_forever
2017-09-04 12:41:02 +02:00
Pedro Côrte-Real
5b57b73fe8
Remove dead code causing warnings ( #278 )
2017-09-04 08:45:56 +02:00
tomaka
3d1c18ded9
Events loop backend ( #269 )
...
* Don't use UNIX_BACKEND in Window2::new
* Move get_available_monitors and get_primary_monitor to EventsLoop
* Remove UNIX_BACKEND
* Restore choosing the Linux backend
* Return a XNotSupported for new_x11()
* Fix fullscreen example
2017-09-01 11:04:57 +02:00
tomaka
e65cacbc86
Use a sync::Barrier on win32 to sync threads instead of a channel ( #271 )
2017-08-31 19:45:17 +02:00
Victor Berger
1b22e39fb2
wayland: internal event buffer & wait for xdg configure ( #255 )
2017-08-31 19:43:24 +02:00
tomaka
7dc6fcdedc
Rework MonitorId::get_native_identifier ( #267 )
...
* Rework MonitorId::get_native_identifier
* Try fix compilation
* Returns the monitor ID on wayland as well
* Try fix compilation
* Fix iOS compilation
2017-08-30 08:49:18 +02:00
Pedro Côrte-Real
60b575a7c1
Get rid of FullScreenState::get_monitor()
2017-08-29 02:53:13 +01:00
Pedro Côrte-Real
9693f7caa9
Convert new fullscreen API in all platforms
2017-08-29 02:16:16 +01:00
Pedro Côrte-Real
1382adbf11
Unify fullscreen and fullscreen_windowed APIs
...
Use the enum to make a single fullscreen API that's much more
consistent. Both set_fullscreen() and with_fullscreen() take the
same enum and support all the variations so you can build the window
however you want and switch between the modes at runtime.
2017-08-29 01:36:24 +01:00
Pedro Côrte-Real
b35c4a5ee5
maximized/fullscreen as noops for other platforms
2017-08-28 02:23:55 +01:00
Pedro Côrte-Real
eff04394c9
Slight maximize/fullscreen X11 cleanup
2017-08-28 02:23:55 +01:00
Pedro Côrte-Real
1d97a2a506
Implement Windowed Fullscreen
...
There are two kinds of fullscreen. One where you take over the whole
output the other where you just set the window size to the screen
size and get rid of decorations. The first one already existed,
implement the second which is more common for normal desktop apps.
Use an enum to consolidate all the fullscreen states.
2017-08-28 02:23:55 +01:00
Pedro Côrte-Real
a4052b8693
Add window maximization API
...
Implement a simple API to set a window to maximized. Implement it
only for the X11 backend.
2017-08-28 01:28:42 +01:00
Lloyd Cunningham
f81d6ddf93
Derive Clone for CreationError
2017-08-23 20:52:06 -05:00
tomaka
200ef9c307
Merge pull request #244 from robsaunders/mac-file-drag-and-drop
...
Mac file drag and drop
2017-08-18 11:35:19 +02:00
tomaka
63fdc3f903
Merge pull request #241 from rukai/add-windows-virtual-key-codes
...
Add missing windows virtual key codes
2017-08-07 07:59:51 +02:00
Lloyd Cunningham
24f5b0b591
Derive Clone for MonitorId
2017-08-05 18:15:50 -05:00
Osspial
786666aca8
Revise Mutex+Convar implementation based on PR feedback
2017-08-05 02:51:30 -04:00
Osspial
657860a233
Re-implement resize patch using Mutex + Convar
2017-08-05 02:07:58 -04:00
Osspial
d2034b1700
Add null terminator to custom events
2017-08-02 20:50:55 -04:00
Osspial
13bd116891
Fix laggy rendering when resizing win32 window
2017-08-02 20:49:50 -04:00
tomaka
a582df443b
Merge pull request #229 from swiftcoder/master
...
Implement raw mouse movement for Mac
2017-08-02 15:30:58 +02:00
tomaka
718e0f8551
Merge pull request #247 from zpgaal/issue_240_simple
...
Issue 240 alternative fix
2017-07-31 19:32:33 +02:00
zpgaal
d868510cc8
Comment to describe message order
2017-07-31 18:00:29 +02:00
Benjamin Saunders
c508d68d1d
Fix evdev emulated scroll events
...
When X's evdev input module is configured to emulate scroll events (as
used with e.g. trackpoints), it generates non-emulated scroll button
presses and does not generate motion events. This is contrary to the
behavior of all other hardware I've tested, and contrary to the
behavior of libinput, but nonetheless should be supported.
2017-07-30 11:40:52 -07:00
Tristam MacDonald
15c4641758
Unwrap axis id in raw mouse motion on Mac
2017-07-29 08:11:46 -07:00
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
Jan Segre
e0f36b80c9
Make WindowBuilder
and HeadlessRendererBuilder
derive Clone
.
2016-05-23 03:17:31 -03:00
Victor Berger
c49c6bcd6e
wayland: WindowExt implementations.
2016-05-08 09:28:54 +02:00
Ivan Ukhov
54f442ea06
Generalize WindowBuilder::with_title
2016-05-08 09:28:42 +02:00
Victor Berger
14323656b6
wayland: Remove EGL-dependent code.
...
This removes all EGL-specific code from the wayland backend.
Notable unresolved question: due to wayland design, the resizing
methods will only get/set the size of the drawn borders, not of the
actual content drawn. This latter size cannot be controlled by winit.
2016-05-08 09:11:15 +02:00
Osspial
b2cf70b342
Fixed some warnings when building on Windows
2016-05-07 21:05:45 -04:00
Osspial
163563073f
Fixed win32 bug where resizing window wouldn't show resize cursors
2016-05-07 21:00:50 -04:00
Andrey Lesnikov
18f846403b
Updated to android_glue 0.2
2016-05-06 00:01:40 +03:00
Corey Farwell
dc49156fe6
Allow OSX WindowBuilder to specify 'activation behavior'.
2016-04-29 10:43:30 -04:00
Pierre Krieger
764bf7ce4b
Update the android glue to 0.2 to use the new cargo-apk crate
2016-04-26 13:43:48 +02:00
Pierre Krieger
180aae3ada
Remove OpenGL from Android code
2016-04-19 19:31:36 +02:00
Emilio Cobos Álvarez
0918fe4d9c
x11: Refactor NoneCursor logic so it applies to CursorState::Hide too
2016-04-17 18:14:53 +02:00
Emilio Cobos Álvarez
51aeb27d7e
x11: Add cursor hiding
...
The created cursor could be cached and whatnot, but I'm not sure it
deserves the complexity.
2016-04-17 17:41:58 +02:00
est31
7fb6450d17
Improve X11 cursor symbols handling
...
1. Make it non failing. Before we tried to call XFreeCursor with a
cursor of 0 if we couldn't find a cursor. This has then caused a panic.
2. Introduce a system where multiple special cursors are tried
in order to work with different themes and desktop environments.
This way we get less often into the situation where we have to use a
default cursor.
3. Also set names for some cursors that previously only had a placeholder.
Fixes #765 .
Will fix https://github.com/servo/servo/issues/10475 as well.
2016-04-17 16:48:27 +02:00
Boris-Chengbiao Zhou
b9065f56ba
glx: Always set CONFIG_CAVEAT to DONT_CARE
2016-04-13 13:39:03 +02:00
Pierre Chevalier
c68c0d96b2
Fix pixel format support detection in glx. #748
...
* by accepting GLX_EXT_framebuffer_sRGB as a sRGB capable framebuffer
* the new behaviour matches the wgl codel
2016-04-13 01:25:23 +01:00
tomaka
d2343106bc
Merge pull request #755 from BonsaiDen/glx_multisampling_conformance
...
glx: Support non-conformant multisampling fbconfigs.
2016-04-06 16:34:05 +02:00
Ivo Wetzel
1b313df1ea
glx: Support non-conformant multisampling fbconfigs.
2016-03-30 08:40:32 +02:00
Ivo Wetzel
0e9fad5d23
Merge branch 'master' of github.com:tomaka/glutin into x11_window_size_constraints
2016-03-30 08:21:01 +02:00
Richard Lettich
117069ef90
Changed MouseMoved((i32, i32)) to MouseMoved(i32, i32), breaking change
2016-03-27 14:39:20 -04:00
Pierre Krieger
d216d6b052
Merge remote-tracking branch 'glutin/master' into merge-glutin
...
Conflicts:
Cargo.toml
build.rs
src/api/caca/mod.rs
src/api/cocoa/mod.rs
src/api/egl/ffi.rs
src/api/egl/mod.rs
src/api/glx/mod.rs
src/api/osmesa/mod.rs
2016-03-26 17:55:03 +01:00
Ivo Wetzel
1b7a3cd31f
Correctly apply initial size constraints for x11 windows.
2016-03-25 19:52:57 +01:00
Ivo Wetzel
7a5e47c446
Merge branch 'master' into x11_window_size_constraints
2016-03-25 02:54:40 +01:00
tomaka
8ae2df68e1
Merge pull request #744 from adamncasey/patch-1
...
Enable more Windows keys
2016-03-24 19:56:55 +01:00
tomaka
0cf1f01990
Merge pull request #746 from Thinkofname/hide-cursor-state-x11
...
Implement CursorState::Hide for x11
2016-03-24 07:37:58 +01:00
Thinkofname
5c4bfe1379
Remove a debug print added in 1de66e4ef
2016-03-21 18:49:00 +00:00
Thinkofname
267221af3e
Implement CursorState::Hide for x11
2016-03-21 18:42:54 +00:00
Steven Sheldon
c5268309c3
Update objc to 0.2.
2016-03-20 16:04:11 -07:00
Adam Casey
9e2a179daa
Enable more Windows keys
...
This should enable most required keys on Windows.
Mappings taken from: https://msdn.microsoft.com/en-gb/library/windows/desktop/dd375731%28v=vs.85%29.aspx and applied with some guesswork to the Glutin names.
2016-03-19 10:56:58 +00:00
UK992
28599a5d79
Uncomment more keys on win32
2016-03-18 02:49:15 +01:00
Manish Goregaokar
1de66e4efb
Add support for navigation keys
2016-03-17 16:04:03 +05:30
Paul Rouget
a3543b700f
Merge pull request #733 from fkaa/cocoa-memleak
...
Fix memory leak while creating NSEvent and swapping buffers (Fixes #514 )
2016-03-17 03:08:47 +01:00
Patrick Walton
7249529654
Make Mac borderless windows resizable and draggable.
...
Despite the fact that the style mask contains `NSTitledWindowMask`, the
title doesn't show up for two reasons: (a) we draw over it; (b) we make
it invisible with a call to `-[NSWindow setTitleVisibility:]`.
Addresses servo/servo#9856 and servo/servo#9878 .
Partially addresses servo/servo#9812 .
2016-03-14 16:45:01 -07:00
Ivo Wetzel
7473d99c2f
Implement min/max_dimensions
for x11 windows.
...
Size hints are only being set for non-fullscreen windows, if
`max_dimensions` are set they'll override the normal `dimensions`
since X11 will not automatically resize the window after setting
the size hints.
`PSize` hint is currently set along with the `min/max` hints for
good measure.
2016-03-06 20:52:46 +01:00
Patrick Walton
7886ff9acd
Add phases to wheel events.
...
Needed for apps to support overscroll on the Mac.
2016-03-03 16:49:35 -07:00
Felix Kaaman
08c311839f
Fix memory leak while creating NSEvent and swapping buffers ( Fixes #514 )
2016-03-02 16:44:08 +01:00
Kirill Zdornyy
74a28adba2
Fix this_platform_is_not_supported on OpenBSD.
...
I followed the steps of @mneumann.
2016-03-01 18:06:13 -08:00
Patrick Walton
bcd7999bf6
cocoa: Post Awakened events at the end of the queue to avoid floods.
...
Closes servo/webrender#179 .
2016-02-29 15:12:35 -08:00
Pierre Krieger
16f76b2407
Make it compile on Linux
2016-02-27 13:59:11 +01:00
Paul Rouget
68818751f4
TouchpadPressure event
2016-02-26 11:08:46 +01:00
Felix Kaaman
778b8fa87a
Purge OpenGL from cocoa
2016-02-23 13:25:33 +01:00
Pierre Krieger
10bb03c5f0
Remove most OpenGL stuff and make it compile on win32
2016-02-23 12:56:23 +01:00
Pierre Krieger
ec76d991ad
Unlocks platform-specific attributes
2016-02-10 17:39:35 +01:00
Pierre Krieger
982279bc39
Update the emscripten port of glutin
2016-02-09 14:25:21 +01:00
Paul Rouget
202f8c5a2d
allow non ascii character in ReceivedCharacter
2016-02-08 14:45:02 +01:00
tomaka
3246613a51
Merge pull request #709 from gdamjan/support-utf8-window-title
...
support utf8 window titles via _NET_WM_NAME standard
2016-02-03 10:13:14 +01:00
Paul Rouget
99073eec7b
osx: scroll delta should take hidpi factor into account
2016-02-02 10:25:26 +01:00
Matt Brubeck
c67e43d076
Use double buffering by default on GLX
2016-01-28 13:23:06 -08:00
Mátyás Mustoha
11bbca7ca7
Replace i8
with libc::c_char
2016-01-26 12:44:34 +01:00
Michael Howell
0a43f8f733
Allow it to work under Xvfb.
...
Part of servo/servo#8641
2016-01-19 09:44:33 -07:00
tomaka
1113fa1c13
Merge pull request #703 from FredrikNoren/master
...
Fix cocoa headless. Fixes #635
2016-01-18 23:07:31 +01:00
Fredrik Noren
2a66d1cffc
Construct cocoa headless context based on args
2016-01-18 13:12:40 -05:00
Damjan Georgievski
e9fc0eeb87
call set_title() in new()
...
…instead of low-level X11 calls that don't work with utf8
2016-01-17 18:52:21 +01:00
Damjan Georgievski
c923b27cad
support utf8 window titles via _NET_WM_NAME standard
...
based on this freerdp patch
9767f7f042
thanks to emiliocobos on irc
2016-01-17 18:52:13 +01:00
Johan Sköld
c71b14afb9
Adding os::macos.
...
Also implements platform_window() for cocoa.
2016-01-17 01:02:27 -08:00
Emilio Cobos Álvarez
4d729164c7
x11: Poll the window until it is really visible
...
Fixes #697
It seems that `XSync` doesn't really makes the window viewable.
This feels hacky, other option to do it could be using `XIfEvent` or
similar to listen to `MapNotify` events, but we'll have a loop still.
In practice, this lasts between two and thre iterations on my machine,
which is something not noticeable.
2016-01-16 18:19:56 +01:00
David Hewson
8a7edc4e40
Prefer double buffer on wgl if unspecified
...
According to https://msdn.microsoft.com/en-us/library/windows/desktop/dd318284(v=vs.85).aspx if double buffer is unavailable then a single buffer will be returned
2016-01-14 15:50:42 +00:00
Fredrik Noren
c6c4dfdd1e
Fix cocoa headless
2016-01-08 00:03:54 -05:00
tomaka
88e64a87a9
Merge pull request #700 from ecoal95/querydevice-leak
...
x11: Prevent leak on XIQueryDevice
2016-01-07 15:44:43 +01:00
Emilio Cobos Álvarez
21b9245ccc
x11: Prevent leak on XIQueryDevice
...
Per http://linux.die.net/man/3/xiquerydevice :
> XIFreeDeviceInfo frees the information returned by
> XIQueryDevice.
2016-01-06 17:44:26 +01:00
Pierre Krieger
8319043298
Fix wrong screen ID used on GLX
2016-01-05 18:06:30 +01:00
Victor Berger
508e8cf665
Fix EGL for wayland.
2016-01-03 12:19:53 +01:00
Pierre Krieger
82f5cd8272
Add better X error handling
2015-12-30 14:58:07 +01:00
tomaka
8236564a52
Merge pull request #687 from Aceeri/master
...
Support for side buttons on mouse
2015-12-30 08:45:11 +01:00
Aceeri
47d9a7f1a6
Support for side buttons on mouse
2015-12-29 15:47:04 -08:00
Patrick Walton
cf3097f6a0
Add a useless call to glXQueryVersion()
before doing anything in the GLX port to work around a bug in the VirtualBox OpenGL driver.
2015-12-29 18:09:19 -05:00
tomaka
c1a98a200b
Merge pull request #684 from AnthIste/0.4.4-cocoa-api
...
Implement set_cursor_position on OSX with Cocoa
2015-12-29 21:21:17 +01:00
tomaka
0a598d7980
Merge pull request #680 from tomaka/xsync
...
Call XSync before XSetInputFocus
2015-12-29 21:21:15 +01:00
Ruben Bakker
d892ba168b
Reduce cursor warp delay with CGAssociateMouseAndMouseCursorPosition
2015-12-29 21:52:18 +02:00
Ruben Bakker
2fb150b345
Implement set_cursor_position with CGWarpMouseCursorPosition
2015-12-28 21:47:27 +02:00
Rengierof
bc811fa587
Removed unnecessary unsafe code block
2015-12-26 20:23:20 +02:00
Rengierof
11e27889ae
Fixes cursor behavior with windows
2015-12-26 16:38:00 +02:00
Pierre Krieger
033d92aae5
Only call XSetInputFocus if the window is visible
2015-12-24 11:58:50 +01:00
Pierre Krieger
360d2bf452
Call XSync before XSetInputFocus
2015-12-24 11:55:39 +01:00
Victor Berger
83e2924ac2
api/wayland: activate the backend
2015-12-22 14:36:42 +01:00
Victor Berger
6eba737fce
api/wayland: fix cursor errors
2015-12-22 14:36:41 +01:00
Victor Berger
42551d20fd
api/wayland: output and fullscreen handling.
2015-12-22 14:36:41 +01:00
Victor Berger
84f1aef100
api/wayland: add keyboard support.
2015-12-22 14:36:41 +01:00
Victor Berger
0792557f4b
api/wayland: pointer events support.
2015-12-22 14:36:41 +01:00
Victor Berger
6294d3c7dd
api/wayland: core windows and events structure.
2015-12-22 14:36:41 +01:00
Victor Berger
741311b619
api/wayland: core context
2015-12-22 14:36:41 +01:00
Victor Berger
1b25d705ce
api/wayland: move window and monitor to mods.
2015-12-22 14:36:41 +01:00
Victor Berger
fad2e77a36
api/wayland: Reset to empty API.
...
In order to build the whole new structure.
2015-12-22 14:36:41 +01:00
tomaka
1f5f997a68
Merge pull request #677 from tomaka/pf
...
No longer manually enumerate pixel formats
2015-12-20 10:58:28 +01:00
tomaka
87f0edea7b
Merge pull request #673 from ahihi/master
...
Fix fullscreen on OS X
2015-12-20 07:55:26 +01:00
Pierre Krieger
61bca52217
Fix compilation on linux
2015-12-19 15:00:32 +01:00
Pierre Krieger
67356b45a3
Fix compilation on cocoa
2015-12-19 14:42:51 +01:00
Pierre Krieger
ed1d76aaee
Remove now unneeded function
2015-12-19 14:36:49 +01:00
Pierre Krieger
4c9348ab50
Update EGL implementation
2015-12-19 14:36:16 +01:00
Pierre Krieger
a428e0608f
Update cocoa implementation with changes to pf_reqs
2015-12-19 13:56:25 +01:00
Pierre Krieger
6b3a3a4577
Update GLX to use glXChooseFBConfig
2015-12-19 13:56:13 +01:00
Pierre Krieger
95a60ee329
Switch WGL to ChoosePixelFormat
2015-12-19 13:06:50 +01:00
Pierre Krieger
0b6418fabb
Change PixelFormatRequirements
2015-12-19 11:32:51 +01:00
Emilio Cobos Álvarez
a69ded9c8a
x11: Improve xlib error reporting
2015-12-15 13:56:35 +01:00
Miranda Kastemaa
e3cb389c6a
Fix fullscreen on OS X
2015-12-11 23:23:23 +02:00
tomaka
48a02a0c8c
Merge pull request #659 from Aceeri/minmaxwindow
...
Minimum/maximum dimensions for windows in win32 API
2015-12-05 18:01:55 +01:00
Pierre Krieger
816fbb2165
Fix the windows build
2015-12-01 09:13:24 +01:00
Simon Sapin
24d9a70533
Try to fix Windows build
2015-12-01 03:04:00 +01:00
Simon Sapin
e4f1c7358d
Update some libraries
2015-12-01 02:11:54 +01:00
Olaf Buddenhagen
32ed86a976
Fix compilation for 32 bit targets
...
Regression introduced in 47df0e9eaa
Casting fullscreen_atom (which is the result from XInternAtom, i.e.
c_ulong) as i64 is obviously wrong -- the whole point of types such as
c_ulong is that long in C does *not* always have the same bit size...
Cast it as c_long instead.
While this is the most straightforward fix, I'm not sure it's the best
one: perhaps the x11 crate should offer a set_ulong() method along with
set_long(), which could be used here instead of the cast?
2015-11-30 09:13:08 +01:00
tomaka
6a3ee2af75
Merge pull request #646 from adambadawy/master
...
Fix fullscreen on X11
2015-11-11 20:38:12 +01:00
Aceeri
2be3c142f0
Fixed wrong variable binding for WindowAttributes on asserts
2015-11-09 03:29:26 -08:00
Aceeri
9a05577df8
Not implemented asserts to prevent silent fails
2015-11-09 03:18:48 -08:00
Aceeri
c6ffedccbd
Removed comments, fixed Some/None matches, removed unnecessary lock checks
2015-11-09 03:13:52 -08:00
Aceeri
d6a53cf5d3
Corrections to sharing data
2015-11-09 02:49:50 -08:00
Aceeri
78eb4a5990
Minimum/maximum dimensions for windows in win32 api
2015-11-09 01:42:54 -08:00
mitchmindtree
b02265fa11
Update to libc 0.2, remove unnecessary gl_common crate
2015-11-09 08:47:12 +01:00
Pierre Krieger
37262fb228
Remove public exports of gl_common and libc
2015-11-09 08:46:52 +01:00
mitchmindtree
228732877a
Lock objc version, add casts to appease libc pointer type conflict. Closes #654
2015-11-08 21:13:25 +11:00
Daggerbot
7e4f795a53
Change some uses of c_void to avoid libc version conflicts.
2015-11-04 08:21:42 -08:00
Adam Badawy
c068a770f0
Update x11-dl
2015-10-27 03:22:13 -04:00
Adam Badawy
10f5528c14
Fix using garbage memory
2015-10-27 03:10:57 -04:00
Adam Badawy
d1a5730374
Remove deprecated comment
2015-10-27 03:09:52 -04:00
Adam Badawy
f9929fab2f
Use mode when switching to fullscreen
2015-10-27 03:07:37 -04:00
Adam Badawy
4f8095816e
Allow any mode larger than requested dimensions
...
We were previously allowing only fullscreen modes which were exactly as
tall as the requested dimensions, perhaps erroneously.
2015-10-27 00:33:48 -04:00
Adam Badawy
23a5104098
Comment fullscreen XClientMessage code
2015-10-26 05:33:01 -04:00
Adam Badawy
47df0e9eaa
Fix misbehaving fullscreen window
2015-10-26 04:06:40 -04:00
Adam Badawy
ed8dfa9a52
Fix issue #509
...
Focusing the newly created window seems to grab the keyboard.
2015-10-25 21:56:49 -04:00
Adam Badawy
918dc67992
Fix issue #582
...
I switched `vsyncstart` and `vdisplay` again, as per the discussion on
issue #582 .
2015-10-25 21:52:20 -04:00
tomaka
7f2c161704
Merge pull request #644 from mbrubeck/mouse-emulated
...
Change X11 events based on `multitouch` option
2015-10-23 17:25:04 +02:00
Matt Brubeck
8c0dfe19c2
Change X11 events based on multitouch
option
...
* If `multitouch` is enabled, touch input generates touch events.
* If `multitouch` is disabled, touch input generates emulated mouse events.
2015-10-23 08:01:03 -07:00
Matt Brubeck
93bec2ffca
Fix typo in WindowExt::get_xlib_display
2015-10-22 13:59:52 -07:00
wartman4404
f83e783b26
ensure server has GLX_ARB_create_context extension
2015-10-18 18:53:50 -05:00
Pierre Krieger
0c1f15f842
Fix vsync being enabled even when disabled
2015-10-04 18:36:05 +02:00
Pierre Krieger
7a625ef3d8
Remove the window feature entirely
2015-10-03 10:33:37 +02:00
tomaka
c8fd077e17
Merge pull request #617 from tomaka/platform-specific
...
Add an `os` module containing platform-specific traits
2015-10-03 10:11:11 +02:00
Pierre Krieger
8c6a27d426
Add an os
module containing platform-specific traits
2015-10-03 09:53:37 +02:00
Andrey Lesnikov
b01897bfc7
android: Disabled multitouch by default
2015-10-01 23:05:05 +03:00
Josh Matthews
77b3743117
Warning fixes for OS X.
2015-09-28 12:19:36 -04:00
Pierre Krieger
86fa1b58e5
Rename MonitorID -> MonitorId
2015-09-24 09:11:59 +02:00
tomaka
7ab495b698
Merge pull request #614 from tomaka/windowproxy-sync
...
Fix WindowProxy not being Send and Sync on win32
2015-09-24 08:37:29 +02:00
tomaka
28029c8038
Merge pull request #613 from mvdnes/windows_set_size
...
Fix Window.set_inner_size() on win32
2015-09-24 08:29:12 +02:00
Pierre Krieger
9a459f94ff
Fix WindowProxy not being Send and Sync on win32
2015-09-24 08:28:09 +02:00
tomaka
a448043b16
Merge pull request #606 from paulrouget/NSFullSizeContentViewWindowMask
...
Use NSFullSizeContentViewWindowMask for decoration-less windows
2015-09-23 13:29:28 +02:00
Pierre Krieger
aa9cb99929
Add #[inline] attributes
2015-09-23 13:11:47 +02:00
Mathijs van de Nes
4046a892ee
Fix Window.set_inner_size() on Win32
...
Previously, the function would actually set the outer size of the window
instead of the inner size.
We fix this by first letting windows calculate the outer size based upon
the specified inner size.
2015-09-23 13:11:00 +02:00
tomaka
3820d307a3
Merge pull request #611 from vvuk/win32
...
fix up win32 support
2015-09-23 13:09:36 +02:00
Paul Rouget
67a31c6221
Use NSFullSizeContentViewWindowMask for decoration-less windows
2015-09-23 10:53:35 +02:00
Vladimir Vukicevic
6ece84f5c0
win32: remove unimplemented!() from platform_display()
2015-09-22 14:23:56 -04:00
Vladimir Vukicevic
059821a99c
win32: implement wakeup_event_loop
2015-09-22 14:23:53 -04:00
tomaka
0f9693bde4
Merge pull request #608 from tomaka/pub-attribs
...
Make some fields in WindowBuilder and HeadlessRendererBuilder public
2015-09-22 20:22:41 +02:00
tomaka
34d2c7517d
Merge pull request #610 from mbrubeck/android-touch
...
Support multi-touch events on Android
2015-09-22 19:55:43 +02:00
Matt Brubeck
1827910927
Support multi-touch events on Android
...
Depends on tomaka/android-rs-glue#64 .
2015-09-22 09:25:49 -07:00
Tim Neumann
9f6806ba2e
make glutin compile on all iOS targets
2015-09-21 18:57:35 +02:00
Pierre Krieger
e466cfb2d6
Make some fields in WindowBuilder and HeadlessRendererBuilder public
2015-09-21 15:42:24 +02:00
tomaka
1b28e32e31
Merge pull request #587 from neivv/win32-alt
...
Handle events for Alt-<Key> and F10 presses in windows
2015-09-21 14:43:10 +02:00
Pierre Krieger
62bafe2130
Remove BuilderAttribs
2015-09-21 14:03:05 +02:00
Pierre Krieger
a8d3342468
Switch OS/X to new design
2015-09-21 12:47:14 +02:00
Pierre Krieger
5182023fd6
Switch X11 and wayland to the new design
2015-09-21 12:04:33 +02:00
Pierre Krieger
b5d0a3eb67
Convert GLX to the new design
2015-09-21 12:03:59 +02:00
Pierre Krieger
8f3ec7998d
Finish converting windows to the new design
2015-09-21 12:03:58 +02:00
Pierre Krieger
932e565391
Remove extract_non_static
2015-09-21 12:03:58 +02:00
Pierre Krieger
1b836f6040
Switch WGL and part of win32 to the new system
2015-09-21 12:03:57 +02:00
Pierre Krieger
3054e2ee02
Switch EGL to use only pf_reqs and opengl
2015-09-21 12:03:57 +02:00
Pierre Krieger
3ff08d747c
Add GlAttributes::map_sharing
2015-09-21 12:03:56 +02:00
Pierre Krieger
58b3bfb4fb
Extract PixelFormatRequirements from BuilderAttribs
2015-09-21 12:03:56 +02:00
Pierre Krieger
48fe9b2644
Extract WindowAttributes from the BuilderAttribs
2015-09-21 12:03:55 +02:00
Pierre Krieger
c244f8c033
Extract GlAttributes from BuilderAttribs
2015-09-21 12:03:55 +02:00
Pierre Krieger
82bb047fda
Report the error from x11-rs when failing to open shared libraries
2015-09-20 08:48:53 +02:00
Pierre Krieger
b9a4f5fbe9
Err when a X connection cannot be created instead of panicking
2015-09-20 08:42:32 +02:00
Paul Rouget
da51a60595
add resizable mask to decoration-less windows
2015-09-17 08:57:43 +02:00
Felix Kaaman
b029233e54
Add focus and defocus events on cocoa. Fixes #595
2015-09-10 19:36:53 +02:00
tomaka
8092fd6409
Merge pull request #590 from tomaka/glx-non-conformant
...
No longer filter out non-conformant formats
2015-09-04 20:55:59 +02:00
tomaka
08cb668037
Merge pull request #580 from mbrubeck/scroll-lines
...
Fix smooth-scrolling increment on some X11 devices
2015-09-01 07:29:59 +02:00
Pierre Krieger
cb749ad904
No longer filter out non-conformant formats
2015-08-30 18:19:31 +02:00
Michael Neumann
b707959c2c
Make it work on DragonFly/FreeBSD
...
Tested on DragonFly BSD. Should work similarily on FreeBSD.
2015-08-30 13:52:09 +02:00
Markus Heikkinen
84d5db91af
Handle events for Alt-<Key> and F10 presses in windows
2015-08-29 17:00:05 +03:00
Mariusz Ceier
5392ba0db0
Correct event type
...
KeymapNotify should not be handled by calling XRefreshKeyboardMapping.
XRefreshKeyboardMapping expects XMappingEvent.
2015-08-28 11:23:44 +02:00
Glenn Watson
7d43ca32bb
Fix android build
2015-08-28 08:58:17 +10:00
Matt Brubeck
576720fd97
Read scroll axis info from all devices
...
When multiple scrolling devices are attached, XIAllMasterDevices does not
include the scroll axes for all hardware devices.
2015-08-27 06:52:32 -07:00
Dylan Ede
3427308c60
Modified Windows key event handling to support modifier keys.
2015-08-26 14:37:05 +01:00
Matt Brubeck
c310f7bb80
Take XIScrollClassInfo::increment into account
...
From the "Smooth Scrolling" section of [XI2Proto.txt][1]:
> One unit of scrolling in either direction is considered to be equivalent to
> one button event, e.g. for a unit size of 1.0, -2.0 on an valuator type
> Vertical sends two button press/release events for button 4. Likewise, a
> button press event for button 7 generates an event on the Horizontal
> valuator with a value of +1.0. The server may accumulate deltas of less than
> one unit of scrolling.
From [What's new in XI 2.1 - smooth scrolling][2]:
> The increment defines what delta the driver considers to be one scroll
> event. For an increment of +5, each delta of 5 should be regarded as one
> scroll unit down. For an increment of -3, each delta of 3 should be regarded
> as one scroll unit up (i.e. inverted).
[1]: http://www.x.org/releases/X11R7.7/doc/inputproto/XI2proto.txt
[2]: http://who-t.blogspot.com/2011/09/whats-new-in-xi-21-smooth-scrolling.html
This fixes scrolling with my Microsoft mouse in X11 on Debian 8.1.
2015-08-24 15:44:02 -07:00
Pierre Krieger
e28a0bdb97
Do not crash in case of buggy EGL implementations that are missing eglGetPlatformDisplay
2015-08-24 14:57:13 +02:00
Victor Berger
f3e67128db
wayland: Resized event
2015-08-21 18:48:08 +02:00
Victor Berger
bfc709fdd1
wayland: fix events Moved -> MouseMoved
2015-08-21 18:47:54 +02:00
Peter Atashian
9d387b4f98
Cleanup unused import stuff
...
Also support i686-pc-windows-msvc
Signed-off-by: Peter Atashian <retep998@gmail.com>
2015-08-21 11:49:10 -04:00
Paul Rouget
cb78383da0
Do not call nextEventMatchingMask twice
...
wait_event used to call nextEventMatchingMask twice. Once with untilDate:distantFuture,
and dequeue:NO to wait until the next event but witout consuming it, and again with
untilDate:distantPast and dequeue:YES to retrieve the event (via poll_events).
For some reason, with osx 10.11, calling nextEventMatchingMask with dequeue:NO never
returns if the user scrolls, freezing the app.
So we now call nextEventMatchingMask only once, with dequeue:YES.
2015-08-20 10:53:44 +02:00
Matt Brubeck
93ce9c24f5
Handle touch events on X11
2015-08-18 15:17:25 -07:00
Colin Sherratt
72fc0dc3a3
Enable grave key on X11
2015-08-17 23:28:34 -04:00
Victor Berger
f7f52c21a0
wayland: properly handle 'decorated' option.
2015-08-16 16:21:26 +02:00
Victor Berger
1cea6a65a4
Update wayland backend to draw decorations.
...
Integrate with wayland-window crate to draw decorations
allowing resize & move of the window.
Leaving the wayland backend as disabled until full usability
is ensured.
2015-08-16 14:12:21 +02:00
Zetok Zalbavar
6c73209746
Prefer GLX over EGL
...
fixes #314 for me.
I've "tested" change by running examples (which prior to change simply
crashed), but since I did not run those examples successfuly ever before,
I don't know whether they worked as intended.
2015-08-14 15:08:44 +01:00
tomaka
5c60456e16
Merge pull request #567 from paulrouget/opengl-profile-selection-fix
...
Fix OpenGL profile selection
2015-08-13 08:14:44 +02:00
Paul Rouget
26139f8c5c
Fix OpenGL profile selection
2015-08-11 04:41:59 +02:00
Glenn Watson
86408438fc
Fix a rare crash in some X11 implementations (details below).
2015-08-11 04:16:01 +02:00
Pierre Krieger
587dedaa9e
Correctly handle eglGetDisplay
2015-08-07 16:22:31 +02:00
Pierre Krieger
bee3e0e0f0
Get the list of extensions only once
2015-08-07 15:33:33 +02:00
Sven Nilsen
ce13975f15
Removed dot in error message
...
Closes https://github.com/tomaka/glutin/issues/562
2015-08-05 12:10:38 +02:00
Braden Evans
3b76b01cce
Typo in error message
2015-08-04 18:02:55 -07:00
Braden Evans
9bcfad9f75
Implement Display, Error for ContextError
2015-08-04 18:01:38 -07:00
tomaka
be0440666b
Merge pull request #553 from tomaka/egl-default
...
Use EGL by default with X11
2015-08-02 14:00:50 +02:00
Pierre Krieger
be9c8c0186
Try libEGL.so.1 before libEGL.so
2015-07-28 20:48:12 +02:00
tomaka
829d7a6afc
Merge pull request #551 from tomaka/android-headless
...
Implement headless contexts on android
2015-07-28 19:59:49 +02:00
Pierre Krieger
743cc317d7
Use EGL by default with X11
2015-07-28 19:54:17 +02:00
Pierre Krieger
1f6c4d65a6
Implement headless contexts on android
2015-07-27 10:18:45 +02:00
Pierre Krieger
f7cc80fbb1
Headless contexts now create an EGL pbuffer on win32
2015-07-27 10:13:00 +02:00
Pierre Krieger
c9b1b91b8c
Load the EGL library in platform/windows
2015-07-27 09:52:51 +02:00
tomaka
991b15df87
Merge pull request #548 from tomaka/egl-pbuffer
...
Add support for creating a pbuffer with EGL
2015-07-27 09:21:13 +02:00
Pierre Krieger
653fbde987
Add support for creating a pbuffer with EGL
2015-07-27 08:33:48 +02:00
Pierre Krieger
6f7a2fa1e7
Indicate the exact error when eglMakeCurrent or eglSwapBuffers fail
2015-07-26 16:56:13 +02:00
tomaka
37b4089015
Merge pull request #547 from tomaka/better-choice
...
Better choice for the pixel format
2015-07-25 16:12:33 +02:00
Pierre Krieger
2d4c382f0b
Better choice for the pixel format
2015-07-25 15:57:03 +02:00
Pierre Krieger
a97cbd1729
Attempt to fix issues with sRGB
2015-07-25 15:11:29 +02:00
Sven Nilsen
79b8cf2cc8
Keep existing function for backward compatibility
2015-07-25 13:57:52 +02:00
Sven Nilsen
05175c1d80
Split get_inner_size
...
Closes https://github.com/tomaka/glutin/issues/542
* Splits `get_inner_size` into `get_inner_size_points` and
`get_inner_size_pixels`
This is a breaking change.
2015-07-25 13:40:33 +02:00
Sven Nilsen
5f98e510e4
Fixed docs for get_inner_size
...
Closes https://github.com/tomaka/glutin/issues/388
2015-07-25 12:01:20 +02:00
Daggerbot
6d6290df6e
Implement Window.set_inner_size on X11.
2015-07-23 22:50:25 +00:00
Akos Kiss
07c8154cb7
Add aarch64-unknown-linux-gnu support
...
* Adding dependencies
* Replacing `i8` with `c_char` ot `_` (since `c_char` can be
unsigned on some platforms, aarch64 is one of them)
2015-07-23 06:19:54 +00:00
Pierre Krieger
4b17b7fdbb
Filter invalid FBConfigs
2015-07-22 15:15:35 +02:00
tomaka
0e3ce75969
Merge pull request #536 from tomaka/fix-using-freed-memory
...
Fix calling XFree before reading from memory
2015-07-22 09:39:04 +02:00
Pierre Krieger
65d56e5521
Fix calling XFree before reading from memory
2015-07-22 08:39:31 +02:00
Robert Knight
602a737440
Only listen for mouse events from master devices
...
XInput2 has a concept of master and slave devices,
where a slave device is the actual physical device,
attached to a master device representing the cursor or keyboard
focus.
See http://who-t.blogspot.co.uk/2009/05/xi2-recipes-part-1.html
Mouse events were being received from both the master and slave
devices, but we are only interested in events from the master device.
Fixes #533
2015-07-22 06:44:51 +01:00
Pierre Krieger
7fe828bed3
Add smaall TODO
2015-07-20 19:43:36 +02:00
Pierre Krieger
57a1d546e7
Add CreationError::NoAvailablePixelFormat
2015-07-20 19:42:32 +02:00
Pierre Krieger
43dabf131a
Add CreationError::OpenGlVersionNotSupported
2015-07-20 19:38:57 +02:00
Pierre Krieger
ba5adfa1e1
Add CreationError::RobustnessNotSupported
2015-07-20 19:34:34 +02:00
tomaka
8c364d5cfc
Merge pull request #530 from tomaka/glx-enumerate
...
Enumerate the FBConfigs instead of calling glxChoose
2015-07-19 21:41:26 +02:00
tomaka
8aa6fea832
Merge pull request #529 from tomaka/fix-win32
...
Fix the windows build
2015-07-19 16:13:24 +02:00
Pierre Krieger
3914d3f801
Enumerate the FBConfigs instead of calling glxChoose
2015-07-19 16:11:45 +02:00
tomaka
d838ff7d44
Merge pull request #527 from tomaka/split-glx
...
Correct window creation on X11
2015-07-19 15:04:51 +02:00
Pierre Krieger
b573a161a9
Fix the windows build
2015-07-19 15:03:48 +02:00
Pierre Krieger
9299de0256
Fix EGL context creation
2015-07-19 14:32:41 +02:00
Pierre Krieger
baf9b92d3f
Correct window creation on X11
2015-07-19 13:53:40 +02:00
tomaka
896640f2e0
Merge pull request #523 from tomaka/egl-split
...
Split creating an EGL context in two parts
2015-07-19 09:42:56 +02:00
tomaka
7d1d035d9a
Merge pull request #510 from robertknight/x11_xinput2
...
Use XInput2 for event handling
2015-07-18 19:03:13 +02:00
Pierre Krieger
4eacfce59e
Split creating an EGL context in two parts
2015-07-18 18:43:23 +02:00
Ty Overby
5af2d6e84c
Update events.rs
2015-07-15 09:37:15 -07:00
Robert Knight
d960753360
Address code review feedback
...
* Fix an issue where PollEventsIterator::next() would fail to return
keyboard input and mouse events immediately but instead only
return them on the next call to next()
* Inline process_generic_event() and queue_event()
2015-07-13 07:26:07 +01:00
tomaka
a15d42069e
Merge pull request #519 from tomaka/win32-err
...
Better win32 error messages
2015-07-09 11:06:51 +02:00
tomaka
d3fd00968e
Merge pull request #513 from meh/key-consistency
...
Fix some inconsistencies in VirtualKeyCode variant names
2015-07-09 11:06:44 +02:00
tomaka
bb96e8a58a
Merge pull request #511 from thelink2012/drop-win32
...
[0.3] DroppedFile event for Win32
2015-07-09 11:06:38 +02:00
Pierre Krieger
bbd31608e8
Better win32 error messages
2015-07-09 08:55:29 +02:00
meh
cd6577065f
Fix some inconsistencies in VirtualKeyCode variant names
2015-07-02 09:52:44 +02:00
tomaka
836e53e55a
Merge pull request #477 from rozaliev/feature/ios
...
[WIP] ios support
2015-06-29 09:29:46 +02:00
Robert Knight
573a7aeaf1
Report focus in/out events under X11
...
Fixes #377
2015-06-28 22:16:43 +01:00
Robert Knight
edc95d554d
X11 - Ignore scroll events that happen outside of Glutin windows
...
Scroll deltas are calculated in X11 by comparing the current and
previous absolute values for the scroll axis when a scroll motion
event is received. If the user scrolls whilst the cursor is outside
of the window then an incorrect delta is reported when the cursor
re-enters the window.
Fix this by resetting the last-seen axis values whenever the cursor
re-enters the window.
2015-06-28 22:09:26 +01:00
Robert Knight
cb08d9b05b
Remove XInput2 code for handling keyboard events
...
* For the moment we're still using plain core X11 events
for handling keyboard activity, so remove the XInput2 code for that
* Small refactoring of X11 input handling and documentation fixes
2015-06-28 21:55:54 +01:00
Robert Knight
94c31e42a4
Use XInput2 for event handling
...
This provides smooth scrolling for touchpad devices and will
enable support for touch events etc. in future.
2015-06-28 13:25:09 +01:00
Pierre Krieger
23f6f177fe
Ignore errors generated by SwapBuffers on windows
2015-06-27 16:16:54 +02:00
Pierre Krieger
942e2a8e85
Fix fullscreen mode on X11
2015-06-26 17:13:22 +02:00
tomaka
86300dfb79
Merge pull request #500 from tomaka/no-error
...
Add support for the EGL_KHR_create_context_no_error extension
2015-06-26 11:34:14 +02:00
Pierre Krieger
29261c8b50
Fix the discovery of the WGL_EXT_swap_control extension
2015-06-25 20:29:10 +02:00
Pierre Krieger
bff79c02ce
Add support for the EGL_KHR_create_context_no_error extension
2015-06-25 09:35:58 +02:00
Denilson M. Amorim
826931e2c2
DroppedFile event for Win32
2015-06-23 19:05:37 -03:00
tomaka
40b84577c3
Merge pull request #497 from tomaka/robustness
...
Add with_robustness and handle robustness on all implementations
2015-06-23 16:46:52 +02:00
tomaka
717ea3d5ba
Merge pull request #495 from tomaka/fix-multisampling
...
Makes sure that the pixel format has the same multisampling settings as the requirements
2015-06-23 16:46:49 +02:00
Victor Berger
2ac78cadf6
Update wayland dependency to 0.2.
2015-06-23 11:23:10 +02:00
Pierre Krieger
dbaca24cde
Add with_robustness and handle robustness on all implementations
2015-06-22 19:42:03 +02:00
Pierre Krieger
3c889636ad
Makes sure that the pf has the same multisampling settings as the requirements
2015-06-21 13:07:24 +02:00
tomaka
7773996d7b
Merge pull request #488 from tomaka/rem-is-closed
...
Remove the is_closed function
2015-06-17 07:36:16 +02:00
tomaka
90b28c2052
Merge pull request #486 from tomaka/context-error
...
Handle errors from MakeCurrent and SwapBuffers
2015-06-17 07:36:00 +02:00
ecoal95
0a1a7208c3
glx: Unbind the context if it's the current one
2015-06-17 06:29:25 +02:00
Pierre Krieger
39128dd7e1
Remove the is_closed function
2015-06-16 14:03:58 +02:00
Felix Kaaman
bbaa129842
Add transparency support for cocoa. Closes #472
2015-06-16 11:29:17 +02:00
Pierre Krieger
f6c26ec593
Handle errors from MakeCurrent and SwapBuffers
2015-06-16 10:44:44 +02:00
Felix Kaaman
a8fef35dbf
Make legacy functions crash on osx core contexts
2015-06-16 09:00:02 +02:00
tomaka
e48c853b9c
Merge pull request #484 from pinumbernumber/master
...
Implement transparency for X11
2015-06-16 08:52:29 +02:00
Robert Knight
b2c2f300dc
Correct MouseWheel doc comment.
...
Remove incomplete sentence and obsolete comment
about the meaning of the parameter.
2015-06-15 23:57:07 +01:00
pinumbernumber
da4bcad6e3
Implement transparency for X11
2015-06-14 22:20:32 +01:00
Robert Knight
5b08220df5
Report scroll deltas in lines for non-touch devices on OS X
...
Scroll deltas on OS X may be reported either as pixel deltas
to scroll by if supported by the device or line/row deltas
otherwise.
2015-06-14 18:09:02 +01:00
Robert Knight
5e626b7fdf
Correct typo in MouseScrollDelta docs
2015-06-13 23:22:51 +01:00
Robert Knight
f0bab95c4d
Express scroll deltas as either line or pixel deltas
...
Depending on the platform and device, scroll deltas may either
be represented as pixel deltas specifying the amount
in pixels to scroll or they may be expressed in 'lines' or 'chunks'
for low resolution devices (eg. a traditional mouse wheel).
Pixel deltas are currently available on OS X. X11 currently
supports only integer line deltas, though pixel deltas
are available via XInput2. Windows supports fractional
line deltas.
2015-06-13 23:19:31 +01:00
Evgeny Rozaliev
7053837ac1
[add] content scale
2015-06-08 12:26:42 +03:00
Pierre Krieger
30c525a5b1
Fix leaking color map and destruction of IM
2015-06-05 16:03:07 +02:00
Evgeny Rozaliev
84703027d6
[add] ios support
2015-06-05 16:38:35 +03:00
Jack Moffitt
dbec1bf79d
Switch to the official crates.
...
cocoa, core-foundation, and core-graphics are now on crates.io.
2015-06-03 23:06:54 -06:00
tomaka
70c88cf18f
Merge pull request #475 from fkaa/cocoa-glcap
...
Add OS version detection on cocoa for selecting latest gl version. Fixes #470
2015-05-26 16:12:12 +02:00
Eduard Bopp
267b2c027a
Fix set_cursor_state on X11
...
When the state is not changed, no code must be executed. Such no-ops previously
hit the unimplemented cursor hiding.
2015-05-25 21:01:39 +02:00
Felix Kaaman
f74f0b52a3
Add OS version detection on cocoa for selecting latest gl version. Fixes #470
2015-05-24 17:37:41 +02:00
Pierre Krieger
9117bcf3d3
Switch to dwmapi
2015-05-24 09:10:45 +02:00
Pierre Krieger
81314f91d8
Add API for transparency and decorations and add support for win32
2015-05-24 09:10:44 +02:00
tomaka
1377f276b7
Merge pull request #469 from fkaa/cocoa-vsync
...
Fix vsync not being disabled by default in cocoa
2015-05-23 19:25:56 +02:00
Felix Kaaman
e1ab181cdb
Fix vsync not being disabled by default in cocoa
2015-05-23 18:35:47 +02:00
Pierre Krieger
ead31e3ef8
Several WGL cleanups
2015-05-22 11:54:28 +02:00
Pierre Krieger
9c21899249
Fix the compilation on 32bits linux
2015-05-21 21:31:41 +02:00
Pierre Krieger
01ecd24fe2
Allow creating EGL contexts on win32 with the AMD DLLs
2015-05-21 18:59:30 +02:00
Pierre Krieger
ea17038ac2
Detach wgl and win32
2015-05-21 16:47:19 +02:00
Avi Weinstock
966c2f2e54
fixup! Fix handling of numpad keys w.r.t. numlock (derived from fix mentioned at http://www.kaffe.org/pipermail/kaffe/2000-April/175201.html ).
2015-05-18 13:02:23 -04:00
Avi Weinstock
b6a63ad11f
Fix handling of numpad keys w.r.t. numlock (derived from fix mentioned at http://www.kaffe.org/pipermail/kaffe/2000-April/175201.html ).
...
Conflicts:
src/api/x11/window.rs
2015-05-18 12:55:59 -04:00
Pierre Krieger
3376332a85
Rework the X implementation to use only one X connection
2015-05-17 19:33:07 +02:00
Pierre Krieger
848f6cd2a7
Fix GLX creating only 3.0 contexts
2015-05-16 11:37:58 +02:00
tomaka
129df983ce
Merge pull request #452 from vberger/wayland
...
Implement Keyboard support for the wayland backend
2015-05-15 14:50:46 +02:00
Victor Berger
8150d1216e
Implement most of the keysyms for wayland.
2015-05-15 13:04:23 +02:00
Victor Berger
178b7b133b
UTF8 keyboard events for wayland.
2015-05-15 12:20:25 +02:00
Victor Berger
02bd3758ee
Basic raw keyboard handling.
2015-05-14 21:46:29 +02:00
Victor Berger
1dc2cb27cf
Do the linux backend choice only once at startup.
2015-05-13 17:31:34 +02:00
Victor Berger
9e489fee01
Update to new Platform structure.
2015-05-13 08:32:20 +02:00
Victor Berger
562d6cd1e3
Move WaylandContext in its own file.
2015-05-13 08:12:09 +02:00
Victor Berger
40322a2c69
Implement some more functions for wayland.
...
- set/get_inner_size()
- set_title
2015-05-13 08:12:09 +02:00
Victor Berger
1278d9779d
wayland: Fix MonitorID::get_dimensions() and fullscreen support.
2015-05-13 08:12:09 +02:00
tomaka
41af4406cb
Merge pull request #448 from vberger/x-wayland-split
...
Make platform::linux generic over X11 and Wayland
2015-05-13 07:20:40 +02:00
Victor Berger
9a144a6869
Disable Wayland backend.
...
It is not ready for production yet.
2015-05-12 22:49:29 +02:00
Victor Berger
310b44f35b
Make platform::linux generic over X11 and Wayland.
2015-05-12 22:49:03 +02:00
Pierre Krieger
b3044809c2
Fixes in EGL context creation
2015-05-12 21:28:56 +02:00
Mike Blumenkrantz
1519459471
implement get_platform_window() return for X11
2015-05-11 21:35:06 -04:00
Victor Berger
a3921ea88a
Continue wayland API: WindowProxy, MonitorID,
...
and some other little stuff.
2015-05-09 11:12:44 +02:00
Esption
c973a1f83e
Fixed build warnings
2015-05-08 12:31:56 -05:00
Esption
0d10dda72a
Added mut so glutin can compile on nightly.
2015-05-08 06:35:38 -05:00
Daggerbot
68aff5ba0d
Using x11_dl instead of x11.
2015-05-07 11:20:25 +00:00
Pierre Krieger
7ee416ab88
Make it work under the raspi
2015-05-07 13:49:33 +02:00
Pierre Krieger
2414f87ceb
Make x11 dynamic
2015-05-07 13:14:09 +02:00
Victor Berger
1e0dd2290e
Firsts steps of a wayland backend.
2015-05-06 23:30:45 +02:00
Daggerbot
9f13395cac
Removed import of x11::xlib::xkb, which has been absorbed by x11::xlib.
2015-05-06 13:03:34 +00:00
tomaka
119bd6393f
Merge pull request #405 from tomaka/win32-wheel
...
[Breaking change] Fix mouse wheel value on win32 and return a f64 instead of i32 in the MouseWheel event
2015-05-06 16:56:24 +02:00
tomaka
2d97e0380f
Merge pull request #429 from tomaka/remove-headless
...
[Breaking change] Remove the "headless" feature entirely
2015-05-06 16:56:20 +02:00
Felix Kaaman
87e8018cf3
Add cursor grabbing on cocoa
2015-05-05 21:46:33 +02:00
Pierre Krieger
430ae43528
Remove the "headless" feature entirely
2015-05-04 18:36:26 +02:00
Sven Nilsen
f68116fd76
Fix compiler errors on OSX
...
Closes https://github.com/tomaka/glutin/issues/425
2015-05-04 16:30:44 +02:00
Pierre Krieger
ace4808fac
Remove the "headless" feature
2015-05-04 07:48:42 +02:00
Tomaka17
de7b1aa2eb
Basic implementation of emscripten
2015-05-03 10:24:42 +02:00
Kevin Butler
81d0dc97e1
Fix further compilation of cocoa
2015-05-02 06:41:36 +01:00
Pierre Krieger
ad21d31b6b
Fix compilation of cocoa
2015-05-02 06:56:47 +02:00
tomaka
4882a94080
Merge pull request #409 from kvark/core
...
GL core profile flag
2015-05-01 14:07:10 +02:00
Dzmitry Malyshau
171986c7e8
Introduced GlProfile enum
2015-05-01 07:32:48 -04:00
Pierre Krieger
0eaa8fd9eb
Use the EGL API with Android
2015-05-01 09:44:35 +02:00
Dzmitry Malyshau
a42f1f5833
Implemented gl_core flag
2015-04-30 22:50:15 -04:00
datalus
899e021666
Adding SWP_NOMOVE flag to prevent the window from moving to 0,0 when setting the inner size on Windows 8+
2015-04-30 18:52:48 -05:00
Felix Kaaman
c1ca5d1d87
Fix typo in cocoa module
2015-04-30 18:25:55 +02:00
Pierre Krieger
aa58f4149a
Add a GlContext trait
2015-04-30 16:57:07 +02:00
Pierre Krieger
36de5a5e5a
Fix PixelFormat for x11, egl and win32
2015-04-30 16:15:37 +02:00
Felix Kaaman
80c49856b2
Add pixelformat for cocoa and remove individual color components
2015-04-30 15:53:27 +02:00
Pierre Krieger
9531174813
Rework EGL
2015-04-30 08:31:33 +02:00
Pierre Krieger
d9f0d92584
Rework MouseWheel event and fix the values on win32
2015-04-29 14:35:09 +02:00
Pierre Krieger
9ed1a0ec19
Add a fallback on win32 if enumerate_arb_pixel_formats returns vec![]
2015-04-29 14:27:34 +02:00
Pierre Krieger
d4dcff582e
Extract headless context from api/win32 to platform/windows
2015-04-29 10:19:59 +02:00
Felix Kaaman
f2bbb7d49c
Add multisampling for cocoa, fixes #145
2015-04-27 15:46:31 +02:00
Pierre Krieger
7df4de2ce7
Use the shared_library crate instead of loading symbols manually
2015-04-27 14:31:26 +02:00
Pierre Krieger
d3cc9064f4
Add libcaca backend
2015-04-26 17:26:48 +02:00
tomaka
2532357253
Merge pull request #398 from fkaa/cocoa-window-pos
...
Fix window position getters and setters on cocoa
2015-04-26 08:05:35 +02:00
Pierre Krieger
0417f7003f
Allow using EGL with X11
2015-04-25 22:28:43 +02:00
Pierre Krieger
5561e58646
Split GLX and X11 in "api"
2015-04-25 12:10:40 +02:00
Felix Kaaman
32e14a9a0a
Fix window position getters and setters on cocoa
2015-04-24 19:40:43 +02:00
tomaka
7eeb96909c
Merge pull request #384 from fkaa/keypress-sound
...
Fix alert sounds on keypress for cocoa
2015-04-24 19:27:49 +02:00
Felix Kaaman
44e954895f
Fix alert sounds on keypress on cocoa
...
Passing on keypress event to parent would make it think the event was
not consumed and emit an alert sound.
2015-04-24 15:53:02 +02:00
Pierre Krieger
a72e06cf1b
Reorganize the Linux implementation and split OSMesa and X11
2015-04-24 15:40:17 +02:00
Pierre Krieger
828500256c
Add draft for the EGL API
2015-04-24 14:12:57 +02:00
Pierre Krieger
3ad7f9a584
Create reorganization
2015-04-24 09:51:23 +02:00
tomaka
c1af76550f
Merge pull request #391 from glennw/upstream-i3-vis
...
Add Expose event handler which is needed on some window managers.
2015-04-24 07:50:38 +02:00
Glenn Watson
4a83ab6e02
Set WM_CLASS based on initial window title.
2015-04-24 07:57:47 +10:00
Glenn Watson
0670b1ec2e
Add Expose event handler which is needed on some window managers.
2015-04-24 07:32:36 +10:00
Tim Cuthbertson
bc2472f32b
Fix x11 XK_bracketright keycode
2015-04-22 11:06:47 +10:00
tomaka
f81a430c6d
Merge pull request #383 from tomaka/remove-deprecated
...
Remove functions marked as #[deprecated]
2015-04-19 11:29:29 +02:00
Pierre Krieger
1ec168fed0
Remove functions marked as #[deprecated]
2015-04-19 09:52:03 +02:00
Andrey Lesnikov
65c2884dc3
android: Updated for Rust be9bd7c93 2015-04-05
2015-04-18 21:12:40 +03:00
Felix Kaaman
e294441049
Add mouse hiding and more cursors for Cocoa
2015-04-17 18:01:06 +02:00
Pierre Krieger
677e69fd3a
Fix compilation on linux
2015-04-17 17:59:37 +02:00
tomaka
2d7a800aee
Merge pull request #368 from Daggerbot/wip
...
Using `x11-rs` and `osmesa-rs`.
2015-04-17 17:42:46 +02:00