incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Drew Walters <deedu...@gmail.com>
Subject Re: Playbook code merge discussion
Date Tue, 06 Dec 2011 18:59:28 GMT
One other thing I forgot to mention.  Is "playbook" the term we want
to reference in the code/build/etc?  I wonder if it would be more
future proof to call this "bbx".  My understanding is that the
Playbook OS and BBX will be one in the same going forward.  Maybe its
jumping the gun a bit, since BBX isn't available yet, but I'd hate to
have to rename in a couple of months.

On Tue, Dec 6, 2011 at 11:56 AM, Michael Brooks
<michael@michaelbrooks.ca> wrote:
> Hi Drew,
>
> Thanks for the summary and details on what's changed.
>
> All of the Playbook support was added by RIM quite a while ago, but the
> pull request was only merged in recently. During the merge, I didn't want
> to make unnecessary changes, so I held off of cleaning up parts of the
> codebase. Now that we've got Playbook support into the BlackBerry
> repository, we can start discussing and cleaning the codebase.
>
> A very important note is that we now need to support both BlackBerry and
> Playbook. RIM will be handling most of the AIR code, but we need to ensure
> that JavaScript changes for one platform will not break the other. So, all
> callback-blackberry developers are responsible for compiling, running, and
> testing both BlackBerry (handheld) and Playbook (tablet).
>
> framework/ext/src/library.xml:
>>    - PhoneGap feature is now "com.phonegap" instead of "phonegap".
>
>
> I'd also like a justification for this change. No other WebWorks extension
> uses namespaces, so I'm confused why "phonegap" was changed to
> "com.phonegap". If there is no reason, then I would like to see it changed
> back to "phonegap".
>
> javascript/capture.js:
>>    - This is a proper renaming of media.js.
>>        * Problem is media.js was not deleted so both capture.js and
>> media.js are included and are identical.
>
>
> Good eye. If media.js is redundant, then we should remove it.
>
> javascript/console.js:
>>    - console.log is now only defined if console is undefined.
>> Previously console.log was always defined.
>>        * I've been testing on OS 6 and console.log never gets defined
>> since console is defined.  This results in console.log not working.
>> I've had to use phonegap.Logger.log instead.
>
>
> Perhaps clobbering console.log was conflicting the the built-in Web
> Inspector for Playbook debugging? We should be holding a reference to the
> original console.log, overriding it, and then still calling the original
> reference.
>
> template/project/project.properties:
>>    - Properties previously defined in the file are now prefixed with
>> "blackberry".  New properties added for "playbook".
>>        * I'm confused by "blackberry.sim.password".  Description says
>> "If you leave this field blank, then you cannot deploy to simulator".
>> I believe this is misleading since the only usage I see for it in
>> blackberry.xml is to load the device (not simulator).
>
>
> Agreed. propject.properties has become more complicated and I'd like to see
> it simplified. I think it's doable.
>
> javascript/webWorksPluginManager.js:
>>    - Camera and Capture functionality is now handled by blackberry
>> javascript API instead of native plugins.
>>        * This is a step backwards as the blackberry javascript API
>> lacks some features implemented by the native plugins.  Just to name a
>> few: specifying image size for the Camera, and audio recording for
>> Capture.
>
>
> My guess is that Playbook uses the WebWorks API, but BlackBerry should not
> be forced to do the same if it provides additional functionality.
>
> template/project/build.xml:
>>    - Build has been split up into blackberry.xml and playbook.xml.
>>    - Building a phone app now requires "ant blackberry build" where
>> before it was "ant build".
>
>
> I helped the RIM guys decided on this solution. It was the cleanest
> approach that we could come up with at the same.
>
> template/project/www/config.xml:
>>    - PhoneGap feature is now "com.phonegap" instead of "phonegap".
>>    - New permissions blackberry.media.camera, blackberry.identity,
>> blackberry.ui.dialog, blackberry.system.
>>        * I'm confused why blackberry.identity and blackberry.system
>> were added since they already exist in the file.  I'm also not sure
>> what is requiring blackberry.ui.dialog.
>
>
> I'm also confused on the duplication and where blackberry.ui.dialog is used.
>
> template/project/www/plugins.xml:
>>    - "Device" is a new required plugin.
>
>
> Yep
>
> There are now issues being logged on the missing Playbook APIs. Until
> Playbook supports every PhoneGap API, we should ensure that it can
> gracefully fail on the JavaScript side.
>
> Thanks again for posting this thread Drew!
> Michael
>
> On Tue, Dec 6, 2011 at 7:49 AM, Drew Walters <purdrew@gmail.com> wrote:
>
>> I've been playing around with the latest callback-blackberry code
>> which has been merged to include playback support and I have run into
>> some things which are worth noting/discussing/fixing.  For reference
>> the code change is here:
>>
>>
>> https://github.com/callback/callback-blackberry/commit/19c0e686067e36a563815435f6ed69ee562dbf9d#template/project/www/config.xml
>>
>> I've listed below some things which existing BlackBerry developers
>> will need to be made aware of in order to update their existing
>> projects to 1.3. I've also added notes prefixed with '*' which I feel
>> are defects or at least require further discussion.
>>
>> framework/ext/src/library.xml:
>>    - PhoneGap feature is now "com.phonegap" instead of "phonegap".
>>
>> javascript/capture.js:
>>    - This is a proper renaming of media.js.
>>        * Problem is media.js was not deleted so both capture.js and
>> media.js are included and are identical.
>>
>> javascript/console.js:
>>    - console.log is now only defined if console is undefined.
>> Previously console.log was always defined.
>>        * I've been testing on OS 6 and console.log never gets defined
>> since console is defined.  This results in console.log not working.
>> I've had to use phonegap.Logger.log instead.
>>
>> template/project/project.properties:
>>    - Properties previously defined in the file are now prefixed with
>> "blackberry".  New properties added for "playbook".
>>        * I'm confused by "blackberry.sim.password".  Description says
>> "If you leave this field blank, then you cannot deploy to simulator".
>> I believe this is misleading since the only usage I see for it in
>> blackberry.xml is to load the device (not simulator).
>>
>> javascript/webWorksPluginManager.js:
>>    - Camera and Capture functionality is now handled by blackberry
>> javascript API instead of native plugins.
>>        * This is a step backwards as the blackberry javascript API
>> lacks some features implemented by the native plugins.  Just to name a
>> few: specifying image size for the Camera, and audio recording for
>> Capture.
>>
>> template/project/build.xml:
>>    - Build has been split up into blackberry.xml and playbook.xml.
>>    - Building a phone app now requires "ant blackberry build" where
>> before it was "ant build".
>>
>> template/project/www/config.xml:
>>    - PhoneGap feature is now "com.phonegap" instead of "phonegap".
>>    - New permissions blackberry.media.camera, blackberry.identity,
>> blackberry.ui.dialog, blackberry.system.
>>        * I'm confused why blackberry.identity and blackberry.system
>> were added since they already exist in the file.  I'm also not sure
>> what is requiring blackberry.ui.dialog.
>>
>> template/project/www/plugins.xml:
>>    - "Device" is a new required plugin.
>>

Mime
View raw message