Commit graph

153 commits

Author SHA1 Message Date
Pierre Krieger 885d5e9c38 Update for Rustc 2015-01-05 14:39:58 +01:00
Pierre Krieger 4c5e430dd3 Update for Rustc 2015-01-03 23:15:39 +01:00
Ty Overby a698146943 Change the way that events are represented.
The bulk of this commit is changing instances of Vec to RingBuf which is
optimized for the push_back() / pop_front() strategy that is used
internaly in the event system.

The glutin custom iterators are now just wrappers around the RingBuf
iterator type.  This will bring the running time of iterator traversal from
O(n^2) to O(n) because shifting-on-delete won't be performed.
2015-01-01 23:44:02 -08:00
Pierre Krieger b9710f05a9 Unify WindowBuilder and HeadlessRendererBuilder for easier implementations 2014-12-31 07:34:26 +01:00
Pierre Krieger b9a6366f96 Update for changes in Send/Sync traits 2014-12-30 08:20:50 +01:00
Pierre Krieger 7f6f4f8d04 Update for gl_generator's changes 2014-12-24 08:12:10 +01:00
Glenn Watson fa5cb66cff Add resize example, fix warnings, make callback an option so it can be removed. 2014-12-19 05:44:47 +10:00
Glenn Watson 0ad9c3d453 Add callback function to allow resize messages to be sent on mac. 2014-12-19 05:44:20 +10:00
tomaka 0164449955 Merge pull request #161 from glennw/thread-proxy
Introduce a WindowProxy for accessing a subset of functionality
2014-12-18 20:36:37 +01:00
Glenn Watson 435c64f473 Fix event name 2014-12-18 10:57:12 +10:00
Pierre Krieger 03d6a41ba3 Update for rustc for x11 2014-12-17 10:25:38 +01:00
Glenn Watson 9dc5689eef Introduce a WindowProxy for accessing a subset of functionality
from other threads. This currently provides a way for other threads
to wakeup a blocked event loop on X11. Other platforms have stub
functions that need to be implemented. This is similar to
the functionality of glfwPostEmptyEvent.
2014-12-17 14:50:05 +10:00
Pierre Krieger c893e4faec Add get_api() function 2014-12-07 13:52:08 +01:00
tomaka 6652cd0bdf Merge pull request #154 from tomaka/fix-warning-x11
Fix deprecation warning on X11
2014-12-02 20:48:15 +01:00
Pierre Krieger 7b84121500 Fix deprecation warning on X11 2014-12-02 20:44:38 +01:00
Pierre Krieger f8aa6d676c Fix multisampling not working on X11 2014-12-02 20:41:46 +01:00
Pierre Krieger 729551f828 Implement multisampling for x11 2014-11-27 15:26:42 +01:00
Pierre Krieger 71d463f865 Update for rustc 2014-11-26 21:22:44 +01:00
Pierre Krieger 4c0413bc7c Implement lists sharing 2014-11-24 20:13:52 +01:00
Glenn Watson 583506dca0 Fix some rustc warnings 2014-11-24 07:36:13 +10:00
Pierre Krieger ff3a29aaf5 Update for rustc 2014-11-19 07:06:27 +01:00
Glenn Watson c9e1912eb7 Add support for with_visibility(), show(), hide() on X11. 2014-11-18 10:27:45 +10:00
Glenn Watson d4bed68dbe Add ctrl, shift, alt events for X11. 2014-11-17 11:35:15 +10:00
Pierre Krieger 9b39d99f6e Detect OSMesa errors 2014-11-14 15:59:45 +01:00
Pierre Krieger 37bdb997ce Remove call to glViewport in X11 implementation 2014-11-09 20:12:41 +01:00
Tomaka17 8c1b2dd633 Add support for the OpenGL debug flag 2014-11-09 16:44:53 +01:00
Tomaka17 2be71306ec Remove key modifiers in KeyboardInput 2014-11-06 19:09:07 +01:00
Tomaka17 584bb3e7df Use a proper error type for window creation 2014-11-05 16:42:18 +01:00
Tomaka17 b6f7491157 Add visibility-related functions to window 2014-11-01 09:03:21 +01:00
Tomaka17 7de3d55e71 fail! -> panic! 2014-10-30 08:14:09 +01:00
tomaka a6d52b6517 Merge pull request #86 from glennw/x11-resize
Fix resize event on X11. Without this change, resizing window larger tha...
2014-10-28 07:59:04 +01:00
Glenn Watson ad54e01a91 Fix resize event on X11. Without this change, resizing window larger than initial size doesn't work. 2014-10-28 13:34:47 +10:00
Glenn Watson 1755568b30 Fix a few more string memory issues. 2014-10-28 13:33:04 +10:00
tomaka 60e9ba4feb Merge pull request #74 from glennw/x11-key-events
Add backspace event and map some more keys on x11.
2014-10-27 07:43:02 +01:00
tomaka 391c42d177 Merge pull request #76 from glennw/fix-x11-window-res
Only reject modes based on resolution when using fullscreen. This fixes ...
2014-10-27 07:30:28 +01:00
Glenn Watson 84cd668bb6 Add backspace event and map some more keys on x11. 2014-10-27 16:29:32 +10:00
tomaka 18d9b493d7 Merge pull request #78 from glennw/x11-wheel-events
Add support for mouse wheel events on x11.
2014-10-27 07:25:30 +01:00
tomaka 32eba16994 Merge pull request #77 from glennw/x11-modifiers
Add support for keyboard modifiers on x11.
2014-10-27 07:20:00 +01:00
Glenn Watson 7800b14749 Fix bad memory being passed (due to going out of scope) to set title on X11. 2014-10-27 15:00:06 +10:00
Glenn Watson 8fee1950c6 Add support for mouse wheel events on x11. 2014-10-27 14:59:19 +10:00
Glenn Watson 22b434bf1d Only reject modes based on resolution when using fullscreen. This fixes creating a window that is not the same resolution as an existing video mode. 2014-10-27 14:58:04 +10:00
Glenn Watson e19dd83925 Add support for keyboard modifiers on x11. 2014-10-27 14:57:19 +10:00
tomaka 2c9eaf8651 Merge pull request #65 from glennw/x-threads
Add an interface for providing system wide initialization options to the windowing system.
2014-10-24 12:31:33 +02:00
Glenn Watson 97c471dc05 Add an interface for providing system wide initialization options to the windowing system.
This allows setting up Linux based systems which use multithreaded OpenGL contexts.
2014-10-24 19:58:19 +10:00
tomaka fe8646c556 Merge pull request #66 from glennw/platform_data
Add accessor for underlying display handle on Linux.
2014-10-24 10:19:35 +02:00
Glenn Watson 5693fbcce3 Add accessor for underlying display handle on Linux. Although unimplemented on other platforms, this applies to at least android as well. 2014-10-24 15:20:25 +10:00
Glenn Watson 80e4fa9ad8 Fix closing X display in get_dimensions 2014-10-24 14:13:19 +10:00
Tomaka17 2ff393fe62 Update for rustc and gl-rs 2014-10-22 11:23:21 +02:00
Tomaka17 0d0c14e6ec Update for gl-rs 2014-10-21 08:11:08 +02:00
Pierre Krieger bb22087d1c Use gl-rs's GLX bindings for x11 2014-10-13 11:36:01 +02:00
Tomaka17 c316c86e7c Update for rustc f9fc49c06 2014-10-10 00:07:08 +0000 2014-10-10 17:52:47 +02:00
Tomaka17 e565bfeb13 Implement headless rendering 2014-10-09 15:55:42 +02:00
Pierre Krieger fe245e2929 Fix warnings 2014-10-05 15:54:37 +02:00
Tomaka17 ea957ce1d7 Fix compilation warnings 2014-09-23 08:01:18 +02:00
DavidPartouche 6d3d84ef75 Use the correct monitor when fullscreen for X11 2014-09-20 11:18:03 +02:00
DavidPartouche 4222d12e67 Added output to get_name for x11 monitors 2014-09-19 20:30:15 +02:00
DavidPartouche 906324e267 Get the monitors attached to the display, and their resolution for X11 2014-09-19 20:30:15 +02:00
DavidPartouche 6f47e6ff8c Changed is_fullscreen to monitor.is_some() 2014-09-19 20:30:13 +02:00
David Partouche 55ebd4935e Added fullscreen support for X11 2014-09-19 20:29:28 +02:00
DavidPartouche ac74db979c Get the monitors attached to the display, and their resolution for X11 2014-09-19 20:28:14 +02:00
DavidPartouche bd3b06e1a5 Changed is_fullscreen to monitor.is_some() 2014-09-19 20:28:11 +02:00
David Partouche b149fca83d Added fullscreen support for X11 2014-09-19 20:26:41 +02:00
Evan Tatarka bcd3da1fcd make x11 keyboard repeat detectable 2014-09-15 19:11:23 -04:00
Tomaka17 761d82cd60 Remove forgotten debugging println
Closes #26
2014-08-22 10:57:31 +02:00
Tomaka17 ae65b423dd Implement new events system 2014-08-13 17:23:03 +02:00
Tomaka17 53b9d6398c Remove dummy context creation for X11 2014-08-12 09:42:48 +02:00
Pierre Krieger 01fd8b1d9e Now calling glViewport on X11 when the window is created
See #14
2014-08-07 18:13:52 +02:00
Pierre Krieger e567d7f4fd set_position now takes ints
Fix #12
2014-08-07 18:07:48 +02:00
Pierre Krieger 3f69cbb189 Fix two warnings on X11 2014-08-07 18:05:51 +02:00
Pierre Krieger cbf07d3190 Add some error detection 2014-08-07 18:05:18 +02:00
Pierre Krieger d3e3590b84 Fix glXCreateContextAttrib always null 2014-08-07 18:03:56 +02:00
Pierre Krieger 5d997b618f Cleaner GL creation on X11 2014-08-07 17:53:41 +02:00
Pierre Krieger 2184e5e578 Minor style fix in X11 2014-08-07 17:36:48 +02:00
Pierre Krieger c7aa219ef1 Now using glXChooseFBConfig 2014-08-07 17:35:26 +02:00
Pierre Krieger eee9e298ba Implement set_window_position for x11 2014-08-02 12:47:32 +02:00
Tomaka17 b0d9d0b87f Dimensions will now match the monitor's in case of fullscreen 2014-08-02 11:23:32 +02:00
Tomaka17 abceca1121 Add get_dimensions() to MonitorID 2014-08-02 11:17:49 +02:00
Tomaka17 49b0a20170 Now passing WindowBuilder to implwin::Window::new 2014-08-02 10:42:17 +02:00
Tomaka17 5dda167021 Add iterators for events and WindowBuilder 2014-08-02 08:29:37 +02:00
Pierre Krieger 26fec195d5 Implement ReceivedCharacter for X11 2014-07-31 18:44:44 +02:00
Pierre Krieger 59b4d23d58 Add mouse buttons press/release events for X11 2014-07-31 17:33:46 +02:00
Pierre Krieger 0d45c7fcb4 Fix warning in X11 ffi 2014-07-31 17:25:56 +02:00
Pierre Krieger 0c76ff8771 Add get_position and get_inner_size for X11 2014-07-31 17:01:58 +02:00
Pierre Krieger 37c5b5446b Add some keyboard events for X11 2014-07-31 16:46:29 +02:00
Tomaka17 d9d293667a Add monitor support for win32 2014-07-31 11:13:40 +02:00
Tomaka17 db8955a9d8 Add API for monitors 2014-07-31 10:02:01 +02:00
Tomaka17 8911e162ce MonitorID now defined by the implementations 2014-07-31 09:42:50 +02:00
Tomaka17 270e290af9 make_current() is now unsafe 2014-07-30 18:12:39 +02:00
Tomaka17 6d9c5eb2bd should_close() renamed to is_closed() 2014-07-30 13:29:28 +02:00
Tomaka17 aa7d88dbda Fix bad events 2014-07-30 13:11:49 +02:00
Tomaka17 838cc2b325 Window getters now return an Option in case where the Window has been closed 2014-07-30 13:10:17 +02:00
Pierre Krieger 67349d717a Better events handling on X11 2014-07-28 15:06:38 +02:00
Pierre Krieger c1da2b1273 Work on input support for X11 2014-07-28 14:41:12 +02:00
Pierre Krieger 433c5b956e Implement CursorPositionChanged event for X11 2014-07-28 13:25:28 +02:00
Pierre Krieger 5764b9c243 Implement resize events on X11 2014-07-28 13:16:55 +02:00
Tomaka17 1f0999e6a0 Implement get_position for win32 and fix interface 2014-07-27 22:46:30 +02:00
Tomaka17 d4e334aecb get/set_size() -> get/set_inner/outer_size() 2014-07-27 22:36:28 +02:00
Tomaka17 d824fb94db Draft for monitor API 2014-07-27 20:41:25 +02:00
Tomaka17 758fd069c6 Remove some reliquate comment 2014-07-27 16:11:23 +02:00
Pierre Krieger f29b2f91e1 Now using dimensions 2014-07-27 15:54:48 +02:00