diff options
author | James Booth <boothj5@gmail.com> | 2013-11-07 21:57:41 +0000 |
---|---|---|
committer | James Booth <boothj5@gmail.com> | 2013-11-07 21:57:41 +0000 |
commit | 1248f49cfaf9806dfcf40e0d0f6fe854d693d6a3 (patch) | |
tree | 0788431d3a3f17185580ef37268bf4097ee2f53a | |
parent | 4abdb023961e94581f34ae4fede17532e05c0e7c (diff) | |
parent | ac7ec7f2d182d75ea15c5b07009709f106f6e691 (diff) | |
download | profani-tty-1248f49cfaf9806dfcf40e0d0f6fe854d693d6a3.tar.gz |
Merge remote-tracking branch 'tsenart/connect-on-startup'
-rw-r--r-- | src/main.c | 4 | ||||
-rw-r--r-- | src/profanity.c | 10 | ||||
-rw-r--r-- | src/profanity.h | 2 |
3 files changed, 13 insertions, 3 deletions
diff --git a/src/main.c b/src/main.c index 253c9237..c3065bd3 100644 --- a/src/main.c +++ b/src/main.c @@ -32,6 +32,7 @@ static gboolean disable_tls = FALSE; static gboolean version = FALSE; static char *log = "INFO"; +static char *account_name = NULL; int main(int argc, char **argv) @@ -40,6 +41,7 @@ main(int argc, char **argv) { { "version", 'v', 0, G_OPTION_ARG_NONE, &version, "Show version information", NULL }, { "disable-tls", 'd', 0, G_OPTION_ARG_NONE, &disable_tls, "Disable TLS", NULL }, + { "account", 'a', 0, G_OPTION_ARG_STRING, &account_name, "Auto connect to an account on start-up" }, { "log",'l', 0, G_OPTION_ARG_STRING, &log, "Set logging levels, DEBUG, INFO (default), WARN, ERROR", "LEVEL" }, { NULL } }; @@ -77,7 +79,7 @@ main(int argc, char **argv) return 0; } - prof_run(disable_tls, log); + prof_run(disable_tls, log, account_name); return 0; } diff --git a/src/profanity.c b/src/profanity.c index 4c621ffa..38be5531 100644 --- a/src/profanity.c +++ b/src/profanity.c @@ -58,7 +58,7 @@ static void _create_directories(void); static gboolean idle = FALSE; void -prof_run(const int disable_tls, char *log_level) +prof_run(const int disable_tls, char *log_level, char *account_name) { _init(disable_tls, log_level); log_info("Starting main event loop"); @@ -70,6 +70,14 @@ prof_run(const int disable_tls, char *log_level) char inp[INP_WIN_MAX]; int size = 0; + ui_refresh(); + + if (account_name != NULL) { + char *cmd = "/connect"; + snprintf(inp, sizeof(inp), "%s %s", cmd, account_name); + _process_input(inp); + } + while(cmd_result == TRUE) { wint_t ch = ERR; size = 0; diff --git a/src/profanity.h b/src/profanity.h index 0cd59fd0..3dac6c3e 100644 --- a/src/profanity.h +++ b/src/profanity.h @@ -26,7 +26,7 @@ #include "resource.h" #include "xmpp/xmpp.h" -void prof_run(const int disable_tls, char *log_level); +void prof_run(const int disable_tls, char *log_level, char *account_name); void prof_handle_login_success(const char *jid, const char *altdomain); void prof_handle_login_account_success(char *account_name); |