about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--profanity.c30
-rw-r--r--title_bar.c2
-rw-r--r--windows.c12
-rw-r--r--windows.h1
4 files changed, 33 insertions, 12 deletions
diff --git a/profanity.c b/profanity.c
index e06ac12d..e34b6106 100644
--- a/profanity.c
+++ b/profanity.c
@@ -58,25 +58,35 @@ static void profanity_event_loop(int *ch, char *cmd, int *size)
 
     // determine if they changed windows
     if (*ch == KEY_F(1)) {
-        switch_to(0);
+        if (is_active(0))
+            switch_to(0);
     } else if (*ch == KEY_F(2)) {
-        switch_to(1);
+        if (is_active(1))
+            switch_to(1);
     } else if (*ch == KEY_F(3)) {
-        switch_to(2);
+        if (is_active(2))
+            switch_to(2);
     } else if (*ch == KEY_F(4)) {
-        switch_to(3);
+        if (is_active(3))
+            switch_to(3);
     } else if (*ch == KEY_F(5)) {
-        switch_to(4);
+        if (is_active(4))
+            switch_to(4);
     } else if (*ch == KEY_F(6)) {
-        switch_to(5);
+        if (is_active(5))
+            switch_to(5);
     } else if (*ch == KEY_F(7)) {
-        switch_to(6);
+        if (is_active(6))
+            switch_to(6);
     } else if (*ch == KEY_F(8)) {
-        switch_to(7);
+        if (is_active(7))
+            switch_to(7);
     } else if (*ch == KEY_F(9)) {
-        switch_to(8);
+        if (is_active(8))
+            switch_to(8);
     } else if (*ch == KEY_F(10)) {
-        switch_to(9);
+        if (is_active(9))
+            switch_to(9);
     }
 
     // get another character from the command box
diff --git a/title_bar.c b/title_bar.c
index 130afa74..27b2855e 100644
--- a/title_bar.c
+++ b/title_bar.c
@@ -5,7 +5,7 @@ static WINDOW *title_bar;
 
 void create_title_bar(void)
 {
-    char *title = "Profanity";
+    char *title = "Profanity. Type /help for help information.";
 
     int rows, cols;
     getmaxyx(stdscr, rows, cols);
diff --git a/windows.c b/windows.c
index 60c4201a..8725a7d7 100644
--- a/windows.c
+++ b/windows.c
@@ -39,8 +39,16 @@ void gui_close(void)
     endwin();
 }
 
-void switch_to(int i)
+int is_active(int i)
 {
+    if (strcmp(wins[i].from, "") == 0)
+        return FALSE;
+    else
+        return TRUE;
+}
+
+void switch_to(int i)
+{    
     touchwin(wins[i].win);
     wrefresh(wins[i].win);
     curr_win = i;
@@ -64,6 +72,8 @@ void close_win(void)
     // go back to console window
     touchwin(wins[0].win);
     wrefresh(wins[0].win);
+
+    title_bar_show("Console, type /help for help information");
 }
 
 int in_chat(void)
diff --git a/windows.h b/windows.h
index 0614bbdc..37d5f1c9 100644
--- a/windows.h
+++ b/windows.h
@@ -32,6 +32,7 @@ void inp_get_password(char *passwd);
 void gui_init(void);
 void gui_close(void);
 void title_bar_show(char *title);
+int is_active(int i);
 void switch_to(int i);
 void close_win(void);
 int in_chat(void);