commit bdd0ef4c5c3bd04c62af1302799fd18f3d33bcd3
parent 8b7914e39513c0fce36cc12fa6b5041898cee0b4
Author: William Casarin <jb55@jb55.com>
Date: Thu, 1 May 2025 20:50:56 -0700
ui: fix a bunch of missing hover pointers
let's try to keep on top of these
Signed-off-by: William Casarin <jb55@jb55.com>
Diffstat:
2 files changed, 33 insertions(+), 3 deletions(-)
diff --git a/crates/notedeck_chrome/src/chrome.rs b/crates/notedeck_chrome/src/chrome.rs
@@ -206,6 +206,9 @@ impl Chrome {
let resp = ui
.add(Button::new("☀").frame(false))
.on_hover_text("Switch to light mode");
+ if resp.hovered() {
+ notedeck_ui::show_pointer(ui);
+ }
if resp.clicked() {
Some(ChromePanelAction::SaveTheme(ThemePreference::Light))
} else {
@@ -216,6 +219,9 @@ impl Chrome {
let resp = ui
.add(Button::new("🌙").frame(false))
.on_hover_text("Switch to dark mode");
+ if resp.hovered() {
+ notedeck_ui::show_pointer(ui);
+ }
if resp.clicked() {
Some(ChromePanelAction::SaveTheme(ThemePreference::Dark))
} else {
@@ -236,6 +242,14 @@ impl Chrome {
));
}
+ if pfp_resp.hovered()
+ || settings_resp.hovered()
+ || support_resp.hovered()
+ || wallet_resp.hovered()
+ {
+ notedeck_ui::show_pointer(ui);
+ }
+
if pfp_resp.clicked() {
Some(ChromePanelAction::Account)
} else if settings_resp.clicked() {
@@ -287,14 +301,22 @@ impl Chrome {
ui.add(milestone_name());
ui.add_space(16.0);
//let dark_mode = ui.ctx().style().visuals.dark_mode;
- if columns_button(ui).clicked() {
- self.active = 0;
+ {
+ let col_resp = columns_button(ui);
+ if col_resp.clicked() {
+ self.active = 0;
+ } else if col_resp.hovered() {
+ notedeck_ui::show_pointer(ui);
+ }
}
ui.add_space(32.0);
if let Some(dave) = self.get_dave() {
- if dave_button(dave.avatar_mut(), ui).clicked() {
+ let dave_resp = dave_button(dave.avatar_mut(), ui);
+ if dave_resp.clicked() {
self.active = 1;
+ } else if dave_resp.hovered() {
+ notedeck_ui::show_pointer(ui);
}
}
}
diff --git a/crates/notedeck_ui/src/note/mod.rs b/crates/notedeck_ui/src/note/mod.rs
@@ -663,16 +663,24 @@ fn render_note_actionbar(
if reply_resp.clicked() {
break 's Some(NoteAction::Reply(to_noteid(note_id)));
+ } else if reply_resp.hovered() {
+ crate::show_pointer(ui);
}
if quote_resp.clicked() {
break 's Some(NoteAction::Quote(to_noteid(note_id)));
+ } else if quote_resp.hovered() {
+ crate::show_pointer(ui);
}
let Some(zap_resp) = zap_resp else {
break 's None;
};
+ if zap_resp.hovered() {
+ crate::show_pointer(ui);
+ }
+
if !zap_resp.clicked() {
break 's None;
}