Closed Bug 447637 Opened 12 years ago Closed 11 years ago

New shell service should not be hardcoded to check for browser and mail


(SeaMonkey :: OS Integration, defect)

Not set


(Not tracked)



(Reporter: neil, Assigned: mcsmurf)




(1 file, 1 obsolete file)

The shell service does not know which defaults the user is interested in.

For instance, it never warns if SeaMonkey is no longer the default news client.

Even though you may never use it for mail, if it detects that it's not the default browser it will still suggest that you set it as the default for mail.

I think we should have a preference for the types to check for default. (The default preference would still be browser and mail.)

When using the default client buttons in Preferences I think the preference should be updated to start checking for the types set as default.

When using the default client dialog, when you choose not to always check, this should only apply for those items that weren't already set as default.
Attached patch Idea (obsolete) — Splinter Review
Neil, what do you think of this? My idea was to create something similar to the old Winhooks panel where you can select what apps it will check for and if the default client dialog will be displayed. I like this approach better than the idea you had with checking if SeaMonkey is the default application once the user clicks on the "Set As Default Browser/Mail/News client" in one of the pref panels (especially how to revert this decision?). I think this way it's also more obvious how to change what SeaMonkey will check for.
Attached patch PatchSplinter Review
Ok, after talking to Neil about this, I think we do not want a new pref panel for this. Instead we'll probably modify the default client dialog in Bug 441050 to match this patch, the dialog will modify the new pref on what app types to check if SeaMonkey is the default for. When the user deselects "Browser" for example, then SeaMonkey will save this and only check if MailNews is the default app in the future. The "Set Default ..." buttons will then also be modified to bring up the dialog in case the user has changed his mind (at least this is the idea). This patch here implements the basic code needed for Bug 441050.
Assignee: jag → bugzilla
Attachment #331779 - Attachment is obsolete: true
Attachment #333624 - Flags: review?(neil)
Comment on attachment 333624 [details] [diff] [review]

>+  PRInt32 result;
>+  rv = prefs->GetIntPref("shell.shouldBefaultClientFor", &result);
>+  *aApps = result;
>+  return rv;
Maybe we should change the flag type from unsigned short to long ;-)
Attachment #333624 - Flags: review?(neil) → review+

pushing to ssh://
searching for changes
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 1 changesets with 3 changes to 3 files
Closed: 11 years ago
Resolution: --- → FIXED
(In reply to comment #3)
> (From update of attachment 333624 [details] [diff] [review])
> >+  PRInt32 result;
> >+  rv = prefs->GetIntPref("shell.shouldBefaultClientFor", &result);
Umm, this doesn't look right to me... ;-)
Heh, this is what you get for changing the pref name right before uploading the patch. Fixed.
Component: UI Design → OS Integration
QA Contact: os-integration
You need to log in before you can comment on or make changes to this bug.