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