LGTM. From: Wang, Shiliu Sent: Friday, June 13, 2014 12:55 PM To: Liu, Shouqun; Christiansen, Kenneth R; Balestrieri, Francesco; 'crosswalk-dev@lists.crosswalk-project.org' Subject: RE: Intent to implement - Embedding API v2 Part1
Hi, All This is the first step of the original Embedding API v2 Intent to implement. It's for expose some existing APIs from internal classes (XWalkClient and XWalkWebChromeClient) by moving them to XWalkUIClient/XWalkResourceClient. Because they were neither implemented within crosswalk core not exposed for embedder to overwrite. In addition, some of them are required by customer/used by cordova container. Please help review, Your comments are welcome. :) Thanks, Shiliu. From: Wang, Shiliu Sent: Wednesday, June 11, 2014 11:25 AM To: Liu, Shouqun; Christiansen, Kenneth R; Balestrieri, Francesco; 'crosswalk-dev@lists.crosswalk-project.org' Subject: RE: Intent to implement - Embedding API v2 Part1 Missing one API to add to XWalkResourceClient public boolean shouldOverrideUrlLoading(XWalkView view, String url) Thanks, Shiliu From: Wang, Shiliu Sent: Wednesday, June 11, 2014 9:24 AM To: Liu, Shouqun; Christiansen, Kenneth R; Balestrieri, Francesco; 'crosswalk-dev@lists.crosswalk-project.org' Subject: RE: Intent to implement - Embedding API v2 Part1 Description: Before embedding API, we have XWalkClient and XWalkWebChromeClient to provide callbacks/delegate for XWalkView. In Embedding API v1, we hide both classes and create XWalkUIClient and XWalkResourceClient for the APIs we want to expose in embedding API. However, there still exists some internal methods in XWalkClient and XWalkWebChromeClient which is needed by embedders. 1. Customer requires onCreateWindow() in https://crosswalk-project.org/jira/browse/XWALK-1705 2. Cordova container uses getVideoLoadingProgressView() and onPageStarted/Finished() 3. Besides, I go through the methods in XWalkClient and XWalkWebChromeClient, the methods listed in "implementation details" have empty implementation. It doesn't make sense we neither implement the callback nor expose it in Embedding API. In this intent, I propose to move these APIs from internal client to XWalkUIClient to be part of Embedding API. Affected Component XWalk core library XWalk embedding API Related feature https://crosswalk-project.org/jira/browse/XWALK-1040 Target release Crosswalk8 Implementation details Here list the APIs proposed to be moved from XWalkWebChromeClient and XWalkClient into XWalkUIClient. XWalkUIClient public Bitmap getDefaultVideoPoster() public View getVideoLoadingProgressView() public boolean onCreateWindow(XWalkView view, boolean isDialog, boolean isUserGesture, Message resultMsg) public void onReceivedTitle(XWalkView view, String title) public void onReceivedIcon(XWalkView view, Bitmap icon) public void onReceivedTouchIconUrl(XWalkView view, String url, boolean precomposed) public boolean shouldOverrideKeyEvent(XWalkView view, KeyEvent event) public void onUnhandledKeyEvent(XWalkView view, KeyEvent event) public void onPageStarted(XWalkView view, String url) public void onPageFinished(XWalkView view, String url) Thanks, Shiliu
_______________________________________________ Crosswalk-dev mailing list Crosswalk-dev@lists.crosswalk-project.org https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-dev