Profile cover photo
Profile photo
Robert Schroll
Robert's posts

Post has attachment
Those of you who have been around the internet a few times may remember Planarity, either from John Tantalo's original Flash game or from Monty's re-implementation in Cairo. For those of you not in the know, it's a simple game wherein you untangle a graph, so that no lines intersect. From this description, it might sound as fun as untangling fishing line, but it's really quite addictive.

I don't know what caused it to bubble up in my memory, but I thought that it could be a fun game on a touch screen. So after a few days of futzing about, there's now a version for Ubuntu Touch in the store. Enjoy!

I've tested this on a tablet, but not on a phone. Everything is sized in grid units, so I hope it works on the phone too. If there are problems, please let me know. Right now, there's only the basic graph-generation algorithm in place, but if there's interest, we can implement some of Monty's more devilish systems.

Post has attachment
Recently, there's been some discussion here and on the mailing list about the "webapp problem".  Briefly, there are a number of web apps in the store that don't provide anything beyond an existing web page, and thus provide an inferior experience.

There's been several explanations for this, and I'm sure there's a grain of truth in all of them, but one I prefer is that people just want easy access to their favorite websites.  At the moment, they only way to get an icon on your dash that goes to your favorite site is to create a web app.  The online web app creator makes this easy, but to get it on your phone, you have to put it into the store, visible to everyone.

This situation strikes me as silly.  After all, the whole point of the Ubuntu phone UI is to present you with a variety of information right on your home screen.  A common talking point was that Ubuntu was moving beyond the tired grid of application icons, but the easiest way to get to your website was by creating an additional application icon!

So I decided to fix this: the Browser Bookmarks Scope presents your browser's bookmarks in a, err, scope.  You get quick links to all of your bookmarked webpages, searchable and browsable by folder.

Unfortunately, this requires the scope to access the file system to read your bookmarks database, which breaks application confinement.  Thus, it can't be distributed through the official app store.  Instead it's available through the Open App Store.  Please check it out and help end the scourge of pointless web apps!

This is an early release, so when you break it, please tell me how.  No translations yet, but feel free to contribute:

Post has attachment
I'm happy to announce that a new version of the Crosswords app is in the store.  If you've tried it before, you'll notice a few new features:

1) It works.  Okay, that's not entirely new, as it used to work.  But then the device images got upgraded and it stopped working.  (One wonders why we specify a framework version if it doesn't protect us from this.)  But a few fixes have counteracted these improvements so that Crosswords works again!

2) New small screen layout.  When I first wrote this app, I though that there was no way to fit all the information and the soft keyboard on the phone screen.  But I've reconsidered and come up with a design that I think works pretty well.  Combined with the pinch-to-zoom action on the grid, this means crosswords is usable on any screen, except perhaps your smartwatch.

3) Importing puzzles.  As I was updating the puzzle lists provided, I had to implement support for the Across Lite .PUZ file format.  A number of constructors make their puzzles available in this format.  Rather than try to list all of them, I decided to implement a puzzle import facility in the app.  In fact there are four ways to do this:
i) Drag-and-drop into the window.  Works great on the desktop; not so much on Ubuntu Touch.
ii) Import via file dialog.  Works great on the desktop and in the browser on Ubuntu Touch.  But, oddly, not in the HTML5 container.  See Launchpad bug #1467937.
iii) Import via the Content Hub.  Crosswords accepts "documents" from other apps (as that seems to be the catch-all for files that don't fit any of the other content types).  Unfortunately, no other apps recognize .PUZ files as documents.  And there's no way for Crosswords to inform the other apps about the existence of .PUZ files.  This strikes me as a serious failing of the Content Hub, especially since I ran into the same problem with Beru.
iv) Shared URLs.  Since none of the other methods work on the devices, Crosswords accepts shared URLs of online crossword puzzles.  To share a link you come across in the browser, long press it and then select "Open link in new tab". A new tab will open, and then an "Open with" dialog appears, which gives you no options. Touch "Cancel" at the bottom to return to the (empty) tab. Open the menu at the top right, select "Share", and then choose "Crosswords" as the destination.  Couldn't be simpler!

There's also one change that you shouldn't notice: Crosswords is no longer using the HTML5 UI Toolkit, and instead is using the Riot Javascript framework.  I've kept some of the Ubuntu CSS, but everything else has been replaced with custom tags developed with Riot.  This has greatly simplified things while giving me much more flexibility in the layout.  (I can talk more about this in the comments, if anyone is interested.)

More information, including links to the app store, a desktop installer, and a web-based preview, are available at
8 Photos - View album

Post has attachment
Another idea for an interface for the Level app.  The red dot always points up; the white dot down.  This ensures that you can always level around both horizontal axes, no matter the orientation of the phone.  The downside is that you have to level both horizontal axes, no matter the orientation of the phone.

The code is available if you want to play with it: lp:~rschroll/level-app/gimbal
Animated Photo

Post has attachment
I'm pleased to announce a new version of Beru, the basic ebook reader for Ubuntu.  Version 1.1 features an updated UI, with a custom bottom edge behavior for the book view, preliminary CBZ and PDF file support, and imports from the Content Hub.  Check out the link for more details.

Version 1.1.0 is now available in the official app store, and version 1.1.1 is available in +Michael Zanetti's OpenStore.  This second version gets read access to your home directory, and  it can automatically detect books that you load into a directory of your choosing.

I look forward to your feedback and bug reports.  Since I don't read CBZ files much, I'm especially interested in hearing from those of you that do.  The current interface leaves much to be desired, so I'm open to your suggestions for improvements.

Post has attachment
The epub reader Beru currently uses a toolbar for a number of functions in its book view.  But that's passé these days, so I've been working on a new behavior.  Here's an idea features a two-level bottom edge.  First, several actions are revealed, and later a table of contents is available.

Please let me know what you think.

I finally got tired of my HTML5 app not working, due to the HTML5 app launcher, so I tried porting it to Cordova.  It went fairly easily, and now it runs nicely on Android.

Unfortunately, it's broken in new and exciting ways on Ubuntu.  Where do I report bugs in the Ubuntu platform for Cordova?  This ( looks like the relevant Launchpad project, but at the top it says it's moved to an Apache git repository.

Post has attachment
Over on the Ubuntu-phone mailing list, I've written up a proposal to make submitting bug reports for apps as easy as reviews.  Click the link to see the whole argument, but the basic idea is have a bug report text entry in the apps scope that would create a new bug in a specified Launchpad bug tracker.

This would require you to use Launchpad (at least at first; we could add other trackers later on).  One of the objections I keep getting is that developers, especially those using other bug trackers, wouldn't enable this.

So my question to y'all is, would you enable this for your project?  If so, please give me a +1 or a comment, so I know to keep pushing. I'm especially interested to hear from anyone not currently using Launchpad who would open a LP bug tracker if this feature existed.

Post has attachment
A release candidate for the Gmail scope is now available in the click store.  Please give it a try and let me know what's broken.  There are a few known issues on the issue tracker (, but if your problem isn't there, I don't know know about it!
6 Photos - View album

Post has attachment
The Gmail scope is rapidly progressing.  Version 0.3.0 is now in the store and on Github.

Since I've last posted here, it's gained:
- Fixes for authentication problems
- Better formatting of sent emails
- Buttons to mark emails as read or move them to the trash
- Email labels visible as departments
- Better thread views
- Faster access through batched requests
- An "open in Gmail" option

I think I can call it a beta now, so please hop in and start testing.  Report any problems you find here or on Github.  Now's also the time to suggest additional features that are missing.
Wait while more posts are being loaded