cmbox - fix focus handling to work again
alt+home opens the "command box" for terminology. this is an extended control system where we can add lots of commands. it's been there for a while. look at termcmd.c and termcmd_do() for current commands like: f <- set font to normal size fb <- set font to big size f+ <- increase font size f- <- decrease font size /string <- search for "string" (not implemented yet but recognized) g0 <- set geometry to 80x24 g1 <- set geometry to 80x40 g2 <- set geometry to 80x60 g3 <- set geometry to 80x80 g4 <- set geometry to 120x24 g5 <- set geometry to 120x40 g6 <- set geometry to 120x60 g7 <- set geometry to 120x80 g8 <- set geometry to 120x120 b <- clear backgorund b/file/path.jpg <- set background to /file/path.jpg you get the idea ... it's a command character (or set of chars) followed by paramters, then hit enter to finish.
This commit is contained in:
parent
bcb4e27bed
commit
374d1b3e29
|
@ -168,7 +168,6 @@ struct _Win
|
||||||
Ecore_Job *size_job;
|
Ecore_Job *size_job;
|
||||||
Evas_Object *cmdbox;
|
Evas_Object *cmdbox;
|
||||||
Ecore_Timer *cmdbox_del_timer;
|
Ecore_Timer *cmdbox_del_timer;
|
||||||
Ecore_Timer *cmdbox_focus_timer;
|
|
||||||
Ecore_Timer *hide_cursor_timer;
|
Ecore_Timer *hide_cursor_timer;
|
||||||
unsigned char focused : 1;
|
unsigned char focused : 1;
|
||||||
unsigned char cmdbox_up : 1;
|
unsigned char cmdbox_up : 1;
|
||||||
|
@ -981,11 +980,6 @@ win_free(Win *wn)
|
||||||
ecore_timer_del(wn->cmdbox_del_timer);
|
ecore_timer_del(wn->cmdbox_del_timer);
|
||||||
wn->cmdbox_del_timer = NULL;
|
wn->cmdbox_del_timer = NULL;
|
||||||
}
|
}
|
||||||
if (wn->cmdbox_focus_timer)
|
|
||||||
{
|
|
||||||
ecore_timer_del(wn->cmdbox_focus_timer);
|
|
||||||
wn->cmdbox_focus_timer = NULL;
|
|
||||||
}
|
|
||||||
if (wn->cmdbox)
|
if (wn->cmdbox)
|
||||||
{
|
{
|
||||||
evas_object_del(wn->cmdbox);
|
evas_object_del(wn->cmdbox);
|
||||||
|
@ -1538,8 +1532,7 @@ _cb_win_key_down(void *data,
|
||||||
DBG("GROUP key down (%p) (ctrl:%d)",
|
DBG("GROUP key down (%p) (ctrl:%d)",
|
||||||
wn, evas_key_modifier_is_set(ev->modifiers, "Control"));
|
wn, evas_key_modifier_is_set(ev->modifiers, "Control"));
|
||||||
|
|
||||||
if (wn->on_popover)
|
if ((wn->on_popover) || (wn->cmdbox_up)) return;
|
||||||
return;
|
|
||||||
|
|
||||||
ctrl = evas_key_modifier_is_set(ev->modifiers, "Control");
|
ctrl = evas_key_modifier_is_set(ev->modifiers, "Control");
|
||||||
alt = evas_key_modifier_is_set(ev->modifiers, "Alt");
|
alt = evas_key_modifier_is_set(ev->modifiers, "Alt");
|
||||||
|
@ -5316,11 +5309,7 @@ _cb_cmd_activated(void *data,
|
||||||
free(cmd);
|
free(cmd);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (wn->cmdbox_focus_timer)
|
elm_object_focus_set(wn->base, EINA_TRUE);
|
||||||
{
|
|
||||||
ecore_timer_del(wn->cmdbox_focus_timer);
|
|
||||||
wn->cmdbox_focus_timer = NULL;
|
|
||||||
}
|
|
||||||
wn->cmdbox_up = EINA_FALSE;
|
wn->cmdbox_up = EINA_FALSE;
|
||||||
if (wn->cmdbox_del_timer) ecore_timer_del(wn->cmdbox_del_timer);
|
if (wn->cmdbox_del_timer) ecore_timer_del(wn->cmdbox_del_timer);
|
||||||
wn->cmdbox_del_timer = ecore_timer_add(5.0, _cb_cmd_del, wn);
|
wn->cmdbox_del_timer = ecore_timer_add(5.0, _cb_cmd_del, wn);
|
||||||
|
@ -5334,11 +5323,7 @@ _cb_cmd_aborted(void *data,
|
||||||
Win *wn = data;
|
Win *wn = data;
|
||||||
|
|
||||||
elm_layout_signal_emit(wn->base, "cmdbox,hide", "terminology");
|
elm_layout_signal_emit(wn->base, "cmdbox,hide", "terminology");
|
||||||
if (wn->cmdbox_focus_timer)
|
elm_object_focus_set(wn->base, EINA_TRUE);
|
||||||
{
|
|
||||||
ecore_timer_del(wn->cmdbox_focus_timer);
|
|
||||||
wn->cmdbox_focus_timer = NULL;
|
|
||||||
}
|
|
||||||
wn->cmdbox_up = EINA_FALSE;
|
wn->cmdbox_up = EINA_FALSE;
|
||||||
if (wn->cmdbox_del_timer) ecore_timer_del(wn->cmdbox_del_timer);
|
if (wn->cmdbox_del_timer) ecore_timer_del(wn->cmdbox_del_timer);
|
||||||
wn->cmdbox_del_timer = ecore_timer_add(5.0, _cb_cmd_del, wn);
|
wn->cmdbox_del_timer = ecore_timer_add(5.0, _cb_cmd_del, wn);
|
||||||
|
@ -5418,8 +5403,7 @@ _cb_cmdbox(void *data,
|
||||||
elm_layout_signal_emit(term->wn->base, "cmdbox,show", "terminology");
|
elm_layout_signal_emit(term->wn->base, "cmdbox,show", "terminology");
|
||||||
elm_entry_entry_set(term->wn->cmdbox, "");
|
elm_entry_entry_set(term->wn->cmdbox, "");
|
||||||
evas_object_show(term->wn->cmdbox);
|
evas_object_show(term->wn->cmdbox);
|
||||||
if (term->wn->cmdbox_focus_timer)
|
elm_object_focus_set(term->wn->cmdbox, EINA_TRUE);
|
||||||
ecore_timer_del(term->wn->cmdbox_focus_timer);
|
|
||||||
if (term->wn->cmdbox_del_timer)
|
if (term->wn->cmdbox_del_timer)
|
||||||
{
|
{
|
||||||
ecore_timer_del(term->wn->cmdbox_del_timer);
|
ecore_timer_del(term->wn->cmdbox_del_timer);
|
||||||
|
|
Loading…
Reference in New Issue