Adium

Opened 11 years ago

Closed 11 years ago

Last modified 10 years ago

#11951 closed enhancement (fixed)

Give collapsed groups a tooltip

Reported by: cbarrett Owned by: cbarrett
Milestone: Adium 1.4 Component: Adium UI
Version: 1.4hg Severity: normal
Keywords: Cc:
Patch Status: Accepted

Description

I think collapsed groups should have a tooltip. Here's a first pass patch and a screenshot.

Attachments (2)

closed-groups-preview.png (29.0 KB) - added by cbarrett 11 years ago.
An example of what this would look like
closed-group-tooltips (3.9 KB) - added by cbarrett 11 years ago.

Download all attachments as: .zip

Change History (15)

Changed 11 years ago by cbarrett

An example of what this would look like

Changed 11 years ago by cbarrett

comment:1 Changed 11 years ago by cbarrett

  • Type changed from defect to enhancement

comment:2 Changed 11 years ago by cbarrett

  • Owner changed from nobody to cbarrett
  • Patch Status changed from Initially Included to Needs Dev Review
  • Status changed from new to assigned

Yeah, so looking for feedback. That'd be rad.

comment:3 Changed 11 years ago by cbarrett

  • Milestone set to Adium 1.4

comment:4 Changed 11 years ago by cbarrett

  • Version set to 1.4hg

comment:5 Changed 11 years ago by zacw

Seems good. Yes, renaming it to "contactcontainer" status, or so would probably be a good idea. I don't like group tooltips, but since this is only on closed groups I can understand the usefulness.

comment:6 follow-up: Changed 11 years ago by evands

I like this, and the patch reads well. I think that ESMetaContactContentsPlugin should be renamed (rather than duplicating much of its code into a GroupContactContentsPlugin). How about "AdiumListObjectContentsTooltipProvider"?

comment:7 follow-up: Changed 11 years ago by evands

Two comments:

  • Why contact.formattedUID for metacontacts rather than contact.displayName?
  • Do you think we should put a limit on max number shown in the tooltip? Perhaps if there are more than, say, 40 contacts, we should have an item "and X more" at the end rather than letting the tooltip go off the screen?

comment:8 in reply to: ↑ 7 Changed 11 years ago by cbarrett

Replying to evands:

Two comments:

  • Why contact.formattedUID for metacontacts rather than contact.displayName?

That's what was there before. I think it makes sense. For example, a metacontact for me it would show:

dogcow@…
mactigerz
notabigtruck

  • Do you think we should put a limit on max number shown in the tooltip? Perhaps if there are more than, say, 40 contacts, we should have an item "and X more" at the end rather than letting the tooltip go off the screen?

Great idea. This was kind of annoying when you hit cmd-shift-H (going hunting for a contact).

comment:9 in reply to: ↑ 6 Changed 11 years ago by cbarrett

Replying to evands:

I like this, and the patch reads well. I think that ESMetaContactContentsPlugin should be renamed (rather than duplicating much of its code into a GroupContactContentsPlugin). How about "AdiumListObjectContentsTooltipProvider"?

Are we using the Adium prefix now? What classes get that prefix, for future reference? Otherwise the name sounds fine to me.

I implemented your suggestion of limiting the number of contacts displayed, but instead of 40 I used 20; 40 was a bit much. I tried 25 and 30 also. Only thing that's left is renaming the class.

comment:10 follow-up: Changed 11 years ago by evands

I don't think it's been established as canon, but my thought on prefixes has been that helper and logic classes (e.g. a tooltip component or a filter) generally should get an 'Adium' prefix and model objects should get the 'AI' prefix (e.g. AIListObject).

That said and thinking about it as I type it, though, I'm failing to remember why a tradition of not just always using AI in every case was begun. :)

comment:11 in reply to: ↑ 10 Changed 11 years ago by cbarrett

Replying to evands:

I don't think it's been established as canon, but my thought on prefixes has been that helper and logic classes (e.g. a tooltip component or a filter) generally should get an 'Adium' prefix and model objects should get the 'AI' prefix (e.g. AIListObject).

That said and thinking about it as I type it, though, I'm failing to remember why a tradition of not just always using AI in every case was begun. :)

Guessing at (for example) AdiumSounds.m, maybe it was to indicate a private to a controlller file that wasn't public API? As for why we didn't use AI from the start, umm, vanity? :)

I'll rename the class with AI to match the surrounding ones and commit.

comment:12 Changed 11 years ago by Colin Barrett

  • Resolution set to fixed
  • Status changed from assigned to closed

(In 1679180a5b2d) Add tooltips for closed groups. Fixes #11951

comment:13 Changed 10 years ago by Robby

  • Patch Status changed from Needs Dev Review to Accepted
Note: See TracTickets for help on using tickets.