Calendar · Agenda and people: an agenda, an event's details, its guests
AgendaView lists the days ahead under their names, whole days first, then by the hour, and leaves out days with nothing; it rides on lists::Sections, so a press or an arrow selects and Enter opens. An empty stretch says nothing is planned. EventPopover is an event's chip that opens its details: its title in its hue, when and where, who is asked, and Edit and Delete when the owner handles them. It opens through Popover::with_opener, which now hands any element the toggle and keeps focus, placement and every way out in the popover. AttendeeList counts the answers and lists each guest with their answer, the organizer first. A hue worn in a row is now data_display::color_mark, for mail labels and events alike. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
b68f2bf1d5
commit
a506ddc98c
17 files changed
+940
-37
No files matched your search
+3
-10
@@ -7,13 +7,14 @@ use gpui::{
|
||||
};
|
||||
|
||||
use crate::{
|
||||
data_display::color_mark,
|
||||
forms::{
|
||||
Choice, Down, Enter, OnValue, OnValues, Pick, SearchInput, TextInput, Up, marked_row,
|
||||
reveal, revealer,
|
||||
},
|
||||
layout::on_axis,
|
||||
primitives::IconName,
|
||||
theme::{ActiveTheme, IconSize, TextSize},
|
||||
theme::{ActiveTheme, TextSize},
|
||||
};
|
||||
|
||||
/// A label: its key, its name, and its hue among the theme's chart colors.
|
||||
@@ -36,15 +37,7 @@ impl Label {
|
||||
|
||||
/// Label `name`'s dot in the chart color at `hue`, centered in an icon's box.
|
||||
pub(super) fn hue_dot(name: &str, hue: usize, cx: &App) -> Div {
|
||||
let theme = cx.theme();
|
||||
let tint = theme.colors.hue(hue, format_args!("label {name}"));
|
||||
div()
|
||||
.flex_none()
|
||||
.size(theme.icon_size(IconSize::Sm))
|
||||
.flex()
|
||||
.items_center()
|
||||
.justify_center()
|
||||
.child(div().size(theme.status_dot()).rounded_full().bg(tint))
|
||||
color_mark(cx.theme().colors.hue(hue, format_args!("label {name}")), cx)
|
||||
}
|
||||
|
||||
/// The search field, the row under the keyboard, the query it was set for, and the list's scroll.
|
||||
|
||||
Reference in new issue
Block a user