X-Git-Url: https://git.decadent.org.uk/gitweb/?p=ion3.git;a=blobdiff_plain;f=mod_tiling%2Fsplit.c;h=c0a20b83f7b40081ea23306af75dca3caf539887;hp=568a2d1a139766801a755d6b132a4c345cbba6d5;hb=a6561c9679cd701b0d50c3cfd44e4664f7df2b2f;hpb=cd09055902de482a1be019bf4b4efdae64c98d35 diff --git a/mod_tiling/split.c b/mod_tiling/split.c index 568a2d1..c0a20b8 100644 --- a/mod_tiling/split.c +++ b/mod_tiling/split.c @@ -1234,13 +1234,23 @@ static void splitsplit_remove(WSplitSplit *node, WSplit *child, static int nstdisp=0; WSplitInner *parent; WSplit *other; + int hprimn=PRIMN_ANY, vprimn=PRIMN_ANY; assert(node->tl==child || node->br==child); - if(node->tl==child) + if(node->tl==child){ other=node->br; - else + if(node->dir==SPLIT_VERTICAL) + vprimn=PRIMN_TL; + else + hprimn=PRIMN_TL; + }else{ other=node->tl; + if(node->dir==SPLIT_VERTICAL) + vprimn=PRIMN_BR; + else + hprimn=PRIMN_BR; + } assert(other!=NULL); @@ -1262,7 +1272,7 @@ static void splitsplit_remove(WSplitSplit *node, WSplit *child, splittree_changeroot((WSplit*)node, other); if(reclaim_space) - split_resize(other, &(((WSplit*)node)->geom), PRIMN_ANY, PRIMN_ANY); + split_resize(other, &(((WSplit*)node)->geom), hprimn, vprimn); child->parent=NULL;