diff --git a/src/platform_impl/apple/uikit/view.rs b/src/platform_impl/apple/uikit/view.rs index b0b97b1eb4..a5d3d45e44 100644 --- a/src/platform_impl/apple/uikit/view.rs +++ b/src/platform_impl/apple/uikit/view.rs @@ -11,6 +11,7 @@ use objc2_ui_kit::{ UIResponder, UIRotationGestureRecognizer, UITapGestureRecognizer, UITextInputTraits, UITouch, UITouchPhase, UITouchType, UITraitEnvironment, UIView, }; +use tracing::debug; use super::app_state::{self, EventWrapper}; use super::window::WinitUIWindow; @@ -136,6 +137,13 @@ declare_class!( ); } + #[method(safeAreaInsetsDidChange)] + fn safe_area_changed(&self) { + debug!("safeAreaInsetsDidChange was called, requesting redraw"); + // When the safe area changes we want to make sure to emit a redraw event + self.setNeedsDisplay(); + } + #[method(touchesBegan:withEvent:)] fn touches_began(&self, touches: &NSSet, _event: Option<&UIEvent>) { self.handle_touches(touches)