Skip to content

Commit b75073a

Browse files
committed
Send resize events immediately
1 parent 8e9fc01 commit b75073a

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

src/platform_impl/macos/app_state.rs

+7
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,13 @@ impl AppState {
239239
HANDLER.events().append(&mut events);
240240
}
241241

242+
pub fn send_event_immediately(event: Event<Never>) {
243+
if !unsafe { msg_send![class!(NSThread), isMainThread] } {
244+
panic!("uh-oh");
245+
}
246+
HANDLER.handle_nonuser_event(event);
247+
}
248+
242249
pub fn cleared() {
243250
if !HANDLER.is_ready() { return }
244251
HANDLER.handle_user_events();

src/platform_impl/macos/window_delegate.rs

+5-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,11 @@ impl WindowDelegateState {
7575
pub fn emit_resize_event(&mut self) {
7676
let rect = unsafe { NSView::frame(*self.nsview) };
7777
let size = LogicalSize::new(rect.size.width as f64, rect.size.height as f64);
78-
self.emit_event(WindowEvent::Resized(size));
78+
let event = Event::WindowEvent {
79+
window_id: WindowId(get_window_id(*self.nswindow)),
80+
event: WindowEvent::Resized(size),
81+
};
82+
AppState::send_event_immediately(event);
7983
}
8084

8185
fn emit_move_event(&mut self) {

0 commit comments

Comments
 (0)