change indicator theme for indicator issue
authorJiyoun Park <jy0703.park@samsung.com>
Thu, 22 Aug 2013 08:55:11 +0000 (17:55 +0900)
committerSungho Kwak <sungho1.kwak@samsung.com>
Wed, 28 Aug 2013 08:12:38 +0000 (17:12 +0900)
Change-Id: Ic554d9491dca08f8d8564bd383199e0551c0b908

Conflicts:

themes/widgets/conformant.edc

themes/widgets/conformant.edc

index 8dafb7e..0c18397 100644 (file)
            description { state: "default" 0.0;
            }
         }
+        part { name: "indicator_base";
+           type: RECT;
+           scale: 1;
+           mouse_events: 0;
+           description { state: "default" 0.0;
+              fixed: 0 1;
+              align: 0.5 0.0;
+              min: 0 LAYOUT_INDICATOR_HEIGHT_INC;
+              rel2.relative: 1.0 0.0;
+              visible: 0;
+           }
+           description { state: "hide" 0.0;
+              inherit: "default" 0.0;
+              min: 0 0;
+           }
+        }
+        part { name: "indicator_overlap_base";
+           type: RECT;
+           description { state: "default" 0.0; //nooverlap
+              rel1 { relative: 0.0 0.0; to: "indicator_base"; }
+              rel2 { relative: 1.0 1.0; to: "indicator_base"; }
+              visible: 0;
+           }
+           description { state: "overlap" 0.0; //content start (0,0)
+              inherit: "default" 0.0;
+              rel2 { relative: 1.0 0.0; to: "indicator_base"; }
+           }
+        }
         part { name: "elm.swallow.content";
            type: SWALLOW;
            scale: 1;
-           description { state: "default" 0.0; //indi: nooverlap, sip: enable
+           description { state: "default" 0.0; //sip: enable
               align: 0.5 0.5;
               rel1.relative: 0.0 1.0;
-              rel1.to: "elm.swallow.indicator";
+              rel1.to: "indicator_overlap_base";
               rel2.relative: 1.0 0.0;
               rel2.to: "sip_area";
            }
-           description { state: "nooverlap_disable_sip" 0.0; //indi: nooverlap, sip: disable
+           description { state: "disable_sip" 0.0; //sip: disable
               inherit: "default" 0.0;
               rel2.relative: 1.0 1.0;
               rel2.to: "elm.swallow.bg";
            }
-           description { state: "overlap" 0.0; //indi: overlap, sip: enable
-              inherit: "default" 0.0;
-              rel1.relative: 0.0 0.0;
-              rel1.to: "elm.swallow.indicator";
-           }
-           description { state: "overlap_disable_sip" 0.0; //indi: overlap, sip: disable
-              inherit: "default" 0.0;
-              rel1.relative: 0.0 0.0;
-              rel1.to: "elm.swallow.indicator";
-              rel2.relative: 1.0 1.0;
-              rel2.to: "elm.swallow.bg";
-           }
         }
         part { name: "elm.swallow.ug";
            type: SWALLOW;
            description { state: "default" 0.0;
               align: 0.5 0.5;
               rel1.relative: 0.0 1.0;
-              rel1.to: "elm.swallow.indicator";
+              rel1.to: "indicator_overlap_base";
               rel2.relative: 1.0 0.0;
               rel2.to: "sip_area";
            }
-           description { state: "overlap" 0.0;
+           description { state: "disable_sip" 0.0; //sip: disable
               inherit: "default" 0.0;
-              align: 0.5 0.5;
-              rel1.relative: 0.0 0.0;
-              rel1.to: "elm.swallow.indicator";
-              rel2.relative: 1.0 0.0;
-              rel2.to: "sip_area";
+              rel2.relative: 1.0 1.0;
+              rel2.to: "elm.swallow.bg";
+           }
+        }
+        part { name: "indicator_clipper";
+           type: RECT;
+           description { state: "default" 0.0;
+              rel1 { relative: 0.0 0.0; to: "indicator_base"; }
+              rel2 { relative: 1.0 1.0; to: "indicator_base"; }
+              visible: 1;
+           }
+           description { state: "hide" 0.0;
+              inherit: "default" 0.0;
+              rel1 { relative: 0.0 -1.0; to: "indicator_base"; }
+              rel2 { relative: 1.0  0.0; to: "indicator_base"; }
            }
         }
         part { name: "indicator_bg";
            type: RECT;
-           scale: 1;
            mouse_events: 0;
+           clip_to: "indicator_clipper";
            description { state: "default" 0.0;
-              fixed: 0 1;
-              align: 0.5 0.0;
-              min: 0 LAYOUT_INDICATOR_HEIGHT_INC;
-              rel2.relative: 1.0 0.0;
-              visible: 1;
+              rel1 { relative: 0.0 0.0; to: "indicator_clipper"; }
+              rel2 { relative: 1.0 1.0; to: "indicator_clipper"; }
               color: CONFORMANT_INDICATOR_BG_DEFAULT_COLOR_INC;
            }
            description { state: "translucent" 0.0;
-              fixed: 0 1;
-              align: 0.5 0.0;
-              min: 0 LAYOUT_INDICATOR_HEIGHT_INC;
-              rel2.relative: 1.0 0.0;
-              visible: 1;
+              inherit: "default" 0.0;
               color: CONFORMANT_INDICATOR_BG_TRANSLUCENT_COLOR_INC;
            }
            description { state: "transparent" 0.0;
-              fixed: 0 1;
-              align: 0.5 0.0;
-              min: 0 LAYOUT_INDICATOR_HEIGHT_INC;
-              rel2.relative: 1.0 0.0;
-              visible: 1;
-              color: CONFORMANT_INDICATOR_BG_TRANSPARENT_COLOR_INC;
-           }
-            description { state: "hide" 0.0;
               inherit: "default" 0.0;
-              visible: 0;
-              min: 0 0;
+              color: CONFORMANT_INDICATOR_BG_TRANSPARENT_COLOR_INC;
            }
         }
         part { name: "elm.swallow.indicator";
            type: SWALLOW;
            scale: 1;
+           clip_to: "indicator_clipper";
            description { state: "default" 0.0;
-              fixed: 0 1;
-              align: 0.5 0.0;
-              min: 0 LAYOUT_INDICATOR_HEIGHT_INC;
-              rel2.relative: 1.0 0.0;
-              visible: 1;
-           }
-            description { state: "hide" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              min: 0 0;
+              rel1 { relative: 0.0 0.0; to: "indicator_clipper"; }
+              rel2 { relative: 1.0 1.0; to: "indicator_clipper"; }
            }
         }
         part { name: "sip_area";
      }
      programs {
         program {
-            name: "show_indicator";
+            name: "show_indicator"; //show indicator using effect
             signal: "elm,state,indicator,show";
             source: "elm";
             script {
                set_int(indicator_visible, 1);
-               set_state(PART:"elm.swallow.indicator", "default", 0.0);
-               if (get_int(indicator_opacity) == 0)
-                  set_state(PART:"indicator_bg", "opaque", 0.0);
-               if (get_int(indicator_opacity) == 1)
-                  set_state(PART:"indicator_bg", "translucent", 0.0);
-               if (get_int(indicator_opacity) == 2)
-                  set_state(PART:"indicator_bg", "transparent", 0.0);
+               set_state(PART:"indicator_base", "default", 0.0);
+               //it is possible app call show after opacity call
+               if (get_int(landscape) == 0) {//portrait
+                 if (get_int(indicator_opacity) == 0)
+                    set_state(PART:"indicator_bg", "opaque", 0.0);
+                 if (get_int(indicator_opacity) == 1)
+                    set_state(PART:"indicator_bg", "translucent", 0.0);
+                 if (get_int(indicator_opacity) == 2)
+                    set_state(PART:"indicator_bg", "transparent", 0.0);
+               }
+               else
+                 set_state(PART:"indicator_bg", "transparent", 0.0);
             }
         }
         program {
             source: "elm";
             script {
                set_int(indicator_visible, 0);
-               set_state(PART:"elm.swallow.indicator", "hide", 0.0);
-               set_state(PART:"indicator_bg", "hide", 0.0);
+               set_state(PART:"indicator_base", "hide", 0.0);
             }
         }
         program {
             source: "elm";
             script {
                set_int(indicator_opacity, 0);
+               //Only portrait can show opaque mode
                if (get_int(indicator_visible) == 1)
-                  set_state(PART:"indicator_bg", "opaque", 0.0);
+                 {
+                    if (get_int(landscape) == 0)
+                      set_state(PART:"indicator_bg", "opaque", 0.0);
+                 }
             }
         }
         program {
             script {
                set_int(indicator_opacity, 1);
                if (get_int(indicator_visible) == 1)
-                  set_state(PART:"indicator_bg", "translucent", 0.0);
+                 {
+                    set_state(PART:"indicator_overlap_base", "overlap", 0.0);
+                    if (get_int(landscape) == 0)
+                      set_state(PART:"indicator_bg", "transparent", 0.0);
+                    else
+                      set_state(PART:"indicator_bg", "translucent", 0.0);
+                 }
             }
         }
         program {
             script {
                set_int(indicator_opacity, 2);
                if (get_int(indicator_visible) == 1)
-                  set_state(PART:"indicator_bg", "transparent", 0.0);
+                 {
+                    set_state(PART:"indicator_overlap_base", "overlap", 0.0);
+                    set_state(PART:"indicator_bg", "transparent", 0.0);
+                 }
             }
         }
         program {
            source: "";
            script {
               set_int(indicator_overlap, 1);
-              set_state(PART:"elm.swallow.ug", "overlap", 0.0);
-              if ((get_int(keypad_disable) == 1) && (get_int(clipboard_disable) == 1))
-                set_state(PART:"elm.swallow.content", "overlap_disable_sip", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "overlap", 0.0);
+              set_state(PART:"indicator_overlap_base", "overlap", 0.0);
           }
         }
         program {
            source: "";
            script {
               //Only portrait state get nooverlap mode
-              set_int(portrait_overlap, 0);
-              if (get_int(landscape) == 0)
-                {
-                   set_int(indicator_overlap, 0);
-                   set_state(PART:"elm.swallow.ug", "default", 0.0);
-              if ((get_int(keypad_disable) == 1) && (get_int(clipboard_disable) == 1))
-                set_state(PART:"elm.swallow.content", "nooverlap_disable_sip", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "default", 0.0);
+              set_int(indicator_overlap, 0);
+              if (get_int(indicator_visible) == 1)
+                if (get_int(indicator_opacity) == 0) { //only opaque can be nooverlap
+                  if (get_int(landscape) == 0) { //landscape should be overlap
+                    set_state(PART:"indicator_overlap_base", "default", 0.0);
+                  }
                 }
            }
         }
            script {
               set_int(clipboard_disable, 0);
               //set content state
-              if (get_int(indicator_overlap) == 0)
-                set_state(PART:"elm.swallow.content", "default", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "overlap", 0.0);
+              set_state(PART:"elm.swallow.content", "default", 0.0);
            }
         }
         program { name: "disable_clipboard";
            script {
               set_int(clipboard_disable, 1);
               set_state(PART:"sip_area", "default", 0.0);
-              if (get_int(indicator_overlap) == 0)
-                {
-                   if (get_int(keypad_disable) == 1)
-                     set_state(PART:"elm.swallow.content", "nooverlap_disable_sip", 0.0);
-                   else
-                     set_state(PART:"elm.swallow.content", "default", 0.0);
-                }
+              if (get_int(keypad_disable) == 1)
+                set_state(PART:"elm.swallow.content", "disable_sip", 0.0);
               else
-                {
-                   if (get_int(keypad_disable) == 1)
-                     set_state(PART:"elm.swallow.content", "overlap_disable_sip", 0.0);
-                   else
-                     set_state(PART:"elm.swallow.content", "overlap", 0.0);
-                }
+                set_state(PART:"elm.swallow.content", "default", 0.0);
            }
         }
         program { name: "enable_virtualkeypad";
            source: "";
            script {
               set_int(keypad_disable, 0);
-              if (get_int(indicator_overlap) == 0)
-                set_state(PART:"elm.swallow.content", "default", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "overlap", 0.0);
+              set_state(PART:"elm.swallow.content", "default", 0.0);
            }
         }
         program { name: "disable_virtualkeypad";
               if (get_int(clipboard_disable) == 1)
                 {
                    set_state(PART:"sip_area", "clipboard_on", 0.0);
-                   if (get_int(indicator_overlap) == 0)
-                     set_state(PART:"elm.swallow.content", "nooverlap_disable_sip", 0.0);
-                   else
-                     set_state(PART:"elm.swallow.content", "overlap_disable_sip", 0.0);
+                   set_state(PART:"elm.swallow.content", "disable_sip", 0.0);
                 }
               else
-                {
-                   if (get_int(indicator_overlap) == 0)
-                     set_state(PART:"elm.swallow.content", "default", 0.0);
-                   else
-                     set_state(PART:"elm.swallow.content", "overlap", 0.0);
-                }
+                set_state(PART:"elm.swallow.content", "default", 0.0);
            }
         }
         program {
             signal: "elm,state,landscape";
             source: "elm";
             script {
-               if (get_int(landscape) == 0) {
-                  set_int(portrait_overlap, get_int(indicator_overlap));
-                  set_int(portrait_opacity, get_int(indicator_opacity));
-                  set_int(landscape, 1);
-                  run_program(PROGRAM:"overlap_indicator");
-                  run_program(PROGRAM:"transparent_indicator");
+               if (get_int(indicator_visible) == 1) { 
+                 if (get_int(landscape) == 0) {
+                   set_int(landscape, 1);
+                   set_state(PART:"indicator_overlap_base", "overlap", 0.0);
+                   set_state(PART:"indicator_bg", "translucent", 0.0);
+                 }
                }
             }
          }
             signal: "elm,state,portrait";
             source: "elm";
             script {
-               if (get_int(landscape) == 1) {  //content start (0, indicator height)
-                  set_int(indicator_overlap, get_int(portrait_overlap));
-                  set_int(indicator_opacity, get_int(portrait_opacity));
-                  set_int(landscape, 0);
-                  if (get_int(indicator_overlap) == 0) { //start (0,60)
-                     run_program(PROGRAM:"nooverlap_indicator");
-
-                  }
-                  else { //content start (0, 0)
-                     run_program(PROGRAM:"overlap_indicator");
-                  }
-                  if (get_int(portrait_opacity) == 2) //transparent
-                     run_program(PROGRAM:"transparent_indicator");
-                  else if (get_int(portrait_opacity) == 1) //translucent
-                     run_program(PROGRAM:"translucent_indicator");
-                  else
-                     run_program(PROGRAM:"opaque_indicator");
+               if (get_int(indicator_visible) == 1) { 
+                 if (get_int(landscape) == 1) {  //content start (0, indicator height)
+                    set_int(landscape, 0);
+                    if ((get_int(indicator_overlap) == 0) && (get_int(indicator_opacity) == 0)) {
+                      set_state(PART:"indicator_overlap_base", "default", 0.0);
+                    }
+                    else {
+                       set_state(PART:"indicator_overlap_base", "overlap", 0.0);
+                    }
+                    if (get_int(indicator_opacity) == 2) //transparent
+                      set_state(PART:"indicator_bg", "transparent", 0.0);
+                    else if (get_int(indicator_opacity) == 1) //translucent
+                      set_state(PART:"indicator_bg", "translucent", 0.0);
+                    else
+                      set_state(PART:"indicator_bg", "default", 0.0);
+                 }
                }
             }
          }