Let a Theme control the background color of an application
... and remove `Application::background_color`
This commit is contained in:
parent
2cfb307f8c
commit
03eda9b162
9 changed files with 33 additions and 79 deletions
|
|
@ -1,5 +1,6 @@
|
|||
use crate::theme;
|
||||
use crate::window;
|
||||
use crate::{Color, Command, Element, Executor, Settings, Subscription};
|
||||
use crate::{Command, Element, Executor, Settings, Subscription};
|
||||
|
||||
/// An interactive cross-platform application.
|
||||
///
|
||||
|
|
@ -101,7 +102,7 @@ pub trait Application: Sized {
|
|||
type Message: std::fmt::Debug + Send;
|
||||
|
||||
/// The theme of your [`Application`].
|
||||
type Theme: Default;
|
||||
type Theme: Default + theme::Definition;
|
||||
|
||||
/// The data needed to initialize your [`Application`].
|
||||
type Flags;
|
||||
|
|
@ -167,13 +168,6 @@ pub trait Application: Sized {
|
|||
window::Mode::Windowed
|
||||
}
|
||||
|
||||
/// Returns the background color of the [`Application`].
|
||||
///
|
||||
/// By default, it returns [`Color::WHITE`].
|
||||
fn background_color(&self) -> Color {
|
||||
Color::WHITE
|
||||
}
|
||||
|
||||
/// Returns the scale factor of the [`Application`].
|
||||
///
|
||||
/// It can be used to dynamically control the size of the UI at runtime
|
||||
|
|
@ -277,10 +271,6 @@ where
|
|||
self.0.subscription()
|
||||
}
|
||||
|
||||
fn background_color(&self) -> Color {
|
||||
self.0.background_color()
|
||||
}
|
||||
|
||||
fn scale_factor(&self) -> f64 {
|
||||
self.0.scale_factor()
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue