resizable ui

This commit is contained in:
William Casarin
2023-07-06 13:10:28 -07:00
parent 12dbdf6043
commit 5fec8bd079

View File

@@ -4,7 +4,7 @@ use crate::contacts::Contacts;
use crate::fonts::setup_fonts; use crate::fonts::setup_fonts;
use crate::images::fetch_img; use crate::images::fetch_img;
use crate::{Error, Result}; use crate::{Error, Result};
use egui::{ColorImage, Context, TextureHandle, TextureId}; use egui::{ColorImage, Context, Key, TextureHandle, TextureId};
use enostr::{ClientMessage, EventId, Filter, Profile, Pubkey, RelayEvent, RelayMessage}; use enostr::{ClientMessage, EventId, Filter, Profile, Pubkey, RelayEvent, RelayMessage};
use poll_promise::Promise; use poll_promise::Promise;
use std::collections::{HashMap, HashSet}; use std::collections::{HashMap, HashSet};
@@ -93,20 +93,25 @@ fn send_initial_filters(pool: &mut RelayPool, relay_url: &str) {
} }
} }
fn try_process_event(damus: &mut Damus) { fn try_process_event(damus: &mut Damus, ctx: &egui::Context) {
let m_ev = damus.pool.try_recv(); let amount = 0.1;
if m_ev.is_none() { if ctx.input(|i| i.key_pressed(egui::Key::PlusEquals)) {
return; ctx.set_pixels_per_point(ctx.pixels_per_point() + amount);
} else if ctx.input(|i| i.key_pressed(egui::Key::Minus)) {
ctx.set_pixels_per_point(ctx.pixels_per_point() - amount);
} }
let ev = m_ev.unwrap();
let relay = ev.relay.to_owned();
match ev.event { // pool stuff
RelayEvent::Opened => send_initial_filters(&mut damus.pool, &relay), if let Some(ev) = damus.pool.try_recv() {
// TODO: handle reconnects let relay = ev.relay.to_owned();
RelayEvent::Closed => warn!("{} connection closed", &relay),
RelayEvent::Other(msg) => debug!("other event {:?}", &msg), match ev.event {
RelayEvent::Message(msg) => process_message(damus, &relay, msg), RelayEvent::Opened => send_initial_filters(&mut damus.pool, &relay),
// TODO: handle reconnects
RelayEvent::Closed => warn!("{} connection closed", &relay),
RelayEvent::Other(msg) => debug!("other event {:?}", &msg),
RelayEvent::Message(msg) => process_message(damus, &relay, msg),
}
} }
//info!("recv {:?}", ev) //info!("recv {:?}", ev)
} }
@@ -119,7 +124,7 @@ fn update_damus(damus: &mut Damus, ctx: &egui::Context) {
damus.state = DamusState::Initialized; damus.state = DamusState::Initialized;
} }
try_process_event(damus); try_process_event(damus, ctx);
} }
fn process_metadata_event(damus: &mut Damus, ev: &Event) { fn process_metadata_event(damus: &mut Damus, ev: &Event) {