MicroViews: Mobile Views
Summary
It has been a little quieter on the MicroViews front recently as I have been working on other OneShare projects recently such as AllAboutMePrints and a rewrite of the Sneep plugin. But before all of this started I spent some time updating MicroViews for iPhone. I also spent some time refactoring the base of MicroViews separating out a Javascript data layer from the rest of the plugin. It is now the sole responsibility of the data layer to load EPrint data from the linked repositories, and the views are now rendered by individual pieces of code that can be included independently of each other. This also greatly improves the extensibility of the library.
Also I have now made the source for the project available as a Google Code project at http://googlecode.com/microviews. The Google Code project will also be used for bug tracking.
Finally as one extra piece of news from the project, there is now a MicroViews logo which will be used to allow everyone to easily spot where the library is being used. This logo will also be used with any dissemination materials when marketing the project to users.
Mobile Views Refactored
In my previous post talking about the mobile views I was proposing orientation dependent content. I went ahead and implemented this so that when you tilted the phone to the right then the list of attached files would be displayed and if you tilted the phone to the left then a coverflow-esque visualization of the attached file previews would be shown. After some extremely small scale tests it was found that in fact this approach took too much explanation with the help text being included and did not add anything to the user’s experience with MicroViews. As a result I moved the list of attached files to underneath the abstract for the EPrint and now all of the landscape views will show the coverflow visualization.
This is inline with the standard iPhone OS interface when using media player features. When you have the device in the normal (portrait) position you are shown the controls for the media player, then when you twist the device into a landscape position you will see a coverflow visualization of all the albums in the current play list.
Mobile Views Coverflow
Last time I had posted I had not yet implemented the coverflow feature for MobileViews. This has now been done and it currently takes the shape of a slide show which allows you to advance by swiping left and move to the previous image by swiping right. The swipe gesture on the iPhone was enabled by making use of a touch plugin for the jQuery library called jSwipe. Although there are still some issues to resolve with the gestures in this view. The main issue is that the swipe gesture is very hard for the user to complete as the swipe library seems to only register the gesture when it is done within the borders of the displayed image. This may be down to a coding error on my part or a limitation of the library. Needless to say I am working to rectify this issue before to long.
MicroViews Data Layer
Having started to write the mobile views as well as the tooltips logic I realised that I was duplicating large amounts of data handling code, which is used to load abstracts and attached file previews. As a result I set about refactoring the library so that it all comes from one consistent api. This has greatly improved the extensibility of MicroViews as it is now possible to write any possible style of viewing the data but use one consistent means of accessing the appropriate data. More documentation about this will be appearing on the project website.
Leave a Reply