Warning, /network/konversation/ChangeLog is written in an unsupported language. File is not indexed.

0001 Changes from Konversation 1.7.6 to 1.7.7:
0002 Konversation v1.7.7 is a small translation update & bugfix release improving the
0003 icons in the nick list with SVG options for HiDPI support and a new variant of
0004 the default nick icon theme to work with dark UI colors.
0006 * Fixed outdated color of existing nick items in the list after system color change
0007 * Fixed accidental large potential nick sorting timeout
0008 * Fixed tweak input box size to stop the text jumping around when selected
0009 * Fixed unneeded and potentially encoding switching re-encoding of key
0010 * Fixed disconnect for wrong slot for Chat::/TransferRecv::sendReverseAck
0011 * Support SVG nick icon themes, switch default to SVG
0012 * Add dark variant of default nick icon theme
0014 Changes from Konversation 1.7.5 to 1.7.6:
0015 Konversation v1.7.6 is a small translation update & bugfix release fixing
0016 the build with Qt >= 5.13 and polishing the configuration dialog a bit.
0018 * Fixed loading of nick icon theme to deal with multiple copies
0019 * Fixed configuration dialogs to have consistent indentation of
0020   subordinate options as well as spacings between labels & fields
0021 * Fixed building against Qt 5.15.
0022 * Fixed building against Qt 5.13.
0024 Changes from Konversation 1.7.4 to 1.7.5:
0025 Konversation v1.7.5 is a small bugfix release fixing the build with Qt
0026 5.11.
0028 * Fixed building against Qt 5.11.
0030 Changes from Konversation 1.7.3 to 1.7.4:
0031 Konversation v1.7.4 is a small bugfix release addressing a font settings
0032 regression that crept into v1.7.3.
0034 * Fixed a bug causing the size of a custom chat text view font set via
0035   the configuration dialog to be ignored. A font size modification done
0036   via the Enlarge/Shrink Font Size actions is now applied on top of
0037   the configured size (or the system default font size, respectively).
0039 Changes from Konversation 1.7.2 to 1.7.3:
0040 While the Konversation team is currently hard at work on the upcoming
0041 major version 2.0 (which will debut an all-new UI and Matrix support,
0042 and pave the way for mobile versions), we continue to support users of
0043 the stable version 1.7 with maintenance releases. Konversation v1.7.3
0044 re-enables the lost channel mode buttons, adds minor UI refinements and
0045 includes fixes for several annoyances and crashes. Most notable in this
0046 regard are fixed color scheme handling for the treelist version of the
0047 tab bar, and crash fixes in IRC v3 extended-join and IRC color
0048 formatting code parsing.
0050 * Added a copy action to the context menu of nicknames in the chat text
0051   view.
0052 * Re-enabled channel mode buttons.
0053 * Reduced emission of Unicode directional control characters in the chat
0054   text view. Unnecessary control characters could sometimes cause problems
0055   with copying text from Konversation and pasting it into terminal
0056   applications, confusing them.
0057 * Fixed handling of nick and channel prefix characters potentially using
0058   the same set of symbols.
0059 * Removed redundant escaping of angle brackets in GECOS ("realname") field.
0060 * The nickname combobox will no longer change the nickname to the current
0061   value whenvever it loses focus.
0062 * Fixed color scheme handling in the treelist version on the tab bar,
0063   fixing an issue where the background and text color of the selected
0064   item would sometimes be the same, rendering the item unreadable.
0065 * Fixed handling of IRC URLs for channels starting with more than one #,
0066   addressing a percent-encoding problem with bookmarks of them.
0067 * Fixed custom chat text view font family reverting to system default font
0068   family upon using the increase/decrease font size actions.
0069 * Fixed chat text view font size adjusted via the increase/decrease font
0070   size actions reverting to configuration default when OK'ing the config
0071   dialog.
0072 * Fixed incorrect checkbox states in the Channel Invite dialog.
0073 * Fixed a crash in IRC v3 extended-join parsing.
0074 * Fixed a crash in parsing IRC color formatting codes.
0075 * Fixed a minor memory leak in the Join Channel dialog code.
0076 * Removed unnecessary nickname list debug message sent as warning.
0078 Changes from Konversation 1.7.1 to 1.7.2:
0079 Konversation v1.7.2 is a repackage of v1.7.1 with incomplete and
0080 badly maintained translations removed. They were accidentally included
0081 with the v1.7.1 release. There are no code changes in this release.
0083 Changes from Konversation 1.7 to 1.7.1:
0084 Konversation v1.7.1 is a maintenance release that addresses issues with
0085 some of the new features introduced in the last major release, such as
0086 SASL EXTERNAL and server-time support, along with other minor fixes. As
0087 per usual this maintenance release also ships the latest round of
0088 translation updates.
0090 * Fixed requesting the znc.in/server-time-iso capability from the server.
0091 * Fixed SASL EXTERNAL authentication without an account name set in the
0092   Identity settings.
0093 * Fixed clicking on nickname links containing the ` character.
0094 * Fixed the Highlight page in the Configure Konversation dialog not
0095   enabling/disabling the Apply button correctly.
0096 * Minor cleanups in application metadata setup code.
0098 Changes from Konversation 1.7-rc1 to 1.7:
0099 Konversation v1.7 is a major feature release focusing on greatly expanded
0100 protocol support, with newly-added support for many more IRC v3
0101 extensions and the much-requested support for SASL EXTERNAL and
0102 'server-time'. Many bugfixes and cleanups along with reinstated features
0103 initially lost in the first Frameworks 5-based release series v1.6.x are
0104 included as well. Finally, the handbook has been thoroughly refreshed in
0105 this release, and building and running on macOS and Windows have seen
0106 several fixes.
0108 * Two-finger scroll on the vertical channel list is now less sensitive.
0109 * Fixed execution of bundled scripts showing an error about locating
0110   translation files when running on a system without kde4-config installed.
0111 * Fixed a bug in executable command line parsing for passed URLs.
0112 * Fixed Konversation failing to start on Windows systems without D-Bus
0113   (it would previously exit if it failed to initialize its D-Bus service).
0114 * Ported from deprecated KDE Frameworks APIs to 5.24+ API (v1.7 requires
0115   Frameworks 5.25 or higher).
0117 Changes from Konversation 1.6.2 to 1.7-rc1:
0118 Konversation v1.7-rc1 is the first release candidate for the next major
0119 version of Konversation. The focus of the v1.7 release is on greatly
0120 expanded protocol support, with newly-added support for many more IRC v3
0121 extensions and the much-requested support for SASL EXTERNAL and
0122 'server-time'. Many bugfixes and cleanups along with reinstated features
0123 initially lost in the first Frameworks 5-based release series v1.6.x are
0124 included as well. Finally, the handbook has been thoroughly refreshed in
0125 this release and building on Mac and Windows has seen several fixes.
0127 * Improved support for CAP negotiation.
0128 * Output for CAP LS and CAP LIST is now shown in the server status view.
0129 * Added support for IRCv3 CAP MULTI-PREFIX.
0130 * Added support for IRCv3 CAP AWAY-NOTIFY.
0131 * Added support for IRCv3 CAP ACCOUNT-NOTIFY.
0132 * Added support for IRCv3 CAP EXTENDED-JOIN.
0133 * Added support for IRCv3 CAP USERHOST-IN-NAMES.
0134 * Added support for extended WHO.
0135 * Added support for server-time and message tags.
0136 * Added support for znc.in/server-time-iso, making buffer playback from
0137   ZNC much nicer.
0138 * Added support for the SASL EXTERNAL authentication mechanism, e.g. needed
0139   for using Tor with freenode.
0140 * Redesigned search bar in chat views.
0141 * Added support for font zooming to chat views.
0142 * Improved bi-di text handling in chat views.
0143 * The --restart command line argument works again.
0144 * Fixed command line argument parsing when Konversation is already running
0145 * Fixed tab completion not working when pressing tab after a full existing
0146   nickname as prefix.
0147 * Fixed the topic editor not updating when the topic changes.
0148 * Fixed nickname links including the pipe character.
0149 * Fixed the Invite dialog not closing on OK.
0150 * Fixed angle bracket display in OSD message bubbles.
0151 * Fixes to core protocol handling, e.g. in prefix parsing.
0152 * Fixed crash on close when the nick menu has been shown.
0153 * Fixed crash on quit.
0154 * Fixed crash when closing views.
0155 * Fixed crash in DCC resume dialogs without a Retry button.
0156 * Fixed incorrect icon for the global away action.
0157 * Minor UI layout cleanups, e.g. in the Behavior -> Chat Window settings page
0158   and fixes to tooltips.
0159 * Code cleanups, e.g. removal of unused settings and related code paths,
0160   porting away from deprecated API, and more.
0161 * Overhauled and corrected handbook & refreshed handbook screenshots to
0162   Frameworks 5 version.
0163 * Build fixes for Windows (MSVC compatibility and winsock linking).
0164 * The Windows and Mac builds now have app icons.
0165 * Improved code portability by using different byte swapping routines.
0166 * Updated AppStream metadata.
0167 * Konversation now depends on Qt 5.5+ and KDE Frameworks 5.25+.
0169 Changes from Konversation 1.6.1 to 1.6.2:
0170 Konversation 1.6.2 is a hotfix release that fixes an unfortunate severe
0171 crash condition that crept into 1.6.1.
0173 * Fixed a bug causing various operations on server list data to crash, e.g.
0174   pressing "Edit" on a server sub-item in the Server List dialog.
0175 * Translations for AppData metadata added in v1.6.1.
0177 Changes from Konversation 1.6 to 1.6.1:
0178 Konversation 1.6.1 is a maintenance release that contains various bug fixes
0179 for the stable KDE Frameworks 5-based version of Konversation.
0181 * Added an option to allow a server to bypass the global proxy settings.
0182 * Fixed a crash when changing the Qt style engine.
0183 * Fixed a crash when running "/exec -showpath" with no script name.
0184 * Fixed notification events for DCC Chats not working.
0185 * Fixed crash when closing the DCC Status tab.
0186 * Fixed crashes with the ISO-2022-JP encoding.
0187 * Fixed the "Close All Open Queries" action not working properly.
0188 * Minor UI polish, e.g. the margin under the nicklist when the Quick Button
0189   grid is disabled or emtpy.
0190 * Fixed missing icons on the Next/Previous buttons in the search bar.
0191 * On screens to small to fit Konversation's configuration dialog, the
0192   dialog will now show scrollbars around its content instead of the dialog
0193   buttons being forced off-screen.
0194 * Konversation now sets its window icon in a way that causes a hi-res icon
0195   to be available in window switchers such as Plasma's Alt+Tab UI.
0196 * Removed the spell checking language submenu from the context menu of the
0197   input bar - KDE Frameworks 5 now contains this upstream, leading to two
0198   submenus.
0199 * Fixed installing the Oxygen nickname list theme.
0200 * Fixed changes to the tab bar font's font weight being applied to the chat
0201   text area.
0202 * Minor changes to tooltips to support the Wayland windowing system better.
0203 * Fixed the Windows build.
0204 * Added KCrash (DrKonqi) support.
0205 * Improved support for the KDE Kiosk framework, fixing checks for the
0206   "shell_command" privilege.
0207 * Added AppData metadata for app stores.
0209 Changes from Konversation 1.6.1-beta1 to 1.6:
0210 Konversation 1.6 is the first stable release of Konversation built on the
0211 new KDE Frameworks 5 and Qt 5 library sets, improving integration into many
0212 desktop environments, including Plasma Desktop 5, and adding first support
0213 for hi-dpi scaling. In addition to porting and reworking things for hi-dpi
0214 scaling, a number of behavior improvements and bug fixes were implemented,
0215 particularly improved nickname selection behavior at connection time and
0216 better layout behavior for the channel topic area.
0218 Unfortunately the 1.6 release removes support for integrating with the KDE
0219 Address Book, as the interfaces Konversation was using to achieve this were
0220 dropped from KDE Frameworks. A replacement is in the works in the form of
0221 the new KPeople library, which we intend to use in a future release. Using
0222 KPeople, Konversation will then be able to tightly integrate with various
0223 contact management-related features in Plasma Desktop.
0225 * Improved support for character set aliases via KCharsets.
0226 * Improved behavior when reconnecting and Konversation had to use an
0227   alternate nickname for the previous connection because the preferred
0228   nickname was already in use: Konversation will now try harder to go back
0229   to nicknames sorted earlier in the identity's nickname list, instead of
0230   advancing down the list without checking whether earlier nicknames have
0231   become available again.
0232 * Konversation will no longer give up trying to connect when only a single
0233   nickname is configured and not available at connection time. Instead, it
0234   will do as many reconnection attempts as allowed by user configuration.
0235 * Fixed incorrect size calculations for the channel topic text label causing
0236   cut-off text and unwanted collapsing of the topic area.
0237 * Fixed a bug causing auto-connect not to connect to networks in the order
0238   they are listed in the Server List dialog.
0239 * Fixed a bug causing the main window not to be raised when an Konversation
0240   is started an additional time and the window is currently minimized.
0241 * The default tabs position is now 'Left', i.e. the treelist version of the
0242   tab bar.
0243 * Tabs can now be reordered by drag and drop again.
0244 * Fixed various rendering issues in the treelist version of the tab bar and
0245   made it high-DPI scaling-capable.
0246 * Fixed a bug causing Channel List tabs not to be sorted below the status
0247   tab of the server they belong to in the treelist version of the tab bar,
0248   and corrupt its contents.
0249 * Fixed margins in the Edit Network dialog.
0250 * Improved wording and correctness of several interface messages.
0251 * Fixed a bug causing some interface messages and labels not to use their
0252   translated versions when running with a language other than US English.
0253 * Fixed a bug causing Konversation not to generate default command aliases
0254   for installed scripts at startup anymore.
0255 * The bundled 'cmd' script now defaults to trying to decode command output
0256   as Utf-8 even when run on Python 2.
0257 * Fixed the bundled 'bug' script not working.
0258 * Fixed naming of bundled icons.
0259 * Konversation now opts into Qt's high-DPI pixmap handling.
0260 * Adjusted build system to use co-installable version of qca-qt5.
0261 * Fixed build failures on Windows.
0263 Changes from Konversation 1.5.1 to 1.6-beta1:
0264 Konversation 1.6-beta1 is the first release of Konversation built on the new
0265 KDE Frameworks 5 and Qt 5 library sets, and intended to allow you to help us
0266 test and shake out the remaining issues in the ported code. With stability
0267 despite many changes under the hood as the primary goal, the 1.6 release will
0268 not bring any new features, though Frameworks 5 and Qt 5 offer a host of
0269 efficiency improvements over the old stack and will enable us to support
0270 hi-dpi scaling and Wayland going forward.
0272 Known issues in this beta include a lack of addressbook integration support
0273 (the needed Frameworks dependencies have not yet been released), drag and
0274 drop support for tabs being disabled, and minor visual polish issues,
0275 including some visual assets not having been updated to match KDE's new
0276 "Breeze" visual identity yet. We expect to resolve these issues in upcoming
0277 releases.
0279 * Konversation now depends on KDE Frameworks v5.2.0 and Qt v5.3.0.
0280 * The default nickname list theme has been updated to KDE's new Breeze visual
0281   identity.
0282 * Notification events now have non-generic titles to prevent Plasma Desktop 5
0283   from merging events from different sources.
0284 * Fixed a bug causing the "Focus Input Bar" action to be enabled/disabled at
0285   incorrect times.
0287 Changes from 1.5 to 1.5.1:
0288 Konversation 1.5.1 is a maintenance release containing only bug fixes. The
0289 included changes address several minor behavioral defects and a low-risk DoS
0290 security defect in the Blowfish ECB support. The KDE Platform version depen-
0291 dency has increased to v4.9.0 to gain access to newer Qt socket transport
0292 security flags.
0294 * Fixed a bug causing wildcards in command alias replacement patterns not to
0295   be expanded.
0296 * Fixed a bug causing auto-joining of channels not starting in # or & to some-
0297   times fail because the auto-join command was generated before we got the
0298   CHANTYPES pronouncement by the server.
0299 * Added a size sanity check for incoming Blowfish ECB blocks. The blind
0300   assumption of incoming blocks being the expected 12 bytes could lead to a
0301   crash or up to 11 byte information leak due to an out-of-bounds read. This
0302   fixes CVE-2014-8483.
0303 * Enabling SSL/TLS support for connections will now advertise the protocols
0304   Qt considers secure by default, instead of being hardcoded to TLSv1.
0305 * Fixed the bundled 'sysinfo' script not coping with empty lines in
0306   /etc/os-release.
0307 * Made disk space info in the bundled 'sysinfo' script more robust by forcing
0308   the C locale for 'df'.
0309 * Added an audio player type hint for Cantata to the bundled 'media' script.
0310 * Fixed some minor comparison logic errors turned up by static analysis.
0311 * Konversation now depends on KDE Platform v4.9.0 or higher.
0314 Changes from 1.5-rc2 to 1.5:
0315 Konversation 1.5 adds numerous major features over the previous stable release.
0316 Of particular note are support for SASL and client certificate authentication,
0317 all-new topic management UI, overhauled authentication UI in the Identities
0318 dialog, per-tab spell-checking language settings, user-configurable nick context
0319 menu entries, mouse spring-loading on tabs, all-new versions of major bundled
0320 scripts and improved Ignore and Watched Nicknames systems. Many under-the-hood
0321 changes to improve codec support and general performance, along with the usual
0322 slew of bug fixes all over, further sweeten the deal. Don't miss out on reading
0323 about various other new features and more fixes in the full changelogs since
0324 version 1.4, too!
0326 * Expanded interface translations.
0329 Changes from 1.5-rc1 to 1.5-rc2:
0330 After a (too) long wait, Konversation 1.5-rc2 is hopefully our final bid for
0331 your aid in assuring the quality of a now-impending final release. Quite a few
0332 gnarly bugs have fallen since rc1; some of them long-standing, others were
0333 introduced along with the features that made their debut in the preceding test
0334 release. Of particular interest to many users will be robustness improvements
0335 in the Watched Nicks system and the lifting of certain restrictions on Unicode
0336 support that had been in place as a by-product of supporting older, defective
0337 Qt versions. See the changelog for more details!
0339 * Fixed a bug that could cause the Watched Nicks system to report all nicknames
0340   as offline if the Watched Nicks tab had been opened prior to a reconnect, even
0341   if that was not the case.
0342 * Fixed a bug where a URL with IRC Color markups caused to show colors, even if
0343   'Allow Colored Text in IRC Messages' was disabled.
0344 * Fixed a bug where spaces in the path to the pre-connect shell command were
0345   handled incorrectly. Tilde expansion now occurs as well.
0346 * Clicking a channel link starting with more than one # character would join a
0347   channel starting with one # too few; this has been fixed.
0348 * Fixed auto-replace not being applied to messages that are sent from the
0349   Large Paste Warning dialog.
0350 * Made the action to manually apply Auto Replace work in the Paste Editor
0351   as well.
0352 * Fixed irc(s):// URL support registration in KDE 4.9.3+ (kdelibs versions 4.9.3
0353   and higher give precedence to .desktop file x-scheme-handler MIME type regis-
0354   tration over .protocol files installed by an app, but Konversation did not
0355   announce URL support via an %u expando in the Exec key).
0356 * Build fix for win32.
0357 * Added a workaround for a rare crash on Mac OS X due to bugs in the implementa-
0358   tion of Qt's font metrics calculation on that platform.
0359 * Fixed a bug causing changes of the 'a' user mode to set/remove Owner status on
0360   nickname list entries.
0361 * Minor UI cleanup in the Channel Settings dialog.
0362 * Enabled freedesktop.org Startup Notification support.
0363 * Recent releases of Konversation filtered all Unicode characters outside the
0364   Basic Multilingual Plane due to a confluence of grave bugs in the Utf-8
0365   support in Qt. As fixed versions of Qt have now circulated for some time and
0366   are required to build Konversation, this restriction on Unicode support has
0367   now been lifted.
0368 * Fixed a bug that caused the desktop notification (KNotify) event for nicks
0369   on the Watched Nicknames list coming online or dropping offline not to fire
0370   when notifications for the associated connection's status tab were disabled.
0371 * Fixed the bundled 'sysinfo' script crashing on non-ascii characters in
0372   /etc/os-release when run on Python 2.
0373 * The bundled 'sysinfo' script now tries harder to determine the current CPU
0374   clock frequencies (it now looks at sys/.../cpufreq/scaling_cur_freq in addi-
0375   tion to /proc/cpuinfo).
0376 * Fixed a bug causing the flood fill tool in DCC Whiteboard tabs not to use
0377   the correct color after using the color picker tool to set it.
0378 * Launching the default browser when clicking on links now works properly
0379   again on Windows.
0380 * Fixed a bug causing certain combinations of sorting and filtering in Channel
0381   List tabs not to work correctly, leading to partially unsorted list entries.
0382 * Minor rewordings and cleanups in UI text and the handbook for clarity and
0383   correctness, e.g. the "Notify" notification event is now known as "Nick on-
0384   line".
0385 * More information sources are now taken into account to update Konversation's
0386   idea of whether a particular nick is identified with services or not (infor-
0387   mation from IRC numeric 330 was previously discarded).
0388 * Fixed a bug causing Konversation to attempt to PART a channel that's no
0389   longer actually joined when closing a channel tab after having been kicked
0390   from the channel.
0391 * Some included PNG image files were badly encoded, this has been addressed.
0392 * Fixed a bug causing the file URL for an authentication certificate in the
0393   Identities dialog to be forgotten across application restarts.
0394 * The warning about text in the topic editor exceeding the server-allowed
0395   limit now calculates the threshold more correctly, taking encoding and IRC
0396   formatting expandos into account.
0397 * Konversation now depends on KDE Platform v4.7.0 or higher and Qt v4.7.0 or
0398   higher.
0401 Changes from 1.4 to 1.5-rc1:
0402 Konversation 1.5-rc1 is the first test release for our next major release. The
0403 1.5 development cycle has lead to significant new features in many areas of the
0404 application, from support for SASL and client certificate authentication on
0405 the protocol side, to all-new topic management UI, overhauled authentication
0406 UI, per-tab spell-checking language settings, user-configurable nick context
0407 menu entries and mouse spring-loading in the frontend and all-new versions of
0408 major bundled scripts. Improved Ignore, Watched Nicknames and Edit Paste
0409 functionality and behavior, performance improvements in some critical codepaths
0410 and many other bug fixes and minor UI touch-ups round things out.
0413 * The user interface for the Auto Identify settings in the Identities dialog has
0414   been extended by a combo box that allows choosing the type of authentification
0415   to be performed. Depending on the chosen type, different input fields are shown
0416   below the combo box.
0417 * The server password-based authentification supported by some networks is now
0418   configurable in the Identities dialog as well, making it more discoverable and
0419   allowing to keep Auto Identify settings generally with the Identity rather than
0420   requiring going through the Edit Server dialog.
0421 * SASL PLAIN authentification is now supported. To use, pick SASL as the Auto
0422   Identify type in the Identities dialog and fill in your account name and
0423   password.
0424 * Standard NickServ authentification has been further improved. The command sent
0425   to to the service, previously hard-coded to "identify", is now configurable,
0426   and the name of the service now defaults to "nickserv" in new identities
0427   (the previous default was an empty field).
0428 * Added support for authenticating via a SSL Client Certificate in the form of
0429   a PEM file if Konversation is built against KDE Platform v4.8.3 or higher.
0430   Choosing this type of authentication in the Identities dialog forces SSL to be
0431   enabled for a connection, overriding any server settings.
0432 * Added the ability to set a different spell-checking language for every tab,
0433   from the context menu of the input box. The chosen language setting is pre-
0434   served across application restarts.
0435 * The Topic tab in the Channel Options dialog has been redesigned and
0436   rewritten from scratch, featuring a much improved UI and many bug fixes:
0437   - In place of the previous UI with a multi-column topic history list and two
0438     distinct text fields for browsing and editing there is now only the list
0439     and an edit field. The list has been redesigned to show all of the data for
0440     a topic, with visually distinct headers serving to delineate individual
0441     entries and showing the author and timestamp, above the full text for each
0442     topic.
0443   - Entries in the history list now sport a context menu allowing to copy the
0444     topic text and querying the topic author.
0445   - A new search field above the history list allows filtering it by looking
0446     for the search string in the text, author name and timestamp of all topics.
0447   - When an encryption key is set for a channel an attempt is now made to
0448     decrypt all of the topics in the history, not just the current topic.
0449   - When editing the topic any text entered past the server's maximum
0450     allowed topic length will now be drawn in the color scheme's negative
0451     text color (i.e. usually red). Further, if Konversation has been built
0452     against KDE Platform v4.7.0 or higher, a warning is shown at the bottom
0453     of the text field explaining the limit and offering the option - via a
0454     button - to delete the excess text.
0455   - The text cursor is now automatically placed at the end of the edit field,
0456     making the common use case of adding to the topic more convenient.
0457   - The location of the splitter handle inbetween the history list and the edit
0458     is now remembered across all Channel Options dialogs and application
0459     restarts.
0460   - Storing the topic history for each channel now takes up less memory, and
0461     general efficiency in handling with topic data has been improved greatly.
0462   - Fixed a bug causing redundant entries to accumulate in the topic history
0463     across reconnects when the last entry in the history corresponds to the
0464     topic given by the server at rejoin.
0465   - Fixed a bug causing HTML tags (e.g. <title>) in topics to be invisible in
0466     the edit field.
0467   - Fixed a bug causing the "Undo" action in the edit field to occassionally
0468     stop working, making it impossible to return the field to the unmodified
0469     state in which its contents sync to the selected history list entry.
0470   - Fixed a bug causing the topic not to return to its encrypted form when the
0471     decryption key for a channel has been deleted.
0472   - Fixed a bug causing the author of a topic to sometimes be shown as the full
0473     user mask instead of consistenty showing only the nickname.
0474   - Fixed a bug causing the "Unknown" placeholder that is used when the author
0475     of a topic is unknown not to be translated.
0476   - Fixed the incorrect tab key order in the Topic tab.
0477 * Fixed a bug causing the topic at the top of channel tabs not to return to its
0478   encrypted form after the decryption key for a channel has been deleted.
0479 * The size of the Channel Options dialog is now synchronized between the dialogs
0480   for different channels and remembered across application restarts.
0481 * The widths of the columns in the Ban List tab in the Channel Options dialog
0482   is now synchronized across all Channel Options dialogs.
0483 * The Quick Buttons options now feature a new checkbox that toggles whether Quick
0484   Buttons that operate on nicknames will be shown alongside other nickname-
0485   related actions in context menus throughout Konversation. Essentially, this
0486   allows for placing custom actions in nickname context menus.
0487 * The list of placeholders available in Quick Button patterns now mention the
0488   previously undocumented "%k" placeholder for the current channel's key and is
0489   sorted alphabetically.
0490 * When a Quick Button pattern replaces the current input box contents (due to
0491   the presence of the "%n" expando in the pattern) they are now added to the
0492   input box history first.
0493 * Quick Button patterns now support a new "%i" placeholder that is replaced with
0494   the current contents of the input box.
0495 * Both the regular tab bar and its listview version now implement "spring-
0496   loading". That is, when dragging something onto a tab and holding it there,
0497   the hovered tab will now be switched to after a brief delay. This allows
0498   switching to the intended tab as part of dragging text or a file to its
0499   destination, e.g. the tab's input bar or nicklist.
0500 * All types of tabs which sport a prominent input widget will now see focus
0501   moved to that widget and the first keypress redirected when focus is on the
0502   treelist version of the tab bar while starting to type. In previous releases
0503   this already worked for chat tabs with their usual input bars, now it also
0504   works for e.g. Channel List tabs and Konsole tabs.
0505 * A '/umode' convenience command to set modes on self has been added.
0506 * The 'Mode change' notification event now sports a proper text payload
0507   describing what has happened.
0508 * The system tray icon now shows an overlay icon when global away is enabled.
0509 * The behavior of the 'Show/Hide Konversation' action has been simplified and
0510   tuned to do the correct thing in more scenarios. Previously, invoking the
0511   action would hide the window even if it was not actually visible due to
0512   being covered by other windows, because merely not being hidden, not being
0513   minimized and being on the current desktop was already considered being
0514   shown. A much simpler approach of always showing the window if it is not the
0515   currently active window (and, as before, moving it to the current desktop as
0516   needed) and hiding it when it is has been adopted now instead.
0517 * Added an option to restrict logging to private conversations (queries, DCC
0518   chats).
0519 * Added an action to manually apply the user-configured auto-replace rules to
0520   the input box contents without sending the message, enabling user review
0521   before doing so. The relative cursor position is preserved or the cursor is
0522   moved to the end of an intersecting replacement insertion when auto-replace
0523   is applied.
0524 * Server status tabs for networks listed in the Server List dialog now have a
0525   "Connect at Startup" checkbox in their context menu, similar to the "Join on
0526   Connect" checkbox in the context menu of channel tabs. Both set options also
0527   available from the Server List.
0528 * Removing newlines in the Edit Paste dialog can now handle Windows-style
0529   carriage return line breaks and whitespace characters other than ASCII 0x20.
0530 * Part and Quit messages now show the hostmask of the subject, consistent with
0531   Join messages.
0532 * The nickname list theme preview in the configuration dialog now uses the same
0533   background color as the actual nickname lists.
0534 * Raw log tabs now use color coding to visually differenciate inbound and
0535   outbound messages, using the server message and channel message colors from
0536   the color settings respectively.
0537 * The DCC Status transfer list update interval now depends on the graphics effects
0538   level setting in KDE System Settings, changing between 500, 1000 and 2000 ms
0539   depending on the level set.
0540 * Fixed a bug causing the input box height not to be adjusted appropriately to
0541   fit the contents when the "Input box expands with text" option is enabled and
0542   the window is resized horizontally, causing the text to rewrap.
0543 * Fixed a bug causing the context menu for an item in the DCC Status transfer
0544   list to appear in the wrong position.
0545 * The double-click action command for Watched Nicks list entries now supports
0546   command aliases.
0547 * Fixed a bug causing wildcard expansion to be performed on the input box
0548   contents when they start with a Command Alias (rather than just expanding
0549   wildcards in the Alias replacement pattern).
0550 * The bundled 'media' script has been rewritten from scratch to implement the
0551   MPRIS2 standard for interfacing with media players - and only the MPRIS2
0552   standard. This means losing support for a number of legacy players which do
0553   not support MPRIS2, but also gaining support for a number of popular modern
0554   players which do (e.g. Tomahawk). Additionally, there are often third-party
0555   MPRIS2 bridges or plugins for players which do not support it natively. The
0556   script now also features much-improved error handling and reporting in the
0557   face of misbehaving players or configuration errors.
0558 * The bundled 'sysinfo' script has been rewritten from scratch. The new version
0559   offers more accurate CPU and KDE version information (accounting for multiple
0560   cores and frequency scaling for the former, and making the difference between
0561   running inside KDE or just using the KDE Platform for the latter), as well as
0562   the addition of distro name and release information and generally improved
0563   robustness in data acquisition. Finally, the output format is now easier to
0564   configure, adopting an approach similar to the one used in the 'media' script.
0565 * The bundled 'sayclip' script has been rewritten from scratch, removing the
0566   now-redundant flood handling found in the old version (Konversation takes
0567   care of this implicitly today) and improving the error handling in case
0568   Klipper cannot be contacted.
0569 * The bundled 'bug' script has been rewritten from scratch, featuring improved
0570   error handling and adding internationalization support.
0571 * Fixed a bug causing the What's This help tooltip for nickname lists to show
0572   the regular user icon instead of the away icon as the away icon example.
0573 * The desktop notification for a completed incoming DCC file transfer now offers
0574   an action to open/run the received file.
0575 * Various fixed to tab stops and margins in the configuration dialog pages.
0576 * Minor UI fixes for the Queue Tuner (opened by /queuetuner), correcting icon
0577   use and button labels.
0578 * Removed excess white space from several warning dialog messages.
0579 * Fixed a bug causing the Watched Nicks to spam the active tab with repeated
0580   WHOIS requests for someone on the Watched Nicks List after opening a query
0581   tab to them while they were offline.
0582 * Fixed several bugs in preserving per-tab encoding settings across application
0583   restarts.
0584 * Link opening now properly respects KDE's file type associating settings instead
0585   of always opening a web browser.
0586 * Fix Konversation not saving the unchecked "... a channel invitation is received"
0587   warning dialog option in the Warning Dialogs list in the configuration dialog
0588 * Unchecking the "... a channel invitation is received" warning dialog option
0589   in the Warning Dialogs list in the configuration dialog now sets the behavior
0590   for future channel join invitations to always joining them. The actual dialog
0591   allows chosing between always accepting and always ignoring, but until this
0592   can be exposed in the configuration dialog, always joining them makes this
0593   option consistent to all other warning dialog options.
0594 * The default behavior upon receiving a channel join invitation is now to ask
0595   the user, instead of silently accepting the invitation. The latter behavior
0596   accidentally snuck into 1.4 and is considered a bug.
0597 * Added a workaround for behavior in the Phonon multimedia library that could
0598   lead to crashes on application quit when using custom highlight notification
0599   sounds.
0600 * Fixed a bug causing an ambiguous shortcut warning dialog when using the
0601   default ESC keyboard shortcut to invoke the Focus Input Box action after the
0602   search has been opened and the Focus New Tabs option was disabled while a new
0603   tab was opened.
0604 * Fixed a bug causing multiple ignore list entries with the same pattern not to
0605   be preserved across application restarts. Instead only the latest entry with
0606   the pattern would.
0607 * Fixed a bug causing the tab label for open log viewer tabs to be set to
0608   "ChatWindowObject" when switching the tab bar position between top or bottom
0609   and left.
0610 * Made the code turning channel names into clickable links more strict about what
0611   types of trailing punctuation it incorporates into the link.
0612 * Fixed bugs causing currently joined channels not to react correctly to changes
0613   in the enabled state of the Automatic User Information Lookup setting.
0614   Previously, enabling the lookup would not actually start it, and disabling it
0615   would only take effect after one last lookup was performed. Both now take
0616   effect immediately.
0617 * The reaction to a change of the Automatic User Information Lookup interval
0618   setting has been improved considerably: Whereas previously Konversation would
0619   simply wait out the current interval scheduled using the old setting value and
0620   only then schedule the next lookup using the new value, it now reschedules the
0621   next lookup to occur as if the new value had been set all along, or, if the
0622   time elapsed since the last lookup was performed already exceeds the new value,
0623   comes as close as possible by performing a lookup immediately.
0624 * All forms of opening a query (the '/query' command, clicking a nickname in the
0625   chat text display, double-clicking in the nickname list or the nickname list
0626   context menu action) now consistently move focus to an existing matching query
0627   tab, matching the behavior of various forms of joining an already-joined channel.
0628   Previously this was only true for the '/query' command.
0629 * Minor visual (the selection decoration for server items now spans the whole row)
0630   and behavioral (when collapsing a network while one of its a server is selected,
0631   the selection is now moved to the network item instead of becoming invisible)
0632   improvements in the Server List dialog.
0633 * Fixed a bug causing the option to automatically focus new query tabs not to work
0634   correctly.
0635 * Fixed a bug causing IRC formatting state not to be reset at the end of a topic
0636   when showing it in a channel's chat text display, potentially causing the rest
0637   of the line to be malformatted.
0638 * If built against KDE Platform v4.8.3 or higher, the date column in the Url
0639   Catcher will now immediately reflect changes to the date format made in KDE's
0640   System Settings application.
0641 * Fixed a bug causing an application crash in response to an (illegal) '/unban
0642   <#channel>' command.
0643 * Showing line and paragraph indicators in the Edit Paste dialog's text entry
0644   field unfortunately had to be disabled for the time being due to a bug in
0645   the underlying Qt code.
0646 * Leaving the "Use custom version reply" option's text field empty now disables
0647   responding to CTCP VERSION requests entirely instead of sending empty responses.
0648 * Fixed the vertical height of rows in the Channel Invites dialog possibly cutting
0649   off the checkboxes depending on the checkbox and font sizes in play.
0650 * A basic framework to support the IRC Client Capabilities Extension ("CAP") has
0651   been added.
0652 * Performance optimizations and code cleanup for processing NAMES messages
0653   from the server.
0654 * Performance improvements have been applied to hotpaths in the protocol
0655   implementation.
0656 * Debug builds of Konversation now understand a "--nui" command line argument to
0657   disable the check for whether Konversation is already running, thus allowing
0658   multiple instances of Konversation to be started. This is known to cause bugs
0659   (e.g. for anything started by Konversation that relies on the D-Bus service
0660   name of the running instance being org.kde.konversation: this means all
0661   bundled scripts) and can wreak havoc with the config file - it's meant only
0662   for use by developers / for debugging purposes.
0663 * Markup cleanups in the handbook and visual improvements to handbook icons in
0664   the PDF export on http://doc.kde.org.
0665 * Fixed a compilation problem on 64bit Windows.
0666 * Code cleanups for warnings issued by clang.
0667 * Build system improvements for kdepimlibs includes handling.
0668 * Konversation now depends on KDE Platform v4.6.0 or higher and Qt v4.7.0 or
0669   higher.
0672 Changes from 1.4-beta1 to 1.4:
0673 The dominant theme in Konversation v1.4 is improvements and feature additions to
0674 the user interface, particularly to text views, dialogs, (context) menus and
0675 input line commands. However, nearly all areas of the application have seen some
0676 amount of improvements in this release, as is to be expected given the
0677 relatively long release cycle: Connection behavior, IRC protocol handling,
0678 scripting support, encryption support, user documentation - new features, polish
0679 and certainly also bug fixes are to be found in all of them. In summary, we hope
0680 you will enjoy the best Konversation yet.
0682 The changelog for this release starts with a (very) brief summary of major
0683 highlights relative to v1.3.1, followed by the short list of changes since
0684 v1.4-beta1. If you skipped the beta, please do refer to the changelog for
0685 v1.4-beta1 as well, which is highly detailed and categorized for your reading
0686 pleasure.
0688 A brief selection of highlights since v1.3.1:
0689 * URL and email detection in text views has been rewritten from scratch, greatly
0690   improving the handling of various types of URLs and the contexts they might
0691   appear in.
0692 * Extensive improvements to IRC formatting code handling, including the return
0693   of background color support.
0694 * Extensive, sometimes full rewrites of user interface elements such as nearly
0695   all context menus, the URL Catcher and the Warning Dialogs system for a long
0696   list of user interface improvements and bug fixes.
0697 * Improved SSL connection behavior.
0698 * Translation support and various other improvements in several bundled scripts.
0699 * Expanded Python scripting support via the introduction of an API support
0700   package.
0701 * Support for more IRC numerics.
0702 * Various bugfixes to input line command handling and connection behavior.
0704 Changes since 1.4-beta1:
0705 * Fixed +q Type A channel modes (Freenode's "quiet bans") being reported as
0706   awarding channel owner privileges.
0707 * Fixed a bug causing the +r channel mode to be incorrectly described as "server
0708   reop" in the user interface.
0709 * Improved the description string for the +l channel mode.
0710 * Fixed the parameter handling of the example script in the handbook's section
0711   on scripting.
0712 * Fixed build with KDE Platform versions below 4.6.0. The minimum required
0713   version is 4.4.3.
0714 * The '/setkey' command now supports keys that have spaces in them, by treating
0715   all parameters after the first as part of the key.
0716 * The 'Edit Multiline Paste' editor now puts initial focus on the text field,
0717   rather than the Send button.
0718 * Added a sanity check to avoid a crash while processing broken, empty NAMES
0719   messages from a server, encountered with the shroudBNC bouncer.
0722 Changes from 1.3.1 to 1.4-beta1:
0723 Konversation v1.4-beta1 is the first pre-release leading up to our next major
0724 release. A dominant theme in this release cycle have been improvements and
0725 feature additions to the user interface, particularly to text views, dialogs,
0726 menus and input line commands. However, as you might expect given the amount of
0727 time since the last release (sorry about that :-), improvements are to be found
0728 in nearly all areas of the application, including connection behavior, IRC
0729 protocol handling, scripting support, and more. Please have a look at the
0730 changelog for a short summary of the major highlights, as well as the usual
0731 extensive coverage of the details.
0733 General User interface (more UI changes in individual sections below):
0734 * The code handling the context menus of chat text views (including the context
0735   menus for nicks and channel links), channel nickname list views and topic
0736   areas has been rewritten from scratch, resulting in a long list of bug fixes
0737   and consistency and efficiency improvements:
0738   - Numerous consistency problems in the area of which actions are available in
0739     which context menus have been addressed. For example, the chat text nick
0740     context menu used to lack many of the actions available in the nickname list
0741     context menu.
0742   - Numerous actions that require an established connection (e.g. everything in
0743     the "Modes" submenu of nick context menus or the DCC actions) used to not
0744     get disabled when loss of connection occurred. Others did get disabled, but
0745     not consistently in all menus in which they are available. Still others,
0746     such as the "Add to Watched Nicks" action, used to get disabled
0747     unnecessarily. All of this has been addressed.
0748   - Toggle actions used to appear and behave inconsistently: The nickname list
0749     context menu showed either "Ignore" or "Unignore" actions as applicable,
0750     while the chat text view nick context menu used a checkable item. Meanwhile,
0751     the "Add to Watched Nicknames" action had no corresponding action to remove
0752     a nick from the Watched Nicks Online list at all. All of this has been
0753     fixed, going with the "Ignore"/"Unignore" style of the nickname list context
0754     menu (i.e. there's now a "Remove from Watched Nicks").
0755   - If built against Qt 4.7, the topic area now uses the same context menus as
0756     the chat text view (with the exception of the inappropriate "Find Text.."
0757     action in the basic context menu), enabling a lot of functionality missing
0758     otherwise.
0759   - Some actions used to be shown in menus inappropriately, e.g. the "Channel
0760     Settings" action in the chat text view context menu of a connection status
0761     tab or the "Open Logfile" action in the same context menu of a raw log tab.
0762     This has been addressed.
0763   - The behavior of many of the actions is now more consistent with their input
0764     line equivalents. For example, clicking "Join Channel" in a link to an
0765     already-joined channel will now focus the existing channel tab, the same as
0766     the /join command would do. Previously, nothing would happen.
0767   - Fixed a bug causing the nick and channel link context menus in the chat text
0768     view of a channel tab to get disabled after having been kicked from the
0769     channel.
0770   - Fixed a bug causing the "Send Email..." action to always be disabled, even
0771     when any of the associated address book entries did have an email address on
0772     file.
0773   - The display of helpful titles repeating the nick/channel at the top of the
0774     chat text view nick and channel link context menus has been fixed - it
0775     previously got broken in the KDE 4 port.
0776   - The nick and channel link context menus now mark the action that occurs when
0777     clicking either as the default action of the context menu, improving the
0778     appearance with UI styles that visually distinguish the default action.
0779   - General improvements to the layout of menus, often with an aim for improved
0780     consistency with other KDE applications.
0781   - Numerous actions that were missing icons now have them.
0782   - The consistency of keyboard accelerators between the various menus has been
0783     improved.
0784   - Various actions in the nickname list context menu now appropriately use a
0785     singular or plural form for their text label depending on the number of
0786     selected nicks the menu operates on.
0787   - Improved memory efficiency by using single global instances of the various
0788     menus, rather than for example having two separate instances of the nick
0789     context menu - one for the chat text view, one for the nickname list view -
0790     for every channel tab.
0791   - The code implementing the various actions was in many cases redundantly
0792     implemented in three different places, for some even in four. This
0793     staggering code duplication has been done away with.
0794   - Links now have an "Open With..." action that opens a dialog allowing to
0795     choose in which application to open the link.
0796 * The URL Catcher has been rewritten from scratch, bringing about a number of
0797   improvements and bug fixes:
0798   - It is now possible to select multiple list entries, and all of the
0799     selection-related actions, such as "Open" or "Add Bookmark", can now operate
0800     on multiple selected entries ("Add Bookmark" will offer to add all selected
0801     entries as a new bookmark folder, for example).
0802   - Reasonable default sorting: The list is now sorted by the "Date" column in
0803     descending order the first time the URL Catcher is opened, so that the
0804     newest URLs are found at the top. Previously, the list was sorted by the
0805     "From" column in ascending order by default.
0806   - The list data is no longer stored in memory twice while the URL Catcher is
0807     open. Data handling is generally more efficient.
0808   - The list entry context menu has been cleaned up, now showing only the
0809     actions applicable to individual entries.
0810   - The list now automatically receives keyboard focus when switching to the URL
0811     Catcher tab.
0812   - When saving the list to disk, the file dialog to pick the destination file
0813     will now ask before overwriting an existing file of the same name.
0814   - The date and time in the header of a saved list file is now formatted
0815     according to the user's locale settings.
0816   - Fixed a bug causing the opening of caught irc:// and ircs:// URLs not to
0817     work.
0818   - Fixed a bug causing the "Date" column to sort alphabetically rather than
0819     chronologically.
0820   - Fixed a bug causing the deletion of list entries not to work.
0821   - Fixed a bug causing a 1px remnant of tree branch lines to be visible along
0822     the left edge of list entries.
0823   - An unnecessary margin around the toolbar and the search line edit has been
0824     removed.
0825   - Fixed a bug causing the URL Catcher tab to claim to be eligible to receive
0826     chat text messages that have the frontmost eligible tab as their recipient
0827     despite it not actually possessing the means to display them, resulting in a
0828     crash when such a message occurred.
0829 * The Warning Dialogs system has been overhauled, with improved wording in the
0830   listing in the configuration dialog (which now also contains the previously
0831   missing warning when minimizing to the system tray) and further improvements
0832   to individual warning dialogs, such as the addition of previously missing
0833   Cancel buttons.
0834 * Added a "Show/Hide Konversation" action that can be used to toggle the
0835   minimized state of the Konversation window or, if the tray icon is enabled,
0836   its visibility. Additionally, the window will always be moved to the current
0837   virtual desktop if shown using this action (if the window is already shown on
0838   another desktop, it will be moved to the current desktop rather than hidden).
0839 * It's now possible to give the "Next Active Tab" shortcut a global keyboard
0840   shortcut, and when triggered the action will always show, raise and focus the
0841   Konversation window (as needed), regardless of whether it will also perform a
0842   tab switch. This allows "Next Active Tab" to double as a "get me the
0843   Konversation window and the tab that just caused my notifications to go off"
0844   global shortcut.
0845 * Clicking the Insert button in the "Insert Character" dialog will no longer
0846   immediately close the dialog, making it easier to insert multiple characters
0847   in quick succession.
0848 * Double-clicking a character in the "Insert Character" dialog will now insert
0849   it into the input line.
0850 * The "Insert Character" dialog now sports a search line.
0851 * The widths of the columns and the sort column and direction in the Channel
0852   Option dialog's ban list are now remembered across application restarts.
0853 * The "Rejoin Channel" context menu action, shown when a channel could not be
0854   rejoined automatically on reconnect as well as after having been kicked from a
0855   channel, will now appear above the "Close Tab" action rather than at the end
0856   of the context menu, so "Close Tab" is always the last item.
0857 * The "Ok" button in the "Edit Multiline Paste" editor has been renamed to
0858   "Send" to communicate more clearly that clicking it will send the editor
0859   contents to the server.
0860 * Formatting control codes (e.g. for colors) in user real names are now filtered
0861   out before the names are shown in the nickname list when the "Show real names
0862   in nickname list" option is enabled.
0863 * The layout of user information tooltips (shown e.g. when hovering a nick in
0864   the nickname list or the header area of a query tab) has been improved
0865   slightly.
0866 * Fixed bugs causing the tooltip for the adjacent rather than the hovered item
0867   to be shown when hovering the mouse pointer near the upper or lower edges of
0868   an item in the nickname list or the listview version of the tab bar (tooltips
0869   are only shown on the latter when the listview is too narrow to fit its
0870   contents, to provide the unelided tab names).
0871 * Fixed bug causing the IRC Color Chooser dialog to only show 15 colors instead
0872   of the available 16.
0873 * Fixed a bug causing a very wide minimum window width when a query tab with
0874   very long user information in the header area was open.
0875 * Fixed bug causing the opening of URLs via the "Open URL" sub-menu in the list
0876   entry context menu in Channel List tabs not to work.
0877 * Fixed a bug causing actions that are meant to operate on the active tab (e.g.
0878   "Close Tab" invoked by the default shortcut Ctrl+W) to operate on a different
0879   tab after the "Join on Connect" action in that tab's context menu had been
0880   used.
0881 * Fixed a bug causing the state of the Show/Hide Menubar action not to be
0882   updated correctly when hiding the menubar was canceled from the warning
0883   dialog.
0884 * Fixed a bug causing the "Delete" button in the "Server List" dialog to
0885   incorrectly show a "Network needs to have at least one server." error dialog
0886   when trying to delete servers, even when the deletion would in fact leave the
0887   network with one or more servers.
0888 * Fixed a bug causing the active tab's text label not to be greyed out when its
0889   IRC server connection is cut.
0890 * Got rid of some too large margins in the "Edit Network" dialog.
0892 Text views:
0893 * Added support for KDE Web Shortcuts when built against KDE Platform 4.5 or
0894   higher: The context menu for selected text in a chat text view then offers a
0895   submenu by which the selected text can be used in a web search with any of the
0896   enabled search providers. The resulting search URL is opened in the system's
0897   default wen browser after clicking on the search provider in the submenu.
0898 * Added support for ircs:// URLs, the 's' standing for 'SSL'. It is supported
0899   both for opening and for bookmarking. If an ircs:// URL matches a server
0900   configured in the server list or refers to a network name instead of a
0901   specific server, the directive from the URL overrides the state of the SSL
0902   setting in the configuration.
0903 * Detection of URLs and email addresses in chat text views to turn them into
0904   clickable links has been much improved. An incomplete overview of notable
0905   cases:
0906   - Unicode characters in URLs are now handled properly, enabling support for
0907     example for international domain names.
0908   - Protocol-less links not starting in "www.", such as the short URLs popular
0909     these days ("bit.ly/foo" and similar), are now recognized.
0910   - Arbitrary protocols (e.g. "http://" or "message://") are now recognized;
0911     previously only a small hand-picked and insufficient set was.
0912   - The check that avoids balanced a pair of parentheses around an URL becoming
0913     part of the link now works for more than one level of balanced parentheses.
0914   - Aside from balanced pairs of parentheses, also square and other forms of
0915     brackets are now handled properly.
0916   - Trailing question marks no longer become part of the link.
0917   - URLs using uncommon schemas, e.g. Apple message:// URLs or Wolfram Alpha
0918     URLs, are now handled properly.
0919   - Numerous improvements to email link handling: User names containing the plus
0920     sign are now handled correctly, opening email links from the URL Catcher
0921     works now and others.
0922   - The URL detection for the "Open URL" sub-menu in the list entry context menu
0923     in Channel List tabs now uses the same infrastructure as link detection
0924     elsewhere rather than separate code, making it massively better compared to
0925     previous versions.
0926   - Average speed of link detection has improved slightly.
0927 * Added support for dragging web and email address links found in topic areas.
0928 * IRC formatting markup (colors, bold, italic, etc.) support in chat text views
0929   and the topic editor has been improved significantly:
0930   - Background colors are now supported.
0931   - The reverse color formatting character is now supported.
0932   - To emphasize usability, links are now consistently displayed using the link
0933     and background colors from the configuration dialog, regardless of preceding
0934     formatting markup or formatting markup located within the link.
0935   - Formatting markup located within links in incoming messages no longer
0936     results in those links being broken.
0937   - Fixed bugs resulting in incorrect display of messages containing multiple
0938     formatting characters.
0939   - Improved robustness in the face of invalid color codes.
0940   - Formatting markup in the topic editor's topic history listing is now shown
0941     in the human-readable format that is also used for entry, making it much
0942     easier to derive a new topic from an old one that contains formatting
0943     markup.
0944   - Fixed a bug causing '/topic <channel>' to display the topic of <channel>
0945     with formatting markup stripped.
0946 * Join/Part/Nick messages can now be selectively hidden based on whether the
0947   nickname the message is about has been active in the respective channel in the
0948   last 10 minutes, last hour, last day or last week. Previously it was all or
0949   nothing.
0950 * Rewrote chat text view wallpaper image support to avoid rendering problems
0951   some users were experiencing.
0952 * Fixed a bug causing some user hostmasks in chat text lines about channel topic
0953   author information to be treated as email addresses and thus turned into
0954   clickable links. They would also pollute the URL Catcher.
0955 * The code backing the marker and remember lines has been rewritten to work
0956   around bugs in Qt that could cause crashes, especially when running
0957   Konversation against Qt v4.7.4 or newer (see QTBUG-20916 for more).
0959 Input lines:
0960 * Added a "Focus Input Box" action that puts keyboard focus on the input box.
0961   The default shortcut is the Escape key.
0962 * The '(away)' label shown next to input lines when away now has a context menu
0963   with actions to change the away message or return from away state.
0964 * Pressing the Tab key when the cursor is at the start of the input box now
0965   checks whether the remembered nickname is currently attending the channel
0966   before repeating the last successful completion.
0968 Commands:
0969 * The syntax for the '/cycle' command is now '/CYCLE [-APP | -SERVER] [channel |
0970   nickname]'. Whereas '/cycle' previously only allowed you to cycle a channel
0971   from the input line of that same channel, you can now specify the target
0972   explicitly. '-app' will restart Konversation (as with the new 'Restart' action
0973   mentioned in the "Command line arguments" section, preservation of the command
0974   line arguments the app was started with requires KDE Platform 4.6 Alpha 1 or
0975   higher to work) and '--server' will close all tabs belonging to the current
0976   connection and then create a new connection with the same settings as the old
0977   one (plus it will attempt to rejoin all previously open channels). Both are
0978   new abilities for the command. A '/cycle' without parameters issued in server,
0979   channel and query tabs is equivalent to specifying '-server' or the current
0980   channel or query, respectively -- the ability to cycle a query is also new.
0981 * The '/clear' command now supports a channel or query argument to clear, as
0982   well as an -all parameter to clear all views.
0983 * The '/notify' command now displays more useful output after adding and
0984   removing and when summarizing Watched Nicks.
0985 * Fixed a bug causing adding of nicknames to the Watched Nicks Online list via
0986   the '/notify' command to fail.
0987 * Added an optional '-showpath' parameter to the '/exec' command that shows the
0988   path at which the given script file was found in the chat text view, i.e.
0989   '/exec -showpath media'.
0990 * Commands that accept parameters in the form "-foo" will now also understand "
0991   --foo".
0992 * The '/dns' command used to block the UI while trying to resolve the parameter
0993   it was given, potentially causing an extended lock-up of the application when
0994   the system has serious DNS trouble. This has been resolved; '/dns' is now
0995   fully non-blocking.
0996 * Trying to use the '/me' command from a tab that doesn't support it will now
0997   cause an appropriate error message to be displayed.
0998 * Fixed a bug causing the '/kickban' command not use the default kick reason
0999   from the Identity settings if no reason was explicitly specified.
1000 * Fixed a bug that could cause the '/list' command to open the Channel List tab
1001   for the wrong connection.
1002 * Fixed a bug causing '/list <search pattern>' to close an existing Channel List
1003   tab (the intended behavior for a parameter-less '/list') rather than update
1004   the active filter and refresh the list.
1006 Highlights and notifications:
1007 * Added a new "Chat Windows" field to the Highlight configuration to optionally
1008   restrict the list of chat windows a given highlight event may be triggered in
1009   to those named in the field, separated by comma or semicolon.
1010 * Resolved a conflict between the highlight system and the graphical emoticon
1011   support that was causing unintended highlights when the filesystem path to an
1012   emoticon image file shown in the chat text view matched any of the configured
1013   highlights.
1014 * Fixed bugs in the highlight system caused by it mistakenly operating on the
1015   HTML markup used internally by the chat text views rather than the original
1016   text.
1018 Identities:
1019 * Added a "Default away reason" field to the "Away" tab in the Identities
1020   dialog. The away reason entered there will be used when no away message is
1021   entered manually as an argument to the '/away' or '/aaway' commands, so for
1022   example when Global Away is enabled using the keyboard shortcut.
1023 * "Away Messages" on the "Away" tab of the Identities dialog has been renamed to
1024   "Away Commands".
1026 Watched Nicknames:
1027 * Fixed a bug causing the Watched Nicks Online system to fail to start checking
1028   nickname online status for a network after adding an initial nick to its
1029   Watched Nicks list via the context menu actions or the '/notify' command (it
1030   worked fine via the WNO tab, however).
1032 Bookmarking:
1033 * Fixed a bug causing the bookmark address to be unusable (it would lack the
1034   network name) when bookmarking a tab and the name of the associated network
1035   contains a space or certain other special characters.
1037 Logging:
1038 * Fixed a bug causing pipe symbols to appear in the date/time stamp and next to
1039   the nickname in backlog replay.
1040 * Fixed a bug causing the chat text notification messages originating in the
1041   Watched Nicknames Online system to be logged in HTML format (and thus HTML
1042   source to be displayed e.g. in backlog replay).
1043 * Fixed a bug causing a change of the buffer size setting on a log reader tab's
1044   toolbar not to immediately apply to new log reader tabs opened thereafter.
1045   Instead the buffer size for new tabs would be the size set on the toolbar of
1046   the last log reader tab that got closed, making it easy to unintentionally
1047   undo a change depending on the order in which log reader tabs were closed.
1049 DCC:
1050 * Added a Color Picker tool to DCC WHITEBOARD, to select a color from the image.
1051 * A better version of the information dialog for DCC file transfers is shown
1052   when Konversation is built against KDE Platform 4.5 or higher.
1053 * Fixed a bug causing newly-added DCC file transfers to the list in the DCC
1054   Status tab not to be sorted when using Qt 4.7.
1056 Connection behavior:
1057 * The auto-join on connect feature will now skip over any configured channels
1058   that are invalid as per the IRC server's CHANTYPES rules when sending the join
1059   command(s) to the server, making sure that all valid channels are joined even
1060   on servers that stop parsing join commands on the first invalid channel.
1061   Previously, all configured channels were sent.
1062 * Fixed a bug causing a channel the tab of which was closed while a connection
1063   was in disconnected mode to be rejoined upon reconnect.
1064 * Fixed a (harmless) bug causing unnecessary trailing "." placeholder channel
1065   key segments to be added to the raw format auto-join command (or to the last
1066   of multiple such auto-join commands when the amount of auto-join channels
1067   requires multiple commands to be generated).
1068 * Fixed a regression that could cause an endless loop of reconnection attempts
1069   when issuing a reconnect order to an established connection and the time
1070   needed to establish the new connection was longer than the configured
1071   reconnection delay. It would also cause confusing status messages to be shown
1072   in the connection status tab.
1073 * Cancelling the dialog asking how to deal with SSL errors upon connecting is
1074   now treated as a deliberate disconnect on part of the user, i.e. Konversation
1075   will no longer try to automatically reconnect.
1076 * A disconnect while waiting for user response to an SSL error dialog will no
1077   longer result in an automatic reconnection attempt. Instead, Konversation will
1078   wait for the outcome of the user interaction: If the user decides to ignore
1079   the SSL errors that have occurred, a reconnect will be initiated, otherwise
1080   the connection will remain disconnected.
1081 * Fixed a bug causing a crash when the user chose to accept an invalid
1082   certificate in the SSL error dialog when the connection had timed out in the
1083   meantime.
1084 * Fixed a bug causing the quit message to not always be supplied successfully to
1085   the server when disconnecting.
1086 * Fixed a bug that could cause the "Server found" message to be shown in the
1087   connection status tab before the "Looking for server" message if the DNS
1088   response was already cached.
1089 * Fixed bugs causing the automatic user information lookup, the periodic WHO-on-
1090   self and the periodic PING for a given connection not to be suspended properly
1091   after a disconnect, causing unnecessary wakeups and the potential for these
1092   messages to be sent at inappropriate times in the early phase of a
1093   reconnection attempt.
1094 * Fixed a bug causing a connection failure to reset the lag meter in the status
1095   bar to "Unknown" even when the active tab is not related to the connection
1096   that failed.
1097 * Solid network up/down notifications are now ignored for connections to
1098   localhost.
1100 Scripting and bundled scripts:
1101 * The 'cmd' script, used to run a shell command from within Konversation and
1102   send the output to the server, has been rewritten from scratch to provide the
1103   following improvements:
1104   - Running a command that returns no output or only empty lines used to result
1105     in an error claiming the command does not exist. Now an info message is
1106     shown remarking that the command executed successfully but did not return
1107     any output or only whitespace.
1108   - The script now also works when called from a server status tab - the command
1109     output will be shown to the user rather than sent to the server in that
1110     case.
1111   - The command's error output (stderr) used to be ignored; now it is shown to
1112     the user in the active tab (but not sent to the server).
1113   - Trailing whitespace is now stripped from command output.
1114   - Output lines containing only whitespace are no longer forwarded to
1115     Konversation. As an aside, this also implicitly fixes a bug the old script
1116     used to suffer from that caused it to generate faulty D-Bus calls when
1117     trying to forward empty output lines.
1118 * The bundled 'sysinfo' script now handles the way 'mount' reports bind mounts
1119   on certain newer Linux distributions by collapsing the repeated mentions of
1120   the same volume before calculating the disk space information.
1121 * Scripts executed by Konversation can now access Konversation's current UI
1122   locale in the KONVERSATION_LANG environment variable.
1123 * Konversation now installs an experimental Python scripting support package
1124   named 'konversation' into a subdirectory of its application data directory and
1125   appends all 'konversation/scripting_support/python' directories found in any
1126   KDE application data resource directories (i.e. within $KDEHOME, $KDEDIRS,
1127   etc.) to the PYTHONPATH environment variable available in the script execution
1128   context, thereby allowing Python scripts executed by Konversation to import
1129   the package. The package currently sports modules providing APIs for i18n
1130   support and D-Bus communication with Konversation.
1131 * User-facing information and error message strings in the bundled 'cmd' and
1132   'media' scripts now finally enjoy translation support, making use of the
1133   experimental new Python scripting support package described above.
1134 * The 'media' script now requires Python 2.6 or higher and is compatible with
1135   Python 3.
1137 IRC Protocol:
1138 * Added support for the 475 numeric (ERR_BADCHANNELKEY).
1139 * Added support for the 482 numeric (ERR_CHANOPRIVSNEEDED).
1140 * Added support for UnrealIRCd's 671 numeric.
1141 * Incoming actions (i.e. "/me") without an argument are now handled properly.
1142 * Fixed a number of crashes on illegal data from the server.
1143 * Raw log tabs (/raw) now use percent-recording to depict non-ASCII characters
1144   in raw traffic for much improved usefulness and reliability in the multi-
1145   encoding world of IRC.
1146 * Numeric 437 (ERR_UNAVAILRESOURCE) is now treated like numeric 433
1147   (ERR_NICKNAMEINUSE) during early connection negotiation: The next nickname in
1148   the identity's nickname list is tried, or the user asked for a new one if
1149   necessary. Previously Konversation would just idle in this situation and allow
1150   the connection attempt to time out.
1152 Command line arguments:
1153 * Added '--restart' command line argument and a 'Restart' action that quits and
1154   restart Konversation. Notes: If not already running, the command line argument
1155   has no effect; startup will occur normally. Also, the preservation of command
1156   line arguments across restarts is only supported on KDE Platform 4.6 Alpha 1
1157   and higher, as a required library feature is only available as of that
1158   version.
1159 * Added a '--startupdelay <msec>' command line argument that causes the app to
1160   sleep for the specified amount of milliseconds early during the startup
1161   process, delaying D-Bus activity and UI creation.
1163 System integration:
1164 * Konversation now also registers itself for the irc:// and ircs:// protocols
1165   using the way preferred by freedesktop.org's shared-mime technology rather
1166   than just the KDE-specific way.
1167 * Fixed the tray icon always being in 'active' mode (and thus conflicting with
1168   the Plasma desktop tray's auto-hide behavior) when using the new (and, in this
1169   release, only supported) system tray protocol.
1171 D-Bus interface:
1172 * A D-Bus method call to retrieve the list of channels a particular connection
1173   is currently attending has been added.
1175 Documentation:
1176 * Numerous updates and cleanup in the handbook.
1177 * Fixed a bug causing the Help button in the Configure Konversation dialog not
1178   to open the handbook.
1180 Misc:
1181 * Various small code cleanups inspired by cppcheck.
1183 Build system and dependencies:
1184 * Konversation now depends on KDE Platform v4.4.3 or higher and Qt v4.6.0 or
1185   higher.
1186 * A Python installation is a recommended dependency due to optional but highly
1187   popular bundled scripts and an experimental Python scripting support package
1188   mentioned above.
1189 * Fixed build with KDE4_ENABLE_FINAL.
1190 * The section of the build system required to build user interface and handbook
1191   translations is now always present instead of being added manually to the
1192   tarball at release time, springing into action when the subdirectories
1193   containing the translation files are added to the source tree from KDE SVN,
1194   or remaining dormant otherwise.
1195 * Konversation could crash during Diffie-Hellman key exchange or Blowfish
1196   encryption/decryption if the system's installation of the Qt Cryptographic
1197   Infrastructure (QCA) does not have the required features available (usually
1198   because the qca-ossl provider plugin is not installed). It will now fail
1199   gracefully instead and show helpful error messages in the active tab.
1202 Changes from 1.3 to 1.3.1:
1203 Konversation 1.3.1 is a maintenance release that improves program behavior
1204 and fixes defects, the most serious of which is a regression that unfortu-
1205 nately suck into v1.3, which causes data corruption or even loss of Watched
1206 Nicknames Online lists on application quit. Behavioral improvements are
1207 found in the handling of aborting automatic reconnection attempts after
1208 connection failure and RFC 1459 PING/PONG exchanges. Further notable bug-
1209 fixes have been made to the Edit Network dialog, the handling of system
1210 color schemes and using the ignore list feature to ignore certain CTCP
1211 events.
1214 * In addition to the '/disconnect' command, the graphical 'Disconnect'
1215   action and the '/quit' command can now be used to cancel an in-progress
1216   automatic reconnect in the event of connection failure as well.
1217 * The '/disconnect' and '/reconnect' commands now take optional quit message
1218   parameters.
1219 * Fixed crashes when pressing the "Edit" buttons below the server or
1220   channel lists in the "New Network"/"Edit Network" dialogs after adding
1221   a new server or channel and there was no item selected before in the re-
1222   spective list.
1223 * Fixed bugs causing the "Edit" buttons below the server or channel lists
1224   in the "New Network"/"Edit Network" dialogs to edit the previously selec-
1225   ted list items rather than the ones shown as selected after adding a new
1226   server or channel.
1227 * Fixed a bug that could cause outdated status information for nicks to be
1228   displayed in channel nickname lists after a reconnect.
1229 * Efficiency improvements for channel join.
1230 * Don't send PING in response to PONG if another PING is already scheduled
1231   to be sent in the future. This avoids getting kicked off a server for
1232   flooding when multiple clients are connected to a bouncer that forwards
1233   PONGs to all of them.
1234 * Fixed numerous cases in which Konversation would incorrectly apply the
1235   KDE system color scheme to input lines, nickname lists and the listview
1236   version of the tab bar. This general overhaul of the relevant code also
1237   brought about minor efficiency and memory usage improvements.
1238 * Fixed nickname lists not respecting the "Alternate Background" setting
1239   when set to use custom colors.
1240 * Fixed the listview version of the tab bar not greying out disconnected
1241   tabs when set to use custom colors.
1242 * Fixed a bug causing the processing of incoming CTCP CLIENTINFO and CTCP
1243   TIME requests not to take the ignore list into account.
1244 * The "Insert IRC Color" dialog will now add a leading zero to colors which
1245   have single-digit numbers in the '%C...' string it inserts into the input
1246   line, to allow the text that follows to start with a digit rather than
1247   such a digit getting interpreted as part of the color number.
1248 * Fixed a bug causing the Watched Nicknames Online nickname list for a net-
1249   work to be stored under the wrong network or lost entirely on application
1250   quit.
1251 * Fixed a bug causing the order of the Quick Buttons below the nickname
1252   list in channel tabs to be flipped every time the config dialog was OK'd.
1253 * Improved consistency of the filter fields in the URL Catcher and Channel
1254   List tabs with other KDE applications.
1255 * Correct use of singular or plural unit suffixes for several numeric pre-
1256   ferences in the configuration dialog.
1257 * It is no longer possible to set the auto-way time to the nonsensical
1258   value of zero minutes. Rather, a minimum of one minute is now enforced.
1261 Changes from 1.3-beta1 to 1.3:
1262 Konversation 1.3 debuts a major new feature in the area of Direct-Client-
1263 to-Client (DCC) support: An implementation of the DCC Whiteboard extension
1264 that brings collaborative drawing - think two-player Kolourpaint - to IRC.
1265 It also brings back the integration with KDE's SSL certificate store the
1266 KDE 3 version enjoyed and expands support for auto-away to the Windows and
1267 Mac OS X platforms thanks to both recent advances in the KDE 4 platform and
1268 new code in Konversation. Interface tweaks, new keyboard shortcuts and many
1269 bugfixes (including a number of new fixes since 1.3-beta1) round things out.
1270 Finally, Konversation now depends on KDE 4.3 and Qt 4.5.
1273 * Fixed build with KDE 4.3.
1274 * When opening an "Edit Network" dialog and adding a new item to one of
1275   the server or channel lists, provided they already contain at least one
1276   item and no selection is made before clicking "Add...", the "Move Down"
1277   button would be enabled afterwards despite no item being selected.
1278   Clicking the button at this point would crash the application. This has
1279   been fixed along with other potential problems in the code that updates
1280   the state of the list control buttons.
1281 * After adding a new item to one of the server or channel lists in "Edit
1282   Network" dialogs, that item will now be selected.
1283 * Fixed a bug causing the file dialog for selecting a new target directory
1284   and file name for an incoming DCC file transfer in the event that the
1285   default path is not writable to complain about being unable to find the
1286   file after clicking "OK" when no file of the chosen name at the chosen
1287   location exists already.
1288 * Fixed a bug causing the file dialog for selecting a new target directory
1289   and file name for an incoming DCC file transfer in the event that the
1290   default path is not writable to lose the file name written in the "Lo-
1291   cation" field (by default, the original file name) when changing the
1292   current directory.
1295 Changes from 1.2.3 to 1.3-beta1:
1296 Konversation 1.3-beta1 debuts a major new feature in the area of Direct
1297 Client-to-Client (DCC) support: An implementation of the DCC Whiteboard
1298 extension that brings collaborative drawing - think two-player Kolour-
1299 paint - to IRC. It also brings back the integration with KDE's SSL certi-
1300 ficate store the KDE 3 version enjoyed and expands support for auto-away
1301 to the Windows and Mac OS X platforms thanks to both recent advances in
1302 the KDE 4 platform and new code in Konversation. Interface tweaks, new
1303 keyboard shortcuts and many bugfixes round things out. Finally, Konversa-
1304 tion now depends on KDE 4.3 and Qt 4.5.
1307 * Konversation now depends on Qt 4.5 and KDE 4.3.
1308 * Added support for DCC WHITEBOARD, bringing collaborative drawing to
1309   IRC.
1310 * When showing the dialog informing the user about the local target
1311   file for an incoming DCC file transfer already existing that dialog
1312   now includes the sizes of the local file and the file the sender is
1313   offering up.
1314 * Fixed a bug causing either an empty line or a few characters of gar-
1315   bage to be placed in the clipboard in place of marker/remember lines
1316   when copying chat text containing such lines.
1317 * Fixed a bug causing quotation marks, ampersands and angle brackets
1318   in chat messages to be displayed as HTML entities in the OSD.
1319 * The "Clear All Windows" action will now also resets the notification
1320   state of all tabs (i.e. removes active new message or highlight no-
1321   tifications from the tab bar).
1322 * Fixed a bug causing the server responses to background data gather-
1323   ing via WHO (to keep the app's idea of its own hostmask up to date,
1324   as well as optionally channel user info) to be displayed in tabs as
1325   if the user had made the requests manually after sending a '/who'
1326   command without parameters.
1327 * Fixed a bug causing a crash when sending '/privmsg' without any pa-
1328   rameters (did not apply to '/msg').
1329 * In previous versions, channel tabs opened in the background (i.e.
1330   while "Focus new tabs" is disabled, as it is by default) would con-
1331   siderably increase the minimum width of the window due to particu-
1332   larities of the Qt layout system. After raising every channel tab
1333   at least once it would then be possible to make the window much
1334   narrower. This unintuitive behavior resulted in confusion as to why
1335   the minimum width of the Konversation window would sometimes vary
1336   greatly. This has been fixed in this version, i.e. it is no longer
1337   necessary to have raised every channel tab at least once to achieve
1338   a reasonable minimum width of the window. This also means that
1339   joining a new channel is now much less likely to resize the window.
1340 * Fixed a bug causing the status bar to become multiple lines in
1341   height when hovering an URL containing percent-encoded line breaks
1342   in the chat text view.
1343 * Fixed a bug making it impossible to scroll the Advanced Modes list
1344   in the Channel Settings dialog when the user doesn't have operator
1345   status in the channel.
1346 * Fixed a crash when selecting more than one completed, failed or
1347   aborted outbound transfer in the "DCC Status" tab and clicking "Re-
1348   send" in their context menu.
1349 * Fixed a bug causing the human-readable mode descriptions used by
1350   default in channel chat text views as well as the Channel Settings
1351   dialog's Advanced Modes list not to be translated.
1352 * When the display of human-readable mode descriptions is enabled
1353   (as it is by default), the Advanced Mode list in the Channel Set-
1354   tings dialog will now show the respective mode characters along-
1355   side them. Previously, only the description was shown. This makes
1356   the list useful as a utility to look up the meaning of obscure
1357   mode characters.
1358 * Fixed a bug causing both the default email client and the default
1359   web browser to be invoked when clicking an email address link in
1360   the chat text view.
1361 * Added a built-in '/sayversion' command that, as opposed to the
1362   bundled '/kdeversion' script, can show the version of both the KDE
1363   Konversation was built against and is running on. It also outputs
1364   the information in a single message instead of several.
1365 * Fixed a bug that would cause the second and following segments of a
1366   text so long that it has to be split into multiple messages when it
1367   is sent to be encoded incorrectly.
1368 * The ASCII 0x1d character is now used to denote italic formatting of
1369   text rather than 0x09, to avoid the conflict with the tab character
1370   that is frequently pasted e.g. from websites with tables.
1371 * Fixed a bug causing the server response to '/whois <nick> <nick>'
1372   not to be displayed on many IRC servers when the nick in questions
1373   is not online at that time (this variant of the WHOIS command is
1374   also used by the GUI actions).
1375 * Fixed a bug causing missing bans in the list in the Channel Settings
1376   dialog on certain (mostly older) IRC servers.
1377 * The text in notification messages used to be wrapped every 50 char-
1378   acters, an old workaround for problems with KDE 3.x's bubble notifi-
1379   cations. This has been removed now since it's no longer needed with
1380   modern notification frontends such as Plasma's, and produces rather
1381   ugly results there.
1382 * Made it possible again to initate DCC file transfers to a query
1383   partner by dragging files or URLs onto the chat text area of the
1384   query.
1385 * When building against the KDE Platform v4.4.3 libraries, the auto-
1386   away functionality will now make use of the new KIdleTime library
1387   to determine user activity and inactivity rather than use its own
1388   code, the primary advantage being that KIdleTime is supported on
1389   non-X11 platforms such as Windows and Mac OS X. In effect, this
1390   means auto-away is now supported on those platforms, depending on
1391   the implementation level in KIdleTime. (The use of KIdleTime can
1392   be explicitly disabled by passing '-DUSE_KIDLETIME=false' to
1393   'cmake', in which case Konversation will fall back to using the
1394   original, X11-specific code and auto-away will only work decently
1395   on an X11 platform.)
1396 * SSL support now integrates with KDE's certificate handling again,
1397   as it used to in the KDE 3 version, made possible by improvements
1398   in the libraries of the KDE Platform v4.3 (the minimum version
1399   supported in this release) and higher.
1400 * Not reacting to an SSL certificat validation error dialog in a
1401   timely manner should no longer result in Konversation locking up.
1402 * In-progress automatic reconnect in the event of connection failure
1403   can now be aborted by using the '/disconnect' command.
1404 * Manually issuing a reconnect order to a connection currently in-
1405   active after having exceeded its maximum number of reconnection
1406   attempts used to result in a single connection attempt after
1407   which it would be announced that the maximum number of reconnect-
1408   ion attempts had been exceeded again. This has been fixed: It will
1409   now make the number of attempts specified as the upper limit in
1410   the application settings.
1411 * Fixed a bug that could cause the selection in the transfer list of
1412   the DCC Status tab to be lost when a new transfer was added to the
1413   list.
1414 * Fixed a bug causing the information panel in the DCC Status tab to
1415   show information for a transfer other than the one selected in the
1416   transfer list after sending a file to oneself for the first time
1417   in a session.
1418 * The frame that used to be around the main window's tab widget when
1419   the tab bar was located either at the bottom or top position has
1420   been removed.
1421 * Improved compatibility with freedesktop.org-compliant notification
1422   frontends other than KDE's. Other frontends could previously show
1423   empty notification message contents due to non-standard content in
1424   the messages.
1425 * Added an action to switch to the last focused tab, making it possi-
1426   ble to quickly switch forth and back between two tabs. The default
1427   keyboard shortcut for this new action is Alt+Space.
1428 * Added a "-local" parameter to the '/amsg' and '/ame' commands that
1429   limits their scope to the channel and query tabs associated with
1430   the same connection as the tab the command is issued in.
1431 * Fixed a bug causing the order of networks in the server list dialog
1432   not to be preserved across application restarts.
1435 Changes from 1.2.2 to 1.2.3:
1436 Konversation 1.2.3 is a hotfix release that improves upon an earlier
1437 fix, originally included in Konversation 1.2.2, that increases the re-
1438 liability of Konversation's interaction with the D-Bus inter-process
1439 communication daemon.
1441 * Increased reliability of interactions with the D-Bus inter-process
1442   communication daemon.
1445 Changes from 1.2.1 to 1.2.2:
1446 Konversation 1.2.2 contains a number of new features, such as support
1447 for passive DCC chat and amarok:// URLs, and a large amount of user
1448 interface improvements to various tabs (e.g. Watched Nicknames Online
1449 and the URL Catcher) and dialogs (e.g. Join Channel). When used with
1450 KDE SC 4.4 it supports the new system tray icon API. A sizable list
1451 of bug fixes round things out; of particular note is a change address-
1452 ing the high CPU usage some users have experienced with Qt 4.6.
1455 * Added support for passive DCC chat.
1456 * Made it possible to accept/reject DCC chats like DCC file transfers.
1457 * Added an option to auto-accept DCC chats (previously it would always
1458   auto-accept).
1459 * Added a confirmation dialog for closing DCC chats, consistent with
1460   other conversation tabs.
1461 * Improved the sanity-checking code for the validity of ports used in
1462   DCC operations.
1463 * Fixed connection attempts possibly stalling when there is a problem
1464   with executing the associated identity's pre-shell command (provided
1465   it has one set at all), and Konversation crashing when it is quit
1466   while a connection attempt is stuck on trying to execute the pre-
1467   shell command.
1468 * Fixed /setkey, /delkey and /showkey treating their target arguments
1469   (i.e. a channel or a query) case-sensitive.
1470 * Fixed the encryption key for a query getting lost if the other end
1471   changes their nickname.
1472 * Added support for KStatusNotifierItem, the new system tray API in
1473   KDE.
1474 * Fixed a bug causing multiple auto-replacements in a single message
1475   not to work.
1476 * Made it possible to include syntax normally used to refer to a sub-
1477   group of the matching pattern as normal text in the replacement pat-
1478   tern of a regular expression auto-replace, by escaping it like this:
1479   %%1.
1480 * Fixed a bug causing an empty MODE message to be sent to the server
1481   preceding the correct one when using /op, /deop and the like.
1482 * Fixed a bug causing as many mode chars as target nicknames given to
1483   commands like /op, /deop etc. to be sent as part of every single re-
1484   sultant MODE messages sent to the server, despite one MODE message
1485   being generated for every group of three target nicknames. I.e. "/op
1486   foo foo foo foo" would result in "MODE +oooo foo foo foo" and "MODE
1487   +oooo foo", when it should only be "+ooo" and "+o", respectively.
1488 * Added support for amarok:// URLs in chat text views and channel to-
1489   pics.
1490 * Fixed a bug causing Konversation to treat "Page Up" and "Page Down"
1491   key events with any modifier (e.g. Ctrl) the same as without any mo-
1492   difier, making such combinations unavailable as shortcuts for other
1493   actions.
1494 * Fixed a bug causing the status bar to remain stuck displaying the
1495   description of a menu action if subsequently hovering other actions
1496   without a description set.
1497 * The Watched Nicknames Online, URL Catcher and Channel List tabs now
1498   use a toolbar at the top rather than a row of buttons at the bottom
1499   for their various actions, consistent with the Log Viewer and the
1500   (redesigned for 1.2) DCC Status tabs. Aside from a nicer UI this has
1501   the side benefit of reducing the minimum window width with any of
1502   these tabs open.
1503 * Further work on reducing the use of the qt3support/kde3support lib-
1504   raries throughout the codebase.
1505 * The design of the search bar has been made more consistent with the
1506   search bars found in other KDE applications (e.g. Konqueror, Konso-
1507   le and KWrite).
1508 * Added a "--noautoconnect" command line argument to disable auto-co-
1509   nnecting to any IRC networks on application startup.
1510 * The invite dialog now has a drop-down offering the options "Always
1511   ask", "Always join" and "Always ignore" for future default behavior,
1512   rather than just a "Don't ask again" checkbox that wasn't sufficient
1513   to cover all scenarios.
1514 * The "Hide Nicklist" action has been renamed "Show Nicklist" to com-
1515   ply with the KDE 4 HIG.
1516 * URLs are no longer decoded before being passed to the web browser,
1517   fixing the opening of some links from the chat text view.
1518 * Fixed a bug causing the application to crash when pressing the left
1519   or right arrow keys after selecting an active file transfer in the
1520   DCC Status tab's transfer list when using Qt 4.6.
1521 * Improved performance of the DCC Status tab's transfer list.
1522 * It's now possible to add nicknames to the Watched Nicknames Online
1523   list, as well as remove them, right from the tab rather than having
1524   to go to the config dialog.
1525 * Fixed a bug that would cause the "Choose Association" KDE address
1526   book integration action to create a new contact in the address book.
1527 * It's now possible to add a nickname to the watch list of all net-
1528   works in the Watched Nicknames Online tab at once.
1529 * Fixed a bug causing the opening of all bookmarks in a bookmark fol-
1530   der at once not to work.
1531 * The ban list interface has seen a facelift. The new way of working
1532   with the list makes it very easy to use an existing list entry as
1533   a starting point, modify it and then decide between replacing the
1534   original ban with the new version or adding it as an additional ban.
1535 * The topic history list in the Channel Settings dialog has seen a
1536   number of behavioral and reliability improvements.
1537 * Updated various dialog layouts to better comply with the alignment
1538   rules of the KDE 4 HIG.
1539 * The URL list in the URL catcher tab now sports a new Date column
1540   and can be sorted. The sorting settings are saved and restored
1541   across sessions.
1542 * Fixed a bug causing the vertical spacing inbetween the regular mode
1543   checkboxen on the "Modes" tab of the Channel Settings dialog to
1544   change when the display of the advanced mode list was toggled or
1545   the dialog was resized.
1546 * The Join Channel dialog now sports a combo box listing all open co-
1547   nnections (and the nicknames used on them, to be able to tell mul-
1548   tiple connections to the same network apart), with the connection
1549   owning the active tab automatically pre-selected. This allows one
1550   to pick the connection to join the channel on regardless of the
1551   active tab at the time the dialog is invoked (e.g. via the keyboard
1552   shortcut). Previously, the dialog would only operate on the connec-
1553   tion owning the active tab (and display it in a static label),
1554   possibly requiring one to switch to a suitable tab first.
1555 * Fixed a bug causing the "Clear History" item in the context menu of
1556   the channel combobox in the "Join Channel" dialog not to clear the
1557   history correctly; while it would be gone for as long as the dialog
1558   was open, it would be back when closing and reopening the dialog.
1559 * Fixed a bug causing a crash on Windows when middle-clicking the chat
1560   text view.
1561 * Fixed a bug causing the pasting of clipboard contents using keyboard
1562   shortcuts not to work when the chat text has keyboard focus.
1563 * Fixed a bug causing the setting or removing of a 'q' channel mode to
1564   be mistakenly announced as giving or taking channel owner privileges
1565   on networks where it's actually a type of ban.
1566 * Fixed a bug causing a crash when pressing the "Ok" button in the
1567   "Join Channel" dialog without entering anything in the dialog's
1568   "Channel:" input field beforehand.
1569 * More robust Unicode handling to make interaction with the D-Bus dae-
1570   mon more reliable.
1573 Changes from 1.2 to 1.2.1:
1574 This second release in the Konversation 1.2.x release series for KDE 4
1575 adds a number of new features to the bookmarks system and support for
1576 reacting to changes in network availability as signaled by KDE's Solid,
1577 along with a number of fixes for bugs discovered since version 1.2 was
1578 released last month.
1581 * Fixed a crash when cancelling the warning dialog that is shown upon
1582   receiving two incoming DCC file transfer requests using the same file
1583   name.
1584 * Fixed a crash when using the "Clear Completed" action in the DCC Sta-
1585   tus tab after having previously used the "Clear" action to remove spe-
1586   cific transfers from the transfer list.
1587 * Fixed a crash when using the "Clear" or "Clear Completed" action in the
1588   DCC Status tab after creating a mixed selection of removable (e.g. com-
1589   pleted, or failed) and non-removable (e.g. sending) transfers and the
1590   last addition to the selection was a removable transfer.
1591 * Added a "Bookmark Tabs as Folder" feature.
1592 * Added the ability to open the contents of an entire bookmark folder at
1593   once (aka "Open Folder in Tabs").
1594 * Made the default generated bookmark titles more verbose: The Format is
1595   now "Channel (Network-or-Server)".
1596 * Added support for reacting to changes in network availability as re-
1597   ported by KDE's Solid subsystem. If the network goes down, Konversa-
1598   tion will now no longer make futile attempts to reconnect the affect-
1599   ed connections. Instead, it will reconnect once the network comes back
1600   up.
1601 * Variable expansion (%B, %C, %I, etc.) is no longer done in text seg-
1602   ments recognized as URLs to avoid clashes with percent-encoded char-
1603   acters in URLs copied from web browsers, such as German umlauts.
1604 * Made tooltips for truncated labels in the listview version of the tab
1605   bar work again with newer versions of Qt.
1606 * Fixed a bug that caused the Watched Nicknames Online list to show the
1607   wrong or no tooltip when hovering a list item with the mouse pointer.
1608 * The default destination folder for incoming DCC file transfers is now
1609   the "Downloads paths" configured in System Settings or the equivalent
1610   in other desktop environments (under the hood, this is a shared XDG
1611   setting).
1612 * Making and then comitting unrelated changes in the Channel Settings
1613   dialog could cause unintentionally setting the channel's topic to an
1614   older version if someone else had changed the topic since the first
1615   time the dialog was opened or while the dialog was open, due to a bug
1616   in the code that avoids such external topic changes interfering with
1617   concurrent local editing of the topic. This has been fixed.
1618 * The contents of the topic edit field in the Channel Settings dialog
1619   will now reflect the selected item in the topic history list until
1620   the user starts editing.
1621 * Fixed a bug that could cause user mode changes occurring directly af-
1622   ter joining a channel not to be reflected by the channel's nickname
1623   list.
1624 * Fixed a bug causing the "Open File" context menu action for DCC file
1625   transfer items in the transfer list in the DCC Status tab not to work
1626   for incoming file transfers.
1627 * Added support for RPL_HOSTHIDDEN.
1630 Changes from 1.2-rc1 to 1.2:
1631 Konversation 1.2 is the first release of Konversation for the KDE 4 app-
1632 lication platform and desktop environment. In addition to preserving the
1633 full functionality of the KDE 3 version, this release offers a signifi-
1634 cant amount of new features and improvements to the user interface, per-
1635 formance, memory usage, energy efficiency, correctness and stability.
1636 Sum total, the changelog of all development releases since Konversation
1637 1.1 and of this final release combined once again make for the longest
1638 changelog in Konversation's release history.
1640 Some of the highlights compared to Konversation 1.1 include support for
1641 SOCKS v5 and HTTP proxies, a redesigned DCC file transfer user interface
1642 (and much improved DCC code under the hood with several new features,
1643 such as support for IPv6 and DCC REJECT), support for UPnP for NAT tra-
1644 versal, rewritten and much improved support for Blowfish encryption (now
1645 supporting DH1080 key exchange, for example), a significantly better per-
1646 forming channel list, a rewrite of the channel nickname lists for better
1647 performance and improved battery-friendlyness, a new channel join invita-
1648 tion user interface, an improved auto-replace feature, expanded media
1649 player support and many improvements to the IRC protocol implementation.
1651 Enjoy!
1654 * When dragging a link from the chat text view, the drag object will now
1655   contain a plain text version in addition to the URL version. This allows
1656   dragging a link to places that don't accept URL drops, such as Konsole,
1657   the Konqueror address bar or Konversation's own input line.
1660 Changes from 1.2-beta1 to 1.2-rc1:
1661 After a pleasantly uneventful two weeks with beta1, this release candida-
1662 te for our first KDE 4 stable release brings a handful of bugfixes that,
1663 while definitely worth having, are fortunately none too scary. We thus ex-
1664 pect the final Konversation 1.2 release to follow in the very near future.
1667 * Fixed the scrollbar thumb not remaining at the bottom when the chat text
1668   view is resized (such as when the window is resized or the input bar in-
1669   creases in height after typing more than one line with auto-expand mode
1670   enabled).
1671 * Fixed a bug that could cause the progress bar for DCC file transfers not
1672   to be updated when "Fast DCC send" was enabled.
1673 * Fixed a bug that could cause a crash when resuming an incoming DCC file
1674   transfer.
1675 * Fixed characters that require the Alt Gr modifier to be typed (such as
1676   the '@' symbol in German keyboard layouts, for example) not causing key-
1677   board focus to move to the input line when typed while the chat text view
1678   has keyboard focus and thus not showing up in the input line.
1679 * Fixed a bug causing both the link and the marker or remember line to be
1680   selected when a line is appended directly after a link that has just been
1681   clicked.
1682 * Fixed a bug causing the automatic scroll-down not to work when more back-
1683   log is replayed than the viewport can show at once at channel join.
1684 * The "Advanced Modes" listing in the "Modes" tab of the Channel Settings
1685   dialog will now properly vertically expand as the dialog is resized even
1686   to a very large height.
1687 * Fixed a bug that could cause a crash while manipulating a channel's ban
1688   list.
1689 * Fixed a bug causing the moving of child tabs of a network tab in the
1690   treelist version of the tab bar not to work using the keyboard shortcuts,
1691   context menu actions or "Window" menu actions.
1694 Changes from 1.2-alpha6 to 1.2-beta1:
1695 Konversation 1.2-beta1 marks the departure from active feature development
1696 for Konversation 1.2 and the entrance into the much-vaunted halls of bug-
1697 fixing-until-the-final-release, which we expect to materialize in early
1698 October. Until then, you can enjoy what this beta has to offer: HTTP and
1699 SOCKS v5 proxy support, further redesign of the DCC Status tab (many of
1700 you will be happy to find the minimum window size with the DCC Status tab
1701 open much reduced now), the long-awaited return of marker and remember
1702 lines and the resurrection of link dragging from the text display widget
1703 are of particular note, but the changelog has the details on a variety of
1704 other additions, plus the usual assortment of bugfixes, as well.
1707 * Added a topic widget for Konsole windows and hooked it up to the KPart's
1708   setWindowCaption signal
1709 * Added tooltips to items in the new DCC transfer lists that describe the
1710   transfer's status more verbosely.
1711 * Fixed the OSD stealing focus when it appears on Windows.
1712 * Running DCC file transfers are now properly aborted on application quit.
1713 * Removed the 'ucs2' encoding from the encoding list, as it is is not sup-
1714   ported on IRC. This also resolves a crash when sending messages after
1715   selecting it (however the crashing codepath has been independently made
1716   more robust as well).
1717 * Fixed a crash when sending a message containing only spaces.
1718 * Added a "Manage Profiles" button to the information area above the ter-
1719   minal area in Konsole tabs.
1720 * Added SOCKS v5 and HTTP proxy support. Proxy credentials are stored in
1721   KWallet.
1722 * Moved the buttons in the DCC Status tab to a toolbar, similar to how
1723   things were already laid out in log viewer tabs.
1724 * Redesigned the DCC transfer info panel in the DCC Status tab to have a
1725   smaller minimum size. This should mean that less people will see their
1726   window size increase when a DCC transfer is initiated, as it reduces
1727   the minimum size of the window with the DCC Status tab open.
1728 * Added a "Clear Completed" item to the DCC Status tab's toolbar.
1729 * Fixed a crash on the processing of illegal lines sent by the server that
1730   contain only spaces (as sent by the buggy lidegw lide.cz gateway script).
1731 * Made DCC transfer speed reporting more reliable.
1732 * Fixed sorting the transfer list in the DCC Status tab by its "Started At"
1733   column. Previously, sorting by that column would sort alphabetically by
1734   the string value of the fields rather than properly by date.
1735 * Fixed the Channel Settings no longer disabling interface elements allow-
1736   ing the manipulation of channel properties when the user lacks the ne-
1737   cessary operator privileges in the channel.
1738 * The position of the splitter handle determining the size of the info pa-
1739   nel in the DCC Status tab is now saved across application restarts.
1740 * Fixed a crash when changing settings after the "Insert Character" dialog
1741   had been used.
1742 * When an attempt to set up a port forward via UPnP fails, an error message
1743   stating as much will now be shown in the currently active or last active
1744   tab for the associated IRC server connection.
1745 * Made the '/amsg' command work properly again.
1746 * Fixed two close icons (one on the left, one on the right) being shown on
1747   tabs when close buttons were enabled and the tabs were in top or bottom
1748   position.
1749 * Fixed incorrect colors in the listview version of the tab bar when ini-
1750   tially switching to it within a session.
1751 * Fixed a regression vs. the KDE 3 version that caused a failure to correct-
1752   ly parse shortened IPv6 addresses except when using RFC 2732-style bracket
1753   notation and explicitly stating a port to connect to.
1754 * Made the display of server address and port number in various connection-
1755   related chat view messages more consistent and IPv6-friendly (with the
1756   '<ip>:<port>' forward previously used, it could be hard to tell where the
1757   IP ended and the port began -- now it's '<ip> (port <port>)').
1758 * Updated the scripting documentation to talk about D-Bus rather than DCOP.
1759 * The initial width of the nickname lists in channel tabs is now more sen-
1760   sible.
1761 * Added back the ability to drag links out of the chat view.
1762 * Resurrected the RTL text support in the chat view.
1763 * Fixed a crash during UPnP discovery when the router doesn't respond in
1764   the expected way.
1765 * Various actions that operate on the active tab (e.g. those found in the
1766   "Insert" menu) are now properly disabled when the last tab is closed.
1767 * Fixed a bug with Qt 4.5 where after closing a tab a tab adjacent to it
1768   would briefly be activated before subsequently activating the tab that
1769   was active before the just closed one (i.e. only noticable when 'a tab
1770   adjacent to the just closed tab' and 'the previously active tab' are not
1771   the same).
1772 * Marker lines and the remember line are back.
1773 * Fixed a bug that could cause queue flushing rates to be entered into the
1774   configuration that would prevent successfully connecting to Freenode and
1775   potentially other IRC networks.
1778 Changes from 1.2-alpha5 to 1.2-alpha6:
1779 Konversation 1.2-alpha6 is primarily a hotfix release addressing a serious
1780 DCC crash that we unfortunately only discovered after releasing alpha5. To
1781 sweeten the offer, however, it also includes a nicer DCC tranfer list that
1782 separates incoming and outgoing transfers into distinct categories, allows
1783 you to enable/disable individual columns and saves the sort column and di-
1784 rection across application restarts. Furthermore, Konsole tabs may now be
1785 renamed and there's also a fix for the handling of certain rare mode cha-
1786 racters.
1789 * The transfer list in the DCC Status tab now separates items into "Inco-
1790   ming Transfers" and "Outgoing Transfers" categories, using the same ca-
1791   tegory headers employed in System Settings and other places throughout
1792   KDE 4.
1793 * It's now possible to enable/disable the display of individual columns of
1794   the transfer list in the DCC Status tab. This is remembered across app-
1795   lication restarts.
1796 * The sort column and direction of the transfer list in the DCC Status tab
1797   is now remembered across application restarts when using Qt 4.5 or higher.
1798 * A "Rename Tab..." action has been added to the context menu of Konsole
1799   tabs.
1800 * Fixed a crash when the client observes channel modes being modified that
1801   carry a parameter when used as user modes.
1802 * Fixed a crash when an incoming active or outgoing passive DCC file trans-
1803   fer either timed out or was manually aborted while in "Connecting" state."
1806 Changes from 1.2-alpha4 to 1.2-alpha5:
1807 Konversation 1.2-alpha5 features significant performance and memory usage
1808 improvements in several areas of the application, such as channel nickname
1809 lists, backlog loading, Channel List tabs and the URL Catcher - the latter
1810 two have also seen a fair number of interface refinements, making them much
1811 more enjoyable to use. The DCC subsystem has seen the addition of IPv6 sup-
1812 port and a '/dcc get' command to accept an incoming file transfer from the
1813 input line. Various smaller additions and improvements have been made as
1814 well, including the usual share of bug fixes.
1817 * Added back "Do not ask again" checkbox missing in the rewritten invita-
1818   tion dialog that appeared in v1.2-alpha4. By implication, the dialog now
1819   also observes the "Automatically join channel on invite" option from the
1820   "Warning Dialogs" page in the configuration dialog again.
1821 * Fixed problems reconnecting an SSL-enabled connection using a self-sign-
1822   ed certificate.
1823 * Fixed a build problem with KDE trunk (i.e. what will one day be KDE 4.4).
1824 * Fixed loading and saving of the settings toggling the invitation and mul-
1825   ti-line paste warning dialogs in the "Warning Dialogs" page of the con-
1826   figuration dialog.
1827 * Improved wording of the description of the invitation dialog setting in
1828   the "Warning Dialogs" page of the configuration dialog to reflect that
1829   the dialog being disabled doesn't imply that the channel the user was
1830   invited to will be joined automatically, as the user might have rejec-
1831   ted the invitation when he got the dialog along with checking "Don't
1832   ask again".
1833 * Decreased memory usage (the objects created for every IRC user encounter-
1834   ed are lighter now).
1835 * Initializing Phonon is now delayed until it is actually needed, resulting
1836   in less memory usage for those not using highlight sound notifications
1837   and less work being done during application startup.
1838 * Fixed DCC file transfer problems with files larger than 4 GB on 32bit sys-
1839   tems, along with some other correctness improvements to the file transfer
1840   code.
1841 * Backlog loading is now more efficient.
1842 * Added IPv6 support for DCC file transfers.
1843 * The fallback default file name for unnamed files received via DCC now con-
1844   tains the date of when the file was received in ISO format.
1845 * Fixed a crash when trying to perform a tab completion with an empty nick-
1846   list (i.e. shortly after joining a big channel, before its nicklist has
1847   been filled in).
1848 * Channel nickname list updating is now more efficient and pleasant to look
1849   at. Rather than resorting the entire list after the addition of a new nick-
1850   name, the nickname is now inserted directly at the correct position (using
1851   a binary search), avoiding a lot of CPU-intensive comparisons between nick-
1852   names. The same optimization is also done for nickname and user status (as
1853   relevant in case "Sort by status" is enabled) changes - rather than trigger-
1854   ing full resorts, items are moved directly to new positions as necessary.
1855   Resorting after both new additions and changes was previously done only
1856   after a delay of one second (as part of a scheme to throttle the update rate
1857   to a maximum of once per second given how CPU-intensive it was), which meant
1858   that new nicknames would initially appear at the end of the list and move to
1859   the correct position only after one second, and that nickname and status
1860   changes were similarly reflected in the sorting only after one second - this
1861   delay has now been eliminated, making the nickname list much snappier in re-
1862   acting to what's going on.
1863   Note however that when more than ten events requiring an update to sorting
1864   occur within one second, a fallback to the old scheme of doing a full resort
1865   at a maximum rate of once per second, after an initial delay of one second,
1866   occurs, as this is believed to be more efficient in situations of very high
1867   activity (such as merges after netsplits). Thus the new scheme described
1868   above should be seen as an additional optimization for the common case.
1869 * In addition to the broad strokes optimization described above, other minor
1870   optimization work has been done on the nickname list updating code, impro-
1871   ving the efficiency of updates further.
1872 * Fixed topic label text color not reacting to system color scheme changes.
1873 * Added a '/dcc get [nick [file]]' command to accept an incoming DCC file
1874   transfer request.
1875 * Fixed a crash when using the 'Insert -> IRC Color...' menu item without
1876   there being any tabs.
1877 * Nickname changes of the discussion partner are now announced in query tabs,
1878   provided the information is available (i.e. when one shares a channel with
1879   the discussion parther, so the server informs Konversation of the nickname
1880   change).
1881 * Fixed building on OpenSolaris.
1882 * The channel item context menu in Channel List tabs now has a "Join Channel"
1883   action, and the list of URLs extracted from the channel topic has been mo-
1884   ved to a sub-menu.
1885 * Increased use of the IRC icons found in recent versions of the Oxygen icon
1886   set.
1887 * Fixed a bug causing the time a user went online not to be displayed in
1888   WHOIS information (provided the server reports it).
1889 * Fixed close button icons not immediately appearing on newly-added tabs when
1890   enabled (a preferences change would cause them to appear).
1891 * A significant revamp of the Channel List code, especially around the way the
1892   list data received from the server is being moved into the UI, has brought
1893   about significantly improved behavior. The application should now no longer
1894   be bogged down for extended periods of time while the list is being process-
1895   ed - in extreme cases, this could even lead to disconnects by timeout.
1896 * The "Apply Filter" button has been removed from the Channel List interface.
1897   Instead, the filter is (re)applied automatically as its settings are chang-
1898   ed, i.e. briefly after stopping to type into the "Filter pattern" field or
1899   after changing one of the spin- or checkboxes.
1900 * Fixed the display of human-readable mode descriptions in place of traditio-
1901   nal mode characters (toggled by the "Show raw mode characters" preference
1902   and only applicable when Konversation knows a description for a given mode
1903   char) being inconsistent between '/mode <channel> and '/mode <channel>/<user>
1904   +/-<mode>' - separate, unequal lists of mode descriptions were being used;
1905   this has been unified now.
1906 * Fixed the "Modes" tab of the Channel Settings dialog not using human-readable
1907   mode descriptions in place of traditional mode characters when the "Show raw
1908   mode characters" preference is disabled (as it is by default) and a descrip-
1909   tion for a given mode char is available.
1910 * Fixed the mode list shown by "Show Advanced Modes" in the "Modes" tab of the
1911   Channel Settings dialog not showing all modes announced as supported by the
1912   server.
1913 * The Channel List, when hovering a list item with the mouse pointer, now shows
1914   a tooltip with the entire topic of the channel when it doesn't fit the topic
1915   column's width.
1916 * Konversation will now display a warning dialog box when the user is trying
1917   to send a character not supported by the chosen encoding.
1918 * When a message containing characters not supported by the chosen encoding
1919   is sent, the chat view will now display the '?' replacements for those cha-
1920   racters that are sent to the IRC server and thus seen by other users. Pre-
1921   viously, the chat view would display the version of the message before
1922   this encoding step, and thus usually show the characters, as the Unicode
1923   character set normally used by KDE/Qt is considerably broader than many
1924   of the encodings that can be selected in Konversation. In other words, the
1925   chat view now accurately portrays what is sent to other users when a mes-
1926   sage contains characters not supported by the active encoding.
1927 * The URL Catcher should now open considerably faster with long lists of
1928   caught URLs and mail addresses.
1929 * The list items in the URL Catcher now have the same context menu as links
1930   in the chat view. Previously there was no context menu.
1931 * Caught mails and mail addresses not coming from an IRC user (an example
1932   would be links contained in a server's Message of the Day text) now have
1933   their "From" field filled in with the tab name instead of it being left
1934   blank in the URL Catcher.
1935 * Fixed a bug causing the DCC Status tab to sometimes prematurely claim a
1936   transfer status of 100%, as well as an unrealistic transfer speed, when
1937   sending a file to another user. The transfer would go on until actually
1938   finished; merely the information shown in the interface was defective.
1939 * Fixed log viewer tabs not observing the chat window background image setting.
1940 * Fixed log viewer tabs not reacting to changes to the chat window background
1941   color or font settings.
1942 * Fixed raw log tabs only applying the chat view background image setting on
1943   configuration changes, not when initially being opened.
1944 * The removal of the frame around the tab widget is now exclusive to KDE 4.3.
1945   We do it by way of enabling document mode for the tab widget (which is new
1946   in Qt 4.5), which renders badly in versions of the Oxygen style found in
1947   KDE versions earlier than 4.3, and the workaround we previously applied to
1948   make it work even with those older Oxygen versions had the unwelcome side-
1949   effect of breaking the application of color preferences to the input bar
1950   and nickname list.
1953 Changes from 1.2-alpha3 to 1.2-alpha4:
1954 Alpha 4 marks a significant milestone on the way to feature completeness
1955 for the v1.2 release of Konversation. New features in this release inclu-
1956 de UPnP NAT traversal support for DCC file transfers and chats, DH1080
1957 key exchange support for Blowfish encryption and the ability to automati-
1958 cally split very long actions (i.e. usage of the '/me' command) into mul-
1959 tiple messages conforming to the maximum length of an IRC message (this
1960 was already supported for regular messages for some time).
1962 Many bugs have also been addressed, including an important fix for invita-
1963 tion dialogs causing disconnects by timeout if they were not dealt with
1964 quickly enough - and not only is the rewritten dialog non-blocking, it also
1965 allows for handling multiple outstanding invitations in a single dialog,
1966 rather than a new dialog being displayed for every additional invitation
1967 received. Other fixes include further interface polish and robustness and
1968 correctness improvements to Blowfish encryption, the Watched Nicks Online
1969 system and the storage of per-tab encoding preferences in the configuration
1970 file.
1972 A closing note for packagers: In this release we have replaced our cus-
1973 tom implementation of the Blowfish encryption algorithm with an optional
1974 dependency on the Qt Cryptographic Architecture (QCA) library in version
1975 2 or higher. By implication, Blowfish encryption support is now optional:
1976 A QCA2-enabled build will have it; a build not using QCA2 will not.
1979 * Changed links to KDE's (and hence our) bug tracker throughout the code-
1980   base to use https://bugs.kde.org/ rather than http://bugs.kde.org/
1981 * Fixed the "Show Menubar" item not getting removed from the chat view
1982   context view after showing the menubar again. Also added a separator
1983   after the item (only visible when it is present).
1984 * Switched the timestamps in log files to use KDE's locale settings for
1985   formatting the date and time, as the equivalent Qt API used previously
1986   seems to look at the value of LC_NUMERIC to detemine the format in Qt
1987   4, which doesn't meet user expectations.
1988 * Fixed the "Date" column in the topic history of the Channel Options
1989   Dialog not using KDE's locale settings to format the value.
1990 * Fixed the "Date" column in the Channel Settings dialog's topic history
1991   sorting alphabetically rather than by date.
1992 * Improved Windows support in the bundled 'media' script.
1993 * Fixed the vertical alignment of the topic label when using Qt 4.5 (it's
1994   now top-aligned rather than vertically centered, i.e. making the topic
1995   area bigger than the topic by dragging the splitter down won't cause
1996   the topic to move down to stay in the vertical center anymore -- Qt 4.5
1997   is needed because a method to retrieve the document margin from the chat
1998   view to use as the top margin for the topic label is new in that version).
1999 * Fixed various chat view messages containing date/time values (channel
2000   created, topic set, online since, ban info) not using KDE's locale set-
2001   tings for their display format.
2002 * Added support for using UPnP for NAT traversal for DCC file transfers
2003   (both active send and passive receive) and DCC chat. When UPnP is ena-
2004   bled in both Konversation and your router, Konversation now knows how
2005   to ask your router to set up the necessary port forward, and also how
2006   to to ask it to remove it later.
2007 * Added support for the KDE 4 version of JuK to the bundled 'media' script.
2008 * Fixed '/msg <channel> <message>' not displaying the resulting message in
2009   the target channel when the user is attending that channel.
2010 * Made the appearance of the line informing about the message being sent
2011   with '/msg <nick|channel> <message>' consistent between channel, query
2012   and status tabs (it now looks like in the former in the latter two as
2013   well).
2014 * Fixed the visualization of '/msg <nick|channel> <message>' (i.e. the
2015   '<-> target> message' line) being shown only after adding the resul-
2016   ting message to the target chat view (if present), causing an odd-look-
2017   ing order if the origin view and the target view are the same.
2018 * Watched Nicknames Online now generally operates on networks by their
2019   internal unique IDs rather than names, enabling it to handle multiple
2020   configured networks with identical names properly.
2021 * Konversation's custom implementation of Blowfish encryption has been
2022   replaced with an optional dependency on the Qt Cryptographic Architec-
2023   ture (QCA) library version 2.
2024 * The '/setkey [nick|channel] <key>' command now recognizes 'cbc:' (ci-
2025   pher-block chaining) and 'ecb:' (electronic codebook) prefixes in the
2026   key field to set a particular Blowfish block cipher mode of operation,
2027   defaulting to the value of a config dialog preference (Behavior -> Co-
2028   nnection-> Encryption -> Default Encryption Type, the default is Elec-
2029   tronic Codebook (ECB)) when no prefix is given.
2030 * Fixed crash when opening links with ' in them when the "Custom Browser"
2031   preference is enabled in Konversation's config dialog.
2032 * Improved consistency of link opening behavior between the chat view, the
2033   topic label and the URL catcher (all three now use the new-in-KDE-4 KTool-
2034   Invocation API to invoke the KDE default browser, whereas the topic label
2035   and the URL catcher were still using KRun until now).
2036 * Fixed a bug that could cause the state of the spell-checking setting for
2037   the input line to be lost across application restarts.
2038 * Added support for considering square brackets ([]) part of URLs.
2039 * Fixed the code producing multiple JOIN commands for auto-join as neces-
2040   sary to stay under the 512 byte limit for a single command to take the
2041   length of the commas in the commands into account when calculating the
2042   distribution of the channels among the multiple lines, as well as not
2043   to list channels falling at the boundary twice, once in the current and
2044   once in the following line. In English: Fixed auto-join with a massive
2045   amount of channels possibly not joining all channels correctly.
2046 * Fixed a bug causing re-joining of password-protected channels to fail
2047   on reconnects when those channels also had another mode with a parame-
2048   ter set.
2049 * Fixed a bug that caused query lines written by the user that are so long
2050   that they need to be split up into multiple messages not to display in
2051   the query text color.
2052 * Fixed a bug causing query lines written by the user that are so long they
2053   need to be split up into multiple messages for sending not to be displayed
2054   in the configured query text color.
2055 * Fixed the status bar showing HTML data when hovering the contents of the
2056   info label area at the top of query tabs. The data was actually supposed
2057   to be displayed as a tooltip (just like the nickname list item tooltips
2058   in channel tabs), and is now.
2059 * Fixed a bug causing the automatic away system to set the user away again
2060   on the next periodic activity check when no further mouse/keyboard acti-
2061   vity occurs after unlocking the screen/ending the screensaver.
2062 * Implemented splitting up of overly long actions (i.e. usage of the
2063   '/me' command) into multiple messages to stay under the 512 byte message
2064   length limit (in raw format) imposed by the IRC protocol. As with the
2065   normal message splitting, this is aware of how multi-byte/variable-width
2066   text encodings and sender hostmask length (which is part of the message on
2067   the receiving end) factor into the matter. Note that only the first message
2068   is actually sent as an action, the other messages are sent as normal messa-
2069   ges - intentionally, as this seemed to make the most sense formatting-wise.
2070 * Fixed the dialog box appearing upon receiving an invitation to join a chan-
2071   nel causing a disconnect by timeout when not being dealt with by the user
2072   swiftly enough.
2073 * Multiple invitations to join channels are now being handled by a single
2074   dialog box per connection, so that receiving many invitations in short
2075   order no longer means getting flooded with dialog boxes.
2076 * Implemented DH1080 key exchange support for Blowfish encryption. You can
2077   use the '/keyx' command to initiate a key exchange.
2078 * The raw log now shows encrypted incoming and outgoing messages in their
2079   encrypted form. Previously, incoming messages were being decrypted before
2080   being shown, and outgoing messages were being shown before encryption
2081   took place, thus not capturing what was actually coming from or going to
2082   the network socket as is the intent of the raw log.
2083 * Fixed a bug causing unrecognized channel mode characters being shown as
2084   their decimal value in the chat view messages announcing them having been
2085   set or removed.
2086 * Per-tab encoding settings for tabs belonging to a connection to a configu-
2087   red network (i.e. one found in the Server List dialog) now reference the
2088   unique ID rather than the name of the network in the config file, making
2089   things work reliably across restarts even when there are multiple identi-
2090   cally named networks. Encoding config file entries for tabs belonging to
2091   connections to servers that are not part of a configured network continue
2092   to reference the server hostnames.
2093 * Fixed the "(away)" label in front of the input line, indicating away sta-
2094   tus, not showing up in query tabs.
2097 Changes from 1.2-alpha2 to 1.2-alpha3:
2098 This third alpha fixes a fair amount of annoying bugs encountered in
2099 day-to-day usage, as well as a serious bug in handling NAMES messages
2100 from IRC servers. We've also made some UI changes that we'd like to
2101 get your feedback on: We've changed the default tab completion mode
2102 to "Cycle Nicklist", and we've removed the frame around the tab wid-
2103 get when using the listview version of the tab bar.
2106 * Worked around a Qt bug that has a text selection in the chat view that
2107   includes the last line in the view grow to include the new text when
2108   new text is appended to the view.
2109 * Fixed Konversation exposing various signals on D-Bus that it shouldn't
2110   have.
2111 * Fixed a regression causing '/names #channel' to end up duplicating the
2112   nickname list contents when already attending '#channel'.
2113 * When using Qt 4.5, Konversation no longer paints a frame around the UI
2114   elements of a view (e.g. a channel) when using the listview version of
2115   the tab bar. Feedback on this change is appreciated!
2116 * Fixed duplicated messages about DCC transfer failures in the chat view.
2117 * When the menu bar is hidden, the top-most item in the chat view context
2118   menu is now the option to unhide it again.
2119 * Fixed the OSD disappearing also cancelling the system tray blinking no-
2120   tification.
2121 * Fixed a crash on quit by D-Bus / by KDE session logout.
2122 * Fixed the tab completion nickname list sorting behavior for the "Shell-
2123   like" completion modes. The behavior now matches the "Cycle Nicklist"
2124   mode and the "Shell-like" modes of previous Konversation 1.x versions
2125   again: The last active nick for the given prefix is at the top of the
2126   list, with the rest of the list sorted alphabetically.
2127 * The default tab completion mode has been changed to "Cycle Nicklist".
2128   Feedback on this change is appreciated!
2129 * Changed the bundled 'bug' script to perform a quick search with the
2130   given parameter, rather than try to use it as a bug ID directly. The
2131   resulting behavior is unchanged for a numerical parameter, but with
2132   a string, much more useful.
2133 * The 'mail' script, which was disabled in the build system up until now,
2134   is now getting installed again.
2135 * Fixed a bug causing the "Set Encoding" menu not to work.
2136 * Fixed a bug causing the bundled 'media' script not to work when used
2137   to retrieve song information from Amarok 2 for a song which has any
2138   of the following meta data fields not set: title, artist or album.
2139 * Fixed the 'Self' field of the DCC transfer details panel not showing
2140   the port when available.
2141 * Fixed DCC transfers showing an average speed of 1 TB/s in their first
2142   second.
2145 Changes from 1.2-alpha1 to 1.2-alpha2:
2146 After just under a week's worth of adding back some missing functiona-
2147 lity, polishing the interface and, of course, of fixing bugs, we've de-
2148 cided to bring you Konversation 1.2-alpha2. While there were no major
2149 defects discovered in alpha1, this one should yield an overall more re-
2150 fined user experience, and brings us another good step closer to our
2151 first stable release for KDE 4.
2154 * Fixed nicknames in action messages using the message text color when
2155   nick coloring is disabled rather than the correct action text color
2156   as the rest of the message.
2157 * Added back the context menus for nicknames and channel links in the
2158   chat view.
2159 * Fixed the topic/info area in channels, queries and DCC chats, the nick-
2160   name list in channels and the listview variant of the tab bar not keep-
2161   ing their sizes when the window is resized.
2162 * Added missing actions ("Reconnect", "Disconnect", "Join channel ...")
2163   back to the context menu for server status tabs.
2164 * Improved the placement of the "Join on connect" channel tab context
2165   menu item (back under "Enable Notifications" as in v1.1).
2166 * Added the use of some of the new irc-* icons found in recent updates
2167   to the Oxygen icon theme.
2168 * Fixed crash when joining a channel after having been blocked from get-
2169   ting the topic for the channel.
2170 * Made the initial size of the "Edit Network" dialog more reasonable.
2171 * Improved vertical size of and text alignment inside the input line.
2172 * Added back support for drag and drop reordering of views to the list-
2173   view version of the tab bar.
2174 * Added back support for "surfing" in the listview version of the tab
2175   bar by pressing and holding the left mouse button on a view and moving
2176   the mouse up and down in the list view.
2177 * Fixed mouse handling for close buttons in the listview version of the
2178   tab bar.
2179 * Added back support for showing tooltips for truncated view items in
2180   the listview version of the tab bar.
2181 * Fixed crash when receiving lines terminated by LFCRLF from buggy IRC
2182   servers (such as the shroudBNC IRC proxy when it relays a private mes-
2183   sage received while no user was connected to it).
2184 * Worked around a Qt bug that has a text selection in the chat view that
2185   includes the last character in the view grow to include the new text
2186   when new text is appended to the view.
2187 * Sound notifications for highlights now reuse a single Phonon MediaObject
2188   by enqueuing notification sounds rather than instanciate a new one for
2189   every notification, improving resource efficiency and hopefully taking
2190   care of some high CPU usage reports that seemed to be linked to Konver-
2191   sation's Phonon usage.
2192 * Fixed the enabling/disabling of the "Find Previous" action.
2193 * Fixed several bugs in the Server List dialog (sort indicator disappear-
2194   ing while dragging items, stray pixel in the top-left corner of the list-
2195   view, hover decoration while dragging not always showing).
2196 * Improved handling in the Identity editor dialog: When Konversation com-
2197   plains about one or more required fields not being filled in, the dialog
2198   will now put focus on the field when it opens.
2199 * Fixed the 'Self' IP field of the DCC transfer details panel not showing
2200   a value when on the receiving end of a DCC file transfer.
2201 * Handle DCC REJECTs. A DCC SEND is now automatically aborted when the
2202   partner rejects it.
2203 * Fixed a bug causing the ordering of views to be partially reversed when
2204   switching from the listview version of the tab bar to the regular tab bar.
2205 * Improved consistency of the context menu for links between the topic area
2206   and the chat view.
2207 * Fixed repeated searches for the same search pattern (i.e. "Find Next")
2208   sometimes not working reliably with the chat view search bar.
2209 * Minor code cleanups and performance improvements.
2212 Changes from 1.1 to 1.2-alpha1:
2213 We're happy to bring you this first public release of the KDE 4 version of
2214 Konversation.
2216 Despite the "alpha" moniker we've settled on for this one, mostly due to
2217 not yet being feature-complete (see below), this port has already been
2218 used productively by a fair number of people for some time and should be
2219 stable enough for general usage. In fact, certain features, notably DCC
2220 file transfers and auto-replace, are expected to be more robust than in
2221 Konversation 1.1.
2223 While this version largely achieves feature parity with Konversation 1.1
2224 (and adds several new features on top), notable exceptions are the lack
2225 of support for marker lines as well as nick and channel context menus in
2226 the chat view. These are pending the merge of a rewritten chat view and
2227 will make a return before the final Konversation 1.2 release. Other known
2228 issues in this version include a lack of KDE 4 HIG compliance in the con-
2229 figuration dialog and various minor interface polish problems; these will
2230 be addressed as well.
2232 Enjoy, and don't forget to report any bugs you encounter!
2235 * Ported to KDE 4 (KDE 4.1 or higher is required).
2236 * Enabled the (experimental, hackish) Amarok 2 support in the 'media' script.
2237 * Fixed a bug that could cause channel notifications to be lost across recon-
2238   nects.
2239 * Removed the code to recreate hidden-to-tray state across application re-
2240   starts. It was broken after the shutdown procedures were moved to a point
2241   in time after after the main window is hidden to cover quit-by-DCOP, and
2242   Konversation 1.1 features an explicit hidden startup option that fulfills
2243   user demands more accurately anyhow. This fixes a bug that made Konversa-
2244   tion always hide to tray on startup regardless of the aforementioned op-
2245   tion when the system tray icon was enabled.
2246 * Added a network settings lookup fallback to retrieving the key of a channel.
2247   Previously, this relied solely on the channel's mode map. Closes the brief
2248   gap between a channel join and the server's reply to MODE where possible,
2249   so that e.g. reconnecting directly after auto-joining a channel with a key
2250   doesn't result in a failed rejoin due to not having the key by way of the
2251   MODE reply yet.
2252 * Fixed opening URLs from the channel topic context menu in Channel List tabs.
2253 * When connecting to multiple selected unexpanded network items from the Ser-
2254   ver List, don't also try to connect to the hidden server sub-items selected
2255   by implication, avoiding unwanted connection duplicates.
2256 * Mask the password field in the Quick Connect dialog.
2257 * Fixed a bug causing passive DCC file transfers to stall at 99%.
2258 * Fixed "/leave" command in queries.
2259 * Fixed auto-replace rules containing commas in the pattern not being loaded
2260   correctly from the config file.
2261 * Fixed non-regex mode auto-replace rules containing regex special characters
2262   and character sequences not working correctly.
2263 * Improved performance of non-regex mode auto-replace rules.
2264 * Added option to open log files with the system text editor instead of the
2265   built-in log viewer.
2266 * Made the Oxygen nicklist icon theme the default nicklist icon theme.
2267 * Removed the bundled 'weather' script (it relied on a KDE 3 service no lon-
2268   ger present in KDE 4; a replacement will need to adopt a new approach).
2269 * Fix sending and receiving of files with names containing spaces
2270 * DCC Protocol adjustment to proper handle passive DCC resume/accept requests.
2271   (this breaks passive-resume compatibly with <konversation-1.2)
2272 * Send proper DCC reject commands when rejecting a queued receive.
2273 * Improved error recovery during dcc send.
2274 * Fix time left for transfers that finished in under 1 sec displaying infinite
2275   time left.
2276 * Increased default DCC buffer size to 16384 to reduce CPU load while sending
2277   or receiving files.
2278 * Added KNotify events for "Highlight triggered", "DCC transfer complete"
2279   and "DCC transfer error".
2280 * Fixed Automatic User Information Look Up not being started upon channel
2281   join on some IRC servers (namely those that don't send RPL_CHANNELCREATED
2282   after joining a channel, such at those used by IRCnet).
2283 * Updated the server hostname for the pre-configured Freenode network to the
2284   one given on their website these days, 'chat.freenode.net'.
2285 * Added support for browsing the input line history by using the mouse wheel.
2286 * Fixed problems the bundled 'tinyurl' script had with certain URLs by conver-
2287   ting it to use the TinyURL API rather than screen scraping.
2288 * Added initial support for the MODES parameter of RPL_ISUPPORT. When giving
2289   or taking op, half-op or voice to/from multiple people at once, Konversa-
2290   tion will now combine as many of them into a single MODE command as the
2291   server advertises it supports (as long as it advertises an actual value;
2292   the value-less unlimited MODES case is not supported yet as it requires
2293   more work on limiting MODE commands to the 512 byte IRC message buffer
2294   limit for extreme cases). If MODES is not given at all by the server, the
2295   fallback is an RFC1459-compliant value of 3.
2296 * Added support for formatting variable expansion in the replacement part of
2297   auto-replace rules.
2298 * Rewrote multi-line paste editor, improving handling and appearance.
2299 * Added button to intelligently replace line breaks with spaces to the multi-
2300   line paste editor.
2303 Changes from 1.0.1 to 1.1:
2304 We are extremely pleased to announce Konversation's newest major release, v1.1.
2305 Konversation 1.1 is a special release for us in multiple ways: It's our farewell
2306 to KDE 3, by way of being the last major release built upon that venerable
2307 platform. It's also our biggest release yet, in terms of the number and
2308 magnitude of the changes.
2310 The additions and improvements in this release are both user-visible and under
2311 the hood. Some of the highlights are rewritten connection handling (robustness
2312 and correctness improvements, better support for IRC URLs, bookmarking and
2313 more), redone DCC with better UI and Passive/Reverse DCC support, a redone away
2314 system with the addition of auto-away support, redone and much more useful
2315 remember / marker line support, a new outbound traffic scheduler that is capable
2316 of aggressive throttling to avoid flooding while smartly reordering messages to
2317 improve latencies, great convenience additions like a "Next Active Tab" shortcut,
2318 and much, much more, along with a large number of bugfixes and tweaks to round
2319 things out. Note: All fixes made since RC1 are marked with a "[New since RC1]"
2320 label in the changelog.
2322 We're confident that this release is the best and most robust version of
2323 Konversation published so far, and upgrading comes highly recommended to all
2324 users. Enjoy!
2327 Text views
2328 * Added an option to hide the scrollbar in chat windows.
2329 * Don't scroll to bottom if the view was scrolled up before resizing.
2330 * Fixed chat views occassionally not being scrolled to the bottom at their
2331   inception with long backlog appends.
2332 * Fixed an off-by-one error in scrollback culling.
2333 * Fixed a bug that lead to single leading whitespace characters in lines being
2334   omitted from display in chat windows.
2335 * Now preserving trailing whitespace in raw log tabs.
2336 * Fixed display of '<' and '>' in backlog lines.
2337 * Fixed copy/paste with shortcuts other than the default Ctrl+C/V ones.
2338 * Fixed onotice display.
2339 * Fixed middle-click-to-open-in-new-tab on chat window URLs when Konqueror
2340   wasn't running.
2341 * Fixed superfluous closing parenthesis being inserted after links in lines
2342   which contain multiple links followed by closing parentheses.
2343 * Fixed URLs with encoded hash mark %23 being incorrectly passed off to handler.
2344 * Fixed variable expansion causing certain URLs to be corrupted when pasted.
2345 * Added a "Save Link As" item to the context menu of links in the chat window.
2346 * Have the "Save as..." dialog suggest a file name.
2347 * Implemented Shift+Click to "Save as..." URLs..
2348 * Made the channel links context menu work in server status views.
2349 * Fixed nickname links in chat view messages created as a result of '/msg <nick>
2350   <message>' commands erroneously prepending '->' to nicknames.
2351 * Fixed operations on nicknames containing "\" characters from the nickname
2352   context menu.
2353 * Fixed query view context menus operating on the wrong nickname under certain
2354   circumstances.
2355 * Fixed a bug that caused the "Send File..." action in the generic query context
2356   menu to pick the wrong recipient after hovering the user's own nick in the
2357   chat display.
2358 * Fixed date display not using the locale's date format.
2359 * Fixed IRC color parsing so that the colors gets reset to default if no color
2360   numbers were given.
2361 * Fixed a bug that could cause the text selection in a chat window to be messed
2362   up when new text was appended.
2364 Marker/Remember Lines
2365 * Konversation now distinguishes between manually and automatically inserted
2366   marker lines, making the "show line in all chat windows" preference less
2367   confusing.
2368 * The automatically inserted remember lines when chat windows are hidden are now
2369   "sliding", i.e. there is only one per chat window, and it moves.
2370 * Automatically inserted remember lines will now optionally only be inserted
2371   when there's actually new text being appended to the chat window (enabled by
2372   default).
2373 * The automatic remember line will now also be inserted when the window has lost
2374   focus.
2375 * Added an action to clear all marker lines in a chat window.
2376 * Improved marker lines-related preferences and terminology.
2377 * Improved the appearance of marker lines in the chat window.
2378 * Made the (marker line-related and other) identity default settings consistent
2379   between the initial identity and additional newly created identities.
2380 * Fixed hidden join/part/quit events marking tabs as dirty, allowing multiple
2381   consecutive remember lines to appear.
2382 * Fixed crash when minimizing or closing the application window prior to any tab
2383   switch when the auto-insertion of remember lines is enabled.
2385 Input line
2386 * Fixed input line contents rather than actual sent text being appended to the
2387   input history upon a multi-line paste edit.
2388 * Special characters and IRC color codes will now be inserted at the cursor
2389   position rather than the end of the input line contents.
2391 Nickname list
2392 * Implemented an additional "Sort by activity" nicklist sorting mode.
2393 * Added Oxygen nicklist icon theme by Nuno Pinheiro.
2394 * The list of nickname list themes is now sorted alphabetically.
2395 * Fixed race condition when removing a nicklist theme (listview would be
2396   repopulated before deletion was complete).
2397 * Fixed using the wrong palette for the disabled text color in the nickname
2398   list.
2399 * Fixed moving back from the custom alternate background color to system colors
2400   in the channel nickname listviews when disabling the "Use custom colors for
2401   lists, [...]" preference.
2402 * Cleanups in the nicklist item code.
2404 Tab bar / Tree list
2405 * Added option to add and remove a channel from its network's auto-join list
2406   from the tab context menu.
2407 * Added option to close tabs using middle-mouse.
2408 * Slightly sped up tab switching by eliminating some redundant UI action state
2409   updates.
2410 * Channel tabs will no longer close when kicked, but rather grey out on the tab
2411   bar and offer context menu actions to rejoin.
2412 * Channel and query tabs will now grey out on the tab bar when disconnected and
2413   no higher priority notification is present. Channel tabs will only ungrey if
2414   and when the channel is successfully rejoined after reconnect; query tabs
2415   ungrey immediately once reconnected.
2416 * Display tooltips for truncated treelist items.
2417 * Fixed forwarding keyboard events received by the treelist to Konsole widgets
2418   and focus adjustment thereafter as well as generally after switching to
2419   Konsole tabs by other means.
2420 * Fixed treelist scrollbar not picking up on new palette when the KDE color
2421   scheme changes.
2422 * Fixed a bug that could cause a crash when the view treelist would receive
2423   keypress events during application shutdown.
2424 * [New since RC1] Fixed a corner case where a server status item could become a
2425   child item of another server status item when dragging it below an special
2426   application pane item such as DCC Status or Watched Nicks Online.
2427 * [New since RC1] Fixed a crash when using the mouse wheel on the list within
2428   ~150ms of a drag and drop operation.
2430 System Tray icon
2431 * Remember and recreate minimized-to-tray state across sessions.
2432 * Added option for hidden-to-tray startup.
2433 * Reload tray icons when the icon theme changes at runtime.
2434 * Added option to not blink the systray icon, but just light it up.
2436 Channel Settings Dialog
2437 * Added a search line to the ban list.
2438 * Fixed sorting the ban list by time set.
2439 * Made the ban list's "Time Set" column use KDE locale settings for the date
2440   format.
2441 * Fixed OK'ing/Cancel'ing/closing the Channel Settings Dialog not dealing with
2442   open ban list in-line edits correctly.
2443 * Reset topic editbox when the channel options dialog has been dismissed with
2444   cancel.
2445 * Fixed incorrect time display in the topic history list in the Channel Settings
2446   dialog.
2448 Server List Dialogs
2449 * Moved the "Show at application startup" option for the Server List dialog to
2450   the dialog itself.
2451 * Auto-correct hostnames and passwords entered with preceding or trailing spaces
2452   in the Server List dialog.
2453 * Don't allow impossible ports to be set for servers.
2454 * Sensible default focus in the server list dialog.
2455 * Fixed unresponsive, defective Server List dialog window appearing at
2456   application startup using the Beryl or Compiz compositing window managers.
2458 Interface Misc
2459 * Added a "Next Active Tab" keyboard shortcut to jump to the next active tab with
2460   the highest priority notification.
2461 * Added a Find Previous standard action.
2462 * Have the "Insert Character" dialog pick up on text view font changes.
2463 * Show correct number of colors in the color chooser dialog.
2464 * Made "Alternate Background" colorchooser disable when unneeded.
2465 * Fixed crash when changing the KDE color scheme while a non-chat tab is open.
2466 * The encoding selection now allows returning to the used identity's default
2467   encoding setting.
2468 * Update actions on charset changes.
2469 * Added Notifications Toggle and Encoding sub-menu to the window menu.
2470 * Moved "Hide Nicklist" menu action from Edit to Settings.
2471 * Fixed the "Automatically join channel on invite" setting not to show an
2472   inquiring dialog anyway.
2473 * Fixed saving the state of the invitation dialog option in the Warning Dialogs
2474   preferences.
2475 * Added a warning dialog for quitting with active DCC file transfers.
2476 * Return focus to the text display widget after closing the search bar in a log
2477   reader view.
2478 * Made pressing Return or Enter in the Log File Viewer's size spinbox apply the
2479   setting, just as pressing the Return button.
2480 * Fixed a bug where the SSL padlock icon would be shown on a non-SSL connection
2481   (and clicking would cause a crash).
2482 * Empty topic labels will no longer show empty tooltips, but rather none at all.
2483 * Added a sample 12-hour clock format string to the timestamp format combobox.
2484 * Timestamp format list is no longer localized.
2485 * Robustness improvements and less UI quirks around channel password handling.
2486 * Improved general layout and consistency of tab, chat view, query and topic
2487   context menus. Added some missing icons.
2488 * Fixed some bugs of UI actions not being appropriately as their context
2489   changes.
2490 * Fixed enabled state of "Close All Open Queries" action not being updated
2491   correctly when queries are closed by way of closing a status view tab.
2492 * The window caption is now properly being reset when the last tab is closed.
2493 * Made units in spinboxen in the identity and app preferences UI more
2494   consistent.
2495 * Minor fixes to accelerators and tabbing order in various dialogs.
2497 Commands
2498 * Support command aliases in network connect commands.
2499 * Turned parameter-less '/away' into a toggle: Sets away state with default
2500   message initially, and unsets away state if already away.
2501 * Added an '/aunaway' command to complement '/aaway' (previously, there was only
2502   '/aback').
2503 * Added support for '/kill'.
2504 * A '/join' command for an already-joined channel will now focus it.
2505 * Added an '/encoding' command as an alias to '/charset'.
2506 * '/charset' and '/encoding' now accept 'latin-1' as an alias for 'iso-8859-1'.
2507 * Improved messages for the '/charset' and '/encoding' commands.
2508 * Rewrote /me parsing to be less hackish and display usage info with an empty
2509   parameter.
2510 * '/msg <nick>' is no longer treated as equivalent to '/query <nick>'.
2511 * '/msg <nick>' will now error out when lacking a message parameter.
2512 * '/query <recipient> [message]' will now error out when recipient is a channel.
2513 * Added a '/queuetuner' command to bring up the outbound traffic scheduler's
2514   tuning/debug pane.
2516 Notifications
2517 * Seperated query messages and messages containing the user's nickname into two
2518   distinct KNotify events.
2519 * Made the tab notification color of private messages configurable independently
2520   from normal messages.
2521 * Don't highlight own nick on topic created by messages.
2522 * Fixed disabling notifications for a tab not cancelling highlight sounds.
2523 * Fixed a race condition where a highlight's autotext reply would outrun the
2524   original line's tab notification.
2525 * Fixed actions in queries and DCC chats producing message notification events
2526   (rather than the correct private message ones).
2527 * Changed the OSD screensaver check logic to work in KDE 4.
2528 * [New since RC1] Fixed on screen display occassionally reverting to the default
2529   position when using the settings dialog to change unrelated settings.
2531 Connection handling
2532 * Improved behavior with regard to reusing existing connections in connection
2533   attempts that provide an initial channel to join, such as command line
2534   arguments, the DCOP interface, the bookmark system or irc:// links).
2535   Previously, the application would have inconsistently either reused an
2536   existing or created a new connection.
2537 * Better dialog messages in the interactive variant of the decision to either
2538   reuse or create a new connection (from the Server List dialog and the Quick
2539   Connect dialog).
2540 * Improved and more consistent display of connection names (i.e. network or
2541   server host name) throughout the application.
2542 * Much improved irc:// URL support for connection intanciation, with support
2543   added for IPv6 host names and many of the features proposed by the Mirashi
2544   specification.
2545 * Eliminated redundant irc:// URL parsing codepaths in favor of a single one.
2546 * Added support for irc:// URLs to the chat views.
2547 * Removed "konversationircprotocolhandler" shell script. The Konversation
2548   executable now understands irc:// URLs directly.
2549 * Initiating connections from command line arguments and options now works also
2550   when the application is already running.
2551 * Fixed a bug that would cause a connection initiated from command line options
2552   not to get past the identity validation stage when the configuration file was
2553   unitialized and empty.
2554 * The server list dialog will now always be closed when starting Konversation
2555   with command line arguments to initiate a connection, consistent with the
2556   configuration-based auto-connect behavior.
2557 * Providing a channel in the creation of a new connection (i.e. via command line
2558   arguments, the DCOP interface, the Quick Connect dialog, the bookmark system
2559   or irc:// links) now consistently pre-empts the stored auto-join channel list
2560   if the target of the connection is a network or the hostname is found to be
2561   part of a configured network. Previously, this would only work for Quick
2562   Connect and the bookmark system (which caused the infamous Sabayon user flood
2563   in #kde due to their "Get Support" desktop link connecting to Freenode, which
2564   in an unconfigured Konversation has #kde in its auto-join list).
2565 * Connections now have globally unique IDs.
2566 * The DCOP interface now understands connection IDs in addition to host names.
2567 * The scripting systems now uses globally unique connection IDs rather than
2568   server host names to refer to connections, fixing a bug where scripted
2569   responses were being handed to all connections sharing a hostname (which was
2570   actually intentional in the absence of connection IDs, but undesirable for
2571   users).
2572 * Improved iteration behavior over a network's server list on connection losses.
2573 * The "Reconnect" action now works also when Konversation doesn't consider the
2574   connection to be in a disconnected state.
2575 * Improved the server status view messages related to reconnection attempts.
2576 * Consistently apply the "Reconnect delay" setting (previously confusingly named
2577   "Reconnect timeout"), which wasn't done before.
2578 * Fixed a bug that could cause the connection process to claim that a DNS lookup
2579   was successful when it actually wasn't.
2580 * Fixed opening bookmarks with spaces in the target address name (which may be a
2581   network name, and networks may have spaces in their name).
2582 * Properly update the state of the "Add/Remove to Watched Nicknames" nickname
2583   context menu actions when the connection isn't to a config-backed network, in
2584   which case there's no way to store and make use of those list entries.
2585 * Fixed a crash when quitting the application with a resident connection that
2586   disconnected due to an SSL error.
2587 * Fixed crashes in the DCOP interface if no connection was present.
2588 * Make the "Reconnect" action available even while ostensibly in the process of
2589   connecting.
2590 * Fix possible crash when closing all views and subsequently creating a new
2591   connection.
2592 * Fixed crash upon auto-connect at application startup.
2593 * Improved the naming of preferences related to automatic reconnection attempts
2594   to be less confusing.
2595 * Made it possible to set the number of automatic reconnection attempts to
2596   unlimited.
2597 * Provided better default values to the preferences related to automatic
2598   reconnection attempts.
2599 * Fixed crash when opening a Konsole tab and Konsole was not installed.
2600 * Fixed allowing the user to create an infinite loop of showing the SSL
2601   connection details dialog upon being presented with the invalid certificate
2602   multiple choice dialog at connection time by checking "Do not ask again" and
2603   then clicking "Details".
2605 Identities
2606 * Made it possible to set a Quit message independently from the Part message.
2607 * Saving a newly-created identity is no longer allowed without entering a real
2608   name.
2609 * Apply switching the identity in the identity dialog as opened from the network
2610   dialog to the network's settings.
2611 * Have the Edit/Delete/Up/Down buttons for the nickname list of an Identity
2612   correctly change state according to the selection
2614 Away system
2615 * Added per-identity support for automatic away on a configurable amount of user
2616   desktop inactivity and/or screensaver activation, along with support for
2617   automatic return on activity.
2618 * Fixed the "Global Away" toggle to make sense and update its state properly.
2619 * Turned parameter-less '/away' into a toggle: Sets away state with default
2620   message initially, and unsets away state if already away.
2621 * Added an '/aunaway' command to complement '/aaway' (previously, there was only
2622   '/aback').
2623 * Broadly rewrote away management related code for improved robustness and less
2624   duplication and hacks (e.g. no more abuse of multiServerCommand for global
2625   away).
2627 DCC
2628 * Massive DCC refactoring and improved reliability.
2629 * Passive DCC support (Reverse DCC RECV, SEND).
2630 * Replaced the DCC Transfer Details dialog with a retractable transfer details
2631   pane directly in the DCC Status tab.
2632 * Added DCC transfer average speed reading to the DCC transfer details panel.
2633 * The DCC Status tab now remembers its column widths across sessions.
2634 * Fixed duplicated quotation marks around file names in DCC transfer status
2635   messages.
2636 * Fixed "Open File" DCC dialog remembering the last viewed location incorrectly.
2637 * Added an "Open Folder" button to the DCC transfer details panel.
2638 * Added check for whether the URL is well-formed before initiating a DCC send.
2639   Fixes a bug of dragging a nickname link in the chat view onto the query chat
2640   view drop target starting a DCC transfer that cannot succeed.
2641 * Ported the DCC code away from relying on server group IDs to refer to
2642   connections, made it use connection IDs instead. Fixes potential bugs with
2643   multiple concurrent connections to the same network.
2644 * Fixed queued DCC transfer items not picking up on download destination
2645   directory changes.
2646 * Fixed bug leading to crash upon initiating DCC Chat when "Focus new tabs" was
2647   enabled.
2648 * [New since RC1] New transfer items added to the DCC panel's transfer list are no
2649   longer automatically selected, meaning work on other items in the list occuring
2650   at the same time no longer gets interrupted.
2651 * [New since RC1] The "Filename:" line in the DCC panel's detailed info pane is
2652   now using text squeezing to avoid an increase in minimum window width with long
2653   file names.
2654 * [New since RC1] Failed receives now longer show 833TB/s as their transfer
2655   speed.
2657 Blowfish support
2658 * Fixed FiSH-style +p prefix to send clear text to channel despite an encryption
2659   key being set.
2660 * Text encoding is now being applied to the cleartext, rather than the
2661   ciphertext. This fixes using characters outside the ASCII range with blowfish
2662   encryption.
2663 * Fixed CTCP (and thus DCC) requests to nicknames for whom an encryption key is
2664   set.
2665 * Added support for encrypted topics.
2666 * If an encryption key is set, a lock icon will now be shown next to the input
2667   box.
2668 * Added a '/showkey <channel|query>' command to show the encryption key for the
2669   target in a popup dialog.
2671 Auto-replace
2672 * Improved auto-replace behavior with multiple matches in one line (fixes
2673   multiple Wikipedia links).
2674 * Fixed bug that could cause auto-replace to replace the wrong group of the
2675   matching string.
2676 * Auto-replace is now case-sensitive in regular expression mode.
2677 * Added regular expression editor button to auto-replace preferences.
2678 * Fixed conditional enabling of the RegExpEditor button in the auto-replace
2679   preferences page.
2681 Ignore
2682 * Fixed being asked twice whether to close a query upon ignoring the opponent.
2683 * Fixed crash when opting to close a query upon chosing to ignore the opponent
2684   from the context menu of his nickname.
2686 Watched Nicknames
2687 * Improved robustness of the Watched Nicknames Online system.
2688 * The "Offline" branches in the "Watched Nicks Online" list will now be omitted
2689   when there are no offline nicks for the respective network.
2690 * Fixed display of WHOIS spam prompted by the Watch List's WHOIS activity.
2691 * Connections to non-config-backed targets no longer show in Watched Nicks
2692   Online.
2693 * [New since RC1] Actually honor the preference to enable/disable the Watched
2694   Nicknames Online system, and apply it at runtime.
2695 * [New since RC1] Make sure the periodic Watched Nicknames Online check actually
2696   starts running within the same session after adding the first nickname to the
2697   list.
2698 * [New since RC1] Fixed a crash on quit with the Watched Nicks Online tab open and
2699   there being an open connection to a network that nicks are being watched for.
2701 Channel List
2702 * IRC markup is now removed from content in the Channel List view.
2703 * Speed improvements in Channel List views.
2704 * Fixed keyboard accelerator collisions in Channel List views.
2705 * Allow higher values than 99 in the min/max users filter spin boxes in Channel
2706   List views.
2708 Under the Hood / Protocol
2709 * Rewrote the outbound queue scheduling system to be smart enough to reorder
2710   outbound traffic to reduce interactive latency while aggressively throttling
2711   the rate to prevent flooding. Use '/queuetuner' to tweak.
2712 * Rearranged when and how auto-who is triggered upon channel join a bit, to
2713   avoid excessive flooding on multiple concurrent joins in some cases.
2714 * Auto-Who reliability improvements.
2715 * Fixed auto-join with very many channels (the auto-join command would exceed
2716   the maximum buffer length; it is now split into multiple commands as needed).
2717 * Fixed bugs around rejoining channels after reconnects related to the cause of
2718   the disconnect, channel passwords and picking the actual list of joined
2719   channels over the network's auto-join list.
2720 * Improved behavioral consistency in situations where the auto-join list is
2721   preempted by a transitory auto-join channel (bookmarks, etc.).
2722 * Fixed bug that caused the topic state not to be cleared properly prior to
2723   rejoining channels during reconnects.
2724 * Fixed onotice payload being cut off after the first word.
2725 * Changed RPL_WHOISOPERATOR handling to internationalize the common case ("is an
2726   IRC Operator") and otherwise passthrough the string sent by the server.
2727 * Fixed parsing of alternate invite format on Asuka ircds (QuakeNet).
2728 * Added support for PRIVMSG from the server.
2729 * Support RPL_UMODEIS.
2730 * Announce 'k' channel mode (i.e. channel key) changes in non-raw mode as well.
2731 * The command part of CTCP requests is now always converted to uppercase before
2732   sending, as some clients don't like lower- or mixed-case commands as the user
2733   may have entered them.
2734 * Display mode for your nick and channels you're not in.
2735 * Fixed per-channel encoding settings for the channels of a network being lost
2736   when the network is renamed.
2737 * Fixed crash when receiving actions for channels the client is not attending.
2738 * Made newline handling in the DCOP interface more robust, fixing a potential
2739   security problem (CVE-2007-4400).
2740 * A few speed optimizations and memory leak fixes.
2741 * [New since RC1] Fixed a crash on quit during KDE logout or when quitting by
2742   DCOP.
2744 Included scripts
2745 * Support for KMPlayer in the 'media' script (based on the window caption, as
2746   KMPlayer has no proper appropriate DCOP interface).
2747 * Added KPlayer support to the 'media' script (also caption-based).
2748 * Added support for Audacious to the 'media' script.
2749 * Fixed problems in disk space calculation in the 'sysinfo' script caused by
2750   wrapped df(1) output.
2751 * Added KDE 4 support to the 'sysinfo' script.
2752 * Removed some bashisms from the 'sysinfo' script.
2753 * Rewrote 'weather' script for increased reliability in error handling and
2754   better readability.
2755 * Removed broken 'qurl' script in favor of new 'tinyurl' one.
2756 * Fixed the 'fortune' script not working properly when variable expansion is
2757   turned off in the preferences.
2758 * [New since RC1] Fixed a bug in the 'media' script that caused it to break when
2759   querying Audacious with audtool not being available.
2761 Packaging
2762 * [New since RC1] Standards compliancy fixes in the application .desktop file and
2763   the nicklist icon theme .desktop files.
2765 Build
2766 * Fixed build with --enable-final.
2768 -------------------------------------------------------------------------------
2770 Changes from 1.0 to 1.0.1
2771 We are pleased to announce the immediate availability of Konversation 1.0.1,
2772 a maintenance release featuring notable improvements for users of right-to-
2773 left languages (including new Arabic and Hebrew translations), further re-
2774 finement of the user interface and application functionality, and fixes for
2775 minor defects found in the previous release.
2777 * A bug that caused left-to-right text contained in lines determined to be
2778   right-to-left text to appear reversed has been fixed.
2779 * Whether a line is treated as right-to-left vs. left-to-right text is now
2780   determined by the amount of each type of character in the line, improving
2781   the user experience in chats involving bi-directional text considerably.
2782 * The "Edit Network" dialog has been refined for clarity and ease of use.
2783 * A warning dialog to prevent accidentally quitting Konversation has been
2784   added.
2785 * The Auto Replace list can now be sorted.
2786 * The '/media' script command now sports improved player recognition, enhan-
2787   ced and easier configurability, the ability to distinguish between audio
2788   and video media as well as newly added support for kdetv. New '/audio' and
2789   '/video' command aliases have been added to expose these new abilities.
2790 * The lower boundary of the default DCC port range has been raised from 1025
2791   to 1026 to avoid conflicts with the commonly blocked Windows RPC port 1025.
2792 * Dismissing an OSD notification by clicking on it will now also cancel the
2793   systray notification flash.
2794 * A new configuration file option [OSD]OSDCheckDesktopLock has been added,
2795   allowing to manually disable the screensaver check in non-KDE environments
2796   that do not support it, causing the OSD not to be displayed.
2797 * A bug that could lead to the "Switch to" sub-menu in the context menus of
2798   tabs not to be updated properly upon switching tabs has been fixed.
2799 * A bug that caused the 'irc setBack' DCOP call not to function has been
2800   fixed.
2801 * A bug that caused ampersands in the names of tabs not to be displayed and
2802   an immediately following character to be used as keyboard accelerator has
2803   been fixed.
2804 * A bug that caused ignoring nicknames with '[' or ']' characters in them to
2805   fail has been fixed.
2806 * Command aliases containing regular expression syntax can no longer cause
2807   built-in commands not to function.
2808 * A bug that caused the Konversation irc:// protocol handler not to function
2809   has been fixed. Its compatibility with systems that do not use the GNU bash
2810   shell as default shell has been improved.
2811 * A notable number of code quality improvements suggested by KDEs automated
2812   quality control service EBN have been implemented.
2814 -------------------------------------------------------------------------------
2816 Changes from 0.19 to 1.0
2817 We are extremely pleased to announce the immediate availability of Konversation
2818 1.0, a significant milestone in the lifetime of the Konversation project. This
2819 release includes major new functionality as well as a large amount of
2820 improvements to existing functionality, with an emphasis on user interface
2821 polish and overall reliability. Notable new features include a vertical treelist
2822 of tabs as an alternative to the traditional tab bar, auto-replacement of words
2823 in incoming and outgoing messages, an improved Channel Settings dialog now
2824 featuring a ban list, an optional expanding input box and many improvements to
2825 both DCC file transfers and DCC chats. Enjoy!
2828 User Interface
2829 * It is now possible to place the tabs on the left side of the application
2830 window.
2831   This has been implemented as a treelist of tabs. The treelist supports all of
2832   the cosmetic and interactive properties of the original horizontal tab bar,
2833   including colored notifications, LED icons, (hover) close buttons with delayed
2834   activation, reordering, drag'n'drop and mouse wheel cruising. And a few tricks
2835   of its own.
2836 * Connection status tabs now feature specific context menu entries to disconnect
2837   and reconnect, as well as to join a channel on that connection.
2838 * The automatic resizing of tabs in the tab bar first implemented in version
2839   0.19 is now optional.
2840 * The grouping behavior of Channel List and Raw Log tabs in the tab bar has been
2841   improved.
2842 * Disabling notification for a tab will now unset the active notification.
2843 * The enabled/disabled state of the notifications for connection status tabs
2844 will
2845   now be remembered across sessions for configured networks.
2846 * The speed of switching tabs in quick succession with the auto-spellchecking
2847   preference enabled has been improved.
2848 * Using custom fonts in the user interface is now optional. The font used by the
2849   tab bar is now configurable.
2850 * Events in the connection status tabs are now logged into separate logfiles.
2851 * The Channel Settings dialog now includes a Ban List tab that allows viewing,
2852   adding and removing bans in a channel. The dialog can now be opened from the
2853   menu bar and chat window context menu in addition to the button in the topic
2854   area.
2855 * Mode and topic handling in the Channel Settings dialog and the channel mode
2856   buttons have been overhauled to make them more robust and reliable.
2857 * The number of Quick Buttons to show below the nickname list in channel tabs is
2858   now configurable. Additional buttons may be added or existing buttons removed.
2859 * Konversation now supports auto-replacing words in incoming and outgoing
2860   messages. Regular expressions are supported. The auto-replace configuration
2861 can
2862   be found in the preferences dialog. The static Wiki link feature found in
2863 older
2864   versions has been retired in favor of an auto-replace rule.
2865 * The search bar has been redesigned to provide a better user experience.
2866 * The "Find Next" action will now open the search bar when there is no active
2867   search, matching the behavior of Konqueror and other KDE applications.
2868 * The sorting of the nick completion list has been improved to put the last
2869   active user for a given completion prefix at the beginning of the list.
2870 * The tab completion of the user's own nickname has been reenabled.
2871 * The nick completion feature has been significantly cleaned up and made more
2872   reliable. A bug that could lead to an application crash during nick completion
2873   has been fixed.
2874 * An option to expand the vertical size of the input box automatically when the
2875   text entered grows beyond the length of a single line has been added.
2876 * The behavior of the input box on pasting text including leading or trailing
2877   newline characters has been improved never to cause lines being sent without
2878   user acknowledgement.
2879 * The input box of connection status, channel and query tabs will now be
2880 disabled
2881   and the nickname list of channel tabs cleared when the respective server
2882   connection is closed.
2883 * Konversation can now optionally insert a remember line whenever a tab is
2884 hidden,
2885   either by switching to a different tab or minimizing the window.
2886 * Multiple consecutive remember lines will no longer be inserted.
2887 * Remember lines can now also be inserted into the chat windows of connection
2888   status and DCC Chat tabs.
2889 * The Colored Nicknames feature will now always assign the same color to the
2890 same
2891    nickname.
2892 * The number of backlog lines to show in the chat window is now configurable.
2893 * The recognition of URLs in the chat window has been improved to cope better
2894   with URLs containing or being surrounded by parentheses and to exclude
2895 trailing
2896   dots and commas.
2897 * Channel links following mode characters or surrounded by interpunctuation are
2898   now properly recognized in the chat window.
2899 * The context menus for URLs and channel links in the topic area now match the
2900   context menus in the chat window.
2901 * Multiple ignore or unignore actions ordered at the same time will no longer be
2902   shown on separate lines in the chat window.
2903 * The nickname context menus in the chat window, topic are and the nickname list
2904   will now show "Ignore", "Unignore" and "Add to Watched Nicknames" entries as
2905   applicable.
2906 * A bug that could lead to the chat window nickname context menu actions ceasing
2907   to function after the targeted user left the channel has been fixed.
2908 * The Server List dialog now allows connecting to a specific server in a network
2909   even when a connection to that network has been previously established. If
2910 that
2911   connection is active, a dialog box will verify whether to disconnect from the
2912   current server and connect to the chosen one instead, otherwise the connection
2913   will simply be reestablished using the newly chosen server.
2914 * The Quick Connect feature will now properly warn when the identity to be used
2915   in the connection attempt is not set up properly.
2916 * The appearance and behavior of the warning about an incorrectly set-up
2917 identity
2918   have been improved. A prior connection attempt will now be automatically
2919 resumed
2920   after the identity settings have been corrected.
2921 * Many of the pages in the Konversation preferences dialog have been redesigned
2922   and rewritten for improved consistency, reliability and clarity. The general
2923   layout of the dialog has been improved as well.
2924 * The naming of certain actions in the Configure Shortcuts dialog has been
2925   improved to make them easier to recognize outside of their normal context in
2926   the application interface.
2927 * Numerous improvements to keyboard navigation have been made.
2928 * The nickname list now longer allows drag'n'drop of channel or user links from
2929   the chat window onto list entries, as a DCC transfer of those data sources
2930   cannot succeed.
2931 * The preference to show or hide the real names of users in the nickname list
2932 will
2933   now be applied immediately.
2934 * The columns of the nickname list will no longer resize erratically when the
2935   preferences to show or hide real names and hostmasks are changed at runtime.
2936 * A bug that could lead to nicknames being sent as messages when double-clicking
2937   a selection of multiple nicknames in the nickname list has been fixed.
2938 * The placement of actions in the application menus has been improved.
2939 * The shown/hidden state of the application menubar will now be remembered
2940 across
2941   sessions. When the menubar is hidden, a menu action to show it again will now
2942 be
2943   added to the chat window context menu.
2944 * The "Close All Open Queries" menu action is now be disabled properly when
2945 there
2946   are no open queries.
2947 * A bug that could lead to the "Close All Open Queries" menu action failing to
2948   properly close all open queries has been fixed.
2949 * A bug that could lead to an application crash when closing the tab after
2950 choosing
2951   to ignore someone in a query has been fixed.
2952 * The "Hide Nicklist" menu action will now be disabled properly when the tab
2953 shown
2954   does not have a nickname list has been fixed.
2955 * The actions in the "Insert" menu will now be disabled properly when the
2956 current
2957   tab does not support them.
2958 * The default double-click action in the "Watched Nicks Online" tab is now to
2959 open
2960   a query to the respective contact.
2961 * The sorting in the Watched Nicks Online tab has been improved: Offline users
2962 are
2963   now always sorted at the bottom.
2964 * Several bugs in the "Watched Nicknames Online" tab that could lead to
2965 application
2966   crashes have been fixed.
2967 * Several errors in the chat window status messages produced by the Watched
2968 Nicks
2969   Online system have been corrected.
2970 * A bug that could lead to the columns in the "Watched Nicks Online" list
2971 resizing
2972   erratically has been fixed.
2973 * A bug that could lead to the status bar not being cleared properly when the
2974 last
2975   tab was closed or the application window lost focus after a link was
2976   launched from the chat window has been fixed.
2977 * The display of temporary and static info texts in the status bar has been
2978   improved not to interfere with each other and provide more useful information.
2979   Also, the status bar lag info section is now updated more consistently to
2980 avoid
2981   jumping around of the other status bar sections.
2982 * A bug that could lead to a wrong nickname count being shown in the status bar
2983   of channel tabs has been fixed.
2984 * Repeated triggering of the "Open URL Catcher" menu action will now properly
2985   show and hide the URL Catcher tab.
2986 * The warning about pasting text with multiple lines can now be properly
2987 disabled
2988   and reenabled from the Warning Dialogs preferences page.
2989 * A bug that could lead to IRC bookmarks showing up as actions in the Configure
2990   Shortcuts dialog has been fixed.
2991 * A bug that could lead to changes of the global KDE icon set not being applied
2992   to the tab bar close buttons immediately has been fixed.
2993 * A bug that caused the application window to change its horizontal size after
2994   opening a Query to a user with a very long hostmask has been fixed. The DCC
2995   Chat and query tabs now use the same heading style as channel tabs.
2996 * A bug that could lead to the topic and nickname list areas not keeping their
2997   size properly across tab switches has been fixed.
2998 * A bug that could lead to certain types of KNotify event notifications not
2999   being executed properly when the system tray icon was enabled has been fixed.
3000 * A bug that could lead to ampersands in network names being shown as
3001   underscores in the menu under certain circumstances has been fixed.
3002 * A bug that could lead to an application crash when trying to access
3003   non-existing tabs via the Alt+number keyboard shortcuts has been fixed.
3004 * A bug that could lead to the toolbar being hidden after it was edited has been
3005   fixed.
3006 * A bug that could lead to the chat window context menu not being cancelled
3007   properly when clicking outside of it has been fixed.
3008 * A bug that could lead to heavy disk seeking when the splitters separating
3009   the topic area and the nickname list from the chat window were moved has been
3010   fixed.
3011 * The option to only show the application in the system tray at all times has
3012   been retired in favor of the standard KDE mechanic of minimizing into the
3013   system tray.
3015 Commands
3016 * The 'Now Playing' script invoked via the /media command alias now features
3017   support for XMMS and KSCD as well as improved support for untagged media files
3018   playing in Amarok. Support for non-ASCII encodings in file names and meta tags
3019   has been improved as well.
3020 * New "/hop" and "/dehop" commands to grant or remove half-op status from a user
3021   have been added.
3022 * A new "/devoice" command has been added.
3023 * A new "/kickban" command to ban and immediately kick a user has been added. It
3024   supports the same parameters as the "/ban" command plus an additional "kickban
3025   reason" parameter.
3026 * Commands to grant or remove status for users will now be applied to the user's
3027   own nickname when no nickname parameter is given.
3028 * The "/unignore" command now supports the same simple nickname-only format as
3029   the "/ignore" command.
3030 * If given no parameter, the "/away" command will now set the away state with
3031   the default away message. The "/back" and "/unaway" commands can be used to
3032   unset the away state.
3033 * You may now use "%nick" as a placeholder for your own nickname in the auto-
3034   connect commands for a network.
3035 * A bug that could lead to the auto-connect commands for a network not being
3036   executed correctly has been fixed.
3038 DCC
3039 * DCC file transfers now support file names containing spaces on send, receive
3040   and resume. The automatic replacement of spaces with underscores in file names
3041   can now be optionally disabled in the DCC preferences.
3042 * File names are no longer being needlessly lower-cased during DCC transfers.
3043 * The DCC file transfer and DCC Chat info messages shown in the chat window have
3044   been significantly improved to provide more useful information while being
3045 less
3046   excessively verbose.
3047 * DCC Chats will now be logged properly.
3048 * It is now possible to select multiple files in the DCC Status tab.
3049 * The default size of the buffer used in DCC transfers has been increased to
3050   8192kb for improved DCC performance.
3051 * The DCC Status tab will no longer show a speed of '?' for completed, failed or
3052   aborted transfers.
3053 * Bugs that could lead to the IP used for DCC transfers not being retrieved from
3054   the server correctly upon reconnect or in general on certain servers have been
3055   fixed.
3056 * A bug that could lead to the progress bar of a transfer in the DCC Status tab
3057   being rendered at a wrong position has been fixed.
3058 * A bug that could lead to Konversation's CPU usage spiking to 100% after a DCC
3059   Chat was closed from the remote side has been fixed.
3060 * Several bugs that could lead to application crashes in DCC Chat tabs after the
3061   server connection from which the DCC Chat originated was closed have been
3062 fixed.
3064 Technology
3065 * Konversation will now properly split up very long lines into multiple messages
3066   by calculating the length of the message preamble and the number of bytes of
3067 the
3068   text payload. Encodings that use multiple or variable numbers of bytes per
3069   character are accounted for.
3070 * The Disconnect and Reconnect menu actions and the respective input box
3071 commands
3072   have been rewritten for increased reliability. Their state will now be updated
3073   properly, and they will quit the IRC server in the correct manner.
3074 * A previous away state will now be recreated upon reconnection to a server.
3075 * The Quick Connect feature will now no longer join the auto-join channels of
3076   the configured network that the quick connect server was recognized as being a
3077   part of.
3078 * The "Konversation" and "KonvDCOPIdentity" DCOP objects have been renamed to
3079   "irc" and "identity", respectively. Several bugs in the DCOP API have been
3080   fixed, and deprecated interfaces removed.
3081 * Processing of the user lists of newly joined channels has been rewritten to
3082   fix several bugs, including improved compatibility with the Bip IRC proxy and
3083   other servers.
3084 * The lag calculation and timeout handling code has been rewritten for improved
3085   reliability and performance.
3086 * Recognition of the half-op user status has been improved.
3087 * The detection of text being typed into the input box to prevent focussing new
3088   tabs at inconvenient times has been improved to work correctly with non-ASCII
3089   characters.
3090 * The handling of channel user limits in the Channel Settings dialog is now more
3091   reliable.
3092 * Support for mode flags encountered on UnrealIRCD servers has been improved.
3093 * Support for RPL_DATASTR on UnrealIRCD servers has been improved.
3094 * A bug that could lead to the mode flags displayed for users not being updated
3095   properly after they were kicked from a channel has been fixed.
3096 * A bug that could lead to iterating over a configured network's servers failing
3097   after a connection failure has been fixed.
3098 * A bug that could lead to Konversation connecting to the wrong server in a
3099   network when choosing to connect to a specific server from the Server List
3100 dialog
3101   has been fixed.
3102 * A dialog will now ask the user for an additional nickname when all nicknames
3103   configured in the identity where tried unsuccessfully during a connection
3104   attempt. This replaces the previous behavior of repeatedly appending
3105 underscores
3106   to the last nickname, which eventually ran into the nickname length limit on
3107 the
3108   server.
3109 * A bug that could lead to unnecessary nick changes immediately after connecting
3110   to a server has been fixed.
3111 * A bug that could lead to Konversation trying to auto-identify multiple times
3112   upon connect on certain servers has been fixed.
3113 * A bug that could lead to Konversation not picking up on users leaving a
3114   channel without providing a part or quit message on UnrealIRCD servers has
3115 been
3116   fixed.
3117 * Changes to the list of auto-join channels for a network will now be applied
3118   immediately.
3119 * The auto-reconnect preference will now be properly applied at runtime.
3120 * Konversation will no longer enable IDENTIFY-MSG mode on servers that support
3121 it,
3122   but continues to be able to process messages with IDENTIFY-MSG prefixes in
3123 case
3124   an involved IRC proxy chose to enable IDENTIFY-MSG mode.
3125 * The broken default for the Custom Web Browser preference has been fixed.
3126 * Konversation will no longer allow Konsole tabs to be opened in KDE
3127   environments in which the use of terminals is prohibited by the KIOSK
3128 framework.
3129 * A bug that could lead to an application crash when a Konsole tab was closed
3130   from the Konsole component's context menu has been fixed.
3131 * A bug that could lead to an application crash when a channel was joined while
3132   the application window was hidden has been fixed.
3134 -------------------------------------------------------------------------------
3136 Changes from 0.18 to 0.19
3137 We are extremely pleased to announce the immediate release of Konversation 0.19.
3138 The focus
3139 of this release is on extending and improving upon established functionality.
3140 Most notable
3141 in this regard are significantly improved management of IRC networks and servers
3142 all across
3143 the application, a redesigned tab bar and better support for common IRC
3144 commands. A long
3145 list of further additions and improvements has us confident of this being the
3146 best version
3147 of Konversation yet. Enjoy!
3150 User Interface
3151 * The Server List dialog has been rewritten to allow direct manipulation of a
3152 network's
3153   servers and features more intelligent sorting behavior. Reordering networks
3154 via drag
3155   and drop is now possible. A behavioral audit of all actions in the dialog
3156 resulted in
3157   numerous improvements.
3158 * A redesigned tab bar sports highly configurable text- and LED icon-based
3159 notifications
3160   as well as more intelligent scaling behavior under space-critical conditions.
3161 * Tabs are now intelligently grouped around their respective connection status
3162 tab.
3163 * Status tab labels now display the user-configured network name where
3164 appropriate.
3165 * The Find Text dialog has been replaced by a search bar that no longer
3166 interrupts your
3167   workflow.
3168 * Channel links in the chat area now feature a context menu for quick access to
3169 common
3170   actions.
3171 * Usage of the status bar has been extended to show context-relevant information
3172 as the
3173   cursor passes over various interface elements. The lag information segment is
3174 now
3175   only shown where appropriate.
3176 * A channel's topic can now be cleared by setting an empty text in the Channel
3177 Options
3178   dialog.
3179 * The Channel Options dialog has been redesigned to allow editing the current
3180 topic
3181   while browsing a channel's topic history.
3182 * The Watched Nicknames interface has been fully integrated with network
3183 management.
3184 * Pressing the Arrow Down key in the input line now preserves any input entered
3185 by
3186   adding it to the history.
3187 * Commands may now be sent as regular messages by typing Ctrl+Enter.
3188 * The multi-line paste editor window now highlights whitespace characters and
3189 prepends
3190   the existing content of the input line.
3191 * The Colored Nicknames feature has been improved to better handle nickname
3192 changes and
3193   immediately apply any changes to the color palette.
3194 * Some previously not configurable notification events have been made
3195 configurable.
3196 * Users leaving a server will now be announced in any query you have open with
3197 them.
3198 * Query tab labels will now update when a user you have a query open with
3199 changes
3200   his/her name.
3201 * The DCC file transfer dialogs have seen a number of cosmetic improvements.
3202 Among other
3203   things, in the event of a file being renamed on save, the local file name is
3204 now shown
3205   across the application.
3206 * Various status and error messages have been rewritten for improved consistency
3207 and
3208   clarity.
3209 * The KDE standard text font will now be correctly set as initial default chat
3210 font.
3211 * It is now possible to skip displaying a server's MOTD on connect.
3212 * If the application is set to display a server's MOTD in a fixed-width font and
3213 the
3214   previously configured default chat font is already a fixed-width font, the
3215 chat font
3216   will now be used rather than the global KDE default fixed-width font.
3217 * The state of the automatic spell checking functionality is now remembered
3218 across
3219   sessions and set for all tabs.
3220 * Networks no longer lose their channel history when their settings are changed.
3221 * The Server List dialog will no longer close when a connection attempt fails
3222 due to
3223   the identity not being set up correctly.
3224 * After changing your nickname using the optional drop-down menu to the left of
3225 the
3226   input line, focus will now be returned to the input line.
3227 * The configuration dialog has been rewritten to correctly update the button
3228 state of
3229   its primary actions and improve consistency with the KDE style guide.
3230 * The vertical and horizontal splitters in channel tabs now behave better when
3231 the
3232   application window is resized and correctly retain their positions across
3233 sessions.
3234 * The OSD preview in the OSD settings page is now always shown correctly.
3235 * The OSD will no longer be shown when the desktop is locked.
3236 * A bug that prevented copying text from the chat area under certain
3237 circumstances has
3238   been fixed.
3239 * Keyboard search in the channel nickname list has been fixed.
3240 * A number of issues affecting nickname context menus in the chat area have been
3241 fixed.
3242 * A bug leading to a wrong operator count in the status bar has been fixed.
3243 * It is no longer possible to add nameless networks or hostless servers in the
3244 respon-
3245   sible management dialogs.
3246 * Bugs that led to parts of the interface not reacting to KDE color scheme
3247 changes have
3248   been fixed.
3249 * The status bar now correctly reacts to KDE font size changes.
3250 * A bug that led to the application window resizing on overly long status bar
3251 contents
3252   has been fixed.
3253 * A bug that led to multiple remember lines being inserted into the frontmost
3254 tab when
3255   away mode was activated has been fixed.
3256 * A bug that led to wrong link addresses being opened from the chat area has
3257 been fixed.
3258 * Bugs that led to wrong URLs being produced by dragging a link from the chat
3259 area to
3260   the input line have been fixed.
3261 * Channel names are now better recognized as such by the chat area.
3264 Bookmarking
3265 * Bookmark titles now default to the channel name.
3266 * Bookmarks now store the network name rather than the server address where
3267 available.
3268 * Bookmarks now support IPv6 addresses.
3271 Commands
3272 * The '/server' command now recognizes a greater variety of address notations
3273 including
3274   network names.
3275 * The '/names' command now always succeeds in returning the user list of a
3276 channel.
3277 * The '/topic' command now always succeeds in returning the topic of a channel.
3278 * A '/dns' command has been added that facilitates resolving the host name of a
3279 user on
3280   the server as well as generic host names. Reverse resolve is supported on KDE
3281 3.5.1+.
3282 * An '/unignore' command has been added.
3283 * A '/disconnect' command has been added.
3284 * A '/reconnect' command has been added that disconnects and then reconnects the
3285 respec-
3286   tive server.
3287 * A '/setkey' command has been added to set the Blowfish encryption/decryption
3288 key for
3289   the respective context.
3290 * The '/list' command now correctly opens the Channel List tab.
3291 * A bug in parsing the arguments of the '/join' command has been fixed.
3292 * Usage information and error reporting for various commands has been rewritten
3293 for
3294   improved consistency and clarity.
3295 * A bug that led to a 'clear' command being sent to the server when using the
3296 '/clear'
3297   command to clear the contents of a query tab has been fixed.
3300 Miscellaneous
3301 * The 'media' script has been rewritten and now features improved compatibility
3302 with
3303   common character sets, greatly enhanced support for the Kaffeine media player
3304 and
3305   newly added support for the Yammi media player.
3306 * The 'sysinfo' script has been rewritten to produce more concise output and
3307 better
3308   handle a variety of storage scenarios.
3309 * The convenience feature expanding [[term]] into a Wikipedia link is now
3310 localizable
3311   and generates a link that performs an intelligent lookup for the term in the
3312 Wiki-
3313   pedia rather than assume a correct direct link.
3316 Technology
3317 * Konversation now depends on KDE 3.4+.
3318 * The preferences storage system has been rewritten to facilitate easier
3319 maintenance
3320   and faster development in future release cycles.
3321 * Localized support for a long list of IRC protocol primitives has been added.
3322 * The application will now correctly iterate over a network's servers on
3323 successive
3324   failed connection attempts.
3325 * When the '/server' command or the Quick Connect dialog is used to connect to a
3326   server that has previously been added to a network in the Server List dialog,
3327 it
3328   will be recognized as being part of the network and the respective identity
3329   settings will be applied.
3330 * The automated reply to a highlight event can now reference the groups of the
3331 matched
3332   pattern by the identifiers %1-%9 and the entire match by the identifier %0.
3333 * The CABAP IDENTIFY-MSG technology is now supported.
3334 * Compatibility with the Unreal IRC server has been improved.
3335 * Initial support for Blowfish encryption (compatible with mIRCryption and FiSH)
3336 has
3337   been added. Note that Diffie-Hellman key exchange (DHX) is not yet supported.
3338 * The Watched Nicknames reporting has been made more reliable.
3339 * Socket handling in the DCC file transfer feature has been improved.
3340 * Alpha-blending of icons in the channel nickname list has been fixed.
3341 * Support for the iso-2022-jp encoding has been enhanced.
3342 * The custom web browser feature will now automatically append the URL as a
3343 parameter
3344   to the specified command when the %u identifier is missing.
3345 * Channel modes are now correctly cleared and updated in the internal
3346 representation
3347   on rejoin.
3348 * A bug that led to an infinite loop during a connection attempt when all
3349 nicknames
3350   configured in the identity were in use has been fixed.
3351 * A bug that could lead to a crash when opening the log file for a closed
3352 connection has
3353   been fixed.
3355 -------------------------------------------------------------------------------
3357 Changes from 0.17 to 0.18
3358 - All nicks were blue when colored nicks are disabled with some setups
3359 - /cycle now works as expected
3360 - /gauge script was not working correctly when given a bigger than 100 argument
3361 - /mail script has been added
3362 - Button to invoke Regular Expression Editor (if installed) in Settings ->
3363 Highlight.
3364 - Complete command line argument system for connection
3365 - An option to disable clickable nicks . Add ClickableNicks=false to
3366 konversationrc to disable it.
3367 - Fixed a big memory leak in message processing
3368 - Nicklist slider now correctly resizes in all channels when its resized and
3369 correctly restores on startup
3370 - [[foo]] is now a link to http://en.wikipedia.org/wiki/foo . We will expand
3371 this to local wikipedia's in a later release [Update: Now fixed in 0.19]
3374 Changes from 0.16 to 0.17
3375 - Add an option to hide realnames in nicklist
3376 - Show away users as disabled ala Xchat
3377 - Remove sort by away status
3378 - Fix whois replies for normal users on safe channels ( IRCNet alike )
3379 - Fix whois replies from ircd-hybrid ( Efnet alike )
3380 - Better handling of quiet bans ( especially Freenode )
3381 - KDE color scheme is now honered in topic widget
3382 - Enable clickable nicks even if colored nicks are off
3383 - Per identity pre-shell command support with a GUI
3384 - Bookmarking support
3385 - Detect Japanese encoding correctly while trying to auto-detect Unicode
3387 Changes from 0.15 to 0.16
3388 - Dropping URLs onto nick on nicklist or onto query initiates DCC send
3389 - You can now do SSL connections from Quick Connect Dialog
3390 - Nicklist Icon Themes
3391 - New topic widget
3392 - Added a channel dialog
3393 - Made the nickname box optional
3394 - Fix DCC resume when its set to auto-accept
3395 - Calculate DCC CPS more accurately
3396 - Colored nicks support
3397 - Added dcop functions to set away and added alt+a shortcut to toggle away
3398 - Clicking nicks in channel text will now open a query and similarly,
3399   clicking #foo will now join channel #foo
3400 - Nicks in channel view now have a context menu as in nicklistview
3401 - Tab at begining of line inserts last completed nick
3402 - A media script added to replace amarok,juk,noatun,kaffeine scripts.
3403   Use /media instead of using /amarok,/juk etc.
3404 - Links can now be dragged & dropped from channels
3405 - Midde clicking urls now opens them in new tab in konqueror ( if konqueror is
3406 used for links )
3407 - Improved unicode detection
3408 - Fix unicode detection for strings containing color markup
3409 - /omsg,/onotice support
3410 - Added an option to use an IPv4 interface for IPv6 dcc sends
3411 - A new /google script added to search Google using Google SOAP api
3412 - Redesigned settings page
3413 - A new application icon
3414 - Lots of optimizations all around
3416 Changes from 0.14 to 0.15
3417 - Ported socket code to KNetwork. Weird connection problems should be gone now
3418 - Get default username/ident information from system
3419 - Support for bouncer prefixes in nick completion
3420 - Dcc port range support
3421 - Scripts now works with /script or /exec script
3422 - Improved bidi support.
3423 - Cleaned up settings dialog
3424 - Added an option how to get own IP for DCC send/chat
3425 - "Open Watched Nicks Online panel on startup" option
3426 - Support encoding settings per channel
3427 - SSL Support
3428 - KIO-fied local I/O on DCC send/receive
3429 - OSD Positioning Support
3430 - New network based server settings
3431 - Added an option to stay in systray all the time
3432 - Full irc:/ url support (channel name & password now supported in url)
3433 - /charset support
3434 - auto /WHO support
3435 - display away status of nicks in nick list
3437 Changes from 0.13 to 0.14
3438 - Added irc "pseudo" command /prefs for changing settings without settings
3439 dialog.
3440 - Measure away time and make it available via placeholder (%t)
3441 - (Very much) Improved OSD.
3442 - New application icons by luciash d' being <luci@sh.ground.cz>. Thanks!
3443 - Added /server command for connecting to a server.
3444 - After the connection is lost and the old nickname is still in use,
3445   the nickbutton in the channelwindows is updated to the new nick.
3446 - Now you can read utf8 encoded messages even if your locale is not unicode
3447 - "Do not show this dialog again" preferences now works correctly
3448 - Added an "Insert Remember Line" feature.
3449   The user can mark the position in the channel where he stopped
3450   reading(because he is away for a short time).
3451   When he comes back, he can scroll back to this mark and read
3452   what he missed.
3453 - Added the possibility to execute commands on server connection(for
3454   authentication and such things). Can be configured in the "Edit Server"
3455   dialog.
3456 - Added further timestamps for am/pm (BR 79612)
3457 - Added QuickConnect dialog by Michael Goettsche. (Thanks once again)
3458 - Properly receive a logout/shutdown request and terminate konversation,
3459   instead of minimizing to the systray.
3460 - Make OSD switchable on/off via DCOP. Thanks to Michael Goettsche! (BR 75870)
3461 - Dates can now be shown, next to the timestamp. Patch by Michael Goettsche
3462   (BR 82785) (thanks!)
3463 - Added DCC auto-resume feature by Michael Goettsche (BR 81740) (thanks!)
3464 - Added systray notification
3465 - Added shell like nick completion mode (aka uga mode)
3466 - Implemented a cleaner way of handling tab shortcuts
3467 - Implemented DCC Chat
3468 - Hilight mailto: links
3469 - Topic line can now be hidden
3470 - Added an away nickname
3471 - Added /aaway, /ame and /amsg
3472 - Added "Open URL" context menu to channel list entries
3473 - Implemented slower / faster blinking of tabs for more / less important events
3474 - Less important events like Join, Part and Nickchanges can now be hidden
3475 - Custom CTCP Version Reply Support
3476 - Added a shortcut to close all open queries
3477 - Added a patch by Thomas Nagy to cycle tabs with mouse scroll wheel (thanks!)
3478 - Added logfile reader
3479 - Added patch by Gary Cramblitt to enhance DCC panel (thanks!)
3480 - Added patch by Gary Cramblitt to select custom web browser command (thanks!)
3481 - When the server goes offline, now all associated tabs get crossed out
3482 - Added a multi line pasting editor
3483 - Nicks Online is now a tabbed panel, rather than separate window.
3484 - Added sound support to the highlight list
3485 - Added regular expression support to the highlight list^
3486 - Follow the style guide when the tray icon is enabled by minimizing to tray
3487 when
3488   the close button is clicked.
3489 - Auto text feature on highlight events
3490 - DCC resume offers to rename a transfer now
3491 - Added patch by Ruud Nabben to enable hiding of IRC colors (thanks!)
3492 - Various small fixes and additions
3494 Changes from 0.12 to 0.13
3495 - Added an option to hide hostmasks in channel nick lists
3496 - Autojoin on invite with user interaction implemented
3497 - Added URL catcher interface
3498 - Added user interface for "don't show again" dialogs
3499 - Added slovenian translation by Barko (thanks!)
3500 - Added korean translation by Hye-Shik Chang (thanks!)
3501 - Added option to place tabs on top
3502 - Color configuration is now in preferences dialog
3503 - Quick buttons configuration is now in preferences dialog
3504 - Notify list is now in preferences dialog
3505 - Option for a background image added
3506 - Added /quote command for raw server messages
3507 - Added Copy URL into clipboard for URL catcher
3508 - Added option for reconnect on too long lag
3509 - Added "Server list" menu entry to "File" menu
3510 - Applied a patch by Peter Simonsson (thanks!)
3511 - Patch added Color picker, IRC colors and KNotify events
3512 - Added support for command aliases
3513 - Encodings are now on per-identity basis
3514 - Added indicator to show own away state
3515 - Added system tray icon patch by Frauke Oster (thanks!)
3516 - Channel list update is now more CPU friendly
3517 - Tell the user why the channel list could not be opened
3518 - Channel list now sorts correctly when number column is clicked
3519 - Applied a patch by Christian Muehlhaeuser to enable bigger mode changes
3520 (thanks)
3521 - Applied a patch by Christian Muehlhaeuser to right-align close widgets
3522 (thanks)
3523 - Info button on dcc panel now works
3524 - Added /unban command
3525 - Applied a patch by Christian Muehlhaeuser for OSD functions (thanks)
3526 - Applied a patch by Sascha Cunz for extended user modes beyond @ and + (thanks)
3527 - Applied a patch by Steve Wollkind to close visible tab via shortcut (thanks)
3529 Changes from 0.11 to 0.12
3530 - Now handles multi server mode in one single window
3531 - Fixed the wrong Ops counter
3532 - Added /notify command and respective dcop calls
3533 - Added support for /oper command
3534 - Implemented /ban command and menu items
3535 - Added shortcut (F3) for search dialog
3536 - History does not get cleared on cursor up/down anymore
3537 - Added context menu to copy URLs immediately
3538 - Added paragraph spacing
3539 - Added hostmask column to nick list
3540 - Implemented background hostmask scanning
3541 - Recognises now who set the first topic
3542 - Added nickname sorting options
3543 - Sorting now has up/down arrows
3544 - Added channel list panel
3545 - Added russian translation by Stanislav Karchebny (thanks!)
3546 - Applied some patches by Stanislav Karchebny
3547 - Added PgUp/PgDown support to Channels, Queries and Status views
3548 - Added rename button to identity page to overcome QComboBox limitations
3549 - Tabs now blink in the last highlight color to indicate important text
3550 - Tabs don't get to front anymore while the user is typing in an input line
3551 - Added shortcut editor dialog
3552 - Added konsole panel (thanks to Mickael Marchand)
3554 Changes from 0.10 to 0.11
3555 - Added a patch by Bart Verwilst to provide automatic service registration
3556 (thanks!)
3557 - Added "Hide Menu" function
3558 - Improved server connection code to stop konversation freezes at startup
3559 - Server lag calculation after reconnect fixed
3560 - Implemented own async lookup class to throw out broken QDns
3561 - Added prelimnary application icons
3562 - Send File in dcc panel now works
3563 - Added Send File context menu item in text views
3564 - Added dialog for Resume / Overwrite DCC Get files
3565 - Added large paste warning dialog
3566 - Close Buttons on tabs are now an option
3567 - Added context menu on tabs with close item
3568 - Added ALT+1 - ALT+9 for switching tabs
3569 - Applied a big patch by Alex Zepeda. Thanks!
3570 - First working DCOP implementation
3571 - Implemented a simple search dialog
3572 - Added a raw log pane
3574 Changes from 0.9 to 0.10
3575 - Font encodings are now set via KCharsets
3576 - Implemented different identities
3577 - Added double click actions to nick list and notify list
3578 - Added support for ASCII-BEL
3579 - Added custom spacing and margin
3580 - Added close buttons for the tabs
3581 - Redesign of the color configuration dialog
3582 - Switched to kapp->config() to properly remember dialog status
3583 - Color code parsing now works with QRegExp
3584 - CTCP-Ping now works
3585 - Removed files that are no longer needed
3586 - Updated German translation
3588 Changes from 0.8 to 0.9
3589 - Added strikeout support (untested yet)
3590 - Added Swedish translation, done by Karolina Lindqvist (thanks!)
3591 - Added optional timestamps to chat windows
3592 - Quick Buttons and Channel Mode Buttons can now be hidden
3593 - Added support for multi channel joins
3594 - Added #include "sourcefile.moc" to all Q_OBJECTS to speed up compiles
3595 - Added support for autoconnect to server
3596 - Inserted a QSplitter between channel text and nick list
3597 - Added support for background colors
3598 - Reduced flickering on blinking tabs
3599 - Added experimental support for foreign language characters
3600 - Added ignore list functionality
3601 - Added away / unaway messages
3602 - DCC folder can now be selected vial GUI
3603 - Applied a patch by Barak Bloch to fix foreign character set behaviour
3604 (thanks!)
3605 - Updated German translation
3607 Changes from 0.7 to 0.8:
3608 - DCCs can now be opened (started) using the 'open' button
3609 - DCCs can now be aborted using the 'abort' button
3610 - Added support for /users reply
3611 - Added support for /invite and 341 reply
3612 - Added support for 401 error reply
3613 - Added /smsg for "silent messages"
3614 - Text and Nicklist-Fonts can now be selected via GUI
3615 - Changed server ping response again to make dalnet ircd happy
3616 - Fixed nicklist sorting in channels
3617 - Switched to kdevelop 2.1.4 to hopefully fix some compile problems
3618 - Made Notices appear a bit different
3619 - DCC recipient list now gets sorted
3620 - Made text widget not scroll when scroll bar isn't completely down
3621 - Parsed WHOIS messages into human readable form
3622 - Pasting multiline text into input lines now behaves as expected
3623 - Hilights now honor the sending nick, too (patch by Suran. Thanks!)
3624 - You can now hilight all your own lines independently
3625 - Fixed the problem in the appearance dialog with font names
3626 - Added DCC error dialogs
3627 - Quit/Nickchange/Kicks are now only reported in channels where the nick
3628 actually is in
3629 - Fixed bug with lockups on defective logfiles
3630 - Added support for EUR currency symbol
3631 - Added keyboard handling to navigate between pages
3632 - Code cleanup in nick list
3633 - Added first support for custom colors in nick list
3634 - Added application dsescription for the 'About' dialog
3635 - Major restructuring of the server status panel