-#include <Elementary.h>
#ifdef HAVE_CONFIG_H
# include "elementary_config.h"
#endif
+#include <Elementary.h>
#ifndef ELM_LIB_QUICKLAUNCH
typedef struct
Evas_Object *btn_fwd;
Evas_Object *url_entry;
Eina_List *sub_wins;
+ const char* user_agent;
Eina_Bool js_hooks : 1;
} Web_Test;
{
Web_Test *wt = data;
- elm_entry_entry_set(wt->url_entry, event_info);
+ elm_object_text_set(wt->url_entry, event_info);
- elm_object_disabled_set(wt->btn_back, !elm_web_back_possible(wt->web));
- elm_object_disabled_set(wt->btn_fwd, !elm_web_forward_possible(wt->web));
+ elm_object_disabled_set(wt->btn_back, !elm_web_back_possible_get(wt->web));
+ elm_object_disabled_set(wt->btn_fwd, !elm_web_forward_possible_get(wt->web));
}
static void
_new_window_hook(void *data, Evas_Object *obj __UNUSED__, Eina_Bool js __UNUSED__, const Elm_Web_Window_Features *wf __UNUSED__)
{
Web_Test *wt = data;
- Evas_Object *new_win, *new_web, *bg;
+ Evas_Object *new_win, *new_web;
- new_win = elm_win_add(NULL, "elm-web-test-popup", ELM_WIN_BASIC);
+ new_win = elm_win_util_standard_add("elm-web-test-popup", "Elm Web Test Popup");
elm_win_autodel_set(new_win, EINA_TRUE);
evas_object_resize(new_win, 300, 300);
evas_object_show(new_win);
- bg = elm_bg_add(new_win);
- evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- elm_win_resize_object_add(new_win, bg);
- evas_object_show(bg);
-
new_web = elm_web_add(new_win);
+ elm_web_useragent_set(new_web, wt->user_agent);
evas_object_size_hint_weight_set(new_web, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
elm_win_resize_object_add(new_win, new_web);
elm_notify_orient_set(popup, ELM_NOTIFY_ORIENT_CENTER);
// Using the timeout doesn't seem to go well with the second main loop
//elm_notify_timeout_set(popup, 2.0);
- elm_notify_repeat_events_set(popup, EINA_FALSE);
+ elm_notify_allow_events_set(popup, EINA_FALSE);
evas_object_show(popup);
evas_object_smart_callback_add(popup, "block,clicked", _alert_del, NULL);
popup = elm_notify_add(obj);
elm_notify_orient_set(popup, ELM_NOTIFY_ORIENT_CENTER);
- elm_notify_repeat_events_set(popup, EINA_FALSE);
+ elm_notify_allow_events_set(popup, EINA_FALSE);
evas_object_show(popup);
box = elm_box_add(obj);
}
void
-test_web(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
+test_web(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__, Eina_Bool mobile)
{
- Evas_Object *win, *bg, *bx, *bx2, *bt, *web, *url;
+ const char user_agent_firefox[] = "Mozilla/5.0 (X11; Linux x86_64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1";
+ const char user_agent_mobile[] = "Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3";
+ Evas_Object *win, *bx, *bx2, *bt, *web, *url;
Web_Test *wt;
elm_need_web();
wt = calloc(1, sizeof(*wt));
- win = elm_win_add(NULL, "web", ELM_WIN_BASIC);
- elm_win_title_set(win, "Web");
- elm_win_autodel_set(win, EINA_TRUE);
+ if (mobile == EINA_TRUE)
+ {
+ win = elm_win_util_standard_add("web-mobile", "Web Mobile");
+ wt->user_agent = user_agent_mobile;
+ }
+ else
+ {
+ win = elm_win_util_standard_add("web", "Web");
+ wt->user_agent = user_agent_firefox;
+ }
- bg = elm_bg_add(win);
- elm_win_resize_object_add(win, bg);
- evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_show(bg);
+ elm_win_autodel_set(win, EINA_TRUE);
bx = elm_box_add(win);
elm_win_resize_object_add(win, bx);
evas_object_show(bx2);
web = elm_web_add(win);
+ elm_web_useragent_set(web, wt->user_agent);
+ printf("elm_web useragent: %s\n", elm_web_useragent_get(web));
evas_object_size_hint_weight_set(web, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(web, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(bx, web);
evas_object_resize(win, 320, 480);
evas_object_show(win);
}
+
+void
+test_web_normal(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
+{
+ test_web(data, obj, event_info, EINA_FALSE);
+}
+
+void
+test_web_mobile(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
+{
+ test_web(data, obj, event_info, EINA_TRUE);
+}
#endif