Skip to content

gpuicn v0.9.6

Choose a tag to compare

@github-actions github-actions released this 05 Nov 04:16
· 15 commits to main since this release
c42360d

gpuicn v0.9.6

Fourteen requests from Matty: five new components for forms and scheduling,
interactive attachments, spelling, async selects, theme tokens and
multi-message copy. The runtime pins are unchanged: GPUI Kit 0.9.0 on
gpui-pre 0.3.11 and gpui-icons 0.6.0.

New components

  • Alert: an inline callout with an icon, title, description and actions,
    in Default, Destructive, Warning, Info and Success. Destructive and warning
    alerts are announced (#135).
  • Avatar Group: overlapping avatars with a +N chip, a hover tooltip and
    one accessible name that lists everyone (#140).
  • Calendar: a month grid with keyboard navigation, limits, today and a
    configurable first weekday, over a small CalendarDate type (#140).
  • Date Picker: an outline trigger that opens a Calendar (#140).
  • Date Time Picker: a calendar and a keyboard time field in one popover,
    with a 12- or 24-hour clock from the locale and date-and-time limits (#138).

Added

  • Avatar: a status dot on a resized avatar scales with it, and
    status_size sets it (#127).
  • Button: tint(color) derives fill, hover and readable text from one
    integration color (#134).
  • Command: CommandItem::description adds muted trailing text (#133).
  • Composer: triggers inside inline code and fenced blocks are ignored
    (#129); open_suggestions(range, items) opens the popup for a range the
    app chose, and accepting it emits ComposerEvent::AcceptRange (#136);
    set_misspellings underlines words (#139).
  • Field: Field::from_control takes a Checkbox or a RadioGroup (#135).
  • Input: focused inputs and textareas take an opaque fill (#135);
    Textarea::misspellings draws wavy underlines and a native suggestions
    menu (#139).
  • Markdown: MarkdownImages::placeholder shows a click-to-load
    ImagePlaceholder, and image_size reserves an image's own box (#131).
  • Message: copy_prefix makes a copy across messages read one line per
    message, such as Ada [12:24]: Thanks!; a copy inside one message is
    unchanged. selection_group does the same for other regions (#128).
  • MessageEmbed: action adds buttons and selects inside the card (#134).
  • Select: set_items replaces items while open for async results,
    keeping the query, value and highlight; set_loading shows a status row
    (#141).
  • Sidebar: sidebar_mention_badge, and group labels use the new muted
    token (#132).
  • Sortable: horizontal() for rows of chips, with a vertical drop line
    and Alt+Shift+Left and Right (#137).
  • Theme: optional link, mention_highlight,
    mention_highlight_foreground, new_messages, sidebar_muted_foreground,
    sidebar_badge and sidebar_badge_foreground tokens that fall back to
    their base tokens, settable from shadcn CSS; UiTheme::code_theme picks a
    code block palette (GitHub, Monokai, Solarized); UiTheme::opaque (#132).

Compatibility

UiColors and CommandItem gain public fields and ComposerEvent gains a
variant. Code that builds UiColors or CommandItem with a struct literal,
or matches ComposerEvent without a wildcard, needs the new fields (they
are None) or arm. FieldControl::field_focus_handle now has a default.

Upgrading

cargo install gpuicn-cli --version 0.9.6 --locked
gpuicn update --to 0.9.6

Crate users: cargo update -p gpuicn.