Gaia/Browser: Difference between revisions

Jump to navigation Jump to search
6,260 bytes removed ,  8 October 2012
no edit summary
No edit summary
No edit summary
Line 1: Line 1:
== Design Specs==  
== Design Specs==  


==== Interaction ====
=== Interaction ===
* [https://www.dropbox.com/sh/ygwfxk6chpshxdj/vS_9m-L2TG/Apps/Browser Dropbox]
* [https://www.dropbox.com/sh/ygwfxk6chpshxdj/vS_9m-L2TG/Apps/Browser Dropbox]


==== Visual ====
====Visual ===


* [https://www.dropbox.com/sh/retlarkzknj7luc/QOq2Rv4aXt Dropbox]
* [https://www.dropbox.com/sh/retlarkzknj7luc/QOq2Rv4aXt Dropbox]


==== User Tasks ====
== Features ==
*[https://docs.google.com/spreadsheet/ccc?key=0Av1UnKL6lZaadDlPR3UwRXVNb2VMNWpKSTBsSWMxSUE#gid=0 User Stories, in priority sequence!]
*[https://docs.google.com/spreadsheet/ccc?key=0AiNX8SgRPhbjdF9uUnh6cnFrT1pObEdkZ3YzLXNxeFE User stories (draft)]


For progress on v1 features see the Browser tab of the [https://docs.google.com/a/tola.me.uk/spreadsheet/ccc?key=0AiBigu584YY7dGlNSlY0QzhJb3M5anRBa1gxalV0Y3c#gid=13 B2G Milestone Plan] and the [https://github.com/mozilla-b2g/gaia/issues?direction=asc&labels=blocking-basecamp%2B%2Cbrowser%2Cstory&page=1&sort=created&state=open browser label on Github].


== Use Cases ==
== Bugs ==
*Tom loves using his mobile web browser for accessing websites where a Web App doesn't exist or to quickly look something up
*Launching the browser app, Tom sees an address bar, a back button and a menu button
*Tom taps on the address bar and is able to enter a URL and navigate to a particular website
*Tom visits www.nytimes.com and is able to view the entire website clearly and can zoom/pan around and catch up on today's news stories
*Tom clicks on a story and realizes it's not what he wants and taps the back arrow button. 
**Just like the desktop browser, Tom's browser history is stored and he's able to easily navigate back and forth between webpages.
*Clicking on the menu button, Tom is able to bookmark his favorite sites and manage his browser Settings
*Security is very important to Tom, so he's comforted to know certain sensitive websites he visits like his online banking service visually show him a 'lock' like icon.
*Tom also knows that the address bar is also much smarter and keeps a history of his top sites
**By typing just a few letters, Tom see suggestions of his favorite/bookmarked sites
*The address bar is also a search bar and after typing in the query, Tom is able to select the search engine he wants to search from
*Tom loves multitasking and has the ability to open a new tab on top of the existing website he's viewing
**The browser UI allows Tom to easily and quickly jump between his tabs
**Tom can easily dismiss one of the tabs if he's done with it
**Tom can easily create a new tab by tapping
*In addition to bookmarking a site and saving it to the browser app, Tom has the ability to bookmark a site and save it to his home screen
**The home screen icon will intelligently create an icon on the home screen and uses the favicon as a base for the icon
**Clicking on the bookmark on the home screen takes Tom to the website in the Browser app
**If the Browser app is always running the background, it creates a new tab for Tom
*While surfing the web, Tom has the ability to share a given link at any time via:
**Email
**SMS
**3rd party app
*Because Tom is logged into his B2G phone using his Persona account, he has the ability to access his desktop browser data.
*Tom enjoys using his Firefox browser and knows it's all about user choice.  Under the settings menu, Tom has the ability to manage the following:
**Clear History
**Clear Cookies and Data
**Do Not Track (this is tied to the main Settings app and permissions model)
**Enable Cookies
**Send Performance Data
**User Master Password
**Remember Passwords


== Requirements ==
For bugs, see the [https://bugzilla.mozilla.org/buglist.cgi?product=Boot2Gecko;component=Gaia%3A%3ABrowser;resolution=---;list_id=4610029 Gaia::Browser component on Bugzilla]
 
The progress against these requirements is being tracked at a high level on a [https://docs.google.com/spreadsheet/ccc?key=0AiBigu584YY7dGlNSlY0QzhJb3M5anRBa1gxalV0Y3c#gid=9 spreadsheet] with [https://github.com/andreasgal/gaia/issues?labels=browser&page=1&state=open Github issues] corresponding to each item for more in depth discussion.  It may also help to look at the [http://people.mozilla.com/~lco/FX_B2G/Release_1_Specs/ UI Designs]
 
=== Gaia v1 ===
*The Browser app features can be broken down into a few categories:
**Core functionality:
***User launches the browser app and has the ability to quickly and easily enter a URL in the address bar
***User has the ability to navigate back and forward when applicable
***User can refresh the page at any time when a page has completed loading
***User can stop the loading of a page at any time
***User is informed of the progress of the the page load with a visual indicator
***When scrolling down a page, the content should be maximized by moving the top bar off the screen
***User has the ability to bookmark a website and store that data within the browser app
****User has the option to edit the name of a bookmark that has been saved
****User can delete a bookmark
***User has the ability to view certain document types:
****.pdf (leverage pdf.js?)
***Related to system UI, the user is informed when network connectivity isn't available
***User is informed that a site is encrypted or secure with a visual 'lock' like indicator
**Gestures:
***User has the ability to scroll the contents of a page using a gesture
***User has the ability to zoom in and out on any object/section of a web page (exception may be mobile-optimized sites)
****Text box/image/section: double-tap
****General area of web page: pinch-to-zoom
****User has the ability to hide/reveal the Tabs tray using a gesture
**Tabs:
***User has the ability to create a new tab
***User has the ability to quickly jump between open tabs
***User has the ability to dismiss/close any open tab
**AwesomeScreen:
***When typing in the address bar, the user is provided suggestions of top sites they have visited
***Without typing, the user is offered the top sites they have visited
***Selecting 'Bookmarks', the user is offered the list of bookmarks
***Selecting 'History', the user is displayed a list of websites they visited sorted by recency
**Settings:
***Clear History
***Clear Cookies and Data
***Do Not Track (this is tied to the main Settings app and permissions model)
***Enable Cookies
***Send Performance Data
*The start page should be a visual page offering functionality from the AwesomeScreen
**Similar to Fennec's start page, it offers a 'speed dial' like experience
*The address bar offers search <strike>functional from multiple sources</strike> from a single default search engine, with no option to choose, configure or switch search engines.
**BD deals/agreements required to finalize the set of service providers
*User has the ability to add a bookmark as an app icon on the home screen
 
=== Gaia v2 ===
*User can share the link of a website via certain apps:
**Email
**SMS
**3rd party app (i.e. social apps)
*User has the ability to view certain document types:
**.doc
**.xls
**.ppt
*Gestures:
**User has the ability to bring up a page/object's context menu with a gesture
***For example, bring up the context menu for an image could offer users the option to 'save image' to the Gallery app
**User has the ability to select text using a gesture
**User has the ability to navigate back/forward using a gesture
*AwesomeScreen:
**User is offered the option of 'search suggestions' from various sources
**User has the option to manage/organize their synced browser data with other clients
***Bookmarks
***Passwords
***Forms
*Settings:
**User Master Password
**Remember Passwords
**Open Links in 'New Tab' or 'In Background'
**Private Browsing mode


== Platform Dependencies ==
== Platform Dependencies ==
The browser app is built on the Browser API. See the [https://wiki.mozilla.org/WebAPI/EmbeddedBrowserAPI wiki] for detailed requirements and an overview of progress. The tracking bug for this API {{bug|693515}}.
The browser app is built on the [https://wiki.mozilla.org/WebAPI/BrowserAPI Browser API]. The tracking bug for this API is {{bug|693515}}.


== Development ==
== Source Code ==
[https://github.com/mozilla-b2g/gaia/tree/master/apps/browser Source code on Github]
The source code lives [https://github.com/mozilla-b2g/gaia/tree/master/apps/browser here].
Confirmed users
394

edits

Navigation menu