Version: 1.3.1 (using KDE 4.5.1)
It would be nice if highlights could be restricted to individual channels. Hor example, besides my nick, I'd like my first name to be a highlight on one channel, but not on others, because that would trigger too often.
Reproducible: Didn't try
Steps to Reproduce:
Created attachment 57777 [details]
Implement this feature
I have created a patch to implement this feature.
The patch was created against a repository cloned today. I used "git format-patch origin" as specified in this tutorial: http://techbase.kde.org/Development/Tutorials/Git/Create_a_patch. I hope this is the right way to proceed, I'm doing this for the first time.
thanks, it's rare for someone to follow up a feature request with a patch of their own :).
I have to say that long-term we're shooting for a more ambitious GUI to handle a variety of per-channel settings, but until such a time that we actually tackle it this seems like a worthwhile addition.
I do wonder about labeling the input field "Channels:" though since the use of ChatWindow::getName() will technically also make it work with query and other kinds of chat tabs. At the same time labeling it "Views:" or similar might be too abstract for it to actually see usage, so unless you can think of a better term, I guess we can go with "Channels:" for now.
Two small requests for a refreshed version of the patch, though:
- Please add a What's This string to the input field that explains that multiple items can be separated by commas. It could also mention that other view names are fair game as well in addition to channels, unless that's already addressed by a better label (see above).
- Please change the commit message to put the reference to the bug report on its own line in the format "BUG:<number>" - that will make he repo hooks automatically forward the commit to Bugzilla and close the ticket when we push it.
(In case you're starting out with git: You can use "git rebase --interactive HEAD^" to put your checkout into a state where you can modify the last commit, then after changing the files run "git commit -a --amend" to pick up the changes and modify the commit message, and then "git rebase --continue" to finish the rebase operation, and then you can use format-patch again).
there is no need to start a rebase to be able to amend the last commit ...
True, --amend is enough for just the last one - I'm in the habit of using rebase since there's often more than one commit to edit/reorder/squash :-).
For the record, I'm talking with Stefan on IRC right now and we're addressing a couple more issues with regard to coping with more free-form input (spaces after the separator, etc.), UI strings and taking the opportunity to clean up the coding style around those parts of the code.
Created attachment 57787 [details]
Updated the patch
I have updated the patch with the changes proposed above, and some more modifications as discussed with Eike on IRC. On his suggestion, I have also reworked the various highlighting source files and the IRCView::filter procedure to conform to current coding standards and to be, in general, more clearly arranged.
Created attachment 57788 [details]
Some more small fixes as discussed with Eike on IRC.
Git commit 7a422edd5fed8044143e02f0ce0f22e74d51a9c6 by Eike Hein. on behalf of Stefan Radermacher
Committed on 08/03/2011 at 19:52.
Pushed by hein into branch 'master'.
Implement support for channel specific highlights
M +3 -2 src/application.cpp
M +234 -214 src/config/highlight_config.cpp
M +4 -3 src/config/highlight_config.h
M +42 -0 src/config/highlight_configui.ui
M +4 -6 src/config/preferences.cpp
M +2 -1 src/config/preferences.h
M +84 -21 src/viewer/highlight.cpp
M +21 -14 src/viewer/highlight.h
M +69 -21 src/viewer/highlightviewitem.cpp
M +24 -15 src/viewer/highlightviewitem.h
M +48 -37 src/viewer/ircview.cpp