Commit graph

142 commits

Author SHA1 Message Date
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
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 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
Pierre Krieger a97cbd1729 Attempt to fix issues with sRGB 2015-07-25 15:11:29 +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 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
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 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
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