incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joe Bowser <bows...@gmail.com>
Subject Re: [Android] Plugin.ctx needs a rename
Date Mon, 18 Jun 2012 21:55:41 GMT
Back when we first started working on plugins, a ctx was a context because
that's what we needed.  Along the way, when
we removed PhoneGapActivity and changed it to a CordovaInterface for an
earlier implementation of CordovaWebView, we changed ctx to be an
Interface.  The problem is that a CordovaInterface may not be an activity
and this looks stupid:

ctx.getContext()

I tried in an earlier version of CordovaWebView to change this back to
Context, but we decided that it should be an interface for some reason
(although I don't remember the reason, something about breaking plugins I
think), so since we can't make ctx a Context like what the convention is,
we should conform to convention and call the CordovaInterface something
descriptive like cordova since that will be less disruptive.

So, yes, we've been kicking this can around the parking lot for a while.

On Mon, Jun 18, 2012 at 2:45 PM, Brian LeRoux <b@brian.io> wrote:

> cool w/ that, and of course I trust you, but can you explain the
> problem with ctx, a familiar convention since the earliest days of
> phonegap/android, so I understand the benefit of the proposed
> solution?
>
> (breaking plugins will cause some backlash and, as I mentioned,
> creating a more abstract interface does increase ramp up for new
> native devs)
>
>
> On Mon, Jun 18, 2012 at 4:35 PM, Filip Maj <fil@adobe.com> wrote:
> > Brian, we're doing Android devs (potential plugin authors) a favor here,
> > trust me.
> >
> > 2.0 is our chance to break interfaces.
> >
> > Also, +1 to Bryce's comment re: get this change in for 1.9, deprecate the
> > .ctx member in 1.9 as well, and axe it in 2.0.
> >
> > On 6/18/12 12:15 PM, "Brian LeRoux" <b@brian.io> wrote:
> >
> >>I'm of the opinion that native impl should *not* abstract the
> >>platforms at the plugin level. It breaks old plugins, which is fine,
> >>but for what benefit? Conceptual purity at that level will make it
> >>harder to recruit plugin authors from their respective navtive
> >>platforms.
> >>
> >>On Mon, Jun 18, 2012 at 3:06 PM, Michael Brooks
> >><michael@michaelbrooks.ca> wrote:
> >>> If we are planning to rename the Cordova interface object, then we
> >>>should
> >>> do it for each platform in a consistent manner. There should be a
> parent
> >>> JIRA issue with sub-tasks for each Cordova platform.
> >>>
> >>> On Mon, Jun 18, 2012 at 11:50 AM, Filip Maj <fil@adobe.com> wrote:
> >>>
> >>>> Yeh "ctx" implies Context, especially for Android peoples, so +1 to
> >>>> renaming to something less Android-ey.
> >>>>
> >>>> On 6/18/12 11:45 AM, "Joe Bowser" <bowserj@gmail.com> wrote:
> >>>>
> >>>> >Hey
> >>>> >
> >>>> >Since we're approaching 2.0 and since part of the goals of 2.0 is
to
> >>>> >improve the plugin architecture, I'm wondering if we should take
the
> >>>> >opportunity to give the CordovaInterface variable on Plugin.java
a
> >>>>name
> >>>> >other than ctx, which on Android usually refers to a context.  The
> >>>>reason
> >>>> >for this is the fact that there's a use case where the
> >>>>CordovaInterface
> >>>> >may
> >>>> >not be a Context.  I propose that we change the name to cordova.
> >>>> >
> >>>> >I'm not sure if this needs a JIRA ticket or not.
> >>>> >
> >>>> >Any thoughts?
> >>>> >
> >>>> >Joe
> >>>>
> >>>>
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message