Render status queue messages on the login page

This commit is contained in:
Mike Dilger 2023-12-14 08:39:53 +13:00
parent b917796858
commit a96badb7ce
2 changed files with 33 additions and 26 deletions

View File

@ -1025,28 +1025,7 @@ impl GossipUi {
ui.separator(); ui.separator();
} }
let messages = GLOBALS.status_queue.read().read_all(); self.render_status_queue_area(ui);
if ui
.add(Label::new(RichText::new(&messages[0]).strong()).sense(Sense::click()))
.clicked()
{
GLOBALS.status_queue.write().dismiss(0);
}
if ui
.add(Label::new(RichText::new(&messages[1]).small()).sense(Sense::click()))
.clicked()
{
GLOBALS.status_queue.write().dismiss(1);
}
if ui
.add(
Label::new(RichText::new(&messages[2]).weak().small())
.sense(Sense::click()),
)
.clicked()
{
GLOBALS.status_queue.write().dismiss(2);
}
}); });
// ---- "plus icon" ---- // ---- "plus icon" ----
@ -1899,6 +1878,28 @@ impl GossipUi {
y: self.current_scroll_offset, y: self.current_scroll_offset,
}) })
} }
fn render_status_queue_area(&self, ui: &mut Ui) {
let messages = GLOBALS.status_queue.read().read_all();
if ui
.add(Label::new(RichText::new(&messages[0])).sense(Sense::click()))
.clicked()
{
GLOBALS.status_queue.write().dismiss(0);
}
if ui
.add(Label::new(RichText::new(&messages[1]).small()).sense(Sense::click()))
.clicked()
{
GLOBALS.status_queue.write().dismiss(1);
}
if ui
.add(Label::new(RichText::new(&messages[2]).weak().small()).sense(Sense::click()))
.clicked()
{
GLOBALS.status_queue.write().dismiss(2);
}
}
} }
fn force_login(app: &mut GossipUi, ctx: &Context) { fn force_login(app: &mut GossipUi, ctx: &Context) {
@ -1943,6 +1944,11 @@ fn force_login(app: &mut GossipUi, ctx: &Context) {
ui.label("In case you cannot login, here is your escape hatch:"); ui.label("In case you cannot login, here is your escape hatch:");
you::offer_delete(app, ui); you::offer_delete(app, ui);
} }
ui.add_space(15.0);
ui.separator();
app.render_status_queue_area(ui);
}); });
} }

View File

@ -164,12 +164,13 @@ pub(super) fn update(app: &mut GossipUi, ctx: &Context, _frame: &mut eframe::Fra
ui.add( ui.add(
text_edit_line!(app, app.new_list_name) text_edit_line!(app, app.new_list_name)
.hint_text("Enter new list name") .hint_text("Enter new list name")
.desired_width(f32::INFINITY) .desired_width(f32::INFINITY),
); );
if ui.button("Rename").clicked() { if ui.button("Rename").clicked() {
let _ = GLOBALS let _ =
.storage GLOBALS
.rename_person_list(list, app.new_list_name.clone(), None); .storage
.rename_person_list(list, app.new_list_name.clone(), None);
app.renaming_list = None; app.renaming_list = None;
} }
}); });