canmove, Confirmed users, Bureaucrats and Sysops emeriti
6,906
edits
No edit summary |
mNo edit summary |
||
| Line 14: | Line 14: | ||
This feature has many potential issues with website compatibility. Whichever approach we choose will probably require iteration and tuning, so we should plan to have it enabled in Nightly for close to a full release cycle before enabling it on Aurora. (This means that if we start development work in the middle the Firefox 6 cycle, then we should probably plan on shipping the feature enabled no sooner than Firefox 7.) | This feature has many potential issues with website compatibility. Whichever approach we choose will probably require iteration and tuning, so we should plan to have it enabled in Nightly for close to a full release cycle before enabling it on Aurora. (This means that if we start development work in the middle the Firefox 6 cycle, then we should probably plan on shipping the feature enabled no sooner than Firefox 7.) | ||
<table class="fullwidth-table"> | |||
<tr> | |||
! Approach | ! Approach | ||
! Pros | ! Pros | ||
! Cons | ! Cons | ||
</tr> | |||
<tr> | |||
<td> '''Fennec 4.0 style''' - On double tap, change minimum font size based on width of tapped element ({{Bug</td> | |||
<td>611555}}). | |||
</td> | |||
<td> | |||
* Was possible to implement mostly in the front-end, late in the 4.0 cycle | * Was possible to implement mostly in the front-end, late in the 4.0 cycle | ||
* Does not affect layout of pages until they are zoomed. | * Does not affect layout of pages until they are zoomed. | ||
</td> | |||
<td> | |||
* Does not work well with pinch zoom. | * Does not work well with pinch zoom. | ||
* Mangles layout of some pages. | * Mangles layout of some pages. | ||
* Does not work well with elements like input fields. | * Does not work well with elements like input fields. | ||
* Requires re-layout after zoom (can be slow). | * Requires re-layout after zoom (can be slow). | ||
</tr> | |||
<tr> | |||
</td> | |||
<td> '''Android style''' - On zoom, re-wrap text based on the zoom level ({{Bug</td> | |||
<td>578179}}). | |||
</td> | |||
<td> | |||
* Works well with pinch zoom - the user can zoom text to any size and it will still fit on screen. | * Works well with pinch zoom - the user can zoom text to any size and it will still fit on screen. | ||
* Android users expect it and like it. | * Android users expect it and like it. | ||
| Line 37: | Line 45: | ||
* Does not mangle layout on most pages. | * Does not mangle layout on most pages. | ||
* Works well with elements like input fields. | * Works well with elements like input fields. | ||
</td> | |||
<td> | |||
* Requires re-layout after zoom (can be slow). | * Requires re-layout after zoom (can be slow). | ||
* Will still mangle layout on a few pages. | * Will still mangle layout on a few pages. | ||
</tr> | |||
<tr> | |||
</td> | |||
<td> '''iPhone style''' - Set a minimum font size per element based on its text width ({{Bug</td> | |||
<td>627842}}). | |||
</td> | |||
<td> | |||
* Does not require re-layout after zoom. | * Does not require re-layout after zoom. | ||
* With proper tuning, does not mangle layout on most pages. | * With proper tuning, does not mangle layout on most pages. | ||
* Can probably work well with elements like input fields. | * Can probably work well with elements like input fields. | ||
</td> | |||
<td> | |||
* Does not work well with pinch zoom. | * Does not work well with pinch zoom. | ||
* Will still mangle layout on a few pages. | * Will still mangle layout on a few pages. | ||
| Line 53: | Line 67: | ||
* May not meet Android user expectations. | * May not meet Android user expectations. | ||
* Some implementation issues need to be worked out to avoid feedback loops in the layout engine. | * Some implementation issues need to be worked out to avoid feedback loops in the layout engine. | ||
</td> | |||
</tr> | |||
</table> | |||
|Feature overview=Optimize zoom, reflow, and font sizes for best text readability. | |Feature overview=Optimize zoom, reflow, and font sizes for best text readability. | ||
|Feature dependencies=* {{Bug|578179}} - Option to wrap text to screen width rather than container width | |Feature dependencies=* {{Bug|578179}} - Option to wrap text to screen width rather than container width | ||