Commit graph

274 commits

Author SHA1 Message Date
mitchmindtree
f2dd2f0752 WIP - Make poll_events and run_forever take &mut self
This removes the need for the EventsLoop::interrupt method by inroducing
a ControlFlow type. This new type is to be returned by the user's
callback and indicates whether the `EventsLoop` should continue waiting
for events or break from the loop.

Only the wayland, x11 and api_transition backends have been updated so
far, and only the wayland backend has actually been tested.
2017-06-02 21:19:45 +10:00
mitchmindtree
f6587aed39 [WIP] Have EventsLoopProxy::wakeup return a Result. Begin linux impl.
X11 and Wayland implementations are now half implemented, however both
still do not correctly break from the inner blocking event dispatch
functions when `wakeup` is called, which they should do.
2017-05-25 23:19:13 +10:00
mitchmindtree
06a5ec35b3 [WIP] Remove Sync and Clone from EventsLoop. Add EventsLoopProxy.
This commit only updates the top-level API to get some early feedback.
None of the platform-specific code has been updated yet. I'm hoping to
get around to this over the next couple days however if someone more
familiar with the windows backend would like to do a PR against this
fork that would be a great help.

Closes #187.
2017-05-25 20:13:54 +10:00
Joe Wilm
55b5054d50 Derive Clone on winit::EventsLoop wrapper
Resolves #177.
2017-05-11 23:04:28 -07:00
vanderlokken
f034017ab2 FIxed obsolete strings 2017-05-11 03:14:38 +03:00
Benjamin Saunders
22bc119cd7 Richer input events
This expands input events to represent sub-pixel mouse positions, devices responsible for generating events, and raw
device-oriented events. The X11 back end is refactored to make full use of the new expressiveness. Other backends have
had new functionality minimally stubbed out, save for the macos backend which already supports sub-pixel mouse
positions.
2017-04-23 01:08:15 -07:00
Victor Berger
4acf437221 Move api module into platform::linux 2017-03-04 09:09:09 +01:00
Pierre Krieger
b988c174fe Add WindowId type 2017-02-03 09:13:11 +01:00
Pierre Krieger
9cd0430ec7 Remove stuff from Window's API 2017-02-03 06:48:58 +01:00
Pierre Krieger
c3d2289b0c Remove resize_callback from WindowsAttributes 2017-01-28 15:34:15 +01:00
Pierre Krieger
bcb242983b Add documentation for the new API 2017-01-28 15:33:54 +01:00
Pierre Krieger
0242daa242 Add interrupting the events loop 2017-01-28 15:09:01 +01:00
Pierre Krieger
422b332c1b Add a transition macro system 2017-01-28 15:00:17 +01:00
tomaka
f1d70d351e Merge pull request #82 from tomaka/documentation
Some documentation improvements
2017-01-28 13:31:36 +01:00
mitchmindtree
53065bda40 Move resize_callback field from WindowBuilder into WindowAttributes struct 2016-11-12 02:55:21 +11:00
mitchmindtree
eb18b3d8b6 Add a WindowBuilder::with_window_resize_callback method.
This allows for passing the window_resize_callback fn during the window
building stage. More importantly, this allows setting the callback
without the need for mutable access to the Window, making it possible
to set the callback in the downstream glium crate.

This may solve tomaka/glium#1232 for most folk.
2016-11-11 22:08:46 +11:00
Pierre Krieger
2c58e85584 Some documentation improvements 2016-11-06 09:51:20 +01:00
Victor Berger
a505eddf29 wayland: bases of backend and output handling 2016-10-09 16:08:10 +02:00
Andrey Lesnikov
7f6ae8910e Merge https://github.com/tomaka/glutin
Conflicts:
	.travis.yml
	Cargo.toml
	examples/fullscreen.rs
	src/api/android/mod.rs
	src/api/cocoa/headless.rs
	src/api/cocoa/helpers.rs
	src/api/cocoa/mod.rs
	src/api/glx/mod.rs
	src/api/osmesa/mod.rs
	src/api/win32/callback.rs
	src/headless.rs
	src/lib.rs
	src/platform/linux/mod.rs
	src/window.rs
2016-09-19 19:53:28 +03:00
Victor Koenders
5ce48523cd Added a couple more PartialEq's 2016-08-17 20:42:45 +02:00
Jan Segre
e0f36b80c9 Make WindowBuilder and HeadlessRendererBuilder derive Clone. 2016-05-23 03:17:31 -03:00
Osspial
b2cf70b342 Fixed some warnings when building on Windows 2016-05-07 21:05:45 -04:00
Corey Farwell
dc49156fe6 Allow OSX WindowBuilder to specify 'activation behavior'. 2016-04-29 10:43:30 -04:00
Pierre Krieger
d216d6b052 Merge remote-tracking branch 'glutin/master' into merge-glutin
Conflicts:
	Cargo.toml
	build.rs
	src/api/caca/mod.rs
	src/api/cocoa/mod.rs
	src/api/egl/ffi.rs
	src/api/egl/mod.rs
	src/api/glx/mod.rs
	src/api/osmesa/mod.rs
2016-03-26 17:55:03 +01:00
Kirill Zdornyy
74a28adba2 Fix this_platform_is_not_supported on OpenBSD.
I followed the steps of @mneumann.
2016-03-01 18:06:13 -08:00
Pierre Krieger
10bb03c5f0 Remove most OpenGL stuff and make it compile on win32 2016-02-23 12:56:23 +01:00
Pierre Krieger
982279bc39 Update the emscripten port of glutin 2016-02-09 14:25:21 +01:00
Victor Berger
508e8cf665 Fix EGL for wayland. 2016-01-03 12:19:53 +01:00
Victor Berger
fad2e77a36 api/wayland: Reset to empty API.
In order to build the whole new structure.
2015-12-22 14:36:41 +01:00
Pierre Krieger
ed1d76aaee Remove now unneeded function 2015-12-19 14:36:49 +01:00
Pierre Krieger
95a60ee329 Switch WGL to ChoosePixelFormat 2015-12-19 13:06:50 +01:00
Pierre Krieger
0b6418fabb Change PixelFormatRequirements 2015-12-19 11:32:51 +01:00
Aceeri
c6ffedccbd Removed comments, fixed Some/None matches, removed unnecessary lock checks 2015-11-09 03:13:52 -08:00
Aceeri
78eb4a5990 Minimum/maximum dimensions for windows in win32 api 2015-11-09 01:42:54 -08:00
mitchmindtree
b02265fa11 Update to libc 0.2, remove unnecessary gl_common crate 2015-11-09 08:47:12 +01:00
Pierre Krieger
37262fb228 Remove public exports of gl_common and libc 2015-11-09 08:46:52 +01:00
Pierre Krieger
7a625ef3d8 Remove the window feature entirely 2015-10-03 10:33:37 +02:00
Pierre Krieger
8c6a27d426 Add an os module containing platform-specific traits 2015-10-03 09:53:37 +02:00
Josh Matthews
77b3743117 Warning fixes for OS X. 2015-09-28 12:19:36 -04:00
Pierre Krieger
86fa1b58e5 Rename MonitorID -> MonitorId 2015-09-24 09:11:59 +02:00
Pierre Krieger
aa9cb99929 Add #[inline] attributes 2015-09-23 13:11:47 +02:00
Tim Neumann
9f6806ba2e make glutin compile on all iOS targets 2015-09-21 18:57:35 +02:00
Pierre Krieger
62bafe2130 Remove BuilderAttribs 2015-09-21 14:03:05 +02:00
Pierre Krieger
932e565391 Remove extract_non_static 2015-09-21 12:03:58 +02:00
Pierre Krieger
3054e2ee02 Switch EGL to use only pf_reqs and opengl 2015-09-21 12:03:57 +02:00
Pierre Krieger
3ff08d747c Add GlAttributes::map_sharing 2015-09-21 12:03:56 +02:00
Pierre Krieger
58b3bfb4fb Extract PixelFormatRequirements from BuilderAttribs 2015-09-21 12:03:56 +02:00
Pierre Krieger
48fe9b2644 Extract WindowAttributes from the BuilderAttribs 2015-09-21 12:03:55 +02:00
Pierre Krieger
c244f8c033 Extract GlAttributes from BuilderAttribs 2015-09-21 12:03:55 +02:00
Pierre Krieger
b9a4f5fbe9 Err when a X connection cannot be created instead of panicking 2015-09-20 08:42:32 +02:00