[Service] Add mde interface. 08/248308/2 submit/tizen_6.0/20201201.083410 submit/tizen_6.0/20201202.024038
authorAron kim <aron.kim@samsung.com>
Wed, 25 Nov 2020 07:01:55 +0000 (23:01 -0800)
committeraron kim <aron.kim@samsung.com>
Tue, 1 Dec 2020 04:14:59 +0000 (04:14 +0000)
This patch provides mde webapi interface for MDE Framework

Relate patch:
https://review.tizen.org/gerrit/#/c/platform/framework/web/chromium-efl/+/248306/

Change-Id: Ica91c8759fcc900831cf7ef2c12c12d35add55e9
Signed-off-by: Aron kim <aron.kim@samsung.com>
wrt_app/service/device_api_router.ts

index f4269238bb2678b6c65021a7f8ff56ed1a730111..59b70641685165d719f0e2eb580d2f51c0f94d2e 100644 (file)
@@ -99,6 +99,7 @@ export class DeviceAPIRouter {
       isValidPath: { writable: false, enumerable: true },
     });
     this.initEdgeWebapis();
+    this.initMDEWebapis();
     this.initProductWebapis();
   }
 
@@ -126,6 +127,35 @@ export class DeviceAPIRouter {
     }
   }
 
+  initMDEWebapis() {
+    if (wrt['mde'] && !global.webapis.mde) {
+      let mde = wrt.mde as NativeWRTjs.MDEExtension;
+      global.webapis.mde = {};
+      if (wrt.tv) {
+        global.webapis.mde.initVirtualEventGenerator = (type: number) => {
+          return mde.initVirtualEventGenerator(type);
+        }
+        global.webapis.mde.deInitVirtualEventGenerator = (type: number) => {
+          return mde.deInitVirtualEventGenerator(type);
+        }
+        global.webapis.mde.generateVirtualKeyEvent = (keycode: number, state: number) => {
+          return mde.generateVirtualKeyEvent(keycode, state);
+        }
+        global.webapis.mde.generateVirtualMouseMoveEvent = (x: number, y: number, move_count: number) => {
+          return mde.generateVirtualMouseMoveEvent(x, y, move_count);
+        }
+        global.webapis.mde.generateVirtualMouseButtonEvent = (button: number, status: number) => {
+          return mde.generateVirtualMouseButtonEvent(button, status);
+        }
+      }
+
+      global.webapis.mde.launchBrowserFromUrl = (url: string) => {
+        return mde.launchBrowserFromUrl(url);
+      }
+      Object.defineProperty(global.webapis, 'mde', { writable: false, enumerable: true });
+    }
+  }
+
   initProductWebapis() {
     // for TV profile
     if (wrt.tv && !global.webapis.productinfo) {