We’re closing in on the home stretch! The past week has seen me with a bit more time for development, and I’ve made a good dent in the tasks list. Let’s take a look at the one from last week and see how we’re doing:
The add subscriptions page(Done!)
- A proper list for feeds and folders with refreshing and delete buttons (In progress)
- A proper list for articles with swipe to star and mark read/unread (Next on deck)
OAuth (although it looks like Firefox OS will support this nicely – it’s just not a cross-platform solution)(Done, and source code posted) Notifications (toast-style)(Done, source code also posted)
- Various bug-fixes and cleanups (such as
figuring out why the sharing menu won’t refresh properly) (Always in progress)
And there’s one to add that I forgot about last week: The recurring notification system that will alert you of unread feeds when the app is closed. The plumbing is there for this within the app, but I need to wire it into the OS. It looks like I’ll be able to use the Alarm API and the Notification API to make this work.
So, here’s the recap:
OAuth (my old nemesis). Fortunately, this was easier on Firefox OS than I expected. I was originally expecting to use a Cordova InAppBrowser, but, in Firefox OS, those don’t offer all of the features that I need. Namely, one can’t hook any of the event handlers. Fortunately, Firefox OS offers a better native solution using iframes and the Browser API, which I was clued into thanks to Peter Rukavina’s article. And, since I’m using Enyo, I can wrap the iframe in a Kind to set up the specific parameters that it needs to function properly on Firefox OS, and catch the nonstandard mozbrowserlocationchange event that it throws.
- A proper list for feeds and folders with refreshing and delete buttons
- A proper list for articles with swipe to star and mark read/unread
- Recurring notifications
- Various bug-fixes and cleanups (off the top of my head: mark all articles in a feed as read, proper handling of orientation lock, mark read as you scroll, auto close feeds/folders when all items are read. – all minor things).
And now, to close the post, the screenshots:
The completed OAuth screen, with border and back button. The OAuth Kind doesn’t provide any browser chrome, just the iframe. You can plug it in anywhere you want.
Functioning toaster notifications!
The completed add subscription screen.
The main page re-implemented using an Enyo.AroundList. (This works in Firefox OS too, but I use Safari for my UI testing because it is much quicker to iterate).