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
This commit is contained in:
Carsten Haitzler 2012-07-17 06:57:41 +00:00
parent 63e43697c1
commit 2307203d49
3 changed files with 48 additions and 31 deletions

3
TODO
View File

@ -2,6 +2,9 @@
here's a short list of things i think we can do in the short to medium term to 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: 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 [ ] blink and blink2 attributes need to be supported
[ ] dnd text (to/from terminal) [ ] dnd text (to/from terminal)
[ ] general input mode handling improvements (keypad, other key [ ] general input mode handling improvements (keypad, other key

View File

@ -95,74 +95,87 @@ void
options_behavior(Evas_Object *opbox, Evas_Object *term) options_behavior(Evas_Object *opbox, Evas_Object *term)
{ {
Config *config = termio_config_get(term); Config *config = termio_config_get(term);
Evas_Object *o; Evas_Object *o, *bx, *sc;
char *txt; 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_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "Jump to bottom on change"); elm_object_text_set(o, "Jump to bottom on change");
elm_check_state_set(o, config->jump_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_show(o);
evas_object_smart_callback_add(o, "changed", evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_jump_chg, term); _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_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "Jump to bottom on keypress"); elm_object_text_set(o, "Jump to bottom on keypress");
elm_check_state_set(o, config->jump_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_show(o);
evas_object_smart_callback_add(o, "changed", evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_jump_keypress_chg, term); _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_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "React to key press"); elm_object_text_set(o, "React to key press");
elm_check_state_set(o, config->flicker_on_key); 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_show(o);
evas_object_smart_callback_add(o, "changed", evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_flicker_chg, term); _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_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "Disable cursor blinking"); elm_object_text_set(o, "Disable cursor blinking");
elm_check_state_set(o, config->disable_cursor_blink); 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_show(o);
evas_object_smart_callback_add(o, "changed", evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_cursor_blink_chg, term); _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_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_object_text_set(o, "Urgent on bell"); elm_object_text_set(o, "Urgent on bell");
elm_check_state_set(o, config->urg_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_show(o);
evas_object_smart_callback_add(o, "changed", evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_urg_bell_chg, term); _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_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_separator_horizontal_set(o, EINA_TRUE); elm_separator_horizontal_set(o, EINA_TRUE);
elm_box_pack_end(opbox, o); elm_box_pack_end(bx, o);
evas_object_show(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_weight_set(o, 0.0, 0.0);
evas_object_size_hint_align_set(o, 0.0, 0.5); evas_object_size_hint_align_set(o, 0.0, 0.5);
elm_object_text_set(o, "Word separators:"); elm_object_text_set(o, "Word separators:");
elm_box_pack_end(opbox, o); elm_box_pack_end(bx, o);
evas_object_show(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_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_entry_single_line_set(o, EINA_TRUE); 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); elm_object_text_set(o, txt);
free(txt); free(txt);
} }
elm_box_pack_end(opbox, o); elm_box_pack_end(bx, o);
evas_object_show(o); evas_object_show(o);
evas_object_smart_callback_add(o, "changed", evas_object_smart_callback_add(o, "changed",
_cb_op_behavior_wsep_chg, term); _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_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.5);
elm_separator_horizontal_set(o, EINA_TRUE); elm_separator_horizontal_set(o, EINA_TRUE);
elm_box_pack_end(opbox, o); elm_box_pack_end(bx, o);
evas_object_show(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_weight_set(o, 0.0, 0.0);
evas_object_size_hint_align_set(o, 0.0, 0.5); evas_object_size_hint_align_set(o, 0.0, 0.5);
elm_object_text_set(o, "Scrollback lines:"); elm_object_text_set(o, "Scrollback lines:");
elm_box_pack_end(opbox, o); elm_box_pack_end(bx, o);
evas_object_show(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_weight_set(o, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.0); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, 0.0);
elm_slider_span_size_set(o, 160); 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_indicator_format_set(o, "%1.0f");
elm_slider_min_max_set(o, 0, 10000); elm_slider_min_max_set(o, 0, 10000);
elm_slider_value_set(o, config->scrollback); 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_show(o);
evas_object_smart_callback_add(o, "delay,changed", evas_object_smart_callback_add(o, "delay,changed",
_cb_op_behavior_sback_chg, term); _cb_op_behavior_sback_chg, term);
evas_object_size_hint_weight_set(opbox, EVAS_HINT_EXPAND, 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, 0.0); evas_object_size_hint_align_set(opbox, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_show(o); evas_object_show(o);
} }

View File

@ -47,7 +47,7 @@ _cb_op_helper_url_image_chg(void *data, Evas_Object *obj, void *event __UNUSED__
if (config->helper.url.image) if (config->helper.url.image)
{ {
eina_stringshare_del(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)); txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt) 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) if (config->helper.url.video)
{ {
eina_stringshare_del(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)); txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt) 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) if (config->helper.url.general)
{ {
eina_stringshare_del(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)); txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt) 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) if (config->helper.local.image)
{ {
eina_stringshare_del(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)); txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt) 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) if (config->helper.local.video)
{ {
eina_stringshare_del(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)); txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt) 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) if (config->helper.local.general)
{ {
eina_stringshare_del(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)); txt = elm_entry_markup_to_utf8(elm_object_text_get(obj));
if (txt) if (txt)
@ -188,6 +188,7 @@ options_helpers(Evas_Object *opbox, Evas_Object *term)
evas_object_show(o); evas_object_show(o);
sc = o = elm_scroller_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_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(opbox, o); elm_box_pack_end(opbox, o);