summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>2012-06-01 10:14:54 +0000
committerDaniel Willmann <d.willmann@samsung.com>2013-02-15 14:26:40 +0000
commit17be32478bed9df9313ca8a072520b9807a0b382 (patch)
treee1c0bd63ad17158a9974e9d6ae728a04294c71e1
parent61c4d2deb20002c09c19556dee99eb4fc857daeb (diff)
rollup backport of this week's bugfixes
SVN revision: 71618
-rw-r--r--ChangeLog12
-rw-r--r--Makefile.am3
-rw-r--r--data/themes/widgets/genlist.edc273
-rw-r--r--src/lib/elm_config.c2
-rw-r--r--src/lib/elm_genlist.c22
5 files changed, 132 insertions, 180 deletions
diff --git a/ChangeLog b/ChangeLog
index df8b07d3d..d43ae5fbd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -48,8 +48,20 @@
48 48
49 * Fix sizing calc error in list item homogenizing 49 * Fix sizing calc error in list item homogenizing
50 50
512012-05-29 Mike Blumenkrantz
52
53 * Collapsing tree items in genlist now animate properly
54
552012-05-30 Mike Blumenkrantz
56
57 * Fix even/odd signals for genlist items
58
512012-05-31 WooHyun Jung 592012-05-31 WooHyun Jung
52 60
53 * child_can_focus should be EINA_FALSE only when all children in the object 61 * child_can_focus should be EINA_FALSE only when all children in the object
54 tree are not focusable. Before this fix, it was EINA_FALSE when all sub 62 tree are not focusable. Before this fix, it was EINA_FALSE when all sub
55 objects were not focusable. (i.e. didn't check whole object tree) 63 objects were not focusable. (i.e. didn't check whole object tree)
64
652012-06-01 Mike Blumenkrantz
66
67 * Re-setting the current mirrored mode state no longer causes a full recalc
diff --git a/Makefile.am b/Makefile.am
index 46d2871a1..927cd39a5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -13,8 +13,9 @@ ABOUT-NLS \
13Makefile.in \ 13Makefile.in \
14aclocal.m4 \ 14aclocal.m4 \
15config.guess \ 15config.guess \
16elementary_config.h.in \ 16elementary_config.h.in* \
17config.sub \ 17config.sub \
18config.rpath \
18configure \ 19configure \
19depcomp \ 20depcomp \
20install-sh \ 21install-sh \
diff --git a/data/themes/widgets/genlist.edc b/data/themes/widgets/genlist.edc
index a831d9f32..89b4490d2 100644
--- a/data/themes/widgets/genlist.edc
+++ b/data/themes/widgets/genlist.edc
@@ -9610,6 +9610,104 @@ group { name: "elm/genlist/tree/tree_effect/default";
9610 data.item: "texts" "elm.text"; 9610 data.item: "texts" "elm.text";
9611 data.item: "contents" "elm.swallow.icon elm.swallow.end"; 9611 data.item: "contents" "elm.swallow.icon elm.swallow.end";
9612 data.item: "treesize" "20"; 9612 data.item: "treesize" "20";
9613 broadcast_signal: 1;
9614 parts {
9615 alias: "elm.swallow.pad" "group:elm.swallow.pad";
9616 alias: "elm.swallow.icon" "group:elm.swallow.icon";
9617 alias: "elm.swallow.end" "group:elm.swallow.end";
9618 alias: "elm.text" "group:elm.text";
9619 part { name: "point";
9620 type: RECT;
9621 scale: 1;
9622 description {
9623 state: "default" 0.0;
9624 color: 0 0 0 0;
9625 rel1 { relative: 0.0 0.0; }
9626 rel2 { relative: 1.0 0.0; }
9627 }
9628 }
9629 part {
9630 name: "event";
9631 type: RECT;
9632 repeat_events: 1;
9633 description {
9634 state: "default" 0.0;
9635 color: 0 0 0 0;
9636 }
9637 }
9638 part { name: "group";
9639 type: GROUP;
9640 source: "elm/genlist/tree/effect_parts/default";
9641 repeat_events: 1;
9642 description {
9643 min: 16 28;
9644 state: "default" 0.0;
9645 }
9646 GENLIST_PART_MAP_START(-90.0, 0, 0)
9647 GENLIST_PART_MAP_FINISH(0, 0, 0)
9648 }
9649 }
9650 programs {
9651 program {
9652 name: "rotaion_transition";
9653 signal: "flip_item";
9654 action: STATE_SET "map_transition" 0.0;
9655 after: "rotation";
9656 target: "group";
9657 }
9658 program {
9659 name: "rotation";
9660 action: STATE_SET "map_rotate" 0.0;
9661 transition: LINEAR 0.2;
9662 after: "rotation_end";
9663 target: "group";
9664 }
9665 program {
9666 name: "rotation_end";
9667 action: STATE_SET "default" 0.0;
9668 target: "group";
9669 }
9670 program {
9671 name: "rotation_transition2";
9672 signal: "elm,state,contract_flip";
9673 action: STATE_SET "map_rotate" 0.0;
9674 after: "rotation2";
9675 target: "group";
9676 }
9677 program {
9678 name: "rotation2";
9679 action: STATE_SET "map_transition" 0.0;
9680 transition: LINEAR 0.5;
9681 after: "rotation3";
9682 target: "group";
9683 }
9684 program {
9685 name: "rotation3";
9686 action: STATE_SET "hide" 0.0;
9687 target: "group";
9688 }
9689 program {
9690 name: "show";
9691 signal: "elm,state,show";
9692 action: STATE_SET "default" 0.0;
9693 target: "group";
9694 }
9695 program {
9696 name: "hide";
9697 signal: "elm,state,hide";
9698 action: STATE_SET "hide" 0.0;
9699 target: "group";
9700 }
9701 program {
9702 name: "expand";
9703 signal: "mouse,up,1";
9704 source: "group:arrow";
9705 action: SIGNAL_EMIT "elm,action,expand,toggle" "elm";
9706 }
9707 }
9708}
9709
9710group { name: "elm/genlist/tree/effect_parts/default";
9613 images { 9711 images {
9614 image: "bt_sm_base1.png" COMP; 9712 image: "bt_sm_base1.png" COMP;
9615 image: "bt_sm_shine.png" COMP; 9713 image: "bt_sm_shine.png" COMP;
@@ -9622,25 +9720,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9622 image: "icon_arrow_down.png" COMP; 9720 image: "icon_arrow_down.png" COMP;
9623 } 9721 }
9624 parts { 9722 parts {
9625 part { name: "point";
9626 type: RECT;
9627 scale: 1;
9628 description {
9629 state: "default" 0.0;
9630 color: 0 0 0 0;
9631 rel1 { relative: 0.0 0.0; }
9632 rel2 { relative: 1.0 0.0; }
9633 }
9634 }
9635 part {
9636 name: "event";
9637 type: RECT;
9638 repeat_events: 1;
9639 description {
9640 state: "default" 0.0;
9641 color: 0 0 0 0;
9642 }
9643 }
9644 part { name: "reorder_bg"; 9723 part { name: "reorder_bg";
9645 mouse_events: 0; 9724 mouse_events: 0;
9646 description { state: "default" 0.0; 9725 description { state: "default" 0.0;
@@ -9693,8 +9772,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9693 inherit: "default" 0.0; 9772 inherit: "default" 0.0;
9694 visible: 0; 9773 visible: 0;
9695 } 9774 }
9696 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9697 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9698 } 9775 }
9699 part { 9776 part {
9700 name: "base"; 9777 name: "base";
@@ -9712,8 +9789,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9712 inherit: "default" 0.0; 9789 inherit: "default" 0.0;
9713 image.normal: "ilist_2.png"; 9790 image.normal: "ilist_2.png";
9714 } 9791 }
9715 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9716 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9717 } 9792 }
9718 part { name: "bg"; 9793 part { name: "bg";
9719 clip_to: "disclip"; 9794 clip_to: "disclip";
@@ -9748,8 +9823,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9748 offset: 1 1; 9823 offset: 1 1;
9749 } 9824 }
9750 } 9825 }
9751 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9752 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9753 } 9826 }
9754 part { name: "elm.swallow.pad"; 9827 part { name: "elm.swallow.pad";
9755 type: SWALLOW; 9828 type: SWALLOW;
@@ -9765,8 +9838,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9765 offset: 4 -5; 9838 offset: 4 -5;
9766 } 9839 }
9767 } 9840 }
9768 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9769 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9770 } 9841 }
9771 part { name: "arrow"; 9842 part { name: "arrow";
9772 clip_to: "disclip"; 9843 clip_to: "disclip";
@@ -9799,8 +9870,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9799 inherit: "default" 0.0; 9870 inherit: "default" 0.0;
9800 image.normal: "icon_arrow_down.png"; 9871 image.normal: "icon_arrow_down.png";
9801 } 9872 }
9802 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9803 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9804 } 9873 }
9805 part { name: "elm.swallow.icon"; 9874 part { name: "elm.swallow.icon";
9806 clip_to: "disclip"; 9875 clip_to: "disclip";
@@ -9819,8 +9888,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9819 offset: 4 -5; 9888 offset: 4 -5;
9820 } 9889 }
9821 } 9890 }
9822 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9823 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9824 } 9891 }
9825 part { name: "elm.swallow.end"; 9892 part { name: "elm.swallow.end";
9826 clip_to: "disclip"; 9893 clip_to: "disclip";
@@ -9839,8 +9906,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9839 offset: -5 -5; 9906 offset: -5 -5;
9840 } 9907 }
9841 } 9908 }
9842 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9843 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9844 } 9909 }
9845 part { name: "elm.text"; 9910 part { name: "elm.text";
9846 clip_to: "disclip"; 9911 clip_to: "disclip";
@@ -9875,8 +9940,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9875 color: 224 224 224 255; 9940 color: 224 224 224 255;
9876 color3: 0 0 0 64; 9941 color3: 0 0 0 64;
9877 } 9942 }
9878 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9879 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9880 } 9943 }
9881 part { name: "fg1"; 9944 part { name: "fg1";
9882 clip_to: "disclip"; 9945 clip_to: "disclip";
@@ -9897,8 +9960,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9897 visible: 1; 9960 visible: 1;
9898 color: 255 255 255 255; 9961 color: 255 255 255 255;
9899 } 9962 }
9900 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9901 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9902 } 9963 }
9903 part { name: "fg2"; 9964 part { name: "fg2";
9904 clip_to: "disclip"; 9965 clip_to: "disclip";
@@ -9918,8 +9979,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
9918 visible: 1; 9979 visible: 1;
9919 color: 255 255 255 255; 9980 color: 255 255 255 255;
9920 } 9981 }
9921 GENLIST_PART_MAP_START(-90.0, 0.0, 0.0)
9922 GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0)
9923 } 9982 }
9924 part { name: "disclip"; 9983 part { name: "disclip";
9925 type: RECT; 9984 type: RECT;
@@ -10007,12 +10066,6 @@ group { name: "elm/genlist/tree/tree_effect/default";
10007 transition: DECELERATE 0.5; 10066 transition: DECELERATE 0.5;
10008 } 10067 }
10009 program { 10068 program {
10010 name: "expand";
10011 signal: "mouse,up,1";
10012 source: "arrow";
10013 action: SIGNAL_EMIT "elm,action,expand,toggle" "elm";
10014 }
10015 program {
10016 name: "go_expanded"; 10069 name: "go_expanded";
10017 signal: "elm,state,expanded"; 10070 signal: "elm,state,expanded";
10018 source: "elm"; 10071 source: "elm";
@@ -10058,135 +10111,5 @@ group { name: "elm/genlist/tree/tree_effect/default";
10058 } 10111 }
10059 } 10112 }
10060 } 10113 }
10061 program {
10062 name: "rotaion_transition";
10063 signal: "flip_item";
10064 action: STATE_SET "map_transition" 0.0;
10065 after: "rotation";
10066 target: "reorder_bg";
10067 target: "base_sh";
10068 target: "base";
10069 target: "bg";
10070 target: "arrow";
10071 target: "elm.swallow.pad";
10072 target: "elm.swallow.icon";
10073 target: "elm.swallow.end";
10074 target: "elm.text";
10075 target: "fg1";
10076 target: "fg2";
10077 }
10078 program {
10079 name: "rotation";
10080 action: STATE_SET "map_rotate" 0.0;
10081 transition: LINEAR 0.2;
10082 after: "rotation_end";
10083 target: "reorder_bg";
10084 target: "base_sh";
10085 target: "base";
10086 target: "bg";
10087 target: "arrow";
10088 target: "elm.swallow.pad";
10089 target: "elm.swallow.icon";
10090 target: "elm.swallow.end";
10091 target: "elm.text";
10092 target: "fg1";
10093 target: "fg2";
10094 }
10095 program {
10096 name: "rotation_end";
10097 action: STATE_SET "default" 0.0;
10098 target: "reorder_bg";
10099 target: "base_sh";
10100 target: "base";
10101 target: "bg";
10102 target: "arrow";
10103 target: "elm.swallow.pad";
10104 target: "elm.swallow.icon";
10105 target: "elm.swallow.end";
10106 target: "elm.text";
10107 target: "fg1";
10108 target: "fg2";
10109 }
10110 program {
10111 name: "rotation_transition2";
10112 signal: "elm,state,contract_flip";
10113 action: STATE_SET "map_rotate" 0.0;
10114 after: "rotation2";
10115 target: "reorder_bg";
10116 target: "base_sh";
10117 target: "base";
10118 target: "bg";
10119 target: "arrow";
10120 target: "elm.swallow.pad";
10121 target: "elm.swallow.icon";
10122 target: "elm.swallow.end";
10123 target: "elm.text";
10124 target: "fg1";
10125 target: "fg2";
10126 }
10127 program {
10128 name: "rotation2";
10129 action: STATE_SET "map_transition" 0.0;
10130 transition: LINEAR 0.5;
10131 after: "rotation3";
10132 target: "reorder_bg";
10133 target: "base_sh";
10134 target: "base";
10135 target: "bg";
10136 target: "arrow";
10137 target: "elm.swallow.pad";
10138 target: "elm.swallow.icon";
10139 target: "elm.swallow.end";
10140 target: "elm.text";
10141 target: "fg1";
10142 target: "fg2";
10143 }
10144 program {
10145 name: "rotation3";
10146 action: STATE_SET "hide" 0.0;
10147 target: "reorder_bg";
10148 target: "base_sh";
10149 target: "base";
10150 target: "bg";
10151 target: "arrow";
10152 target: "elm.swallow.pad";
10153 target: "elm.swallow.icon";
10154 target: "elm.swallow.end";
10155 target: "elm.text";
10156 target: "fg1";
10157 target: "fg2";
10158 }
10159 program {
10160 name: "show";
10161 signal: "elm,state,show";
10162 action: STATE_SET "default" 0.0;
10163 target: "reorder_bg";
10164 target: "base_sh";
10165 target: "base";
10166 target: "bg";
10167 target: "arrow";
10168 target: "elm.swallow.pad";
10169 target: "elm.swallow.icon";
10170 target: "elm.swallow.end";
10171 target: "elm.text";
10172 target: "fg1";
10173 target: "fg2";
10174 }
10175 program {
10176 name: "hide";
10177 signal: "elm,state,hide";
10178 action: STATE_SET "hide" 0.0;
10179 target: "reorder_bg";
10180 target: "base_sh";
10181 target: "base";
10182 target: "bg";
10183 target: "arrow";
10184 target: "elm.swallow.pad";
10185 target: "elm.swallow.icon";
10186 target: "elm.swallow.end";
10187 target: "elm.text";
10188 target: "fg1";
10189 target: "fg2";
10190 }
10191 } 10114 }
10192} 10115}
diff --git a/src/lib/elm_config.c b/src/lib/elm_config.c
index 0c953bec4..57ab456c7 100644
--- a/src/lib/elm_config.c
+++ b/src/lib/elm_config.c
@@ -1537,6 +1537,8 @@ elm_config_mirrored_get(void)
1537EAPI void 1537EAPI void
1538elm_config_mirrored_set(Eina_Bool mirrored) 1538elm_config_mirrored_set(Eina_Bool mirrored)
1539{ 1539{
1540 mirrored = !!mirrored;
1541 if (_elm_config->is_mirrored == mirrored) return;
1540 _elm_config->is_mirrored = mirrored; 1542 _elm_config->is_mirrored = mirrored;
1541 _elm_rescale(); 1543 _elm_rescale();
1542} 1544}
diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index ca3ef5c02..18670e0a5 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -2045,6 +2045,20 @@ _item_state_realize(Elm_Gen_Item *it,
2045} 2045}
2046 2046
2047static void 2047static void
2048_item_order_update(const Eina_Inlist *l, int start)
2049{
2050 Elm_Gen_Item *it, *it2;
2051
2052 for (it = ELM_GEN_ITEM_FROM_INLIST(l); l; l = l->next, it = ELM_GEN_ITEM_FROM_INLIST(l))
2053 {
2054 it->item->order_num_in = start++;
2055 _elm_genlist_item_odd_even_update(it);
2056 it2 = ELM_GEN_ITEM_FROM_INLIST(l->next);
2057 if (it2 && (it->item->order_num_in != it2->item->order_num_in)) return;
2058 }
2059}
2060
2061static void
2048_item_realize(Elm_Gen_Item *it, 2062_item_realize(Elm_Gen_Item *it,
2049 int in, 2063 int in,
2050 Eina_Bool calc) 2064 Eina_Bool calc)
@@ -2060,8 +2074,7 @@ _item_realize(Elm_Gen_Item *it,
2060 { 2074 {
2061 if (it->item->order_num_in != in) 2075 if (it->item->order_num_in != in)
2062 { 2076 {
2063 it->item->order_num_in = in; 2077 _item_order_update(EINA_INLIST_GET(it), in);
2064 _elm_genlist_item_odd_even_update(it);
2065 _elm_genlist_item_state_update(it, NULL); 2078 _elm_genlist_item_state_update(it, NULL);
2066 _elm_genlist_item_index_update(it); 2079 _elm_genlist_item_index_update(it);
2067 } 2080 }
@@ -2114,7 +2127,7 @@ _item_realize(Elm_Gen_Item *it,
2114 elm_widget_mirrored_get(WIDGET(it))); 2127 elm_widget_mirrored_get(WIDGET(it)));
2115 } 2128 }
2116 2129
2117 _elm_genlist_item_odd_even_update(it); 2130 _item_order_update(EINA_INLIST_GET(it), in);
2118 2131
2119 treesize = edje_object_data_get(VIEW(it), "treesize"); 2132 treesize = edje_object_data_get(VIEW(it), "treesize");
2120 if (treesize) tsize = atoi(treesize); 2133 if (treesize) tsize = atoi(treesize);
@@ -5391,6 +5404,7 @@ elm_genlist_block_count_set(Evas_Object *obj,
5391 ELM_CHECK_WIDTYPE(obj, widtype); 5404 ELM_CHECK_WIDTYPE(obj, widtype);
5392 Widget_Data *wd = elm_widget_data_get(obj); 5405 Widget_Data *wd = elm_widget_data_get(obj);
5393 if (!wd) return; 5406 if (!wd) return;
5407 if (count < 1) return;
5394 wd->max_items_per_block = count; 5408 wd->max_items_per_block = count;
5395 wd->item_cache_max = wd->max_items_per_block * 2; 5409 wd->item_cache_max = wd->max_items_per_block * 2;
5396 _item_cache_clean(wd); 5410 _item_cache_clean(wd);
@@ -6140,7 +6154,7 @@ _tree_effect_animator_cb(void *data)
6140 } 6154 }
6141 else if (wd->move_effect_mode == ELM_GENLIST_TREE_EFFECT_CONTRACT) 6155 else if (wd->move_effect_mode == ELM_GENLIST_TREE_EFFECT_CONTRACT)
6142 { 6156 {
6143 if (expanded_next_it->item->scrl_y >= expanded_next_it->item->old_scrl_y) //did not calculate next item position 6157 if (expanded_next_it->item->scrl_y > expanded_next_it->item->old_scrl_y) //did not calculate next item position
6144 expanded_next_it->item->old_scrl_y = cvy + cvh; 6158 expanded_next_it->item->old_scrl_y = cvy + cvh;
6145 6159
6146 if (expanded_next_it->item->old_scrl_y > (cvy + cvh)) 6160 if (expanded_next_it->item->old_scrl_y > (cvy + cvh))