diff options
author | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2010-04-27 22:40:28 +0000 |
---|---|---|
committer | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2010-04-27 22:40:28 +0000 |
commit | 74647b752d9d63ae86e824bf842f7a1cc7a61da8 (patch) | |
tree | a8237996208bd188549390214faf346070ae481c /amiga | |
parent | c1c25e479a10c6ab7f211fbcedd426ba33a4326b (diff) | |
download | netsurf-74647b752d9d63ae86e824bf842f7a1cc7a61da8.tar.gz netsurf-74647b752d9d63ae86e824bf842f7a1cc7a61da8.tar.bz2 |
Reformat all tabs when window size changes
svn path=/trunk/netsurf/; revision=10504
Diffstat (limited to 'amiga')
-rwxr-xr-x | amiga/gui.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/amiga/gui.c b/amiga/gui.c index 0b1948079..3ba3d8957 100755 --- a/amiga/gui.c +++ b/amiga/gui.c @@ -1400,15 +1400,29 @@ void ami_handle_msg(void) case WMHI_NEWSIZE: switch(node->Type) { + struct Node *tab = NULL, *ntab = NULL; + struct browser_window *bw = NULL; + case AMINS_WINDOW: ami_set_border_gadget_balance(gwin); ami_update_throbber(gwin,true); + + if(gwin->tabs) + { + tab = GetHead(&gwin->tab_list); + + do + { + ntab=GetSucc(tab); + GetClickTabNodeAttrs(tab, + TNA_UserData, &bw, + TAG_DONE); + bw->reformat_pending = true; + } while(tab=ntab); + } // fall through case AMINS_FRAME: - //GetAttr(SPACE_AreaBox,gwin->objects[GID_BROWSER],(ULONG *)&bbox); - //browser_reformat_pending = true; gwin->bw->reformat_pending = true; - //browser_window_reformat(gwin->bw,bbox->Width,bbox->Height); gwin->redraw_required = true; break; } @@ -1487,7 +1501,7 @@ void ami_handle_msg(void) if((node->Type == AMINS_WINDOW) || (node->Type == AMINS_FRAME)) { - if(gwin->redraw_required) + if(gwin->redraw_required || gwin->bw->reformat_pending) ami_do_redraw(gwin); if(gwin->bw->window->throbbing) |