1. note a bug i spotted in elm-scroller, and make terminology use the

feature.. so i can debug it. also fix errant clearing out of email
helper string in options dialog.



SVN revision: 73949
devs/lucas/wip
Carsten Haitzler 11 years ago
parent 63e43697c1
commit 2307203d49
  1. 3
      TODO
  2. 63
      src/bin/options_behavior.c
  3. 13
      src/bin/options_helpers.c

@ -2,6 +2,9 @@
here's a short list of things i think we can do in the short to medium term to
make it a first-class terminal:
[ ] elm_scroller_content_min_limit not working on behavior scroller :(
[ ] finish off remote http fetch code for media
[ ] filenames is `xxx' quotes not recognized (as ` different to ')
[ ] blink and blink2 attributes need to be supported
[ ] dnd text (to/from terminal)
[ ] general input mode handling improvements (keypad, other key

@ -95,74 +95,87 @@ void
options_behavior(Evas_Object *opbox, Evas_Object *term)
{
Config *config = termio_config_get(term);
Evas_Object *o;
Evas_Object *o, *bx, *sc;
char *txt;
op_jumpcheck = o = elm_check_add(opbox);
sc = o = elm_scroller_add(opbox);
elm_scroller_content_min_limit(sc, EINA_TRUE, EINA_FALSE);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(opbox, o);
evas_object_show(o);
bx = o = elm_box_add(opbox);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.0);
elm_object_content_set(sc, o);
evas_object_show(o);
op_jumpcheck = o = elm_check_add(bx);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "Jump to bottom on change");
elm_check_state_set(o, config->jump_on_change);
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_jump_chg, term);
o = elm_check_add(opbox);
o = elm_check_add(bx);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "Jump to bottom on keypress");
elm_check_state_set(o, config->jump_on_keypress);
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_jump_keypress_chg, term);
o = elm_check_add(opbox);
o = elm_check_add(bx);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "React to key press");
elm_check_state_set(o, config->flicker_on_key);
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_flicker_chg, term);
o = elm_check_add(opbox);
o = elm_check_add(bx);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "Disable cursor blinking");
elm_check_state_set(o, config->disable_cursor_blink);
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_cursor_blink_chg, term);
o = elm_check_add(opbox);
o = elm_check_add(bx);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "Urgent on bell");
elm_check_state_set(o, config->urg_bell);
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_urg_bell_chg, term);
o = elm_separator_add(opbox);
o = elm_separator_add(bx);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_separator_horizontal_set(o, EINA_TRUE);
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
o = elm_label_add(opbox);
o = elm_label_add(bx);
evas_object_size_hint_weight_set(o, 0.0, 0.0);
evas_object_size_hint_align_set(o, 0.0, 0.5);
elm_object_text_set(o, "Word separators:");
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
op_wordsep = o = elm_entry_add(opbox);
op_wordsep = o = elm_entry_add(bx);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_entry_single_line_set(o, EINA_TRUE);
@ -174,26 +187,26 @@ options_behavior(Evas_Object *opbox, Evas_Object *term)
elm_object_text_set(o, txt);
free(txt);
}
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_wsep_chg, term);
o = elm_separator_add(opbox);
o = elm_separator_add(bx);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_separator_horizontal_set(o, EINA_TRUE);
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
o = elm_label_add(opbox);
o = elm_label_add(bx);
evas_object_size_hint_weight_set(o, 0.0, 0.0);
evas_object_size_hint_align_set(o, 0.0, 0.5);
elm_object_text_set(o, "Scrollback lines:");
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
op_sbslider = o = elm_slider_add(opbox);
op_sbslider = o = elm_slider_add(bx);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.0);
elm_slider_span_size_set(o, 160);
@ -201,12 +214,12 @@ options_behavior(Evas_Object *opbox, Evas_Object *term)
elm_slider_indicator_format_set(o, "%1.0f");
elm_slider_min_max_set(o, 0, 10000);
elm_slider_value_set(o, config->scrollback);
elm_box_pack_end(opbox, o);
elm_box_pack_end(bx, o);
evas_object_show(o);
evas_object_smart_callback_add(o, "delay,changed",
_cb_op_behavior_sback_chg, term);
evas_object_size_hint_weight_set(opbox, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(opbox, EVAS_HINT_FILL, 0.0);
evas_object_size_hint_weight_set(opbox, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(opbox, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_show(o);
}

@ -47,7 +47,7 @@ _cb_op_helper_url_image_chg(void *data, Evas_Object *obj, void *event __UNUSED__
if (config->helper.url.image)
{
eina_stringshare_del(config->helper.url.image);
config->helper.email = NULL;
config->helper.url.image = NULL;
}
txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt)
@ -68,7 +68,7 @@ _cb_op_helper_url_video_chg(void *data, Evas_Object *obj, void *event __UNUSED__
if (config->helper.url.video)
{
eina_stringshare_del(config->helper.url.video);
config->helper.email = NULL;
config->helper.url.video = NULL;
}
txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt)
@ -89,7 +89,7 @@ _cb_op_helper_url_general_chg(void *data, Evas_Object *obj, void *event __UNUSED
if (config->helper.url.general)
{
eina_stringshare_del(config->helper.url.general);
config->helper.email = NULL;
config->helper.url.general = NULL;
}
txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt)
@ -110,7 +110,7 @@ _cb_op_helper_local_image_chg(void *data, Evas_Object *obj, void *event __UNUSED
if (config->helper.local.image)
{
eina_stringshare_del(config->helper.local.image);
config->helper.email = NULL;
config->helper.local.image = NULL;
}
txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt)
@ -131,7 +131,7 @@ _cb_op_helper_local_video_chg(void *data, Evas_Object *obj, void *event __UNUSED
if (config->helper.local.video)
{
eina_stringshare_del(config->helper.local.video);
config->helper.email = NULL;
config->helper.local.video = NULL;
}
txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt)
@ -152,7 +152,7 @@ _cb_op_helper_local_general_chg(void *data, Evas_Object *obj, void *event __UNUS
if (config->helper.local.general)
{
eina_stringshare_del(config->helper.local.general);
config->helper.email = NULL;
config->helper.local.general = NULL;
}
txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt)
@ -188,6 +188,7 @@ options_helpers(Evas_Object *opbox, Evas_Object *term)
evas_object_show(o);
sc = o = elm_scroller_add(opbox);
elm_scroller_content_min_limit(sc, EINA_TRUE, EINA_FALSE);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(opbox, o);

Loading…
Cancel
Save