[ctxpopup] P130528-7014: wrong text min set for more btn style when ctxpopup is pressed
[platform/core/uifw/efl-theme-tizen.git] / themes / widgets / ctxpopup.edc
index 22367ca..3d9c886 100644 (file)
 #define CTXPOPUP_LIST_SHADOW_PADDING 3
 
 ///////////////////////////////////////////////////////////////////////////////
-       group {
-               name: "elm/scroller/base/ctxpopup";
-               script {
-                       public sbvis_v, sbvis_h, sbalways_v, sbalways_h, sbvis_timer;
-                       public timer0(val) {
-                               new v;
-                       v = get_int(sbvis_v);
-                       if (v) {
-                               v = get_int(sbalways_v);
-                               if(!v) {
-                                       emit("do-hide-vbar", "");
-                                       set_int(sbvis_v, 0);
-                               }
-                       }
-                       v = get_int(sbvis_h);
-                       if (v) {
-                               v = get_int(sbalways_h);
-                               if(!v) {
-                                       emit("do-hide-hbar", "");
-                                       set_int(sbvis_h, 0);
-                               }
-                       }
-                       set_int(sbvis_timer, 0);
-                       return 0;
-                       }
-               }
-               images {
-                       image: "00_popup_scroll.9.png" COMP;
-                       image: "01_scroller.png" COMP;
+       sounds {
+               sample {
+                       name: "touch_sound" RAW;
+                       source: "button-pressed.wav";
                }
+       }
+       group {
+               name: "elm/ctxpopup/layout/default";
+               alias: "elm/ctxpopup/layout/copypaste";
+               max: (CTXPOPUP_WIDTH_MAX_INC+CTXPOPUP_SHADOW_LEFT_PADDING+CTXPOPUP_SHADOW_RIGHT_PADDING) ((CTXPOPUP_ITEM_HEIGHT_MIN_INC*7)+CTXPOPUP_SHADOW_TOP_PADDING+CTXPOPUP_SHADOW_BOTTOM_PADDING+(CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC*12)-CTXPOPUP_CONTENT_PADDING);
                parts {
                        part {
-                               name: "clipper";
+                               name:"top_padding";
                                type: RECT;
-                               mouse_events: 0;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
+                                       min: 0 CTXPOPUP_MOVE_PAD_INC;
+                                       visible: 0;
+                                       fixed: 0 1;
+                                       align: 0.5 0.0;
+                                       rel1.relative: 0.0 0.0;
+                                       rel2.relative: 1.0 0.0;
                                }
-                       }
-                       part {
-                               name: "elm.swallow.content";
-                               clip_to: "clipper";
-                               type: SWALLOW;
-                               scale: 1;
                                description {
-                                       state: "default" 0.0;
-                                       align: 0.5 0.5;
+                                       state: "show_up" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
                        part {
-                               name: "sb_vbar_clip_master";
+                               name:"bottom_padding";
                                type: RECT;
-                               mouse_events: 0;
+                               scale: 0;
                                description {
                                        state: "default" 0.0;
+                                       min: 0 CTXPOPUP_MOVE_PAD_INC;
+                                       visible: 0;
+                                       fixed: 0 1;
+                                       align: 0.5 1.0;
+                                       rel1.relative: 0.0 1.0;
+                                       rel2.relative: 1.0 1.0;
                                }
                                description {
-                                       state: "hidden" 0.0;
-                                       visible: 0;
-                                       color: 255 255 255 0;
+                                       state: "show_down" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
                        part {
-                               name: "sb_vbar_clip";
-                               clip_to:"sb_vbar_clip_master";
+                               name:"left_padding";
                                type: RECT;
-                               mouse_events: 0;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       align: 0.0 0.0;
-                                       rel2{ to:"clipper"; relative: 1.0 1.0;}
+                                       min: CTXPOPUP_MOVE_PAD_INC 0;
+                                       visible: 0;
+                                       fixed: 1 0;
+                                       align: 0.0 0.5;
+                                       rel1.relative: 0.0 0.0;
+                                       rel2.relative: 0.0 1.0;
                                }
                                description {
-                                       state: "hidden" 0.0;
-                                       visible: 0;
-                                       color: 255 255 255 0;
+                                       state: "show_left" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
                        part {
-                               name: "sb_vbar_padding";
+                               name:"right_padding";
                                type: RECT;
-                               mouse_events: 0;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       fixed: 1 1;
-                                       min: (CTXPOPUP_SCROLLER_PADDING-CTXPOPUP_CONTENT_PADDING) 0;
-                                       max: (CTXPOPUP_SCROLLER_PADDING-CTXPOPUP_CONTENT_PADDING) 0;
+                                       min: CTXPOPUP_MOVE_PAD_INC 0;
                                        visible: 0;
-                                       align: 1.0 0.0;
-                                       rel1 { to:"clipper"; relative: 1.0 0.0; }
-                                       rel2 { to:"clipper"; relative: 1.0 1.0; }
+                                       fixed: 1 0;
+                                       align: 1 0.5;
+                                       rel1.relative: 1.0 0.0;
+                                       rel2.relative: 1.0 1.0;
+                               }
+                               description {
+                                       state: "show_right" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
                        part {
-                               name: "sb_vbar";
-                               type: RECT;
-                               mouse_events: 0;
-                               scale: 1;
+                               name: "swallow";
+                               type: SWALLOW;
+                               clip_to: "layout_clip";
                                description {
                                        state: "default" 0.0;
-                                       fixed: 1 1;
                                        visible: 0;
-                                       align: 1.0 0.0;
-                                       rel1 { to_x:"sb_vbar_padding"; to_y:"clipper"; relative: 0.0 0.0; }
-                                       rel2 { to_x:"sb_vbar_padding"; to_y:"clipper"; relative: 0.0 1.0; }
                                }
-                       }
-                       part {
-                               name: "elm.dragable.vbar";
-                               clip_to: "sb_vbar_clip";
-                               mouse_events: 0;
-                               scale: 1;
-                               dragable {
-                                       x: 0 0 0;
-                                       y: 1 1 0;
-                                       confine: "sb_vbar";
+                               description {
+                                       state: "show_up" 0.0;
+                                       rel1 {to_x:"left_padding"; to_y:"top_padding"; relative: 1.0 1.0;}
+                                       rel2 {to_x:"right_padding"; to_y:"top_padding"; relative: 0.0 1.0;}
+                                       align: 0.5 0.0;
                                }
                                description {
-                                       state: "default" 0.0;
-                                       fixed: 1 1;
-                                       min: CTXPOPUP_SCROLLER_MIN_SIZE_INC;
-                                       rel1 {
-                                               relative: 0.5  0.5;
-                                               to: "sb_vbar";
-                                       }
-                                       rel2 {
-                                               relative: 0.5  0.5;
-                                               to: "sb_vbar";
-                                       }
-                                       image {
-                                               normal: "00_popup_scroll.9.png";
-                                               border: 0 0 5 5;
-                                               border_scale: 1;
-                                       }
+                                       state: "show_down" 0.0;
+                                       rel1 {to_x:"left_padding"; to_y:"bottom_padding"; relative: 1.0 0.0;}
+                                       rel2 {to_x:"right_padding"; to_y:"bottom_padding"; relative: 0.0 0.0;}
+                                       align: 0.5 1.0;
                                }
-                       }
-                       part {
-                               name: "sb_hbar_clip_master";
-                               type: RECT;
-                               mouse_events: 0;
                                description {
-                                       state: "default" 0.0;
+                                       state: "show_left" 0.0;
+                                       rel1 {to_x:"left_padding"; to_y:"top_padding"; relative: 1.0 1.0;}
+                                       rel2 {to_x:"left_padding"; to_y:"bottom_padding"; relative: 1.0 0.0;}
+                                       align: 0.0 0.5;
                                }
                                description {
-                                       state: "hidden" 0.0;
-                                       visible: 0;
-                                       color: 255 255 255 0;
+                                       state: "show_right" 0.0;
+                                       rel1 {to_x:"right_padding"; to_y:"top_padding"; relative: 0.0 1.0;}
+                                       rel2 {to_x:"right_padding"; to_y:"bottom_padding"; relative: 0.0 0.0;}
+                                       align: 1.0 0.5;
                                }
                        }
                        part {
-                               name: "sb_hbar_clip";
-                               clip_to: "sb_hbar_clip_master";
+                               name: "layout_clip";
                                type: RECT;
-                               mouse_events: 0;
-                               scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       align: 0.0 0.0;
-                                       rel2{ to:"clipper"; relative: 1.0 1.0;}
+                                       color: 255 255 255 0;
+                                       rel1 {to: "swallow"; relative: -0.2 -0.2; }
+                                       rel2 {to: "swallow"; relative: 1.2 1.2;}
                                }
                                description {
-                                       state: "hidden" 0.0;
-                                       visible: 0;
-                                       color: 255 255 255 0;
+                                       state: "show_up" 0.0;
+                                       inherit: "default" 0.0;
                                }
-                       }
-                       part {
-                               name: "sb_hbar";
-                               type: RECT;
-                               mouse_events: 0;
-                               scale: 1;
                                description {
-                                       state: "default" 0.0;
-                                       fixed: 1 1;
-                                       visible: 0;
-                                       align: 0.0 1.0;
-                                       rel1 {to:"clipper"; relative: 0.0 1.0;}
-                                       rel2 {to:"clipper"; relative: 1.0 1.0;}
+                                       state: "show_down" 0.0;
+                                       inherit: "default" 0.0;
                                }
-                       }
-                       part {
-                               name: "elm.dragable.hbar";
-                               clip_to: "sb_hbar_clip";
-                               mouse_events: 0;
-                               scale: 1;
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 0 0 0;
-                                       confine: "sb_hbar";
+                               description {
+                                       state: "show_left" 0.0;
+                                       inherit: "default" 0.0;
                                }
                                description {
-                                       state: "default" 0.0;
-                                       fixed: 1 1;
-                                       min: 32 12;
-                                       rel1 {relative: 0.5  0.5; to: "sb_hbar";}
-                                       rel2 {relative: 0.5  0.5; to: "sb_hbar";}
-                                       image {
-                                               normal: "01_scroller.png";
-                                               border: 6 6 0 0;
-                                               border_scale: 1;
-                                       }
+                                       state: "show_right" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       color: 255 255 255 255;
                                }
                        }
                }
                programs {
                        program {
-                               name: "load";
-                               signal: "load";
-                               source: "";
-                               script {
-                                       set_state(PART:"sb_vbar_clip", "hidden", 0.0);
-                                       set_state(PART:"sb_hbar_clip", "hidden", 0.0);
-                                       set_int(sbvis_v, 0);
-                                       set_int(sbvis_h, 0);
-                                       set_int(sbalways_v, 0);
-                                       set_int(sbalways_h, 0);
-                                       set_int(sbvis_timer, 0);
-                               }
-                       }
-                       program {
-                               name: "vbar_show";
-                               signal: "elm,action,show,vbar";
+                               name:   "showup";
+                               signal: "elm,state,show,up";
                                source: "elm";
-                               action: STATE_SET "default" 0.0;
-                               target: "sb_vbar_clip_master";
+                               action: STATE_SET "show_up" 0.0;
+                               target: "swallow";
+                               target: "top_padding";
+                               target: "layout_clip";
+                               after: "showupend";
                        }
                        program {
-                               name: "vbar_hide";
-                               signal: "elm,action,hide,vbar";
+                               name:   "showdown";
+                               signal: "elm,state,show,down";
                                source: "elm";
-                               action:  STATE_SET "hidden" 0.0;
-                               target: "sb_vbar_clip_master";
+                               action: STATE_SET "show_down" 0.0;
+                               target: "swallow";
+                               target: "bottom_padding";
+                               target: "layout_clip";
+                               after: "showdownend";
                        }
                        program {
-                               name: "vbar_show_always";
-                               signal: "elm,action,show_always,vbar";
+                               name:   "showleft";
+                               signal: "elm,state,show,left";
                                source: "elm";
-                               script {
-                                       new v;
-                                       v = get_int(sbvis_v);
-                                       v |= get_int(sbalways_v);
-                                       if (!v) {
-                                               set_int(sbalways_v, 1);
-                                               emit("do-show-vbar", "");
-                                               set_int(sbvis_v, 1);
-                                       }
-                               }
+                               action: STATE_SET "show_left" 0.0;
+                               target: "swallow";
+                               target: "left_padding";
+                               target: "layout_clip";
+                               after: "showleftend";
                        }
                        program {
-                               name: "vbar_show_notalways";
-                               signal: "elm,action,show_notalways,vbar";
+                               name:   "showright";
+                               signal: "elm,state,show,right";
                                source: "elm";
-                               script {
-                                       new v;
-                                       v = get_int(sbalways_v);
-                                       if (v) {
-                                               set_int(sbalways_v, 0);
-                                               v = get_int(sbvis_v);
-                                               if (!v) {
-                                                       emit("do-hide-vbar", "");
-                                               set_int(sbvis_v, 0);
-                                               }
-                                       }
-                               }
+                               action: STATE_SET "show_right" 0.0;
+                               target: "swallow";
+                               target: "right_padding";
+                               target: "layout_clip";
+                               after: "showrightend";
                        }
                        program {
-                               name: "sb_vbar_show";
-                               signal: "do-show-vbar";
-                               source: "";
-                               action:  STATE_SET "default" 0.0;
-                               transition: LINEAR 1.0;
-                               target: "sb_vbar_clip";
+                               name:   "showupend";
+                               action: STATE_SET "visible" 0.0;
+                               transition: SIN_FAC 0.33 1.1;
+                               target: "top_padding";
+                               target: "layout_clip";
                        }
                        program {
-                               name: "sb_vbar_hide";
-                               signal: "do-hide-vbar";
-                               source: "";
-                               action:  STATE_SET "hidden" 0.0;
-                               transition: LINEAR 1.0;
-                               target: "sb_vbar_clip";
+                               name:   "showdownend";
+                               action: STATE_SET "visible" 0.0;
+                               transition: SIN_FAC 0.33 1.1;
+                               target: "bottom_padding";
+                               target: "layout_clip";
                        }
                        program {
-                               name: "hbar_show";
-                               signal: "elm,action,show,hbar";
-                               source: "elm";
-                               action:  STATE_SET "default" 0.0;
-                               target: "sb_hbar_clip_master";
+                               name:   "showleftend";
+                               action: STATE_SET "visible" 0.0;
+                               transition: SIN_FAC 0.33 1.1;
+                               target: "left_padding";
+                               target: "layout_clip";
                        }
                        program {
-                               name: "hbar_hide";
-                               signal: "elm,action,hide,hbar";
-                               source: "elm";
-                               action:  STATE_SET "hidden" 0.0;
-                               target: "sb_hbar_clip_master";
+                               name:   "showrightend";
+                               action: STATE_SET "visible" 0.0;
+                               transition: SIN_FAC 0.33 1.1;
+                               target: "right_padding";
+                               target: "layout_clip";
                        }
                        program {
-                               name: "hbar_show_always";
-                               signal: "elm,action,show_always,hbar";
+                               name:   "hideup";
+                               signal: "elm,state,hide,up";
                                source: "elm";
-                               script {
-                                       new v;
-                                       v = get_int(sbvis_h);
-                                       v |= get_int(sbalways_h);
-                                       if (!v) {
-                                               set_int(sbalways_h, 1);
-                                               emit("do-show-hbar", "");
-                                               set_int(sbvis_h, 1);
-                                       }
-                               }
+                               action: STATE_SET "show_up" 0.0;
+                               target: "swallow";
+                               target: "top_padding";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
                        }
                        program {
-                               name: "hbar_show_notalways";
-                               signal: "elm,action,show_notalways,hbar";
+                               name:   "hidedown";
+                               signal: "elm,state,hide,down";
                                source: "elm";
-                               script {
-                                       new v;
-                                       v = get_int(sbalways_h);
-                                       if (v) {
-                                               set_int(sbalways_h, 0);
-                                               v = get_int(sbvis_h);
-                                               if (!v) {
-                                                       emit("do-hide-hbar", "");
-                                                       set_int(sbvis_h, 0);
-                                               }
-                                       }
-                               }
+                               action: STATE_SET "show_down" 0.0;
+                               target: "swallow";
+                               target: "bottom_padding";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
                        }
                        program {
-                               name: "sb_hbar_show";
-                               signal: "do-show-hbar";
-                               source: "";
-                               action:  STATE_SET "default" 0.0;
-                               transition: LINEAR 1.0;
-                               target: "sb_hbar_clip";
+                               name:   "hideleft";
+                               signal: "elm,state,hide,left";
+                               source: "elm";
+                               action: STATE_SET "show_left" 0.0;
+                               target: "swallow";
+                               target: "left_padding";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
                        }
                        program {
-                               name: "sb_hbar_hide";
-                               signal: "do-hide-hbar";
-                               source: "";
-                               action:  STATE_SET "hidden" 0.0;
-                               transition: LINEAR 1.0;
-                               target: "sb_hbar_clip";
+                               name:   "hideright";
+                               signal: "elm,state,hide,right";
+                               source: "elm";
+                               action: STATE_SET "show_right" 0.0;
+                               target: "swallow";
+                               target: "right_padding";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
                        }
                        program {
-                               name: "scroll";
-                               signal: "elm,action,scroll";
+                               name:   "hideup_clip";
+                               signal: "elm,state,hide,up";
                                source: "elm";
-                               action:  STATE_SET "default" 0.0;
-                               script {
-                                       new v;
-                                       v = get_int(sbvis_v);
-                                       v |= get_int(sbalways_v);
-                                       if (!v) {
-                                               emit("do-show-vbar", "");
-                                               set_int(sbvis_v, 1);
-                                       }
-                                       v = get_int(sbvis_h);
-                                       v |= get_int(sbalways_h);
-                                       if(!v) {
-                                               emit("do-show-hbar", "");
-                                               set_int(sbvis_h, 1);
-                                       }
-                                       v = get_int(sbvis_timer);
-                                       if (v > 0) cancel_timer(v);
-                                       v = timer(2.0, "timer0", 0);
-                                       set_int(sbvis_timer, v);
-                               }
-                       }
-               }
-       }
-///////////////////////////////////////////////////////////////////////////////
-       group {
-               name: "elm/ctxpopup/bg/pass_event";
-               alias: "elm/ctxpopup/bg/extended/entry/pass_event";
-               alias: "elm/ctxpopup/bg/extended/entry";
-               alias: "elm/ctxpopup/bg/timepicker";
-               alias: "elm/ctxpopup/bg/datetime/default";
-               parts {
-                       part {
-                               name: "bg";
-                               type: RECT;
-                               repeat_events: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       visible: 0;
-                               }
-                               description {
-                                       state: "visible" 0.0;
-                                       color: 0 0 0 0;
-                                       visible: 1;
-                               }
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
                        }
-               }
-               programs {
                        program {
-                               name:   "clicked_event";
-                               signal: "mouse,clicked,1";
-                               source: "bg";
-                               action: SIGNAL_EMIT "elm,action,click" "";
+                               name:   "hidedown_clip";
+                               signal: "elm,state,hide,down";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
                        }
                        program {
-                               name: "show";
-                               signal: "elm,state,show";
+                               name:   "hideleft_clip";
+                               signal: "elm,state,hide,left";
                                source: "elm";
-                               action: STATE_SET "visible" 0.0;
-                               target: "bg";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
                        }
                        program {
-                               name: "hide";
-                               signal: "elm,state,hide";
+                               name:   "hideright_clip";
+                               signal: "elm,state,hide,right";
                                source: "elm";
                                action: STATE_SET "default" 0.0;
-                               target: "bg";
+                               target: "layout_clip";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
+                       }
+                       program {
+                               name: "be_default";
+                               action: STATE_SET "default" 0.0;
+                               target: "swallow";
+                               target: "top_padding";
+                               target: "bottom_padding";
+                               target: "left_padding";
+                               target: "right_padding";
+                               after: "hidefinished";
+                       }
+                       program {
+                               name: "hidefinished";
+                               action: SIGNAL_EMIT "elm,action,hide,finished" "";
                        }
                }
        }
 ///////////////////////////////////////////////////////////////////////////////
+    group {
+        name: "elm/ctxpopup/layout/landscape/default";
+        inherit: "elm/ctxpopup/layout/default";
+        max: (CTXPOPUP_WIDTH_MAX_INC+CTXPOPUP_SHADOW_LEFT_PADDING+CTXPOPUP_SHADOW_RIGHT_PADDING) ((CTXPOPUP_ITEM_HEIGHT_MIN_INC*5)+CTXPOPUP_SHADOW_TOP_PADDING+CTXPOPUP_SHADOW_BOTTOM_PADDING+(CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC*8)-CTXPOPUP_CONTENT_PADDING);
+    }
+///////////////////////////////////////////////////////////////////////////////
        group {
-               name: "elm/ctxpopup/bg/default";
+               name: "elm/ctxpopup/layout/datetime/default";
+               alias: "elm/ctxpopup/layout/timepicker";
                parts {
                        part {
-                               name: "bg";
+                               name:"top_padding";
                                type: RECT;
-                               mouse_events: 1;
+                               scale: 1;
                                description {
                                        state: "default" 0.0;
+                                       min: 0 20;
                                        visible: 0;
+                                       fixed: 0 1;
+                                       align: 0.5 0.0;
+                                       rel1.relative: 0.0 0.0;
+                                       rel2.relative: 1.0 0.0;
+                               }
+                               description {
+                                       state: "show_up" 0.0;
+                                       inherit: "default" 0.0;
                                }
                                description {
                                        state: "visible" 0.0;
-                                       color: 0 0 0 0;
-                                       visible: 1;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
-               }
-               programs {
-                       program {
-                               name:   "clicked_event";
-                               signal: "mouse,clicked,1";
-                               source: "bg";
-                               action: SIGNAL_EMIT "elm,action,click" "";
-                       }
-                       program {
-                               name: "show";
-                               signal: "elm,state,show";
-                               source: "elm";
-                               action: STATE_SET "visible" 0.0;
-                               target: "bg";
-                       }
-                       program {
-                               name: "hide";
-                               signal: "elm,state,hide";
-                               source: "elm";
-                               action: STATE_SET "default" 0.0;
-                               target: "bg";
-                       }
-               }
-       }
-///////////////////////////////////////////////////////////////////////////////
-       group {
-               name: "elm/ctxpopup/base/no_bg_content";
-               images {
-                       image: "ctxpopup_bg.png" COMP;
-                       image: "ctxpopup_shadow.png" COMP;
-               }
-               parts {
                        part {
-                               name:"frame_shadow_left_top_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
+                               name:"bottom_padding";
+                               type: RECT;
+                               scale: 0;
                                description {
-                                       min: CTXPOPUP_SHADOW_PADDING CTXPOPUP_SHADOW_PADDING;
-                                       max: CTXPOPUP_SHADOW_PADDING CTXPOPUP_SHADOW_PADDING;
-                                       align: 0 0;
-                                       fixed: 1 1;
+                                       state: "default" 0.0;
+                                       min: 0 20;
                                        visible: 0;
+                                       fixed: 0 1;
+                                       align: 0.5 1.0;
+                                       rel1.relative: 0.0 1.0;
+                                       rel2.relative: 1.0 1.0;
                                }
-                       }
-                       part {
-                               name:"frame_shadow_right_bottom_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
                                description {
-                                       min: CTXPOPUP_SHADOW_PADDING CTXPOPUP_SHADOW_PADDING;
-                                       max: CTXPOPUP_SHADOW_PADDING CTXPOPUP_SHADOW_PADDING;
-                                       rel1{relative: 1 1;}
-                                       align: 0 0;
-                                       fixed: 1 1;
-                                       visible: 0;
+                                       state: "show_down" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
                        part {
-                               name: "frame_shadow";
-                               type: IMAGE;
+                               name:"left_padding";
+                               type: RECT;
                                scale: 1;
-                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       rel1 {to:"frame_shadow_left_top_padding"; relative: 1 1;}
-                                       rel2 {to:"frame_shadow_right_bottom_padding";}
-                                       image {
-                                               normal: "ctxpopup_shadow.png";
-                                               border: 10 10 10 10;
-                                               border_scale: 1;
-                                       }
-                                       color: 255 255 255 255;
+                                       min: 20 0;
+                                       visible: 0;
+                                       fixed: 1 0;
+                                       align: 0.0 0.5;
+                                       rel1.relative: 0.0 0.0;
+                                       rel2.relative: 0.0 1.0;
                                }
-                       }
-                       part {
-                               name: "ctxpopup_frame";
-                               type: IMAGE;
-                               scale: 1;
                                description {
-                                       image {
-                                               normal: "ctxpopup_bg.png";
-                                               border: 10 10 10 10;
-                                               border_scale: 1;
-                                       }
-                                       rel1 {to:"content_left_top_padding"; relative: 1 1;}
-                                       rel2 {to:"content_right_bottom_padding"; relative: 0 0;}
+                                       state: "show_left" 0.0;
+                                       inherit: "default" 0.0;
                                }
-                       }
-                       part {
-                               name:"list_shadow_right_bottom_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
                                description {
-                                       min: CTXPOPUP_LIST_SHADOW_PADDING CTXPOPUP_LIST_SHADOW_PADDING;
-                                       max: CTXPOPUP_LIST_SHADOW_PADDING CTXPOPUP_LIST_SHADOW_PADDING;
-                                       align: 0 0;
-                                       fixed: 1 1;
-                                       visible: 0;
-                                       rel1 {to:"elm.swallow.content";  relative: 1 1;}
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
                        part {
-                               name:"content_left_top_padding";
-                               type:RECT;
+                               name:"right_padding";
+                               type: RECT;
                                scale: 1;
-                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_LIST_PADDING CTXPOPUP_LIST_PADDING;
-                                       max: CTXPOPUP_LIST_PADDING CTXPOPUP_LIST_PADDING;
-                                       align: 0 0;
-                                       fixed: 1 1;
+                                       min: 20 0;
                                        visible: 0;
+                                       fixed: 1 0;
+                                       align: 1 0.5;
+                                       rel1.relative: 1.0 0.0;
+                                       rel2.relative: 1.0 1.0;
                                }
-                       }
-                       part {
-                               name:"content_right_bottom_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
                                description {
-                                       min: CTXPOPUP_LIST_PADDING CTXPOPUP_LIST_PADDING;
-                                       max: CTXPOPUP_LIST_PADDING CTXPOPUP_LIST_PADDING;
-                                       rel1 { relative: 1 1;}
-                                       rel2 { relative: 1 1;}
-                                       align: 1 1;
-                                       fixed: 1 1;
-                                       visible: 0;
+                                       state: "show_right" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
                        part {
-                               name: "elm.swallow.content";
+                               name: "swallow";
                                type: SWALLOW;
+                               clip_to: "layout_clip";
                                description {
                                        state: "default" 0.0;
-                                       rel1 {to:"content_left_top_padding"; relative: 1 1;}
-                                       rel2 {to:"content_right_bottom_padding"; relative: 0 0;}
+                                       visible: 0;
                                }
-                       }
-               }
-       }
+                               description {
+                                       state: "show_up" 0.0;
+                                       rel1 {to_x:"left_padding"; to_y:"top_padding"; relative: 1.0 1.0;}
+                                       rel2 {to_x:"right_padding"; to_y:"top_padding"; relative: 0.0 1.0;}
+                                       align: 0.5 0.0;
+                               }
+                               description {
+                                       state: "show_down" 0.0;
+                                       rel1 {to_x:"left_padding"; to_y:"bottom_padding"; relative: 1.0 0.0;}
+                                       rel2 {to_x:"right_padding"; to_y:"bottom_padding"; relative: 0.0 0.0;}
+                                       align: 0.5 1.0;
+                               }
+                               description {
+                                       state: "show_left" 0.0;
+                                       rel1 {to_x:"left_padding"; to_y:"top_padding"; relative: 1.0 1.0;}
+                                       rel2 {to_x:"left_padding"; to_y:"bottom_padding"; relative: 1.0 0.0;}
+                                       align: 0.0 0.5;
+                               }
+                               description {
+                                       state: "show_right" 0.0;
+                                       rel1 {to_x:"right_padding"; to_y:"top_padding"; relative: 0.0 1.0;}
+                                       rel2 {to_x:"right_padding"; to_y:"bottom_padding"; relative: 0.0 0.0;}
+                                       align: 1.0 0.5;
+                               }
+                       }
+                       part {
+                               name: "layout_clip";
+                               type: RECT;
+                               description {
+                                       state: "default" 0.0;
+                                       color: 255 255 255 0;
+                                       rel1 {to: "swallow"; relative: -0.2 -0.2; }
+                                       rel2 {to: "swallow"; relative: 1.2 1.2;}
+                               }
+                               description {
+                                       state: "show_up" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "show_down" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "show_left" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "show_right" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       color: 255 255 255 255;
+                               }
+                       }
+               }
+               programs {
+                       program {
+                               name:   "showup";
+                               signal: "elm,state,show,up";
+                               source: "elm";
+                               action: STATE_SET "show_up" 0.0;
+                               target: "swallow";
+                               target: "top_padding";
+                               target: "layout_clip";
+                               after: "showupend";
+                       }
+                       program {
+                               name:   "showdown";
+                               signal: "elm,state,show,down";
+                               source: "elm";
+                               action: STATE_SET "show_down" 0.0;
+                               target: "swallow";
+                               target: "bottom_padding";
+                               target: "layout_clip";
+                               after: "showdownend";
+                       }
+                       program {
+                               name:   "showleft";
+                               signal: "elm,state,show,left";
+                               source: "elm";
+                               action: STATE_SET "show_left" 0.0;
+                               target: "swallow";
+                               target: "left_padding";
+                               target: "layout_clip";
+                               after: "showleftend";
+                       }
+                       program {
+                               name:   "showright";
+                               signal: "elm,state,show,right";
+                               source: "elm";
+                               action: STATE_SET "show_right" 0.0;
+                               target: "swallow";
+                               target: "right_padding";
+                               target: "layout_clip";
+                               after: "showrightend";
+                       }
+                       program {
+                               name:   "showupend";
+                               action: STATE_SET "visible" 0.0;
+                               transition:LINEAR 0.25;
+                               target: "top_padding";
+                               target: "layout_clip";
+                       }
+                       program {
+                               name:   "showdownend";
+                               action: STATE_SET "visible" 0.0;
+                               transition:LINEAR 0.25;
+                               target: "bottom_padding";
+                               target: "layout_clip";
+                       }
+                       program {
+                               name:   "showleftend";
+                               action: STATE_SET "visible" 0.0;
+                               transition:LINEAR 0.25;
+                               target: "left_padding";
+                               target: "layout_clip";
+                       }
+                       program {
+                               name:   "showrightend";
+                               action: STATE_SET "visible" 0.0;
+                               transition:LINEAR 0.25;
+                               target: "right_padding";
+                               target: "layout_clip";
+                       }
+                       program {
+                               name:   "hideup";
+                               signal: "elm,state,hide,up";
+                               source: "elm";
+                               action: STATE_SET "show_up" 0.0;
+                               target: "swallow";
+                               target: "top_padding";
+                               transition: LINEAR 0.25;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hidedown";
+                               signal: "elm,state,hide,down";
+                               source: "elm";
+                               action: STATE_SET "show_down" 0.0;
+                               target: "swallow";
+                               target: "bottom_padding";
+                               transition: LINEAR 0.25;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideleft";
+                               signal: "elm,state,hide,left";
+                               source: "elm";
+                               action: STATE_SET "show_left" 0.0;
+                               target: "swallow";
+                               target: "left_padding";
+                               transition: LINEAR 0.25;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideright";
+                               signal: "elm,state,hide,right";
+                               source: "elm";
+                               action: STATE_SET "show_right" 0.0;
+                               target: "swallow";
+                               target: "right_padding";
+                               transition: LINEAR 0.25;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideup_clip";
+                               signal: "elm,state,hide,up";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: LINEAR 0.25;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hidedown_clip";
+                               signal: "elm,state,hide,down";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: LINEAR 0.25;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideleft_clip";
+                               signal: "elm,state,hide,left";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: LINEAR 0.25;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideright_clip";
+                               signal: "elm,state,hide,right";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: LINEAR 0.25;
+                               after: "be_default";
+                       }
+                       program {
+                               name: "be_default";
+                               action: STATE_SET "default" 0.0;
+                               target: "swallow";
+                               target: "top_padding";
+                               target: "bottom_padding";
+                               target: "left_padding";
+                               target: "right_padding";
+                               after: "hidefinished";
+                       }
+                       program {
+                               name: "hidefinished";
+                               action: SIGNAL_EMIT "elm,action,hide,finished" "";
+                       }
+               }
+       }
 ///////////////////////////////////////////////////////////////////////////////
        group {
-               name: "elm/ctxpopup/base/default";
-               images {
-                       image: "00_popup_bubble_bg.png" COMP;
-                       image: "00_popup_bubble_mask.png" COMP;
-               }
+               name: "elm/ctxpopup/layout/more/default";
+               max: CTXPOPUP_MORE_WIDTH_MAX_INC ((CTXPOPUP_ITEM_HEIGHT_MIN_INC*7)+CTXPOPUP_SHADOW_TOP_PADDING+CTXPOPUP_SHADOW_BOTTOM_PADDING+(CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC*12)-CTXPOPUP_CONTENT_PADDING);
                parts {
                        part {
-                               name:"frame_shadow_left_top_padding";
-                               type:RECT;
+                               name:"top_padding";
+                               type: RECT;
                                scale: 1;
-                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_SHADOW_LEFT_PADDING CTXPOPUP_SHADOW_TOP_PADDING;
-                                       max: CTXPOPUP_SHADOW_LEFT_PADDING CTXPOPUP_SHADOW_TOP_PADDING;
-                                       rel2 { relative: 0 0; }
-                                       align: 1 1;
-                                       fixed: 1 1;
+                                       min: 0 CTXPOPUP_MOVE_PAD_INC;
                                        visible: 0;
+                                       fixed: 0 1;
+                                       align: 0.5 0.0;
+                                       rel1.relative: 0.0 0.0;
+                                       rel2.relative: 1.0 0.0;
+                               }
+                               description {
+                                       state: "show_up" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
                        part {
-                               name:"frame_shadow_right_bottom_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
+                               name:"bottom_padding";
+                               type: RECT;
+                               scale: 0;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_SHADOW_RIGHT_PADDING CTXPOPUP_SHADOW_BOTTOM_PADDING;
-                                       max: CTXPOPUP_SHADOW_RIGHT_PADDING CTXPOPUP_SHADOW_BOTTOM_PADDING;
-                                       rel1{relative: 1 1;}
-                                       align: 0 0;
-                                       fixed: 1 1;
+                                       min: 0 CTXPOPUP_MOVE_PAD_INC;
                                        visible: 0;
+                                       fixed: 0 1;
+                                       align: 0.5 1.0;
+                                       rel1.relative: 0.0 1.0;
+                                       rel2.relative: 1.0 1.0;
+                               }
+                               description {
+                                       state: "show_down" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
                        part {
-                               name: "frame_bg";
-                               type: IMAGE;
+                               name:"left_padding";
+                               type: RECT;
                                scale: 1;
-                               mouse_events: 0;
-                               clip_to: "ctxpopup_clip";
                                description {
                                        state: "default" 0.0;
-                                       rel1 {to:"frame_shadow_left_top_padding";}
-                                       rel2 {to:"frame_shadow_right_bottom_padding";}
-                                       min: (CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC + CTXPOPUP_SHADOW_LEFT_PADDING + CTXPOPUP_SHADOW_RIGHT_PADDING) 0;
-                                       image {
-                                               normal: "00_popup_bubble_bg.png";
-                                               border: CTXPOPUP_BUBBLE_BG_IMAGE_BORDER;
-                                               border_scale: 1;
-                                       }
+                                       min: CTXPOPUP_MOVE_PAD_INC 0;
+                                       visible: 0;
+                                       fixed: 1 0;
+                                       align: 0.0 0.5;
+                                       rel1.relative: 0.0 0.0;
+                                       rel2.relative: 0.0 1.0;
+                               }
+                               description {
+                                       state: "show_left" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
-                       part { name: "arrow_area_left";
+                       part {
+                               name:"right_padding";
                                type: RECT;
-                               mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_MOVE_PAD_INC 0;
                                        visible: 0;
-                                       min: CTXPOPUP_HORIZONTAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
+                                       fixed: 1 0;
                                        align: 1 0.5;
-                                       rel1 {
-                                               relative: 1 1;
-                                               to_x:"content_left_top_padding";
-                                               to_y: "ctxpopup_frame_left_top";
-                                       }
-                                       rel2 {
-                                               relative: 1 0;
-                                               to_x:"content_left_top_padding";
-                                               to_y:"ctxpopup_frame_right_bottom";
-                                       }
+                                       rel1.relative: 1.0 0.0;
+                                       rel2.relative: 1.0 1.0;
                                }
-                       }
-                       part { name: "arrow_area_right";
-                               type: RECT;
-                               mouse_events: 0;
-                               scale: 1;
-                               clip_to: "ctxpopup_clip";
-                               description { state: "default" 0.0;
-                                       visible: 0;
-                                       min: CTXPOPUP_HORIZONTAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       align: 0 0.5;
-                                       rel1 {
-                                               relative: 0 1;
-                                               to_x:"content_right_bottom_padding";
-                                               to_y:"ctxpopup_frame_left_top";
-                                       }
-                                       rel2 {
-                                               relative: 0 0;
-                                               to_x:"content_right_bottom_padding";
-                                               to_y: "ctxpopup_frame_right_bottom";
-                                       }
+                               description {
+                                       state: "show_right" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: 0 0;
                                }
                        }
-                       part { name: "arrow_area_up";
-                               type: RECT;
-                               mouse_events: 0;
-                               scale: 1;
-                               clip_to: "ctxpopup_clip";
-                               description { state: "default" 0.0;
+                       part {
+                               name: "swallow";
+                               type: SWALLOW;
+                               clip_to: "layout_clip";
+                               description {
+                                       state: "default" 0.0;
                                        visible: 0;
-                                       min: CTXPOPUP_VERTICAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       align: 0.5 1;
-                                       rel1 {
-                                               relative: 1 1;
-                                               to_x: "ctxpopup_frame_left_top";
-                                               to_y: "content_left_top_padding";
-                                       }
-                                       rel2 {
-                                               relative: 0 1;
-                                               to_x:"ctxpopup_frame_right_bottom";
-                                               to_y: "content_left_top_padding";
-                                       }
+                               }
+                               description {
+                                       state: "show_up" 0.0;
+                                       rel1 {to_x:"left_padding"; to_y:"top_padding"; relative: 1.0 1.0;}
+                                       rel2 {to_x:"right_padding"; to_y:"top_padding"; relative: 0.0 1.0;}
+                                       align: 0.5 0.0;
+                               }
+                               description {
+                                       state: "show_down" 0.0;
+                                       rel1 {to_x:"left_padding"; to_y:"bottom_padding"; relative: 1.0 0.0;}
+                                       rel2 {to_x:"right_padding"; to_y:"bottom_padding"; relative: 0.0 0.0;}
+                                       align: 0.5 1.0;
+                               }
+                               description {
+                                       state: "show_left" 0.0;
+                                       rel1 {to_x:"left_padding"; to_y:"top_padding"; relative: 1.0 1.0;}
+                                       rel2 {to_x:"left_padding"; to_y:"bottom_padding"; relative: 1.0 0.0;}
+                                       align: 0.0 0.5;
+                               }
+                               description {
+                                       state: "show_right" 0.0;
+                                       rel1 {to_x:"right_padding"; to_y:"top_padding"; relative: 0.0 1.0;}
+                                       rel2 {to_x:"right_padding"; to_y:"bottom_padding"; relative: 0.0 0.0;}
+                                       align: 1.0 0.5;
                                }
                        }
-                       part { name: "arrow_area_down";
+                       part {
+                               name: "layout_clip";
                                type: RECT;
-                               mouse_events: 0;
-                               scale: 1;
-                               clip_to: "ctxpopup_clip";
-                               description { state: "default" 0.0;
-                                       visible: 0;
-                                       min: CTXPOPUP_VERTICAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       align: 0.5 0;
-                                       rel1 {
-                                               relative: 1 0;
-                                               to_x:"ctxpopup_frame_left_top";
-                                               to_y:"content_right_bottom_padding";
-                                       }
-                                       rel2 {
-                                               relative: 0 0;
-                                               to_x: "ctxpopup_frame_right_bottom";
-                                               to_y:"content_right_bottom_padding";
-                                       }
+                               description {
+                                       state: "default" 0.0;
+                                       color: 255 255 255 0;
+                                       rel1 {to: "swallow"; relative: -0.2 -0.2; }
+                                       rel2 {to: "swallow"; relative: 1.2 1.2;}
                                }
-                       }
-                       part { name: "elm.swallow.arrow_up";
-                               type: SWALLOW;
-                               mouse_events: 0;
-                               scale: 1;
-                               clip_to: "ctxpopup_clip";
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 1 1 0;
-                                       confine: "arrow_area_up";
+                               description {
+                                       state: "show_up" 0.0;
+                                       inherit: "default" 0.0;
                                }
                                description {
-                                       state: "default" 0.0;
-                                       min: CTXPOPUP_VERTICAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       visible: 1;
+                                       state: "show_down" 0.0;
+                                       inherit: "default" 0.0;
                                }
-                       }
-                       part { name: "elm.swallow.arrow_down";
-                               type: SWALLOW;
-                               mouse_events: 0;
-                               scale: 1;
-                               clip_to: "ctxpopup_clip";
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 1 1 0;
-                                       confine: "arrow_area_down";
+                               description {
+                                       state: "show_left" 0.0;
+                                       inherit: "default" 0.0;
                                }
                                description {
-                                       state: "default" 0.0;
-                                       min: CTXPOPUP_VERTICAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       visible: 1;
+                                       state: "show_right" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       color: 255 255 255 255;
                                }
                        }
-                       part { name: "elm.swallow.arrow_left";
-                               type: SWALLOW;
+               }
+               programs {
+                       program {
+                               name:   "showup";
+                               signal: "elm,state,show,up";
+                               source: "elm";
+                               action: STATE_SET "show_up" 0.0;
+                               target: "swallow";
+                               target: "top_padding";
+                               target: "layout_clip";
+                               after: "showupend";
+                       }
+                       program {
+                               name:   "showdown";
+                               signal: "elm,state,show,down";
+                               source: "elm";
+                               action: STATE_SET "show_down" 0.0;
+                               target: "swallow";
+                               target: "bottom_padding";
+                               target: "layout_clip";
+                               after: "showdownend";
+                       }
+                       program {
+                               name:   "showleft";
+                               signal: "elm,state,show,left";
+                               source: "elm";
+                               action: STATE_SET "show_left" 0.0;
+                               target: "swallow";
+                               target: "left_padding";
+                               target: "layout_clip";
+                               after: "showleftend";
+                       }
+                       program {
+                               name:   "showright";
+                               signal: "elm,state,show,right";
+                               source: "elm";
+                               action: STATE_SET "show_right" 0.0;
+                               target: "swallow";
+                               target: "right_padding";
+                               target: "layout_clip";
+                               after: "showrightend";
+                       }
+                       program {
+                               name:   "showupend";
+                               action: STATE_SET "visible" 0.0;
+                               transition: SIN_FAC 0.33 1.1;
+                               target: "top_padding";
+                               target: "layout_clip";
+                       }
+                       program {
+                               name:   "showdownend";
+                               action: STATE_SET "visible" 0.0;
+                               transition: SIN_FAC 0.33 1.1;
+                               target: "bottom_padding";
+                               target: "layout_clip";
+                       }
+                       program {
+                               name:   "showleftend";
+                               action: STATE_SET "visible" 0.0;
+                               transition: SIN_FAC 0.33 1.1;
+                               target: "left_padding";
+                               target: "layout_clip";
+                       }
+                       program {
+                               name:   "showrightend";
+                               action: STATE_SET "visible" 0.0;
+                               transition: SIN_FAC 0.33 1.1;
+                               target: "right_padding";
+                               target: "layout_clip";
+                       }
+                       program {
+                               name:   "hideup";
+                               signal: "elm,state,hide,up";
+                               source: "elm";
+                               action: STATE_SET "show_up" 0.0;
+                               target: "swallow";
+                               target: "top_padding";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hidedown";
+                               signal: "elm,state,hide,down";
+                               source: "elm";
+                               action: STATE_SET "show_down" 0.0;
+                               target: "swallow";
+                               target: "bottom_padding";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideleft";
+                               signal: "elm,state,hide,left";
+                               source: "elm";
+                               action: STATE_SET "show_left" 0.0;
+                               target: "swallow";
+                               target: "left_padding";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideright";
+                               signal: "elm,state,hide,right";
+                               source: "elm";
+                               action: STATE_SET "show_right" 0.0;
+                               target: "swallow";
+                               target: "right_padding";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideup_clip";
+                               signal: "elm,state,hide,up";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hidedown_clip";
+                               signal: "elm,state,hide,down";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideleft_clip";
+                               signal: "elm,state,hide,left";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
+                       }
+                       program {
+                               name:   "hideright_clip";
+                               signal: "elm,state,hide,right";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "layout_clip";
+                               transition: SIN_FAC 0.33 1.1;
+                               after: "be_default";
+                       }
+                       program {
+                               name: "be_default";
+                               action: STATE_SET "default" 0.0;
+                               target: "swallow";
+                               target: "top_padding";
+                               target: "bottom_padding";
+                               target: "left_padding";
+                               target: "right_padding";
+                               after: "hidefinished";
+                       }
+                       program {
+                               name: "hidefinished";
+                               action: SIGNAL_EMIT "elm,action,hide,finished" "";
+                       }
+               }
+       }
+///////////////////////////////////////////////////////////////////////////////
+    group {
+        name: "elm/ctxpopup/layout/landscape/more/default";
+        inherit: "elm/ctxpopup/layout/landscape/default";
+        max: CTXPOPUP_MORE_WIDTH_MAX_INC ((CTXPOPUP_ITEM_HEIGHT_MIN_INC*5)+CTXPOPUP_SHADOW_TOP_PADDING+CTXPOPUP_SHADOW_BOTTOM_PADDING+(CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC*8)-CTXPOPUP_CONTENT_PADDING);
+    }
+///////////////////////////////////////////////////////////////////////////////
+       group {
+               name: "elm/scroller/base/ctxpopup";
+               alias: "elm/scroller/base/more/default";
+               script {
+                       public sbvis_v, sbvis_h, sbalways_v, sbalways_h, sbvis_timer;
+                       public timer0(val) {
+                               new v;
+                       v = get_int(sbvis_v);
+                       if (v) {
+                               v = get_int(sbalways_v);
+                               if(!v) {
+                                       emit("do-hide-vbar", "");
+                                       set_int(sbvis_v, 0);
+                               }
+                       }
+                       v = get_int(sbvis_h);
+                       if (v) {
+                               v = get_int(sbalways_h);
+                               if(!v) {
+                                       emit("do-hide-hbar", "");
+                                       set_int(sbvis_h, 0);
+                               }
+                       }
+                       set_int(sbvis_timer, 0);
+                       return 0;
+                       }
+               }
+               images {
+                       image: "00_popup_scroll_v.png" COMP;
+                       image: "00_popup_scroll_h.png" COMP;
+               }
+               parts {
+                       part {
+                               name: "clipper";
+                               type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 1 1 0;
-                                       confine: "arrow_area_left";
-                               }
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_HORIZONTAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       visible: 1;
                                }
                        }
-                       part { name: "elm.swallow.arrow_right";
+                       part {
+                               name: "elm.swallow.content";
+                               clip_to: "clipper";
                                type: SWALLOW;
-                               mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 1 1 0;
-                                       confine: "arrow_area_right";
-                               }
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_HORIZONTAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       visible: 1;
+                                       align: 0.5 0.5;
                                }
                        }
                        part {
-                               name: "ctxpopup_frame_left_top";
+                               name: "sb_vbar_clip_master";
                                type: RECT;
-                               scale: 1;
+                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
+                               }
+                               description {
+                                       state: "hidden" 0.0;
                                        visible: 0;
-                                       align: 0 0;
-                                       fixed: 1 1;
-                                       min: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
-                                       max: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
-                                       rel1 {relative: 0 0; to: "content_left_top_padding";}
+                                       color: 255 255 255 0;
                                }
                        }
                        part {
-                               name: "ctxpopup_frame_right_bottom";
+                               name: "sb_vbar_clip";
+                               clip_to:"sb_vbar_clip_master";
                                type: RECT;
+                               mouse_events: 0;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
+                                       align: 0.0 0.0;
+                                       rel2{ to:"clipper"; relative: 1.0 1.0;}
+                               }
+                               description {
+                                       state: "hidden" 0.0;
                                        visible: 0;
-                                       align: 1 1;
-                                       fixed: 1 1;
-                                       min: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
-                                       max: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
-                                       rel2 {relative: 1 1; to: "content_right_bottom_padding";}
+                                       color: 255 255 255 0;
                                }
                        }
                        part {
-                               name:"content_left_top_padding";
-                               type:RECT;
-                               scale: 1;
+                               name: "sb_vbar_padding";
+                               type: RECT;
                                mouse_events: 0;
+                               scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
-                                       max: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
-                                       rel1 {to:"frame_shadow_left_top_padding";  relative: 1.0 1.0;}
-                                       align: 0 0;
                                        fixed: 1 1;
+                                       min: (CTXPOPUP_SCROLLER_PADDING-CTXPOPUP_CONTENT_PADDING) 0;
+                                       max: (CTXPOPUP_SCROLLER_PADDING-CTXPOPUP_CONTENT_PADDING) 0;
                                        visible: 0;
+                                       align: 1.0 0.0;
+                                       rel1 { to:"clipper"; relative: 1.0 0.0; }
+                                       rel2 { to:"clipper"; relative: 1.0 1.0; }
                                }
                        }
                        part {
-                               name:"content_right_bottom_padding";
-                               type:RECT;
-                               scale: 1;
+                               name: "sb_vbar";
+                               type: RECT;
                                mouse_events: 0;
+                               scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
-                                       max: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
-                                       rel2 {to:"frame_shadow_right_bottom_padding";  relative: 0.0 0.0;}
-                                       align: 1 1;
                                        fixed: 1 1;
                                        visible: 0;
+                                       align: 1.0 0.0;
+                                       rel1 { to_x:"sb_vbar_padding"; to_y:"clipper"; relative: 0.0 0.0; }
+                                       rel2 { to_x:"sb_vbar_padding"; to_y:"clipper"; relative: 0.0 1.0; }
                                }
                        }
                        part {
-                               name: "elm.swallow.content";
-                               type: SWALLOW;
-                               clip_to: "ctxpopup_clip";
+                               name: "elm.dragable.vbar";
+                               clip_to: "sb_vbar_clip";
+                               mouse_events: 0;
+                               scale: 1;
+                               dragable {
+                                       x: 0 0 0;
+                                       y: 1 1 0;
+                                       confine: "sb_vbar";
+                               }
                                description {
                                        state: "default" 0.0;
-                                       align: 0 0;
-                                       rel1 {to:"content_left_top_padding";  relative: 1.0 1.0;}
-                                       rel2 {to:"content_right_bottom_padding";  relative: 0.0 0.0;}
-                               }
-                       }
-                       part {
-                               name: "mask";
-                               type: IMAGE;
-                               scale: 1;
-                               mouse_events: 0;
-                               clip_to: "ctxpopup_clip";
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {to:"elm.swallow.content";}
-                                       rel2 {to:"elm.swallow.content";}
-                                       image {
-                                               normal: "00_popup_bubble_mask.png";
-                                               border: CTXPOPUP_BUBBLE_MASK_IMAGE_BORDER;
-                                               border_scale: 1;
-                                       }
-                               }
-                       }
-                       part { name: "ctxpopup_clip";
-                               type: RECT;
-                               description { state: "default" 0.0;
-                               color: 255 255 255 0;
-                               rel1 { to:"ctxpopup_frame_left_top"; relative: 0.5 0.5; }
-                               rel2 { to:"ctxpopup_frame_right_bottom"; relative: 0.5 0.5; }
-                               }
-                               description { state: "show_up" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"elm.swallow.arrow_down"; relative: 0.5 0.5; }
-                                       rel2 { to:"elm.swallow.arrow_down"; relative: 0.5 0.5; }
-                               }
-                               description { state: "show_left" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"elm.swallow.arrow_right"; relative: 0.5 0.5; }
-                                       rel2 { to:"elm.swallow.arrow_right"; relative: 0.5 0.5; }
-                               }
-                               description { state: "show_right" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"elm.swallow.arrow_left"; relative: 0.5 0.5; }
-                                       rel2 { to:"elm.swallow.arrow_left"; relative: 0.5 0.5; }
-                               }
-                               description { state: "show_down" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"elm.swallow.arrow_up"; relative: 0.5 0.5; }
-                                       rel2 { to:"elm.swallow.arrow_up"; relative: 0.5 0.5; }
-                               }
-                               description { state: "hide_up" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"elm.swallow.arrow_down"; relative: 0.5 0.5; }
-                                       rel2 { to:"elm.swallow.arrow_down"; relative: 0.5 0.5; }
-                               }
-                               description { state: "hide_left" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"elm.swallow.arrow_right"; relative: 0.5 0.5; }
-                                       rel2 { to:"elm.swallow.arrow_right"; relative: 0.5 0.5; }
-                               }
-                               description { state: "hide_right" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"elm.swallow.arrow_left"; relative: 0.5 0.5; }
-                                       rel2 { to:"elm.swallow.arrow_left"; relative: 0.5 0.5; }
-                               }
-                               description { state: "hide_down" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"elm.swallow.arrow_up"; relative: 0.5 0.5; }
-                                       rel2 { to:"elm.swallow.arrow_up"; relative: 0.5 0.5; }
-                               }
-                               description { state: "visible" 0.0;
-                                       color: 255 255 255 255;
-                                       rel1 { to_x:"arrow_area_left"; to_y:"arrow_area_up"; }
-                                       rel2 { to_x:"arrow_area_right"; to_y:"arrow_area_down"; }
-                               }
-                       }
-               }
-               programs {
-                       program { name: "show";
-                               signal: "elm,state,show";
-                               source: "elm";
-                               action: STATE_SET "visible" 0.0;
-                               transition: SIN_FAC 0.33 0.6;
-                               target: "ctxpopup_clip";
-                       }
-                       program { name: "show_up";
-                               signal: "elm,state,show,up";
-                               source: "elm";
-                               action: STATE_SET "show_up" 0.0;
-                               transition: SIN_FAC 0.33 0.6;
-                               target: "ctxpopup_clip";
-                       }
-                       program { name: "show_left";
-                               signal: "elm,state,show,left";
-                               source: "elm";
-                               action: STATE_SET "show_left" 0.0;
-                               transition: SIN_FAC 0.33 0.6;
-                               target: "ctxpopup_clip";
-                       }
-                       program { name: "show_right";
-                               signal: "elm,state,show,right";
-                               source: "elm";
-                               action: STATE_SET "show_right" 0.0;
-                               transition: SIN_FAC 0.33 0.6;
-                               target: "ctxpopup_clip";
-                       }
-                       program { name: "show_down";
-                               signal: "elm,state,show,down";
-                               source: "elm";
-                               action: STATE_SET "show_down" 0.0;
-                               transition: SIN_FAC 0.33 0.6;
-                               target: "ctxpopup_clip";
-                       }
-                       program { name: "hide_up";
-                               signal: "elm,state,hide,up";
-                               source: "elm";
-                               action: STATE_SET "hide_up" 0.0;
-                               transition: SIN_FAC 0.33 0.6;
-                               target: "ctxpopup_clip";
-                               after: "hide_finished";
-                       }
-                       program { name: "hide_left";
-                               signal: "elm,state,hide,left";
-                               source: "elm";
-                               action: STATE_SET "hide_left" 0.0;
-                               transition: SIN_FAC 0.33 0.6;
-                               target: "ctxpopup_clip";
-                               after: "hide_finished";
-                       }
-                       program { name: "hide_right";
-                               signal: "elm,state,hide,right";
-                               source: "elm";
-                               action: STATE_SET "hide_right" 0.0;
-                               transition: SIN_FAC 0.33 0.6;
-                               target: "ctxpopup_clip";
-                               after: "hide_finished";
-                       }
-                       program { name: "hide_down";
-                               signal: "elm,state,hide,down";
-                               source: "elm";
-                               action: STATE_SET "hide_down" 0.0;
-                               transition: SIN_FAC 0.33 0.6;
-                               target: "ctxpopup_clip";
-                               after: "hide_finished";
-                       }
-                       program { name: "hide_finished";
-                               action: SIGNAL_EMIT "elm,action,hide,finished" "";
-                       }
-               }
-       }
-
-///////////////////////////////////////////////////////////////////////////////
-       group { name: "elm/ctxpopup/arrow/default";
-               images {
-                       image: "00_popup_bubble_tail_left.png" COMP;
-                       image: "00_popup_bubble_tail_right.png" COMP;
-                       image: "00_popup_bubble_tail_top.png" COMP;
-                       image: "00_popup_bubble_tail_bottom.png" COMP;
-               }
-               parts {
-                       part {
-                               name: "ctxpopup_arrow";
-                               type: IMAGE;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: CTXPOPUP_ARROW_SIZE_INC;
-                                       max: CTXPOPUP_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       visible: 0;
-                                       align: 0.5 0.5;
-                               }
-                               description {
-                                       state: "left" 0.0;
-                                       min: CTXPOPUP_HORIZONTAL_ARROW_SIZE_INC;
-                                       max: CTXPOPUP_HORIZONTAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       align: 1.0 0.5;
-                                       image {
-                                               normal: "00_popup_bubble_tail_left.png";
-                                       }
-                               }
-                               description {
-                                       state: "right" 0.0;
-                                       min: CTXPOPUP_HORIZONTAL_ARROW_SIZE_INC;
-                                       max: CTXPOPUP_HORIZONTAL_ARROW_SIZE_INC;
                                        fixed: 1 1;
-                                       align: 0.0 0.5;
-                                       image {
-                                               normal: "00_popup_bubble_tail_right.png";
+                                       min: CTXPOPUP_SCROLLER_V_MIN_SIZE_INC;
+                                       rel1 {
+                                               relative: 0.5  0.5;
+                                               to: "sb_vbar";
                                        }
-                               }
-                               description {
-                                       state: "top" 0.0;
-                                       min: CTXPOPUP_VERTICAL_ARROW_SIZE_INC;
-                                       max: CTXPOPUP_VERTICAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       align: 0.5 1.0;
-                                       image {
-                                               normal: "00_popup_bubble_tail_top.png";
+                                       rel2 {
+                                               relative: 0.5  0.5;
+                                               to: "sb_vbar";
                                        }
-                               }
-                               description {
-                                       state: "bottom" 0.0;
-                                       min: CTXPOPUP_VERTICAL_ARROW_SIZE_INC;
-                                       max: CTXPOPUP_VERTICAL_ARROW_SIZE_INC;
-                                       fixed: 1 1;
-                                       align: 0.5 0.0;
                                        image {
-                                               normal: "00_popup_bubble_tail_bottom.png";
+                                               normal: "00_popup_scroll_v.png";
+                                               border: 0 0 8 8;
+                                               border_scale: 1;
                                        }
                                }
                        }
-               }
-               programs {
-                       program {
-                               name: "enable_left_arrow";
-                               signal: "elm,state,left";
-                               source: "elm";
-                               action: STATE_SET "left" 0.0;
-                               target: "ctxpopup_arrow";
-                       }
-                       program {
-                               name: "enable_right_arrow";
-                               signal: "elm,state,right";
-                               source: "elm";
-                               action: STATE_SET "right" 0.0;
-                               target: "ctxpopup_arrow";
-                       }
-                       program {
-                               name: "enable_top_arrow";
-                               signal: "elm,state,top";
-                               source: "elm";
-                               action: STATE_SET "top" 0.0;
-                               target: "ctxpopup_arrow";
-                       }
-                       program {
-                               name: "enable_bottom_arrow";
-                               signal: "elm,state,bottom";
-                               source: "elm";
-                               action: STATE_SET "bottom" 0.0;
-                               target: "ctxpopup_arrow";
-                       }
-               }
-       }
-///////////////////////////////////////////////////////////////////////////////
-       group {
-               name: "elm/ctxpopup/text_style_item/default";
-               parts {
-                       part {
-                               name: "event_blocker";
-                               mouse_events: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       color: 0 0 0 0;
-                               }
-                       }
                        part {
-                               name: "bg";
-                               mouse_events: 0;
+                               name: "sb_hbar_clip_master";
                                type: RECT;
+                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_BG_COLOR_INC;
-                                       visible: 1;
-                                       min: (CTXPOPUP_WIDTH_MIN_INC-CTXPOPUP_CONTENT_PADDING*2) 1;
-                                       max: (CTXPOPUP_WIDTH_MAX_INC-CTXPOPUP_CONTENT_PADDING*2) CTXPOPUP_ITEM_HEIGHT_MAX_INC;
-                               }
-                               description {
-                                       state: "clicked" 0.0;
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
-                                       visible: 1;
                                }
                                description {
-                                       state: "clicked_separator" 0.0;
-                                       rel1 { relative: 0.0 1.0; to_y: "separator2"; }
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
-                                       visible: 1;
+                                       state: "hidden" 0.0;
+                                       visible: 0;
+                                       color: 255 255 255 0;
                                }
                        }
                        part {
-                               name: "separator1";
-                               mouse_events: 0;
+                               name: "sb_hbar_clip";
+                               clip_to: "sb_hbar_clip_master";
                                type: RECT;
+                               mouse_events: 0;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_SEPARATOR_COLOR_INC;
-                                       rel1 { relative: 1.0 0.0; to_x: "left_padding";}
-                                       rel2 { relative: 0.0 1.0; to_x: "right_padding";}
-                                       align: 0.5 0;
-                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
-                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
-                                       visible: 0;
+                                       align: 0.0 0.0;
+                                       rel2{ to:"clipper"; relative: 1.0 1.0;}
                                }
                                description {
-                                       state: "visible" 0.0;
-                                       inherit: "default" 0.0;
-                                       visible: 1;
+                                       state: "hidden" 0.0;
+                                       visible: 0;
+                                       color: 255 255 255 0;
                                }
                        }
                        part {
-                               name: "separator2";
-                               mouse_events: 0;
+                               name: "sb_hbar_padding";
                                type: RECT;
+                               mouse_events: 0;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_SEPARATOR2_COLOR_INC;
-                                       rel1 { relative: 0.0 1.0; to: "separator1";}
-                                       rel2 { relative: 1.0 1.0; to: "separator1";}
-                                       align: 0.5 0;
-                                       fixed: 0 1;
-                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
-                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       fixed: 1 1;
+                                       min: 0 (CTXPOPUP_SCROLLER_PADDING-CTXPOPUP_CONTENT_PADDING);
+                                       max: 0 (CTXPOPUP_SCROLLER_PADDING-CTXPOPUP_CONTENT_PADDING);
                                        visible: 0;
-                               }
-                               description {
-                                       state: "visible" 0.0;
-                                       inherit: "default" 0.0;
-                                       visible: 1;
+                                       align: 0.0 1.0;
+                                       rel1 { to:"clipper"; relative: 0.0 1.0; }
+                                       rel2 { to:"clipper"; relative: 1.0 1.0; }
                                }
                        }
                        part {
-                               name: "left_padding";
+                               name: "sb_hbar";
                                type: RECT;
-                               scale: 1;
                                mouse_events: 0;
+                               scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MIN_INC;
-                                       max: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MAX_INC;
-                                       align: 0 0;
                                        fixed: 1 1;
                                        visible: 0;
+                                       align: 0.0 1.0;
+                                       rel1 {to_x:"clipper"; to_y: "sb_hbar_padding"; relative: 0.0 0.0;}
+                                       rel2 {to_x:"clipper"; to_y: "sb_hbar_padding"; relative: 1.0 0.0;}
                                }
                        }
                        part {
-                               name: "elm.text";
-                               type: TEXT;
+                               name: "elm.dragable.hbar";
+                               clip_to: "sb_hbar_clip";
                                mouse_events: 0;
                                scale: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 0 0 0;
+                                       confine: "sb_hbar";
+                               }
                                description {
                                        state: "default" 0.0;
-                                       min: 1 CTXPOPUP_ITEM_HEIGHT_MIN_INC;
-                                       align: 0.5 0.5;
-                                       rel1 {relative: 1.0 0.0; to_x: "left_padding"; to_y: "bg";}
-                                       rel2 {relative: 0.0 1.0; to_x: "right_padding"; to_y: "bg";}
-                                       color: CTXPOPUP_LIST_MAIN_TEXT_COLOR_INC;
-                                       text {
-                                               font: "Tizen:style=Roman";
-                                               size: CTXPOPUP_LIST_MAIN_TEXT_SIZE_INC;
-                                               align: 0 0.5;
-                                               min: 1 1;
-                                               text_class: "list_item";
-                                       }
-                               }
-                               description {
-                                       state: "compress" 0.0;
-                                       inherit: "default" 0.0;
-                                       max: -1 -1;
-                                       text {
-                                               min: 0 1;
-                                       }
-                               }
-                               description {
-                                       state: "clicked" 0.0;
-                                       inherit: "default" 0.0;
-                                       color: CTXPOPUP_LIST_MAIN_TEXT_PRESS_COLOR_INC;
-                               }
-                               description {
-                                       state: "disabled" 0.0;
-                                       inherit: "default" 0.0;
-                                       color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
-                               }
-                               description {
-                                       state: "compress_disabled" 0.0;
-                                       inherit: "compress" 0.0;
-                                       color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
-                               }
-                       }
-                       part {
-                               name: "right_padding";
-                               type: RECT;
-                               scale: 1;
-                               mouse_events: 0;
-                               description {
-                                       state: "default" 0.0;
-                                       visible: 0;
-                                       min: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MIN_INC;
-                                       max: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MAX_INC;
                                        fixed: 1 1;
-                                       align: 1.0 1.0;
-                               }
-                       }
-                       part {
-                               name: "over1";
-                               mouse_events: 1;
-                               repeat_events: 1;
-                               description {
-                                       state: "default" 0.0;
-                               }
-                       }
-                       part {
-                               name: "over2";
-                               type: RECT;
-                               mouse_events: 1;
-                               repeat_events: 1;
-                               dragable {
-                                       x: 0 0 0;
-                                       y: 1 1 0;
-                               }
-                               description {
-                                       state: "default" 0.0;
-                                       rel1.to:"bg";
-                                       rel2.to:"bg";
-                                       color: 0 0 0 0;
-                               }
-                       }
-                       part {
-                               name: "disclip";
-                               type: RECT;
-                               description {
-                                       state: "default" 0.0;
-                                       visible: 0;
-                               }
-                               description {
-                                       state: "disabled" 0.0;
-                                       visible: 1;
-                                       color: CTXPOPUP_ITEM_DISABLED_COLOR;
+                                       min: CTXPOPUP_SCROLLER_H_MIN_SIZE_INC;
+                                       rel1 {relative: 0.5  0.5; to: "sb_hbar";}
+                                       rel2 {relative: 0.5  0.5; to: "sb_hbar";}
+                                       image {
+                                               normal: "00_popup_scroll_h.png";
+                                               border: 8 8 0 0;
+                                               border_scale: 1;
+                                       }
                                }
                        }
                }
                programs {
                        program {
-                               name: "item_unclick";
-                               signal: "mouse,clicked,1";
-                               source: "over1";
-                               action: SIGNAL_EMIT "elm,action,click" "";
+                               name: "load";
+                               signal: "load";
+                               source: "";
+                               script {
+                                       set_state(PART:"sb_vbar_clip", "hidden", 0.0);
+                                       set_state(PART:"sb_hbar_clip", "hidden", 0.0);
+                                       set_int(sbvis_v, 0);
+                                       set_int(sbvis_h, 0);
+                                       set_int(sbalways_v, 0);
+                                       set_int(sbalways_h, 0);
+                                       set_int(sbvis_timer, 0);
+                                       emit("reload", "elm");
+                               }
                        }
                        program {
-                               name: "disable";
-                               signal: "elm,state,disabled";
+                               name: "vbar_show";
+                               signal: "elm,action,show,vbar";
                                source: "elm";
-                               script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "disabled", 0.0);
-
-                                       set_state(PART:"disclip", "disabled", 0.0);
-                               }
+                               action: STATE_SET "default" 0.0;
+                               target: "sb_vbar_clip_master";
                        }
                        program {
-                               name: "enable";
-                               signal: "elm,state,enabled";
+                               name: "vbar_hide";
+                               signal: "elm,action,hide,vbar";
                                source: "elm";
-                               script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "default", 0.0);
-
-                                       set_state(PART:"disclip", "default", 0.0);
-                               }
+                               action:  STATE_SET "hidden" 0.0;
+                               target: "sb_vbar_clip_master";
                        }
                        program {
-                               name: "default";
-                               signal: "elm,state,default";
+                               name: "vbar_show_always";
+                               signal: "elm,action,show_always,vbar";
                                source: "elm";
                                script {
-                                       set_state(PART:"separator1", "default", 0.0);
-                                       set_state(PART:"separator2", "default", 0.0);
+                                       new v;
+                                       v = get_int(sbvis_v);
+                                       v |= get_int(sbalways_v);
+                                       if (!v) {
+                                               set_int(sbalways_v, 1);
+                                               emit("do-show-vbar", "");
+                                               set_int(sbvis_v, 1);
+                                       }
                                }
                        }
                        program {
-                               name: "compress";
-                               signal: "elm,state,compress";
+                               name: "vbar_show_notalways";
+                               signal: "elm,action,show_notalways,vbar";
                                source: "elm";
                                script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"disclip", st, 30, vl);
-                                       if (!strcmp(st, "disabled"))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "compress", 0.0);
+                                       new v;
+                                       v = get_int(sbalways_v);
+                                       if (v) {
+                                               set_int(sbalways_v, 0);
+                                               v = get_int(sbvis_v);
+                                               if (!v) {
+                                                       emit("do-hide-vbar", "");
+                                               set_int(sbvis_v, 0);
+                                               }
+                                       }
                                }
                        }
                        program {
-                               name: "separator";
-                               signal: "elm,state,separator";
+                               name: "sb_vbar_show";
+                               signal: "do-show-vbar";
+                               source: "";
+                               action:  STATE_SET "default" 0.0;
+                               transition: LINEAR 1.0;
+                               target: "sb_vbar_clip";
+                       }
+                       program {
+                               name: "sb_vbar_hide";
+                               signal: "do-hide-vbar";
+                               source: "";
+                               action:  STATE_SET "hidden" 0.0;
+                               transition: LINEAR 1.0;
+                               target: "sb_vbar_clip";
+                       }
+                       program {
+                               name: "hbar_show";
+                               signal: "elm,action,show,hbar";
                                source: "elm";
-                               script {
-                                       set_state(PART:"separator1", "visible", 0.0);
-                                       set_state(PART:"separator2", "visible", 0.0);
-                               }
+                               action:  STATE_SET "default" 0.0;
+                               target: "sb_hbar_clip_master";
                        }
                        program {
-                               name: "item_click2";
-                               signal: "mouse,down,1";
-                               source: "over2";
-                               script {
-                                       set_state(PART:"elm.text", "clicked", 0.0);
-
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"separator2", st, 30, vl);
-                                       if (!strcmp(st, "default"))
-                                               set_state(PART:"bg", "clicked", 0.0);
-                                       else
-                                               set_state(PART:"bg", "clicked_separator", 0.0);
-                               }
+                               name: "hbar_hide";
+                               signal: "elm,action,hide,hbar";
+                               source: "elm";
+                               action:  STATE_SET "hidden" 0.0;
+                               target: "sb_hbar_clip_master";
                        }
                        program {
-                               name: "drag";
-                               signal: "drag";
-                               source: "over2";
+                               name: "hbar_show_always";
+                               signal: "elm,action,show_always,hbar";
+                               source: "elm";
                                script {
-                                       new Float:dx, Float:dy;
-                                       get_drag(PART:"over2", dx, dy);
-                                       if (abs(dy) > 20)
-                                               {
-                                                       set_drag(PART:"over2", 0.0, 0.0);
-                                                       set_state(PART:"elm.text", "compress", 0.0);
-                                                       set_state(PART:"bg", "default", 0.0);
-                                               }
-                                       set_drag(PART:"over2", 0.0, 0.0);
+                                       new v;
+                                       v = get_int(sbvis_h);
+                                       v |= get_int(sbalways_h);
+                                       if (!v) {
+                                               set_int(sbalways_h, 1);
+                                               emit("do-show-hbar", "");
+                                               set_int(sbvis_h, 1);
+                                       }
                                }
                        }
                        program {
-                               name: "item_unclick2";
-                               signal: "mouse,up,1";
-                               source: "over2";
+                               name: "hbar_show_notalways";
+                               signal: "elm,action,show_notalways,hbar";
+                               source: "elm";
                                script {
-                                       set_drag(PART:"over2", 0.0, 0.0);
-                                       set_state(PART:"elm.text", "compress", 0.0);
-                                       set_state(PART:"bg", "default", 0.0);
+                                       new v;
+                                       v = get_int(sbalways_h);
+                                       if (v) {
+                                               set_int(sbalways_h, 0);
+                                               v = get_int(sbvis_h);
+                                               if (!v) {
+                                                       emit("do-hide-hbar", "");
+                                                       set_int(sbvis_h, 0);
+                                               }
+                                       }
                                }
                        }
-               }
-       }
-///////////////////////////////////////////////////////////////////////////////
-       group {
-               name: "elm/ctxpopup/text_style_item_horizontal/default";
-               parts {
-                       part {
-                               name: "event_blocker";
-                               mouse_events: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       color: 0 0 0 0;
-                               }
+                       program {
+                               name: "sb_hbar_show";
+                               signal: "do-show-hbar";
+                               source: "";
+                               action:  STATE_SET "default" 0.0;
+                               transition: LINEAR 1.0;
+                               target: "sb_hbar_clip";
                        }
-                       part {
-                               name: "bg";
-                               mouse_events: 0;
-                               type: RECT;
-                               description {
-                                       state: "default" 0.0;
-                                       color: CTXPOPUP_BG_COLOR_INC;
-                                       visible: 1;
-                                       min: CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
-                               }
-                               description {
-                                       state: "clicked" 0.0;
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
-                                       visible: 1;
-                               }
-                               description {
-                                       state: "clicked_separator" 0.0;
-                                       rel1 { relative: 1.0 0.0; to_x: "separator2"; }
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
-                                       visible: 1;
+                       program {
+                               name: "sb_hbar_hide";
+                               signal: "do-hide-hbar";
+                               source: "";
+                               action:  STATE_SET "hidden" 0.0;
+                               transition: LINEAR 1.0;
+                               target: "sb_hbar_clip";
+                       }
+                       program {
+                               name: "scroll";
+                               signal: "elm,action,scroll";
+                               source: "elm";
+                               action:  STATE_SET "default" 0.0;
+                               script {
+                                       new v;
+                                       v = get_int(sbvis_v);
+                                       v |= get_int(sbalways_v);
+                                       if (!v) {
+                                               emit("do-show-vbar", "");
+                                               set_int(sbvis_v, 1);
+                                       }
+                                       v = get_int(sbvis_h);
+                                       v |= get_int(sbalways_h);
+                                       if(!v) {
+                                               emit("do-show-hbar", "");
+                                               set_int(sbvis_h, 1);
+                                       }
+                                       v = get_int(sbvis_timer);
+                                       if (v > 0) cancel_timer(v);
+                                       v = timer(2.0, "timer0", 0);
+                                       set_int(sbvis_timer, v);
                                }
                        }
+               }
+       }
+///////////////////////////////////////////////////////////////////////////////
+       group {
+               name: "elm/ctxpopup/bg/timepicker";
+               alias: "elm/ctxpopup/bg/datetime/default";
+               parts {
                        part {
-                               name: "separator1";
-                               mouse_events: 0;
+                               name: "bg";
                                type: RECT;
-                               scale: 1;
+                               repeat_events: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_HORIZONTAL_SEPARATOR_1_COLOR_INC;
-                                       align: 0 0.5;
-                                       min: CTXPOPUP_HORIZONTAL_SEPARATOR_MIN_SIZE_INC;
-                                       max: CTXPOPUP_HORIZONTAL_SEPARATOR_MAX_SIZE_INC;
                                        visible: 0;
                                }
                                description {
                                        state: "visible" 0.0;
-                                       inherit: "default" 0.0;
+                                       color: 0 0 0 0;
                                        visible: 1;
                                }
                        }
+               }
+               programs {
+                       program {
+                               name:   "clicked_event";
+                               signal: "mouse,clicked,1";
+                               source: "bg";
+                               action: SIGNAL_EMIT "elm,action,click" "";
+                       }
+                       program {
+                               name: "show";
+                               signal: "elm,state,show";
+                               source: "elm";
+                               action: STATE_SET "visible" 0.0;
+                               target: "bg";
+                       }
+                       program {
+                               name: "hide";
+                               signal: "elm,state,hide";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "bg";
+                       }
+               }
+       }
+///////////////////////////////////////////////////////////////////////////////
+       group {
+               name: "elm/ctxpopup/bg/default";
+               parts {
                        part {
-                               name: "separator2";
-                               mouse_events: 0;
+                               name: "bg";
                                type: RECT;
-                               scale: 1;
+                               mouse_events: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_HORIZONTAL_SEPARATOR_2_COLOR_INC;
-                                       rel1 { relative: 1.0 0.0; to: "separator1"; to_y: "bg";}
-                                       align: 0 0.5;
-                                       min: CTXPOPUP_HORIZONTAL_SEPARATOR_MIN_SIZE_INC;
-                                       max: CTXPOPUP_HORIZONTAL_SEPARATOR_MAX_SIZE_INC;
                                        visible: 0;
                                }
                                description {
                                        state: "visible" 0.0;
-                                       inherit: "default" 0.0;
+                                       color: 0 0 0 0;
+                                       min: 1280 1280;
+                                       align: 0.0 0.0;
                                        visible: 1;
                                }
                        }
+               }
+               programs {
+                       program {
+                               name:   "clicked_event";
+                               signal: "mouse,clicked,1";
+                               source: "bg";
+                               action: SIGNAL_EMIT "elm,action,click" "";
+                       }
+                       program {
+                               name: "show";
+                               signal: "elm,state,show";
+                               source: "elm";
+                               action: STATE_SET "visible" 0.0;
+                               target: "bg";
+                       }
+                       program {
+                               name: "hide";
+                               signal: "elm,state,hide";
+                               source: "elm";
+                               action: STATE_SET "default" 0.0;
+                               target: "bg";
+                       }
+               }
+       }
+
+group {
+               name: "elm/ctxpopup/bg/copypaste";
+               inherit: "elm/ctxpopup/bg/default";
+               parts {
+                       part {
+                               name: "bg";
+                               repeat_events: 1;
+                       }
+               }
+       }
+
+///////////////////////////////////////////////////////////////////////////////
+       group {
+               name: "elm/ctxpopup/base/default";
+               alias: "elm/ctxpopup/base/copypaste";
+               images {
+                       image: "00_popup_bubble_bg.png" COMP;
+               }
+               parts {
                        part {
-                               name: "left_padding";
-                               type: RECT;
+                               name:"frame_shadow_left_top_padding";
+                               type:RECT;
                                scale: 1;
                                mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_ITEM_ICON_PADDING_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
-                                       max: CTXPOPUP_ITEM_ICON_PADDING_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       min: CTXPOPUP_SHADOW_LEFT_PADDING CTXPOPUP_SHADOW_TOP_PADDING;
+                                       max: CTXPOPUP_SHADOW_LEFT_PADDING CTXPOPUP_SHADOW_TOP_PADDING;
+                                       rel2 { relative: 0 0; }
                                        align: 0 0;
-                                       color: 255 0 0 255;
                                        fixed: 1 1;
                                        visible: 0;
                                }
                        }
                        part {
-                               name: "elm.text";
-                               type: TEXT;
-                               mouse_events: 0;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: (CTXPOPUP_TEXT_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ITEM_ICON_PADDING_INC*2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
-                                       align: 0.5 0.5;
-                                       rel1 {relative: 1.0 0.0; to: "left_padding"; }
-                                       rel2 {relative: 0.0 1.0; to: "right_padding"; }
-                                       color: CTXPOPUP_MAIN_TEXT_COLOR_INC;
-                                       text {
-                                               font: "Tizen:style=Roman";
-                                               size: CTXPOPUP_MAIN_TEXT_SIZE_INC;
-                                               align: 0.5 0.5;
-                                               min: 1 1;
-                                               text_class: "list_item";
-                                       }
-                               }
-                               description {
-                                       state: "compress" 0.0;
-                                       inherit: "default" 0.0;
-                                       max: -1 -1;
-                                       text {
-                                               min: 0 1;
-                                       }
-                               }
-                               description {
-                                       state: "clicked" 0.0;
-                                       inherit: "default" 0.0;
-                                       color: CTXPOPUP_MAIN_TEXT_PRESS_COLOR_INC;
-                               }
-                               description {
-                                       state: "disabled" 0.0;
-                                       inherit: "default" 0.0;
-                                       color: CTXPOPUP_MAIN_TEXT_DIM_COLOR_INC;
-                               }
-                               description {
-                                       state: "compress_disabled" 0.0;
-                                       inherit: "compress" 0.0;
-                                       color: CTXPOPUP_MAIN_TEXT_DIM_COLOR_INC;
-                               }
-                       }
-                       part {
-                               name: "right_padding";
-                               type: RECT;
+                               name:"frame_shadow_right_bottom_padding";
+                               type:RECT;
                                scale: 1;
                                mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_ITEM_ICON_PADDING_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
-                                       max: CTXPOPUP_ITEM_ICON_PADDING_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
-                                       fixed: 1 1;
+                                       min: CTXPOPUP_SHADOW_RIGHT_PADDING CTXPOPUP_SHADOW_BOTTOM_PADDING;
+                                       max: CTXPOPUP_SHADOW_RIGHT_PADDING CTXPOPUP_SHADOW_BOTTOM_PADDING;
+                                       rel1{relative: 1 1;}
                                        align: 1 1;
-                                       color: 0 255 0 255;
+                                       fixed: 1 1;
                                        visible: 0;
                                }
                        }
                        part {
-                               name: "over1";
-                               mouse_events: 1;
-                               repeat_events: 1;
+                               name: "frame_bg";
+                               type: IMAGE;
+                               scale: 1;
+                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
+                                       rel1 {to:"frame_shadow_left_top_padding";}
+                                       rel2 {to:"frame_shadow_right_bottom_padding";}
+                                       min: (CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC + CTXPOPUP_SHADOW_LEFT_PADDING + CTXPOPUP_SHADOW_RIGHT_PADDING) 0;
+                                       image {
+                                               normal: "00_popup_bubble_bg.png";
+                                               border: CTXPOPUP_BUBBLE_BG_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
                                }
                        }
-                       part {
-                               name: "over2";
+                       part { name: "arrow_area_left";
                                type: RECT;
-                               mouse_events: 1;
-                               repeat_events: 1;
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 0 0 0;
-                               }
-                               description {
-                                       state: "default" 0.0;
-                                       rel1.to:"bg";
-                                       rel2.to:"bg";
-                                       color: 0 0 0 0;
+                               mouse_events: 0;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       visible: 0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 1 0.5;
+                                       rel1 {
+                                               relative: 1 1;
+                                               to_x:"arrow_left_top_padding";
+                                               to_y: "ctxpopup_frame_left_top";
+                                       }
+                                       rel2 {
+                                               relative: 1 0;
+                                               to_x:"arrow_left_top_padding";
+                                               to_y:"ctxpopup_frame_right_bottom";
+                                       }
                                }
                        }
-                       part {
-                               name: "disclip";
+                       part { name: "arrow_area_right";
                                type: RECT;
-                               description {
-                                       state: "default" 0.0;
+                               mouse_events: 0;
+                               scale: 1;
+                               description { state: "default" 0.0;
                                        visible: 0;
-                               }
-                               description {
-                                       state: "disabled" 0.0;
-                                       visible: 1;
-                                       color: CTXPOPUP_ITEM_DISABLED_COLOR;
-                               }
-                       }
-               }
-               programs {
-                       program {
-                               name: "item_unclick";
-                               signal: "mouse,clicked,1";
-                               source: "over1";
-                               action: SIGNAL_EMIT "elm,action,click" "";
-                       }
-                       program {
-                               name: "disable";
-                               signal: "elm,state,disabled";
-                               source: "elm";
-                               script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "disabled", 0.0);
-
-                                       set_state(PART:"disclip", "disabled", 0.0);
-                               }
-                       }
-                       program {
-                               name: "enable";
-                               signal: "elm,state,enabled";
-                               source: "elm";
-                               script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "default", 0.0);
-
-                                       set_state(PART:"disclip", "default", 0.0);
-                               }
-                       }
-                       program {
-                               name: "default";
-                               signal: "elm,state,default";
-                               source: "elm";
-                               script {
-                                       set_state(PART:"separator1", "default", 0.0);
-                                       set_state(PART:"separator2", "default", 0.0);
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 0 0.5;
+                                       rel1 {
+                                               relative: 0 1;
+                                               to_x:"arrow_right_bottom_padding";
+                                               to_y:"ctxpopup_frame_left_top";
+                                       }
+                                       rel2 {
+                                               relative: 0 0;
+                                               to_x:"arrow_right_bottom_padding";
+                                               to_y: "ctxpopup_frame_right_bottom";
+                                       }
                                }
                        }
-                       program {
-                               name: "compress";
-                               signal: "elm,state,compress";
-                               source: "elm";
-                               script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"disclip", st, 30, vl);
-                                       if (!strcmp(st, "disabled"))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "compress", 0.0);
+                       part { name: "arrow_area_up";
+                               type: RECT;
+                               mouse_events: 0;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       visible: 0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 0.5 1;
+                                       rel1 {
+                                               relative: 1 1;
+                                               to_x: "ctxpopup_frame_left_top";
+                                               to_y: "arrow_left_top_padding";
+                                       }
+                                       rel2 {
+                                               relative: 0 1;
+                                               to_x:"ctxpopup_frame_right_bottom";
+                                               to_y: "arrow_left_top_padding";
+                                       }
                                }
                        }
-                       program {
-                               name: "separator";
-                               signal: "elm,state,separator";
-                               source: "elm";
-                               script {
-                                       set_state(PART:"separator1", "visible", 0.0);
-                                       set_state(PART:"separator2", "visible", 0.0);
+                       part { name: "arrow_area_down";
+                               type: RECT;
+                               mouse_events: 0;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       visible: 0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 0.5 0;
+                                       rel1 {
+                                               relative: 1 0;
+                                               to_x:"ctxpopup_frame_left_top";
+                                               to_y:"arrow_right_bottom_padding";
+                                       }
+                                       rel2 {
+                                               relative: 0 0;
+                                               to_x: "ctxpopup_frame_right_bottom";
+                                               to_y:"arrow_right_bottom_padding";
+                                       }
                                }
                        }
-                       program {
-                               name: "item_click2";
-                               signal: "mouse,down,1";
-                               source: "over2";
-                               script {
-                                       set_state(PART:"elm.text", "clicked", 0.0);
-
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"separator2", st, 30, vl);
-                                       if (!strcmp(st, "default"))
-                                               set_state(PART:"bg", "clicked", 0.0);
-                                       else
-                                               set_state(PART:"bg", "clicked_separator", 0.0);
+                       part { name: "elm.swallow.arrow_up";
+                               type: SWALLOW;
+                               mouse_events: 0;
+                               scale: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                                       confine: "arrow_area_up";
                                }
-                       }
-                       program {
-                               name: "drag";
-                               signal: "drag";
-                               source: "over2";
-                               script {
-                                       new Float:dx, Float:dy;
-                                       get_drag(PART:"over2", dx, dy);
-                                       if (abs(dx) > 20)
-                                               {
-                                                       set_drag(PART:"over2", 0.0, 0.0);
-                                                       set_state(PART:"elm.text", "compress", 0.0);
-                                                       set_state(PART:"bg", "default", 0.0);
-                                               }
-                                       set_drag(PART:"over2", 0.0, 0.0);
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       visible: 1;
                                }
                        }
-                       program {
-                               name: "item_unclick2";
-                               signal: "mouse,up,1";
-                               source: "over2";
-                               script {
-                                       set_drag(PART:"over2", 0.0, 0.0);
-                                       set_state(PART:"elm.text", "compress", 0.0);
-                                       set_state(PART:"bg", "default", 0.0);
+                       part { name: "elm.swallow.arrow_down";
+                               type: SWALLOW;
+                               mouse_events: 0;
+                               scale: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                                       confine: "arrow_area_down";
                                }
-                       }
-               }
-       }
-///////////////////////////////////////////////////////////////////////////////
-       group {
-               name: "elm/ctxpopup/icon_style_item/default";
-               parts {
-                       part {
-                               name: "event_blocker";
-                               mouse_events: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: 0 0 0 0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       visible: 1;
                                }
                        }
-                       part {
-                               name: "bg";
-                               scale: 1;
+                       part { name: "elm.swallow.arrow_left";
+                               type: SWALLOW;
                                mouse_events: 0;
-                               type: RECT;
+                               scale: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                                       confine: "arrow_area_left";
+                               }
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_BG_COLOR_INC;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
                                        visible: 1;
-                                       min: CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
-                                       max: CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
                                }
-                               description {
-                                       state: "clicked" 0.0;
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
-                                       visible: 1;
+                       }
+                       part { name: "elm.swallow.arrow_right";
+                               type: SWALLOW;
+                               mouse_events: 0;
+                               scale: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                                       confine: "arrow_area_right";
                                }
                                description {
-                                       state: "clicked_separator" 0.0;
-                                       rel1 { relative: 1.0 0.0; to_x: "separator2"; }
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
                                        visible: 1;
                                }
                        }
                        part {
-                               name: "left_padding";
+                               name: "ctxpopup_frame_left_top";
+                               type: RECT;
                                scale: 1;
                                description {
-                                       min: ((CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC)/2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
-                                       max: ((CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC)/2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       state: "default" 0.0;
                                        visible: 0;
                                        align: 0 0;
                                        fixed: 1 1;
+                                       min: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
+                                       max: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
+                                       rel1 {relative: 0 0; to: "content_left_top_padding";}
                                }
                        }
                        part {
-                               name: "separator1";
-                               mouse_events: 0;
+                               name: "ctxpopup_frame_right_bottom";
                                type: RECT;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_SEPARATOR_COLOR_INC;
-                                       align: 0 0.5;
-                                       min: CTXPOPUP_HORIZONTAL_SEPARATOR_MIN_SIZE_INC;
-                                       max: CTXPOPUP_HORIZONTAL_SEPARATOR_MAX_SIZE_INC;
                                        visible: 0;
-                               }
-                               description {
-                                       state: "visible" 0.0;
-                                       inherit: "default" 0.0;
-                                       visible: 1;
+                                       align: 1 1;
+                                       fixed: 1 1;
+                                       min: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
+                                       max: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
+                                       rel2 {relative: 1 1; to: "content_right_bottom_padding";}
                                }
                        }
                        part {
-                               name: "separator2";
-                               mouse_events: 0;
-                               type: RECT;
+                               name:"content_left_top_padding";
+                               type:RECT;
                                scale: 1;
+                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_SEPARATOR2_COLOR_INC;
-                                       rel1 { relative: 1.0 0.0; to_x: "separator1"; }
-                                       align: 0 0.5;
-                                       min: CTXPOPUP_HORIZONTAL_SEPARATOR_MIN_SIZE_INC;
-                                       max: CTXPOPUP_HORIZONTAL_SEPARATOR_MAX_SIZE_INC;
+                                       min: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
+                                       max: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
+                                       rel1 {to:"frame_shadow_left_top_padding";  relative: 1.0 1.0;}
+                                       align: 0 0;
+                                       fixed: 1 1;
                                        visible: 0;
                                }
-                               description {
-                                       state: "visible" 0.0;
-                                       inherit: "default" 0.0;
-                                       visible: 1;
-                               }
                        }
                        part {
-                               name: "elm.swallow.icon";
-                               type: SWALLOW;
+                               name:"content_right_bottom_padding";
+                               type:RECT;
                                scale: 1;
+                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC CTXPOPUP_ICON_HORIZONTAL_HEIGHT_INC;
-                                       max: CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC CTXPOPUP_ICON_HORIZONTAL_HEIGHT_INC;
-                                       align: 0.5 0.5;
-                                       aspect: 1.0 1.0;
-                                       rel1 { relative: 1 0; to_x: "left_padding"; }
-                                       rel2 { relative: 0 1; to_x: "right_padding"; }
+                                       min: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
+                                       max: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
+                                       rel2 {to:"frame_shadow_right_bottom_padding";  relative: 0.0 0.0;}
+                                       align: 1 1;
+                                       fixed: 1 1;
+                                       visible: 0;
                                }
                        }
                        part {
-                               name: "right_padding";
-                               scale: 1;
+                               name: "arrow_left_top_padding";
+                               type: RECT;
+                               mouse_events: 0;
                                description {
-                                       min: ((CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC)/2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
-                                       max: ((CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC)/2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_PADDING CTXPOPUP_ARROW_PADDING;
+                                       max: CTXPOPUP_ARROW_PADDING CTXPOPUP_ARROW_PADDING;
+                                       rel1 {to:"frame_shadow_left_top_padding";  relative: 1.0 1.0;}
+                                       align: 0 0;
                                        visible: 0;
-                                       align: 1 1;
-                                       fixed: 1 1;
                                }
                        }
                        part {
-                               name: "over1";
-                               mouse_events: 1;
-                               repeat_events: 1;
+                               name: "arrow_right_bottom_padding";
+                               type: RECT;
+                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_PADDING CTXPOPUP_ARROW_PADDING;
+                                       max: CTXPOPUP_ARROW_PADDING CTXPOPUP_ARROW_PADDING;
+                                       rel2 {to:"frame_shadow_right_bottom_padding";  relative: 0.0 0.0;}
+                                       align: 1 1;
+                                       visible: 0;
                                }
                        }
                        part {
-                               name: "over2";
-                               type: RECT;
-                               mouse_events: 1;
-                               repeat_events: 1;
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 0 0 0;
-                               }
+                               name: "elm.swallow.content";
+                               type: SWALLOW;
                                description {
                                        state: "default" 0.0;
-                                       rel1.to:"bg";
-                                       rel2.to:"bg";
+                                       align: 0 0;
+                                       rel1 {to:"content_left_top_padding";  relative: 1.0 1.0;}
+                                       rel2 {to:"content_right_bottom_padding";  relative: 0.0 0.0;}
+                               }
+                       }
+                       part { name: "access.outline";
+                               type: RECT;
+                               repeat_events: 1;
+                               description { state: "default" 0.0;
+                                       fixed: 1 1;
+                                       rel1.to: "frame_bg";
+                                       rel2.to: "frame_bg";
                                        color: 0 0 0 0;
                                }
                        }
+               }
+       }
+
+///////////////////////////////////////////////////////////////////////////////
+       group { name: "elm/ctxpopup/arrow/default";
+               alias: "elm/ctxpopup/arrow/more/default";
+               images {
+                       image: "00_popup_bubble_tail_left.png" COMP;
+                       image: "00_popup_bubble_tail_right.png" COMP;
+                       image: "00_popup_bubble_tail_top.png" COMP;
+                       image: "00_popup_bubble_tail_bottom.png" COMP;
+               }
+               parts {
                        part {
-                               name: "disclip";
-                               type: RECT;
+                               name: "ctxpopup_arrow";
+                               type: IMAGE;
+                               scale: 1;
                                description {
                                        state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       max: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
                                        visible: 0;
+                                       align: 0.5 0.5;
                                }
                                description {
-                                       state: "disabled" 0.0;
-                                       visible: 1;
-                                       color: CTXPOPUP_ITEM_DISABLED_COLOR;
+                                       state: "left" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       max: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 1.0 0.5;
+                                       image {
+                                               normal: "00_popup_bubble_tail_left.png";
+                                       }
+                               }
+                               description {
+                                       state: "right" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       max: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 0.0 0.5;
+                                       image {
+                                               normal: "00_popup_bubble_tail_right.png";
+                                       }
+                               }
+                               description {
+                                       state: "top" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       max: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 0.5 1.0;
+                                       image {
+                                               normal: "00_popup_bubble_tail_top.png";
+                                       }
+                               }
+                               description {
+                                       state: "bottom" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       max: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 0.5 0.0;
+                                       image {
+                                               normal: "00_popup_bubble_tail_bottom.png";
+                                       }
                                }
                        }
                }
                programs {
                        program {
-                               name: "default";
-                               signal: "elm,state,default";
+                               name: "enable_left_arrow";
+                               signal: "elm,state,left";
                                source: "elm";
-                               script {
-                                       set_state(PART:"separator1", "default", 0.0);
-                                       set_state(PART:"separator2", "default", 0.0);
-                               }
+                               action: STATE_SET "left" 0.0;
+                               target: "ctxpopup_arrow";
                        }
                        program {
-                               name: "separator";
-                               signal: "elm,state,separator";
+                               name: "enable_right_arrow";
+                               signal: "elm,state,right";
                                source: "elm";
-                               script {
-                                       set_state(PART:"separator1", "visible", 0.0);
-                                       set_state(PART:"separator2", "visible", 0.0);
-                               }
-                       }
-                       program {
-                               name: "item_unclick";
-                               signal: "mouse,clicked,1";
-                               source: "over1";
-                               action: SIGNAL_EMIT "elm,action,click" "";
+                               action: STATE_SET "right" 0.0;
+                               target: "ctxpopup_arrow";
                        }
                        program {
-                               name: "disable";
-                               signal: "elm,state,disabled";
+                               name: "enable_top_arrow";
+                               signal: "elm,state,top";
                                source: "elm";
-                               action: STATE_SET "disabled" 0.0;
-                               target: "disclip";
+                               action: STATE_SET "top" 0.0;
+                               target: "ctxpopup_arrow";
                        }
                        program {
-                               name: "enable";
-                               signal: "elm,state,enabled";
+                               name: "enable_bottom_arrow";
+                               signal: "elm,state,bottom";
                                source: "elm";
-                               action: STATE_SET "default" 0.0;
-                               target: "disclip";
-                       }
-                       program {
-                               name: "item_click2";
-                               signal: "mouse,down,1";
-                               source: "over2";
-                               script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"separator2", st, 30, vl);
-                                       if (!strcmp(st, "default"))
-                                               set_state(PART:"bg", "clicked", 0.0);
-                                       else
-                                               set_state(PART:"bg", "clicked_separator", 0.0);
-                               }
-                       }
-                       program {
-                               name: "drag";
-                               signal: "drag";
-                               source: "over2";
-                               script {
-                                       new Float:dx, Float:dy;
-                                       get_drag(PART:"over2", dx, dy);
-                                       if (abs(dx) > 20)
-                                               {
-                                                       set_drag(PART:"over2", 0.0, 0.0);
-                                                       set_state(PART:"bg", "default", 0.0);
-                                               }
-                                       set_drag(PART:"over2", 0.0, 0.0);
-                               }
-                       }
-                       program {
-                               name: "item_unclick2";
-                               signal: "mouse,up,1";
-                               source: "over2";
-                               script {
-                                       set_drag(PART:"over2", 0.0, 0.0);
-                                       set_state(PART:"bg", "default", 0.0);
-                               }
+                               action: STATE_SET "bottom" 0.0;
+                               target: "ctxpopup_arrow";
                        }
                }
        }
 ///////////////////////////////////////////////////////////////////////////////
        group {
-               name: "elm/ctxpopup/icon_text_style_item/default";
+               name: "elm/ctxpopup/text_style_item/default";
+
+               images {
+                       image: "00_more_popup_press.png" COMP;
+               }
+
+               data.item: "item_max_size" CTXPOPUP_TEXT_MAX_INC;
+
                parts {
                        part {
                                name: "event_blocker";
+                               type: RECT;
                                mouse_events: 1;
                                description {
                                        state: "default" 0.0;
+                                       color: 0 0 0 0;
                                }
                        }
                        part {
                                name: "bg";
                                mouse_events: 0;
-                               type: RECT;
+                               type: IMAGE;
+                               scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_BG_COLOR_INC;
-                                       visible: 1;
+                                       visible: 0;
+                                       min: (CTXPOPUP_WIDTH_MIN_INC-CTXPOPUP_CONTENT_PADDING*2) 1;
+                                       max: (CTXPOPUP_WIDTH_MAX_INC-CTXPOPUP_CONTENT_PADDING*2) CTXPOPUP_ITEM_HEIGHT_MAX_INC;
                                }
                                description {
                                        state: "clicked" 0.0;
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
+                                       inherit: "default" 0.0;
                                        visible: 1;
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
                                }
                                description {
                                        state: "clicked_separator" 0.0;
-                                       rel1 { relative: 0.0 1.0; to_y: "separator2"; }
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
+                                       inherit: "default" 0.0;
                                        visible: 1;
+                                       rel1 { relative: 0.0 1.0; to_y: "separator2"; }
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
                                }
                        }
                        part {
-                               name:"separator_left_padding";
-                               type:RECT;
-                               scale: 1;
+                               name: "separator1";
                                mouse_events: 0;
+                               type: RECT;
+                               scale: 1;
                                description {
-                                       min: (CTXPOPUP_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
-                                       max: (CTXPOPUP_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
-                                       align: 0 0;
-                                       fixed: 1 1;
+                                       state: "default" 0.0;
+                                       color: CTXPOPUP_SEPARATOR_COLOR_INC;
+                                       rel1 { relative: 1.0 0.0; to_x: "left_padding";}
+                                       rel2 { relative: 0.0 1.0; to_x: "right_padding"; offset: 0 0; }
+                                       align: 0.5 0;
+                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
                                        visible: 0;
                                }
-                       }
-                       part {
-                               name:"separator_right_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
                                description {
-                                       min: (CTXPOPUP_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
-                                       max: (CTXPOPUP_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
-                                       align: 1 1;
-                                       fixed: 1 1;
-                                       visible: 0;
-                               }
-                       }
-                       part {
-                               name: "icon_left_padding";
-                               scale: 1;
-                               mouse_events: 0;
-                               description {
-                                       state: "default" 0.0;
-                                       min: (CTXPOPUP_ITEM_ICON_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MIN_INC;
-                                       max: (CTXPOPUP_ITEM_ICON_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MAX_INC;
-                                       align: 0 0;
-                                       fixed: 1 1;
-                                       visible: 0;
-                               }
-                       }
-                       part {
-                               name: "separator1";
-                               mouse_events: 0;
-                               type: RECT;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       color: CTXPOPUP_SEPARATOR_COLOR_INC;
-                                       rel1 { relative: 1.0 0.0; to_x: "separator_left_padding";}
-                                       rel2 { relative: 0.0 1.0; to_x: "separator_right_padding";}
-                                       align: 0.5 0;
-                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
-                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
-                                       visible: 0;
-                               }
-                               description {
-                                       state: "visible" 0.0;
-                                       inherit: "default" 0.0;
-                                       visible: 1;
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible: 1;
                                }
                        }
                        part {
                                        state: "default" 0.0;
                                        color: CTXPOPUP_SEPARATOR2_COLOR_INC;
                                        rel1 { relative: 0.0 1.0; to: "separator1";}
-                                       rel2 { relative: 1.0 1.0; to: "separator1";}
+                                       rel2 { relative: 1.0 1.0; to: "separator1"; offset: 0 0; }
                                        align: 0.5 0;
                                        fixed: 0 1;
                                        min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
                                }
                        }
                        part {
-                               name: "elm.swallow.icon";
-                               type: SWALLOW;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: CTXPOPUP_ICON_WIDTH_INC CTXPOPUP_ICON_HEIGHT_INC;
-                                       max: CTXPOPUP_ICON_WIDTH_INC CTXPOPUP_ICON_HEIGHT_INC;
-                                       align: 0 0.5;
-                                       aspect: 1.0 1.0;
-                                       rel1 { to:"icon_left_padding"; relative: 1 0; }
-                               }
-                       }
-                       part {
-                               name: "icon_right_padding";
+                               name: "left_padding";
+                               type: RECT;
                                scale: 1;
                                mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_ITEM_ICON_PADDING_INC CTXPOPUP_ITEM_HEIGHT_MIN_INC;
-                                       max: CTXPOPUP_ITEM_ICON_PADDING_INC CTXPOPUP_ITEM_HEIGHT_MAX_INC;
-                                       align: 0 0.5;
+                                       min: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MIN_INC;
+                                       max: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MAX_INC;
+                                       align: 0 0;
                                        fixed: 1 1;
                                        visible: 0;
-                                       rel1 { to:"elm.swallow.icon"; relative: 1 1; }
                                }
                        }
                        part {
                                name: "elm.text";
-                               type:  TEXT;
-                               mouse_events:  0;
+                               type: TEXT;
+                               mouse_events: 0;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
                                        min: 1 CTXPOPUP_ITEM_HEIGHT_MIN_INC;
                                        align: 0.5 0.5;
-                                       rel1 {relative: 1.0 0.0; to_x: "icon_right_padding"; to_y: "bg";}
-                                       rel2 {relative: 0.0 1.0; to_x: "text_right_padding"; to_y: "bg";}
+                                       rel1 {relative: 1.0 0.0; to_x: "left_padding"; to_y: "bg";}
+                                       rel2 {relative: 0.0 1.0; to_x: "right_padding"; to_y: "bg";}
                                        color: CTXPOPUP_LIST_MAIN_TEXT_COLOR_INC;
                                        text {
                                                font: "Tizen:style=Roman";
                                                size: CTXPOPUP_LIST_MAIN_TEXT_SIZE_INC;
-                                               align: 0.0 0.5;
+                                               size_range: CTXPOPUP_LIST_MAIN_TEXT_SIZE_INC CTXPOPUP_LIST_MAIN_TEXT_MAX_SIZE_INC;
+                                               align: 0 0.5;
                                                min: 1 1;
                                                text_class: "list_item";
                                        }
                                }
                                description {
-                                       state: "compress" 0.0;
-                                       inherit: "default" 0.0;
-                                       max: -1 -1;
-                                       text {
-                                               min: 0 1;
-                                       }
-                               }
-                               description {
                                        state: "clicked" 0.0;
                                        inherit: "default" 0.0;
                                        color: CTXPOPUP_LIST_MAIN_TEXT_PRESS_COLOR_INC;
+                                       text.min: 0 1;
                                }
                                description {
                                        state: "disabled" 0.0;
                                        color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
                                }
                                description {
-                                       state: "compress_disabled" 0.0;
-                                       inherit: "compress" 0.0;
+                                       state: "ellipsis" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: CTXPOPUP_TEXT_MAX_INC CTXPOPUP_ITEM_HEIGHT_MIN_INC;
+                                       text.min: 0 1;
+                               }
+                               description {
+                                       state: "ellipsis_disabled" 0.0;
+                                       inherit: "ellipsis" 0.0;
                                        color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
                                }
                        }
                        part {
-                               name: "text_right_padding";
+                               name: "right_padding";
                                type: RECT;
                                scale: 1;
                                mouse_events: 0;
                                        visible: 0;
                                        min: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MIN_INC;
                                        max: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MAX_INC;
-                                       fixed: 1 0;
-                                       align: 1.0 0.5;
+                                       fixed: 1 1;
+                                       align: 1.0 1.0;
                                }
                        }
                        part {
                                name: "over1";
+                               type: RECT;
                                mouse_events: 1;
                                repeat_events: 1;
                                description {
                                        state: "default" 0.0;
+                                       color: 0 0 0 0;
                                }
                        }
                        part {
                                mouse_events: 1;
                                repeat_events: 1;
                                dragable {
-                                       x: 0 0 0;
+                                       x: 1 1 0;
                                        y: 1 1 0;
                                }
                                description {
                }
                programs {
                        program {
+                               name: "text_ellipsis";
+                               signal: "elm,state,text,ellipsis";
+                               source: "elm";
+                               action: STATE_SET "ellipsis" 0.0;
+                               target: "elm.text";
+                       }
+                       program {
                                name: "item_unclick";
                                signal: "mouse,clicked,1";
                                source: "over1";
                                action: SIGNAL_EMIT "elm,action,click" "";
+                               after: "touch_snd";
+                       }
+                       program {
+                               name: "touch_snd";
+                               action: PLAY_SAMPLE "touch_sound" 1.0;
                        }
                        program {
                                name: "disable";
                                        new st[31];
                                        new Float:vl;
                                        get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
+                                       if ((!strcmp(st, "ellipsis")) || (!strcmp(st, "ellipsis_disabled")))
+                                               set_state(PART:"elm.text", "ellipsis_disabled", 0.0);
                                        else
                                                set_state(PART:"elm.text", "disabled", 0.0);
 
                                        new st[31];
                                        new Float:vl;
                                        get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress", 0.0);
+                                       if ((!strcmp(st, "ellipsis")) || (!strcmp(st, "ellipsis_disabled")))
+                                               set_state(PART:"elm.text", "ellipsis", 0.0);
                                        else
                                                set_state(PART:"elm.text", "default", 0.0);
 
                                }
                        }
                        program {
-                               name: "compress";
-                               signal: "elm,state,compress";
-                               source: "elm";
-                               script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"disclip", st, 30, vl);
-                                       if (!strcmp(st, "disabled"))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "compress", 0.0);
-                               }
-                       }
-                       program {
                                name: "separator";
                                signal: "elm,state,separator";
                                source: "elm";
                                script {
                                        new Float:dx, Float:dy;
                                        get_drag(PART:"over2", dx, dy);
-                                       if (abs(dy) > 20)
+                                       if ((abs(dx) > 20) || (abs(dy) > 20))
                                                {
                                                        set_drag(PART:"over2", 0.0, 0.0);
-                                                       set_state(PART:"elm.text", "compress", 0.0);
                                                        set_state(PART:"bg", "default", 0.0);
                                                }
                                        set_drag(PART:"over2", 0.0, 0.0);
                                source: "over2";
                                script {
                                        set_drag(PART:"over2", 0.0, 0.0);
-                                       set_state(PART:"elm.text", "compress", 0.0);
                                        set_state(PART:"bg", "default", 0.0);
                                }
                        }
                }
        }
-
 ///////////////////////////////////////////////////////////////////////////////
        group {
-               name: "elm/ctxpopup/icon_text_style_item/more_button";
+               name: "elm/ctxpopup/text_style_item_horizontal/default";
+
+               images {
+                       image: "00_more_popup_press.png" COMP;
+               }
+
                parts {
                        part {
                                name: "event_blocker";
+                               type: RECT;
                                mouse_events: 1;
                                description {
                                        state: "default" 0.0;
+                                       color: 0 0 0 0;
                                }
                        }
                        part {
                                name: "bg";
                                mouse_events: 0;
-                               type: RECT;
+                               type: IMAGE;
+                               scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_BG_COLOR_INC;
-                                       visible: 1;
-                                       min: (CTXPOPUP_MORE_WIDTH_INC-CTXPOPUP_SHADOW_LEFT_PADDING-CTXPOPUP_SHADOW_RIGHT_PADDING-CTXPOPUP_CONTENT_PADDING*2) 1;
-                                       max: (CTXPOPUP_MORE_WIDTH_INC-CTXPOPUP_SHADOW_LEFT_PADDING-CTXPOPUP_SHADOW_RIGHT_PADDING-CTXPOPUP_CONTENT_PADDING*2) CTXPOPUP_MORE_ITEM_HEIGHT_MAX_INC;
+                                       visible: 0;
+                                       min: CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
                                }
                                description {
                                        state: "clicked" 0.0;
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
                                        visible: 1;
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
                                }
                                description {
                                        state: "clicked_separator" 0.0;
-                                       rel1 { relative: 0.0 1.0; to_y: "separator2"; }
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
+                                       rel1 { relative: 1.0 0.0; to_x: "separator2"; }
                                        visible: 1;
-                               }
-                       }
-                       part {
-                               name:"separator_left_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
-                               description {
-                                       min: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
-                                       max: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
-                                       align: 0 0;
-                                       fixed: 1 1;
-                                       visible: 0;
-                               }
-                       }
-                       part {
-                               name:"separator_right_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
-                               description {
-                                       min: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
-                                       max: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
-                                       align: 1 1;
-                                       fixed: 1 1;
-                                       visible: 0;
-                               }
-                       }
-                       part {
-                               name: "icon_left_padding";
-                               scale: 1;
-                               mouse_events: 0;
-                               description {
-                                       state: "default" 0.0;
-                                       min: (CTXPOPUP_MORE_ITEM_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_MORE_ITEM_HEIGHT_MIN_INC;
-                                       max: (CTXPOPUP_MORE_ITEM_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_MORE_ITEM_HEIGHT_MAX_INC;
-                                       align: 0 0;
-                                       fixed: 1 1;
-                                       visible: 0;
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
                                }
                        }
                        part {
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_SEPARATOR_COLOR_INC;
-                                       rel1 { relative: 1.0 0.0; to_x: "separator_left_padding";}
-                                       rel2 { relative: 0.0 1.0; to_x: "separator_right_padding";}
-                                       align: 0.5 0;
-                                       fixed: 0 1;
-                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
-                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       color: CTXPOPUP_HORIZONTAL_SEPARATOR_1_COLOR_INC;
+                                       align: 0 0.5;
+                                       min: CTXPOPUP_HORIZONTAL_SEPARATOR_MIN_SIZE_INC;
+                                       max: CTXPOPUP_HORIZONTAL_SEPARATOR_MAX_SIZE_INC;
                                        visible: 0;
                                }
                                description {
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_SEPARATOR2_COLOR_INC;
-                                       rel1 { relative: 0.0 1.0; to: "separator1";}
-                                       rel2.to: "separator1";
-                                       align: 0.5 0;
-                                       fixed: 0 1;
-                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
-                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       color: CTXPOPUP_HORIZONTAL_SEPARATOR_2_COLOR_INC;
+                                       rel1 { relative: 1.0 0.0; to: "separator1"; to_y: "bg";}
+                                       align: 0 0.5;
+                                       min: CTXPOPUP_HORIZONTAL_SEPARATOR_MIN_SIZE_INC;
+                                       max: CTXPOPUP_HORIZONTAL_SEPARATOR_MAX_SIZE_INC;
                                        visible: 0;
                                }
                                description {
                                }
                        }
                        part {
-                               name: "elm.swallow.icon";
-                               type: SWALLOW;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: CTXPOPUP_MORE_ICON_WIDTH_INC CTXPOPUP_MORE_ICON_HEIGHT_INC;
-                                       max: CTXPOPUP_MORE_ICON_WIDTH_INC CTXPOPUP_MORE_ICON_HEIGHT_INC;
-                                       align: 0 0.5;
-                                       aspect: 1.0 1.0;
-                                       rel1 { to:"icon_left_padding"; relative: 1 0; }
-                               }
-                       }
-                       part {
-                               name: "icon_right_padding";
+                               name: "left_padding";
+                               type: RECT;
                                scale: 1;
                                mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_MORE_ITEM_PADDING_INC CTXPOPUP_MORE_ITEM_HEIGHT_MIN_INC;
-                                       max: CTXPOPUP_MORE_ITEM_PADDING_INC CTXPOPUP_MORE_ITEM_HEIGHT_MAX_INC;
-                                       align: 0 0.5;
+                                       min: CTXPOPUP_ITEM_ICON_PADDING_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       max: CTXPOPUP_ITEM_ICON_PADDING_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       align: 0 0;
+                                       color: 255 0 0 255;
                                        fixed: 1 1;
                                        visible: 0;
-                                       rel1 { to:"elm.swallow.icon"; relative: 1 1; }
                                }
                        }
                        part {
                                name: "elm.text";
-                               type:  TEXT;
-                               mouse_events:  0;
+                               type: TEXT;
+                               mouse_events: 0;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 1 CTXPOPUP_MORE_ITEM_HEIGHT_MIN_INC;
+                                       min: (CTXPOPUP_TEXT_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ITEM_ICON_PADDING_INC*2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
                                        align: 0.5 0.5;
-                                       rel1 {relative: 1.0 0.0; to_x: "icon_right_padding"; to_y: "bg";}
-                                       rel2 {relative: 0.0 1.0; to_x: "text_right_padding"; to_y: "bg";}
-                                       color: CTXPOPUP_LIST_MAIN_TEXT_COLOR_INC;
+                                       rel1 {relative: 1.0 0.0; to: "left_padding"; }
+                                       rel2 {relative: 0.0 1.0; to: "right_padding"; }
+                                       color: CTXPOPUP_MAIN_TEXT_COLOR_INC;
                                        text {
                                                font: "Tizen:style=Roman";
-                                               size: CTXPOPUP_MORE_ITEM_TEXT_SIZE_INC;
-                                               align: 0.0 0.5;
+                                               size: CTXPOPUP_MAIN_TEXT_SIZE_INC;
+                                               size_range: CTXPOPUP_MAIN_TEXT_SIZE_INC CTXPOPUP_LIST_MAIN_TEXT_MAX_SIZE_INC;
+                                               align: 0.5 0.5;
                                                min: 1 1;
                                                text_class: "list_item";
                                        }
                                }
                                description {
-                                       state: "compress" 0.0;
-                                       inherit: "default" 0.0;
-                                       max: -1 -1;
-                                       text {
-                                               min: 0 1;
-                                       }
-                               }
-                               description {
                                        state: "clicked" 0.0;
                                        inherit: "default" 0.0;
-                                       color: CTXPOPUP_LIST_MAIN_TEXT_PRESS_COLOR_INC;
+                                       color: CTXPOPUP_MAIN_TEXT_PRESS_COLOR_INC;
                                }
                                description {
                                        state: "disabled" 0.0;
                                        inherit: "default" 0.0;
-                                       color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
-                               }
-                               description {
-                                       state: "compress_disabled" 0.0;
-                                       inherit: "compress" 0.0;
-                                       color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
+                                       color: CTXPOPUP_MAIN_TEXT_DIM_COLOR_INC;
                                }
                        }
                        part {
-                               name: "text_right_padding";
+                               name: "right_padding";
                                type: RECT;
                                scale: 1;
                                mouse_events: 0;
                                description {
                                        state: "default" 0.0;
+                                       min: CTXPOPUP_ITEM_ICON_PADDING_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       max: CTXPOPUP_ITEM_ICON_PADDING_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       fixed: 1 1;
+                                       align: 1 1;
+                                       color: 0 255 0 255;
                                        visible: 0;
-                                       min: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_MORE_ITEM_HEIGHT_MIN_INC;
-                                       max: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_MORE_ITEM_HEIGHT_MAX_INC;
-                                       fixed: 1 0;
-                                       align: 1.0 0.5;
                                }
                        }
                        part {
                                name: "over1";
+                               type: RECT;
                                mouse_events: 1;
                                repeat_events: 1;
                                description {
                                        state: "default" 0.0;
+                                       color: 0 0 0 0;
                                }
                        }
                        part {
                                mouse_events: 1;
                                repeat_events: 1;
                                dragable {
-                                       x: 0 0 0;
+                                       x: 1 1 0;
                                        y: 1 1 0;
                                }
                                description {
                                signal: "mouse,clicked,1";
                                source: "over1";
                                action: SIGNAL_EMIT "elm,action,click" "";
+                               after: "touch_snd";
+                       }
+                       program {
+                               name: "touch_snd";
+                               action: PLAY_SAMPLE "touch_sound" 1.0;
                        }
                        program {
                                name: "disable";
                                signal: "elm,state,disabled";
                                source: "elm";
                                script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "disabled", 0.0);
-
+                                       set_state(PART:"elm.text", "disabled", 0.0);
                                        set_state(PART:"disclip", "disabled", 0.0);
                                }
                        }
                                signal: "elm,state,enabled";
                                source: "elm";
                                script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "default", 0.0);
-
+                                       set_state(PART:"elm.text", "default", 0.0);
                                        set_state(PART:"disclip", "default", 0.0);
                                }
                        }
                                }
                        }
                        program {
-                               name: "compress";
-                               signal: "elm,state,compress";
-                               source: "elm";
-                               script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"disclip", st, 30, vl);
-                                       if (!strcmp(st, "disabled"))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "compress", 0.0);
-                               }
-                       }
-                       program {
                                name: "separator";
                                signal: "elm,state,separator";
                                source: "elm";
                                script {
                                        new Float:dx, Float:dy;
                                        get_drag(PART:"over2", dx, dy);
-                                       if (abs(dy) > 20)
+                                       if ((abs(dx) > 20) || (abs(dy) > 20))
                                                {
                                                        set_drag(PART:"over2", 0.0, 0.0);
-                                                       set_state(PART:"elm.text", "compress", 0.0);
                                                        set_state(PART:"bg", "default", 0.0);
                                                }
                                        set_drag(PART:"over2", 0.0, 0.0);
                                source: "over2";
                                script {
                                        set_drag(PART:"over2", 0.0, 0.0);
-                                       set_state(PART:"elm.text", "compress", 0.0);
                                        set_state(PART:"bg", "default", 0.0);
                                }
                        }
                }
        }
-
-///////////////////////////////////////////////////////////////////////////////////////
-#define CTXPOPUP_ENTRY_LIST_PADDING_LEFT 3
-#define CTXPOPUP_ENTRY_LIST_PADDING_TOP 6
-#define CTXPOPUP_ENTRY_LIST_PADDING_RIGHT 3
-#define CTXPOPUP_ENTRY_LIST_PADDING_BOTTOM 6
-//////////////////////////////////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////////////////////////
        group {
-               name: "elm/ctxpopup/base/extended/entry";
-               alias: "elm/ctxpopup/base/extended/entry/pass_event";
+               name: "elm/ctxpopup/icon_style_item/default";
+
                images {
-                       image: "copy&paste_bg_center.png" COMP;
-                       image: "ctxpopup_shadow.png" COMP;
+                       image: "00_more_popup_press.png" COMP;
                }
+
                parts {
                        part {
-                               name:"frame_shadow_left_top_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
+                               name: "event_blocker";
+                               type: RECT;
+                               mouse_events: 1;
                                description {
-                                       min: CTXPOPUP_SHADOW_PADDING CTXPOPUP_SHADOW_PADDING;
-                                       max: CTXPOPUP_SHADOW_PADDING CTXPOPUP_SHADOW_PADDING;
-                                       align: 0 0;
-                                       fixed: 1 1;
-                                       visible: 0;
+                                       state: "default" 0.0;
+                                       color: 0 0 0 0;
                                }
                        }
                        part {
-                               name:"frame_shadow_right_bottom_padding";
-                               type:RECT;
+                               name: "bg";
                                scale: 1;
                                mouse_events: 0;
+                               type: IMAGE;
                                description {
-                                       min: CTXPOPUP_SHADOW_PADDING CTXPOPUP_SHADOW_PADDING;
-                                       max: CTXPOPUP_SHADOW_PADDING CTXPOPUP_SHADOW_PADDING;
-                                       rel1{relative: 1 1;}
-                                       align: 0 0;
-                                       fixed: 1 1;
+                                       state: "default" 0.0;
                                        visible: 0;
+                                       min: CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       max: CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
                                }
-                       }
-                       part {
-                               name: "frame_shadow";
-                               type: IMAGE;
-                               scale: 1;
-                               mouse_events: 0;
                                description {
-                                       state: "default" 0.0;
-                                       rel1 {to:"frame_shadow_left_top_padding"; relative: 1 1;}
-                                       rel2 {to:"frame_shadow_right_bottom_padding";}
+                                       state: "clicked" 0.0;
+                                       visible: 1;
                                        image {
-                                               normal: "ctxpopup_shadow.png";
-                                               border: 10 10 10 10;
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
                                                border_scale: 1;
                                        }
                                }
-                       }
-                       part {
-                               name: "frame_bg";
-                               type: IMAGE;
-                               scale: 1;
-                               mouse_events: 0;
                                description {
-                                       state: "default" 0.0;
-                                       rel1 {to:"elm.swallow.content";}
-                                       rel2 {to:"elm.swallow.content";}
+                                       state: "clicked_separator" 0.0;
+                                       rel1 { relative: 1.0 0.0; to_x: "separator2"; }
+                                       visible: 1;
                                        image {
-                                               normal: "copy&paste_bg_center.png";
-                                               border: CTXPOPUP_ENTRY_CENTER_IMAGE_BORDER;
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
                                                border_scale: 1;
                                        }
                                }
                        }
                        part {
-                               name: "arrow_area_left";
-                               type: RECT;
-                               mouse_events: 0;
+                               name: "left_padding";
                                scale: 1;
                                description {
-                                       state: "default" 0.0;
-                                       visible: 0;
-                                       min: CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT 0;
-                                       fixed: 1 1;
-                                       align: 1 0.5;
-                                       rel1 {
-                                               relative: 0 1;
-                                               to_y: "ctxpopup_frame_left_top";
-                                       }
-                                       rel2 {
-                                               relative:0 0;
-                                               to:"ctxpopup_frame_left_bottom";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "arrow_area_right";
-                               type: RECT;
-                               mouse_events: 0;
-                               scale: 1;
-                               description { state: "default" 0.0;
+                                       min: ((CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC)/2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       max: ((CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC)/2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
                                        visible: 0;
-                                       min: CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT 0;
+                                       align: 0 0;
                                        fixed: 1 1;
-                                       align: 0 0.5;
-                                       rel1 {
-                                               relative: 1 1;
-                                               to:"ctxpopup_frame_right_top";
-                                       }
-                                       rel2 {
-                                               relative: 1 0;
-                                               to_y: "ctxpopup_frame_right_bottom";
-                                       }
                                }
                        }
                        part {
-                               name: "arrow_area_up";
-                               type: RECT;
+                               name: "separator1";
                                mouse_events: 0;
-                               scale: 1;
-                               description { state: "default" 0.0;
-                                       visible: 0;
-                                       min: 0 CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       fixed: 1 1;
-                                       align: 0.5 1;
-                                       rel1 {
-                                               relative: 0 0;
-                                               to: "frame_bg";
-                                       }
-                                       rel2 {
-                                               relative: 1 0;
-                                               to: "frame_bg";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "arrow_area_down";
                                type: RECT;
-                               mouse_events: 0;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
+                                       color: CTXPOPUP_SEPARATOR_COLOR_INC;
+                                       align: 0 0.5;
+                                       min: CTXPOPUP_HORIZONTAL_SEPARATOR_MIN_SIZE_INC;
+                                       max: CTXPOPUP_HORIZONTAL_SEPARATOR_MAX_SIZE_INC;
                                        visible: 0;
-                                       min: 0 CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       fixed: 1 1;
-                                       align: 0.5 0;
-                                       rel1 {
-                                               relative: 0 1;
-                                               to: "frame_bg";
-                                       }
-                                       rel2 {
-                                               relative: 1 1;
-                                               to: "frame_bg";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "elm.swallow.arrow_up";
-                               type: SWALLOW;
-                               mouse_events: 0;
-                               scale: 1;
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 1 1 0;
-                                       confine: "arrow_area_up";
                                }
                                description {
-                                       state: "default" 0.0;
-                                       min: 0 CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       fixed: 1 1;
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
                                        visible: 1;
                                }
                        }
                        part {
-                               name: "elm.swallow.arrow_down";
-                               type: SWALLOW;
+                               name: "separator2";
                                mouse_events: 0;
+                               type: RECT;
                                scale: 1;
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 1 1 0;
-                                       confine: "arrow_area_down";
-                               }
                                description {
                                        state: "default" 0.0;
-                                       min: 0 CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       fixed: 1 1;
-                                       visible: 1;
-                               }
-                       }
-                       part {
-                               name: "elm.swallow.arrow_left";
-                               type: SWALLOW;
-                               mouse_events: 0;
-                               scale: 1;
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 1 1 0;
-                                       confine: "arrow_area_left";
+                                       color: CTXPOPUP_SEPARATOR2_COLOR_INC;
+                                       rel1 { relative: 1.0 0.0; to_x: "separator1"; }
+                                       align: 0 0.5;
+                                       min: CTXPOPUP_HORIZONTAL_SEPARATOR_MIN_SIZE_INC;
+                                       max: CTXPOPUP_HORIZONTAL_SEPARATOR_MAX_SIZE_INC;
+                                       visible: 0;
                                }
                                description {
-                                       state: "default" 0.0;
-                                       min: CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT 0;
-                                       fixed: 1 1;
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
                                        visible: 1;
                                }
                        }
                        part {
-                               name: "elm.swallow.arrow_right";
+                               name: "elm.swallow.icon";
                                type: SWALLOW;
-                               mouse_events: 0;
                                scale: 1;
-                               dragable {
-                                       x: 1 1 0;
-                                       y: 1 1 0;
-                                       confine: "arrow_area_right";
-                               }
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT 0;
-                                       fixed: 1 1;
-                                       visible: 1;
-                               }
-                       }
-                       part {
-                               name: "ctxpopup_frame_left_top";
-                               type: RECT;
-                               scale: 1;
-                               description {
-                                       visible: 0;
-                                       align: 0 0;
-                                       min: CTXPOPUP_FRAME_CORNER_SIZE;
-                                       max: CTXPOPUP_FRAME_CORNER_SIZE;
+                                       min: CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC CTXPOPUP_ICON_HORIZONTAL_HEIGHT_INC;
+                                       max: CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC CTXPOPUP_ICON_HORIZONTAL_HEIGHT_INC;
+                                       align: 0.5 0.5;
+                                       aspect: 1.0 1.0;
+                                       rel1 { relative: 1 0; to_x: "left_padding"; }
+                                       rel2 { relative: 0 1; to_x: "right_padding"; }
                                }
                        }
                        part {
-                               name: "ctxpopup_frame_right_top";
-                               type: RECT;
+                               name: "right_padding";
                                scale: 1;
                                description {
+                                       min: ((CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC)/2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
+                                       max: ((CTXPOPUP_ICON_ITEM_HORIZONTAL_WIDTH_INC-CTXPOPUP_ICON_HORIZONTAL_WIDTH_INC)/2) (CTXPOPUP_ITEM_HORIZONTAL_HEIGHT_INC-CTXPOPUP_CONTENT_PADDING*2);
                                        visible: 0;
-                                       align: 1 0;
-                                       min: CTXPOPUP_FRAME_CORNER_SIZE;
-                                       max: CTXPOPUP_FRAME_CORNER_SIZE;
+                                       align: 1 1;
+                                       fixed: 1 1;
                                }
                        }
                        part {
-                               name: "ctxpopup_frame_left_bottom";
+                               name: "over1";
                                type: RECT;
-                               scale: 1;
+                               mouse_events: 1;
+                               repeat_events: 1;
                                description {
-                                       visible: 0;
-                                       align: 0 1;
-                                       min: CTXPOPUP_FRAME_CORNER_SIZE;
-                                       max: CTXPOPUP_FRAME_CORNER_SIZE;
+                                       state: "default" 0.0;
+                                       color: 0 0 0 0;
                                }
                        }
                        part {
-                               name: "ctxpopup_frame_right_bottom";
+                               name: "over2";
                                type: RECT;
-                               scale: 1;
-                               description {
-                                       visible: 0;
-                                       align: 1 1;
-                                       min: CTXPOPUP_FRAME_CORNER_SIZE;
-                                       max: CTXPOPUP_FRAME_CORNER_SIZE;
-                               }
-                       }
-                       part {
-                               name:"list_shadow_right_bottom_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
-                               description {
-                                       min: CTXPOPUP_LIST_SHADOW_PADDING CTXPOPUP_LIST_SHADOW_PADDING;
-                                       max: CTXPOPUP_LIST_SHADOW_PADDING CTXPOPUP_LIST_SHADOW_PADDING;
-                                       align: 0 0;
-                                       fixed: 1 1;
-                                       visible: 0;
-                                       rel1 {to:"elm.swallow.content";  relative: 1 1;}
+                               mouse_events: 1;
+                               repeat_events: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
                                }
-                       }
-                       part {
-                               name:"content_left_top_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
-                                       min: CTXPOPUP_LIST_PADDING CTXPOPUP_LIST_PADDING;
-                                       max: CTXPOPUP_LIST_PADDING CTXPOPUP_LIST_PADDING;
-                                       align: 0 0;
-                                       fixed: 1 1;
-                                       visible: 0;
+                                       rel1.to:"bg";
+                                       rel2.to:"bg";
+                                       color: 0 0 0 0;
                                }
                        }
                        part {
-                               name:"content_right_bottom_padding";
-                               type:RECT;
-                               scale: 1;
-                               mouse_events: 0;
+                               name: "disclip";
+                               type: RECT;
                                description {
-                                       min: CTXPOPUP_LIST_PADDING CTXPOPUP_LIST_PADDING;
-                                       max: CTXPOPUP_LIST_PADDING CTXPOPUP_LIST_PADDING;
-                                       rel1 { relative: 1 1;}
-                                       rel2 { relative: 1 1;}
-                                       align: 1 1;
-                                       fixed: 1 1;
+                                       state: "default" 0.0;
                                        visible: 0;
                                }
-                       }
-                       part {
-                               name: "elm.swallow.content";
-                               type: SWALLOW;
                                description {
-                                       state: "default" 0.0;
-                                       align: 0 0;
-                                       rel1 {to:"ctxpopup_frame_left_top";  relative: 0.5 0.5;}
-                                       rel2 {to:"ctxpopup_frame_right_bottom";  relative: 0.5 0.5;}
-                               }
-                       }
-               }
-       }
-///////////////////////////////////////////////////////////////////////////////////////
-       group {
-               name: "elm/ctxpopup/arrow/extended/entry";
-               alias: "elm/ctxpopup/arrow/extended/entry/pass_event";
-               images {
-                       image: "copy&paste_arrow_up.png" COMP;
-                       image: "copy&paste_arrow_left.png" COMP;
-                       image: "copy&paste_arrow_right.png" COMP;
-                       image: "copy&paste_arrow_down.png" COMP;
-               }
-               parts {
-                       part {
-                               name: "ctxpopup_arrow";
-                               type: IMAGE;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       max: CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       fixed: 1 1;
-                                       visible: 0;
-                                       align: 0.5 0.5;
-                               }
-                               description {
-                                       state: "left" 0.0;
-                                       min: CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH;
-                                       max: CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH;
-                                       fixed: 1 1;
-                                       align: 0 0.5;
-                                       image {
-                                               normal: "copy&paste_arrow_left.png";
-                                       }
-                               }
-                               description {
-                                       state: "right" 0.0;
-                                       min: CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH;
-                                       max: CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH;
-                                       fixed: 1 1;
-                                       align: 1 0.5;
-                                       image {
-                                               normal: "copy&paste_arrow_right.png";
-                                       }
-                               }
-                               description {
-                                       state: "top" 0.0;
-                                       min: CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       max: CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       fixed: 1 1;
-                                       align: 0.5 0;
-                                       image {
-                                               normal: "copy&paste_arrow_up.png";
-                                       }
-                               }
-                               description {
-                                       state: "bottom" 0.0;
-                                       min: CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       max: CTXPOPUP_ENTRY_ARROW_SIZE_WIDTH CTXPOPUP_ENTRY_ARROW_SIZE_HEIGHT;
-                                       fixed: 1 1;
-                                       align: 0.5 1;
-                                       image {
-                                               normal: "copy&paste_arrow_down.png";
-                                       }
+                                       state: "disabled" 0.0;
+                                       visible: 1;
+                                       color: CTXPOPUP_ITEM_DISABLED_COLOR;
                                }
                        }
                }
                programs {
                        program {
-                               name: "enable_left_arrow";
-                               signal: "elm,state,left";
-                               source: "elm";
-                               action: STATE_SET "left" 0.0;
-                               target: "ctxpopup_arrow";
-                       }
-                       program {
-                               name: "enable_right_arrow";
-                               signal: "elm,state,right";
-                               source: "elm";
-                               action: STATE_SET "right" 0.0;
-                               target: "ctxpopup_arrow";
-                       }
-                       program {
-                               name: "enable_top_arrow";
-                               signal: "elm,state,top";
+                               name: "default";
+                               signal: "elm,state,default";
                                source: "elm";
-                               action: STATE_SET "top" 0.0;
-                               target: "ctxpopup_arrow";
+                               script {
+                                       set_state(PART:"separator1", "default", 0.0);
+                                       set_state(PART:"separator2", "default", 0.0);
+                               }
                        }
                        program {
-                               name: "enable_bottom_arrow";
-                               signal: "elm,state,bottom";
+                               name: "separator";
+                               signal: "elm,state,separator";
                                source: "elm";
-                               action: STATE_SET "bottom" 0.0;
-                               target: "ctxpopup_arrow";
-                       }
-               }
-       }
-///////////////////////////////////////////////////////////////////////////////////////
-#define CTXPOPUP_ENTRY_ITEM_BG_PART \
-                       part {\
-                               name: "bg";\
-                               mouse_events: 0;\
-                               type: IMAGE;\
-                               description {\
-                                       state: "default" 0.0;\
-                                       visible: 0;\
-                                       rel1 {to:"left_bg_padding"; relative: 1 0;}\
-                                       rel2 {to:"right_bg_padding"; relative: 0 1;}\
-                                       image {\
-                                               normal: "copy&paste_press_center.png";\
-                                               border: 0 0 0 0;\
-                                       }\
-                               }\
-                               description {\
-                                       state: "clicked" 0.0;\
-                                       inherit: "default" 0.0;\
-                                       visible: 1;\
-                                       image {\
-                                               normal: "copy&paste_press_center.png";\
-                                               border: 0 0 0 0;\
-                                       }\
-                               }\
-                       }
-#define CTXPOPUP_ENTRY_ITEM_LEFT_BG_PADDING_PART \
-                       part {\
-                               name: "left_bg_padding";\
-                               type: IMAGE;\
-                               scale: 1;\
-                               mouse_events: 0;\
-                               description {\
-                                       state: "default" 0.0;\
-                                       visible: 0;\
-                                       min: CTXPOPUP_ENTRY_ITEM_PADDING_WIDTH CTXPOPUP_ENTRY_ITEM_HEIGHT;\
-                                       max: CTXPOPUP_ENTRY_ITEM_PADDING_WIDTH CTXPOPUP_ENTRY_ITEM_HEIGHT;\
-                                       align: 0 0.5;\
-                                       fixed: 1 0;\
-                                       rel1 { to: "event_blocker"; relative: 0 0; }\
-                                       rel2 { to: "event_blocker"; relative: 0 1; }\
-                                       image {\
-                                               normal: "copy&paste_press_left.png";\
-                                               border: CTXPOPUP_ENTRY_IMAGE_BORDER_WIDTH 0 0 0;\
-                                               border_scale: 1;\
-                                       }\
-                               }\
-                               description {\
-                                       state: "clicked" 0.0;\
-                                       inherit: "default" 0.0;\
-                                       visible: 1;\
-                                       image {\
-                                               normal: "copy&paste_press_left.png";\
-                                               border: CTXPOPUP_ENTRY_IMAGE_BORDER_WIDTH 0 0 0;\
-                                               border_scale: 1;\
-                                       }\
-                               }\
-                       }
-#define CTXPOPUP_ENTRY_ITEM_RIGHT_BG_PADDING_PART \
-                       part {\
-                               name: "right_bg_padding";\
-                               type: IMAGE;\
-                               scale: 1;\
-                               mouse_events: 0;\
-                               description {\
-                                       state: "default" 0.0;\
-                                       visible: 0;\
-                                       min: CTXPOPUP_ENTRY_ITEM_PADDING_WIDTH CTXPOPUP_ENTRY_ITEM_HEIGHT;\
-                                       max: CTXPOPUP_ENTRY_ITEM_PADDING_WIDTH CTXPOPUP_ENTRY_ITEM_HEIGHT;\
-                                       fixed: 1 0;\
-                                       align: 1.0 0.5;\
-                                       rel1 { to: "event_blocker"; relative: 1 0; }\
-                                       rel2 { to: "event_blocker"; relative: 1 1; }\
-                                       image {\
-                                               normal: "copy&paste_press_right.png";\
-                                               border: 0 CTXPOPUP_ENTRY_IMAGE_BORDER_WIDTH 0 0;\
-                                               border_scale: 1;\
-                                       }\
-                               }\
-                               description {\
-                                       state: "clicked" 0.0;\
-                                       inherit: "default" 0.0;\
-                                       visible: 1;\
-                                       image {\
-                                               normal: "copy&paste_press_right.png";\
-                                               border: 0 CTXPOPUP_ENTRY_IMAGE_BORDER_WIDTH 0 0;\
-                                               border_scale: 1;\
-                                       }\
-                               }\
-                       }
-#define CTXPOPUP_ENTRY_ITEM_LEFT_PADDING_PART \
-                       part {\
-                               name: "left_padding";\
-                               type: RECT;\
-                               scale: 1;\
-                               mouse_events: 0;\
-                               description {\
-                                       state: "default" 0.0;\
-                                       visible: 0;\
-                                       min: CTXPOPUP_ENTRY_ITEM_PADDING_WIDTH CTXPOPUP_ENTRY_ITEM_HEIGHT;\
-                                       max: CTXPOPUP_ENTRY_ITEM_PADDING_WIDTH CTXPOPUP_ENTRY_ITEM_HEIGHT;\
-                                       align: 0 0.5;\
-                                       fixed: 1 0;\
-                               }\
-                       }
-#define CTXPOPUP_ENTRY_ITEM_RIGHT_PADDING_PART \
-                       part {\
-                               name: "right_padding";\
-                               type: RECT;\
-                               scale: 1;\
-                               mouse_events: 0;\
-                               description {\
-                                       state: "default" 0.0;\
-                                       visible: 0;\
-                                       min: CTXPOPUP_ENTRY_ITEM_PADDING_WIDTH CTXPOPUP_ENTRY_ITEM_HEIGHT;\
-                                       max: CTXPOPUP_ENTRY_ITEM_PADDING_WIDTH CTXPOPUP_ENTRY_ITEM_HEIGHT;\
-                                       fixed: 1 0;\
-                                       align: 1.0 0.5;\
-                               }\
-                       }
-#define CTXPOPUP_ENTRY_ITEM_LEFT_SEPARATOR_PART \
-                       part {\
-                               name: "left_separator";\
-                               mouse_events: 0;\
-                               type: RECT;\
-                               scale: 1;\
-                               description {\
-                                       state: "default" 0.0;\
-                                       visible: 0;\
-                                       color: CTXPOPUP_ENTRY_ITEM_LEFT_SEPARATOR_COLOR;\
-                                       min: CTXPOPUP_ENTRY_SEPARATOR_WIDTH CTXPOPUP_ENTRY_SEPARATOR_HEIGHT;\
-                                       max: CTXPOPUP_ENTRY_SEPARATOR_WIDTH CTXPOPUP_ENTRY_SEPARATOR_HEIGHT;\
-                                       fixed: 1 1;\
-                                       rel2 {\
-                                               relative: 0 1;\
-                                       }\
-                               }\
-                               description {\
-                                       state: "vertical" 0.0;\
-                                       inherit: "default" 0.0;\
-                                       visible: 1;\
-                               }\
-                               description {\
-                                       state: "horizontal" 0.0;\
-                                       inherit: "default" 0.0;\
-                                       visible: 1;\
-                               }\
-                       }
-#define CTXPOPUP_ENTRY_ITEM_RIGHT_SEPARATOR_PART \
-                       part {\
-                               name: "right_separator";\
-                               mouse_events: 0;\
-                               type: RECT;\
-                               scale: 1;\
-                               description {\
-                                       state: "default" 0.0;\
-                                       visible: 0;\
-                                       color: CTXPOPUP_ENTRY_ITEM_RIGHT_SEPARATOR_COLOR;\
-                                       min: CTXPOPUP_ENTRY_SEPARATOR_WIDTH CTXPOPUP_ENTRY_SEPARATOR_HEIGHT;\
-                                       max: CTXPOPUP_ENTRY_SEPARATOR_WIDTH CTXPOPUP_ENTRY_SEPARATOR_HEIGHT;\
-                                       fixed: 1 1;\
-                                       rel1 {\
-                                               offset: -1 0;\
-                                       }\
-                                       rel2 {\
-                                               relative: 0 1;\
-                                               offset: -1 0;\
-                                       }\
-                               }\
-                               description {\
-                                       state: "vertical" 0.0;\
-                                       inherit: "default" 0.0;\
-                                       visible: 1;\
-                               }\
-                               description {\
-                                       state: "horizontal" 0.0;\
-                                       inherit: "default" 0.0;\
-                                       visible: 1;\
-                               }\
-                       }
-///////////////////////////////////////////////////////////////////////////////////////
-
-       group {
-               name: "elm/ctxpopup/text_style_item/extended/entry";
-               alias: "elm/ctxpopup/text_style_item/extended/entry/pass_event";
-               images {
-                       image: "copy&paste_press_center.png" COMP;
-                       image: "copy&paste_press_left.png" COMP;
-                       image: "copy&paste_press_right.png" COMP;
-               }
-               parts {
-                       part {
-                               name: "event_blocker";
-                               mouse_events: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       color: 0 0 0 0;
-                               }
-                       }
-                       CTXPOPUP_ENTRY_ITEM_BG_PART
-                       CTXPOPUP_ENTRY_ITEM_LEFT_BG_PADDING_PART
-                       CTXPOPUP_ENTRY_ITEM_RIGHT_BG_PADDING_PART
-                       CTXPOPUP_ENTRY_ITEM_LEFT_PADDING_PART
-                       CTXPOPUP_ENTRY_ITEM_RIGHT_PADDING_PART
-                       CTXPOPUP_ENTRY_ITEM_LEFT_SEPARATOR_PART
-                       CTXPOPUP_ENTRY_ITEM_RIGHT_SEPARATOR_PART
-                       part {
-                               name: "elm.text";
-                               type:  TEXT;
-                               mouse_events:  0;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 1 CTXPOPUP_ENTRY_ITEM_HEIGHT;
-                                       max: CTXPOPUP_ENTRY_ITEM_WIDTH_MAX CTXPOPUP_ENTRY_ITEM_HEIGHT;
-                                       fixed: 0 1;
-                                       align: 0.5 0.5;
-                                       rel1 {relative: 1.0 0.0; to: "left_padding";}
-                                       rel2 {relative: 0.0 1.0; to: "right_padding";}
-                                       color: CTXPOPUP_ENTRY_ITEM_TEXT_COLOR;
-                                       text {
-                                               font: "Tizen:style=Roman";
-                                               size: CTXPOPUP_ENTRY_ITEM_FONT_SIZE;
-                                               align: 0.5 0.5;
-                                               min: 1 1;
-                                               text_class: "list_item";
-                                       }
-                               }
-                               description {
-                                       state: "clicked" 0.0;
-                                       inherit: "default" 0.0;
-                                       color: CTXPOPUP_ENTRY_ITEM_TEXT_COLOR;
-                               }
-                       }
-                       part {
-                               name: "over1";
-                               mouse_events: 1;
-                               repeat_events: 1;
-                               ignore_flags: ON_HOLD;
-                               description {
-                                       state: "default" 0.0;
-                               }
-                       }
-                       part {
-                               name: "over2";
-                               mouse_events: 1;
-                               repeat_events: 1;
-                               description {
-                                       state: "default" 0.0;
-                               }
-                       }
-                       part {
-                               name: "disclip";
-                               type: RECT;
-                               description {
-                                       state: "default" 0.0;
-                                       visible: 0;
-                               }
-                               description {
-                                       state: "disabled" 0.0;
-                                       visible: 1;
-                                       color: CTXPOPUP_ENTRY_ITEM_DISABLED_COLOR;
+                               script {
+                                       set_state(PART:"separator1", "visible", 0.0);
+                                       set_state(PART:"separator2", "visible", 0.0);
                                }
                        }
-               }
-               programs {
                        program {
                                name: "item_unclick";
-                               signal: "mouse,up,1";
+                               signal: "mouse,clicked,1";
                                source: "over1";
                                action: SIGNAL_EMIT "elm,action,click" "";
+                               after: "touch_snd";
+                       }
+                       program {
+                               name: "touch_snd";
+                               action: PLAY_SAMPLE "touch_sound" 1.0;
                        }
                        program {
                                name: "disable";
                                signal: "mouse,down,1";
                                source: "over2";
                                script {
-                                       set_state(PART:"elm.text", "clicked", 0.0);
-                                       set_state(PART:"bg", "clicked", 0.0);
-                                       set_state(PART:"left_bg_padding", "clicked", 0.0);
-                                       set_state(PART:"right_bg_padding", "clicked", 0.0);
+                                       new st[31];
+                                       new Float:vl;
+                                       get_state(PART:"separator2", st, 30, vl);
+                                       if (!strcmp(st, "default"))
+                                               set_state(PART:"bg", "clicked", 0.0);
+                                       else
+                                               set_state(PART:"bg", "clicked_separator", 0.0);
                                }
                        }
                        program {
-                               name: "item_unclick2";
-                               signal: "mouse,up,1";
+                               name: "drag";
+                               signal: "drag";
                                source: "over2";
                                script {
-                                       set_state(PART:"elm.text", "default", 0.0);
-                                       set_state(PART:"bg", "default", 0.0);
-                                       set_state(PART:"left_bg_padding", "default", 0.0);
-                                       set_state(PART:"right_bg_padding", "default", 0.0);
-                               }
-                       }
-                       program {
-                               name: "default";
-                               signal: "elm,state,default";
-                               source: "elm";
-                               script {
-                                       set_state(PART:"left_separator", "default", 0.0);
-                                       set_state(PART:"right_separator", "default", 0.0);
-                               }
-                       }
-                       program {
-                               name: "vertical";
-                               signal: "elm,state,vertical";
-                               source: "elm";
-                               script {
-                                       set_state(PART:"left_separator", "vertical", 0.0);
-                                       set_state(PART:"right_separator", "vertical", 0.0);
+                                       new Float:dx, Float:dy;
+                                       get_drag(PART:"over2", dx, dy);
+                                       if ((abs(dx) > 20) || (abs(dy) > 20))
+                                               {
+                                                       set_drag(PART:"over2", 0.0, 0.0);
+                                                       set_state(PART:"bg", "default", 0.0);
+                                               }
+                                       set_drag(PART:"over2", 0.0, 0.0);
                                }
                        }
                        program {
-                               name: "horizontal";
-                               signal: "elm,state,horizontal";
-                               source: "elm";
+                               name: "item_unclick2";
+                               signal: "mouse,up,1";
+                               source: "over2";
                                script {
-                                       set_state(PART:"left_separator", "horizontal", 0.0);
-                                       set_state(PART:"right_separator", "horizontal", 0.0);
+                                       set_drag(PART:"over2", 0.0, 0.0);
+                                       set_state(PART:"bg", "default", 0.0);
                                }
                        }
                }
        }
 ///////////////////////////////////////////////////////////////////////////////
        group {
-               name: "elm/ctxpopup/icon_style_item/extended/entry";
+               name: "elm/ctxpopup/icon_text_style_item/default";
+
                images {
-                       image: "copy&paste_press_center.png" COMP;
-                       image: "copy&paste_press_left.png" COMP;
-                       image: "copy&paste_press_right.png" COMP;
+                       image: "00_more_popup_press.png" COMP;
                }
+
+               data.item: "item_max_size" CTXPOPUP_ICON_TEXT_MAX_INC;
+
                parts {
                        part {
                                name: "event_blocker";
+                               type: RECT;
                                mouse_events: 1;
                                description {
                                        state: "default" 0.0;
                                        color: 0 0 0 0;
                                }
                        }
-                       CTXPOPUP_ENTRY_ITEM_BG_PART
-                       CTXPOPUP_ENTRY_ITEM_LEFT_BG_PADDING_PART
-                       CTXPOPUP_ENTRY_ITEM_RIGHT_BG_PADDING_PART
-                       CTXPOPUP_ENTRY_ITEM_LEFT_PADDING_PART
-                       CTXPOPUP_ENTRY_ITEM_RIGHT_PADDING_PART
-                       CTXPOPUP_ENTRY_ITEM_LEFT_SEPARATOR_PART
-                       CTXPOPUP_ENTRY_ITEM_RIGHT_SEPARATOR_PART
                        part {
-                               name: "elm.swallow.icon";
-                               type: SWALLOW;
-                               scale: 1;
+                               name: "bg";
+                               mouse_events: 0;
+                               type: IMAGE;
                                description {
                                        state: "default" 0.0;
-                                       min: 36 36;
-                                       max: 36 36;
-                                       fixed: 0 1;
-                                       align: 0.5 0.5;
-//                                     aspect: 1.0 1.0;
-                                       rel1 {relative: 1.0 0.0; to: "left_padding";}
-                                       rel2 {relative: 0.0 1.0; to: "right_padding";}
+                                       visible: 0;
+                                       min: CTXPOPUP_WIDTH_MIN_INC 1;
+                                       max: CTXPOPUP_WIDTH_MAX_INC CTXPOPUP_ITEM_HEIGHT_MAX_INC;
+                               }
+                               description {
+                                       state: "clicked" 0.0;
+                                       visible: 1;
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
+                               }
+                               description {
+                                       state: "clicked_separator" 0.0;
+                                       rel1 { relative: 0.0 1.0; to_y: "separator2"; }
+                                       visible: 1;
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
                                }
                        }
                        part {
-                               name: "elm.swallow.icon.paint";
-                               type: RECT;
+                               name:"separator_left_padding";
+                               type:RECT;
                                scale: 1;
+                               mouse_events: 0;
                                description {
-                                       state: "default" 0.0;
+                                       min: (CTXPOPUP_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
+                                       max: (CTXPOPUP_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
+                                       align: 0 0;
+                                       fixed: 1 1;
                                        visible: 0;
-                                       color: 255 255 0 255;
-                                       rel1 { to: "elm.swallow.icon"; }
-                                       rel2 { to: "elm.swallow.icon"; }
                                }
                        }
                        part {
-                               name: "over1";
-                               mouse_events: 1;
-                               repeat_events: 1;
-                               ignore_flags: ON_HOLD;
+                               name:"separator_right_padding";
+                               type:RECT;
+                               scale: 1;
+                               mouse_events: 0;
                                description {
-                                       state: "default" 0.0;
+                                       min: (CTXPOPUP_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
+                                       max: (CTXPOPUP_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
+                                       align: 1 1;
+                                       fixed: 1 1;
+                                       visible: 0;
                                }
                        }
                        part {
-                               name: "over2";
-                               mouse_events: 1;
-                               repeat_events: 1;
+                               name: "icon_left_padding";
+                               scale: 1;
+                               mouse_events: 0;
                                description {
                                        state: "default" 0.0;
+                                       min: (CTXPOPUP_ITEM_ICON_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MIN_INC;
+                                       max: (CTXPOPUP_ITEM_ICON_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MAX_INC;
+                                       align: 0 0;
+                                       fixed: 1 1;
+                                       visible: 0;
                                }
                        }
                        part {
-                               name: "disclip";
+                               name: "separator1";
+                               mouse_events: 0;
                                type: RECT;
+                               scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       visible: 0;
-                               }
-                               description {
-                                       state: "disabled" 0.0;
+                                       color: CTXPOPUP_SEPARATOR_COLOR_INC;
+                                       rel1 { relative: 1.0 0.0; to_x: "separator_left_padding";}
+                                       rel2 { relative: 0.0 1.0; to_x: "separator_right_padding"; offset: 0 0; }
+                                       align: 0.5 0;
+                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       visible: 0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible: 1;
+                               }
+                       }
+                       part {
+                               name: "separator2";
+                               mouse_events: 0;
+                               type: RECT;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       color: CTXPOPUP_SEPARATOR2_COLOR_INC;
+                                       rel1 { relative: 0.0 1.0; to: "separator1";}
+                                       rel2 { relative: 1.0 1.0; to: "separator1"; offset: 0 0; }
+                                       align: 0.5 0;
+                                       fixed: 0 1;
+                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       visible: 0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible: 1;
+                               }
+                       }
+                       part {
+                               name: "elm.swallow.icon";
+                               type: SWALLOW;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ICON_WIDTH_INC CTXPOPUP_ICON_HEIGHT_INC;
+                                       max: CTXPOPUP_ICON_WIDTH_INC CTXPOPUP_ICON_HEIGHT_INC;
+                                       align: 0 0.5;
+                                       aspect: 1.0 1.0;
+                                       rel1 { to:"icon_left_padding"; relative: 1 0; }
+                               }
+                       }
+                       part {
+                               name: "icon_right_padding";
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ITEM_ICON_PADDING_INC CTXPOPUP_ITEM_HEIGHT_MIN_INC;
+                                       max: CTXPOPUP_ITEM_ICON_PADDING_INC CTXPOPUP_ITEM_HEIGHT_MAX_INC;
+                                       align: 0 0.5;
+                                       fixed: 1 1;
+                                       visible: 0;
+                                       rel1 { to:"elm.swallow.icon"; relative: 1 1; }
+                               }
+                       }
+                       part {
+                               name: "elm.text";
+                               type:  TEXT;
+                               mouse_events:  0;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min: 1 CTXPOPUP_ITEM_HEIGHT_MIN_INC;
+                                       align: 0.5 0.5;
+                                       rel1 {relative: 1.0 0.0; to_x: "icon_right_padding"; to_y: "bg";}
+                                       rel2 {relative: 0.0 1.0; to_x: "text_right_padding"; to_y: "bg";}
+                                       color: CTXPOPUP_LIST_MAIN_TEXT_COLOR_INC;
+                                       text {
+                                               font: "Tizen:style=Roman";
+                                               size: CTXPOPUP_LIST_MAIN_TEXT_SIZE_INC;
+                                               size_range: CTXPOPUP_LIST_MAIN_TEXT_SIZE_INC CTXPOPUP_LIST_MAIN_TEXT_MAX_SIZE_INC;
+                                               align: 0.0 0.5;
+                                               min: 1 1;
+                                               text_class: "list_item";
+                                       }
+                               }
+                               description {
+                                       state: "clicked" 0.0;
+                                       inherit: "default" 0.0;
+                                       color: CTXPOPUP_LIST_MAIN_TEXT_PRESS_COLOR_INC;
+                                       text.min: 0 1;
+                               }
+                               description {
+                                       state: "disabled" 0.0;
+                                       inherit: "default" 0.0;
+                                       color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
+                               }
+                               description {
+                                       state: "ellipsis" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: (CTXPOPUP_WIDTH_MAX_INC-CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_ICON_WIDTH_INC-(CTXPOPUP_ITEM_ICON_PADDING_INC*2)) CTXPOPUP_ITEM_HEIGHT_MIN_INC;
+                                       text.min: 0 1;
+                               }
+                               description {
+                                       state: "ellipsis_disabled" 0.0;
+                                       inherit: "ellipsis" 0.0;
+                                       color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
+                               }
+                       }
+                       part {
+                               name: "text_right_padding";
+                               type: RECT;
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 0;
+                                       min: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MIN_INC;
+                                       max: (CTXPOPUP_ITEM_TEXT_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_ITEM_HEIGHT_MAX_INC;
+                                       fixed: 1 0;
+                                       align: 1.0 0.5;
+                               }
+                       }
+                       part {
+                               name: "over1";
+                               type: RECT;
+                               mouse_events: 1;
+                               repeat_events: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       color: 0 0 0 0;
+                               }
+                       }
+                       part {
+                               name: "over2";
+                               type: RECT;
+                               mouse_events: 1;
+                               repeat_events: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                               }
+                               description {
+                                       state: "default" 0.0;
+                                       rel1.to:"bg";
+                                       rel2.to:"bg";
+                                       color: 0 0 0 0;
+                               }
+                       }
+                       part {
+                               name: "disclip";
+                               type: RECT;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 0;
+                               }
+                               description {
+                                       state: "disabled" 0.0;
                                        visible: 1;
-                                       color: CTXPOPUP_ENTRY_ITEM_DISABLED_COLOR;
+                                       color: CTXPOPUP_ITEM_DISABLED_COLOR;
                                }
                        }
                }
                programs {
                        program {
+                               name: "text_ellipsis";
+                               signal: "elm,state,text,ellipsis";
+                               source: "elm";
+                               action: STATE_SET "ellipsis" 0.0;
+                               target: "elm.text";
+                       }
+                       program {
                                name: "item_unclick";
-                               signal: "mouse,up,1";
+                               signal: "mouse,clicked,1";
                                source: "over1";
                                action: SIGNAL_EMIT "elm,action,click" "";
+                               after: "touch_snd";
+                       }
+                       program {
+                               name: "touch_snd";
+                               action: PLAY_SAMPLE "touch_sound" 1.0;
                        }
                        program {
                                name: "disable";
                                signal: "elm,state,disabled";
                                source: "elm";
-                               action: STATE_SET "disabled" 0.0;
-                               target: "disclip";
-                       }
-                       program {
-                               name: "item_click2";
-                               signal: "mouse,down,1";
-                               source: "over2";
                                script {
-                                       set_state(PART:"bg", "clicked", 0.0);
-                                       set_state(PART:"left_bg_padding", "clicked", 0.0);
-                                       set_state(PART:"right_bg_padding", "clicked", 0.0);
+                                       new st[31];
+                                       new Float:vl;
+                                       get_state(PART:"elm.text", st, 30, vl);
+                                       if ((!strcmp(st, "ellipsis")) || (!strcmp(st, "ellipsis_disabled")))
+                                               set_state(PART:"elm.text", "ellipsis_disabled", 0.0);
+                                       else
+                                               set_state(PART:"elm.text", "disabled", 0.0);
+
+                                       set_state(PART:"disclip", "disabled", 0.0);
                                }
                        }
                        program {
-                               name: "item_unclick2";
-                               signal: "mouse,up,1";
-                               source: "over2";
+                               name: "enable";
+                               signal: "elm,state,enabled";
+                               source: "elm";
                                script {
-                                       set_state(PART:"bg", "default", 0.0);
-                                       set_state(PART:"left_bg_padding", "default", 0.0);
-                                       set_state(PART:"right_bg_padding", "default", 0.0);
+                                       new st[31];
+                                       new Float:vl;
+                                       get_state(PART:"elm.text", st, 30, vl);
+                                       if ((!strcmp(st, "ellipsis")) || (!strcmp(st, "ellipsis_disabled")))
+                                               set_state(PART:"elm.text", "ellipsis", 0.0);
+                                       else
+                                               set_state(PART:"elm.text", "default", 0.0);
+
+                                       set_state(PART:"disclip", "default", 0.0);
                                }
                        }
                        program {
                                signal: "elm,state,default";
                                source: "elm";
                                script {
-                                       set_state(PART:"left_separator", "default", 0.0);
-                                       set_state(PART:"right_separator", "default", 0.0);
+                                       set_state(PART:"separator1", "default", 0.0);
+                                       set_state(PART:"separator2", "default", 0.0);
                                }
                        }
                        program {
-                               name: "vertical";
-                               signal: "elm,state,vertical";
+                               name: "separator";
+                               signal: "elm,state,separator";
                                source: "elm";
                                script {
-                                       set_state(PART:"left_separator", "vertical", 0.0);
-                                       set_state(PART:"right_separator", "vertical", 0.0);
+                                       set_state(PART:"separator1", "visible", 0.0);
+                                       set_state(PART:"separator2", "visible", 0.0);
                                }
                        }
                        program {
-                               name: "horizontal";
-                               signal: "elm,state,horizontal";
-                               source: "elm";
+                               name: "item_click2";
+                               signal: "mouse,down,1";
+                               source: "over2";
+                               script {
+                                       set_state(PART:"elm.text", "clicked", 0.0);
+
+                                       new st[31];
+                                       new Float:vl;
+                                       get_state(PART:"separator2", st, 30, vl);
+                                       if (!strcmp(st, "default"))
+                                               set_state(PART:"bg", "clicked", 0.0);
+                                       else
+                                               set_state(PART:"bg", "clicked_separator", 0.0);
+                               }
+                       }
+                       program {
+                               name: "drag";
+                               signal: "drag";
+                               source: "over2";
+                               script {
+                                       new Float:dx, Float:dy;
+                                       get_drag(PART:"over2", dx, dy);
+                                       if ((abs(dx) > 20) || (abs(dy) > 20))
+                                               {
+                                                       set_drag(PART:"over2", 0.0, 0.0);
+                                                       set_state(PART:"bg", "default", 0.0);
+                                               }
+                                       set_drag(PART:"over2", 0.0, 0.0);
+                               }
+                       }
+                       program {
+                               name: "item_unclick2";
+                               signal: "mouse,up,1";
+                               source: "over2";
                                script {
-                                       set_state(PART:"left_separator", "horizontal", 0.0);
-                                       set_state(PART:"right_separator", "horizontal", 0.0);
+                                       set_drag(PART:"over2", 0.0, 0.0);
+                                       set_state(PART:"bg", "default", 0.0);
                                }
                        }
                }
        }
 
-///////////////////////////////////////////////////////////////////////////////////////
-#define CTXPOPUP_IE_FONT_COLOR 255 255 255 255
-#define CTXPOPUP_IE_CLICKED_FONT_COLOR 255 255 100 255
-#define CTXPOPUP_IE_SEPARATOR_COLOR 120 120 120 255
-#define CTXPOPUP_IE_ITEM_DISABLED_COLOR 200 200 200 127
-#define CTXPOPUP_IE_SEPARATOR_PADDING_SIZE 6 2
 ///////////////////////////////////////////////////////////////////////////////
-group {
-       name: "elm/ctxpopup/base/extended/imageeditor";
-       images {
-               image: "imageeditor_bg.png" COMP;
-       }
-       parts {
-               part {
-                       name: "ctxpopup_frame";
-                       type: IMAGE;
-                       scale: 1;
-                       description {
-                               image {
-                                       normal: "imageeditor_bg.png";
-                                       border: 10 10 10 10;
-                                       border_scale: 1;
+       group {
+               name: "elm/ctxpopup/base/more/default";
+               images {
+                       image: "00_popup_bubble_bg.png" COMP;
+               }
+               parts {
+                       part {
+                               name:"frame_shadow_left_top_padding";
+                               type:RECT;
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_SHADOW_LEFT_PADDING CTXPOPUP_SHADOW_TOP_PADDING;
+                                       max: CTXPOPUP_SHADOW_LEFT_PADDING CTXPOPUP_SHADOW_TOP_PADDING;
+                                       rel2 { relative: 0 0; }
+                                       align: 0 0;
+                                       fixed: 1 1;
+                                       visible: 0;
                                }
                        }
-               }
-               part {
-                       name: "elm.swallow.content";
-                       type: SWALLOW;
-                       description {
-                               state: "default" 0.0;
-                       }
-               }//part
-       }//parts
-}
-///////////////////////////////////////////////////////////////////////////////
-group { name: "elm/ctxpopup/arrow/extended/imageeditor";
-       images {
-               image: "imageeditor_left_arrow.png" COMP;
-               image: "imageeditor_right_arrow.png" COMP;
-               image: "imageeditor_top_arrow.png" COMP;
-               image: "imageeditor_bottom_arrow.png" COMP;
-       }
-       parts {
-               part {
-                       name: "ctxpopup_arrow";
-                       type: IMAGE;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               min: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               max: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               fixed: 1 1;
-                               visible: 0;
-                               align: 0.5 0.5;
-                       }
-                       description {
-                               state: "left" 0.0;
-                               min: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               max: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               fixed: 1 1;
-                               align: 0.0 0.5;
-                               image {
-                                       normal: "imageeditor_left_arrow.png";
+                       part {
+                               name:"frame_shadow_right_bottom_padding";
+                               type:RECT;
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_SHADOW_RIGHT_PADDING CTXPOPUP_SHADOW_BOTTOM_PADDING;
+                                       max: CTXPOPUP_SHADOW_RIGHT_PADDING CTXPOPUP_SHADOW_BOTTOM_PADDING;
+                                       rel1{relative: 1 1;}
+                                       align: 1 1;
+                                       fixed: 1 1;
+                                       visible: 0;
                                }
                        }
-                       description {
-                               state: "right" 0.0;
-                               min: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               max: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               fixed: 1 1;
-                               align: 1.0 0.5;
-                               image {
-                                       normal: "imageeditor_right_arrow.png";
+                       part {
+                               name: "frame_bg";
+                               type: IMAGE;
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       rel1 {to:"frame_shadow_left_top_padding";}
+                                       rel2 {to:"frame_shadow_right_bottom_padding";}
+                                       min: CTXPOPUP_MORE_WIDTH_MIN_INC 0;
+                                       image {
+                                               normal: "00_popup_bubble_bg.png";
+                                               border: CTXPOPUP_BUBBLE_BG_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
                                }
                        }
-                       description {
-                               state: "top" 0.0;
-                               min: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               max: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               fixed: 1 1;
-                               align: 0.5 0.0;
-                               image {
-                                       normal: "imageeditor_top_arrow.png";
+                       part { name: "arrow_area_left";
+                               type: RECT;
+                               mouse_events: 0;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       visible: 0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 1 0.5;
+                                       rel1 {
+                                               relative: 1 1;
+                                               to_x:"arrow_left_top_padding";
+                                               to_y: "ctxpopup_frame_left_top";
+                                       }
+                                       rel2 {
+                                               relative: 1 0;
+                                               to_x:"arrow_left_top_padding";
+                                               to_y:"ctxpopup_frame_right_bottom";
+                                       }
                                }
                        }
-                       description {
-                               state: "bottom" 0.0;
-                               min: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               max: CTXPOPUP_IE_ARROW_SIZE_INC CTXPOPUP_IE_ARROW_SIZE_INC;
-                               fixed: 1 1;
-                               align: 0.5 1.0;
-                               image {
-                                       normal: "imageeditor_bottom_arrow.png";
+                       part { name: "arrow_area_right";
+                               type: RECT;
+                               mouse_events: 0;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       visible: 0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 0 0.5;
+                                       rel1 {
+                                               relative: 0 1;
+                                               to_x:"arrow_right_bottom_padding";
+                                               to_y:"ctxpopup_frame_left_top";
+                                       }
+                                       rel2 {
+                                               relative: 0 0;
+                                               to_x:"arrow_right_bottom_padding";
+                                               to_y: "ctxpopup_frame_right_bottom";
+                                       }
                                }
                        }
-               }
-       }
-       programs {
-               program {
-                       name: "enable_left_arrow";
-                       signal: "elm,state,left";
-                       source: "elm";
-                       action: STATE_SET "left" 0.0;
-                       target: "ctxpopup_arrow";
-               }
-               program {
-                       name: "enable_right_arrow";
-                       signal: "elm,state,right";
-                       source: "elm";
-                       action: STATE_SET "right" 0.0;
-                       target: "ctxpopup_arrow";
-               }
-               program {
-                       name: "enable_top_arrow";
-                       signal: "elm,state,top";
-                       source: "elm";
-                       action: STATE_SET "top" 0.0;
-                       target: "ctxpopup_arrow";
-               }
-               program {
-                       name: "enable_bottom_arrow";
-                       signal: "elm,state,bottom";
-                       source: "elm";
-                       action: STATE_SET "bottom" 0.0;
-                       target: "ctxpopup_arrow";
-               }
-       }
-}
-///////////////////////////////////////////////////////////////////////////////
-group {
-       name: "elm/ctxpopup/icon_text_style_item/extended/imageeditor";
-       images {
-               image: "imageeditor_bar_press.png" COMP;
-       }
-
-       parts {
-               part {
-                       name: "event_blocker";
-                       mouse_events: 1;
-                       description {
-                               state: "default" 0.0;
+                       part { name: "arrow_area_up";
+                               type: RECT;
+                               mouse_events: 0;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       visible: 0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 0.5 1;
+                                       rel1 {
+                                               relative: 1 1;
+                                               to_x: "ctxpopup_frame_left_top";
+                                               to_y: "arrow_left_top_padding";
+                                       }
+                                       rel2 {
+                                               relative: 0 1;
+                                               to_x:"ctxpopup_frame_right_bottom";
+                                               to_y: "arrow_left_top_padding";
+                                       }
+                               }
                        }
-               }
-
-               part {
-                       name: "bg";
-                       mouse_events: 0;
-                       type: IMAGE;
-                       description {
-                               state: "default" 0.0;
-                               rel1 { to:"separator_left_top_padding"; relative: 1 0; }
-                               rel2 { to:"separator_right_bottom_padding"; relative: 0 1; }
-                               visible: 0;
+                       part { name: "arrow_area_down";
+                               type: RECT;
+                               mouse_events: 0;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       visible: 0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       align: 0.5 0;
+                                       rel1 {
+                                               relative: 1 0;
+                                               to_x:"ctxpopup_frame_left_top";
+                                               to_y:"arrow_right_bottom_padding";
+                                       }
+                                       rel2 {
+                                               relative: 0 0;
+                                               to_x: "ctxpopup_frame_right_bottom";
+                                               to_y:"arrow_right_bottom_padding";
+                                       }
+                               }
                        }
-                       description {
-                               state: "clicked" 0.0;
-                               rel1 { to:"separator_left_top_padding"; relative: 1 0; }
-                       rel2 { to:"separator_right_bottom_padding"; relative: 0 1; }
-                               image {
-                                       normal: "imageeditor_bar_press.png";
-                                       border: 10 10 10 10;
-                                       border_scale: 1;
+                       part { name: "elm.swallow.arrow_up";
+                               type: SWALLOW;
+                               mouse_events: 0;
+                               scale: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                                       confine: "arrow_area_up";
+                               }
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       visible: 1;
                                }
                        }
-               }
-
-               part {
-                       name: "icon_left_padding";
-                       type: RECT;
-                       scale: 1;
-                       mouse_events: 0;
-                       description {
-                               state: "default" 0.0;
-                               min: CTXPOPUP_IE_ITEM_PADDING_INC CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               max: CTXPOPUP_IE_ITEM_PADDING_INC CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               align: 0 0;
-                               fixed: 1 1;
-                               visible: 0;
+                       part { name: "elm.swallow.arrow_down";
+                               type: SWALLOW;
+                               mouse_events: 0;
+                               scale: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                                       confine: "arrow_area_down";
+                               }
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       visible: 1;
+                               }
                        }
-               }
-               part {
-                       name: "separator_left_top_padding";
-                       type: RECT;
-                       scale: 1;
-               description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               max: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               align: 0 0;
-                               fixed: 1 1;
+                       part { name: "elm.swallow.arrow_left";
+                               type: SWALLOW;
+                               mouse_events: 0;
+                               scale: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                                       confine: "arrow_area_left";
+                               }
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       visible: 1;
+                               }
                        }
-               }
-               part {
-                       name: "separator_right_top_padding";
-                       type: RECT;
-                       scale: 1;
-               description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               max: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               align: 1 0;
-                               fixed: 1 1;
-                       }
-               }
-               part {
-                       name: "separator_left_bottom_padding";
-                       type: RECT;
-                       scale: 1;
-               description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               max: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               align: 0 1;
-                               fixed: 1 1;
-                       }
-               }
-               part {
-                       name: "separator_right_bottom_padding";
-                       type: RECT;
-                       scale: 1;
-               description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               max: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               align: 1 1;
-                               fixed: 1 1;
-                       }
-               }
-
-               part {
-                       name: "bottom_separator";
-                       mouse_events: 0;
-                       type: RECT;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               color: CTXPOPUP_IE_SEPARATOR_COLOR;
-                               rel1 { to:"separator_left_bottom_padding"; relative: 1 0.5; }
-                               rel2 { to:"separator_right_bottom_padding"; relative: 0 1; }
+                       part { name: "elm.swallow.arrow_right";
+                               type: SWALLOW;
+                               mouse_events: 0;
+                               scale: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                                       confine: "arrow_area_right";
+                               }
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_SIZE_INC;
+                                       fixed: 1 1;
+                                       visible: 1;
+                               }
                        }
-               }
-               part {
-                       name: "elm.swallow.icon";
-                       type: SWALLOW;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               min: CTXPOPUP_IE_ICON_WIDTH_INC CTXPOPUP_IE_ICON_HEIGHT_INC;
-                               max: CTXPOPUP_IE_ICON_WIDTH_INC CTXPOPUP_IE_ICON_HEIGHT_INC;
-                               align: 0 0.5;
-                               aspect: 1.0 1.0;
-                               rel1 { to:"icon_left_padding"; relative: 1 0; }
+                       part {
+                               name: "ctxpopup_frame_left_top";
+                               type: RECT;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 0;
+                                       align: 0 0;
+                                       fixed: 1 1;
+                                       min: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
+                                       max: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
+                                       rel1 {relative: 0 0; to: "content_left_top_padding";}
+                               }
                        }
-               }
-               part {
-                       name: "icon_right_padding";
-                       type: RECT;
-                       scale: 1;
-                       mouse_events: 0;
-                       description {
-                               state: "default" 0.0;
-                               min: CTXPOPUP_IE_ITEM_PADDING_INC CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               max: CTXPOPUP_IE_ITEM_PADDING_INC CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               align: 0 0.5;
-                               fixed: 1 1;
-                               visible: 0;
-                               rel1 { to:"elm.swallow.icon"; relative: 1 1; }
+                       part {
+                               name: "ctxpopup_frame_right_bottom";
+                               type: RECT;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 0;
+                                       align: 1 1;
+                                       fixed: 1 1;
+                                       min: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
+                                       max: CTXPOPUP_FRAME_CORNER_ARROW_PADDING CTXPOPUP_FRAME_CORNER_ARROW_PADDING;
+                                       rel2 {relative: 1 1; to: "content_right_bottom_padding";}
+                               }
                        }
-               }
-               part {
-                       name: "elm.text";
-                       type:  TEXT;
-                       mouse_events:  0;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               min: 1 CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               max: (CTXPOPUP_IE_CONTENT_WIDTH_MAX_INC-(3*CTXPOPUP_IE_ITEM_PADDING_INC)-CTXPOPUP_IE_ICON_WIDTH_INC) CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               fixed: 0 1;
-                               align: 0.5 0.5;
-                               rel1 {relative: 1.0 0.0; to_x: "icon_right_padding";}
-                               rel2 {relative: 0.0 1.0; to_x: "text_right_padding";}
-                               color: CTXPOPUP_IE_FONT_COLOR;
-                               text {
-                                       font: "Tizen:style=Medium";
-                                       size: CTXPOPUP_IE_FONT_SIZE_INC;
-                                       align: 0.0 0.5;
-                                       min: 1 1;
-                                       text_class: "list_item";
+                       part {
+                               name:"content_left_top_padding";
+                               type:RECT;
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
+                                       max: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
+                                       rel1 {to:"frame_shadow_left_top_padding";  relative: 1.0 1.0;}
+                                       align: 0 0;
+                                       fixed: 1 1;
+                                       visible: 0;
                                }
                        }
-                       description {
-                               state: "clicked" 0.0;
-                               inherit: "default" 0.0;
-                               color: CTXPOPUP_IE_CLICKED_FONT_COLOR;
+                       part {
+                               name:"content_right_bottom_padding";
+                               type:RECT;
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
+                                       max: CTXPOPUP_CONTENT_PADDING CTXPOPUP_CONTENT_PADDING;
+                                       rel2 {to:"frame_shadow_right_bottom_padding";  relative: 0.0 0.0;}
+                                       align: 1 1;
+                                       fixed: 1 1;
+                                       visible: 0;
+                               }
                        }
-               }
-               part {
-                       name: "text_right_padding";
-                       type: RECT;
-                       scale: 1;
-                       mouse_events: 0;
-                       description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: CTXPOPUP_IE_ITEM_PADDING_INC CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               max: CTXPOPUP_IE_ITEM_PADDING_INC CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               fixed: 1 0;
-                               align: 1.0 0.5;
-               }
-               }
-               part {
-                       name: "over1";
-                       mouse_events: 1;
-                       repeat_events: 1;
-                       ignore_flags: ON_HOLD;
-                       description {
-                               state: "default" 0.0;
+                       part {
+                               name: "arrow_left_top_padding";
+                               type: RECT;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_PADDING CTXPOPUP_ARROW_PADDING;
+                                       max: CTXPOPUP_ARROW_PADDING CTXPOPUP_ARROW_PADDING;
+                                       rel1 {to:"frame_shadow_left_top_padding";  relative: 1.0 1.0;}
+                                       align: 0 0;
+                                       visible: 0;
+                               }
                        }
-               }
-               part {
-                       name: "over2";
-                       mouse_events: 1;
-                       repeat_events: 1;
-                       description {
-                               state: "default" 0.0;
+                       part {
+                               name: "arrow_right_bottom_padding";
+                               type: RECT;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_ARROW_PADDING CTXPOPUP_ARROW_PADDING;
+                                       max: CTXPOPUP_ARROW_PADDING CTXPOPUP_ARROW_PADDING;
+                                       rel2 {to:"frame_shadow_right_bottom_padding";  relative: 0.0 0.0;}
+                                       align: 1 1;
+                                       visible: 0;
+                               }
                        }
-               }
-               part {
-                       name: "disclip";
-                       type: RECT;
-                       description {
-                               state: "default" 0.0;
-                               visible: 0;
+                       part {
+                               name: "elm.swallow.content";
+                               type: SWALLOW;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0 0;
+                                       rel1 {to:"content_left_top_padding";  relative: 1.0 1.0;}
+                                       rel2 {to:"content_right_bottom_padding";  relative: 0.0 0.0;}
+                               }
                        }
-                       description {
-                               state: "disabled" 0.0;
-                               visible: 1;
-                               color: CTXPOPUP_IE_ITEM_DISABLED_COLOR;
+                       part { name: "access.outline";
+                               type: RECT;
+                               repeat_events: 1;
+                               description { state: "default" 0.0;
+                                       fixed: 1 1;
+                                       rel1.to: "frame_bg";
+                                       rel2.to: "frame_bg";
+                                       color: 0 0 0 0;
+                               }
                        }
                }
        }
-       programs {
-               program {
-                       name: "item_unclick";
-                       signal: "mouse,up,1";
-                       source: "over1";
-                       action: SIGNAL_EMIT "elm,action,click" "";
-               }
-               program {
-                       name: "disable";
-                       signal: "elm,state,disabled";
-                       source: "elm";
-                       action: STATE_SET "disabled" 0.0;
-                       target: "disclip";
-               }
-               program {
-                       name: "enable";
-                       signal: "elm,state,enabled";
-                       source: "elm";
-                       action: STATE_SET "default" 0.0;
-                       target: "disclip";
-               }
-               program {
-                       name: "item_click2";
-                       signal: "mouse,down,1";
-                       source: "over2";
-                       script {
-                               set_state(PART:"elm.text", "clicked", 0.0);
-                       }
-               }
-               program {
-                       name: "item_unclick2";
-                       signal: "mouse,up,1";
-                       source: "over2";
-                       script {
-                               set_state(PART:"elm.text", "default", 0.0);
-                       }
+///////////////////////////////////////////////////////////////////////////////
+       group {
+               name: "elm/ctxpopup/icon_text_style_item/more/default";
+
+               images {
+                       image: "00_more_popup_press.png" COMP;
                }
-       }
-}
-///////////////////////////////////////////////////////////////////////////////////////
-group {
-       name: "elm/ctxpopup/text_style_item/extended/imageeditor";
-       images {
-               image: "imageeditor_bar_press.png" COMP;
-       }
 
-       parts {
-               part {
-                       name: "separator_left_padding";
-                       type: RECT;
-                       scale: 1;
-               description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: 2 2;
-                               max: 2 2;
-                               align: 0 1;
-                               fixed: 1 1;
+               data.item: "item_max_size" CTXPOPUP_MORE_TEXT_MAX_INC;
+
+               parts {
+                       part {
+                               name: "event_blocker";
+                               type: RECT;
+                               mouse_events: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       color: 0 0 0 0;
+                               }
                        }
-               }
-               part {
-                       name: "bg";
-                       mouse_events: 0;
-                       type: IMAGE;
-                       description {
-                       state: "default" 0.0;
-               rel1 { to:"separator_left_top_padding"; relative: 1 0; }
-                       rel2 { to:"separator_right_bottom_padding"; relative: 0 1; }
-                       visible: 0;
+                       part {
+                               name: "bg";
+                               mouse_events: 0;
+                               type: IMAGE;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 0;
+                                       min: (CTXPOPUP_MORE_WIDTH_MIN_INC-CTXPOPUP_SHADOW_LEFT_PADDING-CTXPOPUP_SHADOW_RIGHT_PADDING-CTXPOPUP_CONTENT_PADDING*2) 1;
+                                       max: (CTXPOPUP_MORE_WIDTH_MAX_INC-CTXPOPUP_SHADOW_LEFT_PADDING-CTXPOPUP_SHADOW_RIGHT_PADDING-CTXPOPUP_CONTENT_PADDING*2) CTXPOPUP_MORE_ITEM_HEIGHT_MAX_INC;
+                               }
+                               description {
+                                       state: "clicked" 0.0;
+                                       visible: 1;
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
+                               }
+                               description {
+                                       state: "clicked_separator" 0.0;
+                                       rel1 { relative: 0.0 1.0; to_y: "separator2"; }
+                                       visible: 1;
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
+                               }
                        }
-                       description {
-                               state: "clicked" 0.0;
-                               rel1 { to:"separator_left_top_padding"; relative: 1 0; }
-                       rel2 { to:"separator_right_bottom_padding"; relative: 0 1; }
-                       image {
-                                       normal: "imageeditor_bar_press.png";
-                                       border: 10 10 10 10;
-                                       border_scale: 1;
+                       part {
+                               name:"separator_left_padding";
+                               type:RECT;
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       min: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
+                                       max: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
+                                       align: 0 0;
+                                       fixed: 1 1;
+                                       visible: 0;
                                }
                        }
-               }
-               part {
-                       name: "separator_left_top_padding";
-                       type: RECT;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               max: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               align: 0 0;
-                               fixed: 1 1;
+                       part {
+                               name:"separator_right_padding";
+                               type:RECT;
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       min: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
+                                       max: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) 0;
+                                       align: 1 1;
+                                       fixed: 1 1;
+                                       visible: 0;
+                               }
                        }
-               }
-               part {
-                       name: "separator_right_top_padding";
-                       type: RECT;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               max: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               align: 1 0;
-                               fixed: 1 1;
+                       part {
+                               name: "icon_left_padding";
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: (CTXPOPUP_MORE_ITEM_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_MORE_ITEM_HEIGHT_MIN_INC;
+                                       max: (CTXPOPUP_MORE_ITEM_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_MORE_ITEM_HEIGHT_MAX_INC;
+                                       align: 0 0;
+                                       fixed: 1 1;
+                                       visible: 0;
+                               }
                        }
-               }
-               part {
-                       name: "separator_left_bottom_padding";
-                       type: RECT;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               max: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               align: 0 1;
-                               fixed: 1 1;
+                       part {
+                               name: "separator1";
+                               mouse_events: 0;
+                               type: RECT;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       color: CTXPOPUP_SEPARATOR_COLOR_INC;
+                                       rel1 { relative: 1.0 0.0; to_x: "separator_left_padding";}
+                                       rel2 { relative: 0.0 1.0; to_x: "separator_right_padding"; offset: 0 0; }
+                                       align: 0.5 0;
+                                       fixed: 0 1;
+                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       visible: 0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible: 1;
+                               }
                        }
-               }
-               part {
-                       name: "separator_right_bottom_padding";
-                       type: RECT;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               max: CTXPOPUP_IE_SEPARATOR_PADDING_SIZE;
-                               align: 1 1;
-                               fixed: 1 1;
+                       part {
+                               name: "separator2";
+                               mouse_events: 0;
+                               type: RECT;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       color: CTXPOPUP_SEPARATOR2_COLOR_INC;
+                                       rel1 { relative: 0.0 1.0; to: "separator1"; }
+                                       rel2.to: "separator1";
+                                       rel2.offset: 0 0;
+                                       align: 0.5 0;
+                                       fixed: 0 1;
+                                       min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
+                                       visible: 0;
+                               }
+                               description {
+                                       state: "visible" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible: 1;
+                               }
                        }
-               }
-
-               part {
-                       name: "bottom_separator";
-                       mouse_events: 0;
-                       type: RECT;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               color: CTXPOPUP_IE_SEPARATOR_COLOR;
-                               rel1 { to:"separator_left_bottom_padding"; relative: 1 0.5; }
-                               rel2 { to:"separator_right_bottom_padding"; relative: 0 1; }
+                       part {
+                               name: "elm.swallow.icon";
+                               type: SWALLOW;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_MORE_ICON_WIDTH_INC CTXPOPUP_MORE_ICON_HEIGHT_INC;
+                                       max: CTXPOPUP_MORE_ICON_WIDTH_INC CTXPOPUP_MORE_ICON_HEIGHT_INC;
+                                       align: 0 0.5;
+                                       aspect: 1.0 1.0;
+                                       rel1 { to:"icon_left_padding"; relative: 1 0; }
+                               }
                        }
-               }
-               part {
-                       name: "left_padding";
-                       type: RECT;
-                       scale: 1;
-                       mouse_events: 0;
-                       description {
-                               state: "default" 0.0;
-                               min: CTXPOPUP_IE_ITEM_PADDING_INC CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               max: CTXPOPUP_IE_ITEM_PADDING_INC CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               align: 0 0.5;
-                               fixed: 1 1;
-                               visible: 0;
+                       part {
+                               name: "icon_right_padding";
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       min: CTXPOPUP_MORE_ITEM_PADDING_INC CTXPOPUP_MORE_ITEM_HEIGHT_MIN_INC;
+                                       max: CTXPOPUP_MORE_ITEM_PADDING_INC CTXPOPUP_MORE_ITEM_HEIGHT_MAX_INC;
+                                       align: 0 0.5;
+                                       fixed: 1 1;
+                                       visible: 0;
+                                       rel1 { to:"elm.swallow.icon"; relative: 1 1; }
+                               }
                        }
-               }
-               part {
-                       name: "elm.text";
-                       type:  TEXT;
-                       mouse_events:  0;
-                       scale: 1;
-                       description {
-                               state: "default" 0.0;
-                               min: 1 CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               max: (CTXPOPUP_IE_CONTENT_WIDTH_MAX_INC-2*CTXPOPUP_IE_ITEM_PADDING_INC) CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               fixed: 0 1;
-                               align: 0.5 0.5;
-                               rel1 {relative: 1.0 0.0; to: "left_padding";}
-                               rel2 {relative: 0.0 1.0; to: "right_padding";}
-                               color: CTXPOPUP_IE_FONT_COLOR;
-                               text {
-                                       font: "Tizen:style=Medium";
-                                       size: CTXPOPUP_IE_FONT_SIZE_INC;
+                       part {
+                               name: "elm.text";
+                               type:  TEXT;
+                               mouse_events:  0;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min: 1 CTXPOPUP_MORE_ITEM_HEIGHT_MIN_INC;
                                        align: 0.5 0.5;
-                                       min: 1 1;
-                                       text_class: "tizen";
+                                       rel1 {relative: 1.0 0.0; to_x: "icon_right_padding"; to_y: "bg";}
+                                       rel2 {relative: 0.0 1.0; to_x: "text_right_padding"; to_y: "bg";}
+                                       color: CTXPOPUP_LIST_MAIN_TEXT_COLOR_INC;
+                                       text {
+                                               font: "Tizen:style=Roman";
+                                               size: CTXPOPUP_MORE_ITEM_TEXT_SIZE_INC;
+                                               size_range: CTXPOPUP_LIST_MAIN_TEXT_SIZE_INC CTXPOPUP_LIST_MAIN_TEXT_MAX_SIZE_INC;
+                                               align: 0.0 0.5;
+                                               min: 1 1;
+                                               text_class: "list_item";
+                                       }
+                               }
+                               description {
+                                       state: "clicked" 0.0;
+                                       inherit: "default" 0.0;
+                                       color: CTXPOPUP_LIST_MAIN_TEXT_PRESS_COLOR_INC;
+                                       text.min: 0 1;
+                               }
+                               description {
+                                       state: "disabled" 0.0;
+                                       inherit: "default" 0.0;
+                                       color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
+                               }
+                               description {
+                                       state: "ellipsis" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: CTXPOPUP_MORE_TEXT_MAX_INC CTXPOPUP_MORE_ITEM_HEIGHT_MIN_INC;
+                                       text.min: 0 1;
+                               }
+                               description {
+                                       state: "ellipsis_disabled" 0.0;
+                                       inherit: "ellipsis" 0.0;
+                                       color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
                                }
                        }
-                       description {
-                               state: "clicked" 0.0;
-                               inherit: "default" 0.0;
-                               color: CTXPOPUP_IE_CLICKED_FONT_COLOR;
+                       part {
+                               name: "text_right_padding";
+                               type: RECT;
+                               scale: 1;
+                               mouse_events: 0;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 0;
+                                       min: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_MORE_ITEM_HEIGHT_MIN_INC;
+                                       max: (CTXPOPUP_MORE_SEPARATOR_PADDING_INC-CTXPOPUP_CONTENT_PADDING) CTXPOPUP_MORE_ITEM_HEIGHT_MAX_INC;
+                                       fixed: 1 0;
+                                       align: 1.0 0.5;
+                               }
                        }
-               }
-               part {
-                       name: "right_padding";
-                       scale: 1;
-                       mouse_events: 0;
-                       description {
-                               state: "default" 0.0;
-                               visible: 0;
-                               min: 30 CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               max: 30 CTXPOPUP_IE_ITEM_HEIGHT_INC;
-                               fixed: 1 0;
-                               align: 1.0 0.5;
+                       part {
+                               name: "over1";
+                               type: RECT;
+                               mouse_events: 1;
+                               repeat_events: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       color: 0 0 0 0;
+                               }
+                       }
+                       part {
+                               name: "over2";
+                               type: RECT;
+                               mouse_events: 1;
+                               repeat_events: 1;
+                               dragable {
+                                       x: 1 1 0;
+                                       y: 1 1 0;
+                               }
+                               description {
+                                       state: "default" 0.0;
+                                       rel1.to:"bg";
+                                       rel2.to:"bg";
+                                       color: 0 0 0 0;
+                               }
                        }
-               }
-               part {
-                       name: "over1";
-                       mouse_events: 1;
-                       repeat_events: 1;
-                       ignore_flags: ON_HOLD;
-                       description {
-                               state: "default" 0.0;
+                       part {
+                               name: "disclip";
+                               type: RECT;
+                               description {
+                                       state: "default" 0.0;
+                                       visible: 0;
+                               }
+                               description {
+                                       state: "disabled" 0.0;
+                                       visible: 1;
+                                       color: CTXPOPUP_ITEM_DISABLED_COLOR;
+                               }
                        }
                }
-               part {
-                       name: "over2";
-                       mouse_events: 1;
-                       repeat_events: 1;
-                       description {
-                               state: "default" 0.0;
+               programs {
+                       program {
+                               name: "text_ellipsis";
+                               signal: "elm,state,text,ellipsis";
+                               source: "elm";
+                               action: STATE_SET "ellipsis" 0.0;
+                               target: "elm.text";
                        }
-               }
-               part {
-                       name: "disclip";
-                       type: RECT;
-                       description {
-                               state: "default" 0.0;
-                               visible: 0;
+                       program {
+                               name: "item_unclick";
+                               signal: "mouse,clicked,1";
+                               source: "over1";
+                               action: SIGNAL_EMIT "elm,action,click" "";
+                               after: "touch_snd";
                        }
-                       description {
-                               state: "disabled" 0.0;
-                               visible: 1;
-                               color: CTXPOPUP_IE_ITEM_DISABLED_COLOR;
+                       program {
+                               name: "touch_snd";
+                               action: PLAY_SAMPLE "touch_sound" 1.0;
                        }
-               }
+                       program {
+                               name: "disable";
+                               signal: "elm,state,disabled";
+                               source: "elm";
+                               script {
+                                       new st[31];
+                                       new Float:vl;
+                                       get_state(PART:"elm.text", st, 30, vl);
+                                       if ((!strcmp(st, "ellipsis")) || (!strcmp(st, "ellipsis_disabled")))
+                                               set_state(PART:"elm.text", "ellipsis_disabled", 0.0);
+                                       else
+                                               set_state(PART:"elm.text", "disabled", 0.0);
 
-       }
+                                       set_state(PART:"disclip", "disabled", 0.0);
+                               }
+                       }
+                       program {
+                               name: "enable";
+                               signal: "elm,state,enabled";
+                               source: "elm";
+                               script {
+                                       new st[31];
+                                       new Float:vl;
+                                       get_state(PART:"elm.text", st, 30, vl);
+                                       if ((!strcmp(st, "ellipsis")) || (!strcmp(st, "ellipsis_disabled")))
+                                               set_state(PART:"elm.text", "ellipsis", 0.0);
+                                       else
+                                               set_state(PART:"elm.text", "default", 0.0);
 
-       programs {
-               program {
-                       name: "item_unclick";
-                       signal: "mouse,up,1";
-                       source: "over1";
-                       action: SIGNAL_EMIT "elm,action,click" "";
-               }
-               program {
-                       name: "disable";
-                       signal: "elm,state,disabled";
-                       source: "elm";
-                       action: STATE_SET "disabled" 0.0;
-                       target: "disclip";
-               }
-               program {
-                       name: "enable";
-                       signal: "elm,state,enabled";
-                       source: "elm";
-                       action: STATE_SET "default" 0.0;
-                       target: "disclip";
-               }
+                                       set_state(PART:"disclip", "default", 0.0);
+                               }
+                       }
+                       program {
+                               name: "default";
+                               signal: "elm,state,default";
+                               source: "elm";
+                               script {
+                                       set_state(PART:"separator1", "default", 0.0);
+                                       set_state(PART:"separator2", "default", 0.0);
+                               }
+                       }
+                       program {
+                               name: "separator";
+                               signal: "elm,state,separator";
+                               source: "elm";
+                               script {
+                                       set_state(PART:"separator1", "visible", 0.0);
+                                       set_state(PART:"separator2", "visible", 0.0);
+                               }
+                       }
+                       program {
+                               name: "item_click2";
+                               signal: "mouse,down,1";
+                               source: "over2";
+                               script {
+                                       set_state(PART:"elm.text", "clicked", 0.0);
 
-               program {
-                       name: "item_click2";
-                       signal: "mouse,down,1";
-                       source: "over2";
-                       script {
-                               set_state(PART:"elm.text", "clicked", 0.0);
+                                       new st[31];
+                                       new Float:vl;
+                                       get_state(PART:"separator2", st, 30, vl);
+                                       if (!strcmp(st, "default"))
+                                               set_state(PART:"bg", "clicked", 0.0);
+                                       else
+                                               set_state(PART:"bg", "clicked_separator", 0.0);
+                               }
                        }
-               }
-               program {
-                       name: "item_unclick2";
-                       signal: "mouse,up,1";
-                       source: "over2";
-                       script {
-                               set_state(PART:"elm.text", "default", 0.0);
+                       program {
+                               name: "drag";
+                               signal: "drag";
+                               source: "over2";
+                               script {
+                                       new Float:dx, Float:dy;
+                                       get_drag(PART:"over2", dx, dy);
+                                       if ((abs(dx) > 20) || (abs(dy) > 20))
+                                               {
+                                                       set_drag(PART:"over2", 0.0, 0.0);
+                                                       set_state(PART:"bg", "default", 0.0);
+                                               }
+                                       set_drag(PART:"over2", 0.0, 0.0);
+                               }
+                       }
+                       program {
+                               name: "item_unclick2";
+                               signal: "mouse,up,1";
+                               source: "over2";
+                               script {
+                                       set_drag(PART:"over2", 0.0, 0.0);
+                                       set_state(PART:"bg", "default", 0.0);
+                               }
                        }
                }
        }
-}
-
 ///////////////////////////////////////////////////////////////////////////////////////
 #define CTXPOPUP_TP_TEXT_WIDTH 32
 #define CTXPOPUP_TP_PADDING 15
@@ -4204,24 +3818,30 @@ group {
 group {
        name: "elm/ctxpopup/base/datetime/default";
        alias: "elm/ctxpopup/base/timepicker";
+
+       images {
+               image: "00_time_picker_number_bg.png" COMP;
+       }
+
        parts {
                part {
                        name: "ctxpopup_frame";
-                       type: RECT;
+                       type: IMAGE;
                        scale: 1;
-                       clip_to: "ctxpopup_clip";
                        description {
-                               color: CTXPOPUP_TP_BG_COLOR_INC;
-                               min: 1 CTXPOPUP_TP_HEIGHT_INC;
-                               rel1 { to: "elm.swallow.content"; }
-                               rel2 { to: "elm.swallow.content"; }
+                               rel1 {to:"elm.swallow.content";}
+                               rel2 {to:"elm.swallow.content";}
+                               image {
+                                       normal: "00_time_picker_number_bg.png";
+                                       border: CTXPOPUP_TP_BG_IMAGE_BORDER;
+                                       border_scale: 1;
+                               }
                        }
                }
                part {
                        name: "elm.swallow.content";
                        type: SWALLOW;
                        scale: 1;
-                       clip_to: "ctxpopup_clip";
                        description {
                                state: "default" 0.0;
                                min: 1 CTXPOPUP_TP_HEIGHT_INC;
@@ -4231,7 +3851,6 @@ group {
                                type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
                                description { state: "default" 0.0;
                                        visible: 0;
                                        min: 20 0;
@@ -4251,7 +3870,6 @@ group {
                                type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
                                description { state: "default" 0.0;
                                        visible: 0;
                                        min: 20 0;
@@ -4271,7 +3889,6 @@ group {
                                type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
                                description { state: "default" 0.0;
                                        visible: 0;
                                        min: 0 20;
@@ -4291,7 +3908,6 @@ group {
                                type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
                                description { state: "default" 0.0;
                                        visible: 0;
                                        min: 0 20;
@@ -4311,7 +3927,6 @@ group {
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
                                dragable {
                                        x: 1 1 0;
                                        y: 1 1 0;
@@ -4328,7 +3943,6 @@ group {
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
                                dragable {
                                        x: 1 1 0;
                                        y: 1 1 0;
@@ -4345,7 +3959,6 @@ group {
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
                                dragable {
                                        x: 1 1 0;
                                        y: 1 1 0;
@@ -4362,7 +3975,6 @@ group {
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               clip_to: "ctxpopup_clip";
                                dragable {
                                        x: 1 1 0;
                                        y: 1 1 0;
@@ -4375,141 +3987,14 @@ group {
                                        visible: 1;
                                }
                        }
-                       part { name: "ctxpopup_clip";
-                               type: RECT;
-                               description { state: "default" 0.0;
-                               color: 255 255 255 0;
-                               rel1 { to:"ctxpopup_frame"; relative: 0 0; }
-                               rel2 { to:"ctxpopup_frame"; relative: 0 1; }
-                               }
-                               description { state: "show_up" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"arrow_area_down"; relative: 0 1; }
-                                       rel2 { to:"arrow_area_down"; relative: 1 1; }
-                               }
-                               description { state: "show_left" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"arrow_area_right"; relative: 1 0; }
-                                       rel2 { to:"arrow_area_right"; relative: 1 1; }
-                               }
-                               description { state: "show_right" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"arrow_area_left"; relative: 0 0; }
-                                       rel2 { to:"arrow_area_left"; relative: 0 1; }
-                               }
-                               description { state: "show_down" 0.0;
-                                       color: 255 255 255 0;
-                                       rel1 { to:"arrow_area_up"; relative: 0 0; }
-                                       rel2 { to:"arrow_area_up"; relative: 1 0; }
-                               }
-                               description { state: "hide_up" 0.0;
-                                       color: 255 255 255 255;
-                                       rel1 { to:"arrow_area_down"; relative: 0 1; }
-                                       rel1 { to:"arrow_area_down"; relative: 1 1; }
-                               }
-                               description { state: "hide_left" 0.0;
-                                       color: 255 255 255 255;
-                                       rel1 { to:"arrow_area_right"; relative: 1 0; }
-                                       rel2 { to:"arrow_area_right"; relative: 1 1; }
-                               }
-                               description { state: "hide_right" 0.0;
-                                       color: 255 255 255 255;
-                                       rel1 { to:"arrow_area_left"; relative: 0 0; }
-                                       rel2 { to:"arrow_area_left"; relative: 0 1; }
-                               }
-                               description { state: "hide_down" 0.0;
-                                       color: 255 255 255 255;
-                                       rel1 { to:"arrow_area_up"; relative: 0 0; }
-                                       rel2 { to:"arrow_area_up"; relative: 1 0; }
-                               }
-                               description { state: "visible" 0.0;
-                                       color: 255 255 255 255;
-                                       rel1 { to_x:"arrow_area_left"; to_y:"arrow_area_up"; }
-                                       rel2 { to_x:"arrow_area_right"; to_y:"arrow_area_down"; }
-                               }
-                       }
-       }
-       programs {
-               program { name: "show";
-                       signal: "elm,state,show";
-                       source: "elm";
-                       action: STATE_SET "visible" 0.0;
-                       transition: LINEAR 0.25;
-                       target: "ctxpopup_clip";
-               }
-               program { name: "show_up";
-                       signal: "elm,state,show,up";
-                       source: "elm";
-                       action: STATE_SET "show_up" 0.0;
-                       transition: LINEAR 0.25;
-                       target: "ctxpopup_clip";
-               }
-               program { name: "show_left";
-                       signal: "elm,state,show,left";
-                       source: "elm";
-                       action: STATE_SET "show_left" 0.0;
-                       transition: LINEAR 0.25;
-                       target: "ctxpopup_clip";
-               }
-               program { name: "show_right";
-                       signal: "elm,state,show,right";
-                       source: "elm";
-                       action: STATE_SET "show_right" 0.0;
-                       transition: LINEAR 0.25;
-                       target: "ctxpopup_clip";
-               }
-               program { name: "show_down";
-                       signal: "elm,state,show,down";
-                       source: "elm";
-                       action: STATE_SET "show_down" 0.0;
-                       transition: LINEAR 0.25;
-                       target: "ctxpopup_clip";
-               }
-               program { name: "hide_up";
-                       signal: "elm,state,hide,up";
-                       source: "elm";
-                       action: STATE_SET "hide_up" 0.0;
-                       transition: LINEAR 0.25;
-                       target: "ctxpopup_clip";
-                       after: "hide_finished";
-               }
-               program { name: "hide_left";
-                       signal: "elm,state,hide,left";
-                       source: "elm";
-                       action: STATE_SET "hide_left" 0.0;
-                       transition: LINEAR 0.25;
-                       target: "ctxpopup_clip";
-                       after: "hide_finished";
-               }
-               program { name: "hide_right";
-                       signal: "elm,state,hide,right";
-                       source: "elm";
-                       action: STATE_SET "hide_right" 0.0;
-                       transition: LINEAR 0.25;
-                       target: "ctxpopup_clip";
-                       after: "hide_finished";
-               }
-               program { name: "hide_down";
-                       signal: "elm,state,hide,down";
-                       source: "elm";
-                       action: STATE_SET "hide_down" 0.0;
-                       transition: LINEAR 0.25;
-                       target: "ctxpopup_clip";
-                       after: "hide_finished";
-               }
-               program { name: "hide_finished";
-                       action: SIGNAL_EMIT "elm,action,hide,finished" "";
-               }
        }
 }
 ///////////////////////////////////////////////////////////////////////////////
 group { name: "elm/ctxpopup/arrow/datetime/default";
        alias: "elm/ctxpopup/arrow/timepicker";
        images {
-               image: "timepicker_left_arrow.png" COMP;
-               image: "timepicker_right_arrow.png" COMP;
-               image: "timepicker_top_arrow.png" COMP;
-               image: "timepicker_bottom_arrow.png" COMP;
+               image: "00_time_picker_tail.png" COMP;
+               image: "00_time_picker_tail_01.png" COMP;
        }
        parts {
                part {
@@ -4518,50 +4003,50 @@ group { name: "elm/ctxpopup/arrow/datetime/default";
                        scale: 1;
                        description {
                                state: "default" 0.0;
-                               min: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
-                               max: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
+                               min: CTXPOPUP_TP_ARROW_SIZE_INC;
+                               max: CTXPOPUP_TP_ARROW_SIZE_INC;
                                fixed: 1 1;
                                visible: 0;
                                align: 0.5 0.5;
                        }
                        description {
                                state: "left" 0.0;
-                               min: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
-                               max: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
+                               min: CTXPOPUP_TP_ARROW_SIZE_INC;
+                               max: CTXPOPUP_TP_ARROW_SIZE_INC;
                                fixed: 1 1;
                                align: 1.0 0.5;
                                image {
-                                       normal: "timepicker_left_arrow.png";
+                                       normal: "00_time_picker_tail.png";
                                }
                        }
                        description {
                                state: "right" 0.0;
-                               min: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
-                               max: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
+                               min: CTXPOPUP_TP_ARROW_SIZE_INC;
+                               max: CTXPOPUP_TP_ARROW_SIZE_INC;
                                fixed: 1 1;
                                align: 0.0 0.5;
                                image {
-                                       normal: "timepicker_right_arrow.png";
+                                       normal: "00_time_picker_tail.png";
                                }
                        }
                        description {
                                state: "top" 0.0;
-                               min: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
-                               max: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
+                               min: CTXPOPUP_TP_ARROW_SIZE_INC;
+                               max: CTXPOPUP_TP_ARROW_SIZE_INC;
                                fixed: 1 1;
                                align: 0.5 1.0;
                                image {
-                                       normal: "timepicker_top_arrow.png";
+                                       normal: "00_time_picker_tail.png";
                                }
                        }
                        description {
                                state: "bottom" 0.0;
-                               min: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
-                               max: CTXPOPUP_TP_ARROW_SIZE_INC CTXPOPUP_TP_ARROW_SIZE_INC;
+                               min: CTXPOPUP_TP_ARROW_SIZE_INC;
+                               max: CTXPOPUP_TP_ARROW_SIZE_INC;
                                fixed: 1 1;
                                align: 0.5 0.0;
                                image {
-                                       normal: "timepicker_bottom_arrow.png";
+                                       normal: "00_time_picker_tail_01.png";
                                }
                        }
                }
@@ -4658,15 +4143,18 @@ group {
                }
                part {
                        name: "over1";
+                       type: RECT;
                        mouse_events: 1;
                        repeat_events: 1;
                        ignore_flags: ON_HOLD;
                        description {
                                state: "default" 0.0;
+                               color: 0 0 0 0;
                        }
                }
                part {
                        name: "over2";
+                       type: RECT;
                        mouse_events: 1;
                        repeat_events: 1;
                        description {
@@ -4681,6 +4169,11 @@ group {
                        signal: "mouse,up,1";
                        source: "over1";
                        action: SIGNAL_EMIT "elm,action,click" "";
+                       after: "touch_snd";
+               }
+               program {
+                       name: "touch_snd";
+                       action: PLAY_SAMPLE "touch_sound" 1.0;
                }
                program {
                        name: "item_click";
@@ -4703,9 +4196,17 @@ group {
 ///////////////////////////////////////////////////////////////////////////////
        group {
                name: "elm/ctxpopup/text_style_item/toolbar_segmentedcontrol";
+
+               images {
+                                       image: "00_more_popup_press.png" COMP;
+                               }
+
+               data.item: "item_max_size" CTXPOPUP_TEXT_MAX_INC;
+
                parts {
                        part {
                                name: "event_blocker";
+                               type: RECT;
                                mouse_events: 1;
                                description {
                                        state: "default" 0.0;
@@ -4715,24 +4216,32 @@ group {
                        part {
                                name: "bg";
                                mouse_events: 0;
-                               type: RECT;
+                               type: IMAGE;
+                               scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       color: CTXPOPUP_BG_COLOR_INC;
-                                       visible: 1;
-                                       min: (CTXPOPUP_TOOLBAR_SEGMENTEDCONTROL_WIDTH_INC-CTXPOPUP_SHADOW_LEFT_PADDING-CTXPOPUP_SHADOW_RIGHT_PADDING-CTXPOPUP_CONTENT_PADDING*2) 1;
-                                       max: (CTXPOPUP_TOOLBAR_SEGMENTEDCONTROL_WIDTH_INC-CTXPOPUP_SHADOW_LEFT_PADDING-CTXPOPUP_SHADOW_RIGHT_PADDING-CTXPOPUP_CONTENT_PADDING*2) CTXPOPUP_TOOLBAR_SEGMENTEDCONTROL_HEIGHT_MAX_INC;
+                                       visible: 0;
+                                       min: (CTXPOPUP_TOOLBAR_SEGMENTEDCONTROL_WIDTH_MIN_INC-CTXPOPUP_SHADOW_LEFT_PADDING-CTXPOPUP_SHADOW_RIGHT_PADDING-CTXPOPUP_CONTENT_PADDING*2) 1;
+                                       max: (CTXPOPUP_TOOLBAR_SEGMENTEDCONTROL_WIDTH_MAX_INC-CTXPOPUP_SHADOW_LEFT_PADDING-CTXPOPUP_SHADOW_RIGHT_PADDING-CTXPOPUP_CONTENT_PADDING*2) CTXPOPUP_TOOLBAR_SEGMENTEDCONTROL_HEIGHT_MAX_INC;
                                }
                                description {
                                        state: "clicked" 0.0;
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
                                        visible: 1;
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
                                }
                                description {
                                        state: "clicked_separator" 0.0;
                                        rel1 { relative: 0.0 1.0; to_y: "separator2"; }
-                                       color: CTXPOPUP_BG_PRESS_COLOR_INC;
                                        visible: 1;
+                                       image {
+                                               normal: "00_more_popup_press.png";
+                                               border: CTXPOPUP_BUBBLE_BG_PRESSED_IMAGE_BORDER;
+                                               border_scale: 1;
+                                       }
                                }
                        }
                        part {
@@ -4744,7 +4253,7 @@ group {
                                        state: "default" 0.0;
                                        color: CTXPOPUP_SEPARATOR_COLOR_INC;
                                        rel1 { relative: 1.0 0.0; to_x: "left_padding";}
-                                       rel2 { relative: 0.0 1.0; to_x: "right_padding";}
+                                       rel2 { relative: 0.0 1.0; to_x: "right_padding"; offset: 0 0;}
                                        align: 0.5 0;
                                        min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
                                        max: 999999 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
@@ -4765,7 +4274,7 @@ group {
                                        state: "default" 0.0;
                                        color: CTXPOPUP_SEPARATOR2_COLOR_INC;
                                        rel1 { relative: 0.0 1.0; to: "separator1";}
-                                       rel2 { relative: 1.0 1.0; to: "separator1";}
+                                       rel2 { relative: 1.0 1.0; to: "separator1"; offset: 0 0; }
                                        align: 0.5 0;
                                        fixed: 0 1;
                                        min: 0 CTXPOPUP_SEPARATOR_PXLINE_SIZE_INC;
@@ -4807,23 +4316,17 @@ group {
                                        text {
                                                font: "Tizen:style=Roman";
                                                size: CTXPOPUP_LIST_MAIN_TEXT_SIZE_INC;
+                                               size_range: CTXPOPUP_LIST_MAIN_TEXT_SIZE_INC CTXPOPUP_LIST_MAIN_TEXT_MAX_SIZE_INC;
                                                align: 0.5 0.5;
-                                               min: 0 1;
+                                               min: 1 1;
                                                text_class: "list_item";
                                        }
                                }
                                description {
-                                       state: "compress" 0.0;
-                                       inherit: "default" 0.0;
-                                       max: -1 -1;
-                                       text {
-                                               min: 0 1;
-                                       }
-                               }
-                               description {
                                        state: "clicked" 0.0;
                                        inherit: "default" 0.0;
                                        color: CTXPOPUP_LIST_MAIN_TEXT_PRESS_COLOR_INC;
+                                       text.min: 0 1;
                                }
                                description {
                                        state: "disabled" 0.0;
@@ -4831,8 +4334,14 @@ group {
                                        color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
                                }
                                description {
-                                       state: "compress_disabled" 0.0;
-                                       inherit: "compress" 0.0;
+                                       state: "ellipsis" 0.0;
+                                       inherit: "default" 0.0;
+                                       min: CTXPOPUP_TEXT_MAX_INC CTXPOPUP_TOOLBAR_SEGMENTEDCONTROL_HEIGHT_MIN_INC;
+                                       text.min: 0 1;
+                               }
+                               description {
+                                       state: "ellipsis_disabled" 0.0;
+                                       inherit: "ellipsis" 0.0;
                                        color: CTXPOPUP_LIST_MAIN_TEXT_DIM_COLOR_INC;
                                }
                        }
@@ -4852,10 +4361,12 @@ group {
                        }
                        part {
                                name: "over1";
+                               type: RECT;
                                mouse_events: 1;
                                repeat_events: 1;
                                description {
                                        state: "default" 0.0;
+                                       color: 0 0 0 0;
                                }
                        }
                        part {
@@ -4864,7 +4375,7 @@ group {
                                mouse_events: 1;
                                repeat_events: 1;
                                dragable {
-                                       x: 0 0 0;
+                                       x: 1 1 0;
                                        y: 1 1 0;
                                }
                                description {
@@ -4890,10 +4401,22 @@ group {
                }
                programs {
                        program {
+                               name: "text_ellipsis";
+                               signal: "elm,state,text,ellipsis";
+                               source: "elm";
+                               action: STATE_SET "ellipsis" 0.0;
+                               target: "elm.text";
+                       }
+                       program {
                                name: "item_unclick";
                                signal: "mouse,clicked,1";
                                source: "over1";
                                action: SIGNAL_EMIT "elm,action,click" "";
+                               after: "touch_snd";
+                       }
+                       program {
+                               name: "touch_snd";
+                               action: PLAY_SAMPLE "touch_sound" 1.0;
                        }
                        program {
                                name: "disable";
@@ -4903,8 +4426,8 @@ group {
                                        new st[31];
                                        new Float:vl;
                                        get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
+                                       if ((!strcmp(st, "ellipsis")) || (!strcmp(st, "ellipsis_disabled")))
+                                               set_state(PART:"elm.text", "ellipsis_disabled", 0.0);
                                        else
                                                set_state(PART:"elm.text", "disabled", 0.0);
 
@@ -4919,8 +4442,8 @@ group {
                                        new st[31];
                                        new Float:vl;
                                        get_state(PART:"elm.text", st, 30, vl);
-                                       if ((!strcmp(st, "compress")) || (!strcmp(st, "compress_disabled")))
-                                               set_state(PART:"elm.text", "compress", 0.0);
+                                       if ((!strcmp(st, "ellipsis")) || (!strcmp(st, "ellipsis_disabled")))
+                                               set_state(PART:"elm.text", "ellipsis", 0.0);
                                        else
                                                set_state(PART:"elm.text", "default", 0.0);
 
@@ -4937,20 +4460,6 @@ group {
                                }
                        }
                        program {
-                               name: "compress";
-                               signal: "elm,state,compress";
-                               source: "elm";
-                               script {
-                                       new st[31];
-                                       new Float:vl;
-                                       get_state(PART:"disclip", st, 30, vl);
-                                       if (!strcmp(st, "disabled"))
-                                               set_state(PART:"elm.text", "compress_disabled", 0.0);
-                                       else
-                                               set_state(PART:"elm.text", "compress", 0.0);
-                               }
-                       }
-                       program {
                                name: "separator";
                                signal: "elm,state,separator";
                                source: "elm";
@@ -4982,10 +4491,9 @@ group {
                                script {
                                        new Float:dx, Float:dy;
                                        get_drag(PART:"over2", dx, dy);
-                                       if (abs(dy) > 20)
+                                       if ((abs(dx) > 20) || (abs(dy) > 20))
                                                {
                                                        set_drag(PART:"over2", 0.0, 0.0);
-                                                       set_state(PART:"elm.text", "compress", 0.0);
                                                        set_state(PART:"bg", "default", 0.0);
                                                }
                                        set_drag(PART:"over2", 0.0, 0.0);
@@ -4997,9 +4505,8 @@ group {
                                source: "over2";
                                script {
                                        set_drag(PART:"over2", 0.0, 0.0);
-                                       set_state(PART:"elm.text", "compress", 0.0);
                                        set_state(PART:"bg", "default", 0.0);
                                }
                        }
                }
-       }
\ No newline at end of file
+       }