1
0
Fork 0
Commit graph

336 commits

Author SHA1 Message Date
William Light 29461b14e4 replace *mut c_void with RawWindowHandle in Parent::WithParent 2020-09-12 19:06:21 +02:00
William Light 47b122c86e remove duplicate imports 2020-09-11 22:36:33 +02:00
William Light bb18518cf6 fix some rustfmt annoyances 2020-09-11 22:29:29 +02:00
william light 877c913a0c
Merge pull request #45 from BillyDM/master
Detect window resize in x11
2020-09-11 22:18:32 +02:00
Billy Messenger 3e4c1edfc7 Add method to window so user can get window info 2020-09-11 14:52:32 -05:00
Billy Messenger 9bf1fa08bb cargo fmt 2020-09-11 12:42:14 -05:00
Billy Messenger 0ddc2c5f3f Merge branch 'master' of https://github.com/RustAudio/baseview into master 2020-09-11 12:41:53 -05:00
Billy Messenger cc2ae0ef39 rebase, cargo fmt 2020-09-11 12:38:06 -05:00
William Light 76e5851b62 x11: don't return from Window::open() until the window is actually open 2020-09-11 19:37:46 +02:00
Billy Messenger 08564cc317 Merge branch 'master' of https://github.com/RustAudio/baseview into master 2020-09-11 12:35:51 -05:00
Billy Messenger 7bdff33847 Detect window resize in x11 2020-09-11 12:32:55 -05:00
William Light 4d9c6c3131 remove FileDropEvent
we have no implementations for it, so it's just dead code for now.
2020-09-11 19:10:49 +02:00
william light ce708a8515
Merge pull request #44 from RustAudio/nonblocking-event-loop
Non-blocking Event Loop, separate WindowHandle::app_run_blocking() call
2020-09-11 18:59:21 +02:00
William Light 409b03cfdb macOS: fix build 2020-09-11 18:53:33 +02:00
William Light bc79e42314 macOS: WindowHandle.app_run_blocking() 2020-09-11 18:53:33 +02:00
William Light 888e3bdf0c windows: nitpicky code aesthetics 2020-09-11 18:53:33 +02:00
William Light 17a7477400 windows: WindowHandle.app_run_blocking() 2020-09-11 18:53:33 +02:00
William Light 196883b390 x11: WindowHandle.app_run_blocking() 2020-09-11 18:53:33 +02:00
William Light 5207d961d9 x11: run window in a separate thread
there's a thread.join() to mimic the previous semantics (which are the
same as on the other platforms).
2020-09-11 18:53:33 +02:00
william light 030388cf25
Merge pull request #43 from BillyDM/master
Refactor Event
2020-09-11 18:52:43 +02:00
Billy Messenger e67887d92f Remove Interval event 2020-09-11 11:49:56 -05:00
Billy Messenger 52580cc2a9 rebase 2020-09-11 11:43:46 -05:00
Billy Messenger ddbc95a2ed Merge branch 'master' of https://github.com/RustAudio/baseview into master 2020-09-11 11:39:20 -05:00
William Light 2f02e0bf5c README: update Discord channel name 2020-09-11 18:07:02 +02:00
William Light 7bb68d7d59 .github/workflows: add libxcb-icccm4-dev to ubuntu runner 2020-09-11 18:06:13 +02:00
William Light b64183fb19 x11: Event::WillClose support
this is a nightmare of ICCCM protocols but hey it's done now.
2020-09-11 18:03:04 +02:00
william light ce48ae111a
Merge pull request #42 from RustAudio/rename-draw-to-on_frame
Rename WindowHandler.draw to WindowHandler.on_frame (merge after #41)
2020-09-11 17:48:50 +02:00
william light cd48fe57c7
Merge pull request #41 from RustAudio/x11-frame-timer
X11 frame timer
2020-09-11 17:48:39 +02:00
Billy Messenger 9efade9a18 Fix Windows build 2020-09-11 10:44:05 -05:00
Billy Messenger 83f2ffd27a Rename scale_factor to scale 2020-09-11 10:23:19 -05:00
Billy Messenger b8bc006fc1 Add and refactor events 2020-09-11 10:21:05 -05:00
William Light 072918cb3f rename WindowHandler.draw() to WindowHandler.on_frame()
also remove the `Window` ref argument because `on_frame()` shouldn't be
doing any window system ops (this is my opinion and i am happy to
backpedal if it turns out to be wrong).
2020-09-11 16:54:13 +02:00
William Light b650bf772f x11: frame/draw callbacks
currently fixed at 15ms (just above 60fps), but easily configurable and
something we can query the display server for in the future.
2020-09-11 16:32:21 +02:00
William Light dcb99e5c43 x11: switch from wait_for_event() to directly using poll() 2020-09-11 16:13:32 +02:00
William Light c76f089c96 x11/window: nitpicky code aesthetics 2020-09-11 15:50:10 +02:00
William Light b5dfbd946e x11: pass XCB conn error back through XcbConnection::new() 2020-09-11 15:47:00 +02:00
William Light da2c12dd25 x11: move scaling determination funcs into xcb_connection.rs 2020-09-11 15:44:01 +02:00
William Light 54f8bc7345 x11: split event loop and XCB event handling into separate fns 2020-09-11 15:40:19 +02:00
william light 23af18020e
Merge pull request #39 from glowcoil/window
API refactors: pass Window to AppWindow and introduce WindowHandle
2020-09-11 15:27:58 +02:00
Micah Johnston 5ecce5d28d Window::open() returns WindowHandle struct 2020-09-08 18:45:29 -05:00
Micah Johnston 601a5d62a4 remove mspc channel (to be replaced by baseview-specific WindowHandle 2020-09-08 18:45:29 -05:00
Micah Johnston c51aea5c12 rename AppWindow -> WindowHandler 2020-09-08 18:45:29 -05:00
micah 057324e688 adapt x11 backend to new api 2020-09-07 21:33:03 -04:00
Micah Johnston bb6a5eeeac adapt macos backend to new api 2020-09-07 21:33:03 -04:00
Micah Johnston e78598954f adapt windows backend to new api 2020-09-07 21:33:03 -04:00
Micah Johnston 58ed00eb11 api change: AppWindow methods receive an &mut Window, which implements HasRawWindowHandle 2020-09-07 21:33:03 -04:00
william light 17c673957c
Merge pull request #38 from glowcoil/master
Refactor: call DispatchMessage in event loop and combine handle_message with wnd_proc
2020-09-07 22:15:26 +02:00
Micah Johnston 08c9aec50c switch from Arc<Mutex<>> to Rc<RefCell<>> since the wndproc is only called on one thread 2020-09-07 02:16:45 -05:00
Micah Johnston aafd54b76c get Window as pointer instead of using Arc::from_raw() 2020-09-07 02:12:06 -05:00
Micah Johnston 89bd912a73 call DispatchMessage in event loop and combine handle_message with wnd_proc 2020-09-07 01:17:14 -05:00