resizable ui
This commit is contained in:
33
src/app.rs
33
src/app.rs
@@ -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) {
|
||||||
|
|||||||
Reference in New Issue
Block a user