Commit graph

60 commits

Author SHA1 Message Date
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
faf5812d05 Fix win32 build without the "window" feature 2014-12-20 18:49:57 +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
Glenn Watson
95f82927b3 Change todo to unimplemented 2014-12-19 05:00:43 +10: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
Pierre Krieger
3cf487ac70 Use the winapi crate instead of our own ffi 2014-12-02 14:58:20 +01:00
Pierre Krieger
729551f828 Implement multisampling for x11 2014-11-27 15:26:42 +01:00
Pierre Krieger
4c0413bc7c Implement lists sharing 2014-11-24 20:13:52 +01:00
Pierre Krieger
ff3a29aaf5 Update for rustc 2014-11-19 07:06:27 +01:00
Tomaka17
8c1b2dd633 Add support for the OpenGL debug flag 2014-11-09 16:44:53 +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
bbcb4c8bea Remove call to glFlush() before swap_buffers
We may not want to call `swap_buffers` in the same thread as the
current thread, so we're moving the call to `glFlush` out of the scope
of glutin.
2014-10-29 19:01:58 +01:00
Tomaka17
8249e545f8 Add with_vsync to WindowBuilder, plus the win32 implementation 2014-10-26 16:35:24 +01:00
tomaka
fa99f0e701 Revert "Add platform_display impls for win32 and android" 2014-10-25 10:40:27 +02:00
Tomaka17
0eda82c28f Add platform_display impls for win32 and android
Fix the cocoa function
2014-10-24 12:54:58 +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
Tomaka17
2ff393fe62 Update for rustc and gl-rs 2014-10-22 11:23:21 +02:00
Tomaka17
9e9a3ae03a Fix win32 window not closing when destroying it 2014-10-11 20:52:48 +02:00
Tomaka17
64bbc4965f Fix win32 window not having a destructor in headless mode 2014-10-11 20:40:15 +02:00
Tomaka17
cb32e64b72 Fix warnings while compiling for win32 2014-10-11 17:58:17 +02:00
Tomaka17
e565bfeb13 Implement headless rendering 2014-10-09 15:55:42 +02:00
Tomaka17
2af367b55c Use the gl_generator macro to generate the bindings for WGL 2014-09-12 15:51:43 +02:00
Tomaka17
5c92587442 Fix & add some comments for win32 2014-08-22 11:21:12 +02:00
Tomaka17
4c1503dc32 Win32: no longer fails when calling swap_buffers on a closed window 2014-08-15 15:34:30 +02:00
Tomaka17
cd3fc3075a Fix #22
Thanks to @Anthiste
2014-08-12 21:21:06 +02:00
Tomaka17
32e9b5062c Add failure if SwapBuffers returns an error 2014-08-12 17:04:12 +02:00
Pierre Krieger
e567d7f4fd set_position now takes ints
Fix #12
2014-08-07 18:07:48 +02:00
Tomaka17
d574f6f1bb Fix GL context not being destroyed on win32 2014-08-03 17:33:48 +02:00
Tomaka17
3c9565ad25 Fix closed flag not being immediatly set on win32 2014-08-03 17:27:48 +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
Tomaka17
d93cea808d Add documentation to the Win32 implementation 2014-08-01 23:02:26 +02:00
Tomaka17
fd20346829 Put GetMessage in the same thread as the window creation.
Fixes #6
2014-07-31 20:55:30 +02:00
Tomaka17
91b0eeae8d Split win32/mod.rs 2014-07-31 20:14:36 +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
Tomaka17
1f0999e6a0 Implement get_position for win32 and fix interface 2014-07-27 22:46:30 +02:00
Tomaka17
14a697b272 Implement get_*_size() for win32 2014-07-27 22:36:55 +02:00
Tomaka17
d4e334aecb get/set_size() -> get/set_inner/outer_size() 2014-07-27 22:36:28 +02:00
Tomaka17
0d122cec47 Implement fullscreen for win32 2014-07-27 21:21:50 +02:00