move con_focus to con.c
This commit is contained in:
parent
4796798074
commit
e0b7ae872e
|
@ -2,6 +2,7 @@
|
||||||
#define _CON_H
|
#define _CON_H
|
||||||
|
|
||||||
Con *con_new(Con *parent);
|
Con *con_new(Con *parent);
|
||||||
|
void con_focus(Con *con);
|
||||||
bool con_is_leaf(Con *con);
|
bool con_is_leaf(Con *con);
|
||||||
bool con_accepts_window(Con *con);
|
bool con_accepts_window(Con *con);
|
||||||
Con *con_get_output(Con *con);
|
Con *con_get_output(Con *con);
|
||||||
|
|
|
@ -15,7 +15,6 @@ extern struct all_cons_head all_cons;
|
||||||
void tree_init();
|
void tree_init();
|
||||||
Con *tree_open_con(Con *con);
|
Con *tree_open_con(Con *con);
|
||||||
void tree_split(Con *con, orientation_t orientation);
|
void tree_split(Con *con, orientation_t orientation);
|
||||||
void con_focus(Con *con);
|
|
||||||
void level_up();
|
void level_up();
|
||||||
void level_down();
|
void level_down();
|
||||||
void tree_render();
|
void tree_render();
|
||||||
|
|
18
src/con.c
18
src/con.c
|
@ -74,6 +74,24 @@ void con_detach(Con *con) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Sets input focus to the given container. Will be updated in X11 in the next
|
||||||
|
* run of x_push_changes().
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
void con_focus(Con *con) {
|
||||||
|
assert(con != NULL);
|
||||||
|
|
||||||
|
/* 1: set focused-pointer to the new con */
|
||||||
|
/* 2: exchange the position of the container in focus stack of the parent all the way up */
|
||||||
|
TAILQ_REMOVE(&(con->parent->focus_head), con, focused);
|
||||||
|
TAILQ_INSERT_HEAD(&(con->parent->focus_head), con, focused);
|
||||||
|
if (con->parent->parent != NULL)
|
||||||
|
con_focus(con->parent);
|
||||||
|
|
||||||
|
focused = con;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Returns true when this node is a leaf node (has no children)
|
* Returns true when this node is a leaf node (has no children)
|
||||||
*
|
*
|
||||||
|
|
18
src/tree.c
18
src/tree.c
|
@ -9,24 +9,6 @@ struct Con *focused;
|
||||||
|
|
||||||
struct all_cons_head all_cons = TAILQ_HEAD_INITIALIZER(all_cons);
|
struct all_cons_head all_cons = TAILQ_HEAD_INITIALIZER(all_cons);
|
||||||
|
|
||||||
/*
|
|
||||||
* Sets input focus to the given container. Will be updated in X11 in the next
|
|
||||||
* run of x_push_changes().
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
void con_focus(Con *con) {
|
|
||||||
assert(con != NULL);
|
|
||||||
|
|
||||||
/* 1: set focused-pointer to the new con */
|
|
||||||
/* 2: exchange the position of the container in focus stack of the parent all the way up */
|
|
||||||
TAILQ_REMOVE(&(con->parent->focus_head), con, focused);
|
|
||||||
TAILQ_INSERT_HEAD(&(con->parent->focus_head), con, focused);
|
|
||||||
if (con->parent->parent != NULL)
|
|
||||||
con_focus(con->parent);
|
|
||||||
|
|
||||||
focused = con;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Loads tree from ~/.i3/_restart.json
|
* Loads tree from ~/.i3/_restart.json
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue