[EGIT] [core/efl] master 01/01: Efl.Ui.Calendar, elm_calendar: Code fixed to support auto repeat feature.

2018-07-23 Thread Woochan Lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=62a09f69a111892e9b5534c0c78c96c6db807622

commit 62a09f69a111892e9b5534c0c78c96c6db807622
Author: Woochan Lee 
Date:   Mon Jul 23 15:49:10 2018 +0900

Efl.Ui.Calendar, elm_calendar: Code fixed to support auto repeat feature.

Summary:
1.  Why there is a edje signal callback in elm_calendar? and do we need to 
maintain?

 We used edje part like a button before (3 years ago?), So there is a 
callbacks to get edje signal.

 Im pretty sure it is not use anymore. but we need to maintain backward 
compatibility.

2. elm_calendar using using repeat feature in efl_ui_button for it. why did 
i change it to manual timer?

 We opend elm_calendar_interval_set() APIs. Support this API the manual 
timer is proper then using button's feature.

3. why scroll freeze? and why only elm_calendar does it?

 When the user long press calendar button area and then move the scroll 
will be activated. it can prevent that weird action.

 efl_ui_calendar using button's feature. i not sure scroll freeze is 
deserve to attached in button side as a feature or not.

 So i will consider more for this case.

4. Why efl_ui_calendar doesn't have year buttons (double spinner case)

 After interface work, we don't accept style change in the runtime. so that 
featrue will be supported as API.

 The year_button_set/get() property should be added. but i dont know is it 
really needed...

 If the app developer want use year inc/dec button for efl_ui_calendar. 
they can inherit the class and make it easily.

Test Plan:
View, Action, API test in the elementary-test sample App.

Ps. The issue of the calendar2 crash when it closed. It's not relative with 
this commit. its focus. i will look around.

Reviewers: Hermet, zmike, ManMower, segfaultxavi, devilhorns

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6626
---
 src/lib/elementary/efl_ui_calendar.c | 138 ---
 src/lib/elementary/efl_ui_calendar_private.h |   8 +-
 src/lib/elementary/elm_calendar.c| 246 +++
 src/lib/elementary/elm_widget_calendar.h |   5 +-
 4 files changed, 103 insertions(+), 294 deletions(-)

diff --git a/src/lib/elementary/efl_ui_calendar.c 
b/src/lib/elementary/efl_ui_calendar.c
index 7eedec1f1f..ae1e648c94 100644
--- a/src/lib/elementary/efl_ui_calendar.c
+++ b/src/lib/elementary/efl_ui_calendar.c
@@ -21,6 +21,9 @@
 #define EFL_UI_CALENDAR_BUTTON_YEAR_LEFT "efl.calendar.button_year.left"
 #define EFL_UI_CALENDAR_BUTTON_YEAR_RIGHT "efl.calendar.button_year.right"
 
+#define FIRST_INTERVAL 0.85
+#define INTERVAL 0.2
+
 static const char PART_NAME_DEC_BUTTON[] = "dec_button";
 static const char PART_NAME_INC_BUTTON[] = "inc_button";
 
@@ -36,20 +39,12 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = 
{
 };
 
 static void
-_button_widget_month_dec_start(void *data,
-   const Efl_Event *ev EINA_UNUSED);
-
-static void
-_button_widget_month_dec_start_click(void *data,
- const Efl_Event *ev EINA_UNUSED);
-
-static void
-_button_widget_month_inc_start(void *data,
-   const Efl_Event *ev EINA_UNUSED);
+_inc_dec_btn_clicked_cb(void *data,
+const Efl_Event *ev);
 
 static void
-_button_widget_month_inc_start_click(void *data,
- const Efl_Event *ev EINA_UNUSED);
+_inc_dec_btn_repeated_cb(void *data,
+ const Efl_Event *ev);
 
 static Eina_Bool _key_action_activate(Evas_Object *obj, const char *params);
 
@@ -253,7 +248,7 @@ _access_calendar_item_register(Evas_Object *obj)
   {
  snprintf(pname, sizeof(pname), "efl.cit_%d.access", i);
  _elm_access_edje_object_part_object_unregister
- (obj, elm_layout_edje_get(obj), pname);
+   (obj, elm_layout_edje_get(obj), pname);
   }
  }
 }
@@ -282,9 +277,6 @@ _access_calendar_spinner_register(Evas_Object *obj)
ai = _elm_access_info_get(sd->month_access);
_elm_access_text_set(ai, ELM_ACCESS_TYPE, E_("calendar month"));
 
-   ai = _elm_access_info_get(sd->year_access);
-   _elm_access_text_set(ai, ELM_ACCESS_TYPE, E_("calendar year"));
-
o = elm_layout_edje_get(obj);
edje_object_freeze(o);
po = (Evas_Object *)edje_object_part_object_get(o, "month_text");
@@ -311,7 +303,6 @@ _flush_calendar_composite_elements(Evas_Object *obj, 
Efl_Ui_Calendar_Data *sd)
 EXTEND(sd->month_access);
 EXTEND(sd->dec_btn_month);
 EXTEND(sd->inc_btn_month);
-EXTEND(sd->year_acces

[EGIT] [core/efl] master 12/13: elm_spinner: Spinner value adjust when round enabled.

2018-05-25 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=3c96fdfc69060d30c0c7e29b2054c66fa3a46575

commit 3c96fdfc69060d30c0c7e29b2054c66fa3a46575
Author: Woochan Lee <wc0917@samsung.com>
Date:   Fri May 25 10:28:39 2018 -0700

elm_spinner: Spinner value adjust when round enabled.

Summary:
The round value was not being applied when input the value as an internal 
entry.

@fix

Test Plan: elementary_test -> spinner sample.

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5843

Reviewed-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elementary/elm_spinner.c | 31 ---
 1 file changed, 20 insertions(+), 11 deletions(-)

diff --git a/src/lib/elementary/elm_spinner.c b/src/lib/elementary/elm_spinner.c
index b42ef3f4cc..f7744f9913 100644
--- a/src/lib/elementary/elm_spinner.c
+++ b/src/lib/elementary/elm_spinner.c
@@ -236,13 +236,24 @@ _delay_change_timer_cb(void *data)
 
 static Eina_Bool
 _value_set(Evas_Object *obj,
-   double new_val)
+   double val, double changed)
 {
+   double new_val;
+
ELM_SPINNER_DATA_GET(obj, sd);
 
if (sd->round > 0)
- new_val = sd->val_base +
-   (double)int)(new_val - sd->val_base)) / sd->round) * sd->round);
+ {
+//Spin value changed by entry input.
+if (changed != 0)
+  new_val = sd->val_base +
+(double)int)((val + changed) - sd->val_base)) / sd->round) * 
sd->round);
+else
+  new_val = sd->val_base +
+(double)int)(val - sd->val_base + (sd->round / 2))) / 
sd->round) * sd->round);
+ }
+   else
+ new_val = val + changed;
 
if (sd->wrap)
  {
@@ -336,7 +347,7 @@ _drag_cb(void *data,
if (!strncmp(style, "vertical", 8)) delta *= -1;
/* If we are on rtl mode, change the delta to be negative on such changes */
if (efl_ui_mirrored_get(obj)) delta *= -1;
-   if (_value_set(data, sd->val + delta)) _label_write(data);
+   if (_value_set(data, sd->val, delta)) _label_write(data);
sd->dragging = 1;
 }
 
@@ -414,12 +425,8 @@ _entry_value_apply(Evas_Object *obj)
 
val = strtod(str, );
if (((*end != '\0') && (!isspace(*end))) || (fabs(val - sd->val) < 
DBL_EPSILON)) return;
-   elm_spinner_value_set(obj, val);
 
-   efl_event_callback_legacy_call(obj, ELM_SPINNER_EVENT_CHANGED, NULL);
-   ecore_timer_del(sd->delay_change_timer);
-   sd->delay_change_timer = ecore_timer_add(ELM_SPINNER_DELAY_CHANGE_TIME,
-_delay_change_timer_cb, obj);
+   if (_value_set(obj, val, 0.0)) _label_write(obj);
 }
 
 static int
@@ -691,7 +698,7 @@ _spin_value(void *data)
// spin_timer does not exist when _spin_value() is called from wheel event
if (sd->spin_timer)
  ecore_timer_interval_set(sd->spin_timer, sd->interval);
-   if (_value_set(data, sd->val + real_speed)) _label_write(data);
+   if (_value_set(data, sd->val, real_speed)) _label_write(data);
 
return ECORE_CALLBACK_RENEW;
 }
@@ -1477,7 +1484,9 @@ _elm_spinner_efl_ui_range_range_value_set(Eo *obj, 
Elm_Spinner_Data *sd, double
 {
if (sd->val == val) return;
 
-   sd->val = val;
+   sd->val = (sd->round <= 0) ? val : sd->val_base +
+  (double)int)(val - sd->val_base + (sd->round / 2))) / sd->round) * 
sd->round);
+
sd->val_updated = EINA_FALSE;
 
if (sd->val < sd->val_min)

-- 




[EGIT] [core/efl] master 01/01: efl_ui_tags: Fixed bug when setting format string.

2018-05-19 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=428d74ebc1f6ea5dab5c46f3c885c8aa8fbe93e0

commit 428d74ebc1f6ea5dab5c46f3c885c8aa8fbe93e0
Author: Woochan Lee <wc0917@samsung.com>
Date:   Sun May 20 03:58:41 2018 +0900

efl_ui_tags: Fixed bug when setting format string.

Summary:
efl_ui_format_string_set was not working well.

Changed default format text. (" %d" text for test only.)

@fix

Reviewers: Jaehyun_Cho, cedric, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: zmike, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6044
---
 data/elementary/themes/edc/efl/tags.edc | 30 -
 src/bin/elementary/test_ui_tags.c   | 40 -
 src/lib/elementary/efl_ui_tags.c|  6 ++---
 src/lib/elementary/elm_config.c |  1 +
 4 files changed, 43 insertions(+), 34 deletions(-)

diff --git a/data/elementary/themes/edc/efl/tags.edc 
b/data/elementary/themes/edc/efl/tags.edc
index 82f861a05d..9c9b7352d8 100644
--- a/data/elementary/themes/edc/efl/tags.edc
+++ b/data/elementary/themes/edc/efl/tags.edc
@@ -289,34 +289,22 @@ group { "efl/tags/btn";
 }
 
 group { "efl/tags/number";
-   styles {
-  style { name: "textblock_style_efl_tags_default";
- base: "font="FNBD" font_size=10 text_class=tags_closed style=glow 
color=#3399 glow_color=#3399ff18 align=center glow2_color=#3399ff12 
wrap=char";
- tag: "br" "\n";
- tag: "ps" "ps";
- tag: "hilight" "+ font="FNBD;
- tag: "b" "+ font="FNBD;
- tag: "tab" "\t";
-  }
-   }
parts {
-  rect { "bg";
- desc { "default";
-color: 0 0 0 0;
- }
-  }
-  textblock { "efl.text";
+  text { "efl.text";
  nomouse;
+ effect: GLOW;
  scale;
  desc { "default";
-rel1.offset: 2 2;
-rel1.to: "bg";
-rel2.offset: -3 -3;
-rel2.to: "bg";
-text { style: "textblock_style_tags_default";
+color: FN_COL_HIGHLIGHT;
+color_class: "tags_number";
+text { font: FNBD; size: 10;
min: 1 1;
ellipsis: -1;
+   align: 0.5 0.5;
+   text_class: "tags_number";
 }
+rel1.offset: 2 2;
+rel2.offset: -5 -5;
  }
   }
}
diff --git a/src/bin/elementary/test_ui_tags.c 
b/src/bin/elementary/test_ui_tags.c
index b7711bf2b4..15faebe4af 100644
--- a/src/bin/elementary/test_ui_tags.c
+++ b/src/bin/elementary/test_ui_tags.c
@@ -33,10 +33,22 @@ _item_deleted_cb(void *data, const Efl_Event *ev)
  }
 }
 
+static void
+_clicked(void *data, const Efl_Event *ev EINA_UNUSED)
+{
+   Eo *tags = data;
+
+   if (efl_ui_tags_expanded_get(tags))
+ efl_ui_tags_expanded_set(tags, EINA_FALSE);
+   else
+ efl_ui_tags_expanded_set(tags, EINA_TRUE);
+}
+
+
 void
 test_ui_tags(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
 {
-   Eo *win, *bx;
+   Eo *win, *layout, *tags;
 
const char* strs[] = {
 "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"
@@ -44,26 +56,34 @@ test_ui_tags(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_i
 
Eina_Array *array;
unsigned int i;
+   char buf[PATH_MAX];
 
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
  efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
  efl_text_set(efl_added, "Efl.Ui.Tags"),
  efl_ui_win_autodel_set(efl_added, EINA_TRUE));
 
+   snprintf(buf, sizeof(buf), "%s/objects/multibuttonentry.edj", 
elm_app_data_dir_get());
+   layout = efl_add(EFL_UI_LAYOUT_OBJECT_CLASS, win,
+elm_layout_file_set(efl_added, buf, 
"multibuttonentry_test"),
+elm_win_resize_object_add(win, efl_added));
+
array = eina_array_new(10);
for (i = 0; i < 9; i++)
eina_array_push(array, strs[i]);
 
-   bx = efl_add(EFL_UI_BOX_CLASS, win,
-efl_content_set(win, efl_added),
-efl_ui_direction_set(efl_added, EFL_UI_DIR_DOWN));
+   tags = efl_add(EFL_UI_TAGS_CLASS, layout,
+  efl_ui_tags_items_set(efl_added, array),
+  efl_event_callback_add(efl_added, 
EFL_UI_TAGS_EVENT_ITEM_ADDED, _item_added_cb, array),
+  efl_event_callback_add(efl_added, 
EFL_UI_TAGS_EVENT_ITEM_DELETED, _item_deleted_cb, array),
+ 

[EGIT] [core/efl] master 01/01: efl_ui_spin: Added special value feature.

2018-05-19 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=976b9d877e762aee6e0fbd1b37766591644a2f2f

commit 976b9d877e762aee6e0fbd1b37766591644a2f2f
Author: Woochan Lee <wc0917@samsung.com>
Date:   Sun May 20 03:01:44 2018 +0900

efl_ui_spin: Added special value feature.

Summary:
User may want to set as meanignful words for the value instead of numberic 
value.

@feature

Test Plan: elementary_test->test_ui_spin_button.

Reviewers: cedric, woohyun, Jaehyun_Cho, herb

Reviewed By: Jaehyun_Cho

Subscribers: zmike, felipealmeida, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5969
---
 src/bin/elementary/test_ui_spin.c|  2 +-
 src/bin/elementary/test_ui_spin_button.c | 23 ++-
 src/lib/elementary/efl_ui_spin.c | 71 
 src/lib/elementary/efl_ui_spin.eo| 25 +++
 src/lib/elementary/efl_ui_spin_button.c  | 22 +-
 src/lib/elementary/efl_ui_spin_private.h |  2 +
 6 files changed, 142 insertions(+), 3 deletions(-)

diff --git a/src/bin/elementary/test_ui_spin.c 
b/src/bin/elementary/test_ui_spin.c
index a1a27c1905..c857cd040b 100644
--- a/src/bin/elementary/test_ui_spin.c
+++ b/src/bin/elementary/test_ui_spin.c
@@ -65,5 +65,5 @@ test_ui_spin(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_i
efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, 
_dec_clicked, sp),
efl_pack(bx, efl_added));
 
-   efl_gfx_entity_size_set(win, EINA_SIZE2D(100, 80));
+   efl_gfx_entity_size_set(win, EINA_SIZE2D(100, 120));
 }
diff --git a/src/bin/elementary/test_ui_spin_button.c 
b/src/bin/elementary/test_ui_spin_button.c
index c135848007..0a91da7170 100644
--- a/src/bin/elementary/test_ui_spin_button.c
+++ b/src/bin/elementary/test_ui_spin_button.c
@@ -3,6 +3,8 @@
 #endif
 #include 
 
+#define NUM_OF_VALS 12
+
 static void
 _spin_delay_changed_cb(void *data EINA_UNUSED, const Efl_Event *ev)
 {
@@ -13,6 +15,17 @@ void
 test_ui_spin_button(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
 {
Eo *win, *bx;
+   int i;
+   Eina_Array *array;
+   Efl_Ui_Spin_Special_Value values[12] = {
+ {1, "January"}, {2, "February"}, {3, "March"}, {4, "April"},
+ {5, "May"}, {6, "June"}, {7, "July"}, {8, "August"},
+ {9, "September"}, {10, "October"}, {11, "November"}, {12, "December"}
+   };
+
+   array = eina_array_new(sizeof(Efl_Ui_Spin_Special_Value));
+   for (i = 0; i < NUM_OF_VALS; i++)
+ eina_array_push(array, [i]);
 
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
  efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
@@ -39,5 +52,13 @@ test_ui_spin_button(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *
efl_ui_spin_button_editable_set(efl_added, EINA_FALSE),
efl_pack(bx, efl_added));
 
-   efl_gfx_entity_size_set(win, EINA_SIZE2D(180, 100));
+   efl_add(EFL_UI_SPIN_BUTTON_CLASS, bx,
+   efl_ui_range_min_max_set(efl_added, 1, 12),
+   efl_ui_range_value_set(efl_added, 1),
+   efl_ui_spin_button_editable_set(efl_added, EINA_FALSE),
+   efl_ui_spin_special_value_set(efl_added, array),
+   efl_pack(bx, efl_added));
+   eina_array_free(array);
+
+   efl_gfx_entity_size_set(win, EINA_SIZE2D(180, 140));
 }
diff --git a/src/lib/elementary/efl_ui_spin.c b/src/lib/elementary/efl_ui_spin.c
index 44b985cbd1..151fa8810e 100644
--- a/src/lib/elementary/efl_ui_spin.c
+++ b/src/lib/elementary/efl_ui_spin.c
@@ -73,8 +73,24 @@ _is_label_format_integer(const char *fmt)
 static void
 _label_write(Evas_Object *obj)
 {
+   Efl_Ui_Spin_Special_Value *sv;
+   unsigned int i;
+   Eina_Array_Iterator iterator;
+
Efl_Ui_Spin_Data *sd = efl_data_scope_get(obj, MY_CLASS);
 
+   EINA_ARRAY_ITER_NEXT(sd->special_values, i, sv, iterator)
+ {
+if (sv->value == sd->val)
+  {
+ char buf[1024];
+ snprintf(buf, sizeof(buf), "%s", sv->label);
+ elm_layout_text_set(obj, "elm.text", buf);
+ sd->templates = sv->label;
+ return;
+  }
+ }
+
if (sd->format_cb)
  {
 const char *buf;
@@ -172,6 +188,48 @@ _efl_ui_spin_efl_ui_widget_widget_event(Eo *obj, 
Efl_Ui_Spin_Data *sd, const Efl
return EINA_TRUE;
 }
 
+EOLIAN static void
+_efl_ui_spin_special_value_set(Eo *obj, Efl_Ui_Spin_Data *sd, const Eina_Array 
*values)
+{
+   EINA_SAFETY_ON_NULL_RETURN(values);
+
+   unsigned int i;
+   Efl_Ui_Spin_Special_Value *sv;
+   Efl_Ui_Spin_Special_Value *temp;
+   Eina_Array_Iterator iterator;
+
+   if (eina_array_count(sd->special_values))
+ {
+EINA_ARRAY_ITER_NEXT(sd

[EGIT] [core/efl] master 01/01: Introduce Efl.Ui.Tags(changed from elm_multibuttonentry)

2018-05-02 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=8c6ae23c86fdf6727e818b595ebcd555bc2ec85c

commit 8c6ae23c86fdf6727e818b595ebcd555bc2ec85c
Author: Woochan Lee <wc0917@samsung.com>
Date:   Wed May 2 17:23:25 2018 +0900

Introduce Efl.Ui.Tags(changed from elm_multibuttonentry)

Summary:
https://phab.enlightenment.org/T5358

Create new concept of adding items and rename widget to tags.

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6008
---
 data/elementary/themes/Makefile.am   |1 +
 data/elementary/themes/colorclasses.edc  |   24 +
 data/elementary/themes/default.edc   |1 +
 data/elementary/themes/edc/efl/tags.edc  |  323 
 src/Makefile_Elementary.am   |4 +
 src/bin/elementary/Makefile.am   |1 +
 src/bin/elementary/test.c|2 +
 src/bin/elementary/test_ui_tags.c|   69 ++
 src/lib/elementary/Elementary.h  |1 +
 src/lib/elementary/efl_ui_tags.c | 1177 ++
 src/lib/elementary/efl_ui_tags.eo|   57 ++
 src/lib/elementary/efl_ui_tags_private.h |   48 ++
 src/lib/elementary/elm_config.c  |   10 +
 13 files changed, 1718 insertions(+)

diff --git a/data/elementary/themes/Makefile.am 
b/data/elementary/themes/Makefile.am
index 992d5ca500..6aaf061966 100644
--- a/data/elementary/themes/Makefile.am
+++ b/data/elementary/themes/Makefile.am
@@ -1024,6 +1024,7 @@ elementary/themes/edc/efl/focus.edc \
 elementary/themes/edc/efl/frame.edc \
 elementary/themes/edc/efl/navigation_bar.edc \
 elementary/themes/edc/efl/navigation_layout.edc \
+elementary/themes/edc/efl/tags.edc \
 elementary/themes/edc/efl/nstate.edc \
 elementary/themes/edc/efl/panes.edc \
 elementary/themes/edc/efl/photocam.edc \
diff --git a/data/elementary/themes/colorclasses.edc 
b/data/elementary/themes/colorclasses.edc
index 2500ce7ab4..0af1fc4875 100644
--- a/data/elementary/themes/colorclasses.edc
+++ b/data/elementary/themes/colorclasses.edc
@@ -394,6 +394,30 @@ color_classes {
   color: FN_COL_DISABLE;
   desc: "Text of a disabled multibuttonentry item";
}
+   color_class { name: "tags_bg";
+  color: 0 0 0 0;
+  desc: "Background of a tags widget";
+   }
+   color_class { name: "tags_item_bg";
+  color: 0 0 0 0;
+  desc: "Background of a tags item object";
+   }
+   color_class { name: "tags_item_bg_selected";
+  color: 0 0 0 0;
+  desc: "Background of a selected tags item object";
+   }
+   color_class { name: "tags_item_text";
+  color: FN_COL_DEFAULT;
+  desc: "Text of a tags item";
+   }
+   color_class { name: "tags_item_text_pressed";
+  color: FN_COL_HIGHLIGHT;
+  desc: "Text of a pressed tags item";
+   }
+   color_class { name: "tags_item_text_disabled";
+  color: FN_COL_DISABLE;
+  desc: "Text of a disabled tags item";
+   }
color_class { "elm/win/background";
   color: 64 64 64 255;
   desc: "Background color of a standard window";
diff --git a/data/elementary/themes/default.edc 
b/data/elementary/themes/default.edc
index 67fbd78720..e3f94b8a3c 100644
--- a/data/elementary/themes/default.edc
+++ b/data/elementary/themes/default.edc
@@ -184,6 +184,7 @@ collections {
 #include "edc/efl/popup.edc"
 #include "edc/efl/video.edc"
 #include "edc/efl/focus.edc"
+#include "edc/efl/tags.edc"
 #include "edc/efl/tooltip.edc"
 #include "edc/efl/photocam.edc"
 #include "edc/efl/progress.edc"
diff --git a/data/elementary/themes/edc/efl/tags.edc 
b/data/elementary/themes/edc/efl/tags.edc
new file mode 100644
index 00..11f28788db
--- /dev/null
+++ b/data/elementary/themes/edc/efl/tags.edc
@@ -0,0 +1,323 @@
+group { "efl/tags";
+   data.item: "horizontal_pad" 0;
+   data.item: "vertical_pad" 0;
+   data.item: "closed_height" 0;
+   parts {
+  rect { "bg";
+ scale;
+ desc { "default";
+color_class: "tags_bg";
+ }
+  }
+  swallow { "efl.swallow.background";
+ scale;
+ desc { "default";
+rel.to: "bg";
+ }
+  }
+  swallow { "box.swallow";
+ desc { "default";
+rel.to: "bg";
+ }
+  }
+   }
+}
+
+group { "efl/tags/label";
+   parts {
+  text { "efl.text";
+ nomouse;
+ effect: GLOW;
+ scale;
+ desc { "default";
+color: FN_COL_HIGHLIGHT;
+color_class: "tags_label";
+text

[EGIT] [core/efl] master 01/01: Intrudoce Efl Ui Date, Time interface and picker.

2018-04-25 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=ef2e6afd1f7c890297900937fa1f12f0f4f76980

commit ef2e6afd1f7c890297900937fa1f12f0f4f76980
Author: Woochan Lee <wc0917@samsung.com>
Date:   Wed Apr 25 16:43:53 2018 +0900

Intrudoce Efl Ui Date, Time interface and picker.

Summary: Create datepicker, timepicker with one manager class(efl_datetime).

Test Plan: datepicker, timepicker sample.

Reviewers: herb, Jaehyun_Cho, woohyun, SanghyeonLee

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5871
---
 data/elementary/themes/Makefile.am |   2 +
 data/elementary/themes/colorclasses.edc|   8 +
 data/elementary/themes/default.edc |   2 +
 data/elementary/themes/edc/efl/datepicker.edc  | 345 +
 data/elementary/themes/edc/efl/spin_button.edc |   4 +
 data/elementary/themes/edc/efl/timepicker.edc  | 409 +
 data/elementary/themes/edc/elm/entry.edc   |   2 -
 src/Makefile_Elementary.am |  10 +
 src/bin/elementary/Makefile.am |   2 +
 src/bin/elementary/test.c  |   4 +
 src/bin/elementary/test_ui_datepicker.c|  37 +++
 src/bin/elementary/test_ui_timepicker.c|  36 +++
 src/lib/elementary/Elementary.h|   2 +
 src/lib/elementary/efl_datetime_manager.c  | 193 
 src/lib/elementary/efl_datetime_manager.eo |  50 +++
 src/lib/elementary/efl_ui_datepicker.c | 349 +
 src/lib/elementary/efl_ui_datepicker.eo|  75 +
 src/lib/elementary/efl_ui_datepicker_private.h |  22 ++
 src/lib/elementary/efl_ui_spin_button.c|   9 +-
 src/lib/elementary/efl_ui_timepicker.c | 285 +
 src/lib/elementary/efl_ui_timepicker.eo|  44 +++
 src/lib/elementary/efl_ui_timepicker_private.h |  21 ++
 src/lib/elementary/elm_config.c|   2 +
 src/lib/elementary/elm_priv.h  |   1 +
 24 files changed, 1905 insertions(+), 9 deletions(-)

diff --git a/data/elementary/themes/Makefile.am 
b/data/elementary/themes/Makefile.am
index 8ae08444af..992d5ca500 100644
--- a/data/elementary/themes/Makefile.am
+++ b/data/elementary/themes/Makefile.am
@@ -1035,6 +1035,8 @@ elementary/themes/edc/efl/scroller.edc \
 elementary/themes/edc/efl/slider.edc \
 elementary/themes/edc/efl/spin.edc \
 elementary/themes/edc/efl/spin_button.edc \
+elementary/themes/edc/efl/datepicker.edc \
+elementary/themes/edc/efl/timepicker.edc \
 elementary/themes/edc/efl/text.edc \
 elementary/themes/edc/efl/textpath.edc \
 elementary/themes/edc/efl/tooltip.edc \
diff --git a/data/elementary/themes/colorclasses.edc 
b/data/elementary/themes/colorclasses.edc
index bf294bfe1c..2500ce7ab4 100644
--- a/data/elementary/themes/colorclasses.edc
+++ b/data/elementary/themes/colorclasses.edc
@@ -208,6 +208,14 @@ color_classes {
   color: 0 0 0 0;
   desc: "Background of a datetime widget";
}
+   color_class { name: "datepicker_bg";
+  color: 0 0 0 0;
+  desc: "Background of a datepicker widget";
+   }
+   color_class { name: "timepicker_bg";
+  color: 0 0 0 0;
+  desc: "Background of a timepicker widget";
+   }
color_class { name: "datetime_separator_text";
   color: FN_COL_DEFAULT;
   desc: "Text in a datetime separator area";
diff --git a/data/elementary/themes/default.edc 
b/data/elementary/themes/default.edc
index 00f8973c8b..67fbd78720 100644
--- a/data/elementary/themes/default.edc
+++ b/data/elementary/themes/default.edc
@@ -190,6 +190,8 @@ collections {
 #include "edc/efl/border.edc"
 #include "edc/efl/spin.edc"
 #include "edc/efl/spin_button.edc"
+#include "edc/efl/datepicker.edc"
+#include "edc/efl/timepicker.edc"
 // XXX: min size calc problems - too wide! ... err ok on my 32bit box... eh?
 #include "edc/efl/cursor.edc"
 #include "edc/efl/pointer.edc"
diff --git a/data/elementary/themes/edc/efl/datepicker.edc 
b/data/elementary/themes/edc/efl/datepicker.edc
new file mode 100644
index 00..f0fa470313
--- /dev/null
+++ b/data/elementary/themes/edc/efl/datepicker.edc
@@ -0,0 +1,345 @@
+group { "efl/datepicker";
+   parts {
+  spacer { "base";
+ scale;
+ desc { "default";
+ min: 150 170;
+ }
+  }
+  rect { "base_bg";
+ scale;
+ desc { "default";
+rel.to: "base";
+color_class: "datepicker_bg";
+ }
+  }
+  spacer { "padding_bg_top";
+ scale;
+ desc { "default";
+min: 0 10;
+max: -1 10;
+fixed: 0 1;
+rel1 {
+

[EGIT] [core/efl] master 01/01: Revert Efl.Ui.Multibuttonentry to create new one.

2018-04-19 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=939690a8a99b04d9e67b6b90bc80de639a7e8941

commit 939690a8a99b04d9e67b6b90bc80de639a7e8941
Author: Woochan Lee <wc0917@samsung.com>
Date:   Thu Apr 19 22:20:29 2018 +0900

Revert Efl.Ui.Multibuttonentry to create new one.

Summary:
Revert e02b2f04c2945ad60fab5612af1e02b0838b7ff5.

I couldnt make a revert commit for many commit has been related with above 
commit.

I will create a new MBE eo class ASAP. 
(https://phab.enlightenment.org/T5358)

Reviewers: cedric, woohyun, Jaehyun_Cho, SanghyeonLee, herb

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5954
---
 po/POTFILES.in |   2 +-
 src/Makefile_Elementary.am |  11 +-
 src/bin/elementary/test_part_bg.c  |  33 +-
 src/lib/elementary/efl_ui_multibuttonentry.h   |  68 ---
 ...i_multibuttonentry.c => elc_multibuttonentry.c} | 466 +
 src/lib/elementary/elc_multibuttonentry.h  |   2 +-
 ...ibuttonentry_eo.h => elc_multibuttonentry_eo.h} |   2 +-
 ...multibuttonentry.eo => elm_multibuttonentry.eo} |  33 +-
 ...nentry_part.eo => elm_multibuttonentry_part.eo} |   2 +-
 ...try_private.h => elm_widget_multibuttonentry.h} |  23 +-
 10 files changed, 248 insertions(+), 394 deletions(-)

diff --git a/po/POTFILES.in b/po/POTFILES.in
index 425f35c5ad..4c906e905b 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -97,7 +97,7 @@ src/lib/elementary/elc_fileselector.c
 src/lib/elementary/elc_fileselector_button.c
 src/lib/elementary/elc_fileselector_entry.c
 src/lib/elementary/elc_hoversel.c
-src/lib/elementary/efl_ui_multibuttonentry.c
+src/lib/elementary/elc_multibuttonentry.c
 src/lib/elementary/elc_naviframe.c
 src/lib/elementary/elc_player.c
 src/lib/elementary/elc_popup.c
diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index 02008ee6e1..0ae0a2d21b 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -14,7 +14,6 @@ elm_public_eolian_files = \
lib/elementary/efl_ui_image.eo \
lib/elementary/efl_ui_image_zoomable.eo \
lib/elementary/efl_ui_layout.eo \
-   lib/elementary/efl_ui_multibuttonentry.eo \
lib/elementary/efl_ui_nstate.eo \
lib/elementary/efl_ui_panes.eo \
lib/elementary/efl_ui_progressbar.eo \
@@ -75,7 +74,6 @@ elm_public_eolian_files = \
lib/elementary/efl_ui_view_list_pan.eo \
lib/elementary/efl_ui_view_list_segarray.eo \
lib/elementary/efl_ui_view_list_relayout.eo \
-   lib/elementary/efl_ui_multibuttonentry_part.eo \
lib/elementary/efl_ui_panes_part.eo \
lib/elementary/efl_ui_progressbar_part.eo \
lib/elementary/efl_ui_slider_part_indicator.eo \
@@ -150,7 +148,6 @@ elm_legacy_eolian_files = \
lib/elementary/efl_ui_slider_legacy.eo \
lib/elementary/efl_ui_panes_legacy.eo \
lib/elementary/efl_ui_image_zoomable_legacy.eo \
-   lib/elementary/efl_ui_multibuttonentry_legacy.eo \
lib/elementary/efl_ui_flip_legacy.eo \
lib/elementary/efl_ui_win_legacy.eo \
lib/elementary/efl_ui_image_legacy.eo \
@@ -182,6 +179,7 @@ elm_legacy_eolian_files = \
lib/elementary/elm_map.eo \
lib/elementary/elm_map_pan.eo \
lib/elementary/elm_menu.eo \
+   lib/elementary/elm_multibuttonentry.eo \
lib/elementary/elm_notify.eo \
lib/elementary/elm_panel.eo \
lib/elementary/elm_player.eo \
@@ -197,6 +195,7 @@ elm_legacy_eolian_files = \
lib/elementary/elm_dayselector_item.eo \
lib/elementary/elm_flipselector_item.eo \
lib/elementary/elm_menu_item.eo \
+   lib/elementary/elm_multibuttonentry_part.eo \
lib/elementary/elm_ctxpopup_item.eo \
lib/elementary/elm_index_item.eo \
lib/elementary/elm_widget_item_static_focus.eo \
@@ -348,7 +347,7 @@ includesunstable_HEADERS = \
lib/elementary/elm_widget_map.h \
lib/elementary/elm_widget_mapbuf.h \
lib/elementary/elm_widget_menu.h \
-   lib/elementary/efl_ui_multibuttonentry_private.h \
+   lib/elementary/elm_widget_multibuttonentry.h \
lib/elementary/elm_widget_naviframe.h \
lib/elementary/elm_widget_notify.h \
lib/elementary/elm_widget_panel.h \
@@ -389,7 +388,6 @@ includesunstable_HEADERS = \
lib/elementary/elm_code_file.h \
lib/elementary/elm_code_parse.h \
lib/elementary/elm_code_syntax.h \
-   lib/elementary/efl_ui_multibuttonentry.h \
lib/elementary/efl_ui_widget_scroller.h \
lib/elementary/efl_ui_widget_scroll_manager.h \
lib/elementary/efl_ui_widget_pan.h \
@@ -416,7 +414,6 @@ includesub_HEADERS = \
lib/elementary/elc_hoversel.h \
lib/elementary/elc_hoversel_legacy.h \
 

[EGIT] [core/efl] master 04/04: elementary: add new config value to handle tap finger size.

2018-04-09 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=0088189eee8baf87070f1924a1e657164f9b2962

commit 0088189eee8baf87070f1924a1e657164f9b2962
Author: Woochan Lee <wc0917@samsung.com>
Date:   Mon Apr 9 10:27:57 2018 -0700

elementary: add new config value to handle tap finger size.

Summary:
The tap_finger_size value of the concept is different from the finger_size 
value used in the past.

We need a minimum value for recognize the gesture as a tap or not.

Since the actual screen has different screen sizes, there is a problem that 
the recognition rate of tap is lowered when using the existing 
value(finger_size)

Test Plan: elementary_test -> gesture sample.

Reviewers: cedric, woohyun, Jaehyun_Cho, herb, id213sin

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5842

Reviewed-by: Cedric BAIL <ced...@osg.samsung.com>
Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 config/default/base.src.in |  1 +
 config/mobile/base.src.in  |  1 +
 config/standard/base.src.in|  1 +
 src/lib/elementary/elm_config.c|  6 ++
 src/lib/elementary/elm_gesture_layer.c | 32 +++-
 src/lib/elementary/elm_priv.h  |  2 ++
 6 files changed, 26 insertions(+), 17 deletions(-)

diff --git a/config/default/base.src.in b/config/default/base.src.in
index 7e9444c10c..853625d3b4 100644
--- a/config/default/base.src.in
+++ b/config/default/base.src.in
@@ -72,6 +72,7 @@ group "Elm_Config" struct {
   value "glayer_long_tap_start_timeout" double: 1.2; /* sec to start long-tap 
*/
   value "glayer_double_tap_timeout" double: 0.25; /* Timeout between two mouse 
dows when doing double click (and more). */
   value "glayer_continues_enable" uchar: 1;  /* Continues gesture 
enabled */
+  value "glayer_tap_finger_size" int: 10;
   value "week_start" int: 1;
   value "weekend_start" int: 6;
   value "weekend_len" int: 2;
diff --git a/config/mobile/base.src.in b/config/mobile/base.src.in
index 18d3612548..0fdb4f47ad 100644
--- a/config/mobile/base.src.in
+++ b/config/mobile/base.src.in
@@ -72,6 +72,7 @@ group "Elm_Config" struct {
   value "glayer_long_tap_start_timeout" double: 1.2; /* sec to start long-tap 
*/
   value "glayer_double_tap_timeout" double: 0.25; /* Timeout between two mouse 
dows when doing double click (and more). */
   value "glayer_continues_enable" uchar: 1;  /* Continues gesture 
enabled */
+  value "glayer_tap_finger_size" int: 10;
   value "week_start" int: 1;
   value "weekend_start" int: 6;
   value "weekend_len" int: 2;
diff --git a/config/standard/base.src.in b/config/standard/base.src.in
index 9781512539..a79b07ba04 100644
--- a/config/standard/base.src.in
+++ b/config/standard/base.src.in
@@ -73,6 +73,7 @@ group "Elm_Config" struct {
   value "glayer_long_tap_start_timeout" double: 1.2; /* sec to start long-tap 
*/
   value "glayer_double_tap_timeout" double: 0.25; /* Timeout between two mouse 
dows when doing double click (and more). */
   value "glayer_continues_enable" uchar: 1;  /* Continues gesture 
enabled */
+  value "glayer_tap_finger_size" int: 10;
   value "week_start" int: 1;
   value "weekend_start" int: 6;
   value "weekend_len" int: 2;
diff --git a/src/lib/elementary/elm_config.c b/src/lib/elementary/elm_config.c
index b2cbf99601..da29ddf0e7 100644
--- a/src/lib/elementary/elm_config.c
+++ b/src/lib/elementary/elm_config.c
@@ -461,6 +461,7 @@ _desc_init(void)
ELM_CONFIG_VAL(D, T, glayer_flick_time_limit_ms, T_INT);
ELM_CONFIG_VAL(D, T, glayer_long_tap_start_timeout, T_DOUBLE);
ELM_CONFIG_VAL(D, T, glayer_double_tap_timeout, T_DOUBLE);
+   ELM_CONFIG_VAL(D, T, glayer_tap_finger_size, T_INT);
ELM_CONFIG_VAL(D, T, access_mode, T_UCHAR);
ELM_CONFIG_VAL(D, T, selection_clear_enable, T_UCHAR);
ELM_CONFIG_VAL(D, T, glayer_continues_enable, T_UCHAR);
@@ -1796,6 +1797,7 @@ _config_load(void)
_elm_config->glayer_long_tap_start_timeout = 1.2;   /* 1.2 second to start 
long-tap */
_elm_config->glayer_double_tap_timeout = 0.25;   /* 0.25 seconds between 2 
mouse downs of a tap. */
_elm_config->glayer_continues_enable = EINA_TRUE;  /* Continue gestures 
default */
+   _elm_config->glayer_tap_finger_size = 10;
_elm_config->access_mode = ELM_ACCESS_MODE_OFF;
_elm_config->selection_clear_enable = EINA_FALSE;
_elm_config->week_start = 1; /* monday */
@@ -1955,6 +1957,7 @@ _elm_config_reload_do(void)
 KEEP_VAL(glayer_flick_time_limit_ms);
 KEEP_VAL(glayer_long_tap_start_timeout);
 KEEP_VAL(glayer_double_tap_time

[EGIT] [core/efl] master 03/04: ecore_evas: check return value.

2018-04-09 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=f9fa8bfcb002cba71d182c40824a225c40d162bc

commit f9fa8bfcb002cba71d182c40824a225c40d162bc
Author: Woochan Lee <wc0917@samsung.com>
Date:   Mon Apr 9 10:18:38 2018 -0700

ecore_evas: check return value.

Summary: After migration this code in Tizen. The coverity said it needs to 
check return value(CID 39562).

Reviewers: raster, myoungwoon, woohyun, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5907

Reviewed-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/ecore_evas/ecore_evas_buffer.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/ecore_evas/ecore_evas_buffer.c 
b/src/lib/ecore_evas/ecore_evas_buffer.c
index efa729cb0b..9b00ad9307 100644
--- a/src/lib/ecore_evas/ecore_evas_buffer.c
+++ b/src/lib/ecore_evas/ecore_evas_buffer.c
@@ -503,7 +503,8 @@ _ecore_evas_buffer_alpha_set(Ecore_Evas *ee, int alpha)
einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_ARGB32;
  else
einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_RGB32;
- evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo);
+ if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo))
+   ERR("evas_engine_info_set() for engine '%s' failed.", 
ee->driver);
   }
  }
 }

-- 




[EGIT] [core/efl] master 01/01: efl_ui_clock: Fix wrong target to compare with.

2018-03-20 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=008d9901814f33a2c1f4d1e5058882494f0f9d48

commit 008d9901814f33a2c1f4d1e5058882494f0f9d48
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Mar 20 21:09:30 2018 +0900

efl_ui_clock: Fix wrong target to compare with.

Summary:
It breaks API action.

It missed when implement efl_ui_clock i think.

@fix

Test Plan: elementary_test -> efl_ui_clock sample.

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5826
---
 src/lib/elementary/efl_ui_clock.c | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/lib/elementary/efl_ui_clock.c 
b/src/lib/elementary/efl_ui_clock.c
index dec9b2dfaa..694c0a2492 100644
--- a/src/lib/elementary/efl_ui_clock.c
+++ b/src/lib/elementary/efl_ui_clock.c
@@ -698,7 +698,7 @@ _field_format_get(Evas_Object *obj,
 {
Clock_Field *field;
 
-   if (field_type > EFL_UI_CLOCK_TYPE_DAY) return NULL;
+   if (field_type > EFL_UI_CLOCK_TYPE_AMPM) return NULL;
 
EFL_UI_CLOCK_DATA_GET(obj, sd);
 
@@ -963,7 +963,7 @@ _efl_ui_clock_field_visible_get(Eo *obj EINA_UNUSED, 
Efl_Ui_Clock_Data *sd, Efl_
 {
Clock_Field *field;
 
-   if (fieldtype > EFL_UI_CLOCK_TYPE_DAY) return EINA_FALSE;
+   if (fieldtype > EFL_UI_CLOCK_TYPE_AMPM) return EINA_FALSE;
 
field = sd->field_list + fieldtype;
 
@@ -976,7 +976,7 @@ _efl_ui_clock_field_visible_set(Eo *obj, Efl_Ui_Clock_Data 
*sd, Efl_Ui_Clock_Typ
char buf[BUFFER_SIZE];
Clock_Field *field;
 
-   if (fieldtype > EFL_UI_CLOCK_TYPE_DAY) return;
+   if (fieldtype > EFL_UI_CLOCK_TYPE_AMPM) return;
 
field = sd->field_list + fieldtype;
visible = !!visible;
@@ -1035,7 +1035,7 @@ _efl_ui_clock_field_limit_get(Eo *obj EINA_UNUSED, 
Efl_Ui_Clock_Data *sd, Efl_Ui
 {
Clock_Field *field;
 
-   if (fieldtype >= EFL_UI_CLOCK_TYPE_DAY) return;
+   if (fieldtype >= EFL_UI_CLOCK_TYPE_AMPM) return;
 
field = sd->field_list + fieldtype;
if (min) *min = field->min;
@@ -1048,7 +1048,7 @@ _efl_ui_clock_field_limit_set(Eo *obj, Efl_Ui_Clock_Data 
*sd, Efl_Ui_Clock_Type
Clock_Field *field;
struct tm old_time;
 
-   if (fieldtype >= EFL_UI_CLOCK_TYPE_DAY) return;
+   if (fieldtype >= EFL_UI_CLOCK_TYPE_AMPM) return;
 
if (min > max) return;
 

-- 




[EGIT] [core/efl] master 06/13: efl_ui_multibuttonentry: maintainance legacy function type.

2018-03-06 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=6b29613bbecc65f16dddcd50c902c9f59da3e77f

commit 6b29613bbecc65f16dddcd50c902c9f59da3e77f
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Mar 6 17:28:53 2018 -0800

efl_ui_multibuttonentry: maintainance legacy function type.

Summary:
I did it wrong.

The "Elm_Multibuttonentry_Format_Cb" should be maintain for legacy.

efl_ui_XXX has to use efl_format interface.

@fix

Test Plan: elementary_test->multibuttonentry sample.

Reviewers: cedric, woohyun, Jaehyun

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5824

Signed-off-by: Cedric Bail <ced...@osg.samsung.com>
---
 src/bin/elementary/test_datetime.c   | 1 -
 src/bin/elementary/test_multibuttonentry.c   | 2 +-
 src/lib/elementary/efl_ui_multibuttonentry.c | 4 ++--
 src/lib/elementary/elc_multibuttonentry_common.h | 2 +-
 src/lib/elementary/elc_multibuttonentry_legacy.h | 2 +-
 5 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/src/bin/elementary/test_datetime.c 
b/src/bin/elementary/test_datetime.c
index 6bc0f8c583..719275baca 100644
--- a/src/bin/elementary/test_datetime.c
+++ b/src/bin/elementary/test_datetime.c
@@ -34,7 +34,6 @@ _bt_clicked(void *data EINA_UNUSED, Evas_Object *obj, void 
*event_info EINA_UNUS
efl_ui_clock_pause_set(dt1, EINA_TRUE);
elm_datetime_value_set(dt1, _time);
elm_object_disabled_set(dt1, EINA_TRUE);
-
elm_object_disabled_set(obj, EINA_TRUE);
evas_object_del(dt2);
evas_object_del(dt3);
diff --git a/src/bin/elementary/test_multibuttonentry.c 
b/src/bin/elementary/test_multibuttonentry.c
index 2d371416a1..e4c3370908 100644
--- a/src/bin/elementary/test_multibuttonentry.c
+++ b/src/bin/elementary/test_multibuttonentry.c
@@ -3,7 +3,7 @@
 #endif
 #include 
 
-static Efl_Ui_Multibuttonentry_Format_Cb format_func = NULL;
+static Elm_Multibuttonentry_Format_Cb format_func = NULL;
 
 static char *
 _custom_format(int count, void *data EINA_UNUSED)
diff --git a/src/lib/elementary/efl_ui_multibuttonentry.c 
b/src/lib/elementary/efl_ui_multibuttonentry.c
index 5c6ec2c18c..5ec2c27c17 100644
--- a/src/lib/elementary/efl_ui_multibuttonentry.c
+++ b/src/lib/elementary/efl_ui_multibuttonentry.c
@@ -2099,7 +2099,7 @@ elm_multibuttonentry_add(Evas_Object *parent)
 
 typedef struct
 {
-   Efl_Ui_Multibuttonentry_Format_Cb format_cb;
+   Elm_Multibuttonentry_Format_Cb format_cb;
void *data;
 } Mbe_Format_Wrapper_Data ;
 
@@ -2130,7 +2130,7 @@ _format_legacy_to_format_eo_free_cb(void *data)
 }
 
 EAPI void
-elm_multibuttonentry_format_function_set(Eo *obj, 
Efl_Ui_Multibuttonentry_Format_Cb format_function, const void *data)
+elm_multibuttonentry_format_function_set(Eo *obj, 
Elm_Multibuttonentry_Format_Cb format_function, const void *data)
 {
Mbe_Format_Wrapper_Data *mfwd = malloc(sizeof(Mbe_Format_Wrapper_Data));
 
diff --git a/src/lib/elementary/elc_multibuttonentry_common.h 
b/src/lib/elementary/elc_multibuttonentry_common.h
index 8601dbffcc..b076385698 100644
--- a/src/lib/elementary/elc_multibuttonentry_common.h
+++ b/src/lib/elementary/elc_multibuttonentry_common.h
@@ -30,4 +30,4 @@ typedef Eina_Bool   
(*Elm_Multibuttonentry_Item_Filter_Cb)(Evas_
  *
  * @ingroup Multibuttonentry
  */
-typedef char * (*Efl_Ui_Multibuttonentry_Format_Cb)(int count, void *data);
+typedef char * (*Elm_Multibuttonentry_Format_Cb)(int count, void *data);
diff --git a/src/lib/elementary/elc_multibuttonentry_legacy.h 
b/src/lib/elementary/elc_multibuttonentry_legacy.h
index 8831fe71ca..98b666b05a 100644
--- a/src/lib/elementary/elc_multibuttonentry_legacy.h
+++ b/src/lib/elementary/elc_multibuttonentry_legacy.h
@@ -24,7 +24,7 @@ EAPI Evas_Object   
*elm_multibuttonentry_add(Evas_Object *parent);
  *
  * @ingroup Multibuttonentry
  */
- EAPI void elm_multibuttonentry_format_function_set(Eo *obj, 
Efl_Ui_Multibuttonentry_Format_Cb format_function, const void *data);
+ EAPI void elm_multibuttonentry_format_function_set(Eo *obj, 
Elm_Multibuttonentry_Format_Cb format_function, const void *data);
 
 #include "elm_multibuttonentry_item.eo.legacy.h"
 #include "efl_ui_multibuttonentry.eo.legacy.h"

-- 




[EGIT] [core/efl] master 10/13: elementary: add missed type for legacy.

2018-03-06 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=eb865ab5376a6c3fb4fd526dcb356c3e927f0e45

commit eb865ab5376a6c3fb4fd526dcb356c3e927f0e45
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Mar 6 17:52:53 2018 -0800

elementary: add missed type for legacy.

Summary:
We've been missed type of class name.

Add legacy class name to maintain compatibility.

@fix

Reviewers: jpeg, woohyun, Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5749

Signed-off-by: Cedric Bail <ced...@osg.samsung.com>
---
 src/lib/elementary/efl_ui_flip_legacy.h  | 2 ++
 src/lib/elementary/efl_ui_frame_legacy.h | 4 +++-
 src/lib/elementary/efl_ui_video_legacy.h | 2 ++
 src/lib/elementary/elc_multibuttonentry_legacy.h | 2 ++
 src/lib/elementary/elm_bg_legacy.h   | 2 ++
 src/lib/elementary/elm_button_legacy.h   | 2 ++
 src/lib/elementary/elm_check_legacy.h| 2 ++
 src/lib/elementary/elm_datetime.h| 2 ++
 src/lib/elementary/elm_layout_legacy.h   | 2 ++
 src/lib/elementary/elm_panes_legacy.h| 2 ++
 src/lib/elementary/elm_photocam_legacy.h | 2 ++
 src/lib/elementary/elm_progressbar_legacy.h  | 4 +++-
 src/lib/elementary/elm_radio_legacy.h| 2 ++
 src/lib/elementary/elm_slider_legacy.h   | 2 ++
 14 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/src/lib/elementary/efl_ui_flip_legacy.h 
b/src/lib/elementary/efl_ui_flip_legacy.h
index 5bbbaabc62..8470bb187d 100644
--- a/src/lib/elementary/efl_ui_flip_legacy.h
+++ b/src/lib/elementary/efl_ui_flip_legacy.h
@@ -1,5 +1,7 @@
 #include "efl_ui_flip.eo.legacy.h"
 
+typedef Eo Elm_Flip;
+
 typedef Efl_Ui_Flip_Interaction   Elm_Flip_Interaction;
 
 #define ELM_FLIP_INTERACTION_NONE EFL_UI_FLIP_INTERACTION_NONE
diff --git a/src/lib/elementary/efl_ui_frame_legacy.h 
b/src/lib/elementary/efl_ui_frame_legacy.h
index 3a1f89b233..7e96f12e30 100644
--- a/src/lib/elementary/efl_ui_frame_legacy.h
+++ b/src/lib/elementary/efl_ui_frame_legacy.h
@@ -1,3 +1,5 @@
+typedef Eo Elm_Frame;
+
 /**
  * @brief Add a new frame to the parent
  *
@@ -8,4 +10,4 @@
  */
 EAPI Evas_Object *elm_frame_add(Evas_Object *parent);
 
-#include "efl_ui_frame.eo.legacy.h"
\ No newline at end of file
+#include "efl_ui_frame.eo.legacy.h"
diff --git a/src/lib/elementary/efl_ui_video_legacy.h 
b/src/lib/elementary/efl_ui_video_legacy.h
index a92a1e3284..70ac16a718 100644
--- a/src/lib/elementary/efl_ui_video_legacy.h
+++ b/src/lib/elementary/efl_ui_video_legacy.h
@@ -1,3 +1,5 @@
+typedef Eo Elm_Video;
+
 /**
  * @brief Add a new Elm_Player object to the given parent Elementary 
(container) object.
  *
diff --git a/src/lib/elementary/elc_multibuttonentry_legacy.h 
b/src/lib/elementary/elc_multibuttonentry_legacy.h
index 98b666b05a..c633be7cd0 100644
--- a/src/lib/elementary/elc_multibuttonentry_legacy.h
+++ b/src/lib/elementary/elc_multibuttonentry_legacy.h
@@ -1,3 +1,5 @@
+typedef Eo Elm_Multibuttonentry;
+
 /**
  * @brief Add a new multibuttonentry to the parent
  *
diff --git a/src/lib/elementary/elm_bg_legacy.h 
b/src/lib/elementary/elm_bg_legacy.h
index 394d96a24c..66f56e7501 100644
--- a/src/lib/elementary/elm_bg_legacy.h
+++ b/src/lib/elementary/elm_bg_legacy.h
@@ -1,3 +1,5 @@
+typedef Eo Elm_Bg;
+
 /**
  * @brief Identifiers on how a background widget is to display its image
  *
diff --git a/src/lib/elementary/elm_button_legacy.h 
b/src/lib/elementary/elm_button_legacy.h
index 05760f82db..be2beab1b1 100644
--- a/src/lib/elementary/elm_button_legacy.h
+++ b/src/lib/elementary/elm_button_legacy.h
@@ -1,3 +1,5 @@
+typedef Eo Elm_Button;
+
 /**
  * Add a new button to the parent's canvas
  *
diff --git a/src/lib/elementary/elm_check_legacy.h 
b/src/lib/elementary/elm_check_legacy.h
index 6cc2d05582..10240b57e2 100644
--- a/src/lib/elementary/elm_check_legacy.h
+++ b/src/lib/elementary/elm_check_legacy.h
@@ -1,3 +1,5 @@
+typedef Eo Elm_Check;
+
 /**
  * @brief Add a new Check object
  *
diff --git a/src/lib/elementary/elm_datetime.h 
b/src/lib/elementary/elm_datetime.h
index 9a111a1be9..cc47da298d 100644
--- a/src/lib/elementary/elm_datetime.h
+++ b/src/lib/elementary/elm_datetime.h
@@ -214,6 +214,8 @@ typedef enum
ELM_DATETIME_AMPM = 5 /**< Indicates AM/PM field . */
 } Elm_Datetime_Field_Type;
 
+typedef Eo Elm_Datetime;
+
 /**
  * @brief Adds a new datetime Widget
  *
diff --git a/src/lib/elementary/elm_layout_legacy.h 
b/src/lib/elementary/elm_layout_legacy.h
index a9fb13d2e6..58dab5bcc9 100644
--- a/src/lib/elementary/elm_layout_legacy.h
+++ b/src/lib/elementary/elm_layout_legacy.h
@@ -25,6 +25,8 @@ struct _Elm_Layout_Part_Alias_Description
   * with "elm.content.swallow" on this one */
 };
 
+typedef Eo Elm_Layou

[EGIT] [core/efl] master 09/13: elemetary: spinner - free the longpress_timer when unfocused

2018-03-06 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=533537c0f237e471a395d04edb5e7114a472d9d0

commit 533537c0f237e471a395d04edb5e7114a472d9d0
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Mar 6 17:52:17 2018 -0800

elemetary: spinner - free the longpress_timer when unfocused

Summary:
It needs to delete when widget unfocused.

@minkyu
Gets from tizen.
0bc1a19703dc204c8d347794bae0290006f4bde5

Reviewers: jpeg, Jaehyun_Cho, minkyu, cedric

Subscribers: minkyu, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5750

Signed-off-by: Cedric Bail <ced...@osg.samsung.com>
---
 src/lib/elementary/efl_ui_spin_button.c | 1 +
 src/lib/elementary/elm_spinner.c| 1 +
 2 files changed, 2 insertions(+)

diff --git a/src/lib/elementary/efl_ui_spin_button.c 
b/src/lib/elementary/efl_ui_spin_button.c
index c9d52e556b..64144176b3 100644
--- a/src/lib/elementary/efl_ui_spin_button.c
+++ b/src/lib/elementary/efl_ui_spin_button.c
@@ -579,6 +579,7 @@ _efl_ui_spin_button_efl_ui_focus_object_on_focus_update(Eo 
*obj, Efl_Ui_Spin_But
  {
 ELM_SAFE_FREE(sd->delay_change_timer, ecore_timer_del);
 ELM_SAFE_FREE(sd->spin_timer, ecore_timer_del);
+ELM_SAFE_FREE(sd->longpress_timer, ecore_timer_del);
  }
else
  {
diff --git a/src/lib/elementary/elm_spinner.c b/src/lib/elementary/elm_spinner.c
index 9852f96718..7fa4f7453b 100644
--- a/src/lib/elementary/elm_spinner.c
+++ b/src/lib/elementary/elm_spinner.c
@@ -941,6 +941,7 @@ _elm_spinner_efl_ui_focus_object_on_focus_update(Eo *obj, 
Elm_Spinner_Data *sd)
  {
 ELM_SAFE_FREE(sd->delay_change_timer, ecore_timer_del);
 ELM_SAFE_FREE(sd->spin_timer, ecore_timer_del);
+ELM_SAFE_FREE(sd->longpress_timer, ecore_timer_del);
  }
else
  {

-- 




[EGIT] [core/efl] master 01/01: elm_datetime: Handle wrong param case for legacy.

2018-02-27 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=9f63fac2d2df7689f3ce7b8a542d36c46cf64689

commit 9f63fac2d2df7689f3ce7b8a542d36c46cf64689
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Feb 27 20:01:22 2018 +0900

elm_datetime: Handle wrong param case for legacy.

Summary:
This wrapper didn't consider wrong param given case.

@fix

Test Plan: elementary_test -> elm_datetime sample.

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5825
---
 src/lib/elementary/elm_datetime.c | 56 ++-
 1 file changed, 50 insertions(+), 6 deletions(-)

diff --git a/src/lib/elementary/elm_datetime.c 
b/src/lib/elementary/elm_datetime.c
index b857971e0d..ce61668667 100644
--- a/src/lib/elementary/elm_datetime.c
+++ b/src/lib/elementary/elm_datetime.c
@@ -46,12 +46,16 @@ EAPI void
 elm_datetime_format_set(Evas_Object *obj,
 const char *fmt)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
+
efl_ui_clock_format_set(obj, fmt);
 }
 
 EAPI const char *
 elm_datetime_format_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
+
return efl_ui_clock_format_get(obj);
 }
 
@@ -88,65 +92,105 @@ adjust_field_type(Elm_Datetime_Field_Type type)
 EAPI void
 elm_datetime_field_limit_set(Evas_Object *obj, Elm_Datetime_Field_Type type, 
int min, int max)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
+
+   if ((type < ELM_DATETIME_YEAR) || (type >= ELM_DATETIME_AMPM)) return;
+
efl_ui_clock_field_limit_set(obj, adjust_field_type(type), min, max);
 }
 
 EAPI void
 elm_datetime_field_limit_get(const Evas_Object *obj, Elm_Datetime_Field_Type 
fieldtype, int *min, int *max)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
+
+   if ((fieldtype < ELM_DATETIME_YEAR) || (fieldtype >= ELM_DATETIME_AMPM)) 
return;
+
efl_ui_clock_field_limit_get(obj, adjust_field_type(fieldtype), min, max);
 }
 
 EAPI Eina_Bool
 elm_datetime_value_min_set(Evas_Object *obj, const Efl_Time *mintime)
 {
-   if (mintime) efl_ui_clock_time_min_set(obj, *mintime);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(mintime, EINA_FALSE);
+
+   efl_ui_clock_time_min_set(obj, *mintime);
+
return EINA_TRUE;
 }
 
 EAPI Eina_Bool
 elm_datetime_value_min_get(const Evas_Object *obj, Efl_Time *mintime)
 {
-   if (mintime) *mintime = efl_ui_clock_time_min_get(obj);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(mintime, EINA_FALSE);
+
+   *mintime = efl_ui_clock_time_min_get(obj);
+
return EINA_TRUE;
 }
 
 EAPI Eina_Bool
 elm_datetime_value_set(Evas_Object *obj, const Efl_Time *newtime)
 {
-   if (newtime) efl_ui_clock_time_set(obj, *newtime);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(newtime, EINA_FALSE);
+
+   efl_ui_clock_time_set(obj, *newtime);
+
return EINA_TRUE;
 }
 
 EAPI Eina_Bool
 elm_datetime_value_get(const Evas_Object *obj, Efl_Time *currtime)
 {
-   if (currtime) *currtime = efl_ui_clock_time_get(obj);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(currtime, EINA_FALSE);
+
+   *currtime = efl_ui_clock_time_get(obj);
+
return EINA_TRUE;
 }
 
 EAPI void
 elm_datetime_field_visible_set(Evas_Object *obj, Elm_Datetime_Field_Type 
fieldtype, Eina_Bool visible)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
+
+   if ((fieldtype < ELM_DATETIME_YEAR) || (fieldtype > ELM_DATETIME_AMPM)) 
return;
+
efl_ui_clock_field_visible_set(obj, adjust_field_type(fieldtype), visible);
 }
 
 EAPI Eina_Bool elm_datetime_field_visible_get(const Evas_Object *obj, 
Elm_Datetime_Field_Type fieldtype)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
+
+   if ((fieldtype < ELM_DATETIME_YEAR) || (fieldtype > ELM_DATETIME_AMPM)) 
return EINA_FALSE;
+
return efl_ui_clock_field_visible_get(obj, adjust_field_type(fieldtype));
 }
 
 EAPI Eina_Bool
 elm_datetime_value_max_set(Evas_Object *obj, const Efl_Time *maxtime)
 {
-   if (maxtime) efl_ui_clock_time_max_set(obj, *maxtime);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(maxtime, EINA_FALSE);
+
+   efl_ui_clock_time_max_set(obj, *maxtime);
+
return EINA_TRUE;
 }
 
 EAPI Eina_Bool
 elm_datetime_value_max_get(const Evas_Object *obj, Efl_Time *maxtime)
 {
-   if (maxtime) *maxtime = efl_ui_clock_time_max_get(obj);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(maxtime, EINA_FALSE);
+
+   *maxtime = efl_ui_clock_time_max_get(obj);
+
return EINA_TRUE;
 }
 

-- 




[EGIT] [core/efl] master 01/01: efl_ui_spin_button: Change property name to avoid name duplicating.

2017-12-10 Thread Woochan Lee
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=4b2f1abc9f3c6a6ffda8584057f86d461bf42cd9

commit 4b2f1abc9f3c6a6ffda8584057f86d461bf42cd9
Author: Woochan Lee <wc0917@samsung.com>
Date:   Mon Dec 11 16:30:31 2017 +0900

efl_ui_spin_button: Change property name to avoid name duplicating.

Summary:
The name 'loop' is already there in efl canvas.

loop -> circulate.

Test Plan: elementary_test -> efl_ui_spin_button test.

Reviewers: jpeg, Jaehyun_Cho, woohyun

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5639
---
 src/bin/elementary/test_ui_spin_button.c|  2 +-
 src/lib/elementary/efl_ui_spin_button.c | 10 +-
 src/lib/elementary/efl_ui_spin_button.eo|  8 
 src/lib/elementary/efl_ui_spin_button_private.h |  2 +-
 4 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/src/bin/elementary/test_ui_spin_button.c 
b/src/bin/elementary/test_ui_spin_button.c
index e9730721e7..ddb93f302c 100644
--- a/src/bin/elementary/test_ui_spin_button.c
+++ b/src/bin/elementary/test_ui_spin_button.c
@@ -27,7 +27,7 @@ test_ui_spin_button(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *
efl_ui_range_min_max_set(efl_added, 0, 10),
efl_ui_range_value_set(efl_added, 6),
efl_ui_range_step_set(efl_added, 2),
-   efl_ui_spin_button_loop_set(efl_added, EINA_TRUE),
+   efl_ui_spin_button_circulate_set(efl_added, EINA_TRUE),
efl_ui_spin_button_editable_set(efl_added, EINA_TRUE),
efl_event_callback_add(efl_added, 
EFL_UI_SPIN_BUTTON_EVENT_DELAY_CHANGED,_spin_delay_changed_cb, NULL),
efl_pack(bx, efl_added));
diff --git a/src/lib/elementary/efl_ui_spin_button.c 
b/src/lib/elementary/efl_ui_spin_button.c
index abc49eda93..d8d0f9ddb6 100644
--- a/src/lib/elementary/efl_ui_spin_button.c
+++ b/src/lib/elementary/efl_ui_spin_button.c
@@ -135,7 +135,7 @@ _value_set(Evas_Object *obj,
Efl_Ui_Spin_Button_Data *sd = efl_data_scope_get(obj, MY_CLASS);
Efl_Ui_Spin_Data *pd = efl_data_scope_get(obj, EFL_UI_SPIN_CLASS);
 
-   if (sd->loop)
+   if (sd->circulate)
  {
 if (new_val < pd->val_min)
   new_val = pd->val_max;
@@ -820,15 +820,15 @@ _efl_ui_spin_button_editable_get(Eo *obj EINA_UNUSED, 
Efl_Ui_Spin_Button_Data *s
 }
 
 EOLIAN static void
-_efl_ui_spin_button_loop_set(Eo *obj EINA_UNUSED, Efl_Ui_Spin_Button_Data *sd, 
Eina_Bool loop)
+_efl_ui_spin_button_circulate_set(Eo *obj EINA_UNUSED, Efl_Ui_Spin_Button_Data 
*sd, Eina_Bool circulate)
 {
-   sd->loop = loop;
+   sd->circulate = circulate;
 }
 
 EOLIAN static Eina_Bool
-_efl_ui_spin_button_loop_get(Eo *obj EINA_UNUSED, Efl_Ui_Spin_Button_Data *sd)
+_efl_ui_spin_button_circulate_get(Eo *obj EINA_UNUSED, Efl_Ui_Spin_Button_Data 
*sd)
 {
-   return sd->loop;
+   return sd->circulate;
 }
 
 EOLIAN static const Efl_Access_Action_Data *
diff --git a/src/lib/elementary/efl_ui_spin_button.eo 
b/src/lib/elementary/efl_ui_spin_button.eo
index e12841d838..ff89a2fa32 100644
--- a/src/lib/elementary/efl_ui_spin_button.eo
+++ b/src/lib/elementary/efl_ui_spin_button.eo
@@ -10,8 +10,8 @@ class Efl.Ui.Spin_Button (Efl.Ui.Spin, 
Efl.Ui.Focus.Composition,
  @since 1.21
]]
methods {
-  @property loop {
- [[Control whether the spin should loop when it reaches its minimum or 
maximum value.
+  @property circulate {
+ [[Control whether the spin should circulate value when it reaches its 
minimum or maximum value.
 
Disabled by default. If disabled, when the user tries to increment 
the
value,
@@ -21,7 +21,7 @@ class Efl.Ui.Spin_Button (Efl.Ui.Spin, 
Efl.Ui.Focus.Composition,
but the value less step is less than minimum value. In this case,
the new displayed value will be the minimum value.
 
-   When loop is enabled, when the user tries to increment the value,
+   When this is enabled, when the user tries to increment the value,
but displayed value plus step value is bigger than maximum value,
the new value will be the minimum value. When the the user tries to
decrement it, but the value less step is less than minimum value,
@@ -40,7 +40,7 @@ class Efl.Ui.Spin_Button (Efl.Ui.Spin, 
Efl.Ui.Focus.Composition,
  get {
  }
  values {
-loop: bool(false); [[$true to enable loop or $false to disable 
it.]]
+circulate: bool(false); [[$true to enable circulate or $false to 
disable it.]]
  }
   }
   @property editable {
diff --git a/src/lib/elementary/efl_ui_spin_button_private.h 
b/src/lib/elementary/efl_ui_spin_button_private.h
index 4b59f7c88a..217e9865be 100644
--- a/src/lib/elementary/efl_ui_spin_button_private.h
+++ b/src/lib/elementary/efl_ui_spin_bu

[EGIT] [core/efl] feature/eo_theme 01/01: efl_ui_spin_button: Replace legacy widgets to efl ui widgets.

2017-11-30 Thread Woochan Lee
jaehyun pushed a commit to branch feature/eo_theme.

http://git.enlightenment.org/core/efl.git/commit/?id=d89c0330c21101b2333dadf6fd5b0ee785877fea

commit d89c0330c21101b2333dadf6fd5b0ee785877fea
Author: Woochan Lee <wc0917@samsung.com>
Date:   Thu Nov 30 16:52:42 2017 +0900

efl_ui_spin_button: Replace legacy widgets to efl ui widgets.

Summary:
elm_button -> efl_ui_button class.

elm_entry will be changed after filter feature added.

Reviewers: Jaehyun_Cho, jpeg, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D
---
 src/lib/elementary/efl_ui_spin_button.c | 47 ++---
 1 file changed, 20 insertions(+), 27 deletions(-)

diff --git a/src/lib/elementary/efl_ui_spin_button.c 
b/src/lib/elementary/efl_ui_spin_button.c
index 21b0e28072..9a79ef66b8 100644
--- a/src/lib/elementary/efl_ui_spin_button.c
+++ b/src/lib/elementary/efl_ui_spin_button.c
@@ -352,6 +352,9 @@ _toggle_entry(Evas_Object *obj)
  {
 if (!sd->ent)
   {
+ //FIXME: elm_entry will be changed to efl_ui_text after
+ //   filter feature implemented.
+ //   (Current efl_ui_text has missed filter feature.)
  sd->ent = elm_entry_add(obj);
  Eina_Strbuf *buf = eina_strbuf_new();
  eina_strbuf_append_printf(buf, "spinner/%s", 
elm_widget_style_get(obj));
@@ -769,33 +772,23 @@ _efl_ui_spin_button_efl_object_finalize(Eo *obj, 
Efl_Ui_Spin_Button_Data *sd)
  elm_widget_style_get(obj)))
  CRI("Failed to set layout!");
 
-   sd->inc_button = elm_button_add(obj);
-   elm_object_style_set(sd->inc_button, "spinner/increase/default");
-
-   efl_event_callback_array_add(sd->inc_button, _inc_dec_button_cb(), obj);
-
-   elm_layout_content_set(obj, "elm.swallow.inc_button", sd->inc_button);
-   elm_widget_sub_object_add(obj, sd->inc_button);
-
-   sd->text_button = elm_button_add(obj);
-   elm_object_style_set(sd->text_button, "spinner/default");
-
-   efl_event_callback_add(sd->text_button, EFL_UI_EVENT_CLICKED,
-  _text_button_clicked_cb, obj);
-   efl_event_callback_add(sd->text_button,
-  EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED,
-  _text_button_focus_changed_cb, obj);
-
-   elm_layout_content_set(obj, "elm.swallow.text_button", sd->text_button);
-   elm_widget_sub_object_add(obj, sd->text_button);
-
-   sd->dec_button = elm_button_add(obj);
-   elm_object_style_set(sd->dec_button, "spinner/decrease/default");
-
-   efl_event_callback_array_add(sd->dec_button, _inc_dec_button_cb(), obj);
-
-   elm_layout_content_set(obj, "elm.swallow.dec_button", sd->dec_button);
-   elm_widget_sub_object_add(obj, sd->dec_button);
+   sd->inc_button = efl_add(EFL_UI_BUTTON_CLASS, obj,
+efl_ui_widget_style_set(efl_added, 
"spinner/increase/default"),
+efl_event_callback_array_add(efl_added, 
_inc_dec_button_cb(), obj),
+efl_content_set(efl_part(obj, 
"elm.swallow.inc_button"), efl_added));
+
+   sd->text_button = efl_add(EFL_UI_BUTTON_CLASS, obj,
+ efl_ui_widget_style_set(efl_added, 
"spinner/default"),
+ efl_event_callback_add(efl_added, 
EFL_UI_EVENT_CLICKED,
+_text_button_clicked_cb, 
obj),
+ efl_event_callback_add(efl_added, 
EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED,
+
_text_button_focus_changed_cb, obj),
+ efl_content_set(efl_part(obj, 
"elm.swallow.text_button"), efl_added));
+
+   sd->dec_button = efl_add(EFL_UI_BUTTON_CLASS, obj,
+efl_ui_widget_style_set(efl_added, 
"spinner/decrease/default"),
+efl_event_callback_array_add(efl_added, 
_inc_dec_button_cb(), obj),
+efl_content_set(efl_part(obj, 
"elm.swallow.dec_button"), efl_added));
 
  {
 Eina_List *items = NULL;

-- 




[EGIT] [core/efl] master 02/02: efl_ui_spin: Support value change using mouse wheel.

2017-11-28 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=e8238522be7a096aa1b2287ef343564a425b67cb

commit e8238522be7a096aa1b2287ef343564a425b67cb
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Nov 28 20:03:06 2017 +0900

efl_ui_spin: Support value change using mouse wheel.

Summary:
Enable value change using wheel.

(Up, Down key value change will be supported after D4933 dicussing.)

Test Plan: elementary_test efl_ui_spin test sample.

Reviewers: Jaehyun_Cho, jpeg, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5546
---
 src/bin/elementary/test_ui_spin.c |  6 ++
 src/lib/elementary/efl_ui_spin.c  | 21 +
 src/lib/elementary/efl_ui_spin.eo |  1 +
 3 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/src/bin/elementary/test_ui_spin.c 
b/src/bin/elementary/test_ui_spin.c
index be41b75f5f..ba0a166adf 100644
--- a/src/bin/elementary/test_ui_spin.c
+++ b/src/bin/elementary/test_ui_spin.c
@@ -22,15 +22,13 @@ _spin_max_reached_cb(void *data EINA_UNUSED, const 
Efl_Event *ev)
 static void
 _inc_clicked(void *data, const Efl_Event *ev EINA_UNUSED)
 {
-   int val = (int)efl_ui_range_value_get(data);
-   efl_ui_range_value_set(data, ++val);
+   efl_ui_range_value_set(data, (efl_ui_range_value_get(data) + 
efl_ui_range_step_get(data)));
 }
 
 static void
 _dec_clicked(void *data, const Efl_Event *ev EINA_UNUSED)
 {
-   int val = (int)efl_ui_range_value_get(data);
-   efl_ui_range_value_set(data, --val);
+   efl_ui_range_value_set(data, (efl_ui_range_value_get(data) - 
efl_ui_range_step_get(data)));
 }
 
 void
diff --git a/src/lib/elementary/efl_ui_spin.c b/src/lib/elementary/efl_ui_spin.c
index 13dbadc872..dadb404041 100644
--- a/src/lib/elementary/efl_ui_spin.c
+++ b/src/lib/elementary/efl_ui_spin.c
@@ -163,6 +163,27 @@ _efl_ui_spin_elm_widget_theme_apply(Eo *obj, 
Efl_Ui_Spin_Data *sd EINA_UNUSED)
return EFL_UI_THEME_APPLY_SUCCESS;
 }
 
+EOLIAN static Eina_Bool
+_efl_ui_spin_elm_widget_widget_event(Eo *obj, Efl_Ui_Spin_Data *sd, const 
Efl_Event *eo_event, Evas_Object *src EINA_UNUSED)
+{
+   Eo *ev = eo_event->info;
+
+   if (efl_input_processed_get(ev)) return EINA_FALSE;
+
+   if (eo_event->desc == EFL_EVENT_POINTER_WHEEL)
+ {
+   if (efl_input_pointer_wheel_delta_get(ev) < 0)
+ efl_ui_range_value_set(obj, (efl_ui_range_value_get(obj) + sd->step));
+   else
+ efl_ui_range_value_set(obj, (efl_ui_range_value_get(obj) - sd->step));
+ }
+   else
+ return EINA_FALSE;
+
+   efl_input_processed_set(ev, EINA_TRUE);
+   return EINA_TRUE;
+}
+
 EOLIAN static Eo *
 _efl_ui_spin_efl_object_constructor(Eo *obj, Efl_Ui_Spin_Data *sd)
 {
diff --git a/src/lib/elementary/efl_ui_spin.eo 
b/src/lib/elementary/efl_ui_spin.eo
index df2e2bd1dc..fae80d1e40 100644
--- a/src/lib/elementary/efl_ui_spin.eo
+++ b/src/lib/elementary/efl_ui_spin.eo
@@ -13,6 +13,7 @@ class Efl.Ui.Spin (Efl.Ui.Layout, Efl.Ui.Range, Efl.Ui.Format,
   Efl.Object.finalize;
   Efl.Object.destructor;
   Elm.Widget.theme_apply;
+  Elm.Widget.widget_event;
   Efl.Ui.Range.range_min_max { get; set; }
   Efl.Ui.Range.range_step { get; set; }
   Efl.Ui.Range.range_value { get; set; }

-- 




[EGIT] [core/efl] master 01/02: test_part_bg: Clean up code.

2017-11-28 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=434be7dbfa708247baec25ddc300201185c2110f

commit 434be7dbfa708247baec25ddc300201185c2110f
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Nov 28 20:02:53 2017 +0900

test_part_bg: Clean up code.

Summary:
Add spin class in ther test list.
Clean up code.

Reviewers: Jaehyun_Cho, jpeg, taxi2se

Reviewed By: Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5545
---
 src/bin/elementary/test_part_bg.c | 48 ---
 1 file changed, 25 insertions(+), 23 deletions(-)

diff --git a/src/bin/elementary/test_part_bg.c 
b/src/bin/elementary/test_part_bg.c
index cdad4845f7..26ba4dc7eb 100644
--- a/src/bin/elementary/test_part_bg.c
+++ b/src/bin/elementary/test_part_bg.c
@@ -3,7 +3,9 @@
 #endif
 #include 
 
-const Efl_Class *content_class[17];
+#define MAX_NUM_OF_CONTENT 18
+
+const Efl_Class *content_class[MAX_NUM_OF_CONTENT];
 
 
 static void
@@ -65,12 +67,12 @@ _create_box_contents(Evas_Object *box)
   efl_pack_end(box, efl_added));
 
radio_group = radio = efl_add(EFL_UI_RADIO_CLASS, hbox,
-  efl_pack_end(hbox, efl_added),
-  efl_gfx_size_hint_weight_set(efl_added, 0, 0),
-  efl_ui_radio_state_value_set(efl_added, 0));
+ efl_pack_end(hbox, efl_added),
+ efl_gfx_size_hint_weight_set(efl_added, 0, 0),
+ efl_ui_radio_state_value_set(efl_added, 0));
 
content = efl_add(EFL_UI_BOX_CLASS, hbox,
-   efl_pack_end(hbox, efl_added));
+ efl_pack_end(hbox, efl_added));
evas_object_data_set(radio, "data", content);
 
content = efl_add(EFL_UI_TEXT_CLASS, content,
@@ -78,23 +80,23 @@ _create_box_contents(Evas_Object *box)
  efl_ui_text_interactive_editable_set(efl_added, 
EINA_FALSE),
  efl_pack_end(content, efl_added));
 
-   for (i = 0; i < (sizeof(content_class) / sizeof(content_class[0])) ; i++)
+   for (i = 0; i < MAX_NUM_OF_CONTENT; i++)
  {
 if (!content_class[i]) continue;
 
 hbox = efl_add(EFL_UI_BOX_CLASS, box,
efl_ui_direction_set(efl_added, EFL_UI_DIR_HORIZONTAL),
efl_pack_end(box, efl_added));
-   
+
 radio = efl_add(EFL_UI_RADIO_CLASS, hbox,
 efl_ui_radio_group_add(efl_added, radio_group),
 efl_pack_end(hbox, efl_added),
 efl_ui_radio_state_value_set(efl_added, i + 1),
-efl_gfx_size_hint_weight_set(efl_added, 0, 0)
-);
+efl_gfx_size_hint_weight_set(efl_added, 0, 0));
 
 content = efl_add(content_class[i], hbox,
   efl_pack_end(hbox, efl_added));
+
 if (efl_isa(content, efl_text_interface_get()))
   efl_text_set(content, "text");
 
@@ -138,30 +140,30 @@ test_part_background(void *data EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, void
content_class[14] = EFL_UI_IMAGE_CLASS;
content_class[15] = EFL_UI_IMAGE_ZOOMABLE_CLASS;
content_class[16] = EFL_UI_NSTATE_CLASS;
-   //content_class[17] = EFL_UI_SPINNER_CLASS;
+   content_class[17] = EFL_UI_SPIN_CLASS;
 
win = efl_add(EFL_UI_WIN_CLASS, NULL,
  efl_text_set(efl_added, "Widget Part Background"),
  efl_ui_win_autodel_set(efl_added, EINA_TRUE));
 
vbox = efl_add(EFL_UI_BOX_CLASS, win,
- efl_gfx_size_hint_weight_set(efl_added, 1, 1),
- efl_content_set(win, efl_added));
+  efl_gfx_size_hint_weight_set(efl_added, 1, 1),
+  efl_content_set(win, efl_added));
 
hbox = efl_add(EFL_UI_BOX_CLASS, vbox,
- efl_ui_direction_set(efl_added, EFL_UI_DIR_HORIZONTAL),
-  efl_gfx_size_hint_weight_set(efl_added, 1.0, 
0.0),
- efl_pack_end(vbox, efl_added));
+  efl_ui_direction_set(efl_added, EFL_UI_DIR_HORIZONTAL),
+  efl_gfx_size_hint_weight_set(efl_added, 1.0, 0.0),
+  efl_pack_end(vbox, efl_added));
 
reset_btn = efl_add(EFL_UI_BUTTON_CLASS, hbox,
-  efl_pack_end(hbox, efl_added),
-  efl_text_set(efl_added, "reset"));
+   efl_pack_end(hbox, efl_added),
+   efl_text_set(efl_added, "reset"));
color_btn = efl_add(EFL_UI_BUTTON_CLASS, hbox,
-  efl_pack_end(hbox, efl_added),
-  efl_text_set(efl_added, "color"));
+   efl_pack_end(hbox, efl_added),
+   efl_text_set

[EGIT] [core/efl] master 01/01: efl_ui_spin: Add new spin and spin_button widgets

2017-11-27 Thread Woochan Lee
jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=eefcb49419af9d0057ba4c03e6c9009a1265e31e

commit eefcb49419af9d0057ba4c03e6c9009a1265e31e
Author: Woochan Lee <wc0917@samsung.com>
Date:   Mon Nov 20 19:12:49 2017 +0900

efl_ui_spin: Add new spin and spin_button widgets

Summary:
https://phab.enlightenment.org/T5900

Creating base class(efl_ui_spin) to support various shape of spinner.

Added button interaction widget efl_ui_spin_button inherited from 
efl_ui_spin.

Test Plan: Add tests in elementary_test.

Reviewers: Jaehyun_Cho, woohyun, jpeg, singh.amitesh

Subscribers: jenkins, id213sin, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5424
---
 data/elementary/themes/Makefile.am  |   2 +
 data/elementary/themes/default.edc  |   2 +
 data/elementary/themes/edc/elm/button.edc   |   6 +
 data/elementary/themes/edc/elm/entry.edc|   2 +
 data/elementary/themes/edc/elm/spin.edc |  27 +
 data/elementary/themes/edc/elm/spin_button.edc  | 218 ++
 src/Makefile_Efl.am |   1 -
 src/Makefile_Elementary.am  |   8 +
 src/bin/elementary/Makefile.am  |   2 +
 src/bin/elementary/test.c   |   4 +
 src/bin/elementary/test_flipselector.c  |   8 +-
 src/bin/elementary/test_ui_spin.c   |  71 ++
 src/bin/elementary/test_ui_spin_button.c|  43 ++
 src/lib/efl/CMakeLists.txt  |   1 -
 src/lib/efl/Efl.h   |   1 -
 src/lib/efl/interfaces/efl_interfaces_main.c|   1 -
 src/lib/efl/interfaces/efl_ui_range.eo  |  18 +-
 src/lib/efl/interfaces/efl_ui_spin.eo   |  84 ---
 src/lib/elementary/Elementary.h |   2 +
 src/lib/elementary/efl_ui_spin.c| 311 
 src/lib/elementary/efl_ui_spin.eo   |  26 +
 src/lib/elementary/efl_ui_spin_button.c | 922 
 src/lib/elementary/efl_ui_spin_button.eo|  80 ++
 src/lib/elementary/efl_ui_spin_button_private.h |  20 +
 src/lib/elementary/efl_ui_spin_private.h|  29 +
 src/lib/elementary/elm_flipselector.c   |  32 +-
 src/lib/elementary/elm_flipselector.eo  |  43 +-
 src/lib/elementary/elm_flipselector_legacy.h|  37 -
 src/lib/elementary/elm_spinner.c|  40 +-
 src/lib/elementary/elm_spinner.eo   |  33 +-
 src/lib/elementary/elm_spinner_legacy.h |  46 --
 31 files changed, 1886 insertions(+), 234 deletions(-)

diff --git a/data/elementary/themes/Makefile.am 
b/data/elementary/themes/Makefile.am
index dfe26d5848..f1ee7b15e8 100644
--- a/data/elementary/themes/Makefile.am
+++ b/data/elementary/themes/Makefile.am
@@ -146,6 +146,8 @@ elementary/themes/edc/elm/separator.edc \
 elementary/themes/edc/elm/slider.edc \
 elementary/themes/edc/elm/slideshow.edc \
 elementary/themes/edc/elm/spinner.edc \
+elementary/themes/edc/elm/spin.edc \
+elementary/themes/edc/elm/spin_button.edc \
 elementary/themes/edc/elm/textpath.edc \
 elementary/themes/edc/elm/thumb.edc \
 elementary/themes/edc/elm/toolbar.edc \
diff --git a/data/elementary/themes/default.edc 
b/data/elementary/themes/default.edc
index 5e54ffdcdd..9d615295b1 100644
--- a/data/elementary/themes/default.edc
+++ b/data/elementary/themes/default.edc
@@ -67,6 +67,8 @@ collections {
 #include "edc/elm/border.edc"
 // XXX: min size calc problems - too wide! ... err ok on my 32bit box... eh?
 #include "edc/elm/spinner.edc"
+#include "edc/elm/spin.edc"
+#include "edc/elm/spin_button.edc"
 #include "edc/elm/menu.edc"
 #include "edc/elm/clock.edc"
 #include "edc/elm/gengrid.edc"
diff --git a/data/elementary/themes/edc/elm/button.edc 
b/data/elementary/themes/edc/elm/button.edc
index a05260f4e3..c5c48d3a21 100644
--- a/data/elementary/themes/edc/elm/button.edc
+++ b/data/elementary/themes/edc/elm/button.edc
@@ -1472,6 +1472,7 @@ group { name: 
"elm/button/base/hoversel_horizontal_entry/default";
 /*** SPINNER BUTTONS STYLES **/
group { name: "elm/button/base/spinner/increase/default";
   alias: "elm/button/base/spinner/increase/colorselector/default";
+  alias: "elm/button/base/spin_button/increase/default";
   alias: "elm/button/base/calendar/increase/default";
   alias: "elm/button/base/calendar/increase/double_spinners";
   images.image: "sym_right_light_normal.png" COMP;
@@ -1626,6 +1627,7 @@ group { name: 
"elm/button/base/hoversel_horizontal_entry/default";
group { name: "elm/button/base/spinner/decrease/default";
   alias: "elm/button/base/spinner/decrease/colorselector/default";
   inherit: "elm/button/ba

[EGIT] [core/efl] master 01/01: elm: rename elm_multibuttonentry to Efl.Ui.Multibuttonentry

2017-10-24 Thread Woochan Lee
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=6c3bc915dfcc638c34ee3c242d80702407b2b5bf

commit 6c3bc915dfcc638c34ee3c242d80702407b2b5bf
Author: Woochan Lee <wc0917@samsung.com>
Date:   Fri Sep 15 17:13:30 2017 +0900

elm: rename elm_multibuttonentry to Efl.Ui.Multibuttonentry

Summary: @ref T5358

Reviewers: woohyun, jpeg, cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: Jaehyun, bu5hm4n, cedric, jpeg

Maniphest Tasks: T5358

Differential Revision: https://phab.enlightenment.org/D5169

JP's note:
MBE currently has quite a few issues, probably related to focus
handling. This needs to be fixed.
---
 po/POTFILES.in |   2 +-
 src/Makefile_Elementary.am |  10 +-
 src/bin/elementary/test_multibuttonentry.c |   2 +-
 ...ultibuttonentry.c => efl_ui_multibuttonentry.c} | 357 +++--
 ...tibuttonentry.eo => efl_ui_multibuttonentry.eo} |   8 +-
 ...ultibuttonentry.h => efl_ui_multibuttonentry.h} |   6 +-
 ...ttonentry_eo.h => efl_ui_multibuttonentry_eo.h} |   2 +-
 src/lib/elementary/efl_ui_multibuttonentry_part.eo |  11 +
 ...onentry.h => efl_ui_multibuttonentry_private.h} |  22 +-
 src/lib/elementary/elc_multibuttonentry.h  |   2 +-
 src/lib/elementary/elc_multibuttonentry_common.h   |   2 +-
 src/lib/elementary/elc_multibuttonentry_legacy.h   |   2 +-
 src/lib/elementary/elm_multibuttonentry_part.eo|   9 -
 13 files changed, 230 insertions(+), 205 deletions(-)

diff --git a/po/POTFILES.in b/po/POTFILES.in
index 03b7038203..27588cc07e 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -96,7 +96,7 @@ src/lib/elementary/elc_fileselector.c
 src/lib/elementary/elc_fileselector_button.c
 src/lib/elementary/elc_fileselector_entry.c
 src/lib/elementary/elc_hoversel.c
-src/lib/elementary/elc_multibuttonentry.c
+src/lib/elementary/efl_ui_multibuttonentry.c
 src/lib/elementary/elc_naviframe.c
 src/lib/elementary/elc_player.c
 src/lib/elementary/elc_popup.c
diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index e7e5f97ddd..e9c10db80a 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -46,7 +46,7 @@ elm_public_eolian_files = \
lib/elementary/elm_map.eo \
lib/elementary/elm_map_pan.eo \
lib/elementary/elm_menu.eo \
-   lib/elementary/elm_multibuttonentry.eo \
+   lib/elementary/efl_ui_multibuttonentry.eo \
lib/elementary/elm_notify.eo \
lib/elementary/efl_ui_nstate.eo \
lib/elementary/elm_pan.eo \
@@ -122,7 +122,7 @@ elm_public_eolian_files = \
lib/elementary/elm_actionslider_part.eo \
lib/elementary/elm_bubble_part.eo \
lib/elementary/elm_fileselector_part.eo \
-   lib/elementary/elm_multibuttonentry_part.eo \
+   lib/elementary/efl_ui_multibuttonentry_part.eo \
lib/elementary/elm_code_widget.eo \
lib/elementary/efl_ui_text_interactive.eo \
lib/elementary/efl_ui_text.eo \
@@ -279,7 +279,7 @@ includesunstable_HEADERS = \
lib/elementary/elm_widget_map.h \
lib/elementary/elm_widget_mapbuf.h \
lib/elementary/elm_widget_menu.h \
-   lib/elementary/elm_widget_multibuttonentry.h \
+   lib/elementary/efl_ui_multibuttonentry_private.h \
lib/elementary/elm_widget_naviframe.h \
lib/elementary/elm_widget_notify.h \
lib/elementary/elm_widget_panel.h \
@@ -339,7 +339,7 @@ includesub_HEADERS = \
lib/elementary/elc_hoversel.h \
lib/elementary/elc_hoversel_legacy.h \
lib/elementary/elc_multibuttonentry.h \
-   lib/elementary/elc_multibuttonentry_eo.h \
+   lib/elementary/efl_ui_multibuttonentry_eo.h \
lib/elementary/elc_multibuttonentry_legacy.h \
lib/elementary/elc_multibuttonentry_common.h \
lib/elementary/elc_naviframe.h \
@@ -570,7 +570,7 @@ lib_elementary_libelementary_la_SOURCES = \
lib/elementary/elc_fileselector_button.c \
lib/elementary/elc_fileselector_entry.c \
lib/elementary/elc_hoversel.c \
-   lib/elementary/elc_multibuttonentry.c \
+   lib/elementary/efl_ui_multibuttonentry.c \
lib/elementary/elc_naviframe.c \
lib/elementary/elc_player.c \
lib/elementary/elc_popup.c \
diff --git a/src/bin/elementary/test_multibuttonentry.c 
b/src/bin/elementary/test_multibuttonentry.c
index e4c3370908..2d371416a1 100644
--- a/src/bin/elementary/test_multibuttonentry.c
+++ b/src/bin/elementary/test_multibuttonentry.c
@@ -3,7 +3,7 @@
 #endif
 #include 
 
-static Elm_Multibuttonentry_Format_Cb format_func = NULL;
+static Efl_Ui_Multibuttonentry_Format_Cb format_func = NULL;
 
 static char *
 _custom_format(int count, void *data EINA_UNUSED)
diff --git a/src/lib/elementary/elc_multibuttonentry.c 
b/src/lib/elementary/efl_ui_multibuttonentry.c
similarity index 81%
rename fr

[EGIT] [core/elementary] master 01/11: multibuttonentry: add elm.swallow.background part

2016-03-04 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=66c1d5694428e2683a8074f5c1ecda5f56f1a387

commit 66c1d5694428e2683a8074f5c1ecda5f56f1a387
Author: Woochan Lee <wc0917@samsung.com>
Date:   Fri Mar 4 15:29:17 2016 -0800

multibuttonentry: add elm.swallow.background part

Summary: This swallow part is for custom background image.

Reviewers: kimcinoo, Hermet, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3659

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 data/themes/edc/elm/multibuttonentry.edc | 8 
 1 file changed, 8 insertions(+)

diff --git a/data/themes/edc/elm/multibuttonentry.edc 
b/data/themes/edc/elm/multibuttonentry.edc
index 5568b4b..cefb816 100644
--- a/data/themes/edc/elm/multibuttonentry.edc
+++ b/data/themes/edc/elm/multibuttonentry.edc
@@ -10,6 +10,14 @@ group { name: "elm/multibuttonentry/base/default";
 color_class: "multibuttonentry_bg";
  }
   }
+  part { name: "elm.swallow.background";
+ type: SWALLOW;
+ scale: 1;
+ description { state: "default" 0.0;
+rel1.to: "bg";
+rel2.to: "bg";
+ }
+  }
   part { name: "box.swallow"; type: SWALLOW;
  description { state: "default" 0.0;
 rel1.to: "bg";

-- 




[EGIT] [core/elementary] master 01/01: multibuttonentry: Add item unfocused callback.

2016-02-02 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=3da09b9929d70f888bbf71bacb143f3bbefc1dac

commit 3da09b9929d70f888bbf71bacb143f3bbefc1dac
Author: woochan lee <wc0917@samsung.com>
Date:   Tue Feb 2 20:35:17 2016 +0900

multibuttonentry: Add item unfocused callback.

Summary:
Even MBE item lose focus, item state did not changed before.
So i send a signal to make item state as default when item lose own focus.

Signed-off By: Kumar Navneet <k.navn...@samsung.com>

@fix

Test Plan:
Run MBE sample.
Click any item.
Click out of MBE area.
See the item still got a highlight.

Reviewers: Hermet, cedric

Differential Revision: https://phab.enlightenment.org/D2994

Conflicts:
data/themes/edc/elm/multibuttonentry.edc
---
 data/themes/edc/elm/multibuttonentry.edc |  8 
 src/lib/elc_multibuttonentry.c   | 13 +
 2 files changed, 21 insertions(+)

diff --git a/data/themes/edc/elm/multibuttonentry.edc 
b/data/themes/edc/elm/multibuttonentry.edc
index 0cca897..5568b4b 100644
--- a/data/themes/edc/elm/multibuttonentry.edc
+++ b/data/themes/edc/elm/multibuttonentry.edc
@@ -121,6 +121,9 @@ group { name: "elm/multibuttonentry/btn/default";
 color: 255 255 255 255;
 visible: 1;
  }
+ description { state: "unfocused" 0.0;
+inherit: "default" 0.0;
+ }
   }
   part { name: "close"; mouse_events: 0;
  description { state: "default" 0.0;
@@ -242,6 +245,11 @@ group { name: "elm/multibuttonentry/btn/default";
  }
   }
   program {
+ signal: "elm,state,unfocused"; source: "elm";
+ action: STATE_SET "unfocused" 0.0;
+ target: "glow";
+  }
+  program {
  signal: "mouse,down,1"; source: "base";
  script {
 if (get_int(disabled) == 0) {
diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 003b227..643610e 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -546,6 +546,17 @@ _on_item_deleted(void *data,
  }
 }
 
+static void
+_on_item_unfocused(void *data,
+   Evas_Object *obj EINA_UNUSED,
+   void *event_info EINA_UNUSED)
+{
+   Elm_Multibuttonentry_Item_Data *it = data;
+
+   if (!it) return;
+   elm_layout_signal_emit(VIEW(it), "elm,state,unfocused", "elm");
+}
+
 static Eina_Bool
 _long_press_cb(void *data)
 {
@@ -765,6 +776,8 @@ _item_new(Elm_Multibuttonentry_Data *sd,
  (VIEW(item), "mouse,clicked,1", "*", _on_item_clicked, EO_OBJ(item));
elm_layout_signal_callback_add
  (VIEW(item), "elm,deleted", "elm", _on_item_deleted, EO_OBJ(item));
+   evas_object_smart_callback_add
+ (VIEW(item), "unfocused", _on_item_unfocused, item);
evas_object_event_callback_add
   (VIEW(item),
EVAS_CALLBACK_MOUSE_DOWN, _mouse_down_cb, item);

-- 




[EGIT] [core/elementary] master 08/18: index: add color classes and text classes.

2016-01-04 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=128481c6cc4fa6392f96a0b57feb9673cf1abf3b

commit 128481c6cc4fa6392f96a0b57feb9673cf1abf3b
Author: woochan lee <wc0917@samsung.com>
Date:   Mon Jan 4 14:39:08 2016 -0800

index: add color classes and text classes.

Summary:
The following new color classes and text classes
for index widget are added.

"index_bg", "Index Background"
"index_item_bg", "Index Item Background"
"index_highlight_text," "Index Highlight Text"
"index_item_text," "Index Items Text"
"index_item_text_selected," "Index Selected Items Text"

@feature

Reviewers: raster, cedric, Hermet, kimcinoo, woohyun

Subscribers: SanghyeonLee, eagleeye, id213sin

Differential Revision: https://phab.enlightenment.org/D3487

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 data/themes/colorclasses.edc  | 20 
 data/themes/edc/elm/index.edc | 36 +++-
 src/lib/elm_config.c  |  9 +
 3 files changed, 60 insertions(+), 5 deletions(-)

diff --git a/data/themes/colorclasses.edc b/data/themes/colorclasses.edc
index d625344..093f26f 100644
--- a/data/themes/colorclasses.edc
+++ b/data/themes/colorclasses.edc
@@ -195,6 +195,26 @@ color_classes {
   color: DARK_GREY_BG_COLOR;
   desc: "Base of a entry's scroller widget";
}
+   color_class { name: "index_bg";
+  color: 0 0 0 0;
+  desc: "Background of a index widget";
+   }
+   color_class { name: "index_highlight_text";
+  color: FN_COL_HIGHLIGHT;
+  desc: "Text of a hlghlight item text";
+   }
+   color_class { name: "index_item_bg";
+  color: 0 0 0 0;
+  desc: "Background of a index item object";
+   }
+   color_class { name: "index_item_text";
+  color: FN_COL_DEFAULT;
+  desc: "Text of a index item";
+   }
+   color_class { name: "index_item_text_selected";
+  color: FN_COL_HIGHLIGHT;
+  desc: "Text of a selected index item";
+   }
color_class { name: "label_text";
   color: FN_COL_DEFAULT;
   desc: "Text of a generic label";
diff --git a/data/themes/edc/elm/index.edc b/data/themes/edc/elm/index.edc
index 0f88ef6..ce59294 100644
--- a/data/themes/edc/elm/index.edc
+++ b/data/themes/edc/elm/index.edc
@@ -1,5 +1,12 @@
 group { name: "elm/index/base/vertical/default";
parts {
+  part { name: "bg"; type: RECT;
+ description { state: "default" 0.0;
+rel1.to: "elm.swallow.index.0";
+rel2.to: "elm.swallow.index.0";
+color_class: "index_bg";
+ }
+  }
   part { name: "clip"; type: RECT; mouse_events:  0;
  description { state: "default" 0.0;
 visible:  0;
@@ -55,13 +62,14 @@ group { name: "elm/index/base/vertical/default";
relative: 0.0 0.5;
offset: -16 -1;
 }
-color: FN_COL_HIGHLIGHT;
+color_class: "index_highlight_text";
 text {
font: FN;
size: 20;
min: 1 1;
ellipsis: -1;
align: 1.0 0.5;
+   text_class: "index_highlight_text";
 }
  }
   }
@@ -143,6 +151,13 @@ group { name: "elm/index/item/vertical/default";
   image: "darken_rounded_square_half.png" COMP;
}
parts {
+  part { name: "bg"; type: RECT;
+ description { state: "default" 0.0;
+rel1.to: "base";
+rel2.to: "base";
+color_class: "index_item_bg";
+ }
+  }
   part { name: "base"; mouse_events: 0;
  description { state: "default" 0.0;
 image {
@@ -171,13 +186,14 @@ group { name: "elm/index/item/vertical/default";
relative: 0.5  1.0;
offset: -1 -1;
 }
-color: FN_COL_DEFAULT;
+color_class: "index_item_text";
 text {
font: FN;
size: 10;
min: 1 1;
ellipsis: -1;
align: 0.5 0.5;
+   text_class: "index_item_text";
 }
  }
  description { state: "active" 0.0;
@@ -201,13 +217,14 @@ group { name: "elm/index/item/vertical/default";
relative: 0.5  1.0;
offset:   -1 -1;
 }
-color: FN_COL_HIGHLIGHT;
+color_class: "index_item_text

[EGIT] [core/elementary] master 01/01: spinner: Internal code refactoring.

2015-12-23 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=b8e15ef9d9819759c2724fe712b0b32188f8cd44

commit b8e15ef9d9819759c2724fe712b0b32188f8cd44
Author: woochan lee <wc0917@samsung.com>
Date:   Thu Dec 24 13:40:00 2015 +0900

spinner: Internal code refactoring.

Summary:
Even doing almost same thihgs in inc_XXX fucntions, dec_XXX fucntion.
It was separated up.

So i merged those functions for code size reduce.

Test Plan:
Run elementary_test
Execute spinner sample.

Reviewers: cedric, Hermet

Differential Revision: https://phab.enlightenment.org/D3455
---
 src/lib/elm_spinner.c| 217 ---
 src/lib/elm_widget_spinner.h |   1 +
 2 files changed, 61 insertions(+), 157 deletions(-)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index 893773d..65ffee4 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -42,26 +42,17 @@ static Eina_Bool _key_action_spin(Evas_Object *obj, const 
char *params);
 static Eina_Bool _key_action_toggle(Evas_Object *obj, const char *params);
 
 static Eina_Bool
-_inc_button_clicked_cb(void *data, Eo *obj EINA_UNUSED,
-   const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_inc_dec_button_clicked_cb(void *data, Eo *obj EINA_UNUSED,
+   const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
 static Eina_Bool
-_inc_button_pressed_cb(void *data, Eo *obj EINA_UNUSED,
-   const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_inc_dec_button_pressed_cb(void *data, Eo *obj,
+   const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
 static Eina_Bool
-_inc_button_unpressed_cb(void *data, Eo *obj EINA_UNUSED,
- const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_inc_dec_button_unpressed_cb(void *data, Eo *obj EINA_UNUSED,
+ const Eo_Event_Description *desc EINA_UNUSED, 
void *event_info EINA_UNUSED);
 static Eina_Bool
 _inc_dec_button_mouse_move_cb(void *data, Eo *obj EINA_UNUSED,
   const Eo_Event_Description *desc EINA_UNUSED, 
void *event_info);
-static Eina_Bool
-_dec_button_clicked_cb(void *data, Eo *obj EINA_UNUSED,
-   const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
-static Eina_Bool
-_dec_button_pressed_cb(void *data, Eo *obj EINA_UNUSED,
-   const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
-static Eina_Bool
-_dec_button_unpressed_cb(void *data, Eo *obj EINA_UNUSED,
- const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
 
 static const Elm_Action key_actions[] = {
{"spin", _key_action_spin},
@@ -69,21 +60,13 @@ static const Elm_Action key_actions[] = {
{NULL, NULL}
 };
 
-EO_CALLBACKS_ARRAY_DEFINE(_inc_button_cb,
-   { EVAS_CLICKABLE_INTERFACE_EVENT_CLICKED, _inc_button_clicked_cb},
-   { EVAS_CLICKABLE_INTERFACE_EVENT_PRESSED, _inc_button_pressed_cb},
-   { EVAS_CLICKABLE_INTERFACE_EVENT_UNPRESSED, _inc_button_unpressed_cb},
-   { EVAS_OBJECT_EVENT_MOUSE_MOVE, _inc_dec_button_mouse_move_cb }
-);
-
-EO_CALLBACKS_ARRAY_DEFINE(_dec_button_cb,
-   { EVAS_CLICKABLE_INTERFACE_EVENT_CLICKED, _dec_button_clicked_cb},
-   { EVAS_CLICKABLE_INTERFACE_EVENT_PRESSED, _dec_button_pressed_cb},
-   { EVAS_CLICKABLE_INTERFACE_EVENT_UNPRESSED, _dec_button_unpressed_cb},
+EO_CALLBACKS_ARRAY_DEFINE(_inc_dec_button_cb,
+   { EVAS_CLICKABLE_INTERFACE_EVENT_CLICKED, _inc_dec_button_clicked_cb},
+   { EVAS_CLICKABLE_INTERFACE_EVENT_PRESSED, _inc_dec_button_pressed_cb},
+   { EVAS_CLICKABLE_INTERFACE_EVENT_UNPRESSED, _inc_dec_button_unpressed_cb},
{ EVAS_OBJECT_EVENT_MOUSE_MOVE, _inc_dec_button_mouse_move_cb }
 );
 
-
 static void _access_increment_decrement_info_say(Evas_Object *obj,
  Eina_Bool is_incremented);
 
@@ -531,29 +514,12 @@ _spin_value(void *data)
 }
 
 static Eina_Bool
-_val_inc_start(void *data)
+_val_inc_dec_start(void *data)
 {
ELM_SPINNER_DATA_GET(data, sd);
 
sd->interval = sd->first_interval;
-   sd->spin_speed = sd->step;
-   sd->longpress_timer = NULL;
-   ecore_timer_del(sd->spin_timer);
-   sd->spin_timer = ecore_timer_add(sd->interval, _spin_value, data);
-   _spin_value(data);
-
-   elm_widget_scroll_freeze_push(data);
-
-   return ECORE_CALLBACK_CANCEL;
-}
-
-static Eina_Bool
-_val_dec_start(void *data)
-{
-   ELM_SPINNER_DATA_GET(data, sd);
-
-   sd->interval = sd->first_interval;
-   sd->spin_speed = -sd->step;
+   sd->spin_speed = sd->inc_clicked ? sd->step : -sd->step;
sd->longpress_timer = NULL;
ecore_timer_del(sd->spin_timer)

[EGIT] [core/elementary] master 02/02: spinner: prevent scrolling when longpress timer enabled.

2015-12-02 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=55c5f3b6169ea0a7e230675f6ba8c2b7b122cd6a

commit 55c5f3b6169ea0a7e230675f6ba8c2b7b122cd6a
Author: woochan lee <wc0917@samsung.com>
Date:   Wed Dec 2 14:56:39 2015 -0800

spinner: prevent scrolling when longpress timer enabled.

Summary:
Spinner on scroller case.

Scroll should be freeze when spinner button in long press state.
If not, the scolling will be started after delete longpress timer.

Like a other widgets, scroll not allowing is correct action for this.

@fix

Reviewers: jaehwan, Hermet, eagleeye, cedric

Differential Revision: https://phab.enlightenment.org/D3334

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elm_spinner.c | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index d2793bb..251a377 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -540,6 +540,8 @@ _val_inc_start(void *data)
sd->spin_timer = ecore_timer_add(sd->interval, _spin_value, data);
_spin_value(data);
 
+   elm_widget_scroll_freeze_push(data);
+
return ECORE_CALLBACK_CANCEL;
 }
 
@@ -555,6 +557,8 @@ _val_dec_start(void *data)
sd->spin_timer = ecore_timer_add(sd->interval, _spin_value, data);
_spin_value(data);
 
+   elm_widget_scroll_freeze_push(data);
+
return ECORE_CALLBACK_CANCEL;
 }
 
@@ -566,6 +570,8 @@ _spin_stop(Evas_Object *obj)
sd->interval = sd->first_interval;
sd->spin_speed = 0;
ELM_SAFE_FREE(sd->spin_timer, ecore_timer_del);
+
+   elm_widget_scroll_freeze_pop(obj);
 }
 
 static Eina_Bool

-- 




[EGIT] [core/elementary] master 02/04: multibuttonentry: internal entry cnp mode set as "ELM_CNP_MODE_PLAINTEXT".

2015-11-22 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=df72227b7f4d927ae9d9007f158f14583e7a41f4

commit df72227b7f4d927ae9d9007f158f14583e7a41f4
Author: woochan lee <wc0917@samsung.com>
Date:   Mon Nov 23 07:50:17 2015 +0100

multibuttonentry: internal entry cnp mode set as "ELM_CNP_MODE_PLAINTEXT".

Summary:
To prevent pasted markup text in entry.
User want tags removed text when paste text into entry.

@fix

Reviewers: jaehwan, Hermet, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elc_multibuttonentry.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index bd2bbc4..23b98e8 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -1431,6 +1431,7 @@ _view_init(Evas_Object *obj, Elm_Multibuttonentry_Data 
*sd)
sd->entry = elm_entry_add(obj);
if (!sd->entry) return;
elm_entry_single_line_set(sd->entry, EINA_TRUE);
+   elm_entry_cnp_mode_set(sd->entry, ELM_CNP_MODE_PLAINTEXT);
elm_object_text_set(sd->entry, "");
elm_entry_input_panel_enabled_set(sd->entry, EINA_FALSE);
evas_object_size_hint_min_set(sd->entry, MIN_W_ENTRY, 0);

-- 




[EGIT] [core/elementary] master 03/04: datetime: fix field arrange code for dynamically field sequence change case.

2015-11-22 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=f48bbb1856590d8d12d34181fab34d9bbec970e1

commit f48bbb1856590d8d12d34181fab34d9bbec970e1
Author: woochan lee <wc0917@samsung.com>
Date:   Mon Nov 23 08:00:45 2015 +0100

datetime: fix field arrange code for dynamically field sequence change case.

Summary:
This is for support dynamically field sequence changing case

for example
User sets datetime format as "%d/%b/%y" first.
Then change the format dynamically in runtime to "%I:%M %p"

Previous format datetime items still there.
It breaks view(object dulicated on same geometry)

@fix

Test Plan:
Run datetime sample.
Add changed callback.
Change format in changed callback function.
Check the bug state.

Reviewers: jaehwan, id213sin, Hermet, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3340

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elm_datetime.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index ccd14f3..9d1d2f4 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -231,7 +231,7 @@ _field_list_arrange(Evas_Object *obj)
 
 if (field->visible && field->fmt_exist)
   {
- elm_layout_content_unset(obj, buf);
+ evas_object_hide(elm_layout_content_unset(obj, buf));
  elm_layout_content_set(obj, buf, field->item_obj);
   }
 else

-- 




[EGIT] [core/elementary] master 01/04: multibuttonentry: change default format count.

2015-11-22 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=f863d98c6083958438498873a542a59a4be0ec54

commit f863d98c6083958438498873a542a59a4be0ec54
Author: woochan lee <wc0917@samsung.com>
Date:   Mon Nov 23 07:48:32 2015 +0100

multibuttonentry: change default format count.

Summary:
There is no need ellipsis, space as well before "%d".
The "%d" will show the actual invisible item count.

@fix

Reviewers: jaehwan, Hermet, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3332

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elc_multibuttonentry.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 3b4a2db..bd2bbc4 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -83,7 +83,7 @@ _format_count(int count, void *data EINA_UNUSED)
 {
char buf[32];
 
-   if (!snprintf(buf, sizeof(buf), "... + %d", count)) return NULL;
+   if (!snprintf(buf, sizeof(buf), "+%d", count)) return NULL;
return strdup(buf);
 }
 

-- 




[EGIT] [core/elementary] master 09/09: index: internal item's edje object handling logic changed to improve performance.

2015-11-09 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=cf94160b6bd9a1180c8a1fdcb35b8ee1e055f37f

commit cf94160b6bd9a1180c8a1fdcb35b8ee1e055f37f
Author: woochan lee <wc0917@samsung.com>
Date:   Mon Nov 9 12:25:27 2015 -0800

index: internal item's edje object handling logic changed to improve 
performance.

Summary:
The box_clear, box_fill internal functions called when almost every 
internal chage happend.
(resize, theme apply, item append, item delete etc...)
Then those APIs delete/create item's edje object for all of the items.

It's very not good action for performance.
So, i changed this just edje object box unpack/pack instead of 
delete/create.

@fix

Test Plan:
Working test on elementary_test
and Call all of the index APIs for check this change.

Reviewers: Hermet, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3268

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elm_index.c | 67 ++---
 1 file changed, 38 insertions(+), 29 deletions(-)

diff --git a/src/lib/elm_index.c b/src/lib/elm_index.c
index 7f3cb39..c09df9e 100644
--- a/src/lib/elm_index.c
+++ b/src/lib/elm_index.c
@@ -76,7 +76,8 @@ _index_box_clear(Evas_Object *obj,
  {
 ELM_INDEX_ITEM_DATA_GET(eo_item, it);
 if (it->level != level) continue;
-ELM_SAFE_FREE(VIEW(it), evas_object_del);
+evas_object_box_remove(sd->bx[level], VIEW(it));
+evas_object_hide(VIEW(it));
  }
 
sd->level_active[level] = EINA_FALSE;
@@ -314,9 +315,8 @@ _index_box_auto_fill(Evas_Object *obj,
  continue;
   }
 
-o = edje_object_add(evas_object_evas_get(obj));
-VIEW(it) = o;
 edje_object_mirrored_set(VIEW(it), rtl);
+o = VIEW(it);
 
 if (sd->horizontal)
   {
@@ -637,7 +637,7 @@ _sel_eval(Evas_Object *obj,
   it_last = it;
   it->selected = EINA_FALSE;
}
- if (VIEW(it))
+ if (evas_object_visible_get(VIEW(it)))
{
   evas_object_geometry_get(VIEW(it), , , , );
   xx = x + (w / 2);
@@ -1359,29 +1359,33 @@ _elm_index_selected_item_get(const Eo *obj EINA_UNUSED, 
Elm_Index_Data *sd, int
 EOLIAN static Elm_Object_Item*
 _elm_index_item_append(Eo *obj, Elm_Index_Data *sd, const char *letter, 
Evas_Smart_Cb func, const void *data)
 {
-   Elm_Object_Item *it;
+   Elm_Object_Item *eo_item;
+
+   eo_item = _item_new(obj, letter, func, data);
+   if (!eo_item) return NULL;
 
-   it = _item_new(obj, letter, func, data);
-   if (!it) return NULL;
+   sd->items = eina_list_append(sd->items, eo_item);
 
-   sd->items = eina_list_append(sd->items, it);
-   _index_box_clear(obj, sd->level);
+   ELM_INDEX_ITEM_DATA_GET(eo_item, it);
+   VIEW(it) = edje_object_add(evas_object_evas_get(obj));
 
-   return it;
+   return eo_item;
 }
 
 EOLIAN static Elm_Object_Item*
 _elm_index_item_prepend(Eo *obj, Elm_Index_Data *sd, const char *letter, 
Evas_Smart_Cb func, const void *data)
 {
-   Elm_Object_Item *it;
+   Elm_Object_Item *eo_item;
 
-   it = _item_new(obj, letter, func, data);
-   if (!it) return NULL;
+   eo_item = _item_new(obj, letter, func, data);
+   if (!eo_item) return NULL;
 
-   sd->items = eina_list_prepend(sd->items, it);
-   _index_box_clear(obj, sd->level);
+   sd->items = eina_list_prepend(sd->items, eo_item);
 
-   return it;
+   ELM_INDEX_ITEM_DATA_GET(eo_item, it);
+   VIEW(it) = edje_object_add(evas_object_evas_get(obj));
+
+   return eo_item;
 }
 
 EINA_DEPRECATED EAPI Elm_Object_Item *
@@ -1397,34 +1401,38 @@ elm_index_item_prepend_relative(Evas_Object *obj,
 EOLIAN static Elm_Object_Item*
 _elm_index_item_insert_after(Eo *obj, Elm_Index_Data *sd, Elm_Object_Item 
*after, const char *letter, Evas_Smart_Cb func, const void *data)
 {
-   Elm_Object_Item *it;
+   Elm_Object_Item *eo_item;
 
 
if (!after) return elm_index_item_append(obj, letter, func, data);
 
-   it = _item_new(obj, letter, func, data);
-   if (!it) return NULL;
+   eo_item = _item_new(obj, letter, func, data);
+   if (!eo_item) return NULL;
 
-   sd->items = eina_list_append_relative(sd->items, it, after);
-   _index_box_clear(obj, sd->level);
+   sd->items = eina_list_append_relative(sd->items, eo_item, after);
+
+   ELM_INDEX_ITEM_DATA_GET(eo_item, it);
+   VIEW(it) = edje_object_add(evas_object_evas_get(obj));
 
-   return it;
+   return eo_item;
 }
 
 EOLIAN static Elm_Object_Item*
 _elm_index_item_insert_before(Eo *obj, Elm_Index_Data *sd, Elm_Object_Item 
*before, const char *letter, Evas_Smart_Cb func, const void *data)
 {
-   Elm_Object_Item *it;
+   Elm_Object_Item *eo_item;
 
if (!before) return elm_index_item_prepend(obj, letter, func, d

[EGIT] [core/elementary] master 06/07: spinner: add entry filter for accepted only digits and "."

2015-11-09 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=4b0f40e472c416e5547acf95068ad59c5fd3f8d2

commit 4b0f40e472c416e5547acf95068ad59c5fd3f8d2
Author: woochan lee <wc0917@samsung.com>
Date:   Mon Nov 9 16:28:19 2015 -0800

spinner: add entry filter for accepted only digits and "."

Summary:
When spinner activated with entry, user can input any characters in entry.
It degrades the usability.

Add filter for only can input numbers and "." for case of decimal point 
existing.

I will add entry filter for limit size as well after this commit.
This spinner features may help for app developer and users too.

@feature

Test Plan:
Run elementary_test
Test various spinner format for check this.

Reviewers: Hermet, cedric

Subscribers: id213sin, shilpasingh

Differential Revision: https://phab.enlightenment.org/D3299

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elm_spinner.c| 47 
 src/lib/elm_widget_spinner.h |  1 +
 2 files changed, 48 insertions(+)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index db3781a..61b3a58 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -390,6 +390,47 @@ _entry_activated_cb(void *data,
return EINA_TRUE;
 }
 
+static int
+_decimal_points_get(const char *label)
+{
+   char result[2];
+   const char *start = strchr(label, '%');
+
+   while (start)
+ {
+if (start[1] != '%')
+  {
+ start = strchr(start, '.');
+ start++;
+ break;
+  }
+else
+  start = strchr(start + 2, '%');
+ }
+
+   sscanf(start, "%[^f]", result);
+
+   return atoi(result);
+}
+
+static void
+_entry_filter_add(Evas_Object *obj)
+{
+   ELM_SPINNER_DATA_GET(obj, sd);
+   static Elm_Entry_Filter_Accept_Set digits_filter_data;
+
+   if (!sd->ent) return;
+
+   elm_entry_markup_filter_remove(sd->ent, elm_entry_filter_accept_set, 
_filter_data);
+
+   if (sd->decimal_points > 0)
+ digits_filter_data.accepted = ".0123456789";
+   else
+ digits_filter_data.accepted = "0123456789";
+
+   elm_entry_markup_filter_append(sd->ent, elm_entry_filter_accept_set, 
_filter_data);
+}
+
 static void
 _entry_show_cb(void *data,
Evas *e EINA_UNUSED,
@@ -435,6 +476,7 @@ _toggle_entry(Evas_Object *obj)
  eo_do(sd->ent, eo_event_callback_add
(ELM_ENTRY_EVENT_ACTIVATED, _entry_activated_cb, obj));
  elm_layout_content_set(obj, "elm.swallow.entry", sd->ent);
+ _entry_filter_add(obj);
   }
 if (!sd->button_layout)
   {
@@ -1315,8 +1357,13 @@ EOLIAN static void
 _elm_spinner_label_format_set(Eo *obj, Elm_Spinner_Data *sd, const char *fmt)
 {
eina_stringshare_replace(>label, fmt);
+
+   if (fmt && !(_is_label_format_integer(sd->label)))
+ sd->decimal_points = _decimal_points_get(sd->label);
+
_label_write(obj);
elm_layout_sizing_eval(obj);
+   _entry_filter_add(obj);
 }
 
 EOLIAN static const char*
diff --git a/src/lib/elm_widget_spinner.h b/src/lib/elm_widget_spinner.h
index 151b704..4287eec 100644
--- a/src/lib/elm_widget_spinner.h
+++ b/src/lib/elm_widget_spinner.h
@@ -35,6 +35,7 @@ struct _Elm_Spinner_Data
doubledrag_prev_pos, drag_val_step;
doublespin_speed, interval, first_interval;
int   round;
+   int   decimal_points;
Ecore_Timer  *delay_change_timer; /**< a timer for a delay,changed 
smart callback */
Ecore_Timer  *spin_timer; /**< a timer for a repeated spinner value 
change on mouse down */
Ecore_Timer  *longpress_timer; /**< a timer to detect long press. 
After lonpress timeout,

-- 




[EGIT] [core/elementary] master 03/04: multibuttonentry: fix internal entry be an orphan when editable set API called.

2015-10-30 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=c91fc929c548129ed200285a641d92adb2df0cf8

commit c91fc929c548129ed200285a641d92adb2df0cf8
Author: woochan lee <wc0917@samsung.com>
Date:   Fri Oct 30 06:52:00 2015 +0100

multibuttonentry: fix internal entry be an orphan when editable set API 
called.

Summary:
When user called "elm_multibuttonetnry_editable_set()" API as false.
the internal entry will be unpacked from box.

Then called that API as true again.
the internal entry just show without box packed.

Also, editable set API should not work in MBE shrink mode.

Test Plan:
Alternately Call elm_multibuttonentry_ediable_set API as true, false.
Then check the internal entry state.

Reviewers: Hermet, cedric

Differential Revision: https://phab.enlightenment.org/D3134

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elc_multibuttonentry.c | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 99305b1..3b4a2db 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -1745,8 +1745,11 @@ _elm_multibuttonentry_editable_set(Eo *obj EINA_UNUSED, 
Elm_Multibuttonentry_Dat
if (sd->editable == editable) return;
sd->editable = editable;
 
-   if (sd->editable)
- evas_object_show(sd->entry);
+   if (sd->editable && (sd->view_state != MULTIBUTTONENTRY_VIEW_SHRINK))
+ {
+elm_box_pack_end(sd->box, sd->entry);
+evas_object_show(sd->entry);
+ }
else
  {
 elm_box_unpack(sd->box, sd->entry);

-- 




[EGIT] [core/elementary] master 01/02: multibuttonentry: fix label packed many times in internal box.

2015-10-25 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=aa7a0142ba6e7c48916505f85610b50529ceaa90

commit aa7a0142ba6e7c48916505f85610b50529ceaa90
Author: woochan lee <wc0917@samsung.com>
Date:   Mon Oct 26 01:20:53 2015 +0100

multibuttonentry: fix label packed many times in internal box.

Summary:
The Internal box can has a lot of label for child when user set text many 
times.
Fix this wrong implement. It has to get only one label for child.

@fix

Test Plan:
Call elm_object_text_set() many times for MBE.
Check the label got a wrong geometry.

Reviewers: Hermet, cedric

Differential Revision: https://phab.enlightenment.org/D3133

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elc_multibuttonentry.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index e213234..4df92c9 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -1193,6 +1193,8 @@ _label_set(Evas_Object *obj,
  }
else
  {
+if (sd->label_packed)
+  elm_box_unpack(sd->box, sd->label);
 sd->label_packed = EINA_TRUE;
 edje_object_size_min_calc(sd->label, , );
 evas_object_size_hint_min_set(sd->label, width, height);

-- 




[EGIT] [core/elementary] master 06/06: gesture_layer: fix long tap gesture has wrong timestamp.

2015-10-24 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=371eb00ecb2243451e2e6544f0faf10d017c1073

commit 371eb00ecb2243451e2e6544f0faf10d017c1073
Author: woochan lee <wc0917@samsung.com>
Date:   Thu Oct 8 12:35:07 2015 +0200

gesture_layer: fix long tap gesture has wrong timestamp.

Summary:
The timestamp has 0 value when n_long_tap_start callback called.
Then timestamp is same on each n_long_tap_move callback functions.

For fix this bug, update timestamp before called state_set function.
Also update timestamp in every timeout.

Test Plan:
Run test_gesture_layer2.c
Print timestamp in every n_long_tap_XXX callback.

Reviewers: tasn, cedric

Differential Revision: https://phab.enlightenment.org/D3144

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elm_gesture_layer.c | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_gesture_layer.c b/src/lib/elm_gesture_layer.c
index 48f5285..7a37ae3 100644
--- a/src/lib/elm_gesture_layer.c
+++ b/src/lib/elm_gesture_layer.c
@@ -1781,6 +1781,9 @@ static Eina_Bool
 _long_tap_timeout(void *data)
 {
Gesture_Info *gesture = data;
+   Long_Tap_Type *st = gesture->data;
+
+   st->info.timestamp = ecore_time_get() * 1000;
 
_state_set(gesture, ELM_GESTURE_STATE_MOVE,
   gesture->data, EINA_TRUE);
@@ -2109,13 +2112,13 @@ _n_long_tap_test(Evas_Object *obj,
 _compute_taps_center(st, >info.x, >info.y, pe);
 st->center_x = st->info.x;  /* Update coords for */
 st->center_y = st->info.y;  /* reporting START  */
+st->info.timestamp = pe->timestamp;
 
 /* This is the first mouse down we got */
 if (eina_list_count(st->touched) == 1)
   {
  _state_set(gesture, ELM_GESTURE_STATE_START,
gesture->data, EINA_FALSE);
- st->info.timestamp = pe->timestamp;
 
  /* To test long tap */
  /* When this timer expires, gesture STARTED */
@@ -2135,6 +2138,7 @@ _n_long_tap_test(Evas_Object *obj,
   case EVAS_CALLBACK_MOUSE_UP:
 st->touched = _touched_device_remove(st->touched, pe);
 _compute_taps_center(st, >center_x, >center_y, pe);
+st->info.timestamp = pe->timestamp;
 if (st->info.n)
   {
  if (gesture->state == ELM_GESTURE_STATE_MOVE)
@@ -2161,6 +2165,7 @@ _n_long_tap_test(Evas_Object *obj,
  Evas_Coord y = 0;
 
  _compute_taps_center(st, , , pe);
+ st->info.timestamp = pe->timestamp;
  /* ABORT if user moved fingers out of tap area */
  if (!_inside(x, y, st->center_x, st->center_y,
   sd->tap_finger_size))

-- 




[EGIT] [core/elementary] master 01/01: multibuttonentry: Fix MBE item box min size calc error.

2015-10-01 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=54fafb4049f67edbd9b28d3dc34f2271e4e3aebb

commit 54fafb4049f67edbd9b28d3dc34f2271e4e3aebb
Author: woochan lee <wc0917@samsung.com>
Date:   Thu Oct 1 19:50:23 2015 +0900

multibuttonentry: Fix MBE item box min size calc error.

Summary:
Before item packed again in mbe box. box calc own min height.
In this case, there is no need to increase line number when  entry is box 
item.
Actually the min height of box calculated wrong here.

@fix

Test Plan:
Give a color to internal box.
Then items add.
Check the internal box area got a wrong height value.

Reviewers: Hermet, cedric

Differential Revision: https://phab.enlightenment.org/D3102
---
 src/lib/elc_multibuttonentry.c | 11 +--
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 0e80c4d..56dc23f 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -1256,7 +1256,7 @@ _box_min_size_calculate(Evas_Object *box,
 {
Evas_Coord mnw, mnh, w, minw, minh = 0, linew = 0, lineh = 0;
int line_num;
-   Eina_List *l, *l_next;
+   Eina_List *l;
Evas_Object_Box_Option *opt;
 
evas_object_geometry_get(box, NULL, NULL, , NULL);
@@ -1276,15 +1276,6 @@ _box_min_size_calculate(Evas_Object *box,
   {
  linew = mnw;
  line_num++;
-
- l_next = eina_list_next(l);
- opt = eina_list_data_get(l_next);
- if (l_next && opt && opt->obj &&
- eo_isa(opt->obj, ELM_ENTRY_CLASS))
-   {
-  linew = 0;
-  line_num++;
-   }
   }
 
 if ((linew != 0) && (l != eina_list_last(priv->children)))

-- 




[EGIT] [core/elementary] elementary-1.15 01/01: multibuttonentry: Fix MBE item box min size calc error.

2015-10-01 Thread woochan lee
hermet pushed a commit to branch elementary-1.15.

http://git.enlightenment.org/core/elementary.git/commit/?id=a20fe9cdedd0f06d9d6240c2a30a5390c22f9c32

commit a20fe9cdedd0f06d9d6240c2a30a5390c22f9c32
Author: woochan lee <wc0917@samsung.com>
Date:   Thu Oct 1 19:50:23 2015 +0900

multibuttonentry: Fix MBE item box min size calc error.

Summary:
Before item packed again in mbe box. box calc own min height.
In this case, there is no need to increase line number when  entry is box 
item.
Actually the min height of box calculated wrong here.

@fix

Test Plan:
Give a color to internal box.
Then items add.
Check the internal box area got a wrong height value.

Reviewers: Hermet, cedric

Differential Revision: https://phab.enlightenment.org/D3102
---
 src/lib/elc_multibuttonentry.c | 11 +--
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index f27ee33..8d485b9 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -1242,7 +1242,7 @@ _box_min_size_calculate(Evas_Object *box,
 {
Evas_Coord mnw, mnh, w, minw, minh = 0, linew = 0, lineh = 0;
int line_num;
-   Eina_List *l, *l_next;
+   Eina_List *l;
Evas_Object_Box_Option *opt;
 
evas_object_geometry_get(box, NULL, NULL, , NULL);
@@ -1262,15 +1262,6 @@ _box_min_size_calculate(Evas_Object *box,
   {
  linew = mnw;
  line_num++;
-
- l_next = eina_list_next(l);
- opt = eina_list_data_get(l_next);
- if (l_next && opt && opt->obj &&
- eo_isa(opt->obj, ELM_ENTRY_CLASS))
-   {
-  linew = 0;
-  line_num++;
-   }
   }
  }
minh = lineh * line_num;

-- 




[EGIT] [core/elementary] master 01/01: multibuttonentry: Fix padding to be affected by base_scale in edc.

2015-10-01 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=90aad6d593d24c1224d515756756fa0973098bd5

commit 90aad6d593d24c1224d515756756fa0973098bd5
Author: woochan lee <wc0917@samsung.com>
Date:   Thu Oct 1 19:35:58 2015 +0900

multibuttonentry: Fix padding to be affected by base_scale in edc.

Summary:
MBE internal box get its padding size from edc.
Previously, it does not consider when calculating the padding size.
In this commit, the padding size from edc is divided by its base_scale
so that desirable size can be calculated.

@fix

Reviewers: Hermet, cedric

Differential Revision: https://phab.enlightenment.org/D3103
---
 src/lib/elc_multibuttonentry.c | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 3078cf5..0d3eb29 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -105,8 +105,10 @@ _elm_multibuttonentry_elm_widget_theme_apply(Eo *obj, 
Elm_Multibuttonentry_Data
if (str) vpad = atoi(str);
elm_box_padding_set
  (sd->box,
-  hpad * elm_widget_scale_get(obj) * elm_config_scale_get(),
-  vpad * elm_widget_scale_get(obj) * elm_config_scale_get());
+  hpad * elm_widget_scale_get(obj) * elm_config_scale_get()
+  / edje_object_base_scale_get(elm_layout_edje_get(obj)),
+  vpad * elm_widget_scale_get(obj) * elm_config_scale_get()
+  / edje_object_base_scale_get(elm_layout_edje_get(obj)));
 
EINA_LIST_FOREACH(sd->items, l, eo_item)
  {
@@ -1415,8 +1417,10 @@ _view_init(Evas_Object *obj, Elm_Multibuttonentry_Data 
*sd)
if (str) vpad = atoi(str);
elm_box_padding_set
  (sd->box,
-  hpad * elm_widget_scale_get(obj) * elm_config_scale_get(),
-  vpad * elm_widget_scale_get(obj) * elm_config_scale_get());
+  hpad * elm_widget_scale_get(obj) * elm_config_scale_get()
+  / edje_object_base_scale_get(elm_layout_edje_get(obj)),
+  vpad * elm_widget_scale_get(obj) * elm_config_scale_get()
+  / edje_object_base_scale_get(elm_layout_edje_get(obj)));
 
elm_box_layout_set(sd->box, _box_layout_cb, obj, NULL);
elm_box_homogeneous_set(sd->box, EINA_FALSE);

-- 




[EGIT] [core/elementary] master 02/04: multibuttonentry: fix MBE item clear, item delete logic error.

2015-09-26 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=e5ec4d3b79549333bad08699751d2069c1406adc

commit e5ec4d3b79549333bad08699751d2069c1406adc
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Sep 22 01:49:45 2015 +0200

multibuttonentry: fix MBE item clear, item delete logic error.

Summary:
elm_multibuttonentry_clear API not worked well.
It deleted only odd items. Because of the sd->items has been modified 
inside elm_widget_item_del().

Then we don't have to search target item inside of _item_del().

@fix

Test Plan:
Add MBE items.
Call elm_multibuttonentry_clear API.
Check the bug state.

Reviewers: Hermet, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3065

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elc_multibuttonentry.c | 37 -
 1 file changed, 8 insertions(+), 29 deletions(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index c094552..52d8429 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -382,30 +382,18 @@ end:
 static void
 _item_del(Elm_Multibuttonentry_Item_Data *item)
 {
-   Eina_List *l;
-   Elm_Object_Item *eo_it;
Evas_Object *obj = WIDGET(item);
 
ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN(obj, sd);
 
-   EINA_LIST_FOREACH(sd->items, l, eo_it)
- {
-ELM_MULTIBUTTONENTRY_ITEM_DATA_GET(eo_it, it);
-if (it == item)
-  {
- sd->items = eina_list_remove(sd->items, eo_it);
- elm_box_unpack(sd->box, VIEW(it));
+   sd->items = eina_list_remove(sd->items, EO_OBJ(item));
+   elm_box_unpack(sd->box, VIEW(item));
 
- eo_do(obj, eo_event_callback_call
-   (ELM_MULTIBUTTONENTRY_EVENT_ITEM_DELETED, eo_it));
+   eo_do(obj, eo_event_callback_call
+ (ELM_MULTIBUTTONENTRY_EVENT_ITEM_DELETED, EO_OBJ(item)));
 
- evas_object_del(VIEW(it));
-
- if (sd->selected_it == it)
-   sd->selected_it = NULL;
- break;
-  }
- }
+   if (sd->selected_it == item)
+ sd->selected_it = NULL;
 
if (sd->view_state == MULTIBUTTONENTRY_VIEW_SHRINK)
  _shrink_mode_set(obj, EINA_TRUE);
@@ -1842,18 +1830,9 @@ _elm_multibuttonentry_item_selected_get(Eo *eo_item,
 EOLIAN static void
 _elm_multibuttonentry_clear(Eo *obj EINA_UNUSED, Elm_Multibuttonentry_Data *sd)
 {
-   Elm_Object_Item *eo_item;
+   while (sd->items)
+ eo_do(eina_list_data_get(sd->items), elm_wdg_item_del());
 
-   if (sd->items)
- {
-EINA_LIST_FREE(sd->items, eo_item)
-  {
- ELM_MULTIBUTTONENTRY_ITEM_DATA_GET(eo_item, item);
- elm_box_unpack(sd->box, VIEW(item));
- eo_del(eo_item);
-  }
-sd->items = NULL;
- }
sd->selected_it = NULL;
_view_update(sd);
 }

-- 




[EGIT] [core/elementary] master 03/04: flipselector.edc: array size +1 to prevent loosing last character.

2015-09-26 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=772821a272fe8973130cef8e19e6275200120bcf

commit 772821a272fe8973130cef8e19e6275200120bcf
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Sep 22 01:51:08 2015 +0200

flipselector.edc: array size +1 to prevent loosing last character.

Summary:
Flipselector lose last character when 50 characters showing case.

This defined value will using in snprintf, 
fetch_str(_edje_embryo_fn_fetch_str).
As you already know, we have to give the location in array for '\n'.

Test Plan: Give the 50 characters for flipselector text.

Reviewers: Hermet, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3064

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 data/themes/edc/elm/flipselector.edc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/data/themes/edc/elm/flipselector.edc 
b/data/themes/edc/elm/flipselector.edc
index b913382..dff2880 100644
--- a/data/themes/edc/elm/flipselector.edc
+++ b/data/themes/edc/elm/flipselector.edc
@@ -1,4 +1,4 @@
-#define FLIP_PICKER_MAX_LEN (50)
+#define FLIP_PICKER_MAX_LEN (50 + 1)
 #define FLIP_PICKER_MAX_LEN_STR "50"
 
 group { name: "elm/flipselector/base/default";

-- 




[EGIT] [core/elementary] master 04/04: Revert "index: fix index object got a wrong min value."

2015-09-26 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=b8616483b5ec958b7ad65d29ed379ee98d03c851

commit b8616483b5ec958b7ad65d29ed379ee98d03c851
Author: Woochan Lee <wc0917@samsung.com>
Date:   Tue Sep 22 01:52:05 2015 +0200

Revert "index: fix index object got a wrong min value."

Summary:
I need to think more about item omitted case, horizontal case as well.
Now i'm working on this. It may need to refactoring internal logic.

Please revert this commit it break view when index item omitted.

@fix

This reverts commit 560338c5c31bda8912938074cb736eabdb9f1f31.

Reviewers: Hermet, cedric, woohyun

Differential Revision: https://phab.enlightenment.org/D3062

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elm_index.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_index.c b/src/lib/elm_index.c
index 0b574a6..83194a7 100644
--- a/src/lib/elm_index.c
+++ b/src/lib/elm_index.c
@@ -506,9 +506,9 @@ EOLIAN static void
 _elm_index_elm_layout_sizing_eval(Eo *obj, Elm_Index_Data *_pd EINA_UNUSED)
 {
Evas_Coord minw = -1, minh = -1;
-   ELM_INDEX_DATA_GET(obj, sd);
+   ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
 
-   evas_object_size_hint_min_get(sd->bx[sd->level], , );
+   edje_object_size_min_calc(wd->resize_obj, , );
evas_object_size_hint_min_set(obj, minw, minh);
evas_object_size_hint_max_set(obj, -1, -1);
 }

-- 




[EGIT] [core/elementary] master 06/06: calendar: weekday update when first day of week changed.

2015-09-23 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=0e69a49c84412b0053ff190ef45d71bc04f049c8

commit 0e69a49c84412b0053ff190ef45d71bc04f049c8
Author: woochan lee <wc0917@samsung.com>
Date:   Wed Sep 23 15:24:50 2015 -0700

calendar: weekday update when first day of week changed.

Summary:
When user call elm_calendar_first_day_of_week_set() to change first day of 
week.
the marked day has to update.
But, it's not updated, because of internal logic error.
I fixed internal logic for update specific day mark.

@fix

Test Plan:
Called elm_calendar_mark_add()
Then called  elm_calendar_first_day_of_week_set(
Check the mark in not updated.

Reviewers: Hermet, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3100

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elm_calendar.c | 9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_calendar.c b/src/lib/elm_calendar.c
index 1749152..038307b 100644
--- a/src/lib/elm_calendar.c
+++ b/src/lib/elm_calendar.c
@@ -414,7 +414,7 @@ _access_calendar_register(Evas_Object *obj)
 static void
 _populate(Evas_Object *obj)
 {
-   int maxdays, prev_month_maxdays, day, mon, yr, i;
+   int maxdays, adjusted_wday, prev_month_maxdays, day, mon, yr, i;
Elm_Calendar_Mark *mark;
char part[12], day_s[3];
struct tm first_day;
@@ -580,8 +580,13 @@ _populate(Evas_Object *obj)
day = mtime->tm_mday;
  else
break;
+
+ adjusted_wday = (mtime->tm_wday - sd->first_week_day);
+ if (adjusted_wday < 0)
+   adjusted_wday = ELM_DAY_LAST + adjusted_wday;
+
  for (; day <= maxdays; day++)
-   if (mtime->tm_wday == _weekday_get(sd->first_day_it, day))
+   if (adjusted_wday == _weekday_get(sd->first_day_it, day))
  _cit_mark(obj, day + sd->first_day_it - 1,
mark->mark_type);
  break;

-- 




[EGIT] [core/elementary] master 01/06: spinner: delete longpress timer when scroller enabled.

2015-09-23 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=8d0da65cf3a39d4c651d25488e352dfd28a6cc43

commit 8d0da65cf3a39d4c651d25488e352dfd28a6cc43
Author: woochan lee <wc0917@samsung.com>
Date:   Wed Sep 23 15:02:21 2015 -0700

spinner: delete longpress timer when scroller enabled.

Summary:
If there is a spinner on scroller.
User can scrolling and spinner button longpress at the same time.

Prevent this weird action, delete longpress timer when scroller enabled.

@feature

Reviewers: Hermet, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3101

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elm_spinner.c | 21 +
 1 file changed, 21 insertions(+)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index 19168c4..09cb983 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -747,6 +747,22 @@ _dec_button_unpressed_cb(void *data,
return EINA_TRUE;
 }
 
+static void
+_inc_dec_button_mouse_move_cb(void *data,
+  Evas *evas EINA_UNUSED,
+  Evas_Object *obj EINA_UNUSED,
+  void *event_info)
+{
+   Evas_Event_Mouse_Move *ev = event_info;
+   ELM_SPINNER_DATA_GET(data, sd);
+
+   if ((ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) && sd->longpress_timer)
+ {
+ecore_timer_del(sd->longpress_timer);
+sd->longpress_timer = NULL;
+ }
+}
+
 EOLIAN static void
 _elm_spinner_elm_layout_sizing_eval(Eo *obj, Elm_Spinner_Data *_pd EINA_UNUSED)
 {
@@ -1029,6 +1045,9 @@ _elm_spinner_evas_object_smart_add(Eo *obj, 
Elm_Spinner_Data *priv)
   (EVAS_CLICKABLE_INTERFACE_EVENT_PRESSED, _inc_button_pressed_cb, 
obj));
 eo_do(priv->inc_button, eo_event_callback_add
   (EVAS_CLICKABLE_INTERFACE_EVENT_UNPRESSED, _inc_button_unpressed_cb, 
obj));
+evas_object_event_callback_add
+  (priv->inc_button, EVAS_CALLBACK_MOUSE_MOVE, 
_inc_dec_button_mouse_move_cb, obj);
+
 
 elm_layout_content_set(obj, "elm.swallow.inc_button", 
priv->inc_button);
 elm_widget_sub_object_add(obj, priv->inc_button);
@@ -1051,6 +1070,8 @@ _elm_spinner_evas_object_smart_add(Eo *obj, 
Elm_Spinner_Data *priv)
   (EVAS_CLICKABLE_INTERFACE_EVENT_PRESSED, _dec_button_pressed_cb, 
obj));
 eo_do(priv->dec_button, eo_event_callback_add
   (EVAS_CLICKABLE_INTERFACE_EVENT_UNPRESSED, _dec_button_unpressed_cb, 
obj));
+evas_object_event_callback_add
+  (priv->dec_button, EVAS_CALLBACK_MOUSE_MOVE, 
_inc_dec_button_mouse_move_cb, obj);
 
 elm_layout_content_set(obj, "elm.swallow.dec_button", 
priv->dec_button);
 elm_widget_sub_object_add(obj, priv->dec_button);

-- 




[EGIT] [core/elementary] master 01/01: multibuttonentry: Fix box item append rtl when mirror enabled.

2015-09-14 Thread Woochan Lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=82d549ab8aac2a7fd0dc175f059eb75fd955c891

commit 82d549ab8aac2a7fd0dc175f059eb75fd955c891
Author: Woochan Lee <wc0917@samsung.com>
Date:   Mon Sep 14 20:53:34 2015 +0900

multibuttonentry: Fix box item append rtl when mirror enabled.

Summary:
MBE item append logic changed when mirrored set as true.

The item appended from left side of internal box to right side, even 
mirrored set as true.

@fix

Test Plan:
Precondition : elm_widget_mirrored_set as true.

Run mbe sample in elementary_test.
Add item.

Reviewers: cedric, Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D2975
---
 src/lib/elc_multibuttonentry.c | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 91f00ad..98e1b53 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -1306,6 +1306,7 @@ _box_layout_cb(Evas_Object *o,
const Eina_List *l, *l_next;
Evas_Object *obj;
double ax, ay;
+   Eina_Bool rtl;
 
if (!_box_min_size_calculate(o, priv, , data)) return;
 
@@ -1313,6 +1314,10 @@ _box_layout_cb(Evas_Object *o,
 
evas_object_size_hint_min_get(o, , );
evas_object_size_hint_align_get(o, , );
+
+   rtl = elm_widget_mirrored_get(data);
+   if (rtl) ax = 1.0 - ax;
+
if (w < minw)
  {
 x = x + ((w - minw) * (1.0 - ax));
@@ -1342,6 +1347,7 @@ _box_layout_cb(Evas_Object *o,
 fw = fh = EINA_FALSE;
 if (ax == -1.0) {fw = 1; ax = 0.5; }
 if (ay == -1.0) {fh = 1; ay = 0.5; }
+if (rtl) ax = 1.0 - ax;
 
 ww = mnw;
 if (wx)
@@ -1366,7 +1372,8 @@ _box_layout_cb(Evas_Object *o,
   }
 
 evas_object_move(obj,
- xx + (Evas_Coord)(((double)(ww - ow)) * ax),
+ ((!rtl) ? (xx) : (x + (w - (xx - x) - ww)))
+ + (Evas_Coord)(((double)(ww - ow)) * ax),
  yy + (Evas_Coord)(((double)(hh - oh)) * ay));
 evas_object_resize(obj, ow, oh);
 

-- 




[EGIT] [core/elementary] master 01/01: calendar: fix signal process timing issue when view update.

2015-09-08 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=cfff788b62d742fee76655026063719dc149f81e

commit cfff788b62d742fee76655026063719dc149f81e
Author: woochan lee <wc0917@samsung.com>
Date:   Wed Sep 9 00:54:56 2015 +0200

calendar: fix signal process timing issue when view update.

Summary:
When the calendar view updated(Press next button to activated next month),
a lot of signals process(signal emitted) to calendar edc.

The signals which related with view update, should process in same loop.
If not, the view looks weird.

To ensure signals process same time, i called 
"edje_object_message_signal_process" after layout sizing eval called.

@fix

Reviewers: Hermet, cedric, woohyun

Subscribers: id213sin

Differential Revision: https://phab.enlightenment.org/D3019

Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/elm_calendar.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_calendar.c b/src/lib/elm_calendar.c
index 80c1906..fe0102a 100644
--- a/src/lib/elm_calendar.c
+++ b/src/lib/elm_calendar.c
@@ -609,7 +609,7 @@ _populate(Evas_Object *obj)
sd->filling = EINA_FALSE;
 
elm_layout_thaw(obj);
-   elm_layout_sizing_eval(obj);
+   edje_object_message_signal_process(elm_layout_edje_get(obj));
 }
 
 static void

-- 




[EGIT] [core/elementary] elementary-1.15 01/01: multibuttonentry: Fix mbe clicked signal is not work.

2015-08-28 Thread woochan lee
hermet pushed a commit to branch elementary-1.15.

http://git.enlightenment.org/core/elementary.git/commit/?id=ce37c4aee008e0f3dcfab54af08a09d91f6c5e23

commit ce37c4aee008e0f3dcfab54af08a09d91f6c5e23
Author: woochan lee wc0917@samsung.com
Date:   Fri Aug 28 19:40:27 2015 +0900

multibuttonentry: Fix mbe  clicked signal is not work.

Summary:
MBE clicked callback doesn't called when user click label, padding area of 
MBE.
Because of the MBE edc only has the SWALLOW part for internal box. never 
emit the signal for clicked.
So i added RECT part for bg of mbe.

@fix

Test Plan: Run elementary_test - execute multibuttonentry sample.

Reviewers: seoz, woohyun, cedric, Hermet

Reviewed By: Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2821
---
 data/themes/edc/elm/multibuttonentry.edc | 10 +-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/data/themes/edc/elm/multibuttonentry.edc 
b/data/themes/edc/elm/multibuttonentry.edc
index 7c3f199..e5b513a 100644
--- a/data/themes/edc/elm/multibuttonentry.edc
+++ b/data/themes/edc/elm/multibuttonentry.edc
@@ -1,8 +1,16 @@
 group { name: elm/multibuttonentry/base/default;
parts {
+  part { name: bg;
+ type: RECT;
+ scale: 1;
+ description { state: default 0.0;
+color: 0 0 0 0;
+ }
+  }
   part { name: box.swallow; type: SWALLOW;
  description { state: default 0.0;
-align: 0.0 0.0;
+rel1.to: bg;
+rel2.to: bg;
  }
   }
}

-- 




[EGIT] [core/elementary] master 01/01: multibuttonentry: Fix mbe clicked signal is not work.

2015-08-28 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=80c1840c3cb2f94f123b1051d108eeb023751722

commit 80c1840c3cb2f94f123b1051d108eeb023751722
Author: woochan lee wc0917@samsung.com
Date:   Fri Aug 28 19:40:27 2015 +0900

multibuttonentry: Fix mbe  clicked signal is not work.

Summary:
MBE clicked callback doesn't called when user click label, padding area of 
MBE.
Because of the MBE edc only has the SWALLOW part for internal box. never 
emit the signal for clicked.
So i added RECT part for bg of mbe.

@fix

Test Plan: Run elementary_test - execute multibuttonentry sample.

Reviewers: seoz, woohyun, cedric, Hermet

Reviewed By: Hermet

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2821
---
 data/themes/edc/elm/multibuttonentry.edc | 10 +-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/data/themes/edc/elm/multibuttonentry.edc 
b/data/themes/edc/elm/multibuttonentry.edc
index 5c19209..35eddca 100644
--- a/data/themes/edc/elm/multibuttonentry.edc
+++ b/data/themes/edc/elm/multibuttonentry.edc
@@ -3,9 +3,17 @@ group { name: elm/multibuttonentry/base/default;
data.item: vertical_pad 0;
data.item: closed_height 0;
parts {
+  part { name: bg;
+ type: RECT;
+ scale: 1;
+ description { state: default 0.0;
+color: 0 0 0 0;
+ }
+  }
   part { name: box.swallow; type: SWALLOW;
  description { state: default 0.0;
-align: 0.0 0.0;
+rel1.to: bg;
+rel2.to: bg;
  }
   }
}

-- 




[EGIT] [core/elementary] elementary-1.15 01/01: spinner: Add to support spinner value %d format.

2015-08-07 Thread woochan lee
hermet pushed a commit to branch elementary-1.15.

http://git.enlightenment.org/core/elementary.git/commit/?id=093765d1e8bb7402e2ee96a619a687c97ab5ad7a

commit 093765d1e8bb7402e2ee96a619a687c97ab5ad7a
Author: woochan lee wc0917@samsung.com
Date:   Fri Aug 7 16:58:54 2015 +0900

spinner: Add to support spinner value %d format.

Summary:
When user set min max as 50, 150 with %d format, then value set as 100.
The spinner value set as '0'
Because the sd-val type is double.
Spinner entry has same problem.

@fix

Test Plan:
Set spinner format as %d.
Check the spinner value.
It's not supported.

Reviewers: Jaehyun_Cho, cedric, Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D2898

Conflicts:

src/lib/elm_spinner.c

Conflicts:

src/lib/elm_spinner.c
---
 src/lib/elm_spinner.c | 31 +--
 1 file changed, 29 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index 9fc90a2..1903cf9 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -50,6 +50,24 @@ static const Elm_Action key_actions[] = {
 static void _access_increment_decrement_info_say(Evas_Object *obj,
  Eina_Bool is_incremented);
 
+static Eina_Bool
+_is_label_format_integer(const char *fmt)
+{
+   const char *start = strchr(fmt, '%');
+   const char *itr;
+
+   for (itr = start + 1; *itr != '\0'; itr++)
+ {
+if ((*itr == 'd') || (*itr == 'u') || (*itr == 'i') ||
+(*itr == 'o') || (*itr == 'x') || (*itr == 'X'))
+  return EINA_TRUE;
+else if ((*itr == 'f'))
+  return EINA_FALSE;
+ }
+
+   return EINA_FALSE;
+}
+
 static void
 _entry_show(Elm_Spinner_Data *sd)
 {
@@ -90,7 +108,11 @@ _entry_show(Elm_Spinner_Data *sd)
}
   }
  }
-   snprintf(buf, sizeof(buf), fmt, sd-val);
+   if (_is_label_format_integer(fmt))
+ snprintf(buf, sizeof(buf), fmt, (int)sd-val);
+   else
+ snprintf(buf, sizeof(buf), fmt, sd-val);
+
elm_object_text_set(sd-ent, buf);
 }
 
@@ -113,7 +135,12 @@ _label_write(Evas_Object *obj)
  }
 
if (sd-label)
- snprintf(buf, sizeof(buf), sd-label, sd-val);
+ {
+if (_is_label_format_integer(sd-label))
+  snprintf(buf, sizeof(buf), sd-label, (int)sd-val);
+else
+  snprintf(buf, sizeof(buf), sd-label, sd-val);
+ }
else
  snprintf(buf, sizeof(buf), %.0f, sd-val);
 

-- 




[EGIT] [core/elementary] master 01/01: spinner: Add to support spinner value %d format.

2015-08-07 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=2686516f3c46af8ec5339dd00f9d1b42cce66d6c

commit 2686516f3c46af8ec5339dd00f9d1b42cce66d6c
Author: woochan lee wc0917@samsung.com
Date:   Fri Aug 7 16:58:54 2015 +0900

spinner: Add to support spinner value %d format.

Summary:
When user set min max as 50, 150 with %d format, then value set as 100.
The spinner value set as '0'
Because the sd-val type is double.
Spinner entry has same problem.

@fix

Test Plan:
Set spinner format as %d.
Check the spinner value.
It's not supported.

Reviewers: Jaehyun_Cho, cedric, Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D2898

Conflicts:

src/lib/elm_spinner.c
---
 src/lib/elm_spinner.c | 31 +--
 1 file changed, 29 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index 255135f..2130ffe 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -50,6 +50,24 @@ static const Elm_Action key_actions[] = {
 static void _access_increment_decrement_info_say(Evas_Object *obj,
  Eina_Bool is_incremented);
 
+static Eina_Bool
+_is_label_format_integer(const char *fmt)
+{
+   const char *start = strchr(fmt, '%');
+   const char *itr;
+
+   for (itr = start + 1; *itr != '\0'; itr++)
+ {
+if ((*itr == 'd') || (*itr == 'u') || (*itr == 'i') ||
+(*itr == 'o') || (*itr == 'x') || (*itr == 'X'))
+  return EINA_TRUE;
+else if ((*itr == 'f'))
+  return EINA_FALSE;
+ }
+
+   return EINA_FALSE;
+}
+
 static void
 _entry_show(Elm_Spinner_Data *sd)
 {
@@ -100,9 +118,13 @@ _entry_show(Elm_Spinner_Data *sd)
}
   }
  }
-   snprintf(buf, sizeof(buf), fmt, sd-val);
 
 apply:
+   if (_is_label_format_integer(fmt))
+ snprintf(buf, sizeof(buf), fmt, (int)sd-val);
+   else
+ snprintf(buf, sizeof(buf), fmt, sd-val);
+
elm_object_text_set(sd-ent, buf);
 }
 
@@ -125,7 +147,12 @@ _label_write(Evas_Object *obj)
  }
 
if (sd-label)
- snprintf(buf, sizeof(buf), sd-label, sd-val);
+ {
+if (_is_label_format_integer(sd-label))
+  snprintf(buf, sizeof(buf), sd-label, (int)sd-val);
+else
+  snprintf(buf, sizeof(buf), sd-label, sd-val);
+ }
else
  snprintf(buf, sizeof(buf), %.0f, sd-val);
 

-- 




[EGIT] [core/elementary] master 13/17: index: fix index object got a wrong min value.

2015-08-04 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=560338c5c31bda8912938074cb736eabdb9f1f31

commit 560338c5c31bda8912938074cb736eabdb9f1f31
Author: woochan lee wc0917@samsung.com
Date:   Tue Aug 4 16:04:44 2015 +0200

index: fix index object got a wrong min value.

Summary:
The evas box swallowed in elm,swallow,index part.
Then the each index item will be appended into evas_box when elm_index_go 
called.

If user make the line or dot for that swallow part for resize same as 
internall box.
edje_size_min_calc always give the '0'value for it.

Box will be swallowed the only on swllow part for desicion index layout 
size.
So the index min value should follow the box size.

Test Plan:
Run any index sample.
Get the index min size and check the value.
It gets always wrong before.

Reviewers: cedric, Hermet, woohyun

Differential Revision: https://phab.enlightenment.org/D2896

Signed-off-by: Cedric BAIL ced...@osg.samsung.com
---
 src/lib/elm_index.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_index.c b/src/lib/elm_index.c
index bb49068..ac6dea2 100644
--- a/src/lib/elm_index.c
+++ b/src/lib/elm_index.c
@@ -506,9 +506,9 @@ EOLIAN static void
 _elm_index_elm_layout_sizing_eval(Eo *obj, Elm_Index_Data *_pd EINA_UNUSED)
 {
Evas_Coord minw = -1, minh = -1;
-   ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
+   ELM_INDEX_DATA_GET(obj, sd);
 
-   edje_object_size_min_calc(wd-resize_obj, minw, minh);
+   evas_object_size_hint_min_get(sd-bx[sd-level], minw, minh);
evas_object_size_hint_min_set(obj, minw, minh);
evas_object_size_hint_max_set(obj, -1, -1);
 }

-- 




[EGIT] [core/elementary] master 11/17: index: add index item priority APIs for support multilingual

2015-08-04 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=52e9c80dfa042c5b321c5251c2fd1f09cdd0477a

commit 52e9c80dfa042c5b321c5251c2fd1f09cdd0477a
Author: woochan lee wc0917@samsung.com
Date:   Tue Aug 4 15:55:18 2015 +0200

index: add index item priority APIs for support multilingual

Summary:
I add the APIs for supporting multi language on index.

elm_index_item_priority_set() API can give the priority value for each 
item.
it will be grouping with each priority items when index start to draw the 
item.
It can get a 0 or 1 (default : -1) -1 priority item show always even 
priority changed.

elm_index_priority_set() API can changed the current priority in manually.
priority will be up automatically when user send move event into last of 
priority 1 group item.
otherwise, priority will be down automatically when user send move event 
into first of priority 0 group item.

elm_index_priority_get() API can get a current index priority.
@feature

Test Plan:
I added the test application in test_index with give the name as 
test_index3
(It's for only show how to handle the priority APIs and show the how does 
it works for multi language
so it doesn't operate with genlist.)
You can check the how it works and how APIs works for it as well.

Reviewers: eunue, seoz, woohyun, Hermet

Subscribers: SanghyeonLee, eagleeye

Differential Revision: https://phab.enlightenment.org/D2729

Signed-off-by: Cedric BAIL ced...@osg.samsung.com
---
 src/bin/test.c |   2 +
 src/bin/test_index.c   |  93 +
 src/lib/elm_index.c| 165 +++--
 src/lib/elm_index.eo   |  29 
 src/lib/elm_index_item.eo  |  20 ++
 src/lib/elm_widget_index.h |   3 +
 6 files changed, 305 insertions(+), 7 deletions(-)

diff --git a/src/bin/test.c b/src/bin/test.c
index 04fb02d..96827d5 100644
--- a/src/bin/test.c
+++ b/src/bin/test.c
@@ -153,6 +153,7 @@ void test_scroller3(void *data, Evas_Object *obj, void 
*event_info);
 void test_spinner(void *data, Evas_Object *obj, void *event_info);
 void test_index(void *data, Evas_Object *obj, void *event_info);
 void test_index2(void *data, Evas_Object *obj, void *event_info);
+void test_index3(void *data, Evas_Object *obj, void *event_info);
 void test_index_horizontal(void *data, Evas_Object *obj, void *event_info);
 void test_photocam(void *data, Evas_Object *obj, void *event_info);
 void test_photocam_remote(void *data, Evas_Object *obj, void *event_info);
@@ -723,6 +724,7 @@ add_tests:
//--//
ADD_TEST(NULL, Selectors, Index, test_index);
ADD_TEST(NULL, Selectors, Index 2, test_index2);
+   ADD_TEST(NULL, Selectors, Index 3, test_index3);
ADD_TEST(NULL, Selectors, Index Horizontal, test_index_horizontal);
ADD_TEST(NULL, Selectors, FileSelector, test_fileselector);
ADD_TEST(NULL, Selectors, FileSelector Entry, test_fileselector_entry);
diff --git a/src/bin/test_index.c b/src/bin/test_index.c
index 6c13245..cd05954 100644
--- a/src/bin/test_index.c
+++ b/src/bin/test_index.c
@@ -434,6 +434,99 @@ test_index2(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_in
evas_object_show(win);
 }
 
+/* Index 3 Mode **/
+
+static void
+_index_priority_change_cb(void *data, Evas_Object *obj EINA_UNUSED,
+   void *event_info EINA_UNUSED)
+{
+   Evas_Object *index = data;
+   int priority;
+
+   priority = elm_index_priority_get(index);
+
+   if (priority == 0)
+ elm_index_priority_set(index, 1);
+   else
+ elm_index_priority_set(index, 0);
+
+   printf(Priority changed to : %d\n, elm_index_priority_get(index));
+}
+
+void
+test_index3(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
+{
+   Evas_Object *win, *bx, *index, *bt;
+   Elm_Object_Item *it;
+   int i, j, len;
+   char *str;
+   char buf[PATH_MAX] = {0, };
+
+   win = elm_win_util_standard_add(Index-priority, Index priority for 
multilingual);
+   elm_win_autodel_set(win, EINA_TRUE);
+
+   bx = elm_box_add(win);
+   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   elm_win_resize_object_add(win, bx);
+   evas_object_show(bx);
+
+   index = elm_index_add(win);
+   evas_object_size_hint_weight_set(index, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(index, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   elm_index_autohide_disabled_set(index, EINA_TRUE);
+   elm_index_omit_enabled_set(index, EINA_TRUE);
+
+   bt = elm_button_add(win);
+   elm_object_text_set(bt, Priority Change);
+   evas_object_smart_callback_add(bt, clicked, _index_priority_change_cb, 
index);
+   elm_box_pack_end(bx, bt);
+   evas_object_show(bt);
+
+   elm_box_pack_end(bx, index);
+
+   evas_object_show(index);
+
+   //1. Special character  Numbers

[EGIT] [core/elementary] master 12/17: multibuttonentry: item object scale set is not need when theme applied.

2015-08-04 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=06d9d4ba643633db1dcc9e1e9307f835a2d95d4b

commit 06d9d4ba643633db1dcc9e1e9307f835a2d95d4b
Author: woochan lee wc0917@samsung.com
Date:   Tue Aug 4 16:02:25 2015 +0200

multibuttonentry: item object scale set is not need when theme applied.

Summary:
An item size calculated with scale value when item appended.
This code is not need.

@fix

Reviewers: Hermet, woohyun, cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2840

Signed-off-by: Cedric BAIL ced...@osg.samsung.com
---
 src/lib/elc_multibuttonentry.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index f1281e0..40c567f 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -94,7 +94,6 @@ _elm_multibuttonentry_elm_widget_theme_apply(Eo *obj, 
Elm_Multibuttonentry_Data
 if (VIEW(item))
   elm_layout_theme_set
 (VIEW(item), multibuttonentry, btn, elm_widget_style_get(obj));
-elm_object_scale_set(VIEW(item), elm_widget_scale_get(obj) * 
elm_config_scale_get());
  }
 
elm_widget_theme_object_set

-- 




[EGIT] [core/elementary] master 01/17: spinner: entry text makes to registered special value instead of number.

2015-08-04 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=569cb23fc1814e6e358f1b5d1d11173012142373

commit 569cb23fc1814e6e358f1b5d1d11173012142373
Author: woochan lee wc0917@samsung.com
Date:   Wed Jul 29 22:17:34 2015 +0200

spinner: entry text makes to registered special value instead of number.

Summary:
Entry has only number text when activated and value changed, Even user 
registered special value to each spinner value.
If the user registered special value, we should check then showing the 
special value instead of number text.
Its will more helpful to expect the result when user set a spinner value 
using spinner entry.

@fix

Test Plan:
There is a spinner sample in elementary_test.
Changing editable value as TRUE for the last spinner object.
Click the spinner to activated entry and check the result.

Reviewers: Hermet, Jaehyun, cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2844

Signed-off-by: Cedric BAIL ced...@osg.samsung.com
---
 src/lib/elm_spinner.c | 12 
 1 file changed, 12 insertions(+)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index 42ff096..46e884c 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -53,8 +53,18 @@ static void _access_increment_decrement_info_say(Evas_Object 
*obj,
 static void
 _entry_show(Elm_Spinner_Data *sd)
 {
+   Eina_List *l;
+   Elm_Spinner_Special_Value *sv;
char buf[32], fmt[32] = %0.f;
 
+   EINA_LIST_FOREACH(sd-special_values, l, sv)
+ {
+if (sv-value == sd-val)
+  {
+ snprintf(buf, sizeof(buf), %s, sv-label);
+ goto apply;
+  }
+ }
/* try to construct just the format from given label
 * completely ignoring pre/post words
 */
@@ -91,6 +101,8 @@ _entry_show(Elm_Spinner_Data *sd)
   }
  }
snprintf(buf, sizeof(buf), fmt, sd-val);
+
+apply:
elm_object_text_set(sd-ent, buf);
 }
 

-- 




[EGIT] [core/elementary] master 06/17: multibuttonentry: add horizontal, vertical padding between items.

2015-08-04 Thread Woochan Lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=9c93021c1a37991e9b3f8c17d7b23bcad999bfc8

commit 9c93021c1a37991e9b3f8c17d7b23bcad999bfc8
Author: Woochan Lee wc0917@samsung.com
Date:   Wed Jul 29 23:18:17 2015 +0200

multibuttonentry: add horizontal, vertical padding between items.

Summary:
There is no way to give padding between each items, previously.
So i added horizontal, vertical padding here.

I will add APIs for set, get padding size set, get.

@feature

Test Plan:
Change the horizontal, vertical paddidng value in multibuttonentry.edc
Run elementary_test
Execute multibuttonentry sample.
Add items.
Check the padding between items.

Reviewers: woohyun, seoz, Hermet, raster

Reviewed By: Hermet, raster

Subscribers: raster

Differential Revision: https://phab.enlightenment.org/D2534

Signed-off-by: Cedric BAIL ced...@osg.samsung.com
---
 data/themes/edc/elm/multibuttonentry.edc |  3 +++
 src/lib/elc_multibuttonentry.c   | 40 +---
 2 files changed, 40 insertions(+), 3 deletions(-)

diff --git a/data/themes/edc/elm/multibuttonentry.edc 
b/data/themes/edc/elm/multibuttonentry.edc
index 7c3f199..5c19209 100644
--- a/data/themes/edc/elm/multibuttonentry.edc
+++ b/data/themes/edc/elm/multibuttonentry.edc
@@ -1,4 +1,7 @@
 group { name: elm/multibuttonentry/base/default;
+   data.item: horizontal_pad 0;
+   data.item: vertical_pad 0;
+   data.item: closed_height 0;
parts {
   part { name: box.swallow; type: SWALLOW;
  description { state: default 0.0;
diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 8255e35..f1281e0 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -70,6 +70,8 @@ _format_count(int count, void *data EINA_UNUSED)
 EOLIAN static Eina_Bool
 _elm_multibuttonentry_elm_widget_theme_apply(Eo *obj, 
Elm_Multibuttonentry_Data *sd)
 {
+   const char *str;
+   int hpad = 0, vpad = 0;
Eina_List *l;
Elm_Object_Item *eo_item;
 
@@ -77,6 +79,15 @@ _elm_multibuttonentry_elm_widget_theme_apply(Eo *obj, 
Elm_Multibuttonentry_Data
eo_do_super(obj, MY_CLASS, int_ret = elm_obj_widget_theme_apply());
if (!int_ret) return EINA_FALSE;
 
+   str = elm_layout_data_get(obj, horizontal_pad);
+   if (str) hpad = atoi(str);
+   str = elm_layout_data_get(obj, vertical_pad);
+   if (str) vpad = atoi(str);
+   elm_box_padding_set
+ (sd-box,
+  hpad * elm_widget_scale_get(obj) * elm_config_scale_get(),
+  vpad * elm_widget_scale_get(obj) * elm_config_scale_get());
+
EINA_LIST_FOREACH(sd-items, l, eo_item)
  {
 ELM_MULTIBUTTONENTRY_ITEM_DATA_GET(eo_item, item);
@@ -924,10 +935,12 @@ _box_resize_cb(void *data,
Evas_Coord w, h, mnw, mnh;
Eina_List *l;
Elm_Object_Item *eo_it;
+   int hpad;
 
ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN(data, sd);
 
evas_object_geometry_get(sd-box, NULL, NULL, w, h);
+   elm_box_padding_get(obj, hpad, NULL);
 
if (sd-h_box  h)
  eo_do(sd-parent, eo_event_callback_call
@@ -947,9 +960,9 @@ _box_resize_cb(void *data,
 
  evas_object_size_hint_min_get(VIEW(it), mnw, mnh);
 
- if (mnw  w)
+ if (mnw  w - hpad)
{
-  mnw = w;
+  mnw = w - hpad;
   evas_object_size_hint_min_set(VIEW(it), mnw, mnh);
   evas_object_resize(VIEW(it), mnw, mnh);
}
@@ -1259,8 +1272,11 @@ _box_min_size_calculate(Evas_Object *box,
   line_num++;
}
   }
+
+if ((linew != 0)  (l != eina_list_last(priv-children)))
+  linew += priv-pad.h;
  }
-   minh = lineh * line_num;
+   minh = lineh * line_num + (line_num - 1) * priv-pad.v;
 
evas_object_size_hint_min_set(box, minw, minh);
*line_height = lineh;
@@ -1334,6 +1350,7 @@ _box_layout_cb(Evas_Object *o,
   {
  xx = x;
  yy += hh;
+ yy += priv-pad.v;
  linew = ww;
   }
 
@@ -1343,6 +1360,7 @@ _box_layout_cb(Evas_Object *o,
 evas_object_resize(obj, ow, oh);
 
 xx += ww;
+xx += priv-pad.h;
 
 if (linew  w)
   {
@@ -1351,18 +1369,34 @@ _box_layout_cb(Evas_Object *o,
{
   xx = x;
   yy += hh;
+  yy += priv-pad.v;
   linew = 0;
}
   }
+if ((linew != 0)  (l != eina_list_last(priv-children)))
+  linew += priv-pad.h;
  }
 }
 
 static void
 _view_init(Evas_Object *obj, Elm_Multibuttonentry_Data *sd)
 {
+   const char *str;
+   int hpad = 0, vpad = 0;
+
sd-box = elm_box_add(obj);
 
if (!sd-box) return;
+
+   str = elm_layout_data_get(obj, horizontal_pad);
+   if (str) hpad = atoi(str);
+   str = elm_layout_data_get(obj

[EGIT] [core/elementary] master 03/10: multibuttonentry: delete clicked signal preventing code when mbe shrinked.

2015-07-28 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=bf56049bba253f6a8f855e0aa3e0bcbf077823b3

commit bf56049bba253f6a8f855e0aa3e0bcbf077823b3
Author: woochan lee wc0917@samsung.com
Date:   Tue Jul 28 20:42:48 2015 +0200

multibuttonentry: delete clicked signal preventing code when mbe shrinked.

Summary:
We don't have event block area in mbe.
Item clicked callback is not called when user clicked the item in mbe 
shrinked state.
However, item press effect will be shown.

@fix

Test Plan:
Delete the line always calling expanded set API in MBE clicked callback.
Execute MBE sample in elementary_test.
Check the item got a click event but not call the clicked callback.

Reviewers: Hermet, woohyun

Differential Revision: https://phab.enlightenment.org/D2870

Signed-off-by: Cedric BAIL ced...@osg.samsung.com
---
 src/lib/elc_multibuttonentry.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 0592eb5..8559607 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -491,9 +491,6 @@ _on_item_clicked(void *data,
ELM_MULTIBUTTONENTRY_ITEM_DATA_GET(eo_it, it);
ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN(WIDGET(it), sd);
 
-   if (sd-view_state == MULTIBUTTONENTRY_VIEW_SHRINK)
- return;
-
_item_select(WIDGET(it), it);
 
if (sd-selected_it)

-- 




[EGIT] [core/elementary] master 06/10: multibuttonentry: fix bug with uneditable MBE use case.

2015-07-28 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=fbed0fa5e34b84bdccc2dcf519edb7f54c3c9108

commit fbed0fa5e34b84bdccc2dcf519edb7f54c3c9108
Author: woochan lee wc0917@samsung.com
Date:   Tue Jul 28 22:54:21 2015 +0200

multibuttonentry: fix bug with uneditable MBE use case.

Summary:
If there is a uneditable MBE, the MBE doesn't have to get a entry inside of 
the box.
It breaks MBE box layout, resize logic.

And check the box focus, entry visible is not enough to cover MBE is 
uneditable case.
If MBE is uneditable, box_resize callback called when item added. in this 
case,
we need to check what view type user want. if its not shrink view here, do 
not make
MBE to shrink mode.

@fix

Test Plan: Run elementary_test - execute multibuttonentry  sample with 
editable set as false.

Reviewers: Hermet, seoz, woohyun, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D2824

Signed-off-by: Cedric BAIL ced...@osg.samsung.com
---
 src/lib/elc_multibuttonentry.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 8559607..a9c87cf 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -952,7 +952,8 @@ _box_resize_cb(void *data,
}
   }
  }
-   if (!elm_object_focus_get(data)  !evas_object_visible_get(sd-entry))
+   if (sd-view_state == MULTIBUTTONENTRY_VIEW_SHRINK 
+   !elm_object_focus_get(data)  !evas_object_visible_get(sd-entry))
  {
 _shrink_mode_set(data, EINA_TRUE);
  }
@@ -1695,6 +1696,7 @@ _elm_multibuttonentry_editable_set(Eo *obj EINA_UNUSED, 
Elm_Multibuttonentry_Dat
  evas_object_show(sd-entry);
else
  {
+elm_box_unpack(sd-box, sd-entry);
 elm_entry_input_panel_hide(sd-entry);
 evas_object_hide(sd-entry);
  }

-- 




[EGIT] [core/elementary] master 10/10: multibuttonentry: internal label object status, box pack, unpack logic clean up.

2015-07-28 Thread woochan lee
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=223c97afe1005f7a373d86db918e2303f653a1f5

commit 223c97afe1005f7a373d86db918e2303f653a1f5
Author: woochan lee wc0917@samsung.com
Date:   Tue Jul 28 23:34:40 2015 +0200

multibuttonentry: internal label object status, box pack, unpack logic 
clean up.

Summary:
Even user sets empty string here for text, label still packed in box with 
min size(finger size).
label_set internal logic is not clear before.
ex: object min set, resize check the string length then sending signal, min 
set again.
so i deleted the signal emit code here, we can handle label show, hide 
status in code and it's more clear.
Besides sd-label is always true all of the case. we need to check 
whether it's packed or not.

The label will be added to parent's sub object when it's packed into box.
label_set as empty string in adding time also meaningless.

@fix

Test Plan:
Run multibuttonentry sample.
Set a text somthing for it then set an empty string here.

Reviewers: Hermet, woohyun

Differential Revision: https://phab.enlightenment.org/D2841

Signed-off-by: Cedric BAIL ced...@osg.samsung.com
---
 data/themes/edc/elm/multibuttonentry.edc | 19 ---
 src/lib/elc_multibuttonentry.c   | 21 -
 src/lib/elm_widget_multibuttonentry.h|  1 +
 3 files changed, 9 insertions(+), 32 deletions(-)

diff --git a/data/themes/edc/elm/multibuttonentry.edc 
b/data/themes/edc/elm/multibuttonentry.edc
index cd0bb5d..7c3f199 100644
--- a/data/themes/edc/elm/multibuttonentry.edc
+++ b/data/themes/edc/elm/multibuttonentry.edc
@@ -25,25 +25,6 @@ group { name: elm/multibuttonentry/label/default;
 rel1.offset: 2 2;
 rel2.offset: -5 -5;
  }
- description { state: no_text 0.0;
-inherit: default 0.0;
-text.min: 0 1;
-rel1.offset: 0 0;
-rel2.offset: -1 -1;
-visible: 0;
- }
-  }
-   }
-   programs {
-  program {
- signal: elm,mbe,set_text; source: elm;
- action: STATE_SET default 0.0;
- target: elm.text;
-  }
-  program {
- signal: elm,mbe,clear_text; source: elm;
- action: STATE_SET no_text 0.0;
- target: elm.text;
   }
}
 }
diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 0385fbf..8255e35 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -176,7 +176,7 @@ _shrink_mode_set(Evas_Object *obj,
 // pack buttons only 1line
 w = sd-w_box;
 
-if (sd-label)
+if (sd-label  sd-label_packed)
   {
  elm_box_pack_end(sd-box, sd-label);
  evas_object_size_hint_min_get(sd-label, w_tmp, NULL);
@@ -260,7 +260,7 @@ _shrink_mode_set(Evas_Object *obj,
 
 // pack buttons only 1line
 
-if (sd-label) elm_box_pack_end(sd-box, sd-label);
+if (sd-label  sd-label_packed) elm_box_pack_end(sd-box, 
sd-label);
 
 // pack remain btns
 eo_item = NULL;
@@ -782,7 +782,7 @@ _item_new(Elm_Multibuttonentry_Data *sd,
   }
 else
   {
- if (sd-label)
+ if (sd-label  sd-label_packed)
elm_box_pack_after(sd-box, VIEW(item), sd-label);
  else
elm_box_pack_start(sd-box, VIEW(item));
@@ -1156,26 +1156,23 @@ _label_set(Evas_Object *obj,
 
eina_stringshare_replace(sd-label_str, str);
 
-   evas_object_size_hint_min_set(sd-label, 0, 0);
-   evas_object_resize(sd-label, 0, 0);
edje_object_part_text_escaped_set(sd-label, elm.text, str);
 
if (!strlen(str))
  {
-edje_object_signal_emit(sd-label, elm,mbe,clear_text, elm);
-edje_object_size_min_calc(sd-label, width, height);
+sd-label_packed = EINA_FALSE;
 elm_box_unpack(sd-box, sd-label);
+evas_object_hide(sd-label);
  }
else
  {
-edje_object_signal_emit(sd-label, elm,mbe,set_text, elm);
+sd-label_packed = EINA_TRUE;
 edje_object_size_min_calc(sd-label, width, height);
+evas_object_size_hint_min_set(sd-label, width, height);
 elm_box_pack_start(sd-box, sd-label);
+evas_object_show(sd-label);
  }
 
-   elm_coords_finger_size_adjust(1, width, 1, height);
-   evas_object_size_hint_min_set(sd-label, width, height);
-   evas_object_show(sd-label);
_view_update(sd);
 }
 
@@ -1375,8 +1372,6 @@ _view_init(Evas_Object *obj, Elm_Multibuttonentry_Data 
*sd)
elm_widget_theme_object_set
  (obj, sd-label, multibuttonentry, label,
  elm_widget_style_get(obj));
-   _label_set(obj, );
-   elm_widget_sub_object_add(obj, sd-label);
 
// ACCESS
if (_elm_config-access_mode == ELM_ACCESS_MODE_ON)
diff --git a/src/lib/elm_widget_multibuttonentry.h 
b/src/lib

[EGIT] [core/elementary] master 01/01: toolbar: item content unset function called when user content unset to toolbar item.

2015-07-15 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=6008c2c3867e3198d468b66d703aa39ee21445a5

commit 6008c2c3867e3198d468b66d703aa39ee21445a5
Author: woochan lee wc0917@samsung.com
Date:   Thu Jul 16 11:29:29 2015 +0900

toolbar: item content unset function called when user content unset to 
toolbar item.

Summary:
It's related with https://phab.enlightenment.org/D2777

I missed doing on content_unset case.

Reviewers: Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D2808
---
 src/lib/elm_toolbar.c | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_toolbar.c b/src/lib/elm_toolbar.c
index 7849220..e049643 100644
--- a/src/lib/elm_toolbar.c
+++ b/src/lib/elm_toolbar.c
@@ -1620,7 +1620,11 @@ _elm_toolbar_item_elm_widget_item_part_content_unset(Eo 
*eo_item EINA_UNUSED, El
 
ELM_TOOLBAR_DATA_GET(obj, sd);
 
-   if (part  strcmp(part, object)) return NULL;
+   if (part  strcmp(part, object)  strcmp(part, elm.swallow.object))
+ {
+eo_do(VIEW(item), o = elm_obj_container_content_unset(part));
+return o;
+ }
 
elm_layout_content_unset(VIEW(item), elm.swallow.object);
elm_widget_sub_object_del(obj, item-object);

-- 




[EGIT] [core/elementary] master 01/01: toolbar: item object change from edje object to layout.

2015-07-02 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=260e09ea5adaffeef40286f424a8a5ca25e9077e

commit 260e09ea5adaffeef40286f424a8a5ca25e9077e
Author: woochan lee wc0917@samsung.com
Date:   Thu Jul 2 20:00:57 2015 +0900

toolbar: item object change from edje object to layout.

Summary:
Its for support elm_object_item_ APIs for toolbar item.
Its the pre work for toolbar item content set some layout to toolbar item 
layout automatically.
(without implement item_content_set with part name.)

I  abandoned for check the other side of this change. but its not has 
problem so i reclaim this commit
and put on another commit for this. https://phab.enlightenment.org/D2777

Test Plan: To all of the action on elementary toolbar test sample.

Reviewers: cedric, Hermet

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D2768
---
 src/lib/elm_toolbar.c | 152 +-
 1 file changed, 76 insertions(+), 76 deletions(-)

diff --git a/src/lib/elm_toolbar.c b/src/lib/elm_toolbar.c
index b0079d7..5b78ed8 100644
--- a/src/lib/elm_toolbar.c
+++ b/src/lib/elm_toolbar.c
@@ -156,7 +156,7 @@ _item_unselect(Elm_Toolbar_Item_Data *item)
 
item-selected = EINA_FALSE;
sd-selected_item = NULL;
-   edje_object_signal_emit(VIEW(item), elm,state,unselected, elm);
+   elm_layout_signal_emit(VIEW(item), elm,state,unselected, elm);
if (item-icon)
  elm_widget_signal_emit(item-icon, elm,state,unselected, elm);
eo_do(WIDGET(item), 
eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, 
EO_OBJ(item)));
@@ -231,7 +231,7 @@ _item_mirrored_set(Evas_Object *obj EINA_UNUSED,
Elm_Toolbar_Item_Data *it,
Eina_Bool mirrored)
 {
-   edje_object_mirrored_set(VIEW(it), mirrored);
+   elm_widget_mirrored_set(VIEW(it), mirrored);
if (it-o_menu) elm_widget_mirrored_set(it-o_menu, mirrored);
 }
 
@@ -266,13 +266,13 @@ _items_size_fit(Evas_Object *obj, Evas_Coord *bl, 
Evas_Coord view)
   {
  if (!it-separator  !it-object)
elm_coords_finger_size_adjust(1, mw, 1, mh);
- edje_object_size_min_restricted_calc(VIEW(it), mw, mh, mw, mh);
+ 
edje_object_size_min_restricted_calc(elm_layout_edje_get(VIEW(it)), mw, mh, 
mw, mh);
   }
 else if (!more)
   {
  more = EINA_TRUE;
  elm_coords_finger_size_adjust(1, mw, 1, mh);
- edje_object_size_min_restricted_calc(sd-VIEW(more_item), mw, 
mh, mw, mh);
+ 
edje_object_size_min_restricted_calc(elm_layout_edje_get(sd-VIEW(more_item)), 
mw, mh, mw, mh);
   }
 
 if (mw != -1 || mh != -1)
@@ -624,12 +624,12 @@ _elm_toolbar_item_focused(Elm_Object_Item *eo_it)
 
if (elm_widget_focus_highlight_enabled_get(obj))
  {
-edje_object_signal_emit
+elm_layout_signal_emit
(VIEW(it), elm,state,focused, elm);
  }
-   edje_object_signal_emit
+   elm_layout_signal_emit
   (VIEW(it), elm,highlight,on, elm);
-   focus_raise = edje_object_data_get(VIEW(it), focusraise);
+   focus_raise = elm_layout_data_get(VIEW(it), focusraise);
if ((focus_raise)  (!strcmp(focus_raise, on)))
  evas_object_raise(VIEW(it));
eo_do(obj, eo_event_callback_call
@@ -653,10 +653,10 @@ _elm_toolbar_item_unfocused(Elm_Object_Item *eo_it)
if (elm_widget_focus_highlight_enabled_get(obj))
  {
 ELM_TOOLBAR_ITEM_DATA_GET(sd-focused_item, focus_it);
-edje_object_signal_emit
+elm_layout_signal_emit
(VIEW(focus_it), elm,state,unfocused, elm);
  }
-   edje_object_signal_emit
+   elm_layout_signal_emit
   (VIEW(it), elm,highlight,off, elm);
sd-focused_item = NULL;
eo_do(obj, eo_event_callback_call
@@ -978,7 +978,7 @@ _resizing_eval_item(Elm_Toolbar_Item_Data *it)
evas_object_geometry_get(obj, x, y, NULL, h);
evas_object_move(sd-more, x, y + h);
//calculate the size of item
-   edje_object_size_min_restricted_calc(VIEW(it), mw, mh, mw, mh);
+   edje_object_size_min_restricted_calc(elm_layout_edje_get(VIEW(it)), mw, 
mh, mw, mh);
if (!it-separator  !it-object)
  elm_coords_finger_size_adjust(1, mw, 1, mh);
evas_object_size_hint_min_set(VIEW(it), mw, mh);
@@ -1005,7 +1005,7 @@ _elm_toolbar_item_elm_widget_item_disable(Eo *eo_toolbar, 
Elm_Toolbar_Item_Data
else
  emission = elm,state,enabled;
 
-   edje_object_signal_emit(VIEW(toolbar_it), emission, elm);
+   elm_layout_signal_emit(VIEW(toolbar_it), emission, elm);
if (toolbar_it-icon)
  elm_widget_signal_emit(toolbar_it-icon, emission, elm);
 
@@ -1116,7 +1116,7 @@ _item_select(Elm_Toolbar_Item_Data *it)
 {
if (it-in_box != sd-bx)
  {
-edje_object_signal_emit

[EGIT] [core/elementary] master 01/01: toolbar: content_set function called when user content set to toolbar item.

2015-07-02 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=8dc5c98240a3e82050b4a90c9595ed22f5832201

commit 8dc5c98240a3e82050b4a90c9595ed22f5832201
Author: woochan lee wc0917@samsung.com
Date:   Thu Jul 2 20:07:48 2015 +0900

toolbar: content_set function called when user content set to toolbar item.

Summary:
If User want to content set something to item area. there is no way to 
except elm customizing.
So i added this feature and make the toolbar item object to layout before.

Now user can content set something on item area only call 
elm_object_item_part_content_set API.

Test Plan:
Make some swallow part on toolbar edc.
and content set some layout to that swallow part to using 
elm_object_item_part_content_set

Reviewers: cedric, Hermet

Subscribers: SanghyeonLee, eagleeye, id213sin

Differential Revision: https://phab.enlightenment.org/D2777
---
 src/lib/elm_toolbar.c | 15 +--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_toolbar.c b/src/lib/elm_toolbar.c
index 5b78ed8..cbff114 100644
--- a/src/lib/elm_toolbar.c
+++ b/src/lib/elm_toolbar.c
@@ -1577,7 +1577,11 @@ _elm_toolbar_item_elm_widget_item_part_content_set(Eo 
*eo_item EINA_UNUSED, Elm_
 
ELM_TOOLBAR_DATA_GET(obj, sd);
 
-   if (part  strcmp(part, object)) return;
+   if (part  strcmp(part, object)  strcmp(part, elm.swallow.object))
+ {
+eo_do(VIEW(item), elm_obj_container_content_set(part, content));
+return;
+ }
if (item-object == content) return;
 
evas_object_del(item-object);
@@ -1594,7 +1598,14 @@ EOLIAN static Evas_Object *
 _elm_toolbar_item_elm_widget_item_part_content_get(Eo *eo_it EINA_UNUSED, 
Elm_Toolbar_Item_Data *it,
const char *part)
 {
-   if (part  strcmp(part, object)) return NULL;
+   Evas_Object *content;
+
+   if (part  strcmp(part, object)  strcmp(part, elm.swallow.object))
+ {
+eo_do(VIEW(it), content = elm_obj_container_content_get(part));
+if (content) return content;
+else return NULL;
+ }
return it-object;
 }
 

-- 




[EGIT] [core/elementary] master 01/01: multibuttonentry: Delete item size min set when first box resize time.

2015-06-30 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=688813f2cf47cef38d5cb645bde1f77674b5505d

commit 688813f2cf47cef38d5cb645bde1f77674b5505d
Author: woochan lee wc0917@samsung.com
Date:   Wed Jul 1 10:54:46 2015 +0900

multibuttonentry: Delete item size min set when first box resize time.

Summary:
The mbe items has to get own min size to calc each items locate, box size 
etc...
but when first time box resize it will ignored.
It makes item wrong size issue when mbe located at some part of layout in 
runtime.

Reviewers: Hermet, seoz, woohyun

Differential Revision: https://phab.enlightenment.org/D2657
---
 src/lib/elc_multibuttonentry.c | 26 +++---
 1 file changed, 11 insertions(+), 15 deletions(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 4bf2e5b..24cc158 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -926,26 +926,22 @@ _box_resize_cb(void *data,
else if (sd-h_box  h)
  evas_object_smart_callback_call(sd-parent, SIG_CONTRACTED, NULL);
 
-   if (sd-w_box  sd-w_box != w)
+   if (sd-items  sd-w_box != w)
  {
-if (sd-items)
+EINA_LIST_FOREACH (sd-items, l, eo_it)
   {
+ ELM_MULTIBUTTONENTRY_ITEM_DATA_GET(eo_it, it);
 
- EINA_LIST_FOREACH (sd-items, l, eo_it)
-   {
-  ELM_MULTIBUTTONENTRY_ITEM_DATA_GET(eo_it, it);
-
-  elm_layout_sizing_eval(VIEW(it));
-  evas_object_smart_calculate(VIEW(it));
+ elm_layout_sizing_eval(VIEW(it));
+ evas_object_smart_calculate(VIEW(it));
 
-  evas_object_size_hint_min_get(VIEW(it), mnw, mnh);
+ evas_object_size_hint_min_get(VIEW(it), mnw, mnh);
 
- if (mnw  w)
-{
-   mnw = w;
-   evas_object_size_hint_min_set(VIEW(it), mnw, mnh);
-   evas_object_resize(VIEW(it), mnw, mnh);
-}
+ if (mnw  w)
+   {
+  mnw = w;
+  evas_object_size_hint_min_set(VIEW(it), mnw, mnh);
+  evas_object_resize(VIEW(it), mnw, mnh);
}
   }
  }

-- 




[EGIT] [core/elementary] master 01/01: Spinner: Add changed callback call when spinner value set.

2015-05-28 Thread woochan lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=8278dff6a742c391f7c04c3de1033574d818dbb6

commit 8278dff6a742c391f7c04c3de1033574d818dbb6
Author: woochan lee wc0917@samsung.com
Date:   Thu May 28 20:39:32 2015 +0900

Spinner: Add changed callback call when spinner value set.

Summary:
There is a code to compare value is changed.
1256: if (sd-val == val) return;

Even value changed the value changed callback didn't called before.

Reviewers: woohyun, shilpasingh, Hermet

Reviewed By: shilpasingh, Hermet

Differential Revision: https://phab.enlightenment.org/D2560
---
 src/lib/elm_spinner.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index 9624380..b306e87 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -1268,6 +1268,7 @@ _elm_spinner_value_set(Eo *obj, Elm_Spinner_Data *sd, 
double val)
  }
_val_set(obj);
_label_write(obj);
+   evas_object_smart_callback_call(obj, SIG_CHANGED, NULL);
 }
 
 EOLIAN static double

-- 




[EGIT] [core/elementary] elementary-1.14 01/01: Spinner: Add changed callback call when spinner value set.

2015-05-28 Thread woochan lee
hermet pushed a commit to branch elementary-1.14.

http://git.enlightenment.org/core/elementary.git/commit/?id=da24b276958afc7b46b2e3f01d4a5a901da6e251

commit da24b276958afc7b46b2e3f01d4a5a901da6e251
Author: woochan lee wc0917@samsung.com
Date:   Thu May 28 20:39:32 2015 +0900

Spinner: Add changed callback call when spinner value set.

Summary:
There is a code to compare value is changed.
1256: if (sd-val == val) return;

Even value changed the value changed callback didn't called before.

Reviewers: woohyun, shilpasingh, Hermet

Reviewed By: shilpasingh, Hermet

Differential Revision: https://phab.enlightenment.org/D2560
---
 src/lib/elm_spinner.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index 2262e77..3c96aeb 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -1266,6 +1266,7 @@ _elm_spinner_value_set(Eo *obj, Elm_Spinner_Data *sd, 
double val)
  }
_val_set(obj);
_label_write(obj);
+   evas_object_smart_callback_call(obj, SIG_CHANGED, NULL);
 }
 
 EOLIAN static double

-- 




[EGIT] [core/elementary] master 01/01: multibuttonentry: Delete unused data in edc.

2015-05-19 Thread Woochan Lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=2ae332bce7e73df4d54a8ee2ee49a3638576f48e

commit 2ae332bce7e73df4d54a8ee2ee49a3638576f48e
Author: Woochan Lee wc0917@samsung.com
Date:   Tue May 19 20:27:19 2015 +0900

multibuttonentry: Delete unused data in edc.

Summary: The closed_height is not using in code.

Reviewers: raster, Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D2535
---
 data/themes/edc/elm/multibuttonentry.edc | 1 -
 1 file changed, 1 deletion(-)

diff --git a/data/themes/edc/elm/multibuttonentry.edc 
b/data/themes/edc/elm/multibuttonentry.edc
index d306231..cd0bb5d 100644
--- a/data/themes/edc/elm/multibuttonentry.edc
+++ b/data/themes/edc/elm/multibuttonentry.edc
@@ -1,5 +1,4 @@
 group { name: elm/multibuttonentry/base/default;
-   data.item: closed_height 0;
parts {
   part { name: box.swallow; type: SWALLOW;
  description { state: default 0.0;

-- 




[EGIT] [core/elementary] master 01/01: test_naviframe_complex.c: naviframe prev button auto pushed set as false.

2015-04-24 Thread Woochan Lee
hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=ab83df3467817a87c29bc077f0a41bef15749161

commit ab83df3467817a87c29bc077f0a41bef15749161
Author: Woochan Lee wc0917@samsung.com
Date:   Fri Apr 24 16:22:07 2015 +0900

test_naviframe_complex.c: naviframe prev button auto pushed set as false.

Summary:
There is a invisible prev button. but it can get a focus and delete the 
current naviframe item.
Its not intend to added here i think, so i add a function that not add prev 
button automatically.

Test Plan:
Run elementary_test - Naviframe Complex
Move focus use arrow key button and input enter key on prev button.
Click the View list, check the ERR msgs.

Reviewers: Jaehyun, Hermet

Reviewed By: Hermet

Differential Revision: https://phab.enlightenment.org/D2420
---
 src/bin/test_naviframe_complex.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/test_naviframe_complex.c b/src/bin/test_naviframe_complex.c
index 63678bc..63539c7 100644
--- a/src/bin/test_naviframe_complex.c
+++ b/src/bin/test_naviframe_complex.c
@@ -334,6 +334,7 @@ test_naviframe_complex(void *data EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, voi
nf = elm_naviframe_add(win);
evas_object_size_hint_weight_set(nf, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(nf, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   elm_naviframe_prev_btn_auto_pushed_set(nf, EINA_FALSE);
elm_box_pack_end(box, nf);
evas_object_show(nf);
 

--