settings ui: Add another batch of UX fixes and improvements (#39742)
Release Notes: - N/A
This commit is contained in:
@@ -126,11 +126,12 @@ impl Toggleable for TreeViewItem {
|
||||
impl RenderOnce for TreeViewItem {
|
||||
fn render(self, _window: &mut Window, cx: &mut App) -> impl IntoElement {
|
||||
let selected_bg = cx.theme().colors().element_active.opacity(0.5);
|
||||
|
||||
let selected_border = cx.theme().colors().border.opacity(0.6);
|
||||
let focused_border = cx.theme().colors().border_focused;
|
||||
let transparent_border = cx.theme().colors().border_transparent;
|
||||
let item_size = rems_from_px(28.);
|
||||
|
||||
let item_size = rems_from_px(28.);
|
||||
let indentation_line = h_flex().size(item_size).flex_none().justify_center().child(
|
||||
div()
|
||||
.w_px()
|
||||
@@ -149,14 +150,12 @@ impl RenderOnce for TreeViewItem {
|
||||
.cursor_pointer()
|
||||
.size_full()
|
||||
.relative()
|
||||
.when_some(self.tab_index, |this, index| this.tab_index(index))
|
||||
.map(|this| {
|
||||
let label = self.label;
|
||||
|
||||
if self.root_item {
|
||||
this.h(item_size)
|
||||
.px_1()
|
||||
.mb_1()
|
||||
.gap_2p5()
|
||||
.rounded_sm()
|
||||
.border_1()
|
||||
@@ -166,6 +165,7 @@ impl RenderOnce for TreeViewItem {
|
||||
})
|
||||
.focus(|s| s.border_color(focused_border))
|
||||
.hover(|s| s.bg(cx.theme().colors().element_hover))
|
||||
.when_some(self.tab_index, |this, index| this.tab_index(index))
|
||||
.child(
|
||||
Disclosure::new("toggle", self.expanded)
|
||||
.when_some(
|
||||
@@ -190,13 +190,13 @@ impl RenderOnce for TreeViewItem {
|
||||
.px_1()
|
||||
.rounded_sm()
|
||||
.border_1()
|
||||
.focusable()
|
||||
.border_color(transparent_border)
|
||||
.when(self.selected, |this| {
|
||||
this.border_color(selected_border).bg(selected_bg)
|
||||
})
|
||||
.in_focus(|s| s.border_color(focused_border))
|
||||
.focus(|s| s.border_color(focused_border))
|
||||
.hover(|s| s.bg(cx.theme().colors().element_hover))
|
||||
.when_some(self.tab_index, |this, index| this.tab_index(index))
|
||||
.child(
|
||||
Label::new(label)
|
||||
.when(!self.selected, |this| this.color(Color::Muted)),
|
||||
|
||||
Reference in New Issue
Block a user