Added option to uBrowser to enable web inspector server.
authorWojciech Bielawski <w.bielawski@samsung.com>
Fri, 31 Jul 2015 08:40:37 +0000 (10:40 +0200)
committerYoungsoo Choi <kenshin.choi@samsung.com>
Tue, 10 Jul 2018 06:57:09 +0000 (06:57 +0000)
Sometimes it's usefull to have a web inspector running on mobile/TV.
This patch provides new "context menu" option for uBrowser to start
web inspector server.
Reviewed by: Antonio Gomes, Daniel Waślicki

Change-Id: I83613375a83a1f6361a4c9a9a1a2ef10731d299d
Signed-off-by: Wojciech Bielawski <w.bielawski@samsung.com>
tizen_src/ewk/ubrowser/browser.cc
tizen_src/ewk/ubrowser/browser.h
tizen_src/ewk/ubrowser/window_ui.cc
tizen_src/ewk/ubrowser/window_ui.h

index 038e72c..7279a0e 100644 (file)
@@ -135,6 +135,13 @@ void Browser::ShowInspectorWindow() {
   inspector_started_ = true;
 }
 
+void Browser::StartInspectorServer() {
+  Ewk_Context* ctx = ewk_context_default_get();
+  unsigned int port = ewk_context_inspector_server_start(ctx, 7777);
+  assert(port != 0);
+  log_trace("Inspector server started at port: %d\n", port);
+}
+
 void Browser::ActivateToolboxWindow() {
   log_trace("%s", __PRETTY_FUNCTION__);
   assert(toolbox_window_);
index 4f98972..e890f4c 100644 (file)
@@ -22,6 +22,7 @@ class Browser {
 
   Window& CreateWindow();
   void ShowInspectorWindow();
+  void StartInspectorServer();
   void ActivateToolboxWindow();
   bool IsDesktop() const { return desktop_; }
   bool IsTracingEnabled() const { return tracing_enabled_; }
index d04f1b0..96680de 100644 (file)
@@ -198,6 +198,9 @@ Evas_Object* WindowUI::CreateExtraActionsMenu(Evas_Object* parent) {
   if (browser_.IsDesktop()) {
     elm_ctxpopup_item_append(menu_, "Show Web Inspector", NULL,
         &WindowUI::OnInspectorShow, this);
+  } else {
+    elm_ctxpopup_item_append(menu_, "Start Web Inspector server", NULL,
+        &WindowUI::OnInspectorServerStart, this);
   }
 #if !defined(OS_TIZEN)
   elm_ctxpopup_item_append(menu_, "Simulate screen rotation", NULL,
@@ -406,6 +409,13 @@ void WindowUI::OnInspectorShow(void* data, Evas_Object* obj, void*) {
   thiz->CloseMenu();
 }
 
+void WindowUI::OnInspectorServerStart(void* data, Evas_Object* obj, void*) {
+    log_trace("%s", __PRETTY_FUNCTION__);
+    WindowUI *thiz = static_cast<WindowUI*>(data);
+    thiz->browser_.StartInspectorServer();
+    thiz->CloseMenu();
+}
+
 void WindowUI::OnRotate(void* data, Evas_Object* obj, void*) {
   log_trace("%s", __PRETTY_FUNCTION__);
   WindowUI *thiz = static_cast<WindowUI*>(data);
index 17a9086..fe01418 100644 (file)
@@ -59,6 +59,7 @@ class WindowUI {
   static void OnUAOverride(void* data, Evas_Object*, void*);
   static void OnUAOverrideEntered(void* data, Evas_Object*, void*);
   static void OnInspectorShow(void* data, Evas_Object*, void*);
+  static void OnInspectorServerStart(void* data, Evas_Object* obj, void*);
   static void OnRotate(void* data, Evas_Object*, void*);
   static void OnSelectMouseInput(void* data, Evas_Object*, void*);
   static void OnSelectTouchInput(void* data, Evas_Object*, void*);