Commit Graph

144 Commits

Author SHA1 Message Date
Eduard Bopp
18f9bc44c9 Implement grabbing of the mouse pointer for X11
Contains new methods in the Window API that closely mirror the Xlib API. The
methods are left unimplemented for other platforms for now.
2015-03-25 13:10:55 +01:00
Ryan Stewart
1c9c5c018a enumerate monitors in addition to adapters; this allows the MonitorID implementation to return a more useful monitor name, and the correct native monitor ID 2015-03-24 13:29:17 -07:00
Ryan Stewart
1c20ff87f1 honor top-left coordinates when requesting fullscreen to make sure window appears on the correct monitor 2015-03-24 13:25:24 -07:00
Brendan Zabarauskas
8a463f6643 Merge pull request #316 from binsoftware/cocoa-fixes
Cocoa fixes: memory leaks, monitor handling, is_current()
2015-03-24 18:33:53 +11:00
Pierre Krieger
63f69d6f2f Rustup 2015-03-21 13:43:14 +01:00
Ryan Stewart
1b2fd6e6d0 fix headless build by ensuring NativeMonitorId enum is available internally even without the window feature; add Eq/PartialEq to NativeMonitorId 2015-03-18 14:16:35 -07:00
Ryan Stewart
9914d826b8 expose platform-native monitor identifier 2015-03-16 14:11:49 -07:00
Pierre Krieger
c61c33a833 Add set_cursor_position function 2015-03-10 10:29:07 +01:00
Pierre Krieger
689ace8b25 Add is_current function 2015-03-04 07:43:55 +01:00
Pierre Krieger
d091323b22 Minor changes in documentation 2015-03-01 14:07:50 +01:00
Pierre Krieger
4f98ea3128 Add a guard for the calls to MakeCurrent during initialization 2015-03-01 13:57:09 +01:00
Pierre Krieger
cca23f8544 Add wrappers for safer error recovery during initialization 2015-03-01 13:41:00 +01:00
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