Mobile/UI/Designs/TouchScreen/Fennec 1.1+: Difference between revisions

Jump to navigation Jump to search
no edit summary
(added idea for copy and paste)
No edit summary
Line 1: Line 1:
== Contextual Actions  ==
== Contextual Actions  ==


Some older work here: https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/workingUI/CSM
Some older work here: https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/workingUI/CSM  


Open bugs
Open bugs  
* {{bug|461854}} - Need context menu UI
 
*{{bug|461854}} - Need context menu UI


== Using interactive areas in webpages  ==
== Using interactive areas in webpages  ==


Open bugs
Open bugs  
* {{bug|441590}} - can't scroll maps.google.com
* {{bug|460966}} -  mouseover css drop down menu doesn't work with fennec, but works with iphone


=== CSS menus using hover ===
*{{bug|441590}} - can't scroll maps.google.com
*{{bug|460966}} - mouseover css drop down menu doesn't work with fennec, but works with iphone


open bugs
=== CSS menus using hover  ===


* {{bug|460966}} - mouseover css drop down menu doesn't work with fennec, but works with iphone
open bugs
 
*{{bug|460966}} - mouseover css drop down menu doesn't work with fennec, but works with iphone


=== Pannable areas (i.e. maps)  ===
=== Pannable areas (i.e. maps)  ===
Line 22: Line 24:
=== General cursor-driven interaction  ===
=== General cursor-driven interaction  ===


==Add Copy and Paste support==
== Add Copy and Paste support ==


We should have Copy (and Paste) support in Firefox Mobile.Direct communication with other applications offers a better User Experience than Copy and Paset(it eliminates excise) But C&P would give the possibility to exchange data with applications which (currently) don't connect with Firefox Mobile.
We should have Copy (and Paste) support in Firefox Mobile.Direct communication with other applications offers a better User Experience than Copy and Paset(it eliminates excise) But C&P would give the possibility to exchange data with applications which (currently) don't connect with Firefox Mobile. It would fit into the existing aims for having a cursor support for webpages with pannable areas or general cursor driven interaction.  
It would fit into the existing aims for having a cursor support for webpages with pannable areas or general cursor driven interaction.


== Changes for Portrait use ==
== Changes for Portrait use ==


Open bugs
Open bugs  
* {{bug|541015}} - Support rotating between portrait and landscape on N900


*{{bug|541015}} - Support rotating between portrait and landscape on N900
<br>


== More space for add-ons  ==
== More space for add-ons  ==
Line 37: Line 40:
'''Description''':  
'''Description''':  


Open bugs
Open bugs  
* {{bug|496654}} - let controls strip get wider, for use by add-ons


=== Awesome bar/view<br> ===
*{{bug|496654}} - let controls strip get wider, for use by add-ons


&lt;TBD&gt;<br>
=== Awesome bar/view<br> ===


=== Tabs bar (Left side pane)<br> ===
&lt;TBD&gt;<br>  


&lt;TBD&gt;<br>
=== Tabs bar (Left side pane)<br> ===


=== Toolbar (Righ side pane)<br> ===
&lt;TBD&gt;<br>  


&lt;TBD&gt;<br>
=== Toolbar (Righ side pane)<br>  ===
 
&lt;TBD&gt;<br>  


=== Tools and Add-ons view<br>  ===
=== Tools and Add-ons view<br>  ===
Line 66: Line 70:
== Session Restore  ==
== Session Restore  ==


'''Description''': Session restore - the ability to pick up what you were doing before a browser restart - is a very useful feature and a signature capability of Firefox. Session restore as-is from the desktop doesn't make sense on mobile though. Simply reloading all previously open tabs doesn't make sense in a data-constrained environment, on top of which the user is more likely to be interesting in a quick transactional interaction with the browser anyway.
'''Description''': Session restore - the ability to pick up what you were doing before a browser restart - is a very useful feature and a signature capability of Firefox. Session restore as-is from the desktop doesn't make sense on mobile though. Simply reloading all previously open tabs doesn't make sense in a data-constrained environment, on top of which the user is more likely to be interesting in a quick transactional interaction with the browser anyway.  


Some possibilities for different approaches include
Some possibilities for different approaches include  
* providing a list of previously open tabs on a start page
* caching the previously open tabs and only actually reloading them on demand when the user switches to them


Open bugs
*providing a list of previously open tabs on a start page
* {{bug|541421}} - Session restore functionality
*caching the previously open tabs and only actually reloading them on demand when the user switches to them
 
Open bugs  
 
*{{bug|541421}} - Session restore functionality


== Awesomefill for fields  ==
== Awesomefill for fields  ==


'''Description''': Firefox project do make this the new autocomplete method: [https://wiki.mozilla.org/Firefox/Projects/Awesomeformcomplete link] - in 1.9.2
'''Description''': Firefox project do make this the new autocomplete method: [https://wiki.mozilla.org/Firefox/Projects/Awesomeformcomplete link] - in 1.9.2  
 
Open bugs


Open bugs
*{{bug|466770}} - fix content autocomplete
* {{bug|466770}} - fix content autocomplete


== Saving webpages  ==
== Saving webpages  ==


'''Description''': I think the primary usecase here is just wanting a permanent off-line available copy of a webpage (so a receipt, or a boarding pass). It's probably not necessary, or very useful, to support full html+CSS+images saving out of a webpage.
'''Description''': I think the primary usecase here is just wanting a permanent off-line available copy of a webpage (so a receipt, or a boarding pass). It's probably not necessary, or very useful, to support full html+CSS+images saving out of a webpage.  


Open bugs
Open bugs  
* {{bug|465305}} -  Save page


Design proposals
*{{bug|465305}} - Save page
* Proposal 1
 
** Put a "Save Page" option in the site menu (see Extended Site Menu)
Design proposals  
** Just treat the saved file as a download, using a default download directory rather than opening a file picker, and use Fennec's existing download system: [http://www.flickr.com/photos/madhava_work/4351394977/ http://farm5.static.flickr.com/4019/4351394977_d8bd245234.jpg]
 
*Proposal 1  
**Put a "Save Page" option in the site menu (see Extended Site Menu)  
**Just treat the saved file as a download, using a default download directory rather than opening a file picker, and use Fennec's existing download system: [http://www.flickr.com/photos/madhava_work/4351394977/ [[Image:|4351394977_d8bd245234.jpg]]]


== Find-in-page  ==
== Find-in-page  ==


'''Description''': Access probably to be provided through the extended site menu
'''Description''': Access probably to be provided through the extended site menu  
 
Open bugs


Open bugs
*{{bug|541817}} - Fennec needs find in page functionality (CTRL+F)  
* {{bug|541817}} - Fennec needs find in page functionality (CTRL+F)
*can't find the original bug
* can't find the original bug


== Extended site menu  ==
== Extended site menu  ==


In addition to Larry, the site menu should contain options the desktop Firefox provides in the menus or elsewhere in the chrome. These options apply to content browser is displaying and can be provided by the content (such as subscription to feeds made available with link tag in the head of HTML file) or browser UI (such as Save as). The menu could contain options also for activating browser features such as "Find in page".
In addition to Larry, the site menu should contain options the desktop Firefox provides in the menus or elsewhere in the chrome. These options apply to content browser is displaying and can be provided by the content (such as subscription to feeds made available with link tag in the head of HTML file) or browser UI (such as Save as). The menu could contain options also for activating browser features such as "Find in page".  


Design proposals:  
Design proposals:  


* Proposal 1: [[Mobile/UI/Designs/TouchScreen/Fennec 1.1+/Extended site menu|Extended site menu]]
*Proposal 1: [[Mobile/UI/Designs/TouchScreen/Fennec 1.1+/Extended site menu|Extended site menu]]  
** comments on this proposal:
**comments on this proposal:  
** the set of options should be vertically pannable once the number of options exceeds the available screen space
**the set of options should be vertically pannable once the number of options exceeds the available screen space  
** sites can offer several feeds and search providers, but we don't want each one of these to get its own slot in the menu. In both of these cases, if the site only offers a single option, then tapping the associated menu item should subscribe to it or add it, etc. If there are multiple, the menu item explain that and bring up a selector widget.
**sites can offer several feeds and search providers, but we don't want each one of these to get its own slot in the menu. In both of these cases, if the site only offers a single option, then tapping the associated menu item should subscribe to it or add it, etc. If there are multiple, the menu item explain that and bring up a selector widget.  
** we have to make it visually clear that this menu is on top of the browser underneath and not another webpage (when there are enough options that it takes up the whole screen).
**we have to make it visually clear that this menu is on top of the browser underneath and not another webpage (when there are enough options that it takes up the whole screen).
 


[http://www.flickr.com/photos/madhava_work/4351405309/ http://farm3.static.flickr.com/2650/4351405309_0cf41b25c1_o.jpg]
<br> [http://www.flickr.com/photos/madhava_work/4351405309/ [[Image:|4351405309_0cf41b25c1_o.jpg]]]  


Where, if there are multiple feeds or search providers, tapping the option in the menu brings up a chooser overlay:
Where, if there are multiple feeds or search providers, tapping the option in the menu brings up a chooser overlay:  


[http://www.flickr.com/photos/madhava_work/4352154856/ http://farm5.static.flickr.com/4071/4352154856_5c61f69146.jpg]
[http://www.flickr.com/photos/madhava_work/4352154856/ [[Image:|4352154856_5c61f69146.jpg]]]  


== Accommodate a virtual keyboard ==
== Accommodate a virtual keyboard ==


'''Description''': full problem statement coming
'''Description''': full problem statement coming  


=== awesomescreen layout revisions  ===
=== awesomescreen layout revisions  ===
Line 139: Line 148:
[[Image:Awesomebar layout option B 08 edited state osk.png|340x200px]]  
[[Image:Awesomebar layout option B 08 edited state osk.png|340x200px]]  


For more information, see [[Mobile/UI/Designs/TouchScreen/Fennec 1.1+/Option B for Awesome screen layout revision|Option B for Awesome screen layout revision]].<br>
For more information, see [[Mobile/UI/Designs/TouchScreen/Fennec 1.1+/Option B for Awesome screen layout revision|Option B for Awesome screen layout revision]].<br>  


== authentication UI  ==
== authentication UI  ==


Open bugs
Open bugs  
* {{bug|436076}} - Certificate Management
 
* {{bug|478938}} - Add ability to choose client certs
*{{bug|436076}} - Certificate Management  
*{{bug|478938}} - Add ability to choose client certs


=== client cert  ===
=== client cert  ===


Previous UI work:
Previous UI work: https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/workingUI#Client_Certificates
https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/workingUI#Client_Certificates
 
=== username/password  ===
 
previous UI work: https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/workingUI#Username.2FPassword
 
== finger-friendly about:config  ==
 
Open bugs
 
*{{bug|540009}} - revise about:config screen design for touch use


=== username/password ===
== scroll indicators  ==
previous UI work: https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/workingUI#Username.2FPassword


== finger-friendly about:config ==
Open bugs


Open bugs
*{{bug|461843}} - Show indication of where on the page you are when scrolling
* {{bug|540009}} - revise about:config screen design for touch use
*{{bug|515166}} - Support scroll indicators in XUL richlistboxes and scrollboxes


== scroll indicators ==
== controls for video  ==


Open bugs
Open bugs  
* {{bug|461843}} - Show indication of where on the page you are when scrolling
* {{bug|515166}} - Support scroll indicators in XUL richlistboxes and scrollboxes


== controls for video ==
*{{bug|465839}} - Controls for video content are missing


Open bugs
Proposals
* {{bug|465839}} - Controls for video content are missing


Proposals
*proposal 1
* proposal 1  
[http://www.flickr.com/photos/madhava_work/4352145250/ http://farm5.static.flickr.com/4062/4352145250_b678e40771.jpg]


== Feed subscription ==
[http://www.flickr.com/photos/madhava_work/4352145250/ [[Image:|4352145250_b678e40771.jpg]]]


Open bugs
== Feed subscription ==
* {{bug|477714}} - Provide UI for subscription to feeds (RSS, atom, etc.)


Open bugs


== Edit or clear site-specific prefs ==
*{{bug|477714}} - Provide UI for subscription to feeds (RSS, atom, etc.)


'''Description''': There currently is not a way for users to undo site-specific choices they've made in response to prompts from Firefox.  Examples include:
<br>


* remember passwords for this site
== Edit or clear site-specific prefs  ==
* block popups for this site
* exceptions for expired certs
* allow offline storage
* and more!


The simplest model for mobile would just be to let users clear all site-specific prefs, and this is what the listed bug proposes to do, via an extended site menu
'''Description''': There currently is not a way for users to undo site-specific choices they've made in response to prompts from Firefox. Examples include:


Open bugs
*remember passwords for this site
* {{bug|456077}} - No mechanism to edit popup preferences
*block popups for this site
*exceptions for expired certs
*allow offline storage
*and more!


== Gesture Engine and UI ==
The simplest model for mobile would just be to let users clear all site-specific prefs, and this is what the listed bug proposes to do, via an extended site menu


Open bugs
Open bugs  
* {{bug|476425}} - Add a Gesture Engine to Fennec
* {{Bug|479975}} - add an explanatory UI for the gesture engine


== Improve discoverability of side-areas ==
*{{bug|456077}} - No mechanism to edit popup preferences


Open bugs
== Gesture Engine and UI  ==
* {{bug|478037}} - allow zooming out to past the page edges so that controls are all visible


== Arbitrary/Continuous zoom mechanism ==
Open bugs


'''Description''': there is background in the planning documents for fennec 1.0 [[https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/workingUI#Zooming here]]
*{{bug|476425}} - Add a Gesture Engine to Fennec
*{{Bug|479975}} - add an explanatory UI for the gesture engine


On multitouch devices, pinch to zoom is the defacto standard here, and we should do the same. On non-multitouch devices, we still need some way of zooming by increment, rather than to structure.
== Improve discoverability of side-areas ==


Open bugs
Open bugs  
* {{bug|497479}} - can't do a deep zoom into a paragraph of text
* {{bug|533560}} - Volume control does not control zoom level


== Links and fields are hard to tap ==
*{{bug|478037}} - allow zooming out to past the page edges so that controls are all visible


# tappable areas are larger than visible targets
== Arbitrary/Continuous zoom mechanism  ==
# increasing size based on likelihood of tapping (awesometap)
# adjustments for capacitive screen


== Replace modal dialogs with modeless alternatives ==
'''Description''': there is background in the planning documents for fennec 1.0 [[https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/workingUI#Zooming here]]


== Shorter mobile-appropriate messages ==
On multitouch devices, pinch to zoom is the defacto standard here, and we should do the same. On non-multitouch devices, we still need some way of zooming by increment, rather than to structure.


== More helpful network error pages ==
Open bugs


'''Description''': Our current network error pages are unhelpful.  We can help people avoid having to type out or correct URLs by doing some basic (and Places-leveraged) suggesting. See the desktop firefox project page:
*{{bug|497479}} - can't do a deep zoom into a paragraph of text
*{{bug|533560}} - Volume control does not control zoom level


https://wiki.mozilla.org/Firefox/Projects/Network_Error_Pages
== Links and fields are hard to tap  ==


== Animated transitions ==
#tappable areas are larger than visible targets
#increasing size based on likelihood of tapping (awesometap)
#adjustments for capacitive screen


* {{bug|437957}} - Animate zoom
== Replace modal dialogs with modeless alternatives ==


== Tab badges ==
== Shorter mobile-appropriate messages  ==


== Ability to pick web-based helper apps ==
== More helpful network error pages  ==


Only a few are actually important. Candidates:
'''Description''': Our current network error pages are unhelpful. We can help people avoid having to type out or correct URLs by doing some basic (and Places-leveraged) suggesting. See the desktop firefox project page:
* mail
 
* RSS
https://wiki.mozilla.org/Firefox/Projects/Network_Error_Pages
* calendar
 
== Animated transitions  ==
 
*{{bug|437957}} - Animate zoom
 
== Tab badges  ==
 
== Ability to pick web-based helper apps  ==
 
Only a few are actually important. Candidates:  
 
*mail  
*RSS  
*calendar


== See all history / visual history  ==
== See all history / visual history  ==
Line 254: Line 276:
*[https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/Fennec_1.1%2B/History History view (a subview to Awesome screen)]
*[https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen/Fennec_1.1%2B/History History view (a subview to Awesome screen)]


== Improved in-content theme ==
== Improved in-content theme ==


Open bugs
Open bugs  
* {{bug|516641}} - Create better theme for web content form controls


== Support personas ==
*{{bug|516641}} - Create better theme for web content form controls


== Start page ==
== Support personas  ==


'''Description''': For some background, see here:
== Start page  ==
http://madhava.com/egotism/archive/005034.html


* Connection to Session Restore thinking
'''Description''': For some background, see here: http://madhava.com/egotism/archive/005034.html
* Connection to desktop "Home Tab" work


== Improved visibility of and access to add-ons catalog ==
*Connection to Session Restore thinking
*Connection to desktop "Home Tab" work


== Haptic feedback ==
== Improved visibility of and access to add-ons catalog  ==


== Multitouch gestures ==
== Haptic feedback  ==


=== Two Fingers ===
== Multitouch gestures  ==


basic set
=== Two Fingers  ===
* pinch to zoom
* two finger swipe up: jump to top
* two finger swipe down: jump to bottom


== Full Screen / standalone apps / prism ==
basic set


* full screen standalone for webapps - no sidebars, etc. - just a system toolbar
*pinch to zoom
*two finger swipe up: jump to top
*two finger swipe down: jump to bottom
 
== Full Screen / standalone apps / prism  ==
 
*full screen standalone for webapps - no sidebars, etc. - just a system toolbar


== weave vs. awesomescreen confusion  ==
== weave vs. awesomescreen confusion  ==
Line 293: Line 316:
*If the user tapped the ”Open tab from other computer” button in the left-side pane, Fennec creates a new tab and opens a web page that lists tabs available from other computers. Now, if the user wants to exit the list, s/he has to pan the left-side pane into the view and the select another tab. Note: if s/he would have pressed the (close) button in the top-right corner, s/he had closed the browser.<br>
*If the user tapped the ”Open tab from other computer” button in the left-side pane, Fennec creates a new tab and opens a web page that lists tabs available from other computers. Now, if the user wants to exit the list, s/he has to pan the left-side pane into the view and the select another tab. Note: if s/he would have pressed the (close) button in the top-right corner, s/he had closed the browser.<br>


The behaviour detailed above can be really confusing from the user point of view, because sometimes s/he has to swipe the left-side pane to the view and sometimes press the button in the top-right corner to exit the view for selecting the content for the tab. It would improve usability, if the user could cancel the selection for the tab content in the same way in all cases.
The behaviour detailed above can be really confusing from the user point of view, because sometimes s/he has to swipe the left-side pane to the view and sometimes press the button in the top-right corner to exit the view for selecting the content for the tab. It would improve usability, if the user could cancel the selection for the tab content in the same way in all cases.
 
''See the proposal for fixing the problems above:''
 
*[[Mobile/UI/Designs/TouchScreen/Fennec 1.1+/Consistent way of creating new tabs|Consistent way of creating new tabs]]
 
== plugin-blocking / on-demand plugin activation  ==
 
== multiple per-domain search engine handling in the identity panel  ==
 
== Setting for&nbsp; Full screen mode<br> ==
 
Fennec can be run on operating systems which reserve the top area of graphical user interface for showing a functional Status bar (or other suchlike short/flat element taking full width of the view) provided by the platform (cf. e.g. Android or Windows mobile). The system-provided Status bar can provide the user with useful functions and/or features but it also disables showing Fennec in full Full screen mode.


''See the proposal for fixing the problems above:''
The user may want to use the Fennec


*[[Mobile/UI/Designs/TouchScreen/Fennec_1.1%2B/Consistent_way_of_creating_new_tabs|Consistent way of creating new tabs]]
*'''with''' the system-provided Status bar because it provides useful functions and/or features she needs/uses frequently and she sees it as an advantage rather than an disadvantage that the element is shown constantly in the view.
*'''without''' the system-provided status bar because she does not see it as a critical feature for using the device (i.e. no added value for her) and she wants to reserve all screen estate completely for the actual content.


== plugin-blocking / on-demand plugin activation ==
Because it depends completely on the needs of user whether the Fennec should run in full "Full screen" or not, browser should not decide on behalf of her to hide the system-provided Status bar but let the user user to decide what is best for her.


== multiple per-domain search engine handling in the identity panel ==
Fennec should provide the user with a setting for enabling/disabling the system-provided Status bar or other corresponding platform-provided functional element. The setting should be available in the browser settings.<br>
323

edits

Navigation menu