Fennec/NativeUI: Difference between revisions
(Created page with "'''Known Issue'''") |
No edit summary |
||
| Line 1: | Line 1: | ||
' | ==Features== | ||
Awesome Bar – Go to your favorite sites in just a couple of keystrokes with intelligent and personalized searching | |||
Firefox Sync – Sync your Firefox tabs, history, bookmarks and passwords between your desktop and mobile device for a seamless browsing experience | |||
Tabbed browsing – View open tabs as thumbnails to easily identify and select the Web page you’d like to go to next | |||
Fast - Instantly startup (<300ms) | |||
Small - Low memory usage (consistenty with other browsers) | |||
Engery - Doesn't eat your battery | |||
==Background== | |||
[http://dougt.org/wordpress/2011/09/fennec-and-native-android-uis/] | |||
==Known Issue== | |||
===Near Term=== | |||
tabs (dougt) | |||
reload (gcp) | |||
progress handling | |||
session history (thebnich) | |||
Dialogs | |||
door hangers (gcp) | |||
preferences (alexp) | |||
addons | |||
bookmarking | |||
Panning perf (clord) | |||
zooming perf (clord) | |||
IME (For example, focus in a text area, then try move focus outside the text area.) | |||
Use AsyncTask. https://github.com/snorp/mozilla-central/blob/faster/embedding/android/GeckoApp.java#L304 | |||
Move AwesomeBar functionality in GeckoApp to avoid that kill brian was seeing (see http://stackoverflow.com/questions/3596446/threads-interrupted-when-new-activity-is-started-android) | |||
Don't initialize this early. https://github.com/snorp/mozilla-central/blob/faster/embedding/android/GeckoApp.java#L383. So far, the only usage is here: https://github.com/snorp/mozilla-central/blob/faster/embedding/android/GeckoAppShell.java#L1717 -- which is after a page has loaded. I would recommend the initialization happen right there, when the mDb is null. Or probably at the end of onCreate in GeckApp.java | |||
https://github.com/snorp/mozilla-central/blob/faster/embedding/android/AwesomeBar.java#L178 -- This can be moved to an AsyncTask. A database access can happen in the background and the results can be pushed to the UI. In that way, the responsiveness of AwesomeBar will be faster and better. | |||
Setting the FilterQueryProvider automatically processes the SQL in a background thread (see http://developer.android.com/reference/android/widget/CursorAdapter.html#runQueryOnBackgroundThread%28java.lang.CharSequence%29). I verified this by adding a Thread.sleep() call in the filter - the UI remains responsive. | |||
===Mid Term=== | |||
Sync support (thebnich) ** see https://github.com/rnewman/clj-weave to start | |||
page info | |||
sharing | |||
Ability to pan around last screen shot. | |||
Remove unused cruft from the APK. | |||
===Longer term=== | |||
Download | |||
find on page | |||
selection | |||
removing xul | |||
Revision as of 22:07, 10 October 2011
Features
Awesome Bar – Go to your favorite sites in just a couple of keystrokes with intelligent and personalized searching Firefox Sync – Sync your Firefox tabs, history, bookmarks and passwords between your desktop and mobile device for a seamless browsing experience Tabbed browsing – View open tabs as thumbnails to easily identify and select the Web page you’d like to go to next
Fast - Instantly startup (<300ms) Small - Low memory usage (consistenty with other browsers) Engery - Doesn't eat your battery
Background
Known Issue
Near Term
tabs (dougt) reload (gcp) progress handling session history (thebnich) Dialogs door hangers (gcp) preferences (alexp) addons bookmarking Panning perf (clord) zooming perf (clord) IME (For example, focus in a text area, then try move focus outside the text area.) Use AsyncTask. https://github.com/snorp/mozilla-central/blob/faster/embedding/android/GeckoApp.java#L304 Move AwesomeBar functionality in GeckoApp to avoid that kill brian was seeing (see http://stackoverflow.com/questions/3596446/threads-interrupted-when-new-activity-is-started-android) Don't initialize this early. https://github.com/snorp/mozilla-central/blob/faster/embedding/android/GeckoApp.java#L383. So far, the only usage is here: https://github.com/snorp/mozilla-central/blob/faster/embedding/android/GeckoAppShell.java#L1717 -- which is after a page has loaded. I would recommend the initialization happen right there, when the mDb is null. Or probably at the end of onCreate in GeckApp.java
https://github.com/snorp/mozilla-central/blob/faster/embedding/android/AwesomeBar.java#L178 -- This can be moved to an AsyncTask. A database access can happen in the background and the results can be pushed to the UI. In that way, the responsiveness of AwesomeBar will be faster and better.
Setting the FilterQueryProvider automatically processes the SQL in a background thread (see http://developer.android.com/reference/android/widget/CursorAdapter.html#runQueryOnBackgroundThread%28java.lang.CharSequence%29). I verified this by adding a Thread.sleep() call in the filter - the UI remains responsive.
Mid Term
Sync support (thebnich) ** see https://github.com/rnewman/clj-weave to start page info sharing Ability to pan around last screen shot. Remove unused cruft from the APK.
Longer term
Download find on page selection removing xul