diff --git a/CHANGELOG.md b/CHANGELOG.md index d6a4e10..b02376a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,8 +16,9 @@ Procedure when bumping the version number: ### Added - Config file -- `ephemeral` config option - `data_dir` config option +- `ephemeral` config option +- `offline` config option - `euph.rooms..autojoin` config option - `euph.rooms..username` config option - `euph.rooms..force_username` config option diff --git a/src/config.rs b/src/config.rs index dedfe21..d02b670 100644 --- a/src/config.rs +++ b/src/config.rs @@ -26,6 +26,8 @@ pub struct Config { pub data_dir: Option, #[serde(default)] pub ephemeral: bool, + #[serde(default)] + pub offline: bool, pub euph: Euph, } diff --git a/src/ui/rooms.rs b/src/ui/rooms.rs index 91c1a43..54ef872 100644 --- a/src/ui/rooms.rs +++ b/src/ui/rooms.rs @@ -67,9 +67,11 @@ impl Rooms { euph_rooms: HashMap::new(), }; - for (name, config) in &config.euph.rooms { - if config.autojoin { - result.get_or_insert_room(name.clone()).connect(); + if !config.offline { + for (name, config) in &config.euph.rooms { + if config.autojoin { + result.get_or_insert_room(name.clone()).connect(); + } } }