zeta: Show keybinding on rating buttons (#21853)

<img width="800" alt="Screenshot 2024-12-11 at 10 57 00"
src="https://github.com/user-attachments/assets/6055639c-5b38-444d-b76d-bf7584a82efc"
/>

Release Notes:

- N/A
This commit is contained in:
Danilo Leal 2024-12-11 11:54:39 -03:00 committed by GitHub
parent f8b6d71670
commit db7e38464a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -8,7 +8,7 @@ use language::{language_settings, OffsetRangeExt};
use settings::Settings; use settings::Settings;
use theme::ThemeSettings; use theme::ThemeSettings;
use ui::{prelude::*, List, ListItem, ListItemSpacing, TintColor, Tooltip}; use ui::{prelude::*, KeyBinding, List, ListItem, ListItemSpacing, TintColor, Tooltip};
use workspace::{ModalView, Workspace}; use workspace::{ModalView, Workspace};
actions!( actions!(
@ -413,6 +413,11 @@ impl RateCompletionModal {
.gap_1() .gap_1()
.child( .child(
Button::new("bad", "Bad Completion") Button::new("bad", "Bad Completion")
.key_binding(KeyBinding::for_action_in(
&ThumbsDown,
&self.focus_handle(cx),
cx,
))
.style(ButtonStyle::Tinted(TintColor::Negative)) .style(ButtonStyle::Tinted(TintColor::Negative))
.icon(IconName::ThumbsDown) .icon(IconName::ThumbsDown)
.icon_size(IconSize::Small) .icon_size(IconSize::Small)
@ -433,6 +438,11 @@ impl RateCompletionModal {
) )
.child( .child(
Button::new("good", "Good Completion") Button::new("good", "Good Completion")
.key_binding(KeyBinding::for_action_in(
&ThumbsUp,
&self.focus_handle(cx),
cx,
))
.style(ButtonStyle::Tinted(TintColor::Positive)) .style(ButtonStyle::Tinted(TintColor::Positive))
.icon(IconName::ThumbsUp) .icon(IconName::ThumbsUp)
.icon_size(IconSize::Small) .icon_size(IconSize::Small)
@ -456,9 +466,6 @@ impl Render for RateCompletionModal {
h_flex() h_flex()
.key_context("RateCompletionModal") .key_context("RateCompletionModal")
.track_focus(&self.focus_handle) .track_focus(&self.focus_handle)
.focus(|this| {
this.border_1().border_color(cx.theme().colors().border_focused)
})
.on_action(cx.listener(Self::dismiss)) .on_action(cx.listener(Self::dismiss))
.on_action(cx.listener(Self::confirm)) .on_action(cx.listener(Self::confirm))
.on_action(cx.listener(Self::select_prev)) .on_action(cx.listener(Self::select_prev))