improv: disable flex layout for toggler and dropdown controls
Closes #372
This commit is contained in:
parent
26ab69c7ab
commit
ab392fd7a0
7 changed files with 37 additions and 37 deletions
34
Cargo.lock
generated
34
Cargo.lock
generated
|
|
@ -1364,7 +1364,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cosmic-config"
|
name = "cosmic-config"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"atomicwrites",
|
"atomicwrites",
|
||||||
"calloop 0.14.0",
|
"calloop 0.14.0",
|
||||||
|
|
@ -1387,7 +1387,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cosmic-config-derive"
|
name = "cosmic-config-derive"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"quote",
|
"quote",
|
||||||
"syn 1.0.109",
|
"syn 1.0.109",
|
||||||
|
|
@ -1606,7 +1606,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cosmic-theme"
|
name = "cosmic-theme"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"almost",
|
"almost",
|
||||||
"cosmic-config",
|
"cosmic-config",
|
||||||
|
|
@ -2898,7 +2898,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced"
|
name = "iced"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"dnd",
|
"dnd",
|
||||||
"iced_accessibility",
|
"iced_accessibility",
|
||||||
|
|
@ -2917,7 +2917,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_accessibility"
|
name = "iced_accessibility"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"accesskit",
|
"accesskit",
|
||||||
"accesskit_unix",
|
"accesskit_unix",
|
||||||
|
|
@ -2926,7 +2926,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_core"
|
name = "iced_core"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitflags 2.6.0",
|
"bitflags 2.6.0",
|
||||||
"dnd",
|
"dnd",
|
||||||
|
|
@ -2948,7 +2948,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_futures"
|
name = "iced_futures"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"futures",
|
"futures",
|
||||||
"iced_core",
|
"iced_core",
|
||||||
|
|
@ -2961,7 +2961,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_graphics"
|
name = "iced_graphics"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitflags 2.6.0",
|
"bitflags 2.6.0",
|
||||||
"bytemuck",
|
"bytemuck",
|
||||||
|
|
@ -2985,7 +2985,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_renderer"
|
name = "iced_renderer"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"iced_graphics",
|
"iced_graphics",
|
||||||
"iced_tiny_skia",
|
"iced_tiny_skia",
|
||||||
|
|
@ -2997,7 +2997,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_runtime"
|
name = "iced_runtime"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"dnd",
|
"dnd",
|
||||||
"iced_accessibility",
|
"iced_accessibility",
|
||||||
|
|
@ -3011,7 +3011,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_sctk"
|
name = "iced_sctk"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"enum-repr",
|
"enum-repr",
|
||||||
"float-cmp",
|
"float-cmp",
|
||||||
|
|
@ -3037,7 +3037,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_style"
|
name = "iced_style"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"iced_core",
|
"iced_core",
|
||||||
"once_cell",
|
"once_cell",
|
||||||
|
|
@ -3047,7 +3047,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_tiny_skia"
|
name = "iced_tiny_skia"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytemuck",
|
"bytemuck",
|
||||||
"cosmic-text",
|
"cosmic-text",
|
||||||
|
|
@ -3064,7 +3064,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_wgpu"
|
name = "iced_wgpu"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitflags 2.6.0",
|
"bitflags 2.6.0",
|
||||||
"bytemuck",
|
"bytemuck",
|
||||||
|
|
@ -3090,7 +3090,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_widget"
|
name = "iced_widget"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"dnd",
|
"dnd",
|
||||||
"iced_renderer",
|
"iced_renderer",
|
||||||
|
|
@ -3107,7 +3107,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "iced_winit"
|
name = "iced_winit"
|
||||||
version = "0.12.0"
|
version = "0.12.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"dnd",
|
"dnd",
|
||||||
"iced_graphics",
|
"iced_graphics",
|
||||||
|
|
@ -3625,7 +3625,7 @@ checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "libcosmic"
|
name = "libcosmic"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/pop-os/libcosmic#e04c9eaf6d66b4c3c1094163eb0ee31050f97656"
|
source = "git+https://github.com/pop-os/libcosmic#76667418d8e97bfb7dc89cbca6c6e67dbf47e9ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"apply",
|
"apply",
|
||||||
"ashpd",
|
"ashpd",
|
||||||
|
|
|
||||||
|
|
@ -155,7 +155,7 @@ pub(crate) fn enable() -> Section<crate::pages::Message> {
|
||||||
return Element::from(text(fl!("unknown")));
|
return Element::from(text(fl!("unknown")));
|
||||||
};
|
};
|
||||||
settings::view_section(§ion.title)
|
settings::view_section(§ion.title)
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[dock],
|
&descriptions[dock],
|
||||||
toggler(
|
toggler(
|
||||||
None,
|
None,
|
||||||
|
|
|
||||||
|
|
@ -125,7 +125,7 @@ pub fn window_controls() -> Section<crate::pages::Message> {
|
||||||
let descriptions = §ion.descriptions;
|
let descriptions = §ion.descriptions;
|
||||||
|
|
||||||
settings::view_section(§ion.title)
|
settings::view_section(§ion.title)
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[minimize],
|
&descriptions[minimize],
|
||||||
toggler(
|
toggler(
|
||||||
None,
|
None,
|
||||||
|
|
@ -133,7 +133,7 @@ pub fn window_controls() -> Section<crate::pages::Message> {
|
||||||
super::Message::ShowMinimizeButton,
|
super::Message::ShowMinimizeButton,
|
||||||
),
|
),
|
||||||
))
|
))
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[maximize],
|
&descriptions[maximize],
|
||||||
toggler(
|
toggler(
|
||||||
None,
|
None,
|
||||||
|
|
|
||||||
|
|
@ -110,13 +110,13 @@ pub(crate) fn behavior_and_position<
|
||||||
return Element::from(text(fl!("unknown")));
|
return Element::from(text(fl!("unknown")));
|
||||||
};
|
};
|
||||||
settings::view_section(§ion.title)
|
settings::view_section(§ion.title)
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[autohide_label],
|
&descriptions[autohide_label],
|
||||||
toggler(None, panel_config.autohide.is_some(), |value| {
|
toggler(None, panel_config.autohide.is_some(), |value| {
|
||||||
Message::AutoHidePanel(value)
|
Message::AutoHidePanel(value)
|
||||||
}),
|
}),
|
||||||
))
|
))
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[position],
|
&descriptions[position],
|
||||||
dropdown(
|
dropdown(
|
||||||
page.anchors.as_slice(),
|
page.anchors.as_slice(),
|
||||||
|
|
@ -124,7 +124,7 @@ pub(crate) fn behavior_and_position<
|
||||||
Message::PanelAnchor,
|
Message::PanelAnchor,
|
||||||
),
|
),
|
||||||
))
|
))
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[display],
|
&descriptions[display],
|
||||||
dropdown(
|
dropdown(
|
||||||
page.outputs.as_slice(),
|
page.outputs.as_slice(),
|
||||||
|
|
@ -166,19 +166,19 @@ pub(crate) fn style<
|
||||||
return Element::from(text(fl!("unknown")));
|
return Element::from(text(fl!("unknown")));
|
||||||
};
|
};
|
||||||
settings::view_section(§ion.title)
|
settings::view_section(§ion.title)
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[gap_label],
|
&descriptions[gap_label],
|
||||||
toggler(None, panel_config.anchor_gap, |value| {
|
toggler(None, panel_config.anchor_gap, |value| {
|
||||||
Message::AnchorGap(value)
|
Message::AnchorGap(value)
|
||||||
}),
|
}),
|
||||||
))
|
))
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[extend_label],
|
&descriptions[extend_label],
|
||||||
toggler(None, panel_config.expand_to_edges, |value| {
|
toggler(None, panel_config.expand_to_edges, |value| {
|
||||||
Message::ExtendToEdge(value)
|
Message::ExtendToEdge(value)
|
||||||
}),
|
}),
|
||||||
))
|
))
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[appearance],
|
&descriptions[appearance],
|
||||||
dropdown(
|
dropdown(
|
||||||
inner.backgrounds.as_slice(),
|
inner.backgrounds.as_slice(),
|
||||||
|
|
|
||||||
|
|
@ -1223,7 +1223,7 @@ pub fn settings() -> Section<crate::pages::Message> {
|
||||||
|
|
||||||
children.push({
|
children.push({
|
||||||
let mut column = list_column()
|
let mut column = list_column()
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[same_label],
|
&descriptions[same_label],
|
||||||
toggler(
|
toggler(
|
||||||
None,
|
None,
|
||||||
|
|
@ -1231,10 +1231,10 @@ pub fn settings() -> Section<crate::pages::Message> {
|
||||||
Message::SameWallpaper,
|
Message::SameWallpaper,
|
||||||
),
|
),
|
||||||
))
|
))
|
||||||
.add(settings::flex_item(&descriptions[fit_label], wallpaper_fit));
|
.add(settings::item(&descriptions[fit_label], wallpaper_fit));
|
||||||
|
|
||||||
if show_slideshow_toggle {
|
if show_slideshow_toggle {
|
||||||
column = column.add(settings::flex_item(
|
column = column.add(settings::item(
|
||||||
&descriptions[slide_label],
|
&descriptions[slide_label],
|
||||||
toggler(None, slideshow_enabled, Message::Slideshow),
|
toggler(None, slideshow_enabled, Message::Slideshow),
|
||||||
));
|
));
|
||||||
|
|
@ -1243,7 +1243,7 @@ pub fn settings() -> Section<crate::pages::Message> {
|
||||||
// The rotation frequency dropdown should only be shown when the slideshow is enabled.
|
// The rotation frequency dropdown should only be shown when the slideshow is enabled.
|
||||||
if slideshow_enabled {
|
if slideshow_enabled {
|
||||||
column
|
column
|
||||||
.add(settings::flex_item(
|
.add(settings::item(
|
||||||
&descriptions[change_label],
|
&descriptions[change_label],
|
||||||
dropdown(
|
dropdown(
|
||||||
&page.rotation_options,
|
&page.rotation_options,
|
||||||
|
|
|
||||||
|
|
@ -1001,7 +1001,7 @@ pub fn display_configuration() -> Section<crate::pages::Message> {
|
||||||
|
|
||||||
let display_options = (page.show_display_options && active_output.enabled).then(|| {
|
let display_options = (page.show_display_options && active_output.enabled).then(|| {
|
||||||
list_column()
|
list_column()
|
||||||
.add(widget::settings::flex_item(
|
.add(widget::settings::item(
|
||||||
&descriptions[resolution],
|
&descriptions[resolution],
|
||||||
dropdown(
|
dropdown(
|
||||||
&page.cache.resolutions,
|
&page.cache.resolutions,
|
||||||
|
|
@ -1009,7 +1009,7 @@ pub fn display_configuration() -> Section<crate::pages::Message> {
|
||||||
Message::Resolution,
|
Message::Resolution,
|
||||||
),
|
),
|
||||||
))
|
))
|
||||||
.add(widget::settings::flex_item(
|
.add(widget::settings::item(
|
||||||
&descriptions[refresh_rate],
|
&descriptions[refresh_rate],
|
||||||
dropdown(
|
dropdown(
|
||||||
&page.cache.refresh_rates,
|
&page.cache.refresh_rates,
|
||||||
|
|
@ -1017,7 +1017,7 @@ pub fn display_configuration() -> Section<crate::pages::Message> {
|
||||||
Message::RefreshRate,
|
Message::RefreshRate,
|
||||||
),
|
),
|
||||||
))
|
))
|
||||||
.add(widget::settings::flex_item(
|
.add(widget::settings::item(
|
||||||
&descriptions[scale],
|
&descriptions[scale],
|
||||||
dropdown(
|
dropdown(
|
||||||
&["50%", "75%", "100%", "125%", "150%", "175%", "200%"],
|
&["50%", "75%", "100%", "125%", "150%", "175%", "200%"],
|
||||||
|
|
@ -1025,7 +1025,7 @@ pub fn display_configuration() -> Section<crate::pages::Message> {
|
||||||
Message::Scale,
|
Message::Scale,
|
||||||
),
|
),
|
||||||
))
|
))
|
||||||
.add(widget::settings::flex_item(
|
.add(widget::settings::item(
|
||||||
&descriptions[orientation],
|
&descriptions[orientation],
|
||||||
dropdown(
|
dropdown(
|
||||||
&page.cache.orientations,
|
&page.cache.orientations,
|
||||||
|
|
@ -1060,11 +1060,11 @@ pub fn display_configuration() -> Section<crate::pages::Message> {
|
||||||
|| !active_output.enabled)
|
|| !active_output.enabled)
|
||||||
.then(|| {
|
.then(|| {
|
||||||
list_column()
|
list_column()
|
||||||
.add(widget::settings::flex_item(
|
.add(widget::settings::item(
|
||||||
&descriptions[enable_label],
|
&descriptions[enable_label],
|
||||||
toggler(None, active_output.enabled, Message::DisplayToggle),
|
toggler(None, active_output.enabled, Message::DisplayToggle),
|
||||||
))
|
))
|
||||||
.add(widget::settings::flex_item(
|
.add(widget::settings::item(
|
||||||
&descriptions[mirroring_label],
|
&descriptions[mirroring_label],
|
||||||
widget::dropdown::multi::dropdown(
|
widget::dropdown::multi::dropdown(
|
||||||
&page.mirror_menu,
|
&page.mirror_menu,
|
||||||
|
|
|
||||||
|
|
@ -152,7 +152,7 @@ fn format() -> Section<crate::pages::Message> {
|
||||||
)
|
)
|
||||||
// First day of week
|
// First day of week
|
||||||
.add(
|
.add(
|
||||||
settings::item::builder(§ion.descriptions[first]).flex_control(dropdown(
|
settings::item::builder(§ion.descriptions[first]).control(dropdown(
|
||||||
&*WEEKDAYS,
|
&*WEEKDAYS,
|
||||||
match page.first_day_of_week {
|
match page.first_day_of_week {
|
||||||
4 => Some(0), // friday
|
4 => Some(0), // friday
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue