Closed Bug 924860 (metroprofilesharing) Opened 11 years ago Closed 9 years ago

Have a shared profile experience

Categories

(Tracking Graveyard :: Metro Operations, defect)

x86_64
Windows 8
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: bbondy, Unassigned)

References

Details

(Whiteboard: [story])

mfinkle:
> What I'd like to see next, before committing is a set of milestones,
> including a quick path to a proof of concept, if possible. 

This bug and its dependencies will try to accomplish that.

---

As a Metro Firefox user, I'd like to have a shared profile with Firefox Desktop.

Implementation details:
- 2 modes, you can only be in either Metro or Desktop at any one time.
- Once in one mode, any activation from either environment will switch to the currently opened environment.
- Switching environments should be made available from both the Desktop and Metro browser.  When you switch, it closes the browser in the current environment and re-opens it in the other.

Needed from UX:
- How should switch to Metro look in Desktop, button next to downloads button which is only visible in win8?
- Should we promote the "View on Desktop" option to top level appbar button in Metro?
- Label string names 
- Do we need any limitations added anywhere since people would start with a ton of bookmarks and history data?
- Should bookmarks that are in Folders in Desktop be displayed as a flat in Metro? Or not displayed at all? It is too much work to add a hierarchical view in v1. 
- Anything else?
Flags: needinfo?(ywang)
Whiteboard: [preview-triage] → [triage]
Depends on: 924886
Installer changes: No work
--------------------------
I think we should keep the removal of the MetroFirefox directory since some older users will still have it:
http://dxr.mozilla.org/mozilla-central/source/browser/installer/windows/nsis/uninstaller.nsi#l254

Updater changes: No work
--------------------------
There is some custom code for having another instance open, but that code is still useful.
Likewise we already have code for doing updates from Metro, which becomes even more important than it was before now that we're considering 2 modes.
Depends on: 924894
Depends on: 924897
Depends on: 924900
Depends on: 924911
Depends on: 924914
Depends on: 924919
More discussion of this change (including whether we should do it):
https://mail.mozilla.org/pipermail/metro/2013-October/thread.html#286
Depends on: 924995
Whiteboard: [triage] → [triage] feature=story c=tbd u=tbd p=0
Depends on: 928068
Depends on: 928432
I noticed on the Engineering Meeting minutes that "certain user data sets (most notably bookmarks and prefs) would be kept separate". However, the main benefit of sharing the user's profile is so that they can access their bookmarks. In IE11, if I bookmark mozilla.org in Metro, the bookmark can be accessed immediately on the desktop. Shared bookmarks, shared history and shared cookies are the main benefits to sharing profiles.

I apologise as I'm not completely familiar with the technological implementations of Metro-style enabled desktop browsers, but I'm curious why it's only possible to have one mode at any one time. With IE11, I can snap Metro IE to the left side of my screen, snap desktop IE to the right side of the screen and use both at the same time. Why would this not be possible in Firefox?
(In reply to Josh Tumath from comment #3)
> I noticed on the Engineering Meeting minutes that "certain user data sets
> (most notably bookmarks and prefs) would be kept separate". However, the
> main benefit of sharing the user's profile is so that they can access their
> bookmarks. In IE11, if I bookmark mozilla.org in Metro, the bookmark can be
> accessed immediately on the desktop. Shared bookmarks, shared history and
> shared cookies are the main benefits to sharing profiles.

The default bookmark stores would be separated within the profile database but would be available to both browsers, so we can expose desktop to metro and metro to desktop. The main reason for this is that at this point our metro start tab interface can't handle displaying hierarchical bookmarks. We plan to add support for this in future revs at which point we can expose desktops bookmarks in a nice navigable view.

Note even though desktop bookmarks directly exposed they'll still show up in metro's version of the awesomebar. 

> I apologise as I'm not completely familiar with the technological
> implementations of Metro-style enabled desktop browsers, but I'm curious why
> it's only possible to have one mode at any one time. With IE11, I can snap
> Metro IE to the left side of my screen, snap desktop IE to the right side of
> the screen and use both at the same time. Why would this not be possible in
> Firefox?

One of the limitations of the shared profile idea is that we can't have two separate browser instances accessing the profile at the same time. Our profile code is not designed for it. Hence the limitation that you would have to choose between one of the two browser modes we support. Not ideal, but the technical hurdles we would have to overcome to run both browsers out of the same profile simultaneously are very very high.

This is one of the trade offs we would have to make if we implement this bug. In the current mc builds of metrofx we use a new, separate profile so both can run at the same time. The trade off currently is that you don't have any data sharing unless you connect up to Sync.

(Note also that Win 8.1 supports multiple browser windows in metro mode, something we'd like to add support for to facilitate two browsers side by side. However this is not planned for the release we will initially roll out with.)
(In reply to Jim Mathies [:jimm] from comment #4)
Ah, I see. Thanks for the reply.
Depends on: 930067
Whiteboard: [triage] feature=story c=tbd u=tbd p=0 → feature=story c=tbd u=tbd p=0
Depends on: 931798
No longer depends on: 924897
Depends on: 931801
Depends on: 931846
Blocks: metrov1epicbacklog
No longer blocks: metrov1backlog
Flags: needinfo?(ywang)
Summary: Story - Have a shared profile experience → Epic - Have a shared profile experience
Whiteboard: feature=story c=tbd u=tbd p=0 → feature=epic
Depends on: 932664
Depends on: 934029
Depends on: 934032
No longer depends on: 934029
No longer depends on: 928432
Depends on: 935099
Hi Juan, 

Could you please include the following as part of iteration #18's testing?
Please ensure it's high priority if there is more to test than there is available time in iteration #18 testing if won't have 100% coverage. Thanks.

Some ideas should include, but are not limited to:
- Test Relaunch to Desktop from metro firefox (Bug 924911)
- Test Relaunch to Windows 7 style Nightly from desktop firefox (Bug 924914)
- Test that both browsers use the same profile (Bug 924995)
- Test that preferences are independent in both browsers (924894)
- Please look for new bugs, if you aren't sure if they are bugs please ask me.  The obvious ones you'll find at this time will be around browser activations when the browser is already open (bug 932664). Ignore those and other already posed bugs.  Also ignore current tabs being opened on relaunch for now.
- Please spend some time looking for things that are causing harm to the Desktop profile. We'd eventually like to get a sign off from QA that to the best of you guys' knowledge, there is no harm to the Desktop profile by using Metro Firefox.
- Please look for problems both in Desktop Firefox, and in Metro Firefox, that happen when using, and switching between both browsers.
Flags: needinfo?(jbecerra)
I forgot to also mention that testing for all of the above bugs, should be done using this Oak build:
http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-oak/firefox-28.0a1.en-US.win32.installer.exe

(Please wait until the end of the iteration though to ensure all the bugs I mentioned above have landed)
Hey Kamil, please note Brian's testing instructions in Comments #6 and #7 for Iteration #18 testing which starts on Monday.
Flags: needinfo?(kamiljoz)
Depends on: 935178
adding some bugs we can probably resolve wontfix if this lands.
Depends on: 838890, 831613
No longer depends on: 831613
No longer depends on: 838890
We was planning to share profile data between Firefox and installed web apps in bug 899675, an approach that is more complicated than this but would allow running Firefox and Metro at the same time.
bug 899675 needs to be discussed thoroughly, implemented, and tested carefully in the wild. Firefox Metro has time/deadline constraints that make waiting for bug 899675 infeasible
(In reply to Tim Abraldes [:TimAbraldes] [:tabraldes] from comment #11)
> bug 899675 needs to be discussed thoroughly, implemented, and tested
> carefully in the wild. Firefox Metro has time/deadline constraints that make
> waiting for bug 899675 infeasible

Yes, I guess that bug is going to take much more time.
Depends on: 939092
Another thing to test is to make sure the search plugins on m-c without profiling sharing match the search plugins on Oak.

I.e. make sure when you search something on Google or Bing on Metro with the oak build, that you get the same URL that is searched as when you have a mozilla-central build on Metro.  Also make sure the Desktop is the same.
Depends on: 940101
Depends on: 940168
Went through the following test case(s) so far using the oak build from comment #7. Found a few issues and created the appropriate bugs. Will continue going through more cases when I get back from work tomorrow.

Test Cases Used:
===============

- Ensured that selecting the "Nightly" icon on the destkop while Firefox Metro is running switches environments without any issues
- Ensured that selecting the "Nightly" icon from the taskbar while Firefox Metro is running switches environments without any issues
- Ensured that selecting the "Firefox.exe" icon directly from the installation path while Firefox Metro is running switches environemnts without issues
- Ensured that selecting the "Nightly" tile from the main screen in the Metro environment while Firefox Desktop is running switches environments without any issues
- Ensured that selecting the "Nightly" tile from the Apps list in the Metro environment while Firefox Desktop is running switches environments without any issues
- Ensured that selecting the "Nightly" tile from the search results in the Metro environment while Firefox Desktop is running switches environments without any issues
- Ensured that switching from Metro -> Desktop using the Navigation App Bar "menu" item (Relaunch in Desktop) works without any issues
- Ensured that switching from Desktop -> Metro using Firefox menu (Relaunch in Windows 8 style Nightly) works without any issues
- Visited several websites via Firefox Desktop and ensured that the same websites are appearing under History, Search from the URL and Top Sites under Firefox Metro
- Visited several websites via Firefox Metro and ensured that the same websites are appearing under History, Search from the URL and Top Sites under Firefox Desktop
- Restarted the machine several times and ensured that the websites are still appearing correctly in both Firefox Desktop/Metro (made sure History wasn't being cleared)
- Cleared the history (everything) in Firefox Desktop and ensured that all the history was also cleared in Firefox Metro and that nothing was left behind
- Cleared the history (everything) in Firefox Metro and ensured that all the history was also cleared in Firefox Desktop and that nothing was left behind
- Visited several websites via Firefox Desktop and selected a different country (India) and ensured that the same location was selected in Firefox Metro when visiting the same website
- Visited several websites via Firefox Metro and selected a different country (Brazil) and ensured that the same location was selected in Firefox Desktop when visiting the same website
- Logged into several social media websites (Facebook, Twitter, LinkedIn, GitHub) via Firefox Metro and saved all the passwords, opened the Firefox Desktop browser and ensured the passwords where saved and I didn't have to re-login (restarted the machine and ensured passwords were still saved)
- Logged into several social media websites (Facebook, Twitter, LinkedIn, GitHub) via Firefox Desktop and saved all the passwords, opened the Firefox Metro browser and ensured the passwords where saved and I didn't have to re-login (restarted the machine and ensured passwords were still saved)
- Cleared only the passwords in Firefox Metro and ensured that the passwords have also been cleared in Firefox Desktop and that the history wasn't affected (logged off all the social media websites)
- Cleared only the passwords in Firefox Desktop and ensured that the passwords have also been cleared in Firefox Metro and that the history wasn't affected (logged off all the social media websites)
Flags: needinfo?(kamiljoz)
Depends on: 940422
Depends on: 940677
Depends on: 940936
Depends on: 941026
No longer depends on: 941026
Depends on: 941124
Went through the original test case(s) from comment # 15 and then went through the ones attached below. Used the following build:
http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/2013-11-20-11-04-46-oak/

- Opened Firefox Desktop and then opened several website shortcuts from the metro environment, ensured the website opened in Firefox Desktop and not in Firefox Metro
- Opened Firefox Desktop and selected several links from MS Apps (Skype, Games, News, Email, Evernote) and ensured that the websites opened in Firefox Desktop and not in Firefox Metro
- Opened Firefox Metro and then opened several website shortcuts from the desktop environment, ensured the website opened in Firefox Metro and not in Firefox Desktop
- Opened Firefox Metro and selected several links from MS Apps (Skype, Games, News, Email, Evernote) and ensured that the websites opened in Firefox Metro and not in Firefox Desktop
- Searched through all the available engines in Firefox Metro/Firefox Desktop (Google, Bing, Yahoo & Wikipedia) and ensured that the URL are different (ensuring Firefox Metro isn't using Firefox Desktop search code and vice versa)
Flags: needinfo?(kamiljoz)
Depends on: 942915
No longer depends on: 942915
Depends on: 944434
Depends on: 944563
Depends on: 944740
Depends on: 944781
Depends on: 944825
Depends on: 944828
Depends on: 945425
Depends on: 945554
Depends on: 945829
Depends on: 946347
Depends on: 946990
No longer depends on: 946990
Depends on: 947581
Depends on: 948107
Depends on: 949333
No longer depends on: 930067
No longer depends on: 945511
No longer depends on: 945554
No longer depends on: 948107
Depends on: 946296
Depends on: 949590
Depends on: 957282
No longer depends on: 957282
Depends on: 945511, 945554, 950174
Summary: Epic - Have a shared profile experience → Have a shared profile experience
Whiteboard: feature=epic → [story]
Alias: metroprofilesharing
Blocks: metrobacklog
No longer blocks: metrov1epicbacklog
Flags: needinfo?(jbecerra)
Priority: P2 → --
Depends on: 976301
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → INVALID
Product: Tracking → Tracking Graveyard
You need to log in before you can comment on or make changes to this bug.