AmendHub

Download:

jcs

/

wallops

/

amendments

/

144

main: If we have existing settings, auto-connect unless Cmd is held


jcs made amendment 144 about 1 month ago
--- main.c Mon Sep 23 15:45:39 2024 +++ main.c Sun Sep 14 09:42:28 2025 @@ -38,7 +38,8 @@ size_t xalloc_printf(const char *format, ...); void update_menu(void); void handle_exit(void); bool handle_menu(long menu_id); -void show_connect_dialog(void); +void show_connect_dialog(bool use_defaults); +void do_connect(void); void wallops_about(void); short @@ -95,7 +96,15 @@ main(void) #endif DrawMenuBar(); - show_connect_dialog(); + if (settings_load()) { + /* auto-connect unless cmd is held down */ + GetNextEvent(everyEvent, &event); + if (event.modifiers & cmdKey) + show_connect_dialog(false); + else + do_connect(); + } else + show_connect_dialog(true); for (;;) { wait_type = WAIT_TYPE_BACKGROUND; @@ -215,16 +224,22 @@ main(void) } void -show_connect_dialog(void) +show_connect_dialog(bool use_defaults) { bool valid; - valid = connect_dialog(!settings_load()); + valid = connect_dialog(use_defaults); update_menu(); if (!valid) return; + do_connect(); +} + +void +do_connect(void) +{ chatter_init(settings.server, settings.port, settings.password, settings.nick, settings.ident, settings.realname, settings.hide_motd, settings.channel); @@ -261,7 +276,7 @@ handle_menu(long menu_id) case FILE_MENU_ID: switch (LoWord(menu_id)) { case FILE_MENU_CONNECT_ID: - show_connect_dialog(); + show_connect_dialog(false); ret = true; break; case FILE_MENU_SETTINGS_ID: