Commit graph

1470 commits

Author SHA1 Message Date
Pierre Krieger 4bfcedad3e X11: use platform specific iterators instead 2015-02-10 08:31:31 +01:00
Tomaka17 49e3fbdd71 Win32: use platform-specific iterators instead 2015-02-10 08:27:52 +01:00
Glenn Watson 25fa4dfef6 Make the mouse wheel events match natural direction on osx. 2015-02-10 12:22:17 +10:00
Andrey Lesnikov 81dbaea29e android: Implemented color_bits and depth_bits 2015-02-08 02:32:29 +03:00
tomaka 6b52bf95a4 Merge pull request #254 from aepsil0n/mousebutton-renaming
Rename enum variants of MouseButton
2015-02-05 18:37:53 +01:00
Manish Goregaokar 256645cc3c Add some more support for X11 keys (partially fixes #251) 2015-02-05 22:28:54 +05:30
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
tomaka 03e9d78b3a Merge pull request #250 from bjz/osx-window
Add tempory fix for #248
2015-02-03 12:31:55 +01:00
Brendan Zabarauskas 4632e83156 Add tempory fix for #248 2015-02-03 22:17:59 +11:00
Akos Kiss e4469cfce7 Reorder the fields of XErrorEvent to match the struct layout found in recent Xlib.h
Fixes #244
2015-02-01 22:08:34 +00:00
tomaka be092183a6 Merge pull request #241 from tomaka/add-webgl
Add WebGL in the APIs list
2015-01-30 21:07:20 +01:00
Brendan Zabarauskas 9b530cdf40 Fix OSX build 2015-01-30 22:14:49 +11:00
Glenn Watson 1b73aeaa24 On some X11 driver implementations, calling XCloseDisplay from a different thread
causes memory corruption, resulting in a crash. Change window proxy to be a weak
reference so that the XCloseDisplay is always called from the main window.
2015-01-30 07:11:55 +10:00
Pierre Krieger 48ab960176 Add WebGL in the APIs list 2015-01-29 18:36:03 +01:00
Andrew Kelley 6a27fa9d26 fix for rust nightly 2015-01-28 12:43:44 -07:00
tomaka 1a9cf9bc5c Merge pull request #231 from bjz/osx-window
Implement some more Cocoa stuff
2015-01-26 10:55:35 +01:00
Brendan Zabarauskas 73078e0569 Rename osx->cocoa 2015-01-26 14:28:12 +11:00
Brendan Zabarauskas 44c21c4bbb Implement some more osx stuff 2015-01-26 14:22:50 +11:00
Peter Atashian 33cd252f99 Upgrade to latest winapi
Signed-off-by: Peter Atashian <retep998@gmail.com>
2015-01-25 21:52:17 -05:00
Brendan Zabarauskas 6b31fe9b1c {true, false}->{YES, NO} 2015-01-26 10:59:40 +11:00
tomaka f8c66ff2a9 Merge pull request #220 from tomaka/x11-vsync
Implement vsync for x11 and add vsync example
2015-01-25 12:56:15 +01:00
tomaka a2e03e7c15 Merge pull request #221 from tomaka/fix-rc
Fix race condition with XOpenIM
2015-01-25 12:55:58 +01:00
Andrew Kelley 02a57e0422 fix for latest rustc 2015-01-23 19:18:22 -07:00
Ms2ger 8005b012ce Fix a use-after-free in Android get_proc_address. 2015-01-23 19:24:42 +01:00
Pierre Krieger 56c6afd03c Fix race condition with XOpenIM 2015-01-23 11:10:23 +01:00
tomaka 36538b5634 Merge pull request #219 from bjwbell/remove-deadcode-warning
Remove deadcode warning in BuilderAttribs
2015-01-23 09:40:41 +01:00
Pierre Krieger b05ef16d81 Implement vsync for x11 and add vsync example 2015-01-23 09:33:22 +01:00
Bryan Bell 3e06c1c0e2 Remove deadcode warning in BuilderAttribs
In src/lib.rs remove the deadcode warning about the 'headless' builder
attribute. Headless is /actually/ set to false or true depending on if
HeadlessRendererBuilder is used.
2015-01-23 00:15:18 -08:00
Bryan Bell 6ea483dc78 Disable compiler unstable warnings
To cleanup the compiler output when building, disable
warnings about using unstable crates/features.
2015-01-22 23:40:17 -08:00
tomaka 1d6b863cd4 Merge pull request #217 from glennw/context-fallback
Some GPU/driver combinations have glxCreateContextAttribsARB present, bu...
2015-01-22 21:37:07 +01:00
Glenn Watson de3f354566 Fix log prefix 2015-01-23 06:01:22 +10:00
Glenn Watson 19475f8521 Some GPU/driver combinations have glxCreateContextAttribsARB present, but it fails with an X error. In this case, catch the X error and fall back to the old method of creating a context. 2015-01-22 12:07:31 +10:00
Josh Matthews e12e4bf38f Fix OS X build. 2015-01-21 10:58:08 -05:00
Akos Kiss 935e5a36a2 c_char isn't always i8 2015-01-20 21:49:23 +00:00
Brendan Zabarauskas 4d12d3ea3d Merge pull request #214 from bjz/osx-window
Move osx delegate stuff into separate type
2015-01-20 22:38:25 +11:00
Brendan Zabarauskas de8fe684e7 Move osx delegate stuff into separate type 2015-01-20 08:12:53 +11:00
tomaka d48ccb381a Merge pull request #213 from tomaka/permanent-iterators
Iterators returned by wait_events and poll_events are now persistent
2015-01-19 13:46:30 +01:00
Pierre Krieger 8fcd676714 Iterators returned by wait_events and poll_events are now persistent 2015-01-19 13:11:33 +01:00
Brendan Zabarauskas a203385e76 if letify 2015-01-19 22:35:34 +11:00
Glenn Watson 213f8b8534 Fix android API 2015-01-19 11:59:34 +10: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
Brendan Zabarauskas 1891764afd Clean up pattern matches 2015-01-18 20:22:33 +11:00
Brendan Zabarauskas f8f2950afd Remove unnecessary inner method 2015-01-18 20:11:52 +11:00
James Gilles 75c14c5213 Remove AsciiExt import, s/uint/u32/, delete some files I accidentally
committed (whoops)
2015-01-17 21:13:57 -05:00
James Gilles 211a326036 Merge PixelPirate's changes and fix merge conflicts 2015-01-17 20:42:44 -05:00
Bryan Bell e7e66b057d Change &mut self to &self in set_cursor 2015-01-17 08:28:52 +01:00
Pierre Krieger 3ce5fd08a8 More OS/X fixes 2015-01-15 21:01:09 +01:00
Pierre Krieger c3b2f45ca3 More OS/X fixes 2015-01-15 20:49:03 +01:00
Pierre Krieger 7652cc5860 Blind attempt to fix the OS/X build 2015-01-15 20:20:52 +01:00
Andrey Lesnikov 5a589b1783 android: Fixed depth buffer 2015-01-15 10:05:19 +03:00
Andrey Lesnikov 5a4fee967a x11, android, win32: [ui]size, [u]int -> [ui]32 2015-01-13 16:23:30 +03:00
Andrey Lesnikov d11f63a749 Fixed android: Added 'MouseCursor' import 2015-01-13 13:58:05 +03:00
tomaka 05a03fb6a1 Merge pull request #192 from bjwbell/mouse-cursors
Add mouse cursor support
2015-01-13 10:43:46 +01:00
Bryan Bell 0fba0a9a73 Code review comments
- Revert version back to 0.0.4
- Add comment that set_cursor has no effect on Android
2015-01-13 01:23:34 -08:00
Bryan Bell 5389c73b85 Fix OS X & Win32 builds 2015-01-12 19:45:20 -08:00
Bryan Bell 995bd37c78 Change uint/int to usize/isize
From https://github.com/rust-lang/rfcs/pull/544 the types uint/int were
renamed to usize/isize.
2015-01-12 19:33:31 -08:00
Bryan Bell 95f0990074 Refine X11 cursor selections
For MouseCursor::Cell, NotAllowed, NoDrop, Grab, Grabbing, ... set the
appropriate X11 cursor.

Also alphabetize the cursors listed in the MouseCursor enum.
2015-01-12 19:00:45 -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
Sam Ward 879f61dbbc OSX compatibility for Rust 1.0 alpha 2015-01-10 01:56:47 -08:00
Pierre Krieger 469d0eafd1 Update for rust alpha 1.0 2015-01-10 08:23:20 +01:00
Andrey Lesnikov dbe38ff49a android: Updated for Rust ea6f65c5f 2015-01-06 2015-01-08 20:57:04 +03:00
Pierre Krieger 3920cd5e80 Merge remote-tracking branch 'cybergeek94/master' into update-rustc
Conflicts:
	examples/support/mod.rs
	src/lib.rs
	tests/headless.rs
2015-01-08 12:58:58 +01:00
Austin Bonander 8d9133d331 Update to latest Rust nightly 2015-01-08 03:45:46 -08: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
Mike Dilger 53482b2a46 fix for Iterator now using associated types 2015-01-05 16:06:16 +13:00
Andrey Lesnikov 2b7e74d55a android: Updated for rust fc2ba1393 2015-01-03 2015-01-04 21:49:30 +03: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 c956559a51 Add missing with_* functions 2014-12-31 07:34:27 +01:00
Pierre Krieger e1b5d9c103 Add build_strict function on builders 2014-12-31 07:34:26 +01:00
Pierre Krieger b9710f05a9 Unify WindowBuilder and HeadlessRendererBuilder for easier implementations 2014-12-31 07:34:26 +01:00
Patrick Horlebein 0e64651db8 Removed NSOpenGLPFAOpenGLProfiles enum in favor of the one defined in the AppKit bindings 2014-12-30 17:02:49 +01:00
Patrick Horlebein b0dddb2d3f Fixed missing std::ascii::AsciiExt import 2014-12-30 17:01:37 +01:00
Pierre Krieger b9a6366f96 Update for changes in Send/Sync traits 2014-12-30 08:20:50 +01:00
Patrick Horlebein 09cf026a9d Minor match clause cleanup 2014-12-29 13:46:44 +01:00
Patrick Horlebein 1b0064f9f7 Fixed deprecation warnings 2014-12-29 13:27:24 +01:00
Patrick Horlebein 86af6b6387 Started adding support for selection OpenGL versions on OS X. Needs issue #176 to be fixed. 2014-12-29 13:26:44 +01:00
Andrey Lesnikov 9a5f02984d android: Implemented basic poll_events() 2014-12-26 01:29:54 +03:00
Andrey Lesnikov e441247d61 Removed 'extern crate gl_generator' 2014-12-26 01:28:48 +03:00
Pierre Krieger 7f6f4f8d04 Update for gl_generator's changes 2014-12-24 08:12:10 +01:00
tomaka 6b0dd62681 Merge pull request #170 from tomaka/update-rustc
Update for rustc
2014-12-23 17:18:08 +01:00
Pierre Krieger dbb82968ba Update for rustc 2014-12-23 17:12:29 +01:00
Glenn Watson bd28ebb34f Fix passing visibility through for mac. 2014-12-23 10:08:50 +10: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 f8d3b232a5 Add support for visible parameter on mac. 2014-12-19 08:44:45 +10:00
Glenn Watson f2d112213b Add experimental attribute since this API will need to be cleaned up. 2014-12-19 05:44:47 +10: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 95f82927b3 Change todo to unimplemented 2014-12-19 05:00:43 +10:00
tomaka 9434811328 Merge pull request #164 from glennw/scroll-wheel
Add scroll wheel events for mac.
2014-12-18 08:03:41 +01:00
Glenn Watson 3c1a803d8d Add scroll wheel events for mac. 2014-12-18 15:18:22 +10:00
Glenn Watson 2c150143d8 Add mac implementation of wakeup_event_loop. 2014-12-18 14:26:02 +10: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 19d120b8b1 Update for Rustc for win32 2014-12-15 14:06:32 +01:00
Pierre Krieger a79bc34807 Update for Rustc 2014-12-13 20:07:35 +01:00
Jakob Fries 12d5d5beea Avoid warning; if_let and tuple_indexing now part of language. 2014-12-08 21:12:03 +01:00
Pierre Krieger c893e4faec Add get_api() function 2014-12-07 13:52:08 +01:00
tomaka 2320c2bc97 Merge pull request #156 from tomaka/remove-compile-msg
Remove the dependency to compile_msg
2014-12-05 15:47:29 +01:00
tomaka ab387dc2a3 Merge pull request #157 from ozkriff/master
android: updated for rust 5484d6f6d 2014-12-02 00:22:00 +0000
2014-12-04 22:40:33 +01:00
Andrey Lesnikov b28273de04 android: updated for rust 5484d6f6d 2014-12-02 00:22:00 +0000 2014-12-05 01:30:17 +04:00
Pierre Krieger ffba8564c8 Remove the dependency to compile_msg 2014-12-04 20:44:12 +01:00
Ruben Bakker e979f316e7 Qualify enum namespacing for NSOpenGLCPSwapInterval 2014-12-03 20:54:10 +02:00
tomaka c6f5b4a107 Merge pull request #150 from tomaka/winapi
Use the winapi crate instead of our own ffi
2014-12-03 08:25:02 +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 3cf487ac70 Use the winapi crate instead of our own ffi 2014-12-02 14:58:20 +01:00
David Partouche 3ae8352464 Fixed issue with menu bar showing in fullscreen 2014-11-28 19:13:58 +01:00
Pierre Krieger 5072bc287f Update for rustc on win32 2014-11-27 15:52:07 +01:00
Pierre Krieger 729551f828 Implement multisampling for x11 2014-11-27 15:26:42 +01:00
tomaka 596132dc93 Merge pull request #138 from DavidPartouche/cocoa_offscreen
Added headless rendering on osx
2014-11-27 10:48:53 +01:00
tomaka dee448628a Merge pull request #142 from DavidPartouche/cocoa_vsync
Added swap interval to osx
2014-11-27 10:48:36 +01:00
Pierre Krieger 71d463f865 Update for rustc 2014-11-26 21:22:44 +01:00
David Partouche 23b108d436 Added swap interval to osx 2014-11-26 14:53:08 +01:00
Andrey Lesnikov adc6c00aa8 android: Updated for rust 395901393 2014-11-24 00:46:30 +0000 2014-11-26 17:11:08 +04:00
Glenn Watson 02f3287d70 Add support for GLESv2 on android. Remove a few warnings. 2014-11-26 15:21:58 +10:00
David Partouche f865d9ac01 Added headless rendering on osx 2014-11-25 23:55:39 +01:00
Glenn Watson d99ba30216 Allows android to compile when headless feature is enabled. 2014-11-26 08:17:09 +10: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
tomaka 2762142960 Merge pull request #131 from tomaka/update
Update for rustc
2014-11-23 12:05:31 +01:00
Pierre Krieger 77df8e52bc Update for rustc 2014-11-23 11:56:30 +01:00
Andrey Lesnikov f4be17b92e android: Updated for rust e583c4d24 2014-11-21 09:01:50 +0000 2014-11-21 18:33:29 +04:00
Glenn Watson d8a1fe5c97 Implement get_inner_size() for mac. 2014-11-21 07:47:08 +10:00
Glenn Watson cac0025abb Add support for setting a window delegate, and implement close event on mac. 2014-11-21 07:08:05 +10:00
David Partouche 29892fbb7c Fixed some compilation errors on osx 2014-11-19 16:55:44 +01: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
Andrey Lesnikov c0305c4781 Android: Implemented basic inputs 2014-11-17 13:32:28 +04:00
Glenn Watson d4bed68dbe Add ctrl, shift, alt events for X11. 2014-11-17 11:35:15 +10:00
tomaka 28227a2142 Merge pull request #115 from tomaka/detect-osmesa-errors
Detect OSMesa errors
2014-11-14 16:03:36 +01:00
Pierre Krieger 9b39d99f6e Detect OSMesa errors 2014-11-14 15:59:45 +01:00
David Partouche 77d00a8e5a Fixed an issue with the updated rust-cocoa crate 2014-11-11 23:45:20 +01:00
Brendan Zabarauskas c86368291e Implement Window::set_title for Cocoa 2014-11-10 20:12:32 +11: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 ee8682caf2 Add CS_OWNDC flag when creating win32 window 2014-11-08 20:15:18 +01:00
Tomaka17 2be71306ec Remove key modifiers in KeyboardInput 2014-11-06 19:09:07 +01:00
tomaka 9926e179d6 Merge pull request #102 from tomaka/keys-rework
Reorder and add comments to some of the virtual keys
2014-11-06 17:11:36 +01:00
David Partouche 2d76e0666f Added fullscreen support to osx 2014-11-06 16:40:30 +01:00
Tomaka17 04f4135110 Reorder and add comments to some of the virtual keys 2014-11-06 13:26:42 +01:00
Tomaka17 584bb3e7df Use a proper error type for window creation 2014-11-05 16:42:18 +01:00
Tomaka17 7ce851dad9 Update for changes in gl-rs 2014-11-05 15:32:01 +01:00
Tomaka17 2e44edea60 Merge branch 'master' of http://github.com/tomaka/gl-init-rs 2014-11-05 15:23:20 +01:00
David Partouche 9dd592600a Retrieve the monitors and their info for osx 2014-11-04 18:03:38 +01:00
Tomaka17 4c674ef843 Fix some warnings in win32 ffi 2014-11-04 14:08:28 +01:00
Tomaka17 b6f7491157 Add visibility-related functions to window 2014-11-01 09:03:21 +01:00
tomaka a908a14adc Merge pull request #90 from tomaka/remove-glflush
Remove call to glFlush() before swap_buffers on win32
2014-10-31 17:46:16 +01:00
Tomaka17 7de3d55e71 fail! -> panic! 2014-10-30 08:14:09 +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
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
Tomaka17 0392dc697a Fix default window name 2014-10-27 13:10:10 +01:00
Tomaka17 f7a50c162c Bugfix in swap interval for win32 2014-10-27 13:09:36 +01:00
tomaka a6bc0b0ba0 Merge pull request #72 from tomaka/vsync
Add `with_vsync` to WindowBuilder, plus the win32 implementation
2014-10-27 09:24:31 +01: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
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
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 21e3ff99fa Make platform data function as unsafe. 2014-10-24 18:12:03 +10: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
David Partouche f86af01a99 Added the Alt key modifier 2014-10-23 18:01:09 +02:00
David Partouche 6f46c0c2dd Added the modifiers key as input 2014-10-23 17:30:17 +02:00
David Partouche 271b688910 Fixed switch from atomics to atomic in rust 2014-10-23 17:30:16 +02:00
David Partouche 86e8480550 Added the KeyPress and KeyRelease events 2014-10-23 17:30:16 +02:00
David Partouche dad539114d Added ReceivedCharacter event for cocoa 2014-10-23 17:30:16 +02:00
David Partouche ba8f55547f Added is_closed to osx window 2014-10-23 17:30:16 +02:00
David Partouche 421beefe67 Added mose move event 2014-10-23 17:30:16 +02:00
David Partouche 5969cfe886 Fixed a compilation error: setContentview changed setContentView_ 2014-10-23 12:04:39 +02: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 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 cdee854d2e Fix bug with 64bits rustc 2014-10-11 20:23:33 +02:00
Tomaka17 cb32e64b72 Fix warnings while compiling for win32 2014-10-11 17:58:17 +02:00
David Partouche a2df6a8699 Changed statics to uppercase 2014-10-11 12:38:34 +02:00
David Partouche 10f625c2c8 Fixed static uppercase warning 2014-10-11 12:04:48 +02:00
Tomaka17 bfbc462511 Change implementations import system 2014-10-11 11:06:21 +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
DavidPartouche dc80f57bc2 Fixed a space missing 2014-10-06 18:37:06 +02:00
David Partouche 989fd1b505 Added events handling for left/right mouse clicking 2014-10-06 18:23:31 +02:00
David Partouche db578e6e1c Refactored window initialisation code for cocoa, making it more memory safe 2014-10-06 18:23:31 +02:00
David Partouche c38110cac7 Cocoa opens a window with OpenGL context inside 2014-10-06 18:23:31 +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
tomaka 1ae81267f5 Merge pull request #35 from evant/master
Make x11 keyboard repeat detectable
2014-09-16 07:53:20 +02:00
Evan Tatarka bcd3da1fcd make x11 keyboard repeat detectable 2014-09-15 19:11:23 -04:00
Tomaka17 991dc50a31 Remove unnecessary win32 linkage 2014-09-15 13:08:35 +02:00
Tomaka17 ee2349f272 Fix warnings in win32 ffi 2014-09-15 12:09:17 +02:00
Tomaka17 ce052484f7 Remove some unused imports 2014-09-13 09:04:47 +02:00
Tomaka17 f3e0c57158 Use gl_generator to generate EGL bindings for Android 2014-09-13 09:01:21 +02:00
Tomaka17 2af367b55c Use the gl_generator macro to generate the bindings for WGL 2014-09-12 15:51:43 +02:00
Tomaka17 3043cb2848 Remove old "egl" module 2014-09-12 15:20:59 +02:00
Tomaka17 0bb82e8467 Add basic support for Android 2014-09-11 18:28:07 +02:00
Tomaka17 d870fa7ffa Remove call to glViewport after win32 initialization 2014-08-22 11:26:47 +02:00
Tomaka17 d6fec79334 Cleanup temporary objects in case of error during creation on win32
See #10
2014-08-22 11:26:00 +02:00
Tomaka17 5c92587442 Fix & add some comments for win32 2014-08-22 11:21:12 +02:00
Tomaka17 6b45d1ca25 Not specifiying dimensions on win32 now results in CW_USEDEFAULT
Close #11
2014-08-22 11:19:19 +02:00
Tomaka17 761d82cd60 Remove forgotten debugging println
Closes #26
2014-08-22 10:57:31 +02:00
DavidPartouche 44c15bf6e6 Fixed broken build with latest rust update (use 'foo' = 'bar' syntax error) 2014-08-19 18:18:59 +02:00
Tomaka17 24dbe322f7 Track rust nightly 2014-08-15 16:12:40 +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 ae65b423dd Implement new events system 2014-08-13 17:23:03 +02:00
Tomaka17 3aab801f29 Implement Default for Window 2014-08-13 14:52:12 +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
Tomaka17 a8c056f83b Fixed compilation broken by #837efc54 2014-08-12 16:55:56 +02:00
Tomaka17 837efc5460 Fix attempt for #22 2014-08-12 11:01:18 +02:00
Tomaka17 53b9d6398c Remove dummy context creation for X11 2014-08-12 09:42:48 +02:00
Tomaka17 f452999b8c Minor fix in consistency for #[cfg]s 2014-08-12 09:17:23 +02:00
Tomaka17 391c4e525c Now using compile_msg crate instead of static_assert 2014-08-12 09:16:08 +02:00
Tomaka17 87d62e5b6f get_proc_address now returns a libc::c_void 2014-08-11 10:32:33 +02:00
Tomaka17 5f1d8dbedf Add flags when choosing pixel format 2014-08-07 18:51:27 +02:00
Tomaka17 acb0ab7cac Add default title for windows 2014-08-07 18:49:47 +02:00
Tomaka17 61781cf209 Call glViewport on windows init for win32
See #14
2014-08-07 18:48:34 +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 76ebf39bcd Merge branch 'master' of https://github.com/tomaka/gl-init-rs 2014-08-07 17:54:04 +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
Tomaka17 d2bd19bc21 Doc now ignored for doctest 2014-08-07 09:33:28 +02:00
Felix S. Klock II f1993be9ea Fix bugs from f4fb699b52 2014-08-03 18:30:31 +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 48632619c9 Add static assert for platform not supported 2014-08-03 10:30:04 +02:00
Tomaka17 f4fb699b52 Add dummy implementation for OS/X 2014-08-03 09:25:30 +02:00
Tomaka17 52cccb8dda Add doc to crate root 2014-08-02 20:49:48 +02:00
Pierre Krieger eee9e298ba Implement set_window_position for x11 2014-08-02 12:47:32 +02:00
Tomaka17 d08c94daac Remove Iconified and NeedRefresh events 2014-08-02 12:43:48 +02:00
Tomaka17 2aeec39156 Remove #[exprimental] from make_current 2014-08-02 12:32:08 +02:00
Tomaka17 0152099c91 Correctly handling pixel format and fullscreen resolution on Win32 2014-08-02 12:23:05 +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 dbaef704ad Fix docs for Window 2014-08-02 11:07:29 +02:00
Tomaka17 bfc5d3e63d with_monitor -> with_fullscreen 2014-08-02 11:04:48 +02:00
Tomaka17 8c074af9fc Add support for specific OpenGL version for Win32 2014-08-02 11:03:09 +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 959613870c Now using wglCreateContextAttribs when available 2014-08-02 00:01:45 +02:00
Tomaka17 21c8ffab80 Mark hints as deprecated 2014-08-01 23:22:29 +02:00
Tomaka17 c1ecc06baf Change the RegisterClass code.
Prevents an issue when creating multiple contexts.
2014-08-01 23:12:46 +02:00
Tomaka17 d93cea808d Add documentation to the Win32 implementation 2014-08-01 23:02:26 +02:00
Tomaka17 19b8474c4a Window is no longer NoSend 2014-07-31 20:56:56 +02:00
Tomaka17 14c59e8d81 Merge branch 'master' of http://github.com/tomaka/gl-init-rs 2014-07-31 20:55:55 +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
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 a9a42bd2ec Add draft for EGL 2014-07-30 17:13:30 +02:00
Tomaka17 ca89748414 Minor fix in docs 2014-07-30 14:18:31 +02:00
Tomaka17 17ad7ef50e Add docs to lib.rs 2014-07-30 14:13:42 +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 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
Tomaka17 d824fb94db Draft for monitor API 2014-07-27 20:41:25 +02:00
Tomaka17 6133e17b9a Add moved events for win32 2014-07-27 20:08:31 +02:00
Tomaka17 1e615b59a6 Better events handling for win32 2014-07-27 19:58:27 +02:00
Tomaka17 7a8e7a7922 Implement focus events for win32 2014-07-27 19:45:29 +02:00
Tomaka17 0103fb833e Remove FramebufferSizeChanged event 2014-07-27 19:45:02 +02:00
Tomaka17 f5080a2b29 Implement mouse clicks on win32 2014-07-27 19:41:02 +02:00
Tomaka17 a28282ef5f Implement Pressed and Released 2014-07-27 18:55:14 +02:00
Tomaka17 754a6ef60f Implement ReceivedCharacter on win32 2014-07-27 18:39:22 +02:00
Tomaka17 c67ab381bf Fix events handling on win32 2014-07-27 18:35:42 +02:00
Pierre Krieger 24baf4d104 Add some events 2014-07-27 17:06:03 +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
Pierre Krieger 356394cc75 Better cleanup in X11 destruction 2014-07-27 15:49:43 +02:00
Pierre Krieger bd0ae7476c Work on X11 events 2014-07-27 15:21:42 +02:00
Pierre Krieger 5aa72279aa Window is now NoSend 2014-07-27 15:11:59 +02:00
Pierre Krieger 4028b925d3 X11 implementation 2014-07-27 15:10:58 +02:00
Tomaka17 bf2773c233 Temporarily remove NeedRefresh event from win32 2014-07-27 13:10:59 +02:00
Tomaka17 13b79ffaaf Cleanup crate root 2014-07-27 12:59:45 +02:00
Tomaka17 1cc0447c5e Initial commit 2014-07-27 11:41:26 +02:00