Closed
Bug 1259653
Opened 9 years ago
Closed 9 years ago
Make GeckoService aware of profiles
Categories
(Firefox for Android Graveyard :: General, defect)
Tracking
(firefox48 fixed)
RESOLVED
FIXED
Firefox 48
Tracking | Status | |
---|---|---|
firefox48 | --- | fixed |
People
(Reporter: jchen, Assigned: jchen)
References
Details
Attachments
(5 files, 2 obsolete files)
2.30 KB,
patch
|
snorp
:
review+
|
Details | Diff | Splinter Review |
5.48 KB,
patch
|
snorp
:
review+
|
Details | Diff | Splinter Review |
6.25 KB,
patch
|
snorp
:
review+
|
Details | Diff | Splinter Review |
10.97 KB,
patch
|
Margaret
:
review+
|
Details | Diff | Splinter Review |
11.04 KB,
patch
|
gbrown
:
review+
|
Details | Diff | Splinter Review |
When processing an Intent, GeckoService should start GeckoThread using the profile that initiated the Intent.
And if GeckoThread is already running and the Intent profile does not match the current profile, GeckoService should ignore the Intent because there is not much we could do in that situation. Maybe in the future, we could save these Intents and replay them when possible.
Assignee | ||
Comment 1•9 years ago
|
||
Make sure we treat profiles under a custom directory differently. To
simplify things, custom profiles must already exist, and we don't
attempt to cache instances of GeckoProfile containing custom profiles.
Custom profiles are an edge use case (must be passed in via Intent
arguments) so I think it's reasonable to have this behavior change.
Attachment #8735579 -
Flags: review?(margaret.leibovic)
Assignee | ||
Comment 2•9 years ago
|
||
Make sure GeckoThread adds the appropriate profile arguments even for
custom profiles.
Attachment #8735584 -
Flags: review?(snorp)
Assignee | ||
Comment 3•9 years ago
|
||
Add GeckoThread.initWithProfile that make it easy to target a particular
profile. The method succeeds when GeckoThread has not been initialized
or is already using the specified profile. It fails when the current
profile does not match the specified profile.
Attachment #8735585 -
Flags: review?(snorp)
Assignee | ||
Comment 4•9 years ago
|
||
In GeckoService, wait until we get an Intent before starting GeckoThread
using the profile information contained in the Intent.
Attachment #8735586 -
Flags: review?(snorp)
Comment 5•9 years ago
|
||
(In reply to Jim Chen [:jchen] [:darchons] from comment #1)
> Created attachment 8735579 [details] [diff] [review]
> Treat custom profiles differently in GeckoProfile (v1)
>
> Make sure we treat profiles under a custom directory differently. To
> simplify things, custom profiles must already exist, and we don't
> attempt to cache instances of GeckoProfile containing custom profiles.
>
> Custom profiles are an edge use case (must be passed in via Intent
> arguments) so I think it's reasonable to have this behavior change.
What are the consumers of this edge case right now?
Assignee | ||
Comment 6•9 years ago
|
||
(In reply to :Margaret Leibovic from comment #5)
> (In reply to Jim Chen [:jchen] [:darchons] from comment #1)
> > Created attachment 8735579 [details] [diff] [review]
> > Treat custom profiles differently in GeckoProfile (v1)
> >
> > Make sure we treat profiles under a custom directory differently. To
> > simplify things, custom profiles must already exist, and we don't
> > attempt to cache instances of GeckoProfile containing custom profiles.
> >
> > Custom profiles are an edge use case (must be passed in via Intent
> > arguments) so I think it's reasonable to have this behavior change.
>
> What are the consumers of this edge case right now?
I can only think of testing infra as a regular consumer (tests are run inside a custom profile). Technically anybody could pass in a profile directory through the "-profile" argument when launching the GeckoApp activity, but I don't know if anybody does that.
Updated•9 years ago
|
Attachment #8735579 -
Flags: review?(margaret.leibovic) → review+
Attachment #8735584 -
Flags: review?(snorp) → review+
Comment on attachment 8735585 [details] [diff] [review]
Support initializing GeckoThread with a specific profile (v1)
Review of attachment 8735585 [details] [diff] [review]:
-----------------------------------------------------------------
::: mobile/android/base/java/org/mozilla/gecko/GeckoView.java
@@ +232,5 @@
>
> final GeckoProfile profile = GeckoProfile.get(context);
> }
>
> + GeckoThread.init(/* profile */ null, /* args */ null,
Might be useful to just add a no-arg overload for init() to avoid having to pass all these
Attachment #8735585 -
Flags: review?(snorp) → review+
Attachment #8735586 -
Flags: review?(snorp) → review+
Assignee | ||
Comment 8•9 years ago
|
||
Asking for review again, because I merged GeckoProfile.get(Context) into the
other get method, so that there's only one place for all the logic of getting a
profile, instead of two separate methods.
Attachment #8737274 -
Flags: review?(margaret.leibovic)
Assignee | ||
Updated•9 years ago
|
Attachment #8735579 -
Attachment is obsolete: true
Assignee | ||
Comment 9•9 years ago
|
||
This bug changed the meaning of profiles with empty names (""). It used
to mean the same thing as a null name, which represents the default
profile. However, the new behavior is that an empty name indicates a
custom profile. So the tests involving empty names are removed from
testGeckoProfile.
Attachment #8737276 -
Flags: review?(margaret.leibovic)
Assignee | ||
Comment 10•9 years ago
|
||
This bug changed the meaning of profiles with empty names (""). It used
to mean the same thing as a null name, which represents the default
profile. However, the new behavior is that an empty name indicates a
custom profile. So the tests involving empty names are removed from
testGeckoProfile.
Attachment #8737856 -
Flags: review?(gbrown)
Assignee | ||
Updated•9 years ago
|
Attachment #8737276 -
Attachment is obsolete: true
Attachment #8737276 -
Flags: review?(margaret.leibovic)
![]() |
||
Updated•9 years ago
|
Attachment #8737856 -
Flags: review?(gbrown) → review+
Updated•9 years ago
|
Attachment #8737274 -
Flags: review?(margaret.leibovic) → review+
Comment 11•9 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/f6968de072c7
https://hg.mozilla.org/integration/mozilla-inbound/rev/cecaa7c35791
https://hg.mozilla.org/integration/mozilla-inbound/rev/954498882fb7
https://hg.mozilla.org/integration/mozilla-inbound/rev/0e648c021a95
https://hg.mozilla.org/integration/mozilla-inbound/rev/4743abb7f7ff
Comment 12•9 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/f6968de072c7
https://hg.mozilla.org/mozilla-central/rev/cecaa7c35791
https://hg.mozilla.org/mozilla-central/rev/954498882fb7
https://hg.mozilla.org/mozilla-central/rev/0e648c021a95
https://hg.mozilla.org/mozilla-central/rev/4743abb7f7ff
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
status-firefox48:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → Firefox 48
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
•