1
0
mirror of https://github.com/Tha14/toxic.git synced 2025-06-30 15:26:45 +02:00

fix window cleanup bugs & give prompt its own cleanup func

This commit is contained in:
Jfreegman
2014-07-08 19:24:44 -04:00
parent 5b9fd70f30
commit 9fa5a3fdb6
8 changed files with 52 additions and 37 deletions

View File

@ -254,17 +254,12 @@ int add_window(Tox *m, ToxWindow w)
return -1;
}
/* Deletes window w and cleans up */
void del_window(ToxWindow *w)
void set_active_window(int index)
{
active_window = windows; /* Go to prompt screen */
if (index < 0 || index >= MAX_WINDOWS_NUM)
return;
delwin(w->window);
memset(w, 0, sizeof(ToxWindow));
clear();
refresh();
--num_active_windows;
active_window = windows + index;
}
/* Shows next window when tab or back-tab is pressed */
@ -288,12 +283,17 @@ void set_next_window(int ch)
}
}
void set_active_window(int index)
/* Deletes window w and cleans up */
void del_window(ToxWindow *w)
{
if (index < 0 || index >= MAX_WINDOWS_NUM)
return;
set_active_window(0); /* Go to prompt screen */
active_window = windows + index;
delwin(w->window);
memset(w, 0, sizeof(ToxWindow));
clear();
refresh();
--num_active_windows;
}
ToxWindow *init_windows(Tox *m)
@ -497,6 +497,8 @@ int get_num_active_windows(void)
/* destroys all chat and groupchat windows (should only be called on shutdown) */
void kill_all_windows(void)
{
kill_prompt_window(prompt);
int i;
for (i = 0; i < MAX_WINDOWS_NUM; ++i) {