Every release needs a blurb. Konversation 1.2 now has one.
[konversation:konversation.git] / ChangeLog
1 Changes from 1.2-rc1 to 1.2:
2 Konversation 1.2 is the first release of Konversation for the KDE 4 app-
3 lication platform and desktop environment. In addition to preserving the
4 full functionality of the KDE 3 version, this release offers a signifi-
5 cant amount of new features and improvements to the user interface, per-
6 formance, memory usage, energy efficiency, correctness and stability.
7 Sum total, the changelog of all development releases since Konversation
8 1.1 and of this final release combined once again make for the longest
9 changelog in Konversation's release history.
10
11 Some of the highlights compared to Konversation 1.1 include support for
12 SOCKS v5 and HTTP proxies, a redesigned DCC file transfer user interface
13 (and much improved DCC code under the hood with several new features,
14 such as support for IPv6 and DCC REJECT), support for UPnP for NAT tra-
15 versal, rewritten and much improved support for Blowfish encryption (now
16 supporting DH1080 key exchange, for example), a significantly better per-
17 forming channel list, a rewrite of the channel nickname lists for better
18 performance and improved battery-friendlyness, a new channel join invita-
19 tion user interface, an improved auto-replace feature, expanded media
20 player support and many improvements to the IRC protocol implementation.
21
22 Enjoy!
23
24
25 * When dragging a link from the chat text view, the drag object will now
26   contain a plain text version in addition to the URL version. This allows
27   dragging a link to places that don't accept URL drops, such as Konsole,
28   the Konqueror address bar or Konversation's own input line.
29
30
31 Changes from 1.2-beta1 to 1.2-rc1:
32 After a pleasantly uneventful two weeks with beta1, this release candida-
33 te for our first KDE 4 stable release brings a handful of bugfixes that,
34 while definitely worth having, are fortunately none too scary. We thus ex-
35 pect the final Konversation 1.2 release to follow in the very near future.
36
37
38 * Fixed the scrollbar thumb not remaining at the bottom when the chat text
39   view is resized (such as when the window is resized or the input bar in-
40   creases in height after typing more than one line with auto-expand mode
41   enabled).
42 * Fixed a bug that could cause the progress bar for DCC file transfers not
43   to be updated when "Fast DCC send" was enabled.
44 * Fixed a bug that could cause a crash when resuming an incoming DCC file
45   transfer.
46 * Fixed characters that require the Alt Gr modifier to be typed (such as
47   the '@' symbol in German keyboard layouts, for example) not causing key-
48   board focus to move to the input line when typed while the chat text view
49   has keyboard focus and thus not showing up in the input line.
50 * Fixed a bug causing both the link and the marker or remember line to be
51   selected when a line is appended directly after a link that has just been
52   clicked.
53 * Fixed a bug causing the automatic scroll-down not to work when more back-
54   log is replayed than the viewport can show at once at channel join.
55 * The "Advanced Modes" listing in the "Modes" tab of the Channel Settings
56   dialog will now properly vertically expand as the dialog is resized even
57   to a very large height.
58 * Fixed a bug that could cause a crash while manipulating a channel's ban
59   list.
60 * Fixed a bug causing the moving of child tabs of a network tab in the
61   treelist version of the tab bar not to work using the keyboard shortcuts,
62   context menu actions or "Window" menu actions.
63
64
65 Changes from 1.2-alpha6 to 1.2-beta1:
66 Konversation 1.2-beta1 marks the departure from active feature development
67 for Konversation 1.2 and the entrance into the much-vaunted halls of bug-
68 fixing-until-the-final-release, which we expect to materialize in early
69 October. Until then, you can enjoy what this beta has to offer: HTTP and
70 SOCKS v5 proxy support, further redesign of the DCC Status tab (many of
71 you will be happy to find the minimum window size with the DCC Status tab
72 open much reduced now), the long-awaited return of marker and remember
73 lines and the resurrection of link dragging from the text display widget
74 are of particular note, but the changelog has the details on a variety of
75 other additions, plus the usual assortment of bugfixes, as well.
76
77
78 * Added a topic widget for Konsole windows and hooked it up to the KPart's
79   setWindowCaption signal
80 * Added tooltips to items in the new DCC transfer lists that describe the
81   transfer's status more verbosely.
82 * Fixed the OSD stealing focus when it appears on Windows.
83 * Running DCC file transfers are now properly aborted on application quit.
84 * Removed the 'ucs2' encoding from the encoding list, as it is is not sup-
85   ported on IRC. This also resolves a crash when sending messages after
86   selecting it (however the crashing codepath has been independently made
87   more robust as well).
88 * Fixed a crash when sending a message containing only spaces.
89 * Added a "Manage Profiles" button to the information area above the ter-
90   minal area in Konsole tabs.
91 * Added SOCKS v5 and HTTP proxy support. Proxy credentials are stored in
92   KWallet.
93 * Moved the buttons in the DCC Status tab to a toolbar, similar to how
94   things were already laid out in log viewer tabs.
95 * Redesigned the DCC transfer info panel in the DCC Status tab to have a
96   smaller minimum size. This should mean that less people will see their
97   window size increase when a DCC transfer is initiated, as it reduces
98   the minimum size of the window with the DCC Status tab open.
99 * Added a "Clear Completed" item to the DCC Status tab's toolbar.
100 * Fixed a crash on the processing of illegal lines sent by the server that
101   contain only spaces (as sent by the buggy lidegw lide.cz gateway script).
102 * Made DCC transfer speed reporting more reliable.
103 * Fixed sorting the transfer list in the DCC Status tab by its "Started At"
104   column. Previously, sorting by that column would sort alphabetically by
105   the string value of the fields rather than properly by date.
106 * Fixed the Channel Settings no longer disabling interface elements allow-
107   ing the manipulation of channel properties when the user lacks the ne-
108   cessary operator privileges in the channel.
109 * The position of the splitter handle determining the size of the info pa-
110   nel in the DCC Status tab is now saved across application restarts.
111 * Fixed a crash when changing settings after the "Insert Character" dialog
112   had been used.
113 * When an attempt to set up a port forward via UPnP fails, an error message
114   stating as much will now be shown in the currently active or last active
115   tab for the associated IRC server connection.
116 * Made the '/amsg' command work properly again.
117 * Fixed two close icons (one on the left, one on the right) being shown on
118   tabs when close buttons were enabled and the tabs were in top or bottom
119   position.
120 * Fixed incorrect colors in the listview version of the tab bar when ini-
121   tially switching to it within a session.
122 * Fixed a regression vs. the KDE 3 version that caused a failure to correct-
123   ly parse shortened IPv6 addresses except when using RFC 2732-style bracket
124   notation and explicitly stating a port to connect to.
125 * Made the display of server address and port number in various connection-
126   related chat view messages more consistent and IPv6-friendly (with the
127   '<ip>:<port>' forward previously used, it could be hard to tell where the
128   IP ended and the port began -- now it's '<ip> (port <port>)').
129 * Updated the scripting documentation to talk about D-Bus rather than DCOP.
130 * The initial width of the nickname lists in channel tabs is now more sen-
131   sible.
132 * Added back the ability to drag links out of the chat view.
133 * Resurrected the RTL text support in the chat view.
134 * Fixed a crash during UPnP discovery when the router doesn't respond in
135   the expected way.
136 * Various actions that operate on the active tab (e.g. those found in the
137   "Insert" menu) are now properly disabled when the last tab is closed.
138 * Fixed a bug with Qt 4.5 where after closing a tab a tab adjacent to it
139   would briefly be activated before subsequently activating the tab that
140   was active before the just closed one (i.e. only noticable when 'a tab
141   adjacent to the just closed tab' and 'the previously active tab' are not
142   the same).
143 * Marker lines and the remember line are back.
144 * Fixed a bug that could cause queue flushing rates to be entered into the
145   configuration that would prevent successfully connecting to Freenode and
146   potentially other IRC networks.
147
148
149 Changes from 1.2-alpha5 to 1.2-alpha6:
150 Konversation 1.2-alpha6 is primarily a hotfix release addressing a serious
151 DCC crash that we unfortunately only discovered after releasing alpha5. To
152 sweeten the offer, however, it also includes a nicer DCC tranfer list that
153 separates incoming and outgoing transfers into distinct categories, allows
154 you to enable/disable individual columns and saves the sort column and di-
155 rection across application restarts. Furthermore, Konsole tabs may now be
156 renamed and there's also a fix for the handling of certain rare mode cha-
157 racters.
158
159
160 * The transfer list in the DCC Status tab now separates items into "Inco-
161   ming Transfers" and "Outgoing Transfers" categories, using the same ca-
162   tegory headers employed in System Settings and other places throughout
163   KDE 4.
164 * It's now possible to enable/disable the display of individual columns of
165   the transfer list in the DCC Status tab. This is remembered across app-
166   lication restarts.
167 * The sort column and direction of the transfer list in the DCC Status tab
168   is now remembered across application restarts when using Qt 4.5 or higher.
169 * A "Rename Tab..." action has been added to the context menu of Konsole
170   tabs.
171 * Fixed a crash when the client observes channel modes being modified that
172   carry a parameter when used as user modes.
173 * Fixed a crash when an incoming active or outgoing passive DCC file trans-
174   fer either timed out or was manually aborted while in "Connecting" state."
175
176
177 Changes from 1.2-alpha4 to 1.2-alpha5:
178 Konversation 1.2-alpha5 features significant performance and memory usage
179 improvements in several areas of the application, such as channel nickname
180 lists, backlog loading, Channel List tabs and the URL Catcher - the latter
181 two have also seen a fair number of interface refinements, making them much
182 more enjoyable to use. The DCC subsystem has seen the addition of IPv6 sup-
183 port and a '/dcc get' command to accept an incoming file transfer from the
184 input line. Various smaller additions and improvements have been made as
185 well, including the usual share of bug fixes.
186
187
188 * Added back "Do not ask again" checkbox missing in the rewritten invita-
189   tion dialog that appeared in v1.2-alpha4. By implication, the dialog now
190   also observes the "Automatically join channel on invite" option from the
191   "Warning Dialogs" page in the configuration dialog again.
192 * Fixed problems reconnecting an SSL-enabled connection using a self-sign-
193   ed certificate.
194 * Fixed a build problem with KDE trunk (i.e. what will one day be KDE 4.4).
195 * Fixed loading and saving of the settings toggling the invitation and mul-
196   ti-line paste warning dialogs in the "Warning Dialogs" page of the con-
197   figuration dialog.
198 * Improved wording of the description of the invitation dialog setting in
199   the "Warning Dialogs" page of the configuration dialog to reflect that
200   the dialog being disabled doesn't imply that the channel the user was
201   invited to will be joined automatically, as the user might have rejec-
202   ted the invitation when he got the dialog along with checking "Don't
203   ask again".
204 * Decreased memory usage (the objects created for every IRC user encounter-
205   ed are lighter now).
206 * Initializing Phonon is now delayed until it is actually needed, resulting
207   in less memory usage for those not using highlight sound notifications
208   and less work being done during application startup.
209 * Fixed DCC file transfer problems with files larger than 4 GB on 32bit sys-
210   tems, along with some other correctness improvements to the file transfer
211   code.
212 * Backlog loading is now more efficient.
213 * Added IPv6 support for DCC file transfers.
214 * The fallback default file name for unnamed files received via DCC now con-
215   tains the date of when the file was received in ISO format.
216 * Fixed a crash when trying to perform a tab completion with an empty nick-
217   list (i.e. shortly after joining a big channel, before its nicklist has
218   been filled in).
219 * Channel nickname list updating is now more efficient and pleasant to look
220   at. Rather than resorting the entire list after the addition of a new nick-
221   name, the nickname is now inserted directly at the correct position (using
222   a binary search), avoiding a lot of CPU-intensive comparisons between nick-
223   names. The same optimization is also done for nickname and user status (as
224   relevant in case "Sort by status" is enabled) changes - rather than trigger-
225   ing full resorts, items are moved directly to new positions as necessary.
226   Resorting after both new additions and changes was previously done only
227   after a delay of one second (as part of a scheme to throttle the update rate
228   to a maximum of once per second given how CPU-intensive it was), which meant
229   that new nicknames would initially appear at the end of the list and move to
230   the correct position only after one second, and that nickname and status
231   changes were similarly reflected in the sorting only after one second - this
232   delay has now been eliminated, making the nickname list much snappier in re-
233   acting to what's going on.
234   Note however that when more than ten events requiring an update to sorting
235   occur within one second, a fallback to the old scheme of doing a full resort
236   at a maximum rate of once per second, after an initial delay of one second,
237   occurs, as this is believed to be more efficient in situations of very high
238   activity (such as merges after netsplits). Thus the new scheme described
239   above should be seen as an additional optimization for the common case.
240 * In addition to the broad strokes optimization described above, other minor
241   optimization work has been done on the nickname list updating code, impro-
242   ving the efficiency of updates further.
243 * Fixed topic label text color not reacting to system color scheme changes.
244 * Added a '/dcc get [nick [file]]' command to accept an incoming DCC file
245   transfer request.
246 * Fixed a crash when using the 'Insert -> IRC Color...' menu item without
247   there being any tabs.
248 * Nickname changes of the discussion partner are now announced in query tabs,
249   provided the information is available (i.e. when one shares a channel with
250   the discussion parther, so the server informs Konversation of the nickname
251   change).
252 * Fixed building on OpenSolaris.
253 * The channel item context menu in Channel List tabs now has a "Join Channel"
254   action, and the list of URLs extracted from the channel topic has been mo-
255   ved to a sub-menu.
256 * Increased use of the IRC icons found in recent versions of the Oxygen icon
257   set.
258 * Fixed a bug causing the time a user went online not to be displayed in
259   WHOIS information (provided the server reports it).
260 * Fixed close button icons not immediately appearing on newly-added tabs when
261   enabled (a preferences change would cause them to appear).
262 * A significant revamp of the Channel List code, especially around the way the
263   list data received from the server is being moved into the UI, has brought
264   about significantly improved behavior. The application should now no longer
265   be bogged down for extended periods of time while the list is being process-
266   ed - in extreme cases, this could even lead to disconnects by timeout.
267 * The "Apply Filter" button has been removed from the Channel List interface.
268   Instead, the filter is (re)applied automatically as its settings are chang-
269   ed, i.e. briefly after stopping to type into the "Filter pattern" field or
270   after changing one of the spin- or checkboxes.
271 * Fixed the display of human-readable mode descriptions in place of traditio-
272   nal mode characters (toggled by the "Show raw mode characters" preference
273   and only applicable when Konversation knows a description for a given mode
274   char) being inconsistent between '/mode <channel> and '/mode <channel>/<user>
275   +/-<mode>' - separate, unequal lists of mode descriptions were being used;
276   this has been unified now.
277 * Fixed the "Modes" tab of the Channel Settings dialog not using human-readable
278   mode descriptions in place of traditional mode characters when the "Show raw
279   mode characters" preference is disabled (as it is by default) and a descrip-
280   tion for a given mode char is available.
281 * Fixed the mode list shown by "Show Advanced Modes" in the "Modes" tab of the
282   Channel Settings dialog not showing all modes announced as supported by the
283   server.
284 * The Channel List, when hovering a list item with the mouse pointer, now shows
285   a tooltip with the entire topic of the channel when it doesn't fit the topic
286   column's width.
287 * Konversation will now display a warning dialog box when the user is trying
288   to send a character not supported by the chosen encoding.
289 * When a message containing characters not supported by the chosen encoding
290   is sent, the chat view will now display the '?' replacements for those cha-
291   racters that are sent to the IRC server and thus seen by other users. Pre-
292   viously, the chat view would display the version of the message before
293   this encoding step, and thus usually show the characters, as the Unicode
294   character set normally used by KDE/Qt is considerably broader than many
295   of the encodings that can be selected in Konversation. In other words, the
296   chat view now accurately portrays what is sent to other users when a mes-
297   sage contains characters not supported by the active encoding.
298 * The URL Catcher should now open considerably faster with long lists of
299   caught URLs and mail addresses.
300 * The list items in the URL Catcher now have the same context menu as links
301   in the chat view. Previously there was no context menu.
302 * Caught mails and mail addresses not coming from an IRC user (an example
303   would be links contained in a server's Message of the Day text) now have
304   their "From" field filled in with the tab name instead of it being left
305   blank in the URL Catcher.
306 * Fixed a bug causing the DCC Status tab to sometimes prematurely claim a
307   transfer status of 100%, as well as an unrealistic transfer speed, when
308   sending a file to another user. The transfer would go on until actually
309   finished; merely the information shown in the interface was defective.
310 * Fixed log viewer tabs not observing the chat window background image setting.
311 * Fixed log viewer tabs not reacting to changes to the chat window background
312   color or font settings.
313 * Fixed raw log tabs only applying the chat view background image setting on
314   configuration changes, not when initially being opened.
315 * The removal of the frame around the tab widget is now exclusive to KDE 4.3.
316   We do it by way of enabling document mode for the tab widget (which is new
317   in Qt 4.5), which renders badly in versions of the Oxygen style found in
318   KDE versions earlier than 4.3, and the workaround we previously applied to
319   make it work even with those older Oxygen versions had the unwelcome side-
320   effect of breaking the application of color preferences to the input bar
321   and nickname list.
322
323
324 Changes from 1.2-alpha3 to 1.2-alpha4:
325 Alpha 4 marks a significant milestone on the way to feature completeness
326 for the v1.2 release of Konversation. New features in this release inclu-
327 de UPnP NAT traversal support for DCC file transfers and chats, DH1080
328 key exchange support for Blowfish encryption and the ability to automati-
329 cally split very long actions (i.e. usage of the '/me' command) into mul-
330 tiple messages conforming to the maximum length of an IRC message (this
331 was already supported for regular messages for some time).
332
333 Many bugs have also been addressed, including an important fix for invita-
334 tion dialogs causing disconnects by timeout if they were not dealt with
335 quickly enough - and not only is the rewritten dialog non-blocking, it also
336 allows for handling multiple outstanding invitations in a single dialog,
337 rather than a new dialog being displayed for every additional invitation
338 received. Other fixes include further interface polish and robustness and
339 correctness improvements to Blowfish encryption, the Watched Nicks Online
340 system and the storage of per-tab encoding preferences in the configuration
341 file.
342
343 A closing note for packagers: In this release we have replaced our cus-
344 tom implementation of the Blowfish encryption algorithm with an optional
345 dependency on the Qt Cryptographic Architecture (QCA) library in version
346 2 or higher. By implication, Blowfish encryption support is now optional:
347 A QCA2-enabled build will have it; a build not using QCA2 will not.
348
349
350 * Changed links to KDE's (and hence our) bug tracker throughout the code-
351   base to use https://bugs.kde.org/ rather than http://bugs.kde.org/
352 * Fixed the "Show Menubar" item not getting removed from the chat view
353   context view after showing the menubar again. Also added a separator
354   after the item (only visible when it is present).
355 * Switched the timestamps in log files to use KDE's locale settings for
356   formatting the date and time, as the equivalent Qt API used previously
357   seems to look at the value of LC_NUMERIC to detemine the format in Qt
358   4, which doesn't meet user expectations.
359 * Fixed the "Date" column in the topic history of the Channel Options
360   Dialog not using KDE's locale settings to format the value.
361 * Fixed the "Date" column in the Channel Settings dialog's topic history
362   sorting alphabetically rather than by date.
363 * Improved Windows support in the bundled 'media' script.
364 * Fixed the vertical alignment of the topic label when using Qt 4.5 (it's
365   now top-aligned rather than vertically centered, i.e. making the topic
366   area bigger than the topic by dragging the splitter down won't cause
367   the topic to move down to stay in the vertical center anymore -- Qt 4.5
368   is needed because a method to retrieve the document margin from the chat
369   view to use as the top margin for the topic label is new in that version).
370 * Fixed various chat view messages containing date/time values (channel
371   created, topic set, online since, ban info) not using KDE's locale set-
372   tings for their display format.
373 * Added support for using UPnP for NAT traversal for DCC file transfers
374   (both active send and passive receive) and DCC chat. When UPnP is ena-
375   bled in both Konversation and your router, Konversation now knows how
376   to ask your router to set up the necessary port forward, and also how
377   to to ask it to remove it later.
378 * Added support for the KDE 4 version of JuK to the bundled 'media' script.
379 * Fixed '/msg <channel> <message>' not displaying the resulting message in
380   the target channel when the user is attending that channel.
381 * Made the appearance of the line informing about the message being sent
382   with '/msg <nick|channel> <message>' consistent between channel, query
383   and status tabs (it now looks like in the former in the latter two as
384   well).
385 * Fixed the visualization of '/msg <nick|channel> <message>' (i.e. the
386   '<-> target> message' line) being shown only after adding the resul-
387   ting message to the target chat view (if present), causing an odd-look-
388   ing order if the origin view and the target view are the same.
389 * Watched Nicknames Online now generally operates on networks by their
390   internal unique IDs rather than names, enabling it to handle multiple
391   configured networks with identical names properly.
392 * Konversation's custom implementation of Blowfish encryption has been
393   replaced with an optional dependency on the Qt Cryptographic Architec-
394   ture (QCA) library version 2.
395 * The '/setkey [nick|channel] <key>' command now recognizes 'cbc:' (ci-
396   pher-block chaining) and 'ecb:' (electronic codebook) prefixes in the
397   key field to set a particular Blowfish block cipher mode of operation,
398   defaulting to the value of a config dialog preference (Behavior -> Co-
399   nnection-> Encryption -> Default Encryption Type, the default is Elec-
400   tronic Codebook (ECB)) when no prefix is given.
401 * Fixed crash when opening links with ' in them when the "Custom Browser"
402   preference is enabled in Konversation's config dialog.
403 * Improved consistency of link opening behavior between the chat view, the
404   topic label and the URL catcher (all three now use the new-in-KDE-4 KTool-
405   Invocation API to invoke the KDE default browser, whereas the topic label
406   and the URL catcher were still using KRun until now).
407 * Fixed a bug that could cause the state of the spell-checking setting for
408   the input line to be lost across application restarts.
409 * Added support for considering square brackets ([]) part of URLs.
410 * Fixed the code producing multiple JOIN commands for auto-join as neces-
411   sary to stay under the 512 byte limit for a single command to take the
412   length of the commas in the commands into account when calculating the
413   distribution of the channels among the multiple lines, as well as not
414   to list channels falling at the boundary twice, once in the current and
415   once in the following line. In English: Fixed auto-join with a massive
416   amount of channels possibly not joining all channels correctly.
417 * Fixed a bug causing re-joining of password-protected channels to fail
418   on reconnects when those channels also had another mode with a parame-
419   ter set.
420 * Fixed a bug that caused query lines written by the user that are so long
421   that they need to be split up into multiple messages not to display in
422   the query text color.
423 * Fixed a bug causing query lines written by the user that are so long they
424   need to be split up into multiple messages for sending not to be displayed
425   in the configured query text color.
426 * Fixed the status bar showing HTML data when hovering the contents of the
427   info label area at the top of query tabs. The data was actually supposed
428   to be displayed as a tooltip (just like the nickname list item tooltips
429   in channel tabs), and is now.
430 * Fixed a bug causing the automatic away system to set the user away again
431   on the next periodic activity check when no further mouse/keyboard acti-
432   vity occurs after unlocking the screen/ending the screensaver.
433 * Implemented splitting up of overly long actions (i.e. usage of the the
434   '/me' command) into multiple messages to stay under the 512 byte message
435   length limit (in raw format) imposed by the IRC protocol. As with the
436   normal message splitting, this is aware of how multi-byte/variable-width
437   text encodings and sender hostmask length (which is part of the message on
438   the receiving end) factor into the matter. Note that only the first message
439   is actually sent as an action, the other messages are sent as normal messa-
440   ges - intentionally, as this seemed to make the most sense formatting-wise.
441 * Fixed the dialog box appearing upon receiving an invitation to join a chan-
442   nel causing a disconnect by timeout when not being dealt with by the user
443   swiftly enough.
444 * Multiple invitations to join channels are now being handled by a single
445   dialog box per connection, so that receiving many invitations in short
446   order no longer means getting flooded with dialog boxes.
447 * Implemented DH1080 key exchange support for Blowfish encryption. You can
448   use the '/keyx' command to initiate a key exchange.
449 * The raw log now shows encrypted incoming and outgoing messages in their
450   encrypted form. Previously, incoming messages were being decrypted before
451   being shown, and outgoing messages were being shown before encryption
452   took place, thus not capturing what was actually coming from or going to
453   the network socket as is the intent of the raw log.
454 * Fixed a bug causing unrecognized channel mode characters being shown as
455   their decimal value in the chat view messages announcing them having been
456   set or removed.
457 * Per-tab encoding settings for tabs belonging to a connection to a configu-
458   red network (i.e. one found in the Server List dialog) now reference the
459   unique ID rather than the name of the network in the config file, making
460   things work reliably across restarts even when there are multiple identi-
461   cally named networks. Encoding config file entries for tabs belonging to
462   connections to servers that are not part of a configured network continue
463   to reference the server hostnames.
464 * Fixed the "(away)" label in front of the input line, indicating away sta-
465   tus, not showing up in query tabs.
466
467
468 Changes from 1.2-alpha2 to 1.2-alpha3:
469 This third alpha fixes a fair amount of annoying bugs encountered in
470 day-to-day usage, as well as a serious bug in handling NAMES messages
471 from IRC servers. We've also made some UI changes that we'd like to
472 get your feedback on: We've changed the default tab completion mode
473 to "Cycle Nicklist", and we've removed the frame around the tab wid-
474 get when using the listview version of the tab bar.
475
476
477 * Worked around a Qt bug that has a text selection in the chat view that
478   includes the last line in the view grow to include the new text when
479   new text is appended to the view.
480 * Fixed Konversation exposing various signals on D-Bus that it shouldn't
481   have.
482 * Fixed a regression causing '/names #channel' to end up duplicating the
483   nickname list contents when already attending '#channel'.
484 * When using Qt 4.5, Konversation no longer paints a frame around the UI
485   elements of a view (e.g. a channel) when using the listview version of
486   the tab bar. Feedback on this change is appreciated!
487 * Fixed duplicated messages about DCC transfer failures in the chat view.
488 * When the menu bar is hidden, the top-most item in the chat view context
489   menu is now the option to unhide it again.
490 * Fixed the OSD disappearing also cancelling the system tray blinking no-
491   tification.
492 * Fixed a crash on quit by D-Bus / by KDE session logout.
493 * Fixed the tab completion nickname list sorting behavior for the "Shell-
494   like" completion modes. The behavior now matches the "Cycle Nicklist"
495   mode and the "Shell-like" modes of previous Konversation 1.x versions
496   again: The last active nick for the given prefix is at the top of the
497   list, with the rest of the list sorted alphabetically.
498 * The default tab completion mode has been changed to "Cycle Nicklist".
499   Feedback on this change is appreciated!
500 * Changed the bundled 'bug' script to perform a quick search with the
501   given parameter, rather than try to use it as a bug ID directly. The
502   resulting behavior is unchanged for a numerical parameter, but with
503   a string, much more useful.
504 * The 'mail' script, which was disabled in the build system up until now,
505   is now getting installed again.
506 * Fixed a bug causing the "Set Encoding" menu not to work.
507 * Fixed a bug causing the bundled 'media' script not to work when used
508   to retrieve song information from Amarok 2 for a song which has any
509   of the following meta data fields not set: title, artist or album.
510 * Fixed the 'Self' field of the DCC transfer details panel not showing
511   the port when available.
512 * Fixed DCC transfers showing an average speed of 1 TB/s in their first
513   second.
514
515
516 Changes from 1.2-alpha1 to 1.2-alpha2:
517 After just under a week's worth of adding back some missing functiona-
518 lity, polishing the interface and, of course, of fixing bugs, we've de-
519 cided to bring you Konversation 1.2-alpha2. While there were no major
520 defects discovered in alpha1, this one should yield an overall more re-
521 fined user experience, and brings us another good step closer to our
522 first stable release for KDE 4.
523
524
525 * Fixed nicknames in action messages using the message text color when
526   nick coloring is disabled rather than the correct action text color
527   as the rest of the message.
528 * Added back the context menus for nicknames and channel links in the
529   chat view.
530 * Fixed the topic/info area in channels, queries and DCC chats, the nick-
531   name list in channels and the listview variant of the tab bar not keep-
532   ing their sizes when the window is resized.
533 * Added missing actions ("Reconnect", "Disconnect", "Join channel ...")
534   back to the context menu for server status tabs.
535 * Improved the placement of the "Join on connect" channel tab context
536   menu item (back under "Enable Notifications" as in v1.1).
537 * Added the use of some of the new irc-* icons found in recent updates
538   to the Oxygen icon theme.
539 * Fixed crash when joining a channel after having been blocked from get-
540   ting the topic for the channel.
541 * Made the initial size of the "Edit Network" dialog more reasonable.
542 * Improved vertical size of and text alignment inside the input line.
543 * Added back support for drag and drop reordering of views to the list-
544   view version of the tab bar.
545 * Added back support for "surfing" in the listview version of the tab
546   bar by pressing and holding the left mouse button on a view and moving
547   the mouse up and down in the list view.
548 * Fixed mouse handling for close buttons in the listview version of the
549   tab bar.
550 * Added back support for showing tooltips for truncated view items in
551   the listview version of the tab bar.
552 * Fixed crash when receiving lines terminated by LFCRLF from buggy IRC
553   servers (such as the shroudBNC IRC proxy when it relays a private mes-
554   sage received while no user was connected to it).
555 * Worked around a Qt bug that has a text selection in the chat view that
556   includes the last character in the view grow to include the new text
557   when new text is appended to the view.
558 * Sound notifications for highlights now reuse a single Phonon MediaObject
559   by enqueuing notification sounds rather than instanciate a new one for
560   every notification, improving resource efficiency and hopefully taking
561   care of some high CPU usage reports that seemed to be linked to Konver-
562   sation's Phonon usage.
563 * Fixed the enabling/disabling of the "Find Previous" action.
564 * Fixed several bugs in the Server List dialog (sort indicator disappear-
565   ing while dragging items, stray pixel in the top-left corner of the list-
566   view, hover decoration while dragging not always showing).
567 * Improved handling in the Identity editor dialog: When Konversation com-
568   plains about one or more required fields not being filled in, the dialog
569   will now put focus on the field when it opens.
570 * Fixed the 'Self' IP field of the DCC transfer details panel not showing
571   a value when on the receiving end of a DCC file transfer.
572 * Handle DCC REJECTs. A DCC SEND is now automatically aborted when the
573   partner rejects it.
574 * Fixed a bug causing the ordering of views to be partially reversed when
575   switching from the listview version of the tab bar to the regular tab bar.
576 * Improved consistency of the context menu for links between the topic area
577   and the chat view.
578 * Fixed repeated searches for the same search pattern (i.e. "Find Next")
579   sometimes not working reliably with the chat view search bar.
580 * Minor code cleanups and performance improvements.
581
582
583 Changes from 1.1 to 1.2-alpha1:
584 We're happy to bring you this first public release of the KDE 4 version of
585 Konversation.
586
587 Despite the "alpha" moniker we've settled on for this one, mostly due to
588 not yet being feature-complete (see below), this port has already been
589 used productively by a fair number of people for some time and should be
590 stable enough for general usage. In fact, certain features, notably DCC
591 file transfers and auto-replace, are expected to be more robust than in
592 Konversation 1.1.
593
594 While this version largely achieves feature parity with Konversation 1.1
595 (and adds several new features on top), notable exceptions are the lack
596 of support for marker lines as well as nick and channel context menus in
597 the chat view. These are pending the merge of a rewritten chat view and
598 will make a return before the final Konversation 1.2 release. Other known
599 issues in this version include a lack of KDE 4 HIG compliance in the con-
600 figuration dialog and various minor interface polish problems; these will
601 be addressed as well.
602
603 Enjoy, and don't forget to report any bugs you encounter!
604
605
606 * Ported to KDE 4 (KDE 4.1 or higher is required).
607 * Enabled the (experimental, hackish) Amarok 2 support in the 'media' script.
608 * Fixed a bug that could cause channel notifications to be lost across recon-
609   nects.
610 * Removed the code to recreate hidden-to-tray state across application re-
611   starts. It was broken after the shutdown procedures were moved to a point
612   in time after after the main window is hidden to cover quit-by-DCOP, and
613   Konversation 1.1 features an explicit hidden startup option that fulfills
614   user demands more accurately anyhow. This fixes a bug that made Konversa-
615   tion always hide to tray on startup regardless of the aforementioned op-
616   tion when the system tray icon was enabled.
617 * Added a network settings lookup fallback to retrieving the key of a channel.
618   Previously, this relied solely on the channel's mode map. Closes the brief
619   gap between a channel join and the server's reply to MODE where possible,
620   so that e.g. reconnecting directly after auto-joining a channel with a key
621   doesn't result in a failed rejoin due to not having the key by way of the
622   MODE reply yet.
623 * Fixed opening URLs from the channel topic context menu in Channel List tabs.
624 * When connecting to multiple selected unexpanded network items from the Ser-
625   ver List, don't also try to connect to the hidden server sub-items selected
626   by implication, avoiding unwanted connection duplicates.
627 * Mask the password field in the Quick Connect dialog.
628 * Fixed a bug causing passive DCC file transfers to stall at 99%.
629 * Fixed "/leave" command in queries.
630 * Fixed auto-replace rules containing commas in the pattern not being loaded
631   correctly from the config file.
632 * Fixed non-regex mode auto-replace rules containing regex special characters
633   and character sequences not working correctly.
634 * Improved performance of non-regex mode auto-replace rules.
635 * Added option to open log files with the system text editor instead of the
636   built-in log viewer.
637 * Made the Oxygen nicklist icon theme the default nicklist icon theme.
638 * Removed the bundled 'weather' script (it relied on a KDE 3 service no lon-
639   ger present in KDE 4; a replacement will need to adopt a new approach).
640 * Fix sending and receiving of files with names containing spaces
641 * DCC Protocol adjustment to proper handle passive DCC resume/accept requests.
642   (this breaks passive-resume compatibly with <konversation-1.2)
643 * Send proper DCC reject commands when rejecting a queued receive.
644 * Improved error recovery during dcc send.
645 * Fix time left for transfers that finished in under 1 sec displaying infinite
646   time left.
647 * Increased default DCC buffer size to 16384 to reduce CPU load while sending
648   or receiving files.
649 * Added KNotify events for "Highlight triggered", "DCC transfer complete"
650   and "DCC transfer error".
651 * Fixed Automatic User Information Look Up not being started upon channel
652   join on some IRC servers (namely those that don't send RPL_CHANNELCREATED
653   after joining a channel, such at those used by IRCnet).
654 * Updated the server hostname for the pre-configured Freenode network to the
655   one given on their website these days, 'chat.freenode.net'.
656 * Added support for browsing the input line history by using the mouse wheel.
657 * Fixed problems the bundled 'tinyurl' script had with certain URLs by conver-
658   ting it to use the TinyURL API rather than screen scraping.
659 * Added initial support for the MODES parameter of RPL_ISUPPORT. When giving
660   or taking op, half-op or voice to/from multiple people at once, Konversa-
661   tion will now combine as many of them into a single MODE command as the
662   server advertises it supports (as long as it advertises an actual value;
663   the value-less unlimited MODES case is not supported yet as it requires
664   more work on limiting MODE commands to the 512 byte IRC message buffer
665   limit for extreme cases). If MODES is not given at all by the server, the
666   fallback is an RFC1459-compliant value of 3.
667 * Added support for formatting variable expansion in the replacement part of
668   auto-replace rules.
669 * Rewrote multi-line paste editor, improving handling and appearance.
670 * Added button to intelligently replace line breaks with spaces to the multi-
671   line paste editor.
672
673
674 Changes from 1.0.1 to 1.1:
675 We are extremely pleased to announce Konversation's newest major release, v1.1.
676 Konversation 1.1 is a special release for us in multiple ways: It's our farewell
677 to KDE 3, by way of being the last major release built upon that venerable
678 platform. It's also our biggest release yet, in terms of the number and
679 magnitude of the changes.
680
681 The additions and improvements in this release are both user-visible and under
682 the hood. Some of the highlights are rewritten connection handling (robustness
683 and correctness improvements, better support for IRC URLs, bookmarking and
684 more), redone DCC with better UI and Passive/Reverse DCC support, a redone away
685 system with the addition of auto-away support, redone and much more useful
686 remember / marker line support, a new outbound traffic scheduler that is capable
687 of aggressive throttling to avoid flooding while smartly reordering messages to
688 improve latencies, great convenience additions like a "Next Active Tab" shortcut,
689 and much, much more, along with a large number of bugfixes and tweaks to round
690 things out. Note: All fixes made since RC1 are marked with a "[New since RC1]"
691 label in the changelog.
692
693 We're confident that this release is the best and most robust version of
694 Konversation published so far, and upgrading comes highly recommended to all
695 users. Enjoy!
696
697
698 Text views
699 * Added an option to hide the scrollbar in chat windows.
700 * Don't scroll to bottom if the view was scrolled up before resizing.
701 * Fixed chat views occassionally not being scrolled to the bottom at their
702   inception with long backlog appends.
703 * Fixed an off-by-one error in scrollback culling.
704 * Fixed a bug that lead to single leading whitespace characters in lines being
705   omitted from display in chat windows.
706 * Now preserving trailing whitespace in raw log tabs.
707 * Fixed display of '<' and '>' in backlog lines.
708 * Fixed copy/paste with shortcuts other than the default Ctrl+C/V ones.
709 * Fixed onotice display.
710 * Fixed middle-click-to-open-in-new-tab on chat window URLs when Konqueror
711   wasn't running.
712 * Fixed superfluous closing parenthesis being inserted after links in lines
713   which contain multiple links followed by closing parenthesis.
714 * Fixed URLs with encoded hash mark %23 being incorrectly passed off to handler.
715 * Fixed variable expansion causing certain URLs to be corrupted when pasted.
716 * Added a "Save Link As" item to the context menu of links in the chat window.
717 * Have the "Save as..." dialog suggest a file name.
718 * Implemented Shift+Click to "Save as..." URLs..
719 * Made the channel links context menu work in server status views.
720 * Fixed nickname links in chat view messages created as a result of '/msg <nick>
721   <message>' commands erroneously prepending '->' to nicknames.
722 * Fixed operations on nicknames containing "\" characters from the nickname
723   context menu.
724 * Fixed query view context menus operating on the wrong nickname under certain
725   circumstances.
726 * Fixed a bug that caused the "Send File..." action in the generic query context
727   menu to pick the wrong recipient after hovering the user's own nick in the
728   chat display.
729 * Fixed date display not using the locale's date format.
730 * Fixed IRC color parsing so that the colors gets reset to default if no color
731   numbers were given.
732 * Fixed a bug that could cause the text selection in a chat window to be messed
733   up when new text was appended.
734
735 Marker/Remember Lines
736 * Konversation now distinguishes between manually and automatically inserted
737   marker lines, making the "show line in all chat windows" preference less
738   confusing.
739 * The automatically inserted remember lines when chat windows are hidden are now
740   "sliding", i.e. there is only one per chat window, and it moves.
741 * Automatically inserted remember lines will now optionally only be inserted
742   when there's actually new text being appended to the chat window (enabled by
743   default).
744 * The automatic remember line will now also be inserted when the window has lost
745   focus.
746 * Added an action to clear all marker lines in a chat window.
747 * Improved marker lines-related preferences and terminology.
748 * Improved the appearance of marker lines in the chat window.
749 * Made the (marker line-related and other) identity default settings consistent
750   between the initial identity and additional newly created identities.
751 * Fixed hidden join/part/quit events marking tabs as dirty, allowing multiple
752   consecutive remember lines to appear.
753 * Fixed crash when minimizing or closing the application window prior to any tab
754   switch when the auto-insertion of remember lines is enabled.
755
756 Input line
757 * Fixed input line contents rather than actual sent text being appended to the
758   input history upon a multi-line paste edit.
759 * Special characters and IRC color codes will now be inserted at the cursor
760   position rather than the end of the input line contents.
761
762 Nickname list
763 * Implemented an additional "Sort by activity" nicklist sorting mode.
764 * Added Oxygen nicklist icon theme by Nuno Pinheiro.
765 * The list of nickname list themes is now sorted alphabetically.
766 * Fixed race condition when removing a nicklist theme (listview would be
767   repopulated before deletion was complete).
768 * Fixed using the wrong palette for the disabled text color in the nickname
769   list.
770 * Fixed moving back from the custom alternate background color to system colors
771   in the channel nickname listviews when disabling the "Use custom colors for
772   lists, [...]" preference.
773 * Cleanups in the nicklist item code.
774
775 Tab bar / Tree list
776 * Added option to add and remove a channel from its network's auto-join list
777   from the tab context menu.
778 * Added option to close tabs using middle-mouse.
779 * Slightly sped up tab switching by eliminating some redundant UI action state
780   updates.
781 * Channel tabs will no longer close when kicked, but rather grey out on the tab
782   bar and offer context menu actions to rejoin.
783 * Channel and query tabs will now grey out on the tab bar when disconnected and
784   no higher priority notification is present. Channel tabs will only ungrey if
785   and when the channel is successfully rejoined after reconnect; query tabs
786   ungrey immediately once reconnected.
787 * Display tooltips for truncated treelist items.
788 * Fixed forwarding keyboard events received by the treelist to Konsole widgets
789   and focus adjustment thereafter as well as generally after switching to
790   Konsole tabs by other means.
791 * Fixed treelist scrollbar not picking up on new palette when the KDE color
792   scheme changes.
793 * Fixed a bug that could cause a crash when the view treelist would receive
794   keypress events during application shutdown.
795 * [New since RC1] Fixed a corner case where a server status item could become a
796   child item of another server status item when dragging it below an special
797   application pane item such as DCC Status or Watched Nicks Online.
798 * [New since RC1] Fixed a crash when using the mouse wheel on the list within
799   ~150ms of a drag and drop operation.
800
801 System Tray icon
802 * Remember and recreate minimized-to-tray state across sessions.
803 * Added option for hidden-to-tray startup.
804 * Reload tray icons when the icon theme changes at runtime.
805 * Added option to not blink the systray icon, but just light it up.
806
807 Channel Settings Dialog
808 * Added a search line to the ban list.
809 * Fixed sorting the ban list by time set.
810 * Made the ban list's "Time Set" column use KDE locale settings for the date
811   format.
812 * Fixed OK'ing/Cancel'ing/closing the Channel Settings Dialog not dealing with
813   open ban list in-line edits correctly.
814 * Reset topic editbox when the channel options dialog has been dismissed with
815   cancel.
816 * Fixed incorrect time display in the topic history list in the Channel Settings
817   dialog.
818
819 Server List Dialogs
820 * Moved the "Show at application startup" option for the Server List dialog to
821   the dialog itself.
822 * Auto-correct hostnames and passwords entered with preceding or trailing spaces
823   in the Server List dialog.
824 * Don't allow impossible ports to be set for servers.
825 * Sensible default focus in the server list dialog.
826 * Fixed unresponsive, defective Server List dialog window appearing at
827   application startup using the Beryl or Compiz compositing window managers.
828
829 Interface Misc
830 * Added a "Next Active Tab" keyboard shortcut to jump to the next active tab with
831   the highest priority notification.
832 * Added a Find Previous standard action.
833 * Have the "Insert Character" dialog pick up on text view font changes.
834 * Show correct number of colors in the color chooser dialog.
835 * Made "Alternate Background" colorchooser disable when unneeded.
836 * Fixed crash when changing the KDE color scheme while a non-chat tab is open.
837 * The encoding selection now allows returning to the used identity's default
838   encoding setting.
839 * Update actions on charset changes.
840 * Added Notifications Toggle and Encoding sub-menu to the window menu.
841 * Moved "Hide Nicklist" menu action from Edit to Settings.
842 * Fixed the "Automatically join channel on invite" setting not to show an
843   inquiring dialog anyway.
844 * Fixed saving the state of the invitation dialog option in the Warning Dialogs
845   preferences.
846 * Added a warning dialog for quitting with active DCC file transfers.
847 * Return focus to the text display widget after closing the search bar in a log
848   reader view.
849 * Made pressing Return or Enter in the Log File Viewer's size spinbox apply the
850   setting, just as pressing the Return button.
851 * Fixed a bug where the SSL padlock icon would be shown on a non-SSL connection
852   (and clicking would cause a crash).
853 * Empty topic labels will no longer show empty tooltips, but rather none at all.
854 * Added a sample 12-hour clock format string to the timestamp format combobox.
855 * Timestamp format list is no longer localized.
856 * Robustness improvements and less UI quirks around channel password handling.
857 * Improved general layout and consistency of tab, chat view, query and topic
858   context menus. Added some missing icons.
859 * Fixed some bugs of UI actions not being appropriately as their context
860   changes.
861 * Fixed enabled state of "Close All Open Queries" action not being updated
862   correctly when queries are closed by way of closing a status view tab.
863 * The window caption is now properly being reset when the last tab is closed.
864 * Made units in spinboxen in the identity and app preferences UI more
865   consistent.
866 * Minor fixes to accelerators and tabbing order in various dialogs.
867
868 Commands
869 * Support command aliases in network connect commands.
870 * Turned parameter-less '/away' into a toggle: Sets away state with default
871   message initially, and unsets away state if already away.
872 * Added an '/aunaway' command to complement '/aaway' (previously, there was only
873   '/aback').
874 * Added support for '/kill'.
875 * A '/join' command for an already-joined channel will now focus it.
876 * Added an '/encoding' command as an alias to '/charset'.
877 * '/charset' and '/encoding' now accept 'latin-1' as an alias for 'iso-8859-1'.
878 * Improved messages for the '/charset' and '/encoding' commands.
879 * Rewrote /me parsing to be less hackish and display usage info with an empty
880   parameter.
881 * '/msg <nick>' is no longer treated as equivalent to '/query <nick>'.
882 * '/msg <nick>' will now error out when lacking a message parameter.
883 * '/query <recipient> [message]' will now error out when recipient is a channel.
884 * Added a '/queuetuner' command to bring up the outbound traffic scheduler's
885   tuning/debug pane.
886
887 Notifications
888 * Seperated query messages and messages containing the user's nickname into two
889   distinct KNotify events.
890 * Made the tab notification color of private messages configurable independently
891   from normal messages.
892 * Don't highlight own nick on topic created by messages.
893 * Fixed disabling notifications for a tab not cancelling highlight sounds.
894 * Fixed a race condition where a highlight's autotext reply would outrun the
895   original line's tab notification.
896 * Fixed actions in queries and DCC chats producing message notification events
897   (rather than the correct private message ones).
898 * Changed the OSD screensaver check logic to work in KDE 4.
899 * [New since RC1] Fixed on screen display occassionally reverting to the default
900   position when using the settings dialog to change unrelated settings.
901
902 Connection handling
903 * Improved behavior with regard to reusing existing connections in connection
904   attempts that provide an initial channel to join, such as command line
905   arguments, the DCOP interface, the bookmark system or irc:// links).
906   Previously, the application would have inconsistently either reused an
907   existing or created a new connection.
908 * Better dialog messages in the interactive variant of the decision to either
909   reuse or create a new connection (from the Server List dialog and the Quick
910   Connect dialog).
911 * Improved and more consistent display of connection names (i.e. network or
912   server host name) throughout the application.
913 * Much improved irc:// URL support for connection intanciation, with support
914   added for IPv6 host names and many of the features proposed by the Mirashi
915   specification.
916 * Eliminated redundant irc:// URL parsing codepaths in favor of a single one.
917 * Added support for irc:// URLs to the chat views.
918 * Removed "konversationircprotocolhandler" shell script. The Konversation
919   executable now understands irc:// URLs directly.
920 * Initiating connections from command line arguments and options now works also
921   when the application is already running.
922 * Fixed a bug that would cause a connection initiated from command line options
923   not to get past the identity validation stage when the configuration file was
924   unitialized and empty.
925 * The server list dialog will now always be closed when starting Konversation
926   with command line arguments to initiate a connection, consistent with the
927   configuration-based auto-connect behavior.
928 * Providing a channel in the creation of a new connection (i.e. via command line
929   arguments, the DCOP interface, the Quick Connect dialog, the bookmark system
930   or irc:// links) now consistently pre-empts the stored auto-join channel list
931   if the target of the connection is a network or the hostname is found to be
932   part of a configured network. Previously, this would only work for Quick
933   Connect and the bookmark system (which caused the infamous Sabayon user flood
934   in #kde due to their "Get Support" desktop link connecting to Freenode, which
935   in an unconfigured Konversation has #kde in its auto-join list).
936 * Connections now have globally unique IDs.
937 * The DCOP interface now understands connection IDs in addition to host names.
938 * The scripting systems now uses globally unique connection IDs rather than
939   server host names to refer to connections, fixing a bug where scripted
940   responses were being handed to all connections sharing a hostname (which was
941   actually intentional in the absence of connection IDs, but undesirable for
942   users).
943 * Improved iteration behavior over a network's server list on connection losses.
944 * The "Reconnect" action now works also when Konversation doesn't consider the
945   connection to be in a disconnected state.
946 * Improved the server status view messages related to reconnection attempts.
947 * Consistently apply the "Reconnect delay" setting (previously confusingly named
948   "Reconnect timeout"), which wasn't done before.
949 * Fixed a bug that could cause the connection process to claim that a DNS lookup
950   was successful when it actually wasn't.
951 * Fixed opening bookmarks with spaces in the target address name (which may be a
952   network name, and networks may have spaces in their name).
953 * Properly update the state of the "Add/Remove to Watched Nicknames" nickname
954   context menu actions when the connection isn't to a config-backed network, in
955   which case there's no way to store and make use of those list entries.
956 * Fixed a crash when quitting the application with a resident connection that
957   disconnected due to an SSL error.
958 * Fixed crashes in the DCOP interface if no connection was present.
959 * Make the "Reconnect" action available even while ostensibly in the process of
960   connecting.
961 * Fix possible crash when closing all views and subsequently creating a new
962   connection.
963 * Fixed crash upon auto-connect at application startup.
964 * Improved the naming of preferences related to automatic reconnection attempts
965   to be less confusing.
966 * Made it possible to set the number of automatic reconnection attempts to
967   unlimited.
968 * Provided better default values to the preferences related to automatic
969   reconnection attempts.
970 * Fixed crash when opening a Konsole tab and Konsole was not installed.
971 * Fixed allowing the user to create an infinite loop of showing the SSL
972   connection details dialog upon being presented with the invalid certificate
973   multiple choice dialog at connection time by checking "Do not ask again" and
974   then clicking "Details".
975
976 Identities
977 * Made it possible to set a Quit message independently from the Part message.
978 * Saving a newly-created identity is no longer allowed without entering a real
979   name.
980 * Apply switching the identity in the identity dialog as opened from the network
981   dialog to the network's settings.
982 * Have the Edit/Delete/Up/Down buttons for the nickname list of an Identity
983   correctly change state according to the selection
984
985 Away system
986 * Added per-identity support for automatic away on a configurable amount of user
987   desktop inactivity and/or screensaver activation, along with support for
988   automatic return on activity.
989 * Fixed the "Global Away" toggle to make sense and update its state properly.
990 * Turned parameter-less '/away' into a toggle: Sets away state with default
991   message initially, and unsets away state if already away.
992 * Added an '/aunaway' command to complement '/aaway' (previously, there was only
993   '/aback').
994 * Broadly rewrote away management related code for improved robustness and less
995   duplication and hacks (e.g. no more abuse of multiServerCommand for global
996   away).
997
998 DCC
999 * Massive DCC refactoring and improved reliability.
1000 * Passive DCC support (Reverse DCC RECV, SEND).
1001 * Replaced the DCC Transfer Details dialog with a retractable transfer details
1002   pane directly in the DCC Status tab.
1003 * Added DCC transfer average speed reading to the DCC transfer details panel.
1004 * The DCC Status tab now remembers its column widths across sessions.
1005 * Fixed duplicated quotation marks around file names in DCC transfer status
1006   messages.
1007 * Fixed "Open File" DCC dialog remembering the last viewed location incorrectly.
1008 * Added an "Open Folder" button to the DCC transfer details panel.
1009 * Added check for whether the URL is well-formed before initiating a DCC send.
1010   Fixes a bug of dragging a nickname link in the chat view onto the query chat
1011   view drop target starting a DCC transfer that cannot succeed.
1012 * Ported the DCC code away from relying on server group IDs to refer to
1013   connections, made it use connection IDs instead. Fixes potential bugs with
1014   multiple concurrent connections to the same network.
1015 * Fixed queued DCC transfer items not picking up on download destination
1016   directory changes.
1017 * Fixed bug leading to crash upon initiating DCC Chat when "Focus new tabs" was
1018   enabled.
1019 * [New since RC1] New transfer items added to the DCC panel's transfer list are no
1020   longer automatically selected, meaning work on other items in the list occuring
1021   at the same time no longer gets interrupted.
1022 * [New since RC1] The "Filename:" line in the DCC panel's detailed info pane is
1023   now using text squeezing to avoid an increase in minimum window width with long
1024   file names.
1025 * [New since RC1] Failed receives now longer show 833TB/s as their transfer
1026   speed.
1027
1028 Blowfish support
1029 * Fixed FiSH-style +p prefix to send clear text to channel despite an encryption
1030   key being set.
1031 * Text encoding is now being applied to the cleartext, rather than the
1032   ciphertext. This fixes using characters outside the ASCII range with blowfish
1033   encryption.
1034 * Fixed CTCP (and thus DCC) requests to nicknames for whom an encryption key is
1035   set.
1036 * Added support for encrypted topics.
1037 * If an encryption key is set, a lock icon will now be shown next to the input
1038   box.
1039 * Added a '/showkey <channel|query>' command to show the encryption key for the
1040   target in a popup dialog.
1041
1042 Auto-replace
1043 * Improved auto-replace behavior with multiple matches in one line (fixes
1044   multiple Wikipedia links).
1045 * Fixed bug that could cause auto-replace to replace the wrong group of the
1046   matching string.
1047 * Auto-replace is now case-sensitive in regular expression mode.
1048 * Added regular expression editor button to auto-replace preferences.
1049 * Fixed conditional enabling of the RegExpEditor button in the auto-replace
1050   preferences page.
1051
1052 Ignore
1053 * Fixed being asked twice whether to close a query upon ignoring the opponent.
1054 * Fixed crash when opting to close a query upon chosing to ignore the opponent
1055   from the context menu of his nickname.
1056
1057 Watched Nicknames
1058 * Improved robustness of the Watched Nicknames Online system.
1059 * The "Offline" branches in the "Watched Nicks Online" list will now be omitted
1060   when there are no offline nicks for the respective network.
1061 * Fixed display of WHOIS spam prompted by the Watch List's WHOIS activity.
1062 * Connections to non-config-backed targets no longer show in Watched Nicks
1063   Online.
1064 * [New since RC1] Actually honor the preference to enable/disable the Watched
1065   Nicknames Online system, and apply it at runtime.
1066 * [New since RC1] Make sure the periodic Watched Nicknames Online check actually
1067   starts running within the same session after adding the first nickname to the
1068   list.
1069 * [New since RC1] Fixed a crash on quit with the Watched Nicks Online tab open and
1070   there being an open connection to a network that nicks are being watched for.
1071
1072 Channel List
1073 * IRC markup is now removed from content in the Channel List view.
1074 * Speed improvements in Channel List views.
1075 * Fixed keyboard accelerator collisions in Channel List views.
1076 * Allow higher values than 99 in the min/max users filter spin boxes in Channel
1077   List views.
1078
1079 Under the Hood / Protocol
1080 * Rewrote the outbound queue scheduling system to be smart enough to reorder
1081   outbound traffic to reduce interactive latency while aggressively throttling
1082   the rate to prevent flooding. Use '/queuetuner' to tweak.
1083 * Rearranged when and how auto-who is triggered upon channel join a bit, to
1084   avoid excessive flooding on multiple concurrent joins in some cases.
1085 * Auto-Who reliability improvements.
1086 * Fixed auto-join with very many channels (the auto-join command would exceed
1087   the maximum buffer length; it is now split into multiple commands as needed).
1088 * Fixed bugs around rejoining channels after reconnects related to the cause of
1089   the disconnect, channel passwords and picking the actual list of joined
1090   channels over the network's auto-join list.
1091 * Improved behavioral consistency in situations where the auto-join list is
1092   preempted by a transitory auto-join channel (bookmarks, etc.).
1093 * Fixed bug that caused the topic state not to be cleared properly prior to
1094   rejoining channels during reconnects.
1095 * Fixed onotice payload being cut off after the first word.
1096 * Changed RPL_WHOISOPERATOR handling to internationalize the common case ("is an
1097   IRC Operator") and otherwise passthrough the string sent by the server.
1098 * Fixed parsing of alternate invite format on Asuka ircds (QuakeNet).
1099 * Added support for PRIVMSG from the server.
1100 * Support RPL_UMODEIS.
1101 * Announce 'k' channel mode (i.e. channel key) changes in non-raw mode as well.
1102 * The command part of CTCP requests is now always converted to uppercase before
1103   sending, as some clients don't like lower- or mixed-case commands as the user
1104   may have entered them.
1105 * Display mode for your nick and channels you're not in.
1106 * Fixed per-channel encoding settings for the channels of a network being lost
1107   when the network is renamed.
1108 * Fixed crash when receiving actions for channels the client is not attending.
1109 * Made newline handling in the DCOP interface more robust, fixing a potential
1110   security problem (CVE-2007-4400).
1111 * A few speed optimizations and memory leak fixes.
1112 * [New since RC1] Fixed a crash on quit during KDE logout or when quitting by
1113   DCOP.
1114
1115 Included scripts
1116 * Support for KMPlayer in the 'media' script (based on the window caption, as
1117   KMPlayer has no proper appropriate DCOP interface).
1118 * Added KPlayer support to the 'media' script (also caption-based).
1119 * Added support for Audacious to the 'media' script.
1120 * Fixed problems in disk space calculation in the 'sysinfo' script caused by
1121   wrapped df(1) output.
1122 * Added KDE 4 support to the 'sysinfo' script.
1123 * Removed some bashisms from the 'sysinfo' script.
1124 * Rewrote 'weather' script for increased reliability in error handling and
1125   better readability.
1126 * Removed broken 'qurl' script in favor of new 'tinyurl' one.
1127 * Fixed the 'fortune' script not working properly when variable expansion is
1128   turned off in the preferences.
1129 * [New since RC1] Fixed a bug in the 'media' script that caused it to break when
1130   querying Audacious with audtool not being available.
1131
1132 Packaging
1133 * [New since RC1] Standards compliancy fixes in the application .desktop file and
1134   the nicklist icon theme .desktop files.
1135
1136 Build
1137 * Fixed build with --enable-final.
1138
1139 -------------------------------------------------------------------------------
1140
1141 Changes from 1.0 to 1.0.1
1142 We are pleased to announce the immediate availability of Konversation 1.0.1,
1143 a maintenance release featuring notable improvements for users of right-to-
1144 left languages (including new Arabic and Hebrew translations), further re-
1145 finement of the user interface and application functionality, and fixes for
1146 minor defects found in the previous release.
1147
1148 * A bug that caused left-to-right text contained in lines determined to be
1149   right-to-left text to appear reversed has been fixed.
1150 * Whether a line is treated as right-to-left vs. left-to-right text is now
1151   determined by the amount of each type of character in the line, improving
1152   the user experience in chats involving bi-directional text considerably.
1153 * The "Edit Network" dialog has been refined for clarity and ease of use.
1154 * A warning dialog to prevent accidentally quitting Konversation has been
1155   added.
1156 * The Auto Replace list can now be sorted.
1157 * The '/media' script command now sports improved player recognition, enhan-
1158   ced and easier configurability, the ability to distinguish between audio
1159   and video media as well as newly added support for kdetv. New '/audio' and
1160   '/video' command aliases have been added to expose these new abilities.
1161 * The lower boundary of the default DCC port range has been raised from 1025
1162   to 1026 to avoid conflicts with the commonly blocked Windows RPC port 1025.
1163 * Dismissing an OSD notification by clicking on it will now also cancel the
1164   systray notification flash.
1165 * A new configuration file option [OSD]OSDCheckDesktopLock has been added,
1166   allowing to manually disable the screensaver check in non-KDE environments
1167   that do not support it, causing the OSD not to be displayed.
1168 * A bug that could lead to the "Switch to" sub-menu in the context menus of
1169   tabs not to be updated properly upon switching tabs has been fixed.
1170 * A bug that caused the 'irc setBack' DCOP call not to function has been
1171   fixed.
1172 * A bug that caused ampersands in the names of tabs not to be displayed and
1173   an immediately following character to be used as keyboard accelerator has
1174   been fixed.
1175 * A bug that caused ignoring nicknames with '[' or ']' characters in them to
1176   fail has been fixed.
1177 * Command aliases containing regular expression syntax can no longer cause
1178   built-in commands not to function.
1179 * A bug that caused the Konversation irc:// protocol handler not to function
1180   has been fixed. Its compatibility with systems that do not use the GNU bash
1181   shell as default shell has been improved.
1182 * A notable number of code quality improvements suggested by KDEs automated
1183   quality control service EBN have been implemented.
1184
1185 -------------------------------------------------------------------------------
1186
1187 Changes from 0.19 to 1.0
1188 We are extremely pleased to announce the immediate availability of Konversation
1189 1.0, a significant milestone in the lifetime of the Konversation project. This
1190 release includes major new functionality as well as a large amount of
1191 improvements to existing functionality, with an emphasis on user interface
1192 polish and overall reliability. Notable new features include a vertical treelist
1193 of tabs as an alternative to the traditional tab bar, auto-replacement of words
1194 in incoming and outgoing messages, an improved Channel Settings dialog now
1195 featuring a ban list, an optional expanding input box and many improvements to
1196 both DCC file transfers and DCC chats. Enjoy!
1197
1198
1199 User Interface
1200 * It is now possible to place the tabs on the left side of the application
1201 window.
1202   This has been implemented as a treelist of tabs. The treelist supports all of
1203   the cosmetic and interactive properties of the original horizontal tab bar,
1204   including colored notifications, LED icons, (hover) close buttons with delayed
1205   activation, reordering, drag'n'drop and mouse wheel cruising. And a few tricks
1206   of its own.
1207 * Connection status tabs now feature specific context menu entries to disconnect
1208   and reconnect, as well as to join a channel on that connection.
1209 * The automatic resizing of tabs in the tab bar first implemented in version
1210   0.19 is now optional.
1211 * The grouping behavior of Channel List and Raw Log tabs in the tab bar has been
1212   improved.
1213 * Disabling notification for a tab will now unset the active notification.
1214 * The enabled/disabled state of the notifications for connection status tabs
1215 will
1216   now be remembered across sessions for configured networks.
1217 * The speed of switching tabs in quick succession with the auto-spellchecking
1218   preference enabled has been improved.
1219 * Using custom fonts in the user interface is now optional. The font used by the
1220   tab bar is now configurable.
1221 * Events in the connection status tabs are now logged into separate logfiles.
1222 * The Channel Settings dialog now includes a Ban List tab that allows viewing,
1223   adding and removing bans in a channel. The dialog can now be opened from the
1224   menu bar and chat window context menu in addition to the button in the topic
1225   area.
1226 * Mode and topic handling in the Channel Settings dialog and the channel mode
1227   buttons have been overhauled to make them more robust and reliable.
1228 * The number of Quick Buttons to show below the nickname list in channel tabs is
1229   now configurable. Additional buttons may be added or existing buttons removed.
1230 * Konversation now supports auto-replacing words in incoming and outgoing
1231   messages. Regular expressions are supported. The auto-replace configuration
1232 can
1233   be found in the preferences dialog. The static Wiki link feature found in
1234 older
1235   versions has been retired in favor of an auto-replace rule.
1236 * The search bar has been redesigned to provide a better user experience.
1237 * The "Find Next" action will now open the search bar when there is no active
1238   search, matching the behavior of Konqueror and other KDE applications.
1239 * The sorting of the nick completion list has been improved to put the last
1240   active user for a given completion prefix at the beginning of the list.
1241 * The tab completion of the user's own nickname has been reenabled.
1242 * The nick completion feature has been significantly cleaned up and made more
1243   reliable. A bug that could lead to an application crash during nick completion
1244   has been fixed.
1245 * An option to expand the vertical size of the input box automatically when the
1246   text entered grows beyond the length of a single line has been added.
1247 * The behavior of the input box on pasting text including leading or trailing
1248   newline characters has been improved never to cause lines being sent without
1249   user acknowledgement.
1250 * The input box of connection status, channel and query tabs will now be
1251 disabled
1252   and the nickname list of channel tabs cleared when the respective server
1253   connection is closed.
1254 * Konversation can now optionally insert a remember line whenever a tab is
1255 hidden,
1256   either by switching to a different tab or minimizing the window.
1257 * Multiple consecutive remember lines will no longer be inserted.
1258 * Remember lines can now also be inserted into the chat windows of connection
1259   status and DCC Chat tabs.
1260 * The Colored Nicknames feature will now always assign the same color to the
1261 same
1262    nickname.
1263 * The number of backlog lines to show in the chat window is now configurable.
1264 * The recognition of URLs in the chat window has been improved to cope better
1265   with URLs containing or being surrounded by parenthesis and to exclude
1266 trailing
1267   dots and commas.
1268 * Channel links following mode characters or surrounded by interpunctuation are
1269   now properly recognized in the chat window.
1270 * The context menus for URLs and channel links in the topic area now match the
1271   context menus in the chat window.
1272 * Multiple ignore or unignore actions ordered at the same time will no longer be
1273   shown on separate lines in the chat window.
1274 * The nickname context menus in the chat window, topic are and the nickname list
1275   will now show "Ignore", "Unignore" and "Add to Watched Nicknames" entries as
1276   applicable.
1277 * A bug that could lead to the chat window nickname context menu actions ceasing
1278   to function after the targeted user left the channel has been fixed.
1279 * The Server List dialog now allows connecting to a specific server in a network
1280   even when a connection to that network has been previously established. If
1281 that
1282   connection is active, a dialog box will verify whether to disconnect from the
1283   current server and connect to the chosen one instead, otherwise the connection
1284   will simply be reestablished using the newly chosen server.
1285 * The Quick Connect feature will now properly warn when the identity to be used
1286   in the connection attempt is not set up properly.
1287 * The appearance and behavior of the warning about an incorrectly set-up
1288 identity
1289   have been improved. A prior connection attempt will now be automatically
1290 resumed
1291   after the identity settings have been corrected.
1292 * Many of the pages in the Konversation preferences dialog have been redesigned
1293   and rewritten for improved consistency, reliability and clarity. The general
1294   layout of the dialog has been improved as well.
1295 * The naming of certain actions in the Configure Shortcuts dialog has been
1296   improved to make them easier to recognize outside of their normal context in
1297   the application interface.
1298 * Numerous improvements to keyboard navigation have been made.
1299 * The nickname list now longer allows drag'n'drop of channel or user links from
1300   the chat window onto list entries, as a DCC transfer of those data sources
1301   cannot succeed.
1302 * The preference to show or hide the real names of users in the nickname list
1303 will
1304   now be applied immediately.
1305 * The columns of the nickname list will no longer resize erratically when the
1306   preferences to show or hide real names and hostmasks are changed at runtime.
1307 * A bug that could lead to nicknames being sent as messages when double-clicking
1308   a selection of multiple nicknames in the nickname list has been fixed.
1309 * The placement of actions in the application menus has been improved.
1310 * The shown/hidden state of the application menubar will now be remembered
1311 across
1312   sessions. When the menubar is hidden, a menu action to show it again will now
1313 be
1314   added to the chat window context menu.
1315 * The "Close All Open Queries" menu action is now be disabled properly when
1316 there
1317   are no open queries.
1318 * A bug that could lead to the "Close All Open Queries" menu action failing to
1319   properly close all open queries has been fixed.
1320 * A bug that could lead to an application crash when closing the tab after
1321 choosing
1322   to ignore someone in a query has been fixed.
1323 * The "Hide Nicklist" menu action will now be disabled properly when the tab
1324 shown
1325   does not have a nickname list has been fixed.
1326 * The actions in the "Insert" menu will now be disabled properly when the
1327 current
1328   tab does not support them.
1329 * The default double-click action in the "Watched Nicks Online" tab is now to
1330 open
1331   a query to the respective contact.
1332 * The sorting in the Watched Nicks Online tab has been improved: Offline users
1333 are
1334   now always sorted at the bottom.
1335 * Several bugs in the "Watched Nicknames Online" tab that could lead to
1336 application
1337   crashes have been fixed.
1338 * Several errors in the chat window status messages produced by the Watched
1339 Nicks
1340   Online system have been corrected.
1341 * A bug that could lead the the columns in the "Watched Nicks Online" list
1342 resizing
1343   erratically has been fixed.
1344 * A bug that could lead to the status bar not being cleared properly when the
1345 last
1346   tab was closed or the application window lost focus after a link was
1347   launched from the chat window has been fixed.
1348 * The display of temporary and static info texts in the status bar has been
1349   improved not to interfere with each other and provide more useful information.
1350   Also, the status bar lag info section is now updated more consistently to
1351 avoid
1352   jumping around of the other status bar sections.
1353 * A bug that could lead to a wrong nickname count being shown in the status bar
1354   of channel tabs has been fixed.
1355 * Repeated triggering of the "Open URL Catcher" menu action will now properly
1356   show and hide the URL Catcher tab.
1357 * The warning about pasting text with multiple lines can now be properly
1358 disabled
1359   and reenabled from the Warning Dialogs preferences page.
1360 * A bug that could lead to IRC bookmarks showing up as actions in the Configure
1361   Shortcuts dialog has been fixed.
1362 * A bug that could lead to changes of the global KDE icon set not being applied
1363   to the tab bar close buttons immediately has been fixed.
1364 * A bug that caused the application window to change its horizontal size after
1365   opening a Query to a user with a very long hostmask has been fixed. The DCC
1366   Chat and query tabs now use the same heading style as channel tabs.
1367 * A bug that could lead to the topic and nickname list areas not keeping their
1368   size properly across tab switches has been fixed.
1369 * A bug that could lead to certain types of KNotify event notifications not
1370   being executed properly when the system tray icon was enabled has been fixed.
1371 * A bug that could lead to ampersands in network names being shown as
1372   underscores in the menu under certain circumstances has been fixed.
1373 * A bug that could lead to an application crash when trying to access
1374   non-existing tabs via the Alt+number keyboard shortcuts has been fixed.
1375 * A bug that could lead to the toolbar being hidden after it was edited has been
1376   fixed.
1377 * A bug that could lead to the chat window context menu not being cancelled
1378   properly when clicking outside of it has been fixed.
1379 * A bug that could lead to heavy disk seeking when the splitters separating
1380   the topic area and the nickname list from the chat window were moved has been
1381   fixed.
1382 * The option to only show the application in the system tray at all times has
1383   been retired in favor of the standard KDE mechanic of minimizing into the
1384   system tray.
1385
1386 Commands
1387 * The 'Now Playing' script invoked via the /media command alias now features
1388   support for XMMS and KSCD as well as improved support for untagged media files
1389   playing in Amarok. Support for non-ASCII encodings in file names and meta tags
1390   has been improved as well.
1391 * New "/hop" and "/dehop" commands to grant or remove half-op status from a user
1392   have been added.
1393 * A new "/devoice" command has been added.
1394 * A new "/kickban" command to ban and immediately kick a user has been added. It
1395   supports the same parameters as the "/ban" command plus an additional "kickban
1396   reason" parameter.
1397 * Commands to grant or remove status for users will now be applied to the user's
1398   own nickname when no nickname parameter is given.
1399 * The "/unignore" command now supports the same simple nickname-only format as
1400   the "/ignore" command.
1401 * If given no parameter, the "/away" command will now set the away state with
1402   the default away message. The "/back" and "/unaway" commands can be used to
1403   unset the away state.
1404 * You may now use "%nick" as a placeholder for your own nickname in the auto-
1405   connect commands for a network.
1406 * A bug that could lead to the auto-connect commands for a network not being
1407   executed correctly has been fixed.
1408
1409 DCC
1410 * DCC file transfers now support file names containing spaces on send, receive
1411   and resume. The automatic replacement of spaces with underscores in file names
1412   can now be optionally disabled in the DCC preferences.
1413 * File names are no longer being needlessly lower-cased during DCC transfers.
1414 * The DCC file transfer and DCC Chat info messages shown in the chat window have
1415   been significantly improved to provide more useful information while being
1416 less
1417   excessively verbose.
1418 * DCC Chats will now be logged properly.
1419 * It is now possible to select multiple files in the DCC Status tab.
1420 * The default size of the buffer used in DCC transfers has been increased to
1421   8192kb for improved DCC performance.
1422 * The DCC Status tab will no longer show a speed of '?' for completed, failed or
1423   aborted transfers.
1424 * Bugs that could lead to the IP used for DCC transfers not being retrieved from
1425   the server correctly upon reconnect or in general on certain servers have been
1426   fixed.
1427 * A bug that could lead to the progress bar of a transfer in the DCC Status tab
1428   being rendered at a wrong position has been fixed.
1429 * A bug that could lead to Konversation's CPU usage spiking to 100% after a DCC
1430   Chat was closed from the remote side has been fixed.
1431 * Several bugs that could lead to application crashes in DCC Chat tabs after the
1432   server connection from which the DCC Chat originated was closed have been
1433 fixed.
1434
1435 Technology
1436 * Konversation will now properly split up very long lines into multiple messages
1437   by calculating the length of the message preamble and the number of bytes of
1438 the
1439   text payload. Encodings that use multiple or variable numbers of bytes per
1440   character are accounted for.
1441 * The Disconnect and Reconnect menu actions and the respective input box
1442 commands
1443   have been rewritten for increased reliability. Their state will now be updated
1444   properly, and they will quit the IRC server in the correct manner.
1445 * A previous away state will now be recreated upon reconnection to a server.
1446 * The Quick Connect feature will now no longer join the auto-join channels of
1447   the configured network that the quick connect server was recognized as being a
1448   part of.
1449 * The "Konversation" and "KonvDCOPIdentity" DCOP objects have been renamed to
1450   "irc" and "identity", respectively. Several bugs in the DCOP API have been
1451   fixed, and deprecated interfaces removed.
1452 * Processing of the user lists of newly joined channels has been rewritten to
1453   fix several bugs, including improved compatibility with the Bip IRC proxy and
1454   other servers.
1455 * The lag calculation and timeout handling code has been rewritten for improved
1456   reliability and performance.
1457 * Recognition of the half-op user status has been improved.
1458 * The detection of text being typed into the input box to prevent focussing new
1459   tabs at inconvenient times has been improved to work correctly with non-ASCII
1460   characters.
1461 * The handling of channel user limits in the Channel Settings dialog is now more
1462   reliable.
1463 * Support for mode flags encountered on UnrealIRCD servers has been improved.
1464 * Support for RPL_DATASTR on UnrealIRCD servers has been improved.
1465 * A bug that could lead to the mode flags displayed for users not being updated
1466   properly after they were kicked from a channel has been fixed.
1467 * A bug that could lead to iterating over a configured network's servers failing
1468   after a connection failure has been fixed.
1469 * A bug that could lead to Konversation connecting to the wrong server in a
1470   network when choosing to connect to a specific server from the Server List
1471 dialog
1472   has been fixed.
1473 * A dialog will now ask the user for an additional nickname when all nicknames
1474   configured in the identity where tried unsuccessfully during a connection
1475   attempt. This replaces the previous behavior of repeatedly appending
1476 underscores
1477   to the last nickname, which eventually ran into the nickname length limit on
1478 the
1479   server.
1480 * A bug that could lead to unnecessary nick changes immediately after connecting
1481   to a server has been fixed.
1482 * A bug that could lead to Konversation trying to auto-identify multiple times
1483   upon connect on certain servers has been fixed.
1484 * A bug that could lead to Konversation not picking up on users leaving a
1485   channel without providing a part or quit message on UnrealIRCD servers has
1486 been
1487   fixed.
1488 * Changes to the list of auto-join channels for a network will now be applied
1489   immediately.
1490 * The auto-reconnect preference will now be properly applied at runtime.
1491 * Konversation will no longer enable IDENTIFY-MSG mode on servers that support
1492 it,
1493   but continues to be able to process messages with IDENTIFY-MSG prefixes in
1494 case
1495   an involved IRC proxy chose to enable IDENTIFY-MSG mode.
1496 * The broken default for the Custom Web Browser preference has been fixed.
1497 * Konversation will no longer allow Konsole tabs to be opened in KDE
1498   environments in which the use of terminals is prohibited by the KIOSK
1499 framework.
1500 * A bug that could lead to an application crash when a Konsole tab was closed
1501   from the Konsole component's context menu has been fixed.
1502 * A bug that could lead to an application crash when a channel was joined while
1503   the application window was hidden has been fixed.
1504
1505 -------------------------------------------------------------------------------
1506
1507 Changes from 0.18 to 0.19
1508 We are extremely pleased to announce the immediate release of Konversation 0.19.
1509 The focus
1510 of this release is on extending and improving upon established functionality.
1511 Most notable
1512 in this regard are significantly improved management of IRC networks and servers
1513 all across
1514 the application, a redesigned tab bar and better support for common IRC
1515 commands. A long
1516 list of further additions and improvements has us confident of this being the
1517 best version
1518 of Konversation yet. Enjoy!
1519
1520
1521 User Interface
1522 * The Server List dialog has been rewritten to allow direct manipulation of a
1523 network's
1524   servers and features more intelligent sorting behavior. Reordering networks
1525 via drag
1526   and drop is now possible. A behavioral audit of all actions in the dialog
1527 resulted in
1528   numerous improvements.
1529 * A redesigned tab bar sports highly configurable text- and LED icon-based
1530 notifications
1531   as well as more intelligent scaling behavior under space-critical conditions.
1532 * Tabs are now intelligently grouped around their respective connection status
1533 tab.
1534 * Status tab labels now display the user-configured network name where
1535 appropriate.
1536 * The Find Text dialog has been replaced by a search bar that no longer
1537 interrupts your
1538   workflow.
1539 * Channel links in the chat area now feature a context menu for quick access to
1540 common
1541   actions.
1542 * Usage of the status bar has been extended to show context-relevant information
1543 as the
1544   cursor passes over various interface elements. The lag information segment is
1545 now
1546   only shown where appropriate.
1547 * A channel's topic can now be cleared by setting an empty text in the Channel
1548 Options
1549   dialog.
1550 * The Channel Options dialog has been redesigned to allow editing the current
1551 topic
1552   while browsing a channel's topic history.
1553 * The Watched Nicknames interface has been fully integrated with network
1554 management.
1555 * Pressing the Arrow Down key in the input line now preserves any input entered
1556 by
1557   adding it to the history.
1558 * Commands may now be sent as regular messages by typing Ctrl+Enter.
1559 * The multi-line paste editor window now highlights whitespace characters and
1560 prepends
1561   the existing content of the input line.
1562 * The Colored Nicknames feature has been improved to better handle nickname
1563 changes and
1564   immediately apply any changes to the color palette.
1565 * Some previously not configurable notification events have been made
1566 configurable.
1567 * Users leaving a server will now be announced in any query you have open with
1568 them.
1569 * Query tab labels will now update when a user you have a query open with
1570 changes
1571   his/her name.
1572 * The DCC file transfer dialogs have seen a number of cosmetic improvements.
1573 Among other
1574   things, in the event of a file being renamed on save, the local file name is
1575 now shown
1576   across the application.
1577 * Various status and error messages have been rewritten for improved consistency
1578 and
1579   clarity.
1580 * The KDE standard text font will now be correctly set as initial default chat
1581 font.
1582 * It is now possible to skip displaying a server's MOTD on connect.
1583 * If the application is set to display a server's MOTD in a fixed-width font and
1584 the
1585   previously configured default chat font is already a fixed-width font, the
1586 chat font
1587   will now be used rather than the global KDE default fixed-width font.
1588 * The state of the automatic spell checking functionality is now remembered
1589 across
1590   sessions and set for all tabs.
1591 * Networks no longer lose their channel history when their settings are changed.
1592 * The Server List dialog will no longer close when a connection attempt fails
1593 due to
1594   the identity not being set up correctly.
1595 * After changing your nickname using the optional drop-down menu to the left of
1596 the
1597   input line, focus will now be returned to the input line.
1598 * The configuration dialog has been rewritten to correctly update the button
1599 state of
1600   its primary actions and improve consistency with the KDE style guide.
1601 * The vertical and horizontal splitters in channel tabs now behave better when
1602 the
1603   application window is resized and correctly retain their positions across
1604 sessions.
1605 * The OSD preview in the OSD settings page is now always shown correctly.
1606 * The OSD will no longer be shown when the desktop is locked.
1607 * A bug that prevented copying text from the chat area under certain
1608 circumstances has
1609   been fixed.
1610 * Keyboard search in the channel nickname list has been fixed.
1611 * A number of issues affecting nickname context menus in the chat area have been
1612 fixed.
1613 * A bug leading to a wrong operator count in the status bar has been fixed.
1614 * It is no longer possible to add nameless networks or hostless servers in the
1615 respon-
1616   sible management dialogs.
1617 * Bugs that led to parts of the interface not reacting to KDE color scheme
1618 changes have
1619   been fixed.
1620 * The status bar now correctly reacts to KDE font size changes.
1621 * A bug that led to the application window resizing on overly long status bar
1622 contents
1623   has been fixed.
1624 * A bug that led to multiple remember lines being inserted into the frontmost
1625 tab when
1626   away mode was activated has been fixed.
1627 * A bug that led to wrong link addresses being opened from the chat area has
1628 been fixed.
1629 * Bugs that led to wrong URLs being produced by dragging a link from the chat
1630 area to
1631   the input line have been fixed.
1632 * Channel names are now better recognized as such by the chat area.
1633
1634
1635 Bookmarking
1636 * Bookmark titles now default to the channel name.
1637 * Bookmarks now store the network name rather than the server address where
1638 available.
1639 * Bookmarks now support IPv6 addresses.
1640
1641
1642 Commands
1643 * The '/server' command now recognizes a greater variety of address notations
1644 including
1645   network names.
1646 * The '/names' command now always succeeds in returning the user list of a
1647 channel.
1648 * The '/topic' command now always succeeds in returning the topic of a channel.
1649 * A '/dns' command has been added that facilitates resolving the host name of a
1650 user on
1651   the server as well as generic host names. Reverse resolve is supported on KDE
1652 3.5.1+.
1653 * An '/unignore' command has been added.
1654 * A '/disconnect' command has been added.
1655 * A '/reconnect' command has been added that disconnects and then reconnects the
1656 respec-
1657   tive server.
1658 * A '/setkey' command has been added to set the Blowfish encryption/decryption
1659 key for
1660   the respective context.
1661 * The '/list' command now correctly opens the Channel List tab.
1662 * A bug in parsing the arguments of the '/join' command has been fixed.
1663 * Usage information and error reporting for various commands has been rewritten
1664 for
1665   improved consistency and clarity.
1666 * A bug that led to a 'clear' command being sent to the server when using the
1667 '/clear'
1668   command to clear the contents of a query tab has been fixed.
1669
1670
1671 Miscellaneous
1672 * The 'media' script has been rewritten and now features improved compatibility
1673 with
1674   common character sets, greatly enhanced support for the Kaffeine media player
1675 and
1676   newly added support for the Yammi media player.
1677 * The 'sysinfo' script has been rewritten to produce more concise output and
1678 better
1679   handle a variety of storage scenarios.
1680 * The convenience feature expanding [[term]] into a Wikipedia link is now
1681 localizable
1682   and generates a link that performs an intelligent lookup for the term in the
1683 Wiki-
1684   pedia rather than assume a correct direct link.
1685
1686
1687 Technology
1688 * Konversation now depends on KDE 3.4+.
1689 * The preferences storage system has been rewritten to facilitate easier
1690 maintenance
1691   and faster development in future release cycles.
1692 * Localized support for a long list of IRC protocol primitives has been added.
1693 * The application will now correctly iterate over a network's servers on
1694 successive
1695   failed connection attempts.
1696 * When the '/server' command or the Quick Connect dialog is used to connect to a
1697   server that has previously been added to a network in the Server List dialog,
1698 it
1699   will be recognized as being part of the network and the respective identity
1700   settings will be applied.
1701 * The automated reply to a highlight event can now reference the groups of the
1702 matched
1703   pattern by the identifiers %1-%9 and the entire match by the identifier %0.
1704 * The CABAP IDENTIFY-MSG technology is now supported.
1705 * Compatibility with the Unreal IRC server has been improved.
1706 * Initial support for Blowfish encryption (compatible with mIRCryption and FiSH)
1707 has
1708   been added. Note that Diffie-Hellman key exchange (DHX) is not yet supported.
1709 * The Watched Nicknames reporting has been made more reliable.
1710 * Socket handling in the DCC file transfer feature has been improved.
1711 * Alpha-blending of icons in the channel nickname list has been fixed.
1712 * Support for the iso-2022-jp encoding has been enhanced.
1713 * The custom web browser feature will now automatically append the URL as a
1714 parameter
1715   to the specified command when the %u identifier is missing.
1716 * Channel modes are now correctly cleared and updated in the internal
1717 representation
1718   on rejoin.
1719 * A bug that led to an infinite loop during a connection attempt when all
1720 nicknames
1721   configured in the identity were in use has been fixed.
1722 * A bug that could lead to a crash when opening the log file for a closed
1723 connection has
1724   been fixed.
1725
1726 -------------------------------------------------------------------------------
1727
1728 Changes from 0.17 to 0.18
1729 - All nicks were blue when colored nicks are disabled with some setups
1730 - /cycle now works as expected
1731 - /gauge script was not working correctly when given a bigger than 100 argument
1732 - /mail script has been added
1733 - Button to invoke Regular Expression Editor (if installed) in Settings ->
1734 Highlight.
1735 - Complete command line argument system for connection
1736 - An option to disable clickable nicks . Add ClickableNicks=false to
1737 konversationrc to disable it.
1738 - Fixed a big memory leak in message processing
1739 - Nicklist slider now correctly resizes in all channels when its resized and
1740 correctly restores on startup
1741 - [[foo]] is now a link to http://en.wikipedia.org/wiki/foo . We will expand
1742 this to local wikipedia's in a later release [Update: Now fixed in 0.19]
1743
1744
1745 Changes from 0.16 to 0.17
1746 - Add an option to hide realnames in nicklist
1747 - Show away users as disabled ala Xchat
1748 - Remove sort by away status
1749 - Fix whois replies for normal users on safe channels ( IRCNet alike )
1750 - Fix whois replies from ircd-hybrid ( Efnet alike )
1751 - Better handling of quiet bans ( especially Freenode )
1752 - KDE color scheme is now honered in topic widget
1753 - Enable clickable nicks even if colored nicks are off
1754 - Per identity pre-shell command support with a GUI
1755 - Bookmarking support
1756 - Detect Japanese encoding correctly while trying to auto-detect Unicode
1757
1758 Changes from 0.15 to 0.16
1759 - Dropping URLs onto nick on nicklist or onto query initiates DCC send
1760 - You can now do SSL connections from Quick Connect Dialog
1761 - Nicklist Icon Themes
1762 - New topic widget
1763 - Added a channel dialog
1764 - Made the nickname box optional
1765 - Fix DCC resume when its set to auto-accept
1766 - Calculate DCC CPS more accurately
1767 - Colored nicks support
1768 - Added dcop functions to set away and added alt+a shortcut to toggle away
1769 - Clicking nicks in channel text will now open a query and similarly,
1770   clicking #foo will now join channel #foo
1771 - Nicks in channel view now have a context menu as in nicklistview
1772 - Tab at begining of line inserts last completed nick
1773 - A media script added to replace amarok,juk,noatun,kaffeine scripts.
1774   Use /media instead of using /amarok,/juk etc.
1775 - Links can now be dragged & dropped from channels
1776 - Midde clicking urls now opens them in new tab in konqueror ( if konqueror is
1777 used for links )
1778 - Improved unicode detection
1779 - Fix unicode detection for strings containing color markup
1780 - /omsg,/onotice support
1781 - Added an option to use an IPv4 interface for IPv6 dcc sends
1782 - A new /google script added to search Google using Google SOAP api
1783 - Redesigned settings page
1784 - A new application icon
1785 - Lots of optimizations all around
1786
1787 Changes from 0.14 to 0.15
1788 - Ported socket code to KNetwork. Weird connection problems should be gone now
1789 - Get default username/ident information from system
1790 - Support for bouncer prefixes in nick completion
1791 - Dcc port range support
1792 - Scripts now works with /script or /exec script
1793 - Improved bidi support.
1794 - Cleaned up settings dialog
1795 - Added an option how to get own IP for DCC send/chat
1796 - "Open Watched Nicks Online panel on startup" option
1797 - Support encoding settings per channel
1798 - SSL Support
1799 - KIO-fied local I/O on DCC send/receive
1800 - OSD Positioning Support
1801 - New network based server settings
1802 - Added an option to stay in systray all the time
1803 - Full irc:/ url support (channel name & password now supported in url)
1804 - /charset support
1805 - auto /WHO support
1806 - display away status of nicks in nick list
1807
1808 Changes from 0.13 to 0.14
1809 - Added irc "pseudo" command /prefs for changing settings without settings
1810 dialog.
1811 - Measure away time and make it available via placeholder (%t)
1812 - (Very much) Improved OSD.
1813 - New application icons by luciash d' being <luci@sh.ground.cz>. Thanks!
1814 - Added /server command for connecting to a server.
1815 - After the connection is lost and the old nickname is still in use,
1816   the nickbutton in the channelwindows is updated to the new nick.
1817 - Now you can read utf8 encoded messages even if your locale is not unicode
1818 - "Do not show this dialog again" preferences now works correctly
1819 - Added an "Insert Remember Line" feature.
1820   The user can mark the position in the channel where he stopped
1821   reading(because he is away for a short time).
1822   When he comes back, he can scroll back to this mark and read
1823   what he missed.
1824 - Added the possibility to execute commands on server connection(for
1825   authentication and such things). Can be configured in the "Edit Server"
1826   dialog.
1827 - Added further timestamps for am/pm (BR 79612)
1828 - Added QuickConnect dialog by Michael Goettsche. (Thanks once again)
1829 - Properly receive a logout/shutdown request and terminate konversation,
1830   instead of minimizing to the systray.
1831 - Make OSD switchable on/off via DCOP. Thanks to Michael Goettsche! (BR 75870)
1832 - Dates can now be shown, next to the timestamp. Patch by Michael Goettsche
1833   (BR 82785) (thanks!)
1834 - Added DCC auto-resume feature by Michael Goettsche (BR 81740) (thanks!)
1835 - Added systray notification
1836 - Added shell like nick completion mode (aka uga mode)
1837 - Implemented a cleaner way of handling tab shortcuts
1838 - Implemented DCC Chat
1839 - Hilight mailto: links
1840 - Topic line can now be hidden
1841 - Added an away nickname
1842 - Added /aaway, /ame and /amsg
1843 - Added "Open URL" context menu to channel list entries
1844 - Implemented slower / faster blinking of tabs for more / less important events
1845 - Less important events like Join, Part and Nickchanges can now be hidden
1846 - Custom CTCP Version Reply Support
1847 - Added a shortcut to close all open queries
1848 - Added a patch by Thomas Nagy to cycle tabs with mouse scroll wheel (thanks!)
1849 - Added logfile reader
1850 - Added patch by Gary Cramblitt to enhance DCC panel (thanks!)
1851 - Added patch by Gary Cramblitt to select custom web browser command (thanks!)
1852 - When the server goes offline, now all associated tabs get crossed out
1853 - Added a multi line pasting editor
1854 - Nicks Online is now a tabbed panel, rather than separate window.
1855 - Added sound support to the highlight list
1856 - Added regular expression support to the highlight list^
1857 - Follow the style guide when the tray icon is enabled by minimizing to tray
1858 when
1859   the close button is clicked.
1860 - Auto text feature on highlight events
1861 - DCC resume offers to rename a transfer now
1862 - Added patch by Ruud Nabben to enable hiding of IRC colors (thanks!)
1863 - Various small fixes and additions
1864
1865 Changes from 0.12 to 0.13
1866 - Added an option to hide hostmasks in channel nick lists
1867 - Autojoin on invite with user interaction implemented
1868 - Added URL catcher interface
1869 - Added user interface for "don't show again" dialogs
1870 - Added slovenian translation by Barko (thanks!)
1871 - Added korean translation by Hye-Shik Chang (thanks!)
1872 - Added option to place tabs on top
1873 - Color configuration is now in preferences dialog
1874 - Quick buttons configuration is now in preferences dialog
1875 - Notify list is now in preferences dialog
1876 - Option for a background image added
1877 - Added /quote command for raw server messages
1878 - Added Copy URL into clipboard for URL catcher
1879 - Added option for reconnect on too long lag
1880 - Added "Server list" menu entry to "File" menu
1881 - Applied a patch by Peter Simonsson (thanks!)
1882 - Patch added Color picker, IRC colors and KNotify events
1883 - Added support for command aliases
1884 - Encodings are now on per-identity basis
1885 - Added indicator to show own away state
1886 - Added system tray icon patch by Frauke Oster (thanks!)
1887 - Channel list update is now more CPU friendly
1888 - Tell the user why the channel list could not be opened
1889 - Channel list now sorts correctly when number column is clicked
1890 - Applied a patch by Christian Muehlhaeuser to enable bigger mode changes
1891 (thanks)
1892 - Applied a patch by Christian Muehlhaeuser to right-align close widgets
1893 (thanks)
1894 - Info button on dcc panel now works
1895 - Added /unban command
1896 - Applied a patch by Christian Muehlhaeuser for OSD functions (thanks)
1897 - Applied a patch by Sascha Cunz for extended user modes beyond @ and + (thanks)
1898 - Applied a patch by Steve Wollkind to close visible tab via shortcut (thanks)
1899
1900 Changes from 0.11 to 0.12
1901 - Now handles multi server mode in one single window
1902 - Fixed the wrong Ops counter
1903 - Added /notify command and respective dcop calls
1904 - Added support for /oper command
1905 - Implemented /ban command and menu items
1906 - Added shortcut (F3) for search dialog
1907 - History does not get cleared on cursor up/down anymore
1908 - Added context menu to copy URLs immediately
1909 - Added paragraph spacing
1910 - Added hostmask column to nick list
1911 - Implemented background hostmask scanning
1912 - Recognises now who set the first topic
1913 - Added nickname sorting options
1914 - Sorting now has up/down arrows
1915 - Added channel list panel
1916 - Added russian translation by Stanislav Karchebny (thanks!)
1917 - Applied some patches by Stanislav Karchebny
1918 - Added PgUp/PgDown support to Channels, Queries and Status views
1919 - Added rename button to identity page to overcome QComboBox limitations
1920 - Tabs now blink in the last highlight color to indicate important text
1921 - Tabs don't get to front anymore while the user is typing in an input line
1922 - Added shortcut editor dialog
1923 - Added konsole panel (thanks to Mickael Marchand)
1924
1925 Changes from 0.10 to 0.11
1926 - Added a patch by Bart Verwilst to provide automatic service registration
1927 (thanks!)
1928 - Added "Hide Menu" function
1929 - Improved server connection code to stop konversation freezes at startup
1930 - Server lag calculation after reconnect fixed
1931 - Implemented own async lookup class to throw out broken QDns
1932 - Added prelimnary application icons
1933 - Send File in dcc panel now works
1934 - Added Send File context menu item in text views
1935 - Added dialog for Resume / Overwrite DCC Get files
1936 - Added large paste warning dialog
1937 - Close Buttons on tabs are now an option
1938 - Added context menu on tabs with close item
1939 - Added ALT+1 - ALT+9 for switching tabs
1940 - Applied a big patch by Alex Zepeda. Thanks!
1941 - First working DCOP implementation
1942 - Implemented a simple search dialog
1943 - Added a raw log pane
1944
1945 Changes from 0.9 to 0.10
1946 - Font encodings are now set via KCharsets
1947 - Implemented different identities
1948 - Added double click actions to nick list and notify list
1949 - Added support for ASCII-BEL
1950 - Added custom spacing and margin
1951 - Added close buttons for the tabs
1952 - Redesign of the color configuration dialog
1953 - Switched to kapp->config() to properly remember dialog status
1954 - Color code parsing now works with QRegExp
1955 - CTCP-Ping now works
1956 - Removed files that are no longer needed
1957 - Updated German translation
1958
1959 Changes from 0.8 to 0.9
1960 - Added strikeout support (untested yet)
1961 - Added Swedish translation, done by Karolina Lindqvist (thanks!)
1962 - Added optional timestamps to chat windows
1963 - Quick Buttons and Channel Mode Buttons can now be hidden
1964 - Added support for multi channel joins
1965 - Added #include "sourcefile.moc" to all Q_OBJECTS to speed up compiles
1966 - Added support for autoconnect to server
1967 - Inserted a QSplitter between channel text and nick list
1968 - Added support for background colors
1969 - Reduced flickering on blinking tabs
1970 - Added experimental support for foreign language characters
1971 - Added ignore list functionality
1972 - Added away / unaway messages
1973 - DCC folder can now be selected vial GUI
1974 - Applied a patch by Barak Bloch to fix foreign character set behaviour
1975 (thanks!)
1976 - Updated German translation
1977
1978 Changes from 0.7 to 0.8:
1979 - DCCs can now be opened (started) using the 'open' button
1980 - DCCs can now be aborted using the 'abort' button
1981 - Added support for /users reply
1982 - Added support for /invite and 341 reply
1983 - Added support for 401 error reply
1984 - Added /smsg for "silent messages"
1985 - Text and Nicklist-Fonts can now be selected via GUI
1986 - Changed server ping response again to make dalnet ircd happy
1987 - Fixed nicklist sorting in channels
1988 - Switched to kdevelop 2.1.4 to hopefully fix some compile problems
1989 - Made Notices appear a bit different
1990 - DCC recipient list now gets sorted
1991 - Made text widget not scroll when scroll bar isn't completely down
1992 - Parsed WHOIS messages into human readable form
1993 - Pasting multiline text into input lines now behaves as expected
1994 - Hilights now honor the sending nick, too (patch by Suran. Thanks!)
1995 - You can now hilight all your own lines independently
1996 - Fixed the problem in the appearance dialog with font names
1997 - Added DCC error dialogs
1998 - Quit/Nickchange/Kicks are now only reported in channels where the nick
1999 actually is in
2000 - Fixed bug with lockups on defective logfiles
2001 - Added support for EUR currency symbol
2002 - Added keyboard handling to navigate between pages
2003 - Code cleanup in nick list
2004 - Added first support for custom colors in nick list
2005 - Added application dsescription for the 'About' dialog
2006 - Major restructuring of the server status panel