Add _with_flags() variants to settings helpers (#85)

This commit is contained in:
Ian Douglas Scott 2023-02-20 14:26:31 -08:00 committed by GitHub
parent 8232e1d249
commit 2dde95ee42
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 24 additions and 12 deletions

View file

@ -81,20 +81,26 @@ impl CosmicAppletHelper {
#[must_use]
pub fn window_settings<F: Default>(&self) -> Settings<F> {
let mut settings = crate::settings();
self.window_settings_with_flags(F::default())
}
#[must_use]
pub fn window_settings_with_flags<F>(&self, flags: F) -> Settings<F> {
let (width, height) = self.suggested_size();
let width = u32::from(width);
let height = u32::from(height);
settings.initial_surface = InitialSurface::XdgWindow(SctkWindowSettings {
iced_settings: iced_native::window::Settings {
size: (width + APPLET_PADDING * 2, height + APPLET_PADDING * 2),
min_size: Some((width + APPLET_PADDING * 2, height + APPLET_PADDING * 2)),
max_size: Some((width + APPLET_PADDING * 2, height + APPLET_PADDING * 2)),
Settings {
initial_surface: InitialSurface::XdgWindow(SctkWindowSettings {
iced_settings: iced_native::window::Settings {
size: (width + APPLET_PADDING * 2, height + APPLET_PADDING * 2),
min_size: Some((width + APPLET_PADDING * 2, height + APPLET_PADDING * 2)),
max_size: Some((width + APPLET_PADDING * 2, height + APPLET_PADDING * 2)),
..Default::default()
},
..Default::default()
},
..Default::default()
});
settings
}),
..crate::settings_with_flags(flags)
}
}
#[must_use]