Closed
Bug 1251819
Opened 8 years ago
Closed 6 years ago
"Default apps" cannot set Firefox as default correctly if the Windows user is a local account but Settings app is signing in with a Microsoft account
Categories
(Web Compatibility :: Site Reports, defect)
Tracking
(platform-rel +, firefox48 affected, firefox49 affected, firefox50 affected, firefox51 affected)
People
(Reporter: emk, Assigned: cyberdees)
References
(Blocks 1 open bug)
Details
(Whiteboard: [contactready][platform-rel-Microsoft][platform-rel-Edge][platform-rel-Windows])
Attachments
(1 file)
Steps to reproduce: 1. Make sure Insider Preview build 11082 or later is installed. 2. Install Firefox. Firefox will bring up the default browser prompt. 3. Click "Use Firefox as my default browser". "Default apps" will open. 4. Click the Microsoft Edge icon and select Firefox from the popup. 5. Press Ctrl+R and type <http://www.mozilla.org/>. Firefox will open the web page (as expected). 6. Press Ctrl+R and type <https://www.mozilla.org/>. 7. Click "Set defaults by app" at the bottom of "Default apps". "Default Programs" control panel will open. 8. Select Firefox and click "Choose defaults for this program". Actual result: In step 4, no visual change will happen. If you reopen Settings and go to System > Default apps again, you will see [+] icon and "Choose a default" message under the "Web browser" section. In step 6, "How do you want to open this?" popup will open and promote Microsoft Edge. If you forget to check "Always use this app" when selecting Firefox and type "https://www.mozilla.org/" into the Run dialog again, Microsoft Edge will open without prompt. In step 8, only "HTTP" will be changed the default handler. The default handler for "HTTPS", ".htm", and ".html" will remain Microsoft Edge. Expected result: In step 4, the Microsoft Edge icon should be changed to the Firefox icon. In step 6, Firefox should open the web page. In step 8, "HTTP", "HTTPS", ".htm", and ".html" handlers should be changed to Firefox. The release version of Windows 10 (build 10586) works as expected. This is broken since at least build 11082. Note: this is not our fault. This bug is reproducible even if you don't install Firefox and replace "Firefox" with "Internet Explorer" in the STR. This bug is reproducible even immediately after "Reset PC". But if Microsoft didn't fix this before the Redstone release, we will have to workaround the problem somehow (e.g. use "Default Programs" control panel instead of "Default apps"). I sent a feeback: Windows-Feedback:?contextid=53&feedbackid=4e299558-233d-4098-8df6-2d604670a048&form=1&src=2 Please upvote.
Reporter | ||
Updated•8 years ago
|
Blocks: windows-10
Comment 1•8 years ago
|
||
FWIW, I can't reproduce this on build 11099. Perhaps there are additional relevant circumstances/steps to this? Or it stops happening after some other changes to default apps (this machine has had win10 on it for a while now...) ?
Reporter | ||
Comment 2•8 years ago
|
||
I could reproduce this even if I did a clean install build 10586 and update it to the latest build (14271).
Comment 3•8 years ago
|
||
Does it work correctly if you set Firefox as default from Firefox instead of the installer?
Flags: needinfo?(VYV03354)
Reporter | ||
Comment 4•8 years ago
|
||
The installer has no option to make Firefox default on Windows 10. I set Firefox as default from Firefox preferences (sorry, STR was not clear about it).
Flags: needinfo?(VYV03354)
Reporter | ||
Comment 5•8 years ago
|
||
According to some reddit comments, this change has been ported into Build 10586.122 (a.k.a. KB3140743). but I could not reproduce this on my main (non-VM) PC. (In reply to :Gijs Kruitbosch from comment #1) > Or it stops happening after some other > changes to default apps (this machine has had win10 on it for a while > now...) ? So this is plausible. But I don't found what made default apps work yet.
Reporter | ||
Comment 6•8 years ago
|
||
When I create a new user, Default apps worked on the user. This is very similar to this report: https://answers.microsoft.com/en-us/windows/forum/windows_10-other_settings/cannot-change-app-defaults/7aaab035-263b-49ab-8544-93d9c5fe2069
Reporter | ||
Comment 7•8 years ago
|
||
An unresolved question is why clean install does not solve the problem.
Reporter | ||
Comment 8•8 years ago
|
||
Maybe I found the condition. If the user profile had been associated with a Microsoft account and then it was disassociated from the Microsoft account, Default apps will no longer work. When I associated the profile with the Microsoft account again, Default apps started to work. When I disassociated again, Default apps stopped to work again. I don't yet found a way how to make Default apps work with a local account again without recreating the user.
Reporter | ||
Comment 9•8 years ago
|
||
If only Settings app signs in a Microsoft account, Default apps stops to work. Updated STR: 1. Create a brand-new local account. 2. Sign in the created account. 3. Make sure Default apps work. 4. Go to Settings > Update & Security > Windows Update > Advanced Options. 5. Click [Get started] under the [Get Insider Preview builds] section. 6. When Windows asks your password, do not enter the password and click "Sign in to just this app instead". 7. Sign out the account. 8. Sign in the account again. 9. Follow the STR in comment #0. To restore the Default apps function: 1. Go to Settings > Accounts > Email & app accounts > Accounts used by other apps. 2. Remove the Microsoft account. 3. Sign out and sign in. Gijs, could you reproduce this with the updated steps?
Flags: needinfo?(gijskruitbosch+bugs)
Comment 10•8 years ago
|
||
(In reply to Masatoshi Kimura [:emk] from comment #9) > Gijs, could you reproduce this with the updated steps? I'm very sorry for the delay. I did not get to this today, and I'd like to do this on my VM, which is at home (and I am not). There are some public holidays here and I'm going to be away myself, so it's likely I won't get to this until Wednesday next week. Again, apologies for the delay. If this is urgent you could ask :jaws or :dolske if they can reproduce.
Comment 11•8 years ago
|
||
(In reply to Masatoshi Kimura [:emk] from comment #9) > If only Settings app signs in a Microsoft account, Default apps stops to > work. > Updated STR: > 1. Create a brand-new local account. > 2. Sign in the created account. > 3. Make sure Default apps work. > 4. Go to Settings > Update & Security > Windows Update > Advanced Options. > 5. Click [Get started] under the [Get Insider Preview builds] section. I don't see a [Get Insider Preview builds] section or [Get started] link when I create a secondary account and log in with that account.
Reporter | ||
Comment 12•8 years ago
|
||
I forgot to say making the new account an admin.
Comment 13•8 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #11) > (In reply to Masatoshi Kimura [:emk] from comment #9) > > If only Settings app signs in a Microsoft account, Default apps stops to > > work. > > Updated STR: > > 1. Create a brand-new local account. > > 2. Sign in the created account. > > 3. Make sure Default apps work. > > 4. Go to Settings > Update & Security > Windows Update > Advanced Options. > > 5. Click [Get started] under the [Get Insider Preview builds] section. > > I don't see a [Get Insider Preview builds] section or [Get started] link > when I create a secondary account and log in with that account. OK, if I grant the account admin privileges, I get that section and a "Take Control" button... continuing to see if this gets me somewhere in reproducing this issue.
Comment 14•8 years ago
|
||
(In reply to Masatoshi Kimura [:emk] from comment #9) > If only Settings app signs in a Microsoft account, Default apps stops to > work. > Updated STR: > 1. Create a brand-new local account. > 2. Sign in the created account. > 3. Make sure Default apps work. > 4. Go to Settings > Update & Security > Windows Update > Advanced Options. > 5. Click [Get started] under the [Get Insider Preview builds] section. > 6. When Windows asks your password, do not enter the password and click > "Sign in to just this app instead". > 7. Sign out the account. > 8. Sign in the account again. After this, I clicked the 'reset to the Microsoft recommended defaults' link, and that seems to have worked. > 9. Follow the STR in comment #0. Indeed, at this point, the functionality is broken. > To restore the Default apps function: > 1. Go to Settings > Accounts > Email & app accounts > Accounts used by other > apps. > 2. Remove the Microsoft account. > 3. Sign out and sign in. I somehow had to do this twice, but then yes, I could reproduce this bug. I reproduced on the regular 1511 release with updates because that's where my VM seems to have gotten stuck. I'll see if I can re-convince it to start getting insider updates now that I've messed about the accounts as I have. :-) I'm moving this to tech evangelism as this is pretty clearly not our bug. Given the Windows 10 restrictions around defaults I doubt that we can detect this situation from a desktop/"old-school" (not universal) app, either... :-\ Is there any progress on the MS issue you reported, and/or should we try to contact some of the Windows 10 folks we've been in touch with before it was released? (PS: thanks for tracking this down, and I'm pretty amazed that you were able to get such exact STR for the issue - kudos!)
Component: Shell Integration → Desktop
Flags: needinfo?(gijskruitbosch+bugs) → needinfo?(VYV03354)
Product: Firefox → Tech Evangelism
Comment 15•8 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #14) > I somehow had to do this twice, but then yes, I could reproduce this bug. Err, I meant, I had to remove the account, sign out, sign back in, twice, to get it to work again after it was broken.
Reporter | ||
Comment 16•8 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #14) > Is there any progress on the MS issue you reported, and/or should we try to > contact some of the Windows 10 folks we've been in touch with before it was > released? I sent a feedback every time a new Insider Preview was released, but I had no progress at the moment. If Mozilla has a contact other than the feedback app, I think we should try it.
Flags: needinfo?(VYV03354)
Reporter | ||
Updated•8 years ago
|
Summary: "Default apps" cannot set Firefox as default correctly on Insider Preview → "Default apps" cannot set Firefox as default correctly on Insider Preview with local account
Reporter | ||
Comment 17•8 years ago
|
||
Apparently the Settings app thinks the current Windows logon is connected to a Microsoft account even if actually it is not. So the Settings app will try to access Windows Identity Provider and it will fail on changing default apps. IsConnectedAtLogon is undocumented, but looks like it matches Settings app's belief.
Attachment #8736680 -
Flags: review?(gijskruitbosch+bugs)
Reporter | ||
Comment 18•8 years ago
|
||
Once Microsoft has fixed the bug, IsConnectedAtLogon is expected to be zero unless the Windows logon is a Microsoft account. So the added code path will never run anymore.
Reporter | ||
Comment 19•8 years ago
|
||
:dolske, you filed bug 1240892. Do you have a contact with some Microsoft folks? Given that Microsoft forces us to use the Settings app, they should provide a decent Default apps functionality.
Flags: needinfo?(dolske)
Comment 20•8 years ago
|
||
Comment on attachment 8736680 [details] [diff] [review] Use the classic Control Panel if the Windows logon is a Microsoft account and the Settings app is signing in I don't feel comfortable reviewing this. Maybe Jim can help?
Attachment #8736680 -
Flags: review?(gijskruitbosch+bugs) → review?(jmathies)
Reporter | ||
Comment 21•8 years ago
|
||
http://www.winhelponline.com/blog/default-apps-not-working-windows-10/
Comment 22•8 years ago
|
||
(In reply to Masatoshi Kimura [:emk] from comment #18) > Once Microsoft has fixed the bug, IsConnectedAtLogon is expected to be zero > unless the Windows logon is a Microsoft account. So the added code path will > never run anymore. Ok, relying on this.
Comment 23•8 years ago
|
||
Comment on attachment 8736680 [details] [diff] [review] Use the classic Control Panel if the Windows logon is a Microsoft account and the Settings app is signing in Review of attachment 8736680 [details] [diff] [review]: ----------------------------------------------------------------- ::: browser/components/shell/nsWindowsShellService.cpp @@ +643,5 @@ > pAARUI->Release(); > } > return SUCCEEDED(hr) ? NS_OK : NS_ERROR_FAILURE; > } > + nit - ws at the top of the file @@ +660,5 @@ > + if (!PathAppendW(controlEXEPath, controlEXE)) { > + return NS_ERROR_FAILURE; > + } > + > + WCHAR params[] = L"control.exe /name Microsoft.DefaultPrograms /page pageDefaultProgram"; Since we're relying on a Vista+ feature here, lets check the os in this routine and abort if someone calls it on the wrong os. https://msdn.microsoft.com/en-us/library/windows/desktop/cc144191(v=vs.85).aspx @@ +713,5 @@ > + return false; > + } > + > + uint32_t value; > + rv = regKey->ReadIntValue(NS_LITERAL_STRING("IsConnectedAtLogon"), &value); I wasn't able to find documentation about this through a google search. Do you have a reference?
Attachment #8736680 -
Flags: review?(jmathies) → review+
Reporter | ||
Comment 24•8 years ago
|
||
https://hg.mozilla.org/integration/fx-team/rev/dbfc218a57449d4b3c0050322e47f83246600c48 Bug 1251819 - Use the classic Control Panel if the Settings app believes the current Windows logon is a Microsoft account while actually it is not. r=jimm
Reporter | ||
Comment 25•8 years ago
|
||
(In reply to Jim Mathies [:jimm] from comment #23) > I wasn't able to find documentation about this through a google search. Do > you have a reference? No I found it by my own inspection.
Reporter | ||
Comment 26•8 years ago
|
||
This is only a workaround. Microsoft should fix Default apps.
Keywords: leave-open
Comment 27•8 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/dbfc218a5744
Comment 28•8 years ago
|
||
(In reply to Masatoshi Kimura [:emk] from comment #19) > :dolske, you filed bug 1240892. Do you have a contact with some Microsoft > folks? Given that Microsoft forces us to use the Settings app, they should > provide a decent Default apps functionality. Unfortunately I don't think we have an appropriate contact for this kind of feedback.
Flags: needinfo?(dolske)
Comment 29•8 years ago
|
||
This is not really an issue for the WebCompat team, but probably cyberdees can have a contact with Microsoft to negotiate this issue.
Assignee: nobody → dchinniah
Status: NEW → ASSIGNED
Flags: needinfo?(dchinniah)
Whiteboard: [contactready]
Assignee | ||
Comment 30•8 years ago
|
||
(In reply to Karl Dubost :karlcow from comment #29) > This is not really an issue for the WebCompat team, but probably cyberdees > can have a contact with Microsoft to negotiate this issue. We do indeed have a MSFT channel. Please contact myself and I can have the appropriate persons added to the group for further outreach.
Flags: needinfo?(dolske)
Flags: needinfo?(dchinniah)
Flags: needinfo?(VYV03354)
Assignee | ||
Updated•8 years ago
|
platform-rel: --- → ?
Whiteboard: [contactready] → [contactready][platform-rel-Microsoft][platform-rel-Edge]
Updated•8 years ago
|
Flags: needinfo?(dolske)
Updated•8 years ago
|
status-firefox48:
--- → affected
status-firefox49:
--- → affected
status-firefox50:
--- → affected
status-firefox51:
--- → affected
Hardware: Unspecified → All
Reporter | ||
Updated•8 years ago
|
Flags: needinfo?(VYV03354)
Updated•8 years ago
|
platform-rel: ? → +
Reporter | ||
Comment 32•8 years ago
|
||
Here is a step-by-step instruction to reproduce the issue with the latest Insider Preview (build 14936). I sent the same instruction to :Gjis privately, but I'm also posting the message here for the record. 1. Go to [Settings] > [Accounts] > [Family & Other users]. 2. Click [Add someone else to this PC] to open [How will this person sign in?] dialog. 3. Click [The person I want to add doesn't have an email address] to open [Let's create your account] dialog. 4. Click [Add a user without a Microsoft account]. 5. Enter a username and click [Next] to close the dialog. 6. Select the created account under [Other users] section. 7. Click [Change account type] button to open the [Change account type] dialog. 8 Select [Administrator] under [Account type] dropdown and click OK to close the dialog. 9. Sign out from Start Menu. 10. Sign in with the created account. 11. Go to [Settings] > [Update & security] > [Windows Insider Program]. 12. Click [Take control] under [Get Insider Preview builds] section. 13. Click [Fix me](?) button (sorry, I'm uncertain about the exact English word here). 14. Click [Sign in]. 15. Enter email address and password and click [Sign in]. I used the same address as my main account. 16. Click [Sign in to just this app instead]. 17. Sign out and sign in again. 18. Go to [Settings] > [System] > [Default apps]. [Choose default apps] will no longer work. Note: when this problem happens, The "IsConnectedAtLogon" registry value under "HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations" will have value 1. But changing this value will not fix the problem.
Assignee | ||
Updated•8 years ago
|
Whiteboard: [contactready][platform-rel-Microsoft][platform-rel-Edge] → [contactready][platform-rel-Microsoft][platform-rel-Edge][platform-rel-Windows]
Reporter | ||
Comment 33•8 years ago
|
||
With build 14955, [Fix me] button is no longer displayed after step 12 in comment #32. Take the following steps instead. 13' Sign out and sign in. 14' Click [Link a Microsoft account] under the [Windows Insider account] section. 15' Enter email address and password and click [Sign in] in the [Add your Microsoft account] dialog. 16' Click [Sign in to just this app instead]. 17' Sign out and sign in once again. Note: I could no longer select the Insider Level after taking the steps. The drop down that selects ring was disabled and it was fixed on "Slow". I had to rollback the VM snapshot to restore ability to choose the Fast ring. Something is pretty buggy... And the bug is still present. Choose default apps do not work yet.
Reporter | ||
Comment 34•8 years ago
|
||
Looks like Insider Preview build 14965 fixed this.
Reporter | ||
Comment 35•8 years ago
|
||
By the way, this bug is reproducible without using Insider Preview builds as follows. I confirmed it with build 14393.447: 1. Sign in with a local account user. 2. Go to [Settings] > [Accounts]. 3. Click [Sign in with a Microsoft account instead]. 4. Enter your mail address and password, then click [Sign in]. 5. Enter the current Windows password and click [Next]. 6. Set a PIN if you prefer. 7. Sign out and Sign in. 8. Go to [Settings] > [Accounts]. 9. Click [Sign in with a local account instead]. 10. Enter the current password and click [Next]. 11. Click [Next]. (You don't have to change the prefilled user name.) 12. Click [Sign out and finish]. 13. Sign in again.
Summary: "Default apps" cannot set Firefox as default correctly on Insider Preview with local account → "Default apps" cannot set Firefox as default correctly if the Windows user is a local account but Settings app is signing in with a Microsoft account
Reporter | ||
Comment 36•8 years ago
|
||
(In reply to Masatoshi Kimura [:emk] from comment #35) > By the way, this bug is reproducible without using Insider Preview builds as > follows. I confirmed it with build 14393.447: Of course, I cannot test the fix until a new non-Insider Preview build (i.e. Creators Update) is released :)
Updated•7 years ago
|
Rank: 1
Comment 37•6 years ago
|
||
(In reply to Masatoshi Kimura [:emk] from comment #36) > (In reply to Masatoshi Kimura [:emk] from comment #35) > > By the way, this bug is reproducible without using Insider Preview builds as > > follows. I confirmed it with build 14393.447: > > Of course, I cannot test the fix until a new non-Insider Preview build (i.e. > Creators Update) is released :) Hi Masatoshi-san, is this something that can be closed now?
Updated•6 years ago
|
Flags: needinfo?(VYV03354)
Reporter | ||
Comment 38•6 years ago
|
||
Yes.
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Flags: needinfo?(VYV03354)
Resolution: --- → FIXED
Updated•6 years ago
|
Keywords: leave-open
Updated•5 years ago
|
Product: Tech Evangelism → Web Compatibility
You need to log in
before you can comment on or make changes to this bug.
Description
•