Closed Bug 954067 Opened 9 years ago Closed 4 years ago

Filtering buddy list


(Instantbird :: Contacts window, enhancement)

Not set


(Not tracked)



(Reporter: clokep, Unassigned)




(2 files)

*** Original post on bio 631 at 2010-12-15 17:00:00 UTC ***

+++ This bug was initially created as a clone of Bug #954037 (bio 600) +++

Filtering the buddy list would be great for users with hundreds or thousands of buddies/contacts. Instead of having to scroll through the list looking for someone, you could open a search bar (or maybe it could be open all the time, like on the log viewer?) that allows to incrementally search/filter the participants list.
Duplicate of this bug: 954106
*** Original post on bio 631 at 2011-01-31 00:53:24 UTC ***

From bug 954106 (bio 671):
> Since IB collates several messenger accounts, when "offline buddy" list is
> shown there can be a dauntingly long list of accounts.  Ideally, the search
> feature would automatically appear at the bottom of the UI whenever "offline
> buddies" are shown, and allow me to narrow down the list.  In my mind it looks
> something like this:
> Simple searchbox with a "clear" button, followed by radio buttons for each
> client account simply showing the icon for each one.
> Think about the Firefox addons search box, which has the dual "search" and
> "clear" buttons that swap back and forth.  The radio buttons would allow you to
> only see selected accounts.  For instance, if I know the person I'm looking for
> is on AIM, that makes it much easier to find them.  When the "offline buddy"
> list is disabled, it would be nice to have a key-stroke to enable this feature.
*** Original post on bio 631 as attmnt 2490 at 2013-06-17 04:31:00 UTC ***

This patch "works" but is pretty rough and more of a proof of concept. Just wanted to put this up here for some feedback.

What it does:
- Type into searchbar to filter contacts and conversations on hold
- Press Enter to start conversation with first visible item on the list
- Ensures newly added contacts/conversations are immediately filtered.

What it doesn't:
- Dynamically hide/show searchbar.
- Some bugs related to contacts going offline while typing, and get "stuck".
- Resetting the list to initial state when the searchbar is cleared doesn't work properly.
Attachment #8354257 - Flags: feedback?(benediktp)
Attachment #8354257 - Flags: feedback?(aleth)
*** Original post on bio 631 as attmnt 2491 at 2013-06-17 06:57:00 UTC ***

Did you know that you could also hide contacts using CSS selectors? You'd need to insert/change a CSS rule dynamically then but there are examples how to do that in e.g. the 'Topic Notification' or 'MathJax' add-ons.

Please note that CSS selectors are case-sensitive (you can e.g. lowercase the attribute value and do the same when creating the rule, so that's not that much of a problem).
*** Original post on bio 631 at 2013-06-17 10:10:23 UTC ***

Comment on attachment 8354257 [details] [diff] [review] (bio-attmnt 2490)
Initial proof of concept

Some feedback:
- I think you should use a single keypress listener and go through all the tags/conversations from a single function when that listener is executed.
- Messing with the behavior of the enter key doesn't seem great to me. Couldn't we just force the first visible contact to be selected, so that the up/down/enter keys just work as usual?
Comment on attachment 8354257 [details] [diff] [review]
Initial proof of concept

*** Original change on bio 631 attmnt 2490 at 2013-06-19 12:35:09 UTC ***

* Further to flo's comment, the two listboxes in the blist already have keypress handlers. Why don't you handle the keypress there, and/or put one on the buddyListMsg notificationbox? (You'll have to check for potential conflicts if you do the latter.) This should bring many benefits (including a lot less duplicated efforts like searchBar.value.toLowerCase()).

* The searchbar should only unhide on typing and/or if Ctrl-F has been pressed. Looking at how this is done for the FX quickfindbar might help (the one triggered by "/"). It would also be a nice feature to color the background of the findbar red if no items match, as is done in FX.

* What clears the searchbox? The escape key, and the searchbox losing focus?

* This may be useful for hiding/unhiding the findbar and possibly for a quick transition on hiding contacts when filtering (if that doesn't feel like slow UX)

* It's generally worth noting that accessing the DOM is sloooow compared to working with JS data structures. (This will really matter for the awesometab)
Attachment #8354257 - Flags: feedback?(aleth) → feedback+
Comment on attachment 8354257 [details] [diff] [review]
Initial proof of concept

Cancelling feedback request as discussed on IRC.
Attachment #8354257 - Flags: feedback?(benediktp)
On the behalf of Florian:
Closing bugs related to the Instantbird UI as WONTFIX, as the development of the standalone chat client Instantbird has stopped. Instantbird users are encouraged to migrate to Thunderbird. The user interface of instant messaging in Thunderbird will feel familiar, as the Thunderbird IM support started as a fork of Instantbird.
Closed: 4 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.