diff options
author | Ole Loots <ole@monochrom.net> | 2011-09-20 20:09:42 +0000 |
---|---|---|
committer | Ole Loots <ole@monochrom.net> | 2011-09-20 20:09:42 +0000 |
commit | 8b445036f3197b3d88d9cdf5ce2682c3fd526fc6 (patch) | |
tree | 271ee72e865152d3f72bda3bf512794aed9acba7 | |
parent | a77b08a762ffc1a6fd925f9324a342d235aafc92 (diff) | |
download | netsurf-8b445036f3197b3d88d9cdf5ce2682c3fd526fc6.tar.gz netsurf-8b445036f3197b3d88d9cdf5ce2682c3fd526fc6.tar.bz2 |
Set focus to next available window when gui_window is closed.
svn path=/trunk/netsurf/; revision=12824
-rwxr-xr-x | atari/gui.c | 20 | ||||
-rwxr-xr-x | atari/gui.h | 3 |
2 files changed, 16 insertions, 7 deletions
diff --git a/atari/gui.c b/atari/gui.c index 8b8c98e2b..221801645 100755 --- a/atari/gui.c +++ b/atari/gui.c @@ -186,7 +186,8 @@ void gui_poll(bool active) }
if( evnt.timer != 0 && !active ){
/* this suits for stuff with lower priority */
- hotlist_redraw();
+ //hotlist_redraw(); + atari_treeview_redraw( hl.tv );
}
}
@@ -256,12 +257,19 @@ void gui_window_destroy(struct gui_window *w) }
if( w->next != NULL ) {
w->next->prev = w->prev;
- }
- if( input_window == w ) {
- input_window = window_list;
- }
+ } free(w);
- w = NULL;
+ w = NULL; + + w = window_list; + int dummy=0; + while( w != NULL ) {
+ if( w->root ) { + input_window = w;
+ break;
+ }
+ w = w->next;
+ }
}
void gui_window_get_dimensions(struct gui_window *w, int *width, int *height,
diff --git a/atari/gui.h b/atari/gui.h index eb73598ba..826f6d52f 100755 --- a/atari/gui.h +++ b/atari/gui.h @@ -116,7 +116,8 @@ struct s_gui_win_root float scale; bool throbbing; char * title; - GRECT loc; /* current size of window on screen */ + /* current size of window on screen: */ + GRECT loc; }; /* |