A new semester, a new capstone project

11 January, 2013 § 3 Comments

This is the first week of a new semester at Michigan State University, and with that brings a new group of students who will be working on a senior capstone project with Mozilla.

This semester the students will be focusing on multitouch gestures within the browser. They’ll start out the semester by fixing a few good-first-bugs, then they’ll move on to adding some gestures to standalone image and video documents. The final step of the project will be to focus on improving our pinch-to-zoom for webpages in Firefox.

As the semester progresses, the students will be blogging their progress on their own blogs (I may crosspost them here from time to time):

Brandon Waterloo: http://brandonwaterloo.wordpress.com/
Raymond Heldt: http://heldtray.wordpress.com/
Bill de Araujo: http://spartanfire.wordpress.com/

Here’s to a great semester!

Mac OS X integration with Firefox

26 December, 2012 § 14 Comments

Mac OS X Nyan CatAs I’ve been researching potential Spring 2013 capstone projects, I’ve been looking in to Firefox’ current OS X integration. This includes what parts need improving as well as are currently missing.

With the help of many people in the Mozilla community, I’ve received lots of feedback as to what could be improved. Below is the list of work needed that I have come across.

    Accepting click events in the titlebar area
    Keychain support
    Lion Scrollbars
    Edge bounce and overscroll
    Fullscreen mode improvements (Now that Lion fullscreen has been implemented, what is still needed here? - Jared)
    Swipe/gesture support is buggy (bug 673675)
    Dock Download Progress

    Lion resume support
    Auto-fill from Address Book
    Use the system provided spell checker
    Text autocorrection
    Built in word definition panels
    Investigate potential changes needed if sandboxed
    Dictation support
    Integration with Services (control click text selection in any cocoa app for a Services menu)

    iCloud support (shared settings? document storage?)
    Spotlight (Bookmarks and History)
    Speech (control click text selection in any cocoa app for a Speech menu)
    Airplay (mirror firefox to your tv)
    Use system provided geolocation

    Applescript support
    Dragging content to and from Firefox to the OS/other applications within OS X (bug 591713)
    Double-tap to zoom (bug 688990)
    Look up gesture (bug 687026, depends on bug 301451)
    Improve focus ring style for urlbar & search field (bug 689012)
    Unfocused Firefox window needs dimmed text in tab titles and address bar (bug 688678)
    View menu item stays highlighted after resubmitting POST-form and pressing Cancel (bug 688412)
    [10.7] Character repeat on long button presses doesn't work (bug 686113)
    [10.7] panels with titlebars not receiving mouse clicks (bug 677545)
    [10.7] Hardware acceleration on: The corners at the bottom have no fade out effect / anti-aliasing (bug 675410)
    (awaiting QA) [10.7] Firefox 5.0.1 running on Mac OS10.7 returns a Error Code 502 Proxy Error when browsing Web sites (bug 674868)
    [10.7] Update Firefox Theme for Mac OS X 10.7 Lion (bug 667456)
    [10.7] Filepicker directory is not remembered (bug 654842)

Lion Compatibility Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=636455

Source: UX team Mac OS integration list

Josh Aas proposed that the project focus on improving our multitouch/gesture support in Firefox. What gestures do you know of that could be improved/are missing?

I think multitouch/gesture support will be a good project is because the students should each be able to work on their own gestures, thus making the project parallelizable. As well the project is also not a binary success/failure (assuming the students are able to improve at least one gesture).

Status Update 9 of Reader Mode for desktop Firefox

3 December, 2012 § 15 Comments

This is the final week for the students working on the Reader Mode project for Firefox. The students will be presenting their final work on Friday to a panel of judges at Michigan State’s Design Day.

Reader mode now mostly works at prototype-level functionality. There is still some more work and lots more testing to do.

The team has asked for help with testing on Windows & Linux, as well as switching tabs. When a tab is switched to, the document is parsed for its readability score. We want to make sure that we don’t regress tab switching times as well as increase memory usage by the introduction of the feature.

I pushed their current patch to our Try servers so you can help test. When it is finished building, they should be available to download and play with here*. After downloading the build, go to about:config and set reader.enabled=true.

*Update: I have heard from at least one person that the Windows build isn’t working correctly.

Without further ado, here is the team’s project overview video.

The team also is planning on tweaking the size of the toolbar button so it doesn’t stretch the URL bar vertically. This is a subtle bug that you can see in the team’s project video.

Further work for Reader Mode will include moving the in-page adjustments to a toolbar at the top of the page, as well as adding a Sepia color mode.

The team updated the current work-in-progress patch on the meta bug.

Status Update 8 of Reader Mode for desktop Firefox

13 November, 2012 § 3 Comments

This post was guest authored by Matt Vorce, one of the students working on the reader-mode project.

This past week we continued to finish up some changes to our reader mode page. We are now working on moving some common files to toolkit so they can be referenced by desktop and mobile in the same location.

This will require us to convert the .js files to a .jsm. After doing that we will import the files as a resource.

As far as buttons go for reader mode we are only including the buttons for styling the page for the time being. We are also going to display the reader page in the current tab and not pursue an overlay/lightbox for the time being.

Here is a video of the current functionality (interaction workflow is not final):

The team updated the current work-in-progress patch on the meta bug.

Status Update 7 of Reader Mode for desktop Firefox

30 October, 2012 § 6 Comments

This post was guest authored by Michael Anderson, one of the students working on the reader-mode project.

This week the team got an alpha version of reader mode working.  After the page loads, a button will appear in the toolbar allowing you to open that page in reader mode, which is currently in a new tab.

Here is a video of that functionality (interaction workflow is not final):

Going forward, the team has decided to start expanding the functionality of the about reader page.  To start we will allow people to change their font, change text size, and have light, sepia, and dark modes for easier reading.  The buttons to change these settings will be done similar to how PDF.js is set up.

The team is currently in the process of getting all of this code on the meta bug.

Updated on 1 Nov to clarify that Sepia styling is planned as well. – Jared

Status Update 6 of Reader Mode for desktop Firefox

22 October, 2012 § 2 Comments

This post was guest authored by Kevin Woodward, one of the students working on the reader-mode project.

Over the last week a lot of time was spent in preparation for the team’s alpha presentation which covered most of the functionality of Reader Mode. Real, testable data is being pulled from the parsing done by the Readability API, and all that remains to do with this content is to add it to aboutReader.html after it has been loaded into a new tab. At the present time this data is being displayed using simple alert messages as was discussed in our last meeting.

The process of extending the functionality of Bookmarks to cover our Reading List has begun. A new folder which contains our saved articles has been added to the Bookmarks menu. More steps are needed to include all of the same functionality that the Bookmarks Lists currently offer.

Some additional points of discussion included ideas for testing some of the functionality of Reader Mode (see Bug 786638) as currently there is little testing for Reader Mode on Android. Android has made several changes to the (Android) Reader Mode since the Desktop project has begun, but no major conflicts have arisen.

Imminent changes:

  1. Wait for aboutReader.html to load into new tab
  2. Write content to aboutReader.html using aboutReader.js functionality (see _showContent)
  3. Add ability to save an article to the new menu item (Reading List) in Bookmarks
  4. Hide Reader Mode button once the Reader determines that an article is not able to be parsed using Readability API

Reader Mode view will be fully functional within the week and the team will begin to clean-up the style/display/etc. of our Reader Mode articles. Beta presentations will begin in 2 weeks, at this time Reader Mode and Reading List should both be fully implemented.

Status Update 5 of Reader Mode for desktop Firefox

16 October, 2012 § Leave a comment

This post was guest authored by Matt Vorce, one of the students working on the reader-mode project.

Since the last time we met we made quite a bit of progress with regards to getting content from Readability.js. We were able to click our reader mode button and get the reader content for a given page and display it in an alert message.

Our current goal is to move this content in to the about:reader page. Currently we are looking into how to import/access functionality from aboutReader.js so we can add functionality on top of the aboutReader.html.

During the meeting we discussed that we need a way to run privileged code on top of the aboutReader.html. The HTML file does not have access to the information needed to retrieve the results we receive from Readability.

Mobile handles this problem by first taking the result from Readability and appending it as a private property of the tab instance. The aboutReader.js is then able to find that tab through a distinct ID and grab the result data. We need to look into similar functionality for desktop.

A few things that we need to keep in mind moving forward:

  • There will be three paths for retrieving content for about:reader.
  • Using a cached result retrieved from Readability.
  • When a cached result doesn’t exist load the content in the background first
  • Retrieving the information from the reading list

This week we need to look into importing aboutReader.js. Mobile does it via “lazy loading” but desktop may do it differently. Once this is figured out we can use aboutReader.js to act as privileged code on top of aboutReader.html in order to retrieve our results from Readability and display the appropriate content.

Also we should look into logging information to the console over using alert messages.

Where Am I?

You are currently browsing entries tagged with capstone at JAWS.


Get every new post delivered to your Inbox.

Join 1,040 other followers