forked from enlightenment/terminology
win: update terms on change of config about show_tabs
This commit is contained in:
parent
dc1ddf7e40
commit
9a2ddd8468
120
src/bin/win.c
120
src/bin/win.c
|
@ -628,12 +628,6 @@ _solo_focus(Term_Container *tc, Term_Container *relative)
|
|||
term->missed_bell = EINA_FALSE;
|
||||
}
|
||||
|
||||
static void
|
||||
_solo_update(Term_Container *tc)
|
||||
{
|
||||
assert (tc->type == TERM_CONTAINER_TYPE_SOLO);
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
_solo_is_visible(Term_Container *tc, Term_Container *_child EINA_UNUSED)
|
||||
{
|
||||
|
@ -641,53 +635,6 @@ _solo_is_visible(Term_Container *tc, Term_Container *_child EINA_UNUSED)
|
|||
return tc->parent->is_visible(tc->parent, tc);
|
||||
}
|
||||
|
||||
static Term_Container *
|
||||
_solo_new(Term *term, Win *wn)
|
||||
{
|
||||
Term_Container *tc = NULL;
|
||||
Solo *solo = NULL;
|
||||
solo = calloc(1, sizeof(Solo));
|
||||
if (!solo)
|
||||
{
|
||||
free(solo);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
tc = (Term_Container*)solo;
|
||||
tc->term_next = _solo_term_next;
|
||||
tc->term_prev = _solo_term_prev;
|
||||
tc->term_up = _solo_term_up;
|
||||
tc->term_down = _solo_term_down;
|
||||
tc->term_left = _solo_term_left;
|
||||
tc->term_right = _solo_term_right;
|
||||
tc->term_first = _solo_term_first;
|
||||
tc->term_last = _solo_term_last;
|
||||
tc->focused_term_get = _solo_focused_term_get;
|
||||
tc->get_evas_object = _solo_get_evas_object;
|
||||
tc->split = _solo_split;
|
||||
tc->find_term_at_coords = _solo_find_term_at_coords;
|
||||
tc->size_eval = _solo_size_eval;
|
||||
tc->swallow = NULL;
|
||||
tc->focus = _solo_focus;
|
||||
tc->unfocus = _solo_unfocus;
|
||||
tc->set_title = _solo_set_title;
|
||||
tc->bell = _solo_bell;
|
||||
tc->close = _solo_close;
|
||||
tc->update = _solo_update;
|
||||
tc->title = eina_stringshare_add("Terminology");
|
||||
tc->is_visible = _solo_is_visible;
|
||||
tc->type = TERM_CONTAINER_TYPE_SOLO;
|
||||
|
||||
tc->parent = NULL;
|
||||
tc->wn = wn;
|
||||
|
||||
solo->term = term;
|
||||
|
||||
term->container = tc;
|
||||
|
||||
return tc;
|
||||
}
|
||||
|
||||
static void
|
||||
_solo_title_show(Term_Container *tc)
|
||||
{
|
||||
|
@ -743,6 +690,73 @@ _solo_title_hide(Term_Container *tc)
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_solo_update(Term_Container *tc)
|
||||
{
|
||||
Solo *solo;
|
||||
Term *term;
|
||||
Term_Container *tc_parent = tc->parent;
|
||||
|
||||
assert (tc->type == TERM_CONTAINER_TYPE_SOLO);
|
||||
solo = (Solo*) tc;
|
||||
term = solo->term;
|
||||
|
||||
if (tc_parent->type == TERM_CONTAINER_TYPE_SPLIT)
|
||||
{
|
||||
if (term->config->show_tabs)
|
||||
_solo_title_show(tc);
|
||||
else
|
||||
_solo_title_hide(tc);
|
||||
}
|
||||
}
|
||||
|
||||
static Term_Container *
|
||||
_solo_new(Term *term, Win *wn)
|
||||
{
|
||||
Term_Container *tc = NULL;
|
||||
Solo *solo = NULL;
|
||||
solo = calloc(1, sizeof(Solo));
|
||||
if (!solo)
|
||||
{
|
||||
free(solo);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
tc = (Term_Container*)solo;
|
||||
tc->term_next = _solo_term_next;
|
||||
tc->term_prev = _solo_term_prev;
|
||||
tc->term_up = _solo_term_up;
|
||||
tc->term_down = _solo_term_down;
|
||||
tc->term_left = _solo_term_left;
|
||||
tc->term_right = _solo_term_right;
|
||||
tc->term_first = _solo_term_first;
|
||||
tc->term_last = _solo_term_last;
|
||||
tc->focused_term_get = _solo_focused_term_get;
|
||||
tc->get_evas_object = _solo_get_evas_object;
|
||||
tc->split = _solo_split;
|
||||
tc->find_term_at_coords = _solo_find_term_at_coords;
|
||||
tc->size_eval = _solo_size_eval;
|
||||
tc->swallow = NULL;
|
||||
tc->focus = _solo_focus;
|
||||
tc->unfocus = _solo_unfocus;
|
||||
tc->set_title = _solo_set_title;
|
||||
tc->bell = _solo_bell;
|
||||
tc->close = _solo_close;
|
||||
tc->update = _solo_update;
|
||||
tc->title = eina_stringshare_add("Terminology");
|
||||
tc->is_visible = _solo_is_visible;
|
||||
tc->type = TERM_CONTAINER_TYPE_SOLO;
|
||||
|
||||
tc->parent = NULL;
|
||||
tc->wn = wn;
|
||||
|
||||
solo->term = term;
|
||||
|
||||
term->container = tc;
|
||||
|
||||
return tc;
|
||||
}
|
||||
|
||||
/* }}} */
|
||||
/* {{{ Win */
|
||||
|
||||
|
|
Loading…
Reference in New Issue