Commit graph

132 commits

Author SHA1 Message Date
Pierre Krieger 65d5589e3c Fix various warnings 2015-03-01 13:18:36 +01:00
Pierre Krieger 36619ee40e Mark functions as unsafe instead of having a lot of blocks 2015-03-01 13:14:58 +01:00
Pierre Krieger 7ba8fdf3f3 Fix creating non-hardware-accelerated contexts 2015-03-01 11:07:46 +01:00
Pierre Krieger cf252c29b4 Use the WGL API to determine extended pixel format, plus fix creation 2015-03-01 10:33:25 +01:00
tomaka e04288f812 Do not call wglShareLists is ctxt is null 2015-02-23 15:37:23 +01:00
tomaka 6608cbb20c Fix win32 compilation 2015-02-23 14:46:47 +01:00
mitchmindtree 1055eed078 Removed as_slice_with_nul as CString now derefs to a CStr 2015-02-22 01:17:47 +11:00
mitchmindtree 0389c834e4 RingBuf -> VecDeque for other platforms, as_slice_with_nul -> as_bytes_with_nul 2015-02-22 00:40:23 +11:00
Ryan Stewart 25ce029cf6 expose the platform-specific window handle (currently Win only) 2015-02-20 12:33:25 -08:00
tomaka 8e1d0f7a97 Merge pull request #282 from tomaka/gl-api
Improve the OpenGL context request system
2015-02-19 21:55:15 +01:00
Pierre Krieger 1ee6f8fa1a Update for rustc 2015-02-19 20:18:50 +01:00
Pierre Krieger f4f84c6566 Improve the OpenGL context request system 2015-02-18 17:15:01 +01:00
Pierre Krieger ba7f2a923f Don't call MakeCurrent(null, null) when destroying 2015-02-18 09:00:00 +01:00
Pierre Krieger 1a33c9ce9f Extract load_opengl32_dll 2015-02-16 15:59:06 +01:00
Pierre Krieger 950fd58b77 Implement enumerate_arb_pixel_formats 2015-02-16 15:55:26 +01:00
Pierre Krieger d1bc85c011 Switch to create_context for the real context 2015-02-16 15:42:00 +01:00
Pierre Krieger 6bec85e0cc Implement better handling for pixel formats 2015-02-16 15:36:32 +01:00
Pierre Krieger dfbf2adf4a Extract and add create_context function 2015-02-16 15:07:03 +01:00
Pierre Krieger 353567b216 Start splitting win32::init into multiple functions 2015-02-16 13:58:48 +01:00
tomaka 19debf3eb2 Merge pull request #277 from tomaka/win32-callback
Extract callback from win32/init.rs to its own module
2015-02-16 11:03:21 +01:00
tomaka cba56a208d Merge pull request #276 from tomaka/win32-headless
Extract win32 HeadlessContext to a "headless" module
2015-02-16 10:51:02 +01:00
Pierre Krieger 7f03400a2b Extract callback from win32/init.rs 2015-02-16 10:08:08 +01:00
Pierre Krieger 91c50ed046 Extract win32 HeadlessContext to a "headless" module 2015-02-16 10:01:47 +01:00
Pierre Krieger 94254521dc Style improvement in win32/event.rs 2015-02-16 09:53:01 +01:00
tomaka d1bf1e8ac0 Fix poll_events() blocking on win32 2015-02-11 15:34:08 +01:00
tomaka 4500702a02 Merge pull request #70 from tomaka/fix-iterators
Use platform-specific iterators instead
2015-02-10 22:34:18 +01:00
Pierre Krieger e9a775c6b1 Implement win32 initialization in a cleaner way 2015-02-10 12:58:38 +01:00
Tomaka17 49e3fbdd71 Win32: use platform-specific iterators instead 2015-02-10 08:27:52 +01:00
Eduard Bopp b2367fe2e6 Rename enum variants of MouseButton
With enums that are namespaced by default, it seems reasonable to be less
redundant in the variant naming here.
2015-02-05 16:52:53 +01:00
Peter Atashian 33cd252f99 Upgrade to latest winapi
Signed-off-by: Peter Atashian <retep998@gmail.com>
2015-01-25 21:52:17 -05:00
Glenn Watson fd5e77f23e Add missing get_api stubs.
Add hidpi_factor() support for retina displays.
Fix Resize and MouseMoved events to handle retina displays.
Fix inverted y position for MouseMoved events on mac.
Fix initial painting on retina display.
2015-01-19 11:54:11 +10:00
Andrey Lesnikov 5a4fee967a x11, android, win32: [ui]size, [u]int -> [ui]32 2015-01-13 16:23:30 +03:00
Bryan Bell 5389c73b85 Fix OS X & Win32 builds 2015-01-12 19:45:20 -08:00
Bryan Bell b532b8c65f Add mouse cursor support
Add a new api, window.set_cursor, for setting the cursor. The enum MouseCursor lists the possible cursors.

Only X11 is implemented. On OSX, Android, & Win32 the window.set_cursor function
either does nothing or calls the "unimplemented!" macro.
2015-01-12 16:22:37 -08:00
Pierre Krieger 469d0eafd1 Update for rust alpha 1.0 2015-01-10 08:23:20 +01:00
Pierre Krieger dbdb43f077 Update for Rustc 2015-01-08 09:28:22 +01:00
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
Pierre Krieger dbb82968ba Update for rustc 2014-12-23 17:12:29 +01:00
Pierre Krieger faf5812d05 Fix win32 build without the "window" feature 2014-12-20 18:49:57 +01:00
Michael Powell 6e9969ccc0 Add semicolons after macro invocations, as required by the latest nightly. 2014-12-19 21:34:20 -08: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 19d120b8b1 Update for Rustc for win32 2014-12-15 14:06:32 +01:00