#158 closed task (fixed)
Default IM client preference
| Reported by: | anonymous | Owned by: | zacw |
|---|---|---|---|
| Milestone: | Adium 1.4 | Component: | Adium Core |
| Version: | Severity: | minor | |
| Keywords: | Cc: | ||
| Patch Status: |
Description (last modified by cbarrett)
There should be a setting allowing the user to change their default application for AIM and other IM-specific URLs. Similar to the menu in Safari.
Change History (39)
comment:1 Changed 10 years ago by cbarrett
- Milestone set to Waiting on Apple
- Owner changed from anybody to nobody
comment:2 Changed 9 years ago by tick
- Cc timber@… added
- Owner changed from nobody to cbarrett
So make a radar at http://bugreporter.apple.com
Put the url to this trac ticket into that radar, and put the radar in here as rdar://RADARNUMBER once you have filed it.
comment:3 Changed 9 years ago by me@…
Apple's current position on URL handling is that each app is responsible for setting itself as the default handler for URL handling. This is usually done by providing a popup menu of possible matches.
Adium should provide a popup menu of all possible handlers of the aim URL type in its preferences. This may change in future revisions of Mac OS X.
comment:4 Changed 9 years ago by cbarrett
Can you provide me with a link to where Apple says this? I've never heard this before.
comment:5 Changed 9 years ago by me@…
I'm sorry, at this time I can only refer to a spoken comment made by Apple in the User Experience feedback session at WWDC 2005.
It basically came down to the current metaphor being that each app should have the ability to set itself as the default handler. In Safari, they decided to provide a popup menu since at the time no other browser had such an ability, instead referring to System Preferences. As such, Apple currently recommends each client have the ability to set itself as the default handler of a URL type, and it would be best to provide a popup menu to cover functionality missing in third party URL type handlers.
comment:6 Changed 9 years ago by cbarrett
It's rather unfortunate that Apple does not follow these guidelines itself. In iChat there appears no way to change this. Bad Apple! Adium registers itself to handle a lot of URL types. A whole bunch of popup menus would make for a lot of clutter. I'll try and brainstorm some UI ideas, but I'm really dubious about this whole thing. I t would make me feel a lot better about this if Apple implemented similar functionality, or at least provided us with some documentation on this, rather than expecting us to visit WWDC (which, as hobbyists, is prohibitively expensive).
comment:7 Changed 9 years ago by Machina
I was at the same session and yes, this is how Apple wants us to handle URL/Document types when multiple applications are available. I just checked and currently Adium only registers itself as available for two URL types: aim:// and adiumxtra://
Providing a dropdown in general prefs that asks the user to select their primary instant messenger is all that's necessary to accomodate this functionality as Apple has stated. This way if you did support the url handlers for yahoo/msn/etc you would select whether or not your the default from one place. If it's absolutely necessary you could add the rest or individual selectors to advanced prefs.
comment:8 Changed 9 years ago by cbarrett
- Milestone changed from Waiting on Apple to Adium X 1.0
- Severity changed from normal to blocker
- Status changed from new to assigned
I'm going to investigate doing this in the near future; I think it needs to get done before 1.0.
comment:9 Changed 9 years ago by cbarrett
- Status changed from assigned to new
What I'm currently thinking is something like this for a UI:
Default IM App: [ Adium X 1.0 v ] ( Configure... )
The Configure button would bring down a sheet where you could configure each service individually.
comment:10 Changed 9 years ago by cbarrett
- Description modified (diff)
- field_haspatch set to 0
- Summary changed from Adium X always registers itself for AIM URLs to Default IM client preference
- Type changed from enhancement to task
comment:11 Changed 9 years ago by evands
- priority changed from normal to low
- Severity changed from blocker to minor
Machina's claim, if true, is indicative of a bug, not an intentional feature -- we should be registering on launch for all of the URIs we support.
This is not a blocker.
comment:12 Changed 9 years ago by cbarrett
- priority changed from low to normal
- Severity changed from minor to blocker
This ticket is for implementing a way for users to change the default IM client preference from within Adium. We already register for everything. Machina's claim was fairly old, we now register for all the correct URL types.
This *is* a blocker, because currently there is no way for people to use something other than Adium as their IM client. This ticket is for implementing something like the "Default Browser" pref in Safari.
comment:13 Changed 9 years ago by cbarrett
- Cc timber@… removed
I don't need to be cc'd anymore, I'm already getting updates as the owner of the ticket.
comment:14 Changed 9 years ago by evands
Fair enough, and sorry for the duplicate cc -- I had forgotten that our upgraded trac properly respsects owner-associated emails for notification.
comment:15 Changed 9 years ago by cbarrett
Nah, it was tick that set it, back before we upgraded. Also, it was only delivering the emails once, so no harm done :)
comment:16 Changed 9 years ago by tick
I think we should get some official documentation on this stance by Apple before implementing anything.
comment:17 Changed 9 years ago by tick
- Milestone changed from Adium X 1.0 to Adium X 1.1
So I see two ways of doing this. I've talked to David, and we've decided to move this to 1.1.
- Option 1: One drop down menu in general. Wait to see if anyone has negative feedback, and if so add a advanced pref for each protocol for 1.2.
- Option 2: A set protocols button in general, which brings down a sheet. The sheet would list each protocol we have an account setup for.
Moving to 1.1
comment:18 Changed 9 years ago by tick
- Milestone changed from Adium X 1.1 to Adium X 1.0
Do the drop down for 1.0. If we get complaints about specific protocols after 1.0, reopen for 1.x
comment:19 Changed 9 years ago by evands
- priority changed from normal to low
- Severity changed from blocker to major
comment:20 Changed 9 years ago by Julian Bennett Holmes <julian@…>
Yeah, a [ Configure...] button next to the drop down menu definetly is way to vague. It would be the kind of button that you don't know what it does until you've clicked on it, which isn't great UI design.
comment:21 Changed 9 years ago by cbarrett
bgannin, you'd mentioned you had something on this? I also have something. Do you want it or can I take it?
comment:22 Changed 9 years ago by durin42
- Severity changed from major to blocker
comment:23 Changed 9 years ago by catfish_man
- Milestone changed from Adium X 1.0 to Adium X 1.1
- Severity changed from blocker to major
I don't see this as a blocker for 1.0. We rarely get requests for it, and we're trying to get b1 out the door.
comment:24 Changed 8 years ago by catfish_man
- Milestone changed from Adium X 1.1 to Adium X 1.0 Beta
- priority changed from low to highest
- Severity changed from major to blocker
Nevermind that, looks like we don't get a choice. Yahoo wants us to stop stealing protocol handlers.
comment:25 Changed 8 years ago by gbooker
(In [15999]) Two things:
More updates to the Question Asking interface; it should be useful now.
Change the URL Handling to prompt the user if they wish to assign the URLs ta Adium or not. The user selects yes, no, or never ask again. It is still all or nothing, but a step in the right direction.
Refs #158
comment:26 Changed 8 years ago by evands
- Milestone changed from Adium X 1.0 Beta to Adium X 1.1
- priority changed from highest to normal
- Severity changed from blocker to minor
With gbooker's change, we no longer force grabbing of the handlers. This is therefore now a potential enhancement to the control rather than a blocker for 1.0.
comment:27 Changed 8 years ago by tick
- Milestone changed from Adium X 1.1 to Adium X 1.2
comment:28 Changed 8 years ago by tick
- Milestone changed from Adium X 1.2 to Sometime after 1.0
comment:29 Changed 7 years ago by cbarrett
- Owner changed from cbarrett to nobody
- Patch Status set to None
- pending set to 0
comment:30 Changed 6 years ago by djmori
comment:31 Changed 6 years ago by zacw
- Milestone changed from Good idea for "later" to Adium X 1.4
comment:32 Changed 6 years ago by Robby
- Milestone changed from Adium 1.4 to Good idea for "later"
comment:33 Changed 6 years ago by zacw
- Milestone changed from Good idea for "later" to Adium 1.4
- Owner changed from nobody to zacw
- Status changed from new to assigned
comment:34 Changed 6 years ago by zacw
- Resolution set to fixed
- Status changed from assigned to closed
(In [26704]) Change AdiumURLHandling into an AIPlugin subclass, which allows us to create an advanced preference pane to control its actions. Adds a few useful features:
- The advanced preference pane lets the user pick on a service-by-service level the default application.
- Added an option to enforce Adium being the default for all of its services.
- Adds a button to set Adium to the default for all of our services.
This changes the way AIAdium calls the URL handler, to a notification (from a direct class method) which also allows the WKMV to post the notification when a URL belonging to us is clicked. With this change, running multiple copies of Adium is much easier. :)
The old "first run URL registration" preference is still respected, so we should only register ourself on the initial pass. We don't bother the user afterwards, they can come back and set us how they want later on.
The reason this is not in General preferences is because no single service or application can be listed. Does iChat support all of our IM services? What does setting it to the default application do for schemes it doesn't support? It's too hard of a concept to display, without a "Default IM: (Configure)" which is tacky, and this basically is the same thing anyway, just stuffed into a more clear area.
Fixes #158.
comment:35 Changed 6 years ago by zacw
(In [26705]) Pull GTalk and Yahoo! out of the AIM if(), and flag "gtalk" as a related scheme to Jabber. Refs #158.
comment:36 Changed 6 years ago by zacw
(In [26706]) *sigh* gtalk is not yahoo. Refs #158.
comment:37 Changed 6 years ago by zacw
(In [26707]) Changelogging. Refs #158.
comment:38 Changed 6 years ago by zacw
- Component changed from Core Adium to Adium Core
comment:39 Changed 5 years ago by Robby
Ticket #8115 has been marked as a duplicate of this ticket.


This is a problem not with Adium but iChat, which doesn't re-register itself for AIM urls. You can manually change it with More Internet prefpane.