about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorJames Booth <boothj5@gmail.com>2015-04-30 21:23:43 +0100
committerJames Booth <boothj5@gmail.com>2015-04-30 21:23:43 +0100
commit0a6b76d6d36455a118d95b2815f1ab5f16707bff (patch)
treea8920f0f3deaf4061d1a039c59be065a6f7eff82 /src
parent2e75e5446060f64759dcc73c2f0a4967024f1627 (diff)
downloadprofani-tty-0a6b76d6d36455a118d95b2815f1ab5f16707bff.tar.gz
Removed some ui functions, inlined
Diffstat (limited to 'src')
-rw-r--r--src/command/commands.c22
-rw-r--r--src/ui/core.c16
-rw-r--r--src/ui/ui.h2
3 files changed, 13 insertions, 27 deletions
diff --git a/src/command/commands.c b/src/command/commands.c
index 3ef37fc1..f85af612 100644
--- a/src/command/commands.c
+++ b/src/command/commands.c
@@ -1331,7 +1331,9 @@ cmd_msg(gchar **args, struct cmd_help_t help)
         if (!chatwin) {
             chatwin = ui_ev_new_chat_win(barejid);
         }
-        ui_ev_focus_win((ProfWin*)chatwin);
+        if (!wins_is_current((ProfWin*)chatwin)) {
+            ui_ev_focus_win((ProfWin*)chatwin);
+        }
 
         if (msg) {
             cl_ev_send_msg(chatwin, msg);
@@ -3180,7 +3182,7 @@ cmd_close(gchar **args, struct cmd_help_t help)
     int count = 0;
 
     if (args[0] == NULL) {
-        index = ui_current_win_index();
+        index = wins_get_current_num();
     } else if (strcmp(args[0], "all") == 0) {
         count = ui_close_all_wins();
         if (count == 0) {
@@ -3215,19 +3217,15 @@ cmd_close(gchar **args, struct cmd_help_t help)
         return TRUE;
     }
 
-    if (!ui_win_exists(index)) {
+    ProfWin *window = wins_get_by_num(index);
+    if (!window) {
         cons_show("Window is not open.");
         return TRUE;
     }
 
     // check for unsaved form
     if (ui_win_has_unsaved_form(index)) {
-        ProfWin *window = wins_get_current();
-        if (wins_is_current(window)) {
-            ui_current_print_line("You have unsaved changes, use /form submit or /form cancel");
-        } else {
-            cons_show("Cannot close form window with unsaved changes, use /form submit or /form cancel");
-        }
+        ui_current_print_line("You have unsaved changes, use /form submit or /form cancel");
         return TRUE;
     }
 
@@ -3248,7 +3246,7 @@ cmd_leave(gchar **args, struct cmd_help_t help)
 {
     jabber_conn_status_t conn_status = jabber_get_connection_status();
     win_type_t win_type = ui_current_win_type();
-    int index = ui_current_win_index();
+    int index = wins_get_current_num();
 
     if (win_type != WIN_MUC) {
         cons_show("You can only use the /leave command in a chat room.");
@@ -4173,7 +4171,9 @@ cmd_otr(gchar **args, struct cmd_help_t help)
             if (!chatwin) {
                 chatwin = ui_ev_new_chat_win(barejid);
             }
-            ui_ev_focus_win((ProfWin*)chatwin);
+            if (!wins_is_current((ProfWin*)chatwin)) {
+                ui_ev_focus_win((ProfWin*)chatwin);
+            }
 
             if (ui_current_win_is_otr()) {
                 ui_current_print_formatted_line('!', 0, "You are already in an OTR session.");
diff --git a/src/ui/core.c b/src/ui/core.c
index b985e52b..59144223 100644
--- a/src/ui/core.c
+++ b/src/ui/core.c
@@ -282,13 +282,6 @@ ui_load_colours(void)
 }
 
 gboolean
-ui_win_exists(int index)
-{
-    ProfWin *window = wins_get_by_num(index);
-    return (window != NULL);
-}
-
-gboolean
 ui_xmlconsole_exists(void)
 {
     ProfXMLWin *xmlwin = wins_get_xmlconsole();
@@ -882,7 +875,8 @@ ui_switch_win(ProfWin *win)
 gboolean
 ui_switch_win_num(const int i)
 {
-    if (ui_win_exists(i)) {
+    ProfWin *window = wins_get_by_num(i);
+    if (window) {
         ProfWin *old_current = wins_get_current();
         if (old_current->type == WIN_MUC_CONFIG) {
             ProfMucConfWin *confwin = (ProfMucConfWin*)old_current;
@@ -1257,12 +1251,6 @@ ui_current_win_is_otr(void)
     }
 }
 
-int
-ui_current_win_index(void)
-{
-    return wins_get_current_num();
-}
-
 win_type_t
 ui_win_type(int index)
 {
diff --git a/src/ui/ui.h b/src/ui/ui.h
index e98a105e..e42505bc 100644
--- a/src/ui/ui.h
+++ b/src/ui/ui.h
@@ -98,7 +98,6 @@ int ui_close_read_wins(void);
 // current window actions
 void ui_clear_current(void);
 win_type_t ui_current_win_type(void);
-int ui_current_win_index(void);
 gboolean ui_current_win_is_otr(void);
 
 ProfChatWin *ui_get_current_chat(void);
@@ -110,7 +109,6 @@ void ui_win_error_line(ProfWin *window, const char * const msg);
 
 win_type_t ui_win_type(int index);
 void ui_close_win(int index);
-gboolean ui_win_exists(int index);
 int ui_win_unread(int index);
 char * ui_ask_password(void);