From: Michael Stapelberg Date: Sun, 14 Nov 2010 22:18:39 +0000 (+0100) Subject: don’t allow useless splits, change orientation of existing split container instead X-Git-Tag: tree-pr1~95 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=39b378b0a49bb3c177ad493468f3d369dc0b94b7;p=i3%2Fi3 don’t allow useless splits, change orientation of existing split container instead --- diff --git a/src/tree.c b/src/tree.c index 3f860923..6ba83ea7 100644 --- a/src/tree.c +++ b/src/tree.c @@ -240,11 +240,11 @@ void tree_split(Con *con, orientation_t orientation) { Con *parent = con->parent; /* if we are in a container whose parent contains only one - * child and has the same orientation like we are trying to - * set, this operation is a no-op to not confuse the user */ - if (con_orientation(parent) == orientation && - TAILQ_NEXT(con, nodes) == TAILQ_END(&(parent->nodes_head))) { - DLOG("Not splitting the same way again\n"); + * child (its split functionality is unused so far), we just change the + * orientation (more intuitive than splitting again) */ + if (con_num_children(parent) == 1) { + parent->orientation = orientation; + DLOG("Just changing orientation of existing container\n"); return; }