cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrew Grieve <agri...@chromium.org>
Subject Re: [Android] Refactoring for different engines
Date Wed, 23 Apr 2014 14:09:31 GMT
Depends on their interest level I think. Faster we can get this out
the door the better. If we need to delay for geckoview, then I don't
think we should gate on it, just release it after.

On Wed, Apr 23, 2014 at 3:01 AM, Tommy Williams <tommy@devgeeks.org> wrote:
> More engines, more better...
> On 23 Apr 2014 16:32, "Joe Bowser" <bowserj@gmail.com> wrote:
>
>> Hey
>>
>> A Hangout would have to happen on Friday at the earliest.  It'd be good if
>> we could get someone from Mozilla on the hangout as well.  I haven't gotten
>> MozillaView (GeckoView with Cordova methods) fully working yet.  For some
>> reason it's not rendering on the screen.
>>
>> Ideally it'd be cool to have at least two options when this feature finally
>> lands.
>>
>> What do other people think?
>>
>> Joe
>> On 22 Apr 2014 20:06, "Hu, Ningxin" <ningxin.hu@intel.com> wrote:
>>
>> > Joe,
>> >
>> > Thanks for your review and merge the PRs.
>> >
>> > To pluggable webview interest group:
>> > Are we OK to setup a hangout this week for initial introduction and
>> > discussion of next steps?
>> >
>> > Thanks,
>> > -ningxin
>> >
>> > > -----Original Message-----
>> > > From: Hu, Ningxin [mailto:ningxin.hu@intel.com]
>> > > Sent: Tuesday, April 22, 2014 4:04 PM
>> > > To: dev@cordova.apache.org
>> > > Subject: RE: [Android] Refactoring for different engines
>> > >
>> > > The PoC is great! Quite excited about the direction!
>> > >
>> > > I've sent a PR to update the cordova-crosswalk-engine to latest
>> crosswalk
>> > > embedding API. It works with xwalk_core_library at 6.35.124.0.
>> > >
>> > > I've also changed the CordovaWebView interface slightly (adding
>> > getView() API)
>> > > to allow XWalkCordovaWebView to composite a XWalkView instead of
>> > extending
>> > > it. It resolves some API naming issues for XWalkView case.
>> > >
>> > > Please review them at:
>> > > https://github.com/infil00p/cordova-crosswalk-engine/pull/3
>> > > https://github.com/infil00p/cordova-android/pull/2
>> > >
>> > > Thanks,
>> > > -ningxin
>> > >
>> > > > -----Original Message-----
>> > > > From: Joe Bowser [mailto:bowserj@gmail.com]
>> > > > Sent: Friday, April 11, 2014 12:45 AM
>> > > > To: dev
>> > > > Subject: Re: [Android] Refactoring for different engines
>> > > >
>> > > > Yeah, I'd be cool with setting up a hangout.  Everyone should take
a
>> > > > look at the PoC, I've basically distilled it down to four or five
>> > > > classes so far, but with some work, we may be able to get it down
to
>> > > > three.  Due to legacy, we're pretty stuck with the Android WebView
>> API
>> > calls,
>> > > but these can probably be modified.
>> > > >
>> > > > It'd be good to get Mozilla people on the call as well, since they
>> > > > have their WebView as well.
>> > > >
>> > > > On Thu, Apr 10, 2014 at 9:38 AM, Hu, Ningxin <ningxin.hu@intel.com>
>> > wrote:
>> > > > > Hangout would be a good idea.
>> > > > >
>> > > > > FYI, I will be off next week. How about the week after next?
If it
>> > > > > works, please
>> > > > feel free to schedule one and count me in.
>> > > > >
>> > > > > Thanks,
>> > > > > -ningxin
>> > > > >
>> > > > >> -----Original Message-----
>> > > > >> From: mmocny@google.com [mailto:mmocny@google.com] On Behalf
Of
>> > > > >> Michal Mocny
>> > > > >> Sent: Tuesday, April 08, 2014 11:39 PM
>> > > > >> To: dev
>> > > > >> Subject: Re: [Android] Refactoring for different engines
>> > > > >>
>> > > > >> Would it be alright to set up a Hangout some time to introduce
>> > everyone?
>> > > > >>
>> > > > >> Joe has been leading the effort here, but there are other
cordova
>> > > > >> contributors for whom this is top priority.  It would be
nice if
>> we
>> > > > >> could all meet to say hello and make sure we are all going
in the
>> > > > >> right
>> > > > direction.
>> > > > >>
>> > > > >> Quite exciting!
>> > > > >>
>> > > > >> -Michal
>> > > > >>
>> > > > >>
>> > > > >> On Tue, Apr 8, 2014 at 10:56 AM, Hu, Ningxin <
>> ningxin.hu@intel.com>
>> > > wrote:
>> > > > >>
>> > > > >> > Joe, thanks for this. I am very excited.
>> > > > >> >
>> > > > >> > FYI. Crosswalk team is working on refactoring the WebView
API to
>> > > > >> > support embedding usage better [1]. (Previously the
layer API
>> was
>> > > > >> > not exposed as public usage).
>> > > > >> >
>> > > > >> > I would like to review the PoC and work with you to
get
>> Crosswalk
>> > > > >> > fits into the pluggable WebView architecture.
>> > > > >> >
>> > > > >> > Thanks,
>> > > > >> > -ningxin
>> > > > >> >
>> > > > >> > > -----Original Message-----
>> > > > >> > > From: Joe Bowser [mailto:bowserj@gmail.com]
>> > > > >> > > Sent: Wednesday, March 19, 2014 7:08 AM
>> > > > >> > > To: dev
>> > > > >> > > Subject: Re: [Android] Refactoring for different
engines
>> > > > >> > >
>> > > > >> > > Hey
>> > > > >> > >
>> > > > >> > > After debugging, I did some minor updates to the
plugin
>> README.
>> > > > >> > > It
>> > > > >> > should be
>> > > > >> > > easier to get this up and running, although there's
still the
>> > > > >> > > issue of
>> > > > >> > after-install
>> > > > >> > > hooks and the relative path weirdness with the
Crosswalk
>> > Library itself.
>> > > > >> > >
>> > > > >> > > It still doesn't support the CLI at all, but it
should be
>> there
>> > > > >> > > with the
>> > > > >> > old flow.
>> > > > >> > >
>> > > > >> > > On Mon, Mar 17, 2014 at 1:14 PM, Michal Mocny
>> > > > >> > > <mmocny@chromium.org>
>> > > > >> > > wrote:
>> > > > >> > > > (Sorry Joe, Googlers are down in California
and way busy.
>> > > > >> > > > Will be back in a week.  Super excited about
this, though.)
>> > > > >> > > >
>> > > > >> > > > -Michal
>> > > > >> > > >
>> > > > >> > > >
>> > > > >> > > > On Mon, Mar 17, 2014 at 2:53 PM, Joe Bowser
>> > > > >> > > > <bowserj@gmail.com>
>> > > > >> wrote:
>> > > > >> > > >
>> > > > >> > > >> Reviving this thread!
>> > > > >> > > >>
>> > > > >> > > >> Can other people look at this, and see
if/when we should
>> > land this?
>> > > > >> > > >> I know that I have to re-write the tests
still, but I would
>> > > > >> > > >> like some feedback before merging it in.
 Also, it'd be
>> > > > >> > > >> super awesome if other people could try
and make a WebView
>> > > > >> > > >> based on the interfaces and recommend
which methods should
>> > > > >> > > >> die.  I want to get this released in the
next month or so,
>> > > > >> > > >> so any time and feedback would be greatly
appreciated.
>> > > > >> > > >>
>> > > > >> > > >> Thanks
>> > > > >> > > >>
>> > > > >> > > >> On Thu, Mar 13, 2014 at 3:50 PM, Joe Bowser
>> > > > >> > > >> <bowserj@gmail.com>
>> > > > >> > wrote:
>> > > > >> > > >> > Hey, I created the following today
to track various
>> > > > >> > > >> > WebView
>> > > > >> > progresses:
>> > > > >> > > >> > https://issues.apache.org/jira/browse/CB-6246
>> > > > >> > > >> >
>> > > > >> > > >> > I also have this repo created.  The
licensing is ugly as
>> > > > >> > > >> > all crap, but it's a Proof-Of-Concept:
>> > > > >> > > >> > https://github.com/infil00p/cordova-crosswalk-engine
>> > > > >> > > >> >
>> > > > >> > > >> > If I can get some help getting plugman
to just load
>> > > > >> > > >> > Crosswalk, it'll
>> > > > >> > > >> look hawt.
>> > > > >> > > >> >
>> > > > >> > > >> > BTW: We should probably get this
ready to go into Android
>> > > > >> > > >> > in the next two months and deprecate
the setProperty
>> > > > >> > > >> > methods, since all properties should
be preferences in
>> > config.xml
>> > > now.
>> > > > >> > > >> >
>> > > > >> > > >> > On Mon, Mar 10, 2014 at 2:42 PM,
Joe Bowser
>> > > > >> > > >> > <bowserj@gmail.com>
>> > > > >> > > wrote:
>> > > > >> > > >> >> Perhaps. There would be additional
benefits to this
>> > > > >> > > >> >> approach, namely fixes being
added to that platform more
>> > > > >> > > >> >> quickly.  I'll probably take
a look at that once I have
>> > > > >> > > >> >> Crosswalk
>> > > > finalized.
>> > > > >> > > >> >>
>> > > > >> > > >> >> On Mon, Mar 10, 2014 at 9:49
AM, Brian LeRoux
>> > > > >> > > >> >> <b@brian.io>
>> > > > wrote:
>> > > > >> > > >> >>> this is great stuff
>> > > > >> > > >> >>>
>> > > > >> > > >> >>> do we think it may be possible
to bring in amazon
>> fireos
>> > > > >> > > >> >>> stuff
>> > > > >> > > >> eventually
>> > > > >> > > >> >>> too?
>> > > > >> > > >> >>>
>> > > > >> > > >> >>>
>> > > > >> > > >> >>> On Fri, Mar 7, 2014 at 3:22
PM, Joe Bowser
>> > > > >> > > >> >>> <bowserj@gmail.com>
>> > > > >> > wrote:
>> > > > >> > > >> >>>
>> > > > >> > > >> >>>> BTW: I committed it in
my repo, not the main Apache
>> one.
>> > > > >> > > >> >>>>
>> > > > >> > > >> >>>> On Fri, Mar 7, 2014 at
3:21 PM, Joe Bowser
>> > > > >> > > >> >>>> <bowserj@gmail.com>
>> > > > >> > > wrote:
>> > > > >> > > >> >>>> > Hey
>> > > > >> > > >> >>>> >
>> > > > >> > > >> >>>> > I just committed
some code based on their WebView
>> > > > >> > > >> >>>> > modifications that
allows you to choose your
>> renderer
>> > > > >> > > >> >>>> > in the
>> > > > >> > config file
>> > > > >> > > with this:
>> > > > >> > > >> >>>> >
>> > > > >> > > >> >>>> >     <preference
name="webView"
>> > > > >> > > >> >>>> >
>> value="org.apache.cordova.engine.crosswalk.XWalkCordo
>> > > > >> > > >> >>>> > va
>> > > > >> > > >> >>>> > Web
>> > > > >> > > >> >>>> > View
>> > > > >> > > >> >>>> > " />
>> > > > >> > > >> >>>> >
>> > > > >> > > >> >>>> > You currently have
to copy over the *.pak file and
>> > > > >> > > >> >>>> > the jsapi from a
Crosswalk Example project to get
>> > > > >> > > >> >>>> > this to work.  The
next thing that I'm going to do
>> is
>> > > > >> > > >> >>>> > figure out how to
write this as a plugin and have it
>> > > > >> > > >> >>>> > install on a default
>> > > > project.
>> > > > >> > > >> >>>> > Also, right now
the bridge doesn't seem to work, and
>> > > > >> > > >> >>>> > I don't know why
exactly.  That being said, the
>> > > > >> > > >> fact
>> > > > >> > > >> >>>> > that I can choose
which version of Chrome/Chromium
>> > > > >> > > >> >>>> > I'm running with
>> > > > >> > > >> a
>> > > > >> > > >> >>>> > single XML preference
is HUGE.
>> > > > >> > > >> >>>> >
>> > > > >> > > >> >>>> > There's definitely
a lot more work that needs to be
>> > > > >> > > >> >>>> > done, but as
>> > > > >> > > >> long
>> > > > >> > > >> >>>> > as we have something
that we can fit into the
>> > > > >> > > >> >>>> > interface, we should
>> > > > >> > > >> be
>> > > > >> > > >> >>>> > able to put in things
like GeckoView or other third
>> > > > >> > > >> >>>> > party
>> > > > >> > renderers.
>> > > > >> > > >> >>>> > The nightmare of
being stuck with bullshit WebView
>> > > > >> > > >> >>>> > bugs may soon be
over.
>> > > > >> > > >> >>>> >
>> > > > >> > > >> >>>> > On Wed, Mar 5, 2014
at 8:59 PM, Michal Mocny
>> > > > >> > > >> >>>> > <mmocny@chromium.org>
>> > > > >> > > >> >>>> wrote:
>> > > > >> > > >> >>>> >>
>> https://github.com/crosswalk-project/crosswalk-cordo
>> > > > >> > > >> >>>> >> va
>> > > > >> > > >> >>>> >> -an
>> > > > >> > > >> >>>> >> droi
>> > > > >> > > >> >>>> >> d
>> > > > >> > > >> >>>> >>
>> > > > >> > > >> >>>> >> First patch
they landed, which claims to have min
>> > > > >> > > >> >>>> >> viable xwalk
>> > > > >> > > >> webview:
>> > > > >> > > >> >>>> >>
>> > > > >> > > >> >>>>
>> > > > >> > > >>
>> https://github.com/crosswalk-project/crosswalk-cordova-andro
>> > > > >> > > >> id
>> > > > >> > > >> /co
>> > > > >> > > >> mmit
>> > > > >> > > >> /a04dedeb0204e7542d190312c6ae70c795a26e04
>> > > > >> > > >> >>>> >>
>> > > > >> > > >> >>>> >>
>> > > > >> > > >> >>>> >> On Wed, Mar
5, 2014 at 11:37 PM, Michal Mocny
>> > > > >> > > >> >>>> >> <mmocny@chromium.org
>> > > > >> > > >> >
>> > > > >> > > >> >>>> wrote:
>> > > > >> > > >> >>>> >>
>> > > > >> > > >> >>>> >>> I haven't
looked yet, but did you see:
>> > > > >> > > >> >>>> >>>
>> https://crosswalk-project.org/#wiki/crosswalk-cordo
>> > > > >> > > >> >>>> >>> va
>> > > > >> > > >> >>>> >>> -an
>> > > > >> > > >> >>>> >>> droi
>> > > > >> > > >> >>>> >>> d
>> > > > >> > > >> >>>> >>>
>> > > > >> > > >> >>>> >>> ?
>> > > > >> > > >> >>>> >>>
>> > > > >> > > >> >>>> >>>
>> > > > >> > > >> >>>> >>> On Wed,
Mar 5, 2014 at 10:20 PM, Andrew Grieve <
>> > > > >> > > >> agrieve@chromium.org
>> > > > >> > > >> >>>> >wrote:
>> > > > >> > > >> >>>> >>>
>> > > > >> > > >> >>>> >>>> First
- very excited that you're working on this!
>> > > > >> > > >> >>>> >>>>
>> > > > >> > > >> >>>> >>>> Had
a quick look. Not sure there's much to be
>> > gleaned
>> > > yet.
>> > > > >> > > >> >>>> >>>> Once
>> > > > >> > > >> you
>> > > > >> > > >> >>>> start
>> > > > >> > > >> >>>> >>>> in on
hooking up x-walk's webview I think it will
>> > > > >> > > >> >>>> >>>> become
more
>> > > > >> > > >> obvious
>> > > > >> > > >> >>>> what
>> > > > >> > > >> >>>> >>>> the
interface should look like. E.g., does x-walk
>> > > > >> > > >> >>>> >>>> even
have the
>> > > > >> > > >> >>>> concept of
>> > > > >> > > >> >>>> >>>> ChromeClient
vs WebViewClient vs WebView? Also
>> > > > >> > > >> >>>> >>>> unsure
whether the
>> > > > >> > > >> >>>> class
>> > > > >> > > >> >>>> >>>> should
extend android.View as well as implement
>> > > > >> > > >> >>>> >>>> our
>> > > > >> > interface.
>> > > > >> > > >> E.g.
>> > > > >> > > >> >>>> >>>> alternative
is to have a "getView()" method on
>> the
>> > > > >> > interface.
>> > > > >> > > >> Might
>> > > > >> > > >> >>>> help
>> > > > >> > > >> >>>> >>>> to
>> > > > >> > > >> >>>> >>>> cut
down on file sizes, and API surface, but
>> > > > >> > > >> >>>> >>>> again,
I'm not too
>> > > > >> > > >> sure.
>> > > > >> > > >> >>>> >>>>
>> > > > >> > > >> >>>> >>>> I've
been pretty hesitant to touch existing
>> > > > >> > > >> >>>> >>>> exposed
members
>> > > > >> > > >> (e.g. the
>> > > > >> > > >> >>>> >>>> public
fields you were referring to) since
>> > > > >> > > >> >>>> >>>> touching
anything
>> > > > >> > > >> public
>> > > > >> > > >> >>>> could
>> > > > >> > > >> >>>> >>>> break
plugins. That said, maybe now is a good
>> time
>> > > > >> > > >> >>>> >>>> to @deprecate
>> > > > >> > > >> a
>> > > > >> > > >> >>>> bunch
>> > > > >> > > >> >>>> >>>> of
>> > > > >> > > >> >>>> >>>> them
and either replace them with getters, or
>> just
>> > > > >> > > >> >>>> >>>> declare
them
>> > > > >> > > >> to be
>> > > > >> > > >> >>>> not
>> > > > >> > > >> >>>> >>>> exposed
to plugins.
>> > > > >> > > >> >>>> >>>>
>> > > > >> > > >> >>>> >>>>
>> > > > >> > > >> >>>> >>>> On Wed,
Mar 5, 2014 at 6:57 PM, Joe Bowser
>> > > > >> > > >> >>>> >>>> <bowserj@gmail.com>
>> > > > >> > > >> wrote:
>> > > > >> > > >> >>>> >>>>
>> > > > >> > > >> >>>> >>>> >
So, after looking at the Crosswalk code again,
>> > > > >> > > >> >>>> >>>> >
I've decided to
>> > > > >> > > >> take
>> > > > >> > > >> >>>> a
>> > > > >> > > >> >>>> >>>> >
quick stab at making things pluggable.  I don't
>> > > > >> > > >> >>>> >>>> >
have a lot to
>> > > > >> > > >> show
>> > > > >> > > >> >>>> for
>> > > > >> > > >> >>>> >>>> >
it, but with the help of Eclipse (which is why
>> > > > >> > > >> >>>> >>>> >
the generated interfaces look so screwed up), I
>> > > > >> > > >> >>>> >>>> >
managed to create some
>> > > > >> > > >> interfaces
>> > > > >> > > >> >>>> so
>> > > > >> > > >> >>>> >>>> >
we can start shoehorning in other browser
>> > renderers.
>> > > > >> > > >> >>>> >>>> >
>> > > > >> > > >> >>>> >>>> >
>> > > > >> > > >>
>> https://github.com/infil00p/cordova-android/tree/pluggable_w
>> > > > >> > > >> eb
>> > > > >> > > >> vie
>> > > > >> > > >> w
>> > > > >> > > >> >>>> >>>> >
>> > > > >> > > >> >>>> >>>> >
I'm going to probably start with Crosswalk,
>> > > > >> > > >> >>>> >>>> >
because it's
>> > > > >> > > >> probably
>> > > > >> > > >> >>>> the
>> > > > >> > > >> >>>> >>>> >
most mature primary candidate in the Android
>> > > > >> > > >> >>>> >>>> >
Third-Party
>> > > > >> > > >> WebView
>> > > > >> > > >> >>>> >>>> >
thing, and I'm pretty sure the GeckoView will
>> be
>> > > > >> > > >> >>>> >>>> >
happening
>> > > > >> > > >> shortly
>> > > > >> > > >> >>>> >>>> >
after.
>> > > > >> > > >> >>>> >>>> >
>> > > > >> > > >> >>>> >>>> >
I don't know how this would work w.r.t. the CLI
>> > > > >> > > >> >>>> >>>> >
or our
>> > > > >> > > >> workflow at
>> > > > >> > > >> >>>> >>>> >
all, but at the moment, I really just want to
>> at
>> > > > >> > > >> >>>> >>>> >
least start
>> > > > >> > > >> to have
>> > > > >> > > >> >>>> >>>> >
some headway towards 4.x and PhoneGap day.
>> > > > >> > > >> >>>> >>>> >
>> > > > >> > > >> >>>> >>>> >
What do people think of this so far? I'm going
>> > > > >> > > >> >>>> >>>> >
to try to clean
>> > > > >> > > >> >>>> things
>> > > > >> > > >> >>>> >>>> >
up a bit, since we've definitely done a lot of
>> > > > >> > > >> >>>> >>>> >
things that
>> > > > >> > > >> would
>> > > > >> > > >> >>>> make
>> > > > >> > > >> >>>> >>>> >
first year CS profs freak the hell out (i.e.
>> > > > >> > > >> >>>> >>>> >
public members in
>> > > > >> > > >> >>>> public
>> > > > >> > > >> >>>> >>>> >
objects w.r.t. PluginManager).
>> > > > >> > > >> >>>> >>>> >
>> > > > >> > > >> >>>> >>>> >
Thoughts?
>> > > > >> > > >> >>>> >>>> >
>> > > > >> > > >> >>>> >>>> >
Joe
>> > > > >> > > >> >>>> >>>> >
>> > > > >> > > >> >>>> >>>>
>> > > > >> > > >> >>>> >>>
>> > > > >> > > >> >>>> >>>
>> > > > >> > > >> >>>>
>> > > > >> > > >>
>> > > > >> >
>> >
>>

Mime
View raw message