incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Simon MacDonald <simon.macdon...@gmail.com>
Subject Re: [Android] Back Key events and Reality
Date Thu, 19 Apr 2012 18:44:51 GMT
You can get my version of DroidGap with the extra logs from:

http://dl.dropbox.com/u/887989/DroidGap.java

Did you clone the 1.6.1 tag or the bleeding edge?

Simon Mac Donald
http://hi.im/simonmacdonald


On Thu, Apr 19, 2012 at 2:38 PM, Joe Bowser <bowserj@gmail.com> wrote:

> I cloned a fresh repo, and what's in DroidGap.java works on this end, and
> matches what I have in my working tree.  We don't have your attached
> DroidGap.java, can you send it again?
>
> On Thu, Apr 19, 2012 at 11:28 AM, Simon MacDonald <
> simon.macdonald@gmail.com
> > wrote:
>
> > When I pull the latest from incubator-cordova-android and build it into
> my
> > app the back key does not work. I've verified this on my samsung note and
> > on the emulator.
> >
> > Please take a look at the attached DroidGap.java file which I've added a
> > few logs. When I click on the back button on the note or on the emulator
> I
> > see these logs:
> >
> > 04-19 14:16:49.373: D/BackButton(390): I got an up from KEYCODE_BACK
> > 04-19 14:16:49.373: D/BackButton(390): I'm doing nothing
> > 04-19 14:16:49.373: D/BackPressed(390): returning false
> >
> > I'm not seeing the onBackPressed method being called at all. Can Joe/Fil
> > try my DroidGap.java to see if they get a different set of logs?
> >
> > Note that the .html I'm loading has one and only one file and does not
> > call 'document.addEventListener("backbutton", onBackKey, true)". It is
> just
> > a plain vanilla .html file.
> >
> > Simon Mac Donald
> > http://hi.im/simonmacdonald
> >
> >
> > On Thu, Apr 19, 2012 at 2:17 PM, Filip Maj <fil@adobe.com> wrote:
> >
> >> We definitely cannot revert that commit Joe put in. Back button didn't
> >> work at all (just exited) before that commit.
> >>
> >> Sucks that the note is broken but it works as expected on other devices
> >> (as Joe points out).
> >>
> >> Simon can you try to debug the issue on the Note and see how the
> execution
> >> flow differs from the other Android devices?
> >>
> >> On 4/19/12 10:58 AM, "Joe Bowser" <bowserj@gmail.com> wrote:
> >>
> >> >OK, I just went through Mobile Spec's manual tests on the following
> >> >devices:
> >> >
> >> >Galaxy Nexus
> >> >Nexus S
> >> >Motorola RAZR
> >> >Samsung Galaxy S2
> >> >LG Optimus One
> >> >
> >> >Currently, if you don't override the back button, the backPressed event
> >> >fires on the keyDown.  If we override the event, the backbutton doesn't
> >> >work on the keydown, but the event fires on the keyup instead.  This I
> >> >think is the proper behaviour since we're intercepting the back button
> >> and
> >> >making it the users' responsibility to handle this event.
> >> >
> >> >The old method had the default behaviour for the back button (where it
> >> >quits on keydown) occur, as well as the keyUp behaviour happen.  Of
> >> >course,
> >> >since the app is exited and is in the background whatever happens with
> >> the
> >> >back button at that point is moot.  The fact is that I expect the back
> >> >button to work when I press it, and I don't consciously think about key
> >> up
> >> >or key down when I do so.  I also think that Google put it on keydown
> for
> >> >a
> >> >reason, especially since it's not really a key anymore.
> >> >
> >> >On Thu, Apr 19, 2012 at 10:48 AM, Joe Bowser <bowserj@gmail.com>
> wrote:
> >> >
> >> >> You're saying that the behaviour is different on the Note? I'll run
> >> >> through our device bank here, but the fact is that the Back Button
> >> would
> >> >> ALWAYS exit, not progress through the history but just straight up
> exit
> >> >> regardless of where in the app you were.  What I added was
> backPressed
> >> >> which would only exit if you were at the top of the history.  Also,
> >> >> backPressed should be supported for Android versions higher than
> >> Android
> >> >> 2.0, and since we're only supporting 2.1+, we should have been fine.
> >> >>
> >> >> I'll investigate this, but honestly if it's not consistent across
> >> >>devices,
> >> >> what do we do then?
> >> >>
> >> >> On Thu, Apr 19, 2012 at 10:26 AM, Simon MacDonald <
> >> >> simon.macdonald@gmail.com> wrote:
> >> >>
> >> >>> The reason we switched to keyUp is so you could slide your finger
> off
> >> >>>the
> >> >>> up button in case you changed your mind about clicking on the back
> >> >>>button.
> >> >>>
> >> >>> I noticed that you checked in:
> >> >>>
> >> >>>
> >> >>>
> >> >>>
> >> https://git-wip-us.apache.org/repos/asf?p=incubator-cordova-android.git
> ;
> >> >>>a=commit;h=180696baec28d6e6b67e8bb23a5302f21bce6b79
> >> >>>
> >> >>> On my Samsung Galaxy Note running Android 2.3.6 the back button
does
> >> >>>not
> >> >>> work. That is when I do not regisiter for a "backbutton" listener
> and
> >> I
> >> >>> expect that when I click the back key that my app would exit. With
> our
> >> >>>fix
> >> >>> the back button doesn't exit the app. I have to click the home
> button
> >> >>>to
> >> >>> exit.
> >> >>>
> >> >>> Reverting your change returns the back button behaviour to normal.
> So
> >> >>> something is still janky. I haven't been able to test it on my
phone
> >> >>>as I
> >> >>> can't convince it to be recognized on my laptop.
> >> >>>
> >> >>> Simon Mac Donald
> >> >>> http://hi.im/simonmacdonald
> >> >>>
> >> >>>
> >> >>> On Tue, Apr 17, 2012 at 8:46 PM, Joe Bowser <bowserj@gmail.com>
> >> wrote:
> >> >>>
> >> >>> > Hey
> >> >>> >
> >> >>> > Remember this issue:
> >> >>> > https://issues.apache.org/jira/browse/CB-367
> >> >>> >
> >> >>> > I'm surprised that I'm catching it now, but the Back Button
is
> >> really
> >> >>> janky
> >> >>> > on my Nexus S running 2.3.6, and I'm working on a fix now.
 What
> was
> >> >>>the
> >> >>> > reasoning behind the Back Button being on the keyUp instead
of the
> >> >>> keyDown?
> >> >>> > I don't remember.
> >> >>> >
> >> >>> > Joe
> >> >>> >
> >> >>>
> >> >>
> >> >>
> >>
> >>
> >
>

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