seperate out channel styles in theme
This commit is contained in:
parent
d05e8852d3
commit
d13cedb248
3 changed files with 52 additions and 6 deletions
|
@ -1550,7 +1550,7 @@ impl CollabPanel {
|
||||||
})
|
})
|
||||||
.unwrap_or(false);
|
.unwrap_or(false);
|
||||||
|
|
||||||
const FACEPILE_LIMIT: usize = 4;
|
const FACEPILE_LIMIT: usize = 3;
|
||||||
|
|
||||||
MouseEventHandler::new::<Channel, _>(channel.id as usize, cx, |state, cx| {
|
MouseEventHandler::new::<Channel, _>(channel.id as usize, cx, |state, cx| {
|
||||||
Flex::row()
|
Flex::row()
|
||||||
|
@ -1563,9 +1563,9 @@ impl CollabPanel {
|
||||||
.left(),
|
.left(),
|
||||||
)
|
)
|
||||||
.with_child(
|
.with_child(
|
||||||
Label::new(channel.name.clone(), theme.contact_username.text.clone())
|
Label::new(channel.name.clone(), theme.channel_name.text.clone())
|
||||||
.contained()
|
.contained()
|
||||||
.with_style(theme.contact_username.container)
|
.with_style(theme.channel_name.container)
|
||||||
.aligned()
|
.aligned()
|
||||||
.left()
|
.left()
|
||||||
.flex(1., true),
|
.flex(1., true),
|
||||||
|
@ -1583,7 +1583,7 @@ impl CollabPanel {
|
||||||
.filter_map(|user| {
|
.filter_map(|user| {
|
||||||
Some(
|
Some(
|
||||||
Image::from_data(user.avatar.clone()?)
|
Image::from_data(user.avatar.clone()?)
|
||||||
.with_style(theme.contact_avatar),
|
.with_style(theme.channel_avatar),
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
.take(FACEPILE_LIMIT),
|
.take(FACEPILE_LIMIT),
|
||||||
|
@ -1605,9 +1605,9 @@ impl CollabPanel {
|
||||||
.constrained()
|
.constrained()
|
||||||
.with_height(theme.row_height)
|
.with_height(theme.row_height)
|
||||||
.contained()
|
.contained()
|
||||||
.with_style(*theme.contact_row.style_for(is_selected || is_active, state))
|
.with_style(*theme.channel_row.style_for(is_selected || is_active, state))
|
||||||
.with_padding_left(
|
.with_padding_left(
|
||||||
theme.contact_row.default_style().padding.left
|
theme.channel_row.default_style().padding.left
|
||||||
+ theme.channel_indent * depth as f32,
|
+ theme.channel_indent * depth as f32,
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
|
@ -237,10 +237,13 @@ pub struct CollabPanel {
|
||||||
pub subheader_row: Toggleable<Interactive<ContainedText>>,
|
pub subheader_row: Toggleable<Interactive<ContainedText>>,
|
||||||
pub leave_call: Interactive<ContainedText>,
|
pub leave_call: Interactive<ContainedText>,
|
||||||
pub contact_row: Toggleable<Interactive<ContainerStyle>>,
|
pub contact_row: Toggleable<Interactive<ContainerStyle>>,
|
||||||
|
pub channel_row: Toggleable<Interactive<ContainerStyle>>,
|
||||||
|
pub channel_name: ContainedText,
|
||||||
pub row_height: f32,
|
pub row_height: f32,
|
||||||
pub project_row: Toggleable<Interactive<ProjectRow>>,
|
pub project_row: Toggleable<Interactive<ProjectRow>>,
|
||||||
pub tree_branch: Toggleable<Interactive<TreeBranch>>,
|
pub tree_branch: Toggleable<Interactive<TreeBranch>>,
|
||||||
pub contact_avatar: ImageStyle,
|
pub contact_avatar: ImageStyle,
|
||||||
|
pub channel_avatar: ImageStyle,
|
||||||
pub extra_participant_label: ContainedText,
|
pub extra_participant_label: ContainedText,
|
||||||
pub contact_status_free: ContainerStyle,
|
pub contact_status_free: ContainerStyle,
|
||||||
pub contact_status_busy: ContainerStyle,
|
pub contact_status_busy: ContainerStyle,
|
||||||
|
|
|
@ -118,6 +118,38 @@ export default function contacts_panel(): any {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const item_row = toggleable({
|
||||||
|
base: interactive({
|
||||||
|
base: {
|
||||||
|
padding: {
|
||||||
|
left: SPACING,
|
||||||
|
right: SPACING,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
state: {
|
||||||
|
clicked: {
|
||||||
|
background: background(layer, "pressed"),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
state: {
|
||||||
|
inactive: {
|
||||||
|
hovered: {
|
||||||
|
background: background(layer, "hovered"),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
active: {
|
||||||
|
default: {
|
||||||
|
...text(layer, "ui_sans", "active", { size: "sm" }),
|
||||||
|
background: background(layer, "active"),
|
||||||
|
},
|
||||||
|
clicked: {
|
||||||
|
background: background(layer, "pressed"),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...collab_modals(),
|
...collab_modals(),
|
||||||
log_in_button: text_button(),
|
log_in_button: text_button(),
|
||||||
|
@ -198,6 +230,13 @@ export default function contacts_panel(): any {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
|
channel_row: item_row,
|
||||||
|
channel_name: {
|
||||||
|
...text(layer, "ui_sans", { size: "sm" }),
|
||||||
|
margin: {
|
||||||
|
left: NAME_MARGIN,
|
||||||
|
},
|
||||||
|
},
|
||||||
list_empty_label_container: {
|
list_empty_label_container: {
|
||||||
margin: {
|
margin: {
|
||||||
left: NAME_MARGIN,
|
left: NAME_MARGIN,
|
||||||
|
@ -245,6 +284,10 @@ export default function contacts_panel(): any {
|
||||||
corner_radius: 10,
|
corner_radius: 10,
|
||||||
width: 20,
|
width: 20,
|
||||||
},
|
},
|
||||||
|
channel_avatar: {
|
||||||
|
corner_radius: 10,
|
||||||
|
width: 20,
|
||||||
|
},
|
||||||
extra_participant_label: {
|
extra_participant_label: {
|
||||||
corner_radius: 10,
|
corner_radius: 10,
|
||||||
padding: {
|
padding: {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue