Index: src/bin/test.c
===================================================================
--- src/bin/test.c	(리비전 72516)
+++ src/bin/test.c	(작업 사본)
@@ -147,6 +147,7 @@ void test_floating(void *data, Evas_Object *obj, v
 void test_launcher(void *data, Evas_Object *obj, void *event_info);
 void test_launcher2(void *data, Evas_Object *obj, void *event_info);
 void test_launcher3(void *data, Evas_Object *obj, void *event_info);
+void test_launcher4(void *data, Evas_Object *obj, void *event_info);
 void test_anim(void *data, Evas_Object *obj, void *event_info);
 void test_tooltip(void *data, Evas_Object *obj, void *event_info);
 void test_tooltip2(void *data, Evas_Object *obj, void *event_info);
@@ -649,6 +650,7 @@ add_tests:
    ADD_TEST(NULL, "Stored Surface Buffer", "Launcher", test_launcher);
    ADD_TEST(NULL, "Stored Surface Buffer", "Launcher 2", test_launcher2);
    ADD_TEST(NULL, "Stored Surface Buffer", "Launcher 3", test_launcher3);
+   ADD_TEST(NULL, "Stored Surface Buffer", "Launcher 4", test_launcher4);
 
    //------------------------------//
    ADD_TEST(NULL, "Focus", "Focus", test_focus);
Index: src/bin/test_launcher.c
===================================================================
--- src/bin/test_launcher.c	(리비전 72516)
+++ src/bin/test_launcher.c	(작업 사본)
@@ -919,4 +919,93 @@ test_launcher3(void *data __UNUSED__, Evas_Object
    evas_object_resize(win, 480, 800);
    evas_object_show(win);
 }
+static void
+_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
+{
+  elm_config_access_set(EINA_TRUE, "access_output>access/api");
+}
+
+static void
+_bt_clicked_2(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
+{
+  elm_config_access_set(EINA_FALSE, "access_output>access/api");
+}
+
+void
+test_launcher4(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
+{
+   Evas_Object *win, *bg, *ic, *bx, *ly, *bt;
+   char buf[PATH_MAX];
+
+   win = elm_win_add(NULL, "launcher focus", ELM_WIN_BASIC);
+   elm_win_title_set(win, "Launcher Focus");
+   elm_win_autodel_set(win, EINA_TRUE);
+   elm_win_focus_highlight_enabled_set(win, EINA_TRUE);
+
+   bg = elm_bg_add(win);
+   snprintf(buf, sizeof(buf), "%s/images/sky_04.jpg", elm_app_data_dir_get());
+   elm_bg_file_set(bg, buf, NULL);
+   evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   elm_win_resize_object_add(win, bg);
+   evas_object_show(bg);
+
+   bx = elm_box_add(win);
+   elm_win_resize_object_add(win, bx);
+   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_show(bx);
+
+   ly = elm_layout_add(win);
+
+   snprintf(buf, sizeof(buf), "%s/objects/test.edj", elm_app_data_dir_get());
+   elm_layout_file_set(ly, buf, "launcher_focus");
+   evas_object_size_hint_weight_set(ly, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(ly, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   elm_box_pack_end(bx, ly);
+   evas_object_show(ly);
+
+   ic = elm_icon_add(win);
+   elm_object_scale_set(ic, 0.5);
+   snprintf(buf, sizeof(buf), "%s/images/icon_%02i.png", elm_app_data_dir_get(), 1);
+   elm_image_file_set(ic, buf, NULL);
+   elm_image_resizable_set(ic, 0, 0);
+   evas_object_size_hint_weight_set(ic, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(ic, 0.5, 0.5);
+   evas_object_show(ic);
+
+   bt = elm_button_add(win);
+   elm_object_text_set(bt, "Close");
+   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(bt, 0.95, 0.99);
+   elm_box_pack_end(bx, bt);
+   evas_object_show(bt);
+
+   bt = elm_button_add(win);
+   elm_object_text_set(bt, "ACCESS OFF");
+   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(bt, 0.95, 0.99);
+   elm_box_pack_end(bx, bt);
+   evas_object_show(bt);
+   evas_object_smart_callback_add(bt, "clicked", _bt_clicked_2,ly);
+
+   bt = elm_button_add(win);
+   elm_object_text_set(bt, "ACCESS ON");
+   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(bt, 0.95, 0.99);
+   evas_object_show(bt);
+   evas_object_smart_callback_add(bt, "clicked", _bt_clicked,ly);
+
+   snprintf(buf, sizeof(buf), "slot.%i.%i", 0, 0);
+   elm_object_part_content_set(ly, buf, ic);
+
+   snprintf(buf, sizeof(buf), "slot.%i.%i", 3, 0);
+   elm_object_part_content_set(ly, buf, bt);
+
+   snprintf(buf, sizeof(buf), "slot.%i.%i", 0, 1);
+   elm_object_part_text_set(ly, buf, "Sounds Pretty Good To Me");
+
+   elm_object_part_text_set(ly, "text", "Text Sounds Pretty Good To Me");
+   evas_object_resize(win, 480, 800);
+   evas_object_show(win);
+}
 #endif
Index: data/objects/test.edc
===================================================================
--- data/objects/test.edc	(리비전 72516)
+++ data/objects/test.edc	(작업 사본)
@@ -878,4 +878,72 @@ collections {
             }
       }
    }
+   group { name: "launcher_focus";
+   styles {
+      style { name: "textblock_style";
+         base: "font=Sans font_size=10 color=#000 text_class=label left_margin=4 right_margin=4";
+         tag:  "hilight" "+ font_weight=Bold";
+         tag:  "b" "+ font_weight=Bold";
+      }
+   }
+      parts {
+         part { name: "slot.0.0"; type: SWALLOW;
+            description { state: "default" 0.0;
+              rel1 { relative: 0.0  0.0;
+              }
+              rel2 { relative: 0.25 0.25;
+              }
+            }
+         }
+         part { name: "slot.3.0"; type: SWALLOW;
+            description { state: "default" 0.0;
+              rel1 { relative: 0.75 0.0;
+              }
+              rel2 { relative: 1.00 0.25;
+              }
+            }
+         }
+         part { name: "slot.0.1"; type: TEXTBLOCK;
+            description { state: "default" 0.0;
+              rel1 { relative: 0.0  0.25;
+              }
+              rel2 { relative: 0.25 0.50;
+              }
+              text {
+                 style: "textblock_style";
+                 align: 0.0 0.0;
+              }
+            }
+         }
+	     part { name: "text"; type: TEXT;
+	        description { state: "default" 0.0;
+	          color: 255 255 0 255;
+              rel1 { relative: 0.50 0.75;
+              }
+              rel2 { relative: 0.75 1.00;
+              }
+	          text {
+		        font: "Sans:style=Bold";
+		        size: 14;
+	            align: 0.0 0.0;
+	          }
+	        }
+	     }
+	     part { name: "text 2"; type: TEXT;
+	        description { state: "default" 0.0;
+	          color: 255 255 0 255;
+              rel1 { relative: 0.75 0.75;
+              }
+              rel2 { relative: 1.00 1.00;
+              }
+	          text {
+		        font: "Sans:style=Bold";
+		        size: 14;
+	            align: 0.0 0.0;
+			    text: "default text";
+	          }
+	        }
+	     }
+      }
+   }
 }
