Skip to content
This repository has been archived by the owner on Apr 3, 2020. It is now read-only.

Integrate XWalk (aura based) with Tizen OS (mobile phone) #335

Closed
wants to merge 8 commits into from
Closed

Conversation

ds-hwang
Copy link
Contributor

@ds-hwang ds-hwang commented Aug 8, 2013

Bug: #313
Wiki: https://github.com/otcshare/crosswalk/wiki/Tizen-integration

XWalk aura runtime can run in Tizen, but it does not behave like other Tizen apps (i.e. clock).

To integrate XWalk with Tizen OS, we need 3 big changes:

  1. Use app_efl_main() to launch browser process.
  2. Integrate MessagePump with ecore
  3. Make elementary window wrap XWindow in DesktopRootWindowHost.

Chromium changes: crosswalk-project/chromium-crosswalk#45

…atform.

1. To compile xwalk for Tizen, use -Dtizenos as well as -Duse_aura.
> ./xwalk/gyp_xwalk -Dtizenos=1 -Duse_aura=1 -Duse_gconf=0 -Duse_xi2_mt=2

2. Add new main() implementation for tizen. Finally, we will use app_efl_main to launch runtime process.

For example,
int main(int argc, char **argv)
{
  ...
  app_efl_main(&argc, &argv, &cbs, &ad);

  return 0;
}
Add WebRuntimeContext to not use ContentMain() because XWalk needs to control
the ui loop.
Add MessagePumpEFL to integrate MessageLoop with EFL.

NOTICE:
MessagePumpEFL extends MessagePumpAuraX11 instead of MessagePump because aura
code implicitly uses MessagePumpAuraX11 (MessagePumpEFL is a MessagePumpAuraX11).
Add app_main_desktop_mock.(h|cc) for desktop build.
app_efl_main() on Tizen 2.1 has some issues. We need to find workaround.
I renamed DesktopRootWindowHostTizen from DesktopRootWindowHostXWalk.

Each OS uses DesktopRootWindowHost as follows:
1. Linux desktop: DesktopRootWindowHostX11
2. Windows      : DesktopRootWindowHostWin
3. Tizen OS     : DesktopRootWindowHostTizen
Make an elementary window to wrap the xwindow that DesktopRootWindowHostTizen uses.
The window manager controls the elementary window, and the elementary window
controls its sub xwindow: move, resize, hide, show, etc.

Note: Illume2 is the window manager part of Tizen OS and communicates elementary
via the x11 protocol (Couple of atoms with some information).
This patch is hack. Just move 40 pixel on y axis. We need to find the correct way.
@Trybot
Copy link

Trybot commented Aug 8, 2013

Trybot Dashboard


Building status:

Finished the build of the PATCH in this pull request

Fri Aug 09 2013 13:55:23 GMT+0800 (CST) [xwalk_linux] Failed LOGS: failed xwalk_browsertest
Fri Aug 09 2013 15:31:55 GMT+0800 (CST) [xwalk_win] Passed LOGS: build successful
Fri Aug 09 2013 13:47:24 GMT+0800 (CST) [xwalk_aura] Passed LOGS: build successful
Fri Aug 09 2013 13:51:23 GMT+0800 (CST) [xwalk_android] Passed LOGS: build successful


Rebuild the failed bots you want!

Select the bots:
  • xwalk_linux
  • xwalk_win
  • xwalk_aura
  • xwalk_android
Start the building:
  • < START >

@ds-hwang
Copy link
Contributor Author

ds-hwang commented Aug 9, 2013

Brazil team will handle this.

@ds-hwang ds-hwang closed this Aug 9, 2013
rakuco pushed a commit to rakuco/crosswalk that referenced this pull request Apr 4, 2016
c9cd89c Merge pull request crosswalk-project#337 from rakuco/backport-checkperms-fix
123d118 [Backport] PRESUBMIT: Determine checkperms.py's path using input_api.
8222364 Merge pull request crosswalk-project#335 from darktears/build-fix
58751e9 [Windows] Fix build.
96132b6 Merge pull request crosswalk-project#332 from pozdnyakov/web_audio
4a0b6c0 [Windows] Implementation of 'AudioDestinationNode.devicePosition' attribute
4ff4032 Merge pull request crosswalk-project#334 from rakuco/import-opencl-headers
8cb422b Import Khronos' OpenCL headers into chromium-crosswalk.
1db0eb3 .gitignore: Stop ignoring third_party/khronos/CL.
rakuco pushed a commit to rakuco/crosswalk that referenced this pull request Apr 4, 2016
c9cd89c Merge pull request crosswalk-project#337 from rakuco/backport-checkperms-fix
123d118 [Backport] PRESUBMIT: Determine checkperms.py's path using input_api.
8222364 Merge pull request crosswalk-project#335 from darktears/build-fix
58751e9 [Windows] Fix build.
96132b6 Merge pull request crosswalk-project#332 from pozdnyakov/web_audio
4a0b6c0 [Windows] Implementation of 'AudioDestinationNode.devicePosition' attribute
4ff4032 Merge pull request crosswalk-project#334 from rakuco/import-opencl-headers
8cb422b Import Khronos' OpenCL headers into chromium-crosswalk.
1db0eb3 .gitignore: Stop ignoring third_party/khronos/CL.

This also includes the removal of the OpenCL headers entry in
DEPS.xwalk, as it is now part of chromium-crosswalk itself (see
chromium-crosswalk#334 for details).
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants