summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2016-07-04 14:59:59 +0900
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2016-07-04 15:01:52 +0900
commite2d7c11665d8d1eae225e4cce5cb5b388fd86aa7 (patch)
tree2fca3d4f64db100f331f4bd0d2dff8f1ddd3825f
parentad3b460e6a0b0c0e954a18bd3228aa1d63443b5e (diff)
edje - reduce memory footprint by rearranging structs and types
this should cut some memory used by edje by using smaller types like shorts instead of ints where we just dont need a full int range and short will do, and re-ordering in memory data soit packs better when accoutning for alignment
-rw-r--r--src/lib/edje/edje_calc.c2
-rw-r--r--src/lib/edje/edje_edit.c18
-rw-r--r--src/lib/edje/edje_load.c15
-rw-r--r--src/lib/edje/edje_private.h243
-rw-r--r--src/lib/edje/edje_program.c4
-rw-r--r--src/lib/edje/edje_smart.c2
-rw-r--r--src/lib/edje/edje_util.c48
7 files changed, 165 insertions, 167 deletions
diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index a2f99d4f33..fe45e1025d 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -868,7 +868,7 @@ _edje_recalc(Edje *ed)
868void 868void
869_edje_recalc_do(Edje *ed) 869_edje_recalc_do(Edje *ed)
870{ 870{
871 unsigned int i; 871 unsigned short i;
872 Eina_Bool need_calc; 872 Eina_Bool need_calc;
873 873
874// XXX: dont need this with current smart calc infra. remove me later 874// XXX: dont need this with current smart calc infra. remove me later
diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c
index 6a903bb9ff..8282700bbb 100644
--- a/src/lib/edje/edje_edit.c
+++ b/src/lib/edje/edje_edit.c
@@ -793,7 +793,7 @@ _edje_fix_parts_id(Edje *ed)
793 */ 793 */
794 unsigned int i; 794 unsigned int i;
795 int correct_id; 795 int correct_id;
796 unsigned int count; 796 unsigned short count;
797 797
798 //printf("FIXING PARTS ID \n"); 798 //printf("FIXING PARTS ID \n");
799 799
@@ -816,7 +816,7 @@ _edje_fix_parts_id(Edje *ed)
816 } 816 }
817 817
818 /* If we have removed some parts realloc table_parts */ 818 /* If we have removed some parts realloc table_parts */
819 count = ed->collection->parts_count; 819 count = (unsigned short)ed->collection->parts_count;
820 if (count != ed->table_parts_size) 820 if (count != ed->table_parts_size)
821 { 821 {
822 ed->table_parts = realloc(ed->table_parts, sizeof(Edje_Real_Part *) * count); 822 ed->table_parts = realloc(ed->table_parts, sizeof(Edje_Real_Part *) * count);
@@ -3002,7 +3002,7 @@ EAPI Eina_List *
3002edje_edit_parts_list_get(Evas_Object *obj) 3002edje_edit_parts_list_get(Evas_Object *obj)
3003{ 3003{
3004 Eina_List *parts = NULL; 3004 Eina_List *parts = NULL;
3005 unsigned int i; 3005 unsigned short i;
3006 3006
3007 GET_ED_OR_RETURN(NULL); 3007 GET_ED_OR_RETURN(NULL);
3008 3008
@@ -3069,6 +3069,7 @@ _edje_edit_real_part_add(Evas_Object *obj, const char *name, Edje_Part_Type type
3069 3069
3070 GET_ED_OR_RETURN(EINA_FALSE); 3070 GET_ED_OR_RETURN(EINA_FALSE);
3071 3071
3072 if (ed->table_parts_size == 0xffff) return EINA_FALSE;
3072 //printf("ADD PART: %s [type: %d]\n", name, type); 3073 //printf("ADD PART: %s [type: %d]\n", name, type);
3073 3074
3074 /* Check if part already exists */ 3075 /* Check if part already exists */
@@ -3273,7 +3274,7 @@ edje_edit_part_del(Evas_Object *obj, const char *part)
3273 Edje_Part *ep; 3274 Edje_Part *ep;
3274 unsigned int k; 3275 unsigned int k;
3275 unsigned int id; 3276 unsigned int id;
3276 unsigned int i; 3277 unsigned short i;
3277 3278
3278 GET_EED_OR_RETURN(EINA_FALSE); 3279 GET_EED_OR_RETURN(EINA_FALSE);
3279 GET_RP_OR_RETURN(EINA_FALSE); 3280 GET_RP_OR_RETURN(EINA_FALSE);
@@ -3484,7 +3485,7 @@ edje_edit_part_above_get(Evas_Object *obj, const char *part)
3484 3485
3485 GET_RP_OR_RETURN(0); 3486 GET_RP_OR_RETURN(0);
3486 3487
3487 if ((unsigned int)rp->part->id >= ed->table_parts_size - 1) return 0; 3488 if ((unsigned short)rp->part->id >= ed->table_parts_size - 1) return 0;
3488 3489
3489 next = ed->table_parts[(rp->part->id + 1) % ed->table_parts_size]; 3490 next = ed->table_parts[(rp->part->id + 1) % ed->table_parts_size];
3490 3491
@@ -3575,7 +3576,7 @@ edje_edit_part_restack_above(Evas_Object *obj, const char *part)
3575 3576
3576 //printf("RESTACK PART: %s ABOVE\n", part); 3577 //printf("RESTACK PART: %s ABOVE\n", part);
3577 3578
3578 if ((unsigned int)rp->part->id >= ed->table_parts_size - 1) return EINA_FALSE; 3579 if ((unsigned short)rp->part->id >= ed->table_parts_size - 1) return EINA_FALSE;
3579 3580
3580 group = ed->collection; 3581 group = ed->collection;
3581 3582
@@ -8284,7 +8285,7 @@ edje_edit_state_text_set(Evas_Object *obj, const char *part, const char *state,
8284{ 8285{
8285 Edje_Part_Description_Text *txt; 8286 Edje_Part_Description_Text *txt;
8286 Edje_Real_Part *real; 8287 Edje_Real_Part *real;
8287 unsigned int i; 8288 unsigned short i;
8288 8289
8289 if (!text) 8290 if (!text)
8290 return EINA_FALSE; 8291 return EINA_FALSE;
@@ -12398,7 +12399,8 @@ edje_edit_source_generate(Evas_Object *obj)
12398 Edje_Part_Description_Common *part_desc; 12399 Edje_Part_Description_Common *part_desc;
12399 Edje_Part_Description_Image *part_desc_image; 12400 Edje_Part_Description_Image *part_desc_image;
12400 Edje_Part_Description_Text *part_desc_text; 12401 Edje_Part_Description_Text *part_desc_text;
12401 unsigned int i, j; 12402 unsigned short i;
12403 unsigned int j;
12402 const char *entry; 12404 const char *entry;
12403 const char *str; 12405 const char *str;
12404 Eina_Strbuf *buf = NULL; 12406 Eina_Strbuf *buf = NULL;
diff --git a/src/lib/edje/edje_load.c b/src/lib/edje/edje_load.c
index facc9ae930..661f871378 100644
--- a/src/lib/edje/edje_load.c
+++ b/src/lib/edje/edje_load.c
@@ -560,6 +560,12 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch
560 560
561 if (ed->collection) 561 if (ed->collection)
562 { 562 {
563 if (ed->collection->parts_count > 0xffff)
564 {
565 ed->load_error = EDJE_LOAD_ERROR_CORRUPT_FILE;
566 _edje_file_del(ed);
567 return 0;
568 }
563 eina_array_step_set(&parts, sizeof (Eina_Array), 8); 569 eina_array_step_set(&parts, sizeof (Eina_Array), 8);
564 570
565 if (ed->collection->prop.orientation != EDJE_ORIENTATION_AUTO) 571 if (ed->collection->prop.orientation != EDJE_ORIENTATION_AUTO)
@@ -1428,10 +1434,11 @@ _edje_file_add(Edje *ed, const Eina_File *f)
1428 } 1434 }
1429 else 1435 else
1430 { 1436 {
1431 ed->file = _edje_cache_file_coll_open(f, ed->group, 1437 int err = 0;
1432 &(ed->load_error), 1438
1433 &(ed->collection), 1439 ed->file = _edje_cache_file_coll_open(f, ed->group, &(err),
1434 ed); 1440 &(ed->collection), ed);
1441 ed->load_error = (unsigned short)err;
1435 } 1442 }
1436 1443
1437 if (!ed->collection) 1444 if (!ed->collection)
diff --git a/src/lib/edje/edje_private.h b/src/lib/edje/edje_private.h
index ab8e9741f1..5aff29f0a6 100644
--- a/src/lib/edje/edje_private.h
+++ b/src/lib/edje/edje_private.h
@@ -537,7 +537,6 @@ struct _AABB {
537struct _Edje_File 537struct _Edje_File
538{ 538{
539 const char *path; 539 const char *path;
540 time_t mtime;
541 540
542 Edje_External_Directory *external_dir; 541 Edje_External_Directory *external_dir;
543 Edje_Image_Directory *image_dir; 542 Edje_Image_Directory *image_dir;
@@ -561,12 +560,7 @@ struct _Edje_File
561 Eina_List *size_classes; 560 Eina_List *size_classes;
562 Eina_Hash *size_hash; 561 Eina_Hash *size_hash;
563 562
564 int references;
565 const char *compiler; 563 const char *compiler;
566 int version;
567 int minor;
568 int feature_ver;
569 FLOAT_T base_scale;
570 564
571 Eina_Hash *data; 565 Eina_Hash *data;
572 Eina_Hash *fonts; 566 Eina_Hash *fonts;
@@ -578,12 +572,21 @@ struct _Edje_File
578 572
579 Eet_File *ef; 573 Eet_File *ef;
580 Eina_File *f; 574 Eina_File *f;
575
576 time_t mtime;
577
578 int references;
579 int version;
580 int minor;
581 int feature_ver;
582 FLOAT_T base_scale;
583
581 char fid[8+8+8+2]; 584 char fid[8+8+8+2];
582 585
583 unsigned char free_strings : 1; 586 unsigned char free_strings : 1;
584 unsigned char allocated_strings : 1; 587 unsigned char allocated_strings : 1;
585 unsigned char dangling : 1; 588 unsigned char dangling : 1;
586 unsigned char warning : 1; 589 unsigned char warning : 1;
587}; 590};
588 591
589struct _Edje_Style 592struct _Edje_Style
@@ -599,9 +602,9 @@ struct _Edje_Style_Tag
599{ 602{
600 const char *key; 603 const char *key;
601 const char *value; 604 const char *value;
602 const char *font; 605 const char *font;
603 double font_size; 606 const char *text_class;
604 const char *text_class; 607 double font_size;
605}; 608};
606 609
607/*----------*/ 610/*----------*/
@@ -636,12 +639,11 @@ struct _Edje_External_Directory_Entry
636struct _Edje_Image_Directory 639struct _Edje_Image_Directory
637{ 640{
638 Edje_Image_Directory_Entry *entries; /* an array of Edje_Image_Directory_Entry */ 641 Edje_Image_Directory_Entry *entries; /* an array of Edje_Image_Directory_Entry */
639 unsigned int entries_count;
640
641 Edje_Image_Directory_Set *sets; /* an array of Edje_Image_Directory_Set */ 642 Edje_Image_Directory_Set *sets; /* an array of Edje_Image_Directory_Set */
642 unsigned int sets_count;
643
644 Edje_Vector_Directory_Entry *vectors; /* an array of Edje_Image_Directory_Entry */ 643 Edje_Vector_Directory_Entry *vectors; /* an array of Edje_Image_Directory_Entry */
644
645 unsigned int entries_count;
646 unsigned int sets_count;
645 unsigned int vectors_count; 647 unsigned int vectors_count;
646}; 648};
647 649
@@ -720,9 +722,9 @@ struct _Edje_Sound_Directory
720{ 722{
721 723
722 Edje_Sound_Sample *samples; /* an array of Edje_Sound_Sample entries */ 724 Edje_Sound_Sample *samples; /* an array of Edje_Sound_Sample entries */
723 unsigned int samples_count;
724
725 Edje_Sound_Tone *tones; /* an array of Edje_Sound_Tone entries */ 725 Edje_Sound_Tone *tones; /* an array of Edje_Sound_Tone entries */
726
727 unsigned int samples_count;
726 unsigned int tones_count; 728 unsigned int tones_count;
727}; 729};
728 730
@@ -775,17 +777,17 @@ struct _Edje_Color_Tree_Node
775struct _Edje_Program /* a conditional program to be run */ 777struct _Edje_Program /* a conditional program to be run */
776{ 778{
777 int id; /* id of program */ 779 int id; /* id of program */
780 int source_3d_id; /* id of real 3D part */
781
778 const char *name; /* name of the action */ 782 const char *name; /* name of the action */
779 783
780 const char *signal; /* if signal emission name matches the glob here... */ 784 const char *signal; /* if signal emission name matches the glob here... */
781 const char *source; /* if part that emitted this (name) matches this glob */ 785 const char *source; /* if part that emitted this (name) matches this glob */
782 int source_3d_id; /* id of real 3D part */
783 const char *sample_name; 786 const char *sample_name;
784 const char *tone_name; 787 const char *tone_name;
785 double duration;
786 double speed;
787 const char *vibration_name; 788 const char *vibration_name;
788 int vibration_repeat; 789 double duration;
790 double speed;
789 791
790 struct { 792 struct {
791 const char *part; 793 const char *part;
@@ -797,24 +799,12 @@ struct _Edje_Program /* a conditional program to be run */
797 double range; 799 double range;
798 } in; 800 } in;
799 801
800 int action; /* type - set state, stop action, set drag pos etc. */
801 const char *state; /* what state of alternates to apply, NULL = default */ 802 const char *state; /* what state of alternates to apply, NULL = default */
802 const char *state2; /* what other state to use - for signal emit action */ 803 const char *state2; /* what other state to use - for signal emit action */
803 double value; /* value of state to apply (if multiple names match) */ 804 double value; /* value of state to apply (if multiple names match) */
804 double value2; /* other value for drag actions */ 805 double value2; /* other value for drag actions */
805 806
806 struct {
807 int mode; /* how to tween - linear, sinusoidal etc. */
808 FLOAT_T time; /* time to graduate between current and new state */
809 FLOAT_T v1; /* other value for drag actions */
810 FLOAT_T v2; /* other value for drag actions */
811 FLOAT_T v3; /* other value for drag actions */
812 FLOAT_T v4; /* other value for drag actions */
813 Eina_Bool use_duration_factor; /* use duration factor or not */
814 } tween;
815
816 Eina_List *targets; /* list of target parts to apply the state to */ 807 Eina_List *targets; /* list of target parts to apply the state to */
817
818 Eina_List *after; /* list of actions to run at the end of this, for looping */ 808 Eina_List *after; /* list of actions to run at the end of this, for looping */
819 809
820 struct { 810 struct {
@@ -822,12 +812,25 @@ struct _Edje_Program /* a conditional program to be run */
822 const char *description; 812 const char *description;
823 } api; 813 } api;
824 814
815 int vibration_repeat;
816 int action; /* type - set state, stop action, set drag pos etc. */
817
825 /* used for PARAM_COPY (param names in state and state2 above!) */ 818 /* used for PARAM_COPY (param names in state and state2 above!) */
826 struct { 819 struct {
827 int src; /* part where parameter is being retrieved */ 820 int src; /* part where parameter is being retrieved */
828 int dst; /* part where parameter is being stored */ 821 int dst; /* part where parameter is being stored */
829 } param; 822 } param;
830 823
824 struct {
825 int mode; /* how to tween - linear, sinusoidal etc. */
826 FLOAT_T time; /* time to graduate between current and new state */
827 FLOAT_T v1; /* other value for drag actions */
828 FLOAT_T v2; /* other value for drag actions */
829 FLOAT_T v3; /* other value for drag actions */
830 FLOAT_T v4; /* other value for drag actions */
831 Eina_Bool use_duration_factor; /* use duration factor or not */
832 } tween;
833
831#ifdef HAVE_EPHYSICS 834#ifdef HAVE_EPHYSICS
832 /* used for actions related to physics, as physics impulses and forces */ 835 /* used for actions related to physics, as physics impulses and forces */
833 struct { 836 struct {
@@ -880,7 +883,7 @@ struct _Edje_Limit
880struct _Edje_Part_Collection_Directory_Entry 883struct _Edje_Part_Collection_Directory_Entry
881{ 884{
882 const char *entry; /* the nominal name of the part collection */ 885 const char *entry; /* the nominal name of the part collection */
883 int id; /* the id of this named part collection */ 886 Edje_Part_Collection *ref;
884 887
885 struct 888 struct
886 { 889 {
@@ -888,6 +891,8 @@ struct _Edje_Part_Collection_Directory_Entry
888 int part; 891 int part;
889 } count; 892 } count;
890 893
894 int id; /* the id of this named part collection */
895
891 struct 896 struct
892 { 897 {
893 PART_TYPE_FIELDS(Eina_Mempool *) 898 PART_TYPE_FIELDS(Eina_Mempool *)
@@ -899,7 +904,6 @@ struct _Edje_Part_Collection_Directory_Entry
899 PART_TYPE_FIELDS(Eina_Mempool *) 904 PART_TYPE_FIELDS(Eina_Mempool *)
900 } mp_rtl; /* For Right To Left interface */ 905 } mp_rtl; /* For Right To Left interface */
901 906
902 Edje_Part_Collection *ref;
903 Eina_Bool group_alias; 907 Eina_Bool group_alias;
904}; 908};
905 909
@@ -909,10 +913,10 @@ struct _Edje_Part_Collection_Directory_Entry
909 913
910struct _Edje_Pack_Element 914struct _Edje_Pack_Element
911{ 915{
912 unsigned char type; /* only GROUP supported for now */
913 Edje_Real_Part *parent; /* pointer to the table/box that hold it, set at runtime */ 916 Edje_Real_Part *parent; /* pointer to the table/box that hold it, set at runtime */
914 const char *name; /* if != NULL, will be set with evas_object_name_set */ 917 const char *name; /* if != NULL, will be set with evas_object_name_set */
915 const char *source; /* group name to use as source for this element */ 918 const char *source; /* group name to use as source for this element */
919 const char *options; /* extra options for custom objects */
916 Edje_Size min, prefer, max; 920 Edje_Size min, prefer, max;
917 struct { 921 struct {
918 int l, r, t, b; 922 int l, r, t, b;
@@ -923,16 +927,16 @@ struct _Edje_Pack_Element
923 Edje_Alignment align; 927 Edje_Alignment align;
924 Edje_Alignment weight; 928 Edje_Alignment weight;
925 Edje_Aspect aspect; 929 Edje_Aspect aspect;
926 const char *options; /* extra options for custom objects */
927 /* table specific follows */ 930 /* table specific follows */
928 int col, row; 931 int col, row;
929 unsigned short colspan, rowspan; 932 unsigned short colspan, rowspan;
933 unsigned char type; /* only GROUP supported for now */
930}; 934};
931 935
932struct _Edje_Physics_Face 936struct _Edje_Physics_Face
933{ 937{
934 unsigned char type; /* BOX_FRONT BOX_BACK BOX_RIGHT CYLINDER_BACK ... */
935 const char *source; /* group name to use as source for this element */ 938 const char *source; /* group name to use as source for this element */
939 unsigned char type; /* BOX_FRONT BOX_BACK BOX_RIGHT CYLINDER_BACK ... */
936}; 940};
937 941
938typedef enum { 942typedef enum {
@@ -1035,57 +1039,55 @@ struct _Edje_Signal_Callback_Group
1035 1039
1036struct _Edje_Part_Collection 1040struct _Edje_Part_Collection
1037{ 1041{
1042 Edje_Part **parts; /* an array of Edje_Part */
1043 Eina_Hash *data;
1044
1045 Eina_Hash *alias; /* aliasing part */
1046 Eina_Hash *aliased; /* invert match of alias */
1047
1048 Embryo_Program *script; /* all the embryo script code for this group */
1049 const char *part;
1050
1051#ifdef EDJE_PROGRAM_CACHE
1052 struct {
1053 Eina_Hash *no_matches;
1054 Eina_Hash *matches;
1055 } prog_cache;
1056#endif
1057
1038 struct { /* list of Edje_Program */ 1058 struct { /* list of Edje_Program */
1039 Edje_Program **fnmatch; /* complex match with "*?[\" */ 1059 Edje_Program **fnmatch; /* complex match with "*?[\" */
1040 unsigned int fnmatch_count;
1041
1042 Edje_Program **strcmp; /* No special caractere, plain strcmp does the work */ 1060 Edje_Program **strcmp; /* No special caractere, plain strcmp does the work */
1043 unsigned int strcmp_count;
1044
1045 Edje_Program **strncmp; /* Finish by * or ?, plain strncmp does the work */ 1061 Edje_Program **strncmp; /* Finish by * or ?, plain strncmp does the work */
1046 unsigned int strncmp_count;
1047
1048 Edje_Program **strrncmp; /* Start with * or ?, reverse strncmp will do the job */ 1062 Edje_Program **strrncmp; /* Start with * or ?, reverse strncmp will do the job */
1049 unsigned int strrncmp_count;
1050
1051 Edje_Program **nocmp; /* Empty signal/source that will never match */ 1063 Edje_Program **nocmp; /* Empty signal/source that will never match */
1064
1065 unsigned int fnmatch_count;
1066 unsigned int strcmp_count;
1067 unsigned int strncmp_count;
1068 unsigned int strrncmp_count;
1052 unsigned int nocmp_count; 1069 unsigned int nocmp_count;
1053 } programs; 1070 } programs;
1054 1071
1055 struct { /* list of limit that need to be monitored */ 1072 struct { /* list of limit that need to be monitored */
1056 Edje_Limit **vertical; 1073 Edje_Limit **vertical;
1057 unsigned int vertical_count;
1058
1059 Edje_Limit **horizontal; 1074 Edje_Limit **horizontal;
1060 unsigned int horizontal_count;
1061
1062 Edje_Part_Limit *parts; 1075 Edje_Part_Limit *parts;
1076
1077 unsigned int vertical_count;
1078 unsigned int horizontal_count;
1063 unsigned int parts_count; 1079 unsigned int parts_count;
1064 } limits; 1080 } limits;
1065 1081
1066 Edje_Part **parts; /* an array of Edje_Part */
1067 unsigned int parts_count; 1082 unsigned int parts_count;
1068 1083 int id; /* the collection id */
1069 Eina_Hash *data; 1084 int references;
1070
1071 int id; /* the collection id */
1072
1073 Eina_Hash *alias; /* aliasing part */
1074 Eina_Hash *aliased; /* invert match of alias */
1075 1085
1076 struct { 1086 struct {
1077 Edje_Size min, max; 1087 Edje_Size min, max;
1078 unsigned char orientation; 1088 unsigned char orientation;
1079 } prop; 1089 } prop;
1080 1090
1081 int references;
1082
1083#ifdef EDJE_PROGRAM_CACHE
1084 struct {
1085 Eina_Hash *no_matches;
1086 Eina_Hash *matches;
1087 } prog_cache;
1088#endif
1089 1091
1090#ifdef HAVE_EPHYSICS 1092#ifdef HAVE_EPHYSICS
1091 struct { 1093 struct {
@@ -1102,9 +1104,6 @@ struct _Edje_Part_Collection
1102 } physics; 1104 } physics;
1103#endif 1105#endif
1104 1106
1105 Embryo_Program *script; /* all the embryo script code for this group */
1106 const char *part;
1107
1108 /* *** generated at runtime *** */ 1107 /* *** generated at runtime *** */
1109 struct { 1108 struct {
1110 Edje_Signals_Sources_Patterns programs; 1109 Edje_Signals_Sources_Patterns programs;
@@ -1114,20 +1113,16 @@ struct _Edje_Part_Collection
1114 } patterns; 1113 } patterns;
1115 /* *** *** */ 1114 /* *** *** */
1116 1115
1117 unsigned char lua_script_only; 1116 struct {
1117 Evas_Real height;
1118 Evas_Real width;
1119 } scene_size;
1118 1120
1121 unsigned char lua_script_only;
1119 unsigned char broadcast_signal; 1122 unsigned char broadcast_signal;
1120
1121 unsigned char physics_enabled; /* will be 1 if a body is declared */ 1123 unsigned char physics_enabled; /* will be 1 if a body is declared */
1122
1123 unsigned char script_recursion; /* permits unsafe Embryo->EDC->Embryo scripting */ 1124 unsigned char script_recursion; /* permits unsafe Embryo->EDC->Embryo scripting */
1124
1125 unsigned char checked : 1; 1125 unsigned char checked : 1;
1126
1127 struct {
1128 Evas_Real height;
1129 Evas_Real width;
1130 } scene_size;
1131}; 1126};
1132 1127
1133struct _Edje_Part_Dragable 1128struct _Edje_Part_Dragable
@@ -1142,7 +1137,7 @@ struct _Edje_Part_Dragable
1142 int threshold_id; /* dragging outside this bit, -1 = no */ 1137 int threshold_id; /* dragging outside this bit, -1 = no */
1143 1138
1144 /* davinchi */ 1139 /* davinchi */
1145 int event_id; /* If it is used as scrollbar */ 1140 int event_id; /* If it is used as scrollbar */
1146 1141
1147 signed char x; /* can u click & drag this bit in x dir */ 1142 signed char x; /* can u click & drag this bit in x dir */
1148 signed char y; /* can u click & drag this bit in y dir */ 1143 signed char y; /* can u click & drag this bit in y dir */
@@ -1170,12 +1165,16 @@ struct _Edje_Part
1170 1165
1171 Edje_Part_Description_List other; /* other possible descriptors */ 1166 Edje_Part_Description_List other; /* other possible descriptors */
1172 1167
1173 const char *source, *source2, *source3, *source4, *source5, *source6; 1168 const char *source, *source2, *source3, *source4, *source5, *source6;
1174 int id; /* its id number */ 1169 int id; /* its id number */
1175 int clip_to_id; /* the part id to clip this one to */ 1170 int clip_to_id; /* the part id to clip this one to */
1176 Edje_Part_Dragable dragable; 1171 Edje_Part_Dragable dragable;
1177 Edje_Pack_Element **items; /* packed items for box and table */ 1172 Edje_Pack_Element **items; /* packed items for box and table */
1173 Evas_Event_Flags ignore_flags;
1174 Evas_Event_Flags mask_flags;
1178 unsigned int items_count; 1175 unsigned int items_count;
1176 Edje_3D_Vec scale_3d;
1177 Edje_Part_Api api;
1179 unsigned char type; /* what type (image, rect, text) */ 1178 unsigned char type; /* what type (image, rect, text) */
1180#ifdef HAVE_EPHYSICS 1179#ifdef HAVE_EPHYSICS
1181 unsigned char physics_body; /* body (none, rigid box, soft circle, ...) */ 1180 unsigned char physics_body; /* body (none, rigid box, soft circle, ...) */
@@ -1184,10 +1183,7 @@ struct _Edje_Part
1184 unsigned char mouse_events; /* it will affect/respond to mouse events */ 1183 unsigned char mouse_events; /* it will affect/respond to mouse events */
1185 unsigned char repeat_events; /* it will repeat events to objects below */ 1184 unsigned char repeat_events; /* it will repeat events to objects below */
1186 unsigned char anti_alias; 1185 unsigned char anti_alias;
1187 Evas_Event_Flags ignore_flags;
1188 Evas_Event_Flags mask_flags;
1189 unsigned char scale; /* should certain properties scale with edje scale factor? */ 1186 unsigned char scale; /* should certain properties scale with edje scale factor? */
1190 Edje_3D_Vec scale_3d;
1191 unsigned char precise_is_inside; 1187 unsigned char precise_is_inside;
1192 unsigned char use_alternate_font_metrics; 1188 unsigned char use_alternate_font_metrics;
1193 unsigned char pointer_mode; 1189 unsigned char pointer_mode;
@@ -1196,7 +1192,6 @@ struct _Edje_Part
1196 unsigned char cursor_mode; 1192 unsigned char cursor_mode;
1197 unsigned char multiline; 1193 unsigned char multiline;
1198 unsigned char access; /* it will be used accessibility feature */ 1194 unsigned char access; /* it will be used accessibility feature */
1199 Edje_Part_Api api;
1200 unsigned char nested_children_count; 1195 unsigned char nested_children_count;
1201 unsigned char no_render; /* for proxy sources and masks, since 1.15 */ 1196 unsigned char no_render; /* for proxy sources and masks, since 1.15 */
1202}; 1197};
@@ -1230,13 +1225,13 @@ struct _Edje_Part_Description_Common
1230 Edje_Aspect_Prefer aspect; 1225 Edje_Aspect_Prefer aspect;
1231 1226
1232 const char *color_class; /* how to modify the color */ 1227 const char *color_class; /* how to modify the color */
1228 const char *size_class;
1229
1233 Edje_Color color; 1230 Edje_Color color;
1234 Edje_Color color2; 1231 Edje_Color color2;
1235 1232
1236 int clip_to_id; /* state clip override @since 1.15 */ 1233 int clip_to_id; /* state clip override @since 1.15 */
1237 1234
1238 const char *size_class;
1239
1240 struct { 1235 struct {
1241 FLOAT_T relative_x; 1236 FLOAT_T relative_x;
1242 FLOAT_T relative_y; 1237 FLOAT_T relative_y;
@@ -1271,6 +1266,9 @@ struct _Edje_Part_Description_Common
1271 } persp; 1266 } persp;
1272 1267
1273#ifdef HAVE_EPHYSICS 1268#ifdef HAVE_EPHYSICS
1269 // XXX: the eblow struct SHOULD be optional -ie a pointer to a sub struct
1270 // XXX: but due to eet encoding we can't do that, but just note this for
1271 // XXX: the future to come up with a way to do this
1274 struct { 1272 struct {
1275 double mass; 1273 double mass;
1276 double restitution; 1274 double restitution;
@@ -1307,9 +1305,9 @@ struct _Edje_Part_Description_Common
1307 } physics; 1305 } physics;
1308#endif 1306#endif
1309 1307
1308 Edje_3D_Vec align_3d;
1310 unsigned char visible; /* is it shown */ 1309 unsigned char visible; /* is it shown */
1311 unsigned char limit; /* 0 == no, 1 = width, 2 = height, 3 = both */ 1310 unsigned char limit; /* 0 == no, 1 = width, 2 = height, 3 = both */
1312 Edje_3D_Vec align_3d;
1313}; 1311};
1314 1312
1315struct _Edje_Part_Description_Spec_Fill 1313struct _Edje_Part_Description_Spec_Fill
@@ -1382,9 +1380,9 @@ struct _Edje_Part_Description_Spec_Proxy
1382 1380
1383struct _Edje_Part_Description_Spec_Text 1381struct _Edje_Part_Description_Spec_Text
1384{ 1382{
1385 Edje_String text; /* if "" or NULL, then leave text unchanged */
1386 char *domain; 1383 char *domain;
1387 char *text_class; /* how to apply/modify the font */ 1384 char *text_class; /* how to apply/modify the font */
1385 Edje_String text; /* if "" or NULL, then leave text unchanged */
1388 Edje_String style; /* the text style if a textblock */ 1386 Edje_String style; /* the text style if a textblock */
1389 Edje_String font; /* if a specific font is asked for */ 1387 Edje_String font; /* if a specific font is asked for */
1390 Edje_String repch; /* replacement char for password mode entry */ 1388 Edje_String repch; /* replacement char for password mode entry */
@@ -1393,11 +1391,13 @@ struct _Edje_Part_Description_Spec_Text
1393 Edje_Color color3; 1391 Edje_Color color3;
1394 1392
1395 double ellipsis; /* 0.0 - 1.0 defining where the ellipsis align */ 1393 double ellipsis; /* 0.0 - 1.0 defining where the ellipsis align */
1394 char *id_source_part;
1395 char *id_text_source_part;
1396 int size; /* 0 = use user set size */ 1396 int size; /* 0 = use user set size */
1397 int id_source; /* -1 if none */ 1397 int id_source; /* -1 if none */
1398 char *id_source_part;
1399 int id_text_source; /* -1 if none */ 1398 int id_text_source; /* -1 if none */
1400 char *id_text_source_part; 1399 int size_range_min;
1400 int size_range_max; /* -1 means, no bound. */
1401 1401
1402 unsigned char fit_x; /* resize font size down to fit in x dir */ 1402 unsigned char fit_x; /* resize font size down to fit in x dir */
1403 unsigned char fit_y; /* resize font size down to fit in y dir */ 1403 unsigned char fit_y; /* resize font size down to fit in y dir */
@@ -1405,8 +1405,6 @@ struct _Edje_Part_Description_Spec_Text
1405 unsigned char min_y; /* if text size should be part min size */ 1405 unsigned char min_y; /* if text size should be part min size */
1406 unsigned char max_x; /* if text size should be part max size */ 1406 unsigned char max_x; /* if text size should be part max size */
1407 unsigned char max_y; /* if text size should be part max size */ 1407 unsigned char max_y; /* if text size should be part max size */
1408 int size_range_min;
1409 int size_range_max; /* -1 means, no bound. */
1410}; 1408};
1411 1409
1412struct _Edje_Part_Description_Spec_Box 1410struct _Edje_Part_Description_Spec_Box
@@ -1436,30 +1434,26 @@ struct _Edje_Part_Description_Spec_Table
1436struct _Edje_Part_Description_Spec_Mesh_Node 1434struct _Edje_Part_Description_Spec_Mesh_Node
1437{ 1435{
1438 struct { 1436 struct {
1439 Edje_Part_Image_Id **tweens; 1437 Edje_Part_Image_Id **tweens;
1440 unsigned int tweens_count; 1438 unsigned int tweens_count;
1441 int id; 1439 int id;
1442
1443 Eina_Bool set;
1444
1445 Evas_Canvas3D_Mesh_Primitive primitive; 1440 Evas_Canvas3D_Mesh_Primitive primitive;
1446 Evas_Canvas3D_Vertex_Assembly assembly; 1441 Evas_Canvas3D_Vertex_Assembly assembly;
1447 int frame; 1442 int frame;
1443 Eina_Bool set;
1448 } mesh; 1444 } mesh;
1449 1445
1450 struct { 1446 struct {
1451 Edje_Part_Image_Id **tweens; 1447 Edje_Part_Image_Id **tweens;
1452 unsigned int tweens_count; 1448 unsigned int tweens_count;
1453 int id; 1449 int id;
1454
1455 Eina_Bool need_texture;
1456 Eina_Bool textured;
1457 Eina_Bool set;
1458
1459 Evas_Canvas3D_Wrap_Mode wrap1; 1450 Evas_Canvas3D_Wrap_Mode wrap1;
1460 Evas_Canvas3D_Wrap_Mode wrap2; 1451 Evas_Canvas3D_Wrap_Mode wrap2;
1461 Evas_Canvas3D_Texture_Filter filter1; 1452 Evas_Canvas3D_Texture_Filter filter1;
1462 Evas_Canvas3D_Texture_Filter filter2; 1453 Evas_Canvas3D_Texture_Filter filter2;
1454 Eina_Bool need_texture;
1455 Eina_Bool textured;
1456 Eina_Bool set;
1463 } texture; 1457 } texture;
1464 1458
1465 struct { 1459 struct {
@@ -1469,7 +1463,6 @@ struct _Edje_Part_Description_Spec_Mesh_Node
1469 Eina_Bool normal; 1463 Eina_Bool normal;
1470 FLOAT_T shininess; 1464 FLOAT_T shininess;
1471 Evas_Canvas3D_Shader_Mode shade; 1465 Evas_Canvas3D_Shader_Mode shade;
1472
1473 Evas_Canvas3D_Material_Attrib material_attrib; 1466 Evas_Canvas3D_Material_Attrib material_attrib;
1474 } properties; 1467 } properties;
1475 1468
@@ -1684,34 +1677,32 @@ struct _Edje
1684#ifdef HAVE_EPHYSICS 1677#ifdef HAVE_EPHYSICS
1685 EPhysics_World *world; 1678 EPhysics_World *world;
1686#endif 1679#endif
1687
1688 double duration_scale; 1680 double duration_scale;
1689 1681 double paused_at;
1690 Efl_Vpath_File *file_obj; 1682 Efl_Vpath_File *file_obj;
1691
1692 Eina_List *user_defined; 1683 Eina_List *user_defined;
1693
1694 lua_State *L; 1684 lua_State *L;
1695 Eina_Inlist *lua_objs; 1685 Eina_Inlist *lua_objs;
1696 int lua_ref;
1697 1686
1687 int lua_ref;
1698 int processing_messages; 1688 int processing_messages;
1699 int state;
1700 int preload_count;
1701
1702 unsigned int table_parts_size;
1703
1704 int walking_callbacks;
1705
1706 int references; 1689 int references;
1707 int block; 1690
1708 int load_error; 1691 FLOAT_T scale;
1709 int freeze;
1710 1692
1711 Evas_Coord x, y, w, h; 1693 Evas_Coord x, y, w, h;
1712 Edje_Size min; 1694 Edje_Size min;
1713 double paused_at; 1695
1714 FLOAT_T scale; 1696 unsigned short table_parts_size;
1697 unsigned short preload_count;
1698
1699 unsigned short walking_callbacks;
1700 unsigned short freeze;
1701
1702 unsigned short block;
1703 unsigned short state;
1704
1705 unsigned char load_error;
1715 1706
1716 Eina_Bool is_rtl : 1; 1707 Eina_Bool is_rtl : 1;
1717 Eina_Bool dirty : 1; 1708 Eina_Bool dirty : 1;
@@ -1721,6 +1712,7 @@ struct _Edje
1721 Eina_Bool have_objects : 1; 1712 Eina_Bool have_objects : 1;
1722 Eina_Bool paused : 1; 1713 Eina_Bool paused : 1;
1723 Eina_Bool no_anim : 1; 1714 Eina_Bool no_anim : 1;
1715
1724 Eina_Bool calc_only : 1; 1716 Eina_Bool calc_only : 1;
1725 Eina_Bool walking_actions : 1; 1717 Eina_Bool walking_actions : 1;
1726 Eina_Bool block_break : 1; 1718 Eina_Bool block_break : 1;
@@ -1729,6 +1721,7 @@ struct _Edje
1729 Eina_Bool freeze_calc : 1; 1721 Eina_Bool freeze_calc : 1;
1730 Eina_Bool has_entries : 1; 1722 Eina_Bool has_entries : 1;
1731 Eina_Bool entries_inited : 1; 1723 Eina_Bool entries_inited : 1;
1724
1732#ifdef EDJE_CALC_CACHE 1725#ifdef EDJE_CALC_CACHE
1733 Eina_Bool text_part_change : 1; 1726 Eina_Bool text_part_change : 1;
1734 Eina_Bool all_part_change : 1; 1727 Eina_Bool all_part_change : 1;
@@ -1862,17 +1855,19 @@ struct _Edje_Real_Part_State
1862{ 1855{
1863 Edje_Part_Description_Common *description; // 4 1856 Edje_Part_Description_Common *description; // 4
1864 Edje_Part_Description_Common *description_rtl; // 4 1857 Edje_Part_Description_Common *description_rtl; // 4
1858 void *external_params; // 4
1859 Edje_Real_Part_Set *set; // 4
1865#ifdef EDJE_CALC_CACHE 1860#ifdef EDJE_CALC_CACHE
1866 int state; // 4 1861 int state; // 4
1867 Edje_Calc_Params p; // 271 1862 Edje_Calc_Params p; // 271
1868#endif 1863#endif
1869 void *external_params; // 4
1870 Edje_Real_Part_Set *set; // 4
1871}; // 32 1864}; // 32
1872// WITH EDJE_CALC_CACHE 307 1865// WITH EDJE_CALC_CACHE 307
1873 1866
1874struct _Edje_Real_Part_Drag 1867struct _Edje_Real_Part_Drag
1875{ 1868{
1869 Edje_Real_Part *confine_to; // 4
1870 Edje_Real_Part *threshold; // 4
1876 FLOAT_T x, y; // 16 1871 FLOAT_T x, y; // 16
1877 Edje_Position_Scale val, size, step, page; // 64 1872 Edje_Position_Scale val, size, step, page; // 64
1878 struct { 1873 struct {
@@ -1882,8 +1877,6 @@ struct _Edje_Real_Part_Drag
1882 struct { 1877 struct {
1883 int x, y; // 8 1878 int x, y; // 8
1884 } tmp; 1879 } tmp;
1885 Edje_Real_Part *confine_to; // 4
1886 Edje_Real_Part *threshold; // 4
1887 Eina_Bool need_reset : 1; // 4 1880 Eina_Bool need_reset : 1; // 4
1888 Eina_Bool threshold_started_x : 1; 1881 Eina_Bool threshold_started_x : 1;
1889 Eina_Bool threshold_started_y : 1; 1882 Eina_Bool threshold_started_y : 1;
@@ -1979,10 +1972,10 @@ struct _Edje_Real_Part
1979 FLOAT_T description_pos; // 8 1972 FLOAT_T description_pos; // 8
1980 Edje_Rectangle req; // 16 1973 Edje_Rectangle req; // 16
1981 int x, y, w, h; // 16 1974 int x, y, w, h; // 16
1982 int clicked_button; // 4
1983#ifdef EDJE_CALC_CACHE 1975#ifdef EDJE_CALC_CACHE
1984 int state; // 4 1976 unsigned short state; // 2
1985#endif 1977#endif
1978 char clicked_button; // 1
1986 unsigned char type; // 1 1979 unsigned char type; // 1
1987 unsigned char calculated : 2; // 1 1980 unsigned char calculated : 2; // 1
1988 unsigned char calculating : 2; // 0 1981 unsigned char calculating : 2; // 0
diff --git a/src/lib/edje/edje_program.c b/src/lib/edje/edje_program.c
index 6580e5e2ce..99ac484388 100644
--- a/src/lib/edje/edje_program.c
+++ b/src/lib/edje/edje_program.c
@@ -316,7 +316,7 @@ _edje_object_play_set(Eo *obj EINA_UNUSED, Edje *ed, Eina_Bool play)
316 double t; 316 double t;
317 Eina_List *l; 317 Eina_List *l;
318 Edje_Running_Program *runp; 318 Edje_Running_Program *runp;
319 unsigned int i; 319 unsigned short i;
320 320
321 if (!ed) return; 321 if (!ed) return;
322 if (ed->delete_me) return; 322 if (ed->delete_me) return;
@@ -362,7 +362,7 @@ EOLIAN void
362_edje_object_animation_set(Eo *obj, Edje *ed, Eina_Bool on) 362_edje_object_animation_set(Eo *obj, Edje *ed, Eina_Bool on)
363{ 363{
364 Eina_List *l; 364 Eina_List *l;
365 unsigned int i; 365 unsigned short i;
366 366
367 if (!ed) return; 367 if (!ed) return;
368 if (ed->delete_me) return; 368 if (ed->delete_me) return;
diff --git a/src/lib/edje/edje_smart.c b/src/lib/edje/edje_smart.c
index 8e6c02da95..dff5823973 100644
--- a/src/lib/edje/edje_smart.c
+++ b/src/lib/edje/edje_smart.c
@@ -172,7 +172,7 @@ _edje_object_efl_canvas_group_group_del(Eo *obj, Edje *ed)
172EOLIAN static void 172EOLIAN static void
173_edje_object_efl_canvas_group_group_move(Eo *obj EINA_UNUSED, Edje *ed, Evas_Coord x, Evas_Coord y) 173_edje_object_efl_canvas_group_group_move(Eo *obj EINA_UNUSED, Edje *ed, Evas_Coord x, Evas_Coord y)
174{ 174{
175 unsigned int i; 175 unsigned short i;
176 176
177 if ((ed->x == x) && (ed->y == y)) return; 177 if ((ed->x == x) && (ed->y == y)) return;
178 ed->x = x; 178 ed->x = x;
diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
index f079c66709..41c69893b3 100644
--- a/src/lib/edje/edje_util.c
+++ b/src/lib/edje/edje_util.c
@@ -290,7 +290,7 @@ edje_freeze(void)
290static void 290static void
291_edje_util_thaw_edje(Edje *ed) 291_edje_util_thaw_edje(Edje *ed)
292{ 292{
293 unsigned int i; 293 unsigned short i;
294 294
295 for (i = 0; i < ed->table_parts_size; i++) 295 for (i = 0; i < ed->table_parts_size; i++)
296 { 296 {
@@ -308,7 +308,7 @@ _edje_util_thaw_edje(Edje *ed)
308 if (ed2) _edje_util_thaw_edje(ed2); 308 if (ed2) _edje_util_thaw_edje(ed2);
309 } 309 }
310 } 310 }
311 if ((ed->recalc) && (ed->freeze <= 0)) _edje_recalc_do(ed); 311 if ((ed->recalc) && (ed->freeze == 0)) _edje_recalc_do(ed);
312} 312}
313 313
314#endif 314#endif
@@ -316,9 +316,9 @@ _edje_util_thaw_edje(Edje *ed)
316void 316void
317_edje_language_signal_emit(Edje *ed, Evas_Object *obj, char *signal) 317_edje_language_signal_emit(Edje *ed, Evas_Object *obj, char *signal)
318{ 318{
319 int i; 319 unsigned short i;
320 320
321 for (i = 0; i < (int)ed->table_parts_size; i++) 321 for (i = 0; i < ed->table_parts_size; i++)
322 { 322 {
323 Edje_Real_Part *rp = ed->table_parts[i]; 323 Edje_Real_Part *rp = ed->table_parts[i];
324 324
@@ -491,7 +491,7 @@ _edje_object_scale_set(Eo *obj EINA_UNUSED, Edje *ed, double scale)
491 Edje *ged; 491 Edje *ged;
492 Evas_Object *o; 492 Evas_Object *o;
493 Eina_List *l; 493 Eina_List *l;
494 unsigned int i; 494 unsigned short i;
495 495
496 if (ed->scale == scale) return EINA_TRUE; 496 if (ed->scale == scale) return EINA_TRUE;
497 ed->scale = FROM_DOUBLE(scale); 497 ed->scale = FROM_DOUBLE(scale);
@@ -545,7 +545,7 @@ _edje_object_orientation_inform(Evas_Object *obj)
545EOLIAN void 545EOLIAN void
546_edje_object_mirrored_set(Eo *obj, Edje *ed, Eina_Bool rtl) 546_edje_object_mirrored_set(Eo *obj, Edje *ed, Eina_Bool rtl)
547{ 547{
548 unsigned int i; 548 unsigned short i;
549 549
550 if (ed->is_rtl == rtl) return; 550 if (ed->is_rtl == rtl) return;
551 551
@@ -584,7 +584,7 @@ _edje_object_data_get(Eo *obj EINA_UNUSED, Edje *ed, const char *key)
584EOLIAN int 584EOLIAN int
585_edje_object_freeze(Eo *obj EINA_UNUSED, Edje *ed) 585_edje_object_freeze(Eo *obj EINA_UNUSED, Edje *ed)
586{ 586{
587 unsigned int i; 587 unsigned short i;
588 588
589 for (i = 0; i < ed->table_parts_size; i++) 589 for (i = 0; i < ed->table_parts_size; i++)
590 { 590 {
@@ -602,7 +602,7 @@ _edje_object_freeze(Eo *obj EINA_UNUSED, Edje *ed)
602EOLIAN int 602EOLIAN int
603_edje_object_thaw(Eo *obj EINA_UNUSED, Edje *ed) 603_edje_object_thaw(Eo *obj EINA_UNUSED, Edje *ed)
604{ 604{
605 unsigned int i; 605 unsigned short i;
606 606
607 for (i = 0; i < ed->table_parts_size; i++) 607 for (i = 0; i < ed->table_parts_size; i++)
608 { 608 {
@@ -1012,7 +1012,7 @@ _edje_object_color_class_set(Eo *obj EINA_UNUSED, Edje *ed, const char *color_cl
1012 if ((int_ret) && (need_update)) 1012 if ((int_ret) && (need_update))
1013 { 1013 {
1014 Edje_Real_Part *rp; 1014 Edje_Real_Part *rp;
1015 unsigned int i; 1015 unsigned short i;
1016 1016
1017 ed->dirty = EINA_TRUE; 1017 ed->dirty = EINA_TRUE;
1018 ed->recalc_call = EINA_TRUE; 1018 ed->recalc_call = EINA_TRUE;
@@ -1073,7 +1073,7 @@ EOLIAN void
1073_edje_object_color_class_del(Eo *obj EINA_UNUSED, Edje *ed, const char *color_class) 1073_edje_object_color_class_del(Eo *obj EINA_UNUSED, Edje *ed, const char *color_class)
1074{ 1074{
1075 Edje_Color_Class *cc = NULL; 1075 Edje_Color_Class *cc = NULL;
1076 unsigned int i; 1076 unsigned short i;
1077 1077
1078 if (!color_class) return; 1078 if (!color_class) return;
1079 1079
@@ -1107,7 +1107,7 @@ _edje_object_color_class_clear(const Eo *obj EINA_UNUSED, Edje *ed)
1107 Edje_Color_Class *cc = NULL; 1107 Edje_Color_Class *cc = NULL;
1108 Eina_List *l; 1108 Eina_List *l;
1109 char *color_class; 1109 char *color_class;
1110 unsigned int i; 1110 unsigned short i;
1111 Eina_Bool int_ret = EINA_TRUE; 1111 Eina_Bool int_ret = EINA_TRUE;
1112 1112
1113 if (!ed) return EINA_FALSE; 1113 if (!ed) return EINA_FALSE;
@@ -1439,7 +1439,7 @@ EOLIAN Eina_Bool
1439_edje_object_text_class_set(Eo *obj EINA_UNUSED, Edje *ed, const char *text_class, const char *font, Evas_Font_Size size) 1439_edje_object_text_class_set(Eo *obj EINA_UNUSED, Edje *ed, const char *text_class, const char *font, Evas_Font_Size size)
1440{ 1440{
1441 Edje_Text_Class *tc = NULL; 1441 Edje_Text_Class *tc = NULL;
1442 unsigned int i; 1442 unsigned short i;
1443 1443
1444 if ((!ed) || (!text_class)) return EINA_FALSE; 1444 if ((!ed) || (!text_class)) return EINA_FALSE;
1445 1445
@@ -1530,7 +1530,7 @@ EOLIAN void
1530_edje_object_text_class_del(Eo *obj EINA_UNUSED, Edje *ed, const char *text_class) 1530_edje_object_text_class_del(Eo *obj EINA_UNUSED, Edje *ed, const char *text_class)
1531{ 1531{
1532 Edje_Text_Class *tc = NULL; 1532 Edje_Text_Class *tc = NULL;
1533 unsigned int i; 1533 unsigned short i;
1534 1534
1535 if (!text_class) return; 1535 if (!text_class) return;
1536 1536
@@ -1854,7 +1854,7 @@ EOLIAN Eina_Bool
1854_edje_object_size_class_set(Eo *obj EINA_UNUSED, Edje *ed, const char *size_class, Evas_Coord minw, Evas_Coord minh, Evas_Coord maxw, Evas_Coord maxh) 1854_edje_object_size_class_set(Eo *obj EINA_UNUSED, Edje *ed, const char *size_class, Evas_Coord minw, Evas_Coord minh, Evas_Coord maxw, Evas_Coord maxh)
1855{ 1855{
1856 Edje_Size_Class *sc = NULL; 1856 Edje_Size_Class *sc = NULL;
1857 unsigned int i; 1857 unsigned short i;
1858 1858
1859 if ((!ed) || (!size_class)) return EINA_FALSE; 1859 if ((!ed) || (!size_class)) return EINA_FALSE;
1860 1860
@@ -1945,7 +1945,7 @@ EOLIAN void
1945_edje_object_size_class_del(Eo *obj EINA_UNUSED, Edje *ed, const char *size_class) 1945_edje_object_size_class_del(Eo *obj EINA_UNUSED, Edje *ed, const char *size_class)
1946{ 1946{
1947 Edje_Size_Class *sc = NULL; 1947 Edje_Size_Class *sc = NULL;
1948 unsigned int i; 1948 unsigned short i;
1949 1949
1950 if (!size_class) return; 1950 if (!size_class) return;
1951 1951
@@ -2118,7 +2118,7 @@ _edje_object_item_provider_set(Eo *obj EINA_UNUSED, Edje *ed, Edje_Item_Provider
2118EOLIAN void 2118EOLIAN void
2119_edje_object_text_change_cb_set(Eo *obj EINA_UNUSED, Edje *ed, Edje_Text_Change_Cb func, void *data) 2119_edje_object_text_change_cb_set(Eo *obj EINA_UNUSED, Edje *ed, Edje_Text_Change_Cb func, void *data)
2120{ 2120{
2121 unsigned int i; 2121 unsigned short i;
2122 2122
2123 ed->text_change.func = func; 2123 ed->text_change.func = func;
2124 ed->text_change.data = data; 2124 ed->text_change.data = data;
@@ -4063,7 +4063,7 @@ _edje_object_parts_extends_calc(Eo *obj EINA_UNUSED, Edje *ed, Evas_Coord *x, Ev
4063{ 4063{
4064 Evas_Coord xx1 = INT_MAX, yy1 = INT_MAX; 4064 Evas_Coord xx1 = INT_MAX, yy1 = INT_MAX;
4065 Evas_Coord xx2 = 0, yy2 = 0; 4065 Evas_Coord xx2 = 0, yy2 = 0;
4066 unsigned int i; 4066 unsigned short i;
4067 4067
4068 if (!ed) 4068 if (!ed)
4069 { 4069 {
@@ -4145,7 +4145,7 @@ again:
4145 4145
4146 do 4146 do
4147 { 4147 {
4148 unsigned int i; 4148 unsigned short i;
4149 4149
4150 calc_count++; 4150 calc_count++;
4151 4151
@@ -5617,8 +5617,8 @@ _edje_object_perspective_get(Eo *obj EINA_UNUSED, Edje *ed)
5617EOLIAN Eina_Bool 5617EOLIAN Eina_Bool
5618_edje_object_preload(Eo *obj, Edje *ed, Eina_Bool cancel) 5618_edje_object_preload(Eo *obj, Edje *ed, Eina_Bool cancel)
5619{ 5619{
5620 int count; 5620 unsigned short count;
5621 unsigned int i; 5621 unsigned short i;
5622 5622
5623 if (!ed) return EINA_FALSE; 5623 if (!ed) return EINA_FALSE;
5624 5624
@@ -6014,7 +6014,7 @@ _edje_real_part_recursive_get_helper(Edje **ed, char **path)
6014Edje_Real_Part * 6014Edje_Real_Part *
6015_edje_real_part_get(const Edje *ed, const char *part) 6015_edje_real_part_get(const Edje *ed, const char *part)
6016{ 6016{
6017 unsigned int i; 6017 unsigned short i;
6018 6018
6019 if (!part) return NULL; 6019 if (!part) return NULL;
6020 6020
@@ -6313,12 +6313,8 @@ _edje_util_freeze(Edje *ed)
6313int 6313int
6314_edje_util_thaw(Edje *ed) 6314_edje_util_thaw(Edje *ed)
6315{ 6315{
6316 if (ed->freeze == 0) return 0;
6316 ed->freeze--; 6317 ed->freeze--;
6317 if (ed->freeze < 0)
6318 {
6319 // printf("-------------########### OVER THAW\n");
6320 ed->freeze = 0;
6321 }
6322 if ((ed->freeze == 0) && (ed->recalc)) 6318 if ((ed->freeze == 0) && (ed->recalc))
6323 { 6319 {
6324 // printf("thaw recalc\n"); 6320 // printf("thaw recalc\n");