Adium

Opened 15 years ago

Closed 11 years ago

Last modified 10 years ago

#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 15 years ago by cbarrett

  • Milestone set to Waiting on Apple
  • Owner changed from anybody to nobody

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.

comment:2 Changed 15 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 14 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 14 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 14 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 14 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 14 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 14 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 14 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 14 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 14 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 14 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 14 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 14 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 14 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 14 years ago by tick

I think we should get some official documentation on this stance by Apple before implementing anything.

comment:17 Changed 14 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 14 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 14 years ago by evands

  • priority changed from normal to low
  • Severity changed from blocker to major

comment:20 Changed 14 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 14 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 14 years ago by durin42

  • Severity changed from major to blocker

comment:23 Changed 14 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 14 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 14 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 13 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 13 years ago by tick

  • Milestone changed from Adium X 1.1 to Adium X 1.2

comment:28 Changed 13 years ago by tick

  • Milestone changed from Adium X 1.2 to Sometime after 1.0

comment:29 Changed 12 years ago by cbarrett

  • Owner changed from cbarrett to nobody
  • Patch Status set to None
  • pending set to 0

comment:30 Changed 12 years ago by djmori

comment:31 Changed 11 years ago by zacw

  • Milestone changed from Good idea for "later" to Adium X 1.4

comment:32 Changed 11 years ago by Robby

  • Milestone changed from Adium 1.4 to Good idea for "later"

comment:33 Changed 11 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 11 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 11 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 11 years ago by zacw

(In [26706]) *sigh* gtalk is not yahoo. Refs #158.

comment:37 Changed 11 years ago by zacw

(In [26707]) Changelogging. Refs #158.

comment:38 Changed 11 years ago by zacw

  • Component changed from Core Adium to Adium Core

comment:39 Changed 10 years ago by Robby

Ticket #8115 has been marked as a duplicate of this ticket.

Note: See TracTickets for help on using tickets.