namespace {
const char* kEdjePath = "/usr/share/edje/xwalk/xwalk_tizen.edj";
const char* kWinowRotationEventKey = "wm,rotation,changed";
- const char* kWinowFocusedEventKey = "focused";
- const char* kWinowUnfocusedEventKey = "unfocused";
} // namespace
NativeWindow::NativeWindow()
: initialized_(false),
window_(NULL),
- focus_(NULL),
+ layout_(NULL),
content_(NULL),
rotation_(0),
handler_id_(0) {
EVAS_SIZE_EXPAND_FILL(top_layout);
elm_object_content_set(conformant, top_layout);
evas_object_show(top_layout);
-
- // focus
- Evas_Object* focus = elm_button_add(top_layout);
- elm_theme_extension_add(NULL, kEdjePath);
- elm_object_style_set(focus, "wrt");
- elm_object_part_content_set(top_layout, "elm.swallow.content", focus);
- EVAS_SIZE_EXPAND_FILL(focus);
- elm_access_object_unregister(focus);
- evas_object_show(focus);
- focus_ = focus;
-
- // focus callback
- auto focus_callback = [](void* user_data,
- Evas_Object*,
- void*) -> void {
- NativeWindow* window = static_cast<NativeWindow*>(user_data);
- window->DidFocusChanged(true);
- };
- auto unfocus_callback = [](void* user_data,
- Evas_Object*,
- void*) -> void {
- NativeWindow* window = static_cast<NativeWindow*>(user_data);
- window->DidFocusChanged(false);
- };
-
- evas_object_smart_callback_add(focus,
- kWinowFocusedEventKey,
- focus_callback,
- this);
- evas_object_smart_callback_add(focus,
- kWinowUnfocusedEventKey,
- unfocus_callback,
- this);
+ layout_ = top_layout;
// Rotation
auto rotation_callback = [](void* user_data,
// If the content is NULL, this call will just delete the previous object.
// If the If you wish to preserve it,
// issue elm_object_part_content_unset() on it first.
+
evas_object_show(content);
- elm_object_part_content_unset(focus_, "elm.swallow.content");
- elm_object_part_content_set(focus_, "elm.swallow.content", content);
- elm_object_focus_set(focus_, EINA_TRUE);
+ elm_object_part_content_unset(layout_, "elm.swallow.content");
+ elm_object_part_content_set(layout_, "elm.swallow.content", content);
content_ = content;
// attached webview was resized by evas_norender API
}
}
-void NativeWindow::DidFocusChanged(bool got) {
- if (content_ != NULL) {
- elm_object_focus_set(content_, got ? EINA_TRUE : EINA_FALSE);
- }
-}
-
int NativeWindow::AddRotationHandler(RotationHandler handler) {
int id = handler_id_++;
handler_table_[id] = handler;
}//end of programs
}//end of group
- group { name: "elm/button/base/wrt";
- #define BUTTON_HEIGHT 78.0
- parts {
- part { name: "bg";
- type: RECT;
- scale: 1;
- description { state: "default" 0.0;
- color: 0 0 0 0;
- min: 0 BUTTON_HEIGHT;
- }
- }
- part { name: "elm.text";
- type: TEXTBLOCK;
- mouse_events: 0;
- scale: 1;
- description { state: "default" 0.0;
- text {
- min: 0 1;
- style: "button_general_text_normal";
- }
- }
- description { state: "disabled" 0.0;
- inherit: "default" 0.0;
- text.style: "button_general_text_dim";
- }
- description { state: "pressed" 0.0;
- inherit: "default" 0.0;
- text.style: "button_general_text_press";
- }
- }
- part { name: "elm.swallow.content";
- clip_to: "elm.swallow.content.clip";
- type: SWALLOW;
- scale: 1;
- description { state: "default" 0.0; }
- }
- part { name: "elm.swallow.content.clip";
- type: RECT;
- scale: 1;
- description { state: "default" 0.0;
- color_class: "F022L1i";
- }
- description { state: "disabled" 0.0;
- inherit: "default" 0.0;
- color_class: "F022L1iD";
- }
- }
- }//end of part
- }//end of group
-
group {
name: "PopupTextEntrySet";
parts{