Closed
Bug 780276
Opened 13 years ago
Closed 12 years ago
Make GeckoAsyncTask's dependency on Activity optional
Categories
(Firefox for Android Graveyard :: General, defect, P3)
Tracking
(Not tracked)
RESOLVED
INVALID
People
(Reporter: cpeterson, Assigned: sriram)
References
Details
In bug 778468 comment 21, Sriram suggests:
Untangling a bit more..
mActivity.runOnUiThread(new Runnable() { ... }); in GeckoAsyncTask
Ideally GeckoAsyncTask doesn't need to know about the activity, if its used only for a small background task. So, this can have a null check for mActivity, there by, I can do a small background task with the GeckoAsyncTask.
This will be helpful in Tab.java (and others). So,
updateBookmark() {
...
(new GeckoAsyncTask(null, ...) {
doInBackground() {
...
}
}).execute();
}
If it really wants a notification after completion, then GeckoAsyncTask will be like..
GeckoAsyncTask(args-list) {
setUIHandler() {
mUIHandler = GeckoAsyncTask.UIHandler;
}
doInBackground() { ... }
run() {
if (mUIHandler) { mUIHandler.notifyProcessDone(); }
}
and GeckoAsyncTask.UIHandler is just an interface.
This will help anything -- that's not an activity -- to make use of GeckoAsyncTask. Say, a BrowserToolbar wants to use GeckoAsyncTask,
(new GeckoAsyncTask(args) {
doInBackground() { ... }
}).setUIHandler(new GeckoAsyncTask.UIHandler() {
notifyProcessDone() { .. browser-toolbar's-ui-tasks }
}).execute();
... aaahh.. that's finally Javascript! :(
| Assignee | ||
Updated•13 years ago
|
Assignee: nobody → sriram
Comment 1•12 years ago
|
||
UiAsyncTask no longer has any dependency on Activity, so closing.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → INVALID
Updated•5 years ago
|
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•