use slightly better carousel id

still need to include timeline...

Signed-off-by: William Casarin <jb55@jb55.com>
This commit is contained in:
William Casarin
2024-07-04 14:36:53 -07:00
parent 0e4aad4184
commit b00dc735e1

View File

@@ -1,6 +1,5 @@
use crate::ui::note::NoteOptions; use crate::ui::note::NoteOptions;
use crate::{colors, ui, Damus}; use crate::{colors, ui, Damus};
use egui::scroll_area::ScrollBarVisibility;
use egui::{Color32, Hyperlink, Image, RichText}; use egui::{Color32, Hyperlink, Image, RichText};
use nostrdb::{BlockType, Mention, Note, NoteKey, Transaction}; use nostrdb::{BlockType, Mention, Note, NoteKey, Transaction};
use tracing::warn; use tracing::warn;
@@ -189,14 +188,15 @@ fn render_note_contents(
if !images.is_empty() && !damus.textmode { if !images.is_empty() && !damus.textmode {
ui.add_space(2.0); ui.add_space(2.0);
image_carousel(ui, images); let carousel_id = egui::Id::new(("carousel", note.key().expect("expected tx note")));
image_carousel(ui, images, carousel_id);
ui.add_space(2.0); ui.add_space(2.0);
} }
resp resp
} }
fn image_carousel(ui: &mut egui::Ui, images: Vec<String>) { fn image_carousel(ui: &mut egui::Ui, images: Vec<String>, carousel_id: egui::Id) {
// let's make sure everything is within our area // let's make sure everything is within our area
let height = 360.0; let height = 360.0;
@@ -204,7 +204,7 @@ fn image_carousel(ui: &mut egui::Ui, images: Vec<String>) {
ui.add_sized([width, height], |ui: &mut egui::Ui| { ui.add_sized([width, height], |ui: &mut egui::Ui| {
egui::ScrollArea::horizontal() egui::ScrollArea::horizontal()
.scroll_bar_visibility(ScrollBarVisibility::AlwaysVisible) .id_source(carousel_id)
.show(ui, |ui| { .show(ui, |ui| {
ui.horizontal(|ui| { ui.horizontal(|ui| {
for image in images { for image in images {