Closed Bug 949541 Opened 11 years ago Closed 3 years ago

Kill GlobalHistory.java and make a simple JNI API to check, add and update history

Categories

(Firefox for Android Graveyard :: Data Providers, defect)

All
Android
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: mfinkle, Unassigned)

References

Details

(Keywords: perf)

Let's move all the real logic into nsAndroidHistory.cpp

Background from bug 949104 comment 5:
---------------------------

* We implement CanAddVisit in GlobalHistory.java which is not optimal. nsAndroidHistory.cpp will call VisitURI and SetURITitle via JNI into GeckoAppShell, which starts a background thread and calls the GlobalHistory methods. Thos mthods then call the local CanAddVisit, which can return false. Why bother to make a JNI call and post a runnable to the background thread if we are only going to ignore the visit? Let's move CanAddVisit back into nsAndroidHistory. GlobalHistory.add and GlobalHistory.update are only called via the JNI stub in GeckoAppShell. We should be fine with moving CanAddVisit into nsAndroidHistory.

* The code to support a:visited runs through nsAndroidHistory, via GeckoAppShell, into GlobalHistory. Again, I'd like to move this entirely into nsAndroidHistory, much like desktop's History.cpp does. I think it would be more performant. 

Let's basically work to kill GlobalHistory.java and make a simple JNI API to check, add and update history, which is called from nsAndroidHistory.cpp

---------------------------
Marking as blocking Bug 934030, because it's related, even if not directly blocking, and See Also sucks. Need moar Bugzilla flags.
Blocks: 934030
OS: Linux → Android
Hardware: x86_64 → All
Keywords: perf
No longer blocks: 934030
Filed bug 949639 to move CanAddURI since it's simpler.
We have completed our launch of our new Firefox on Android. The development of the new versions use GitHub for issue tracking. If the bug report still reproduces in a current version of [Firefox on Android nightly](https://play.google.com/store/apps/details?id=org.mozilla.fenix) an issue can be reported at the [Fenix GitHub project](https://github.com/mozilla-mobile/fenix/). If you want to discuss your report please use [Mozilla's chat](https://wiki.mozilla.org/Matrix#Connect_to_Matrix) server https://chat.mozilla.org and join the [#fenix](https://chat.mozilla.org/#/room/#fenix:mozilla.org) channel.
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → INCOMPLETE
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.