Changes from Konversation 1.6 to 1.7-rc1:
Konversation v1.7-rc1 is the first release candidate for the next major
version of Konversation. The focus of the v1.7 release is on greatly
expanded protocol support, with newly-added support for many more IRC v3
extensions and the much-requested support for SASL EXTERNAL and
'server-time'. Many bugfixes and cleanups along with reinstated features
initially lost in the first Frameworks 5-based release series v1.6.x are
included as well. Finally, the handbook has been thoroughly refreshed in
this release and building on Mac and Windows has seen several fixes.

* Improved support for CAP negotiation
* Output for CAP LS and CAP LIST is now shown in the server status view
* Added support for IRCv3 CAP MULTI-PREFIX
* Added support for IRCv3 CAP AWAY-NOTIFY
* Added support for IRCv3 CAP ACCOUNT-NOTIFY
* Added support for IRCv3 CAP EXTENDED-JOIN
* Added support for IRCv3 CAP USERHOST-IN-NAMES
* Added support for extended WHO
* Added support for server-time and message tags
* Added support for znc.in/server-time-iso, making buffer playback from
  ZNC much nicer
* Added support for the SASL EXTERNAL authentication mechanism, e.g. needed
  for using Tor with freenode.
* Redesigned search bar in chat views
* Added support for font zooming to chat views
* Improved bi-di text handling in chat views
* The --restart command line argument works again
* Fixed command line argument parsing when Konversation is already running
* Fixed tab completion not working when pressing tab after a full existing
  nickname as prefix
* Fixed the topic editor not updating when the topic changes
* Fixed nickname links including the pipe character
* Fixed the Invite dialog not closing on OK
* Fixed angle bracket display in OSD message bubbles
* Fixes to core protocol handling, e.g. in prefix parsing
* Fixed crash on close when the nick menu has been shown
* Fixed crash on quit
* Fixed crash when closing views
* Fixed crash in DCC resume dialogs without a Retry button
* Fixed incorrect icon for the global away action
* Minor UI layout cleanups, e.g. in the Behavior -> Chat Window settings page
  and fixes to tooltips
* Code cleanups, e.g. removal of unused settings and related code paths,
  porting away from deprecated API, and more
* Overhauled and corrected handbook & refreshed handbook screenshots to
  Frameworks 5 version
* Build fixes for Windows (MSVC compatibility and winsock linking)
* The Windows and Mac builds now have app icons
* Improved code portability by using different byte swapping routines
* Updated AppStream metadata
* Konversation now depends on Qt 5.5+ and KDE Frameworks 5.25+

Changes from Konversation 1.6.1 to 1.6.2:
Konversation 1.6.2 is a hotfix release that fixes an unfortunate severe
crash condition that crept into 1.6.1.

* Fixed a bug causing various operations on server list data to crash, e.g.
  pressing "Edit" on a server sub-item in the Server List dialog.
* Translations for AppData metadata added in v1.6.1.

Changes from Konversation 1.6 to 1.6.1:
Konversation 1.6.1 is a maintenance release that contains various bug fixes
for the stable KDE Frameworks 5-based version of Konversation.

* Added an option to allow a server to bypass the global proxy settings.
* Fixed a crash when changing the Qt style engine.
* Fixed a crash when running "/exec -showpath" with no script name.
* Fixed notification events for DCC Chats not working.
* Fixed crash when closing the DCC Status tab.
* Fixed crashes with the ISO-2022-JP encoding.
* Fixed the "Close All Open Queries" action not working properly.
* Minor UI polish, e.g. the margin under the nicklist when the Quick Button
  grid is disabled or emtpy.
* Fixed missing icons on the Next/Previous buttons in the search bar.
* On screens to small to fit Konversation's configuration dialog, the
  dialog will now show scrollbars around its content instead of the dialog
  buttons being forced off-screen.
* Konversation now sets its window icon in a way that causes a hi-res icon
  to be available in window switchers such as Plasma's Alt+Tab UI.
* Removed the spell checking language submenu from the context menu of the
  input bar - KDE Frameworks 5 now contains this upstream, leading to two
  submenus.
* Fixed installing the Oxygen nickname list theme.
* Fixed changes to the tab bar font's font weight being applied to the chat
  text area.
* Minor changes to tooltips to support the Wayland windowing system better.
* Fixed the Windows build.
* Added KCrash (DrKonqi) support.
* Improved support for the KDE Kiosk framework, fixing checks for the
  "shell_command" privilege.
* Added AppData metadata for app stores.

Changes from Konversation 1.6.1-beta1 to 1.6:
Konversation 1.6 is the first stable release of Konversation built on the
new KDE Frameworks 5 and Qt 5 library sets, improving integration into many
desktop environments, including Plasma Desktop 5, and adding first support
for hi-dpi scaling. In addition to porting and reworking things for hi-dpi
scaling, a number of behavior improvements and bug fixes were implemented,
particularly improved nickname selection behavior at connection time and
better layout behavior for the channel topic area.

Unfortunately the 1.6 release removes support for integrating with the KDE
Address Book, as the interfaces Konversation was using to achieve this were
dropped from KDE Frameworks. A replacement is in the works in the form of
the new KPeople library, which we intend to use in a future release. Using
KPeople, Konversation will then be able to tightly integrate with various
contact management-related features in Plasma Desktop.

* Improved support for character set aliases via KCharsets.
* Improved behavior when reconnecting and Konversation had to use an
  alternate nickname for the previous connection because the preferred
  nickname was already in use: Konversation will now try harder to go back
  to nicknames sorted earlier in the identity's nickname list, instead of
  advancing down the list without checking whether earlier nicknames have
  become available again.
* Konversation will no longer give up trying to connect when only a single
  nickname is configured and not available at connection time. Instead, it
  will do as many reconnection attempts as allowed by user configuration.
* Fixed incorrect size calculations for the channel topic text label causing
  cut-off text and unwanted collapsing of the topic area.
* Fixed a bug causing auto-connect not to connect to networks in the order
  they are listed in the Server List dialog.
* Fixed a bug causing the main window not to be raised when an Konversation
  is started an additional time and the window is currently minimized.
* The default tabs position is now 'Left', i.e. the treelist version of the
  tab bar.
* Tabs can now be reordered by drag and drop again.
* Fixed various rendering issues in the treelist version of the tab bar and
  made it high-DPI scaling-capable.
* Fixed a bug causing Channel List tabs not to be sorted below the status
  tab of the server they belong to in the treelist version of the tab bar,
  and corrupt its contents.
* Fixed margins in the Edit Network dialog.
* Improved wording and correctness of several interface messages.
* Fixed a bug causing some interface messages and labels not to use their
  translated versions when running with a language other than US English.
* Fixed a bug causing Konversation not to generate default command aliases
  for installed scripts at startup anymore.
* The bundled 'cmd' script now defaults to trying to decode command output
  as Utf-8 even when run on Python 2.
* Fixed the bundled 'bug' script not working.
* Fixed naming of bundled icons.
* Konversation now opts into Qt's high-DPI pixmap handling.
* Adjusted build system to use co-installable version of qca-qt5.
* Fixed build failures on Windows.

Changes from Konversation 1.5.1 to 1.6-beta1:
Konversation 1.6-beta1 is the first release of Konversation built on the new
KDE Frameworks 5 and Qt 5 library sets, and intended to allow you to help us
test and shake out the remaining issues in the ported code. With stability
despite many changes under the hood as the primary goal, the 1.6 release will
not bring any new features, though Frameworks 5 and Qt 5 offer a host of
efficiency improvements over the old stack and will enable us to support
hi-dpi scaling and Wayland going forward.

Known issues in this beta include a lack of addressbook integration support
(the needed Frameworks dependencies have not yet been released), drag and
drop support for tabs being disabled, and minor visual polish issues,
including some visual assets not having been updated to match KDE's new
"Breeze" visual identity yet. We expect to resolve these issues in upcoming
releases.

* Konversation now depends on KDE Frameworks v5.2.0 and Qt v5.3.0.
* The default nickname list theme has been updated to KDE's new Breeze visual
  identity.
* Notification events now have non-generic titles to prevent Plasma Desktop 5
  from merging events from different sources.
* Fixed a bug causing the "Focus Input Bar" action to be enabled/disabled at
  incorrect times.


Changes from 1.5 to 1.5.1:
Konversation 1.5.1 is a maintenance release containing only bug fixes. The
included changes address several minor behavioral defects and a low-risk DoS
security defect in the Blowfish ECB support. The KDE Platform version depen-
dency has increased to v4.9.0 to gain access to newer Qt socket transport
security flags.

* Fixed a bug causing wildcards in command alias replacement patterns not to
  be expanded.
* Fixed a bug causing auto-joining of channels not starting in # or & to some-
  times fail because the auto-join command was generated before we got the
  CHANTYPES pronouncement by the server.
* Added a size sanity check for incoming Blowfish ECB blocks. The blind
  assumption of incoming blocks being the expected 12 bytes could lead to a
  crash or up to 11 byte information leak due to an out-of-bounds read. This
  fixes CVE-2014-8483.
* Enabling SSL/TLS support for connections will now advertise the protocols
  Qt considers secure by default, instead of being hardcoded to TLSv1.
* Fixed the bundled 'sysinfo' script not coping with empty lines in
  /etc/os-release.
* Made disk space info in the bundled 'sysinfo' script more robust by forcing
  the C locale for 'df'.
* Added an audio player type hint for Cantata to the bundled 'media' script.
* Fixed some minor comparison logic errors turned up by static analysis.
* Konversation now depends on KDE Platform v4.9.0 or higher.


Changes from 1.5-rc2 to 1.5:
Konversation 1.5 adds numerous major features over the previous stable release.
Of particular note are support for SASL and client certificate authentication,
all-new topic management UI, overhauled authentication UI in the Identities
dialog, per-tab spell-checking language settings, user-configurable nick context
menu entries, mouse spring-loading on tabs, all-new versions of major bundled
scripts and improved Ignore and Watched Nicknames systems. Many under-the-hood
changes to improve codec support and general performance, along with the usual
slew of bug fixes all over, further sweeten the deal. Don't miss out on reading
about various other new features and more fixes in the full changelogs since
version 1.4, too!

* Expanded interface translations.


Changes from 1.5-rc1 to 1.5-rc2:
After a (too) long wait, Konversation 1.5-rc2 is hopefully our final bid for
your aid in assuring the quality of a now-impending final release. Quite a few
gnarly bugs have fallen since rc1; some of them long-standing, others were
introduced along with the features that made their debut in the preceding test
release. Of particular interest to many users will be robustness improvements
in the Watched Nicks system and the lifting of certain restrictions on Unicode
support that had been in place as a by-product of supporting older, defective
Qt versions. See the changelog for more details!

* Fixed a bug that could cause the Watched Nicks system to report all nicknames
  as offline if the Watched Nicks tab had been opened prior to a reconnect, even
  if that was not the case.
* Fixed a bug where a URL with IRC Color markups caused to show colors, even if
  'Allow Colored Text in IRC Messages' was disabled.
* Fixed a bug where spaces in the path to the pre-connect shell command were
  handled incorrectly. Tilde expansion now occurs as well.
* Clicking a channel link starting with more than one # character would join a
  channel starting with one # too few; this has been fixed.
* Fixed auto-replace not being applied to messages that are sent from the
  Large Paste Warning dialog.
* Made the action to manually apply Auto Replace work in the Paste Editor
  as well.
* Fixed irc(s):// URL support registration in KDE 4.9.3+ (kdelibs versions 4.9.3
  and higher give precedence to .desktop file x-scheme-handler MIME type regis-
  tration over .protocol files installed by an app, but Konversation did not
  announce URL support via an %u expando in the Exec key).
* Build fix for win32.
* Added a workaround for a rare crash on Mac OS X due to bugs in the implementa-
  tion of Qt's font metrics calculation on that platform.
* Fixed a bug causing changes of the 'a' user mode to set/remove Owner status on
  nickname list entries.
* Minor UI cleanup in the Channel Settings dialog.
* Enabled freedesktop.org Startup Notification support.
* Recent releases of Konversation filtered all Unicode characters outside the
  Basic Multilingual Plane due to a confluence of grave bugs in the Utf-8
  support in Qt. As fixed versions of Qt have now circulated for some time and
  are required to build Konversation, this restriction on Unicode support has
  now been lifted.
* Fixed a bug that caused the desktop notification (KNotify) event for nicks
  on the Watched Nicknames list coming online or dropping offline not to fire
  when notifications for the associated connection's status tab were disabled.
* Fixed the bundled 'sysinfo' script crashing on non-ascii characters in
  /etc/os-release when run on Python 2.
* The bundled 'sysinfo' script now tries harder to determine the current CPU
  clock frequencies (it now looks at sys/.../cpufreq/scaling_cur_freq in addi-
  tion to /proc/cpuinfo).
* Fixed a bug causing the flood fill tool in DCC Whiteboard tabs not to use
  the correct color after using the color picker tool to set it.
* Launching the default browser when clicking on links now works properly
  again on Windows.
* Fixed a bug causing certain combinations of sorting and filtering in Channel
  List tabs not to work correctly, leading to partially unsorted list entries.
* Minor rewordings and cleanups in UI text and the handbook for clarity and
  correctness, e.g. the "Notify" notification event is now known as "Nick on-
  line".
* More information sources are now taken into account to update Konversation's
  idea of whether a particular nick is identified with services or not (infor-
  mation from IRC numeric 330 was previously discarded).
* Fixed a bug causing Konversation to attempt to PART a channel that's no
  longer actually joined when closing a channel tab after having been kicked
  from the channel.
* Some included PNG image files were badly encoded, this has been addressed.
* Fixed a bug causing the file URL for an authentication certificate in the
  Identities dialog to be forgotten across application restarts.
* The warning about text in the topic editor exceeding the server-allowed
  limit now calculates the threshold more correctly, taking encoding and IRC
  formatting expandos into account.
* Konversation now depends on KDE Platform v4.7.0 or higher and Qt v4.7.0 or
  higher.


Changes from 1.4 to 1.5-rc1:
Konversation 1.5-rc1 is the first test release for our next major release. The
1.5 development cycle has lead to significant new features in many areas of the
application, from support for SASL and client certificate authentication on
the protocol side, to all-new topic management UI, overhauled authentication
UI, per-tab spell-checking language settings, user-configurable nick context
menu entries and mouse spring-loading in the frontend and all-new versions of
major bundled scripts. Improved Ignore, Watched Nicknames and Edit Paste
functionality and behavior, performance improvements in some critical codepaths
and many other bug fixes and minor UI touch-ups round things out.


* The user interface for the Auto Identify settings in the Identities dialog has
  been extended by a combo box that allows choosing the type of authentification
  to be performed. Depending on the chosen type, different input fields are shown
  below the combo box.
* The server password-based authentification supported by some networks is now
  configurable in the Identities dialog as well, making it more discoverable and
  allowing to keep Auto Identify settings generally with the Identity rather than
  requiring going through the Edit Server dialog.
* SASL PLAIN authentification is now supported. To use, pick SASL as the Auto
  Identify type in the Identities dialog and fill in your account name and
  password.
* Standard NickServ authentification has been further improved. The command sent
  to to the service, previously hard-coded to "identify", is now configurable,
  and the name of the service now defaults to "nickserv" in new identities
  (the previous default was an empty field).
* Added support for authenticating via a SSL Client Certificate in the form of
  a PEM file if Konversation is built against KDE Platform v4.8.3 or higher.
  Choosing this type of authentication in the Identities dialog forces SSL to be
  enabled for a connection, overriding any server settings.
* Added the ability to set a different spell-checking language for every tab,
  from the context menu of the input box. The chosen language setting is pre-
  served across application restarts.
* The Topic tab in the Channel Options dialog has been redesigned and
  rewritten from scratch, featuring a much improved UI and many bug fixes:
  - In place of the previous UI with a multi-column topic history list and two
    distinct text fields for browsing and editing there is now only the list
    and an edit field. The list has been redesigned to show all of the data for
    a topic, with visually distinct headers serving to delineate individual
    entries and showing the author and timestamp, above the full text for each
    topic.
  - Entries in the history list now sport a context menu allowing to copy the
    topic text and querying the topic author.
  - A new search field above the history list allows filtering it by looking
    for the search string in the text, author name and timestamp of all topics.
  - When an encryption key is set for a channel an attempt is now made to
    decrypt all of the topics in the history, not just the current topic.
  - When editing the topic any text entered past the server's maximum
    allowed topic length will now be drawn in the color scheme's negative
    text color (i.e. usually red). Further, if Konversation has been built
    against KDE Platform v4.7.0 or higher, a warning is shown at the bottom
    of the text field explaining the limit and offering the option - via a
    button - to delete the excess text.
  - The text cursor is now automatically placed at the end of the edit field,
    making the common use case of adding to the topic more convenient.
  - The location of the splitter handle inbetween the history list and the edit
    is now remembered across all Channel Options dialogs and application
    restarts.
  - Storing the topic history for each channel now takes up less memory, and
    general efficiency in handling with topic data has been improved greatly.
  - Fixed a bug causing redundant entries to accumulate in the topic history
    across reconnects when the last entry in the history corresponds to the
    topic given by the server at rejoin.
  - Fixed a bug causing HTML tags (e.g. <title>) in topics to be invisible in
    the edit field.
  - Fixed a bug causing the "Undo" action in the edit field to occassionally
    stop working, making it impossible to return the field to the unmodified
    state in which its contents sync to the selected history list entry.
  - Fixed a bug causing the topic not to return to its encrypted form when the
    decryption key for a channel has been deleted.
  - Fixed a bug causing the author of a topic to sometimes be shown as the full
    user mask instead of consistenty showing only the nickname.
  - Fixed a bug causing the "Unknown" placeholder that is used when the author
    of a topic is unknown not to be translated.
  - Fixed the incorrect tab key order in the Topic tab.
* Fixed a bug causing the topic at the top of channel tabs not to return to its
  encrypted form after the decryption key for a channel has been deleted.
* The size of the Channel Options dialog is now synchronized between the dialogs
  for different channels and remembered across application restarts.
* The widths of the columns in the Ban List tab in the Channel Options dialog
  is now synchronized across all Channel Options dialogs.
* The Quick Buttons options now feature a new checkbox that toggles whether Quick
  Buttons that operate on nicknames will be shown alongside other nickname-
  related actions in context menus throughout Konversation. Essentially, this
  allows for placing custom actions in nickname context menus.
* The list of placeholders available in Quick Button patterns now mention the
  previously undocumented "%k" placeholder for the current channel's key and is
  sorted alphabetically.
* When a Quick Button pattern replaces the current input box contents (due to
  the presence of the "%n" expando in the pattern) they are now added to the
  input box history first.
* Quick Button patterns now support a new "%i" placeholder that is replaced with
  the current contents of the input box.
* Both the regular tab bar and its listview version now implement "spring-
  loading". That is, when dragging something onto a tab and holding it there,
  the hovered tab will now be switched to after a brief delay. This allows
  switching to the intended tab as part of dragging text or a file to its
  destination, e.g. the tab's input bar or nicklist.
* All types of tabs which sport a prominent input widget will now see focus
  moved to that widget and the first keypress redirected when focus is on the
  treelist version of the tab bar while starting to type. In previous releases
  this already worked for chat tabs with their usual input bars, now it also
  works for e.g. Channel List tabs and Konsole tabs.
* A '/umode' convenience command to set modes on self has been added.
* The 'Mode change' notification event now sports a proper text payload
  describing what has happened.
* The system tray icon now shows an overlay icon when global away is enabled.
* The behavior of the 'Show/Hide Konversation' action has been simplified and
  tuned to do the correct thing in more scenarios. Previously, invoking the
  action would hide the window even if it was not actually visible due to
  being covered by other windows, because merely not being hidden, not being
  minimized and being on the current desktop was already considered being
  shown. A much simpler approach of always showing the window if it is not the
  currently active window (and, as before, moving it to the current desktop as
  needed) and hiding it when it is has been adopted now instead.
* Added an option to restrict logging to private conversations (queries, DCC
  chats).
* Added an action to manually apply the user-configured auto-replace rules to
  the input box contents without sending the message, enabling user review
  before doing so. The relative cursor position is preserved or the cursor is
  moved to the end of an intersecting replacement insertion when auto-replace
  is applied.
* Server status tabs for networks listed in the Server List dialog now have a
  "Connect at Startup" checkbox in their context menu, similar to the "Join on
  Connect" checkbox in the context menu of channel tabs. Both set options also
  available from the Server List.
* Removing newlines in the Edit Paste dialog can now handle Windows-style
  carriage return line breaks and whitespace characters other than ASCII 0x20.
* Part and Quit messages now show the hostmask of the subject, consistent with
  Join messages.
* The nickname list theme preview in the configuration dialog now uses the same
  background color as the actual nickname lists.
* Raw log tabs now use color coding to visually differenciate inbound and
  outbound messages, using the server message and channel message colors from
  the color settings respectively.
* The DCC Status transfer list update interval now depends on the graphics effects
  level setting in KDE System Settings, changing between 500, 1000 and 2000 ms
  depending on the level set.
* Fixed a bug causing the input box height not to be adjusted appropriately to
  fit the contents when the "Input box expands with text" option is enabled and
  the window is resized horizontally, causing the text to rewrap.
* Fixed a bug causing the context menu for an item in the DCC Status transfer
  list to appear in the wrong position.
* The double-click action command for Watched Nicks list entries now supports
  command aliases.
* Fixed a bug causing wildcard expansion to be performed on the input box
  contents when they start with a Command Alias (rather than just expanding
  wildcards in the Alias replacement pattern).
* The bundled 'media' script has been rewritten from scratch to implement the
  MPRIS2 standard for interfacing with media players - and only the MPRIS2
  standard. This means losing support for a number of legacy players which do
  not support MPRIS2, but also gaining support for a number of popular modern
  players which do (e.g. Tomahawk). Additionally, there are often third-party
  MPRIS2 bridges or plugins for players which do not support it natively. The
  script now also features much-improved error handling and reporting in the
  face of misbehaving players or configuration errors.
* The bundled 'sysinfo' script has been rewritten from scratch. The new version
  offers more accurate CPU and KDE version information (accounting for multiple
  cores and frequency scaling for the former, and making the difference between
  running inside KDE or just using the KDE Platform for the latter), as well as
  the addition of distro name and release information and generally improved
  robustness in data acquisition. Finally, the output format is now easier to
  configure, adopting an approach similar to the one used in the 'media' script.
* The bundled 'sayclip' script has been rewritten from scratch, removing the
  now-redundant flood handling found in the old version (Konversation takes
  care of this implicitly today) and improving the error handling in case
  Klipper cannot be contacted.
* The bundled 'bug' script has been rewritten from scratch, featuring improved
  error handling and adding internationalization support.
* Fixed a bug causing the What's This help tooltip for nickname lists to show
  the regular user icon instead of the away icon as the away icon example.
* The desktop notification for a completed incoming DCC file transfer now offers
  an action to open/run the received file.
* Various fixed to tab stops and margins in the configuration dialog pages.
* Minor UI fixes for the Queue Tuner (opened by /queuetuner), correcting icon
  use and button labels.
* Removed excess white space from several warning dialog messages.
* Fixed a bug causing the Watched Nicks to spam the active tab with repeated
  WHOIS requests for someone on the Watched Nicks List after opening a query
  tab to them while they were offline.
* Fixed several bugs in preserving per-tab encoding settings across application
  restarts.
* Link opening now properly respects KDE's file type associating settings instead
  of always opening a web browser.
* Fix Konversation not saving the unchecked "... a channel invitation is received"
  warning dialog option in the Warning Dialogs list in the configuration dialog
* Unchecking the "... a channel invitation is received" warning dialog option
  in the Warning Dialogs list in the configuration dialog now sets the behavior
  for future channel join invitations to always joining them. The actual dialog
  allows chosing between always accepting and always ignoring, but until this
  can be exposed in the configuration dialog, always joining them makes this
  option consistent to all other warning dialog options.
* The default behavior upon receiving a channel join invitation is now to ask
  the user, instead of silently accepting the invitation. The latter behavior
  accidentally snuck into 1.4 and is considered a bug.
* Added a workaround for behavior in the Phonon multimedia library that could
  lead to crashes on application quit when using custom highlight notification
  sounds.
* Fixed a bug causing an ambiguous shortcut warning dialog when using the
  default ESC keyboard shortcut to invoke the Focus Input Box action after the
  search has been opened and the Focus New Tabs option was disabled while a new
  tab was opened.
* Fixed a bug causing multiple ignore list entries with the same pattern not to
  be preserved across application restarts. Instead only the latest entry with
  the pattern would.
* Fixed a bug causing the tab label for open log viewer tabs to be set to
  "ChatWindowObject" when switching the tab bar position between top or bottom
  and left.
* Made the code turning channel names into clickable links more strict about what
  types of trailing punctuation it incorporates into the link.
* Fixed bugs causing currently joined channels not to react correctly to changes
  in the enabled state of the Automatic User Information Lookup setting.
  Previously, enabling the lookup would not actually start it, and disabling it
  would only take effect after one last lookup was performed. Both now take
  effect immediately.
* The reaction to a change of the Automatic User Information Lookup interval
  setting has been improved considerably: Whereas previously Konversation would
  simply wait out the current interval scheduled using the old setting value and
  only then schedule the next lookup using the new value, it now reschedules the
  next lookup to occur as if the new value had been set all along, or, if the
  time elapsed since the last lookup was performed already exceeds the new value,
  comes as close as possible by performing a lookup immediately.
* All forms of opening a query (the '/query' command, clicking a nickname in the
  chat text display, double-clicking in the nickname list or the nickname list
  context menu action) now consistently move focus to an existing matching query
  tab, matching the behavior of various forms of joining an already-joined channel.
  Previously this was only true for the '/query' command.
* Minor visual (the selection decoration for server items now spans the whole row)
  and behavioral (when collapsing a network while one of its a server is selected,
  the selection is now moved to the network item instead of becoming invisible)
  improvements in the Server List dialog.
* Fixed a bug causing the option to automatically focus new query tabs not to work
  correctly.
* Fixed a bug causing IRC formatting state not to be reset at the end of a topic
  when showing it in a channel's chat text display, potentially causing the rest
  of the line to be malformatted.
* If built against KDE Platform v4.8.3 or higher, the date column in the Url
  Catcher will now immediately reflect changes to the date format made in KDE's
  System Settings application.
* Fixed a bug causing an application crash in response to an (illegal) '/unban
  <#channel>' command.
* Showing line and paragraph indicators in the Edit Paste dialog's text entry
  field unfortunately had to be disabled for the time being due to a bug in
  the underlying Qt code.
* Leaving the "Use custom version reply" option's text field empty now disables
  responding to CTCP VERSION requests entirely instead of sending empty responses.
* Fixed the vertical height of rows in the Channel Invites dialog possibly cutting
  off the checkboxes depending on the checkbox and font sizes in play.
* A basic framework to support the IRC Client Capabilities Extension ("CAP") has
  been added.
* Performance optimizations and code cleanup for processing NAMES messages
  from the server.
* Performance improvements have been applied to hotpaths in the protocol
  implementation.
* Debug builds of Konversation now understand a "--nui" command line argument to
  disable the check for whether Konversation is already running, thus allowing
  multiple instances of Konversation to be started. This is known to cause bugs
  (e.g. for anything started by Konversation that relies on the D-Bus service
  name of the running instance being org.kde.konversation: this means all
  bundled scripts) and can wreak havoc with the config file - it's meant only
  for use by developers / for debugging purposes.
* Markup cleanups in the handbook and visual improvements to handbook icons in
  the PDF export on http://doc.kde.org.
* Fixed a compilation problem on 64bit Windows.
* Code cleanups for warnings issued by clang.
* Build system improvements for kdepimlibs includes handling.
* Konversation now depends on KDE Platform v4.6.0 or higher and Qt v4.7.0 or
  higher.


Changes from 1.4-beta1 to 1.4:
The dominant theme in Konversation v1.4 is improvements and feature additions to
the user interface, particularly to text views, dialogs, (context) menus and
input line commands. However, nearly all areas of the application have seen some
amount of improvements in this release, as is to be expected given the
relatively long release cycle: Connection behavior, IRC protocol handling,
scripting support, encryption support, user documentation - new features, polish
and certainly also bug fixes are to be found in all of them. In summary, we hope
you will enjoy the best Konversation yet.

The changelog for this release starts with a (very) brief summary of major
highlights relative to v1.3.1, followed by the short list of changes since
v1.4-beta1. If you skipped the beta, please do refer to the changelog for
v1.4-beta1 as well, which is highly detailed and categorized for your reading
pleasure.

A brief selection of highlights since v1.3.1:
* URL and email detection in text views has been rewritten from scratch, greatly
  improving the handling of various types of URLs and the contexts they might
  appear in.
* Extensive improvements to IRC formatting code handling, including the return
  of background color support.
* Extensive, sometimes full rewrites of user interface elements such as nearly
  all context menus, the URL Catcher and the Warning Dialogs system for a long
  list of user interface improvements and bug fixes.
* Improved SSL connection behavior.
* Translation support and various other improvements in several bundled scripts.
* Expanded Python scripting support via the introduction of an API support
  package.
* Support for more IRC numerics.
* Various bugfixes to input line command handling and connection behavior.

Changes since 1.4-beta1:
* Fixed +q Type A channel modes (Freenode's "quiet bans") being reported as
  awarding channel owner privileges.
* Fixed a bug causing the +r channel mode to be incorrectly described as "server
  reop" in the user interface.
* Improved the description string for the +l channel mode.
* Fixed the parameter handling of the example script in the handbook's section
  on scripting.
* Fixed build with KDE Platform versions below 4.6.0. The minimum required
  version is 4.4.3.
* The '/setkey' command now supports keys that have spaces in them, by treating
  all parameters after the first as part of the key.
* The 'Edit Multiline Paste' editor now puts initial focus on the text field,
  rather than the Send button.
* Added a sanity check to avoid a crash while processing broken, empty NAMES
  messages from a server, encountered with the shroudBNC bouncer.


Changes from 1.3.1 to 1.4-beta1:
Konversation v1.4-beta1 is the first pre-release leading up to our next major
release. A dominant theme in this release cycle have been improvements and
feature additions to the user interface, particularly to text views, dialogs,
menus and input line commands. However, as you might expect given the amount of
time since the last release (sorry about that :-), improvements are to be found
in nearly all areas of the application, including connection behavior, IRC
protocol handling, scripting support, and more. Please have a look at the
changelog for a short summary of the major highlights, as well as the usual
extensive coverage of the details.

General User interface (more UI changes in individual sections below):
* The code handling the context menus of chat text views (including the context
  menus for nicks and channel links), channel nickname list views and topic
  areas has been rewritten from scratch, resulting in a long list of bug fixes
  and consistency and efficiency improvements:
  - Numerous consistency problems in the area of which actions are available in
    which context menus have been addressed. For example, the chat text nick
    context menu used to lack many of the actions available in the nickname list
    context menu.
  - Numerous actions that require an established connection (e.g. everything in
    the "Modes" submenu of nick context menus or the DCC actions) used to not
    get disabled when loss of connection occurred. Others did get disabled, but
    not consistently in all menus in which they are available. Still others,
    such as the "Add to Watched Nicks" action, used to get disabled
    unnecessarily. All of this has been addressed.
  - Toggle actions used to appear and behave inconsistently: The nickname list
    context menu showed either "Ignore" or "Unignore" actions as applicable,
    while the chat text view nick context menu used a checkable item. Meanwhile,
    the "Add to Watched Nicknames" action had no corresponding action to remove
    a nick from the Watched Nicks Online list at all. All of this has been
    fixed, going with the "Ignore"/"Unignore" style of the nickname list context
    menu (i.e. there's now a "Remove from Watched Nicks").
  - If built against Qt 4.7, the topic area now uses the same context menus as
    the chat text view (with the exception of the inappropriate "Find Text.."
    action in the basic context menu), enabling a lot of functionality missing
    otherwise.
  - Some actions used to be shown in menus inappropriately, e.g. the "Channel
    Settings" action in the chat text view context menu of a connection status
    tab or the "Open Logfile" action in the same context menu of a raw log tab.
    This has been addressed.
  - The behavior of many of the actions is now more consistent with their input
    line equivalents. For example, clicking "Join Channel" in a link to an
    already-joined channel will now focus the existing channel tab, the same as
    the /join command would do. Previously, nothing would happen.
  - Fixed a bug causing the nick and channel link context menus in the chat text
    view of a channel tab to get disabled after having been kicked from the
    channel.
  - Fixed a bug causing the "Send Email..." action to always be disabled, even
    when any of the associated address book entries did have an email address on
    file.
  - The display of helpful titles repeating the nick/channel at the top of the
    chat text view nick and channel link context menus has been fixed - it
    previously got broken in the KDE 4 port.
  - The nick and channel link context menus now mark the action that occurs when
    clicking either as the default action of the context menu, improving the
    appearance with UI styles that visually distinguish the default action.
  - General improvements to the layout of menus, often with an aim for improved
    consistency with other KDE applications.
  - Numerous actions that were missing icons now have them.
  - The consistency of keyboard accelerators between the various menus has been
    improved.
  - Various actions in the nickname list context menu now appropriately use a
    singular or plural form for their text label depending on the number of
    selected nicks the menu operates on.
  - Improved memory efficiency by using single global instances of the various
    menus, rather than for example having two separate instances of the nick
    context menu - one for the chat text view, one for the nickname list view -
    for every channel tab.
  - The code implementing the various actions was in many cases redundantly
    implemented in three different places, for some even in four. This
    staggering code duplication has been done away with.
  - Links now have an "Open With..." action that opens a dialog allowing to
    choose in which application to open the link.
* The URL Catcher has been rewritten from scratch, bringing about a number of
  improvements and bug fixes:
  - It is now possible to select multiple list entries, and all of the
    selection-related actions, such as "Open" or "Add Bookmark", can now operate
    on multiple selected entries ("Add Bookmark" will offer to add all selected
    entries as a new bookmark folder, for example).
  - Reasonable default sorting: The list is now sorted by the "Date" column in
    descending order the first time the URL Catcher is opened, so that the
    newest URLs are found at the top. Previously, the list was sorted by the
    "From" column in ascending order by default.
  - The list data is no longer stored in memory twice while the URL Catcher is
    open. Data handling is generally more efficient.
  - The list entry context menu has been cleaned up, now showing only the
    actions applicable to individual entries.
  - The list now automatically receives keyboard focus when switching to the URL
    Catcher tab.
  - When saving the list to disk, the file dialog to pick the destination file
    will now ask before overwriting an existing file of the same name.
  - The date and time in the header of a saved list file is now formatted
    according to the user's locale settings.
  - Fixed a bug causing the opening of caught irc:// and ircs:// URLs not to
    work.
  - Fixed a bug causing the "Date" column to sort alphabetically rather than
    chronologically.
  - Fixed a bug causing the deletion of list entries not to work.
  - Fixed a bug causing a 1px remnant of tree branch lines to be visible along
    the left edge of list entries.
  - An unnecessary margin around the toolbar and the search line edit has been
    removed.
  - Fixed a bug causing the URL Catcher tab to claim to be eligible to receive
    chat text messages that have the frontmost eligible tab as their recipient
    despite it not actually possessing the means to display them, resulting in a
    crash when such a message occurred.
* The Warning Dialogs system has been overhauled, with improved wording in the
  listing in the configuration dialog (which now also contains the previously
  missing warning when minimizing to the system tray) and further improvements
  to individual warning dialogs, such as the addition of previously missing
  Cancel buttons.
* Added a "Show/Hide Konversation" action that can be used to toggle the
  minimized state of the Konversation window or, if the tray icon is enabled,
  its visibility. Additionally, the window will always be moved to the current
  virtual desktop if shown using this action (if the window is already shown on
  another desktop, it will be moved to the current desktop rather than hidden).
* It's now possible to give the "Next Active Tab" shortcut a global keyboard
  shortcut, and when triggered the action will always show, raise and focus the
  Konversation window (as needed), regardless of whether it will also perform a
  tab switch. This allows "Next Active Tab" to double as a "get me the
  Konversation window and the tab that just caused my notifications to go off"
  global shortcut.
* Clicking the Insert button in the "Insert Character" dialog will no longer
  immediately close the dialog, making it easier to insert multiple characters
  in quick succession.
* Double-clicking a character in the "Insert Character" dialog will now insert
  it into the input line.
* The "Insert Character" dialog now sports a search line.
* The widths of the columns and the sort column and direction in the Channel
  Option dialog's ban list are now remembered across application restarts.
* The "Rejoin Channel" context menu action, shown when a channel could not be
  rejoined automatically on reconnect as well as after having been kicked from a
  channel, will now appear above the "Close Tab" action rather than at the end
  of the context menu, so "Close Tab" is always the last item.
* The "Ok" button in the "Edit Multiline Paste" editor has been renamed to
  "Send" to communicate more clearly that clicking it will send the editor
  contents to the server.
* Formatting control codes (e.g. for colors) in user real names are now filtered
  out before the names are shown in the nickname list when the "Show real names
  in nickname list" option is enabled.
* The layout of user information tooltips (shown e.g. when hovering a nick in
  the nickname list or the header area of a query tab) has been improved
  slightly.
* Fixed bugs causing the tooltip for the adjacent rather than the hovered item
  to be shown when hovering the mouse pointer near the upper or lower edges of
  an item in the nickname list or the listview version of the tab bar (tooltips
  are only shown on the latter when the listview is too narrow to fit its
  contents, to provide the unelided tab names).
* Fixed bug causing the IRC Color Chooser dialog to only show 15 colors instead
  of the available 16.
* Fixed a bug causing a very wide minimum window width when a query tab with
  very long user information in the header area was open.
* Fixed bug causing the opening of URLs via the "Open URL" sub-menu in the list
  entry context menu in Channel List tabs not to work.
* Fixed a bug causing actions that are meant to operate on the active tab (e.g.
  "Close Tab" invoked by the default shortcut Ctrl+W) to operate on a different
  tab after the "Join on Connect" action in that tab's context menu had been
  used.
* Fixed a bug causing the state of the Show/Hide Menubar action not to be
  updated correctly when hiding the menubar was canceled from the warning
  dialog.
* Fixed a bug causing the "Delete" button in the "Server List" dialog to
  incorrectly show a "Network needs to have at least one server." error dialog
  when trying to delete servers, even when the deletion would in fact leave the
  network with one or more servers.
* Fixed a bug causing the active tab's text label not to be greyed out when its
  IRC server connection is cut.
* Got rid of some too large margins in the "Edit Network" dialog.

Text views:
* Added support for KDE Web Shortcuts when built against KDE Platform 4.5 or
  higher: The context menu for selected text in a chat text view then offers a
  submenu by which the selected text can be used in a web search with any of the
  enabled search providers. The resulting search URL is opened in the system's
  default wen browser after clicking on the search provider in the submenu.
* Added support for ircs:// URLs, the 's' standing for 'SSL'. It is supported
  both for opening and for bookmarking. If an ircs:// URL matches a server
  configured in the server list or refers to a network name instead of a
  specific server, the directive from the URL overrides the state of the SSL
  setting in the configuration.
* Detection of URLs and email addresses in chat text views to turn them into
  clickable links has been much improved. An incomplete overview of notable
  cases:
  - Unicode characters in URLs are now handled properly, enabling support for
    example for international domain names.
  - Protocol-less links not starting in "www.", such as the short URLs popular
    these days ("bit.ly/foo" and similar), are now recognized.
  - Arbitrary protocols (e.g. "http://" or "message://") are now recognized;
    previously only a small hand-picked and insufficient set was.
  - The check that avoids balanced a pair of parentheses around an URL becoming
    part of the link now works for more than one level of balanced parentheses.
  - Aside from balanced pairs of parentheses, also square and other forms of
    brackets are now handled properly.
  - Trailing question marks no longer become part of the link.
  - URLs using uncommon schemas, e.g. Apple message:// URLs or Wolfram Alpha
    URLs, are now handled properly.
  - Numerous improvements to email link handling: User names containing the plus
    sign are now handled correctly, opening email links from the URL Catcher
    works now and others.
  - The URL detection for the "Open URL" sub-menu in the list entry context menu
    in Channel List tabs now uses the same infrastructure as link detection
    elsewhere rather than separate code, making it massively better compared to
    previous versions.
  - Average speed of link detection has improved slightly.
* Added support for dragging web and email address links found in topic areas.
* IRC formatting markup (colors, bold, italic, etc.) support in chat text views
  and the topic editor has been improved significantly:
  - Background colors are now supported.
  - The reverse color formatting character is now supported.
  - To emphasize usability, links are now consistently displayed using the link
    and background colors from the configuration dialog, regardless of preceding
    formatting markup or formatting markup located within the link.
  - Formatting markup located within links in incoming messages no longer
    results in those links being broken.
  - Fixed bugs resulting in incorrect display of messages containing multiple
    formatting characters.
  - Improved robustness in the face of invalid color codes.
  - Formatting markup in the topic editor's topic history listing is now shown
    in the human-readable format that is also used for entry, making it much
    easier to derive a new topic from an old one that contains formatting
    markup.
  - Fixed a bug causing '/topic <channel>' to display the topic of <channel>
    with formatting markup stripped.
* Join/Part/Nick messages can now be selectively hidden based on whether the
  nickname the message is about has been active in the respective channel in the
  last 10 minutes, last hour, last day or last week. Previously it was all or
  nothing.
* Rewrote chat text view wallpaper image support to avoid rendering problems
  some users were experiencing.
* Fixed a bug causing some user hostmasks in chat text lines about channel topic
  author information to be treated as email addresses and thus turned into
  clickable links. They would also pollute the URL Catcher.
* The code backing the marker and remember lines has been rewritten to work
  around bugs in Qt that could cause crashes, especially when running
  Konversation against Qt v4.7.4 or newer (see QTBUG-20916 for more).

Input lines:
* Added a "Focus Input Box" action that puts keyboard focus on the input box.
  The default shortcut is the Escape key.
* The '(away)' label shown next to input lines when away now has a context menu
  with actions to change the away message or return from away state.
* Pressing the Tab key when the cursor is at the start of the input box now
  checks whether the remembered nickname is currently attending the channel
  before repeating the last successful completion.

Commands:
* The syntax for the '/cycle' command is now '/CYCLE [-APP | -SERVER] [channel |
  nickname]'. Whereas '/cycle' previously only allowed you to cycle a channel
  from the input line of that same channel, you can now specify the target
  explicitly. '-app' will restart Konversation (as with the new 'Restart' action
  mentioned in the "Command line arguments" section, preservation of the command
  line arguments the app was started with requires KDE Platform 4.6 Alpha 1 or
  higher to work) and '--server' will close all tabs belonging to the current
  connection and then create a new connection with the same settings as the old
  one (plus it will attempt to rejoin all previously open channels). Both are
  new abilities for the command. A '/cycle' without parameters issued in server,
  channel and query tabs is equivalent to specifying '-server' or the current
  channel or query, respectively -- the ability to cycle a query is also new.
* The '/clear' command now supports a channel or query argument to clear, as
  well as an -all parameter to clear all views.
* The '/notify' command now displays more useful output after adding and
  removing and when summarizing Watched Nicks.
* Fixed a bug causing adding of nicknames to the Watched Nicks Online list via
  the '/notify' command to fail.
* Added an optional '-showpath' parameter to the '/exec' command that shows the
  path at which the given script file was found in the chat text view, i.e.
  '/exec -showpath media'.
* Commands that accept parameters in the form "-foo" will now also understand "
  --foo".
* The '/dns' command used to block the UI while trying to resolve the parameter
  it was given, potentially causing an extended lock-up of the application when
  the system has serious DNS trouble. This has been resolved; '/dns' is now
  fully non-blocking.
* Trying to use the '/me' command from a tab that doesn't support it will now
  cause an appropriate error message to be displayed.
* Fixed a bug causing the '/kickban' command not use the default kick reason
  from the Identity settings if no reason was explicitly specified.
* Fixed a bug that could cause the '/list' command to open the Channel List tab
  for the wrong connection.
* Fixed a bug causing '/list <search pattern>' to close an existing Channel List
  tab (the intended behavior for a parameter-less '/list') rather than update
  the active filter and refresh the list.

Highlights and notifications:
* Added a new "Chat Windows" field to the Highlight configuration to optionally
  restrict the list of chat windows a given highlight event may be triggered in
  to those named in the field, separated by comma or semicolon.
* Resolved a conflict between the highlight system and the graphical emoticon
  support that was causing unintended highlights when the filesystem path to an
  emoticon image file shown in the chat text view matched any of the configured
  highlights.
* Fixed bugs in the highlight system caused by it mistakenly operating on the
  HTML markup used internally by the chat text views rather than the original
  text.

Identities:
* Added a "Default away reason" field to the "Away" tab in the Identities
  dialog. The away reason entered there will be used when no away message is
  entered manually as an argument to the '/away' or '/aaway' commands, so for
  example when Global Away is enabled using the keyboard shortcut.
* "Away Messages" on the "Away" tab of the Identities dialog has been renamed to
  "Away Commands".

Watched Nicknames:
* Fixed a bug causing the Watched Nicks Online system to fail to start checking
  nickname online status for a network after adding an initial nick to its
  Watched Nicks list via the context menu actions or the '/notify' command (it
  worked fine via the WNO tab, however).

Bookmarking:
* Fixed a bug causing the bookmark address to be unusable (it would lack the
  network name) when bookmarking a tab and the name of the associated network
  contains a space or certain other special characters.

Logging:
* Fixed a bug causing pipe symbols to appear in the date/time stamp and next to
  the nickname in backlog replay.
* Fixed a bug causing the chat text notification messages originating in the
  Watched Nicknames Online system to be logged in HTML format (and thus HTML
  source to be displayed e.g. in backlog replay).
* Fixed a bug causing a change of the buffer size setting on a log reader tab's
  toolbar not to immediately apply to new log reader tabs opened thereafter.
  Instead the buffer size for new tabs would be the size set on the toolbar of
  the last log reader tab that got closed, making it easy to unintentionally
  undo a change depending on the order in which log reader tabs were closed.

DCC:
* Added a Color Picker tool to DCC WHITEBOARD, to select a color from the image.
* A better version of the information dialog for DCC file transfers is shown
  when Konversation is built against KDE Platform 4.5 or higher.
* Fixed a bug causing newly-added DCC file transfers to the list in the DCC
  Status tab not to be sorted when using Qt 4.7.

Connection behavior:
* The auto-join on connect feature will now skip over any configured channels
  that are invalid as per the IRC server's CHANTYPES rules when sending the join
  command(s) to the server, making sure that all valid channels are joined even
  on servers that stop parsing join commands on the first invalid channel.
  Previously, all configured channels were sent.
* Fixed a bug causing a channel the tab of which was closed while a connection
  was in disconnected mode to be rejoined upon reconnect.
* Fixed a (harmless) bug causing unnecessary trailing "." placeholder channel
  key segments to be added to the raw format auto-join command (or to the last
  of multiple such auto-join commands when the amount of auto-join channels
  requires multiple commands to be generated).
* Fixed a regression that could cause an endless loop of reconnection attempts
  when issuing a reconnect order to an established connection and the time
  needed to establish the new connection was longer than the configured
  reconnection delay. It would also cause confusing status messages to be shown
  in the connection status tab.
* Cancelling the dialog asking how to deal with SSL errors upon connecting is
  now treated as a deliberate disconnect on part of the user, i.e. Konversation
  will no longer try to automatically reconnect.
* A disconnect while waiting for user response to an SSL error dialog will no
  longer result in an automatic reconnection attempt. Instead, Konversation will
  wait for the outcome of the user interaction: If the user decides to ignore
  the SSL errors that have occurred, a reconnect will be initiated, otherwise
  the connection will remain disconnected.
* Fixed a bug causing a crash when the user chose to accept an invalid
  certificate in the SSL error dialog when the connection had timed out in the
  meantime.
* Fixed a bug causing the quit message to not always be supplied successfully to
  the server when disconnecting.
* Fixed a bug that could cause the "Server found" message to be shown in the
  connection status tab before the "Looking for server" message if the DNS
  response was already cached.
* Fixed bugs causing the automatic user information lookup, the periodic WHO-on-
  self and the periodic PING for a given connection not to be suspended properly
  after a disconnect, causing unnecessary wakeups and the potential for these
  messages to be sent at inappropriate times in the early phase of a
  reconnection attempt.
* Fixed a bug causing a connection failure to reset the lag meter in the status
  bar to "Unknown" even when the active tab is not related to the connection
  that failed.
* Solid network up/down notifications are now ignored for connections to
  localhost.

Scripting and bundled scripts:
* The 'cmd' script, used to run a shell command from within Konversation and
  send the output to the server, has been rewritten from scratch to provide the
  following improvements:
  - Running a command that returns no output or only empty lines used to result
    in an error claiming the command does not exist. Now an info message is
    shown remarking that the command executed successfully but did not return
    any output or only whitespace.
  - The script now also works when called from a server status tab - the command
    output will be shown to the user rather than sent to the server in that
    case.
  - The command's error output (stderr) used to be ignored; now it is shown to
    the user in the active tab (but not sent to the server).
  - Trailing whitespace is now stripped from command output.
  - Output lines containing only whitespace are no longer forwarded to
    Konversation. As an aside, this also implicitly fixes a bug the old script
    used to suffer from that caused it to generate faulty D-Bus calls when
    trying to forward empty output lines.
* The bundled 'sysinfo' script now handles the way 'mount' reports bind mounts
  on certain newer Linux distributions by collapsing the repeated mentions of
  the same volume before calculating the disk space information.
* Scripts executed by Konversation can now access Konversation's current UI
  locale in the KONVERSATION_LANG environment variable.
* Konversation now installs an experimental Python scripting support package
  named 'konversation' into a subdirectory of its application data directory and
  appends all 'konversation/scripting_support/python' directories found in any
  KDE application data resource directories (i.e. within $KDEHOME, $KDEDIRS,
  etc.) to the PYTHONPATH environment variable available in the script execution
  context, thereby allowing Python scripts executed by Konversation to import
  the package. The package currently sports modules providing APIs for i18n
  support and D-Bus communication with Konversation.
* User-facing information and error message strings in the bundled 'cmd' and
  'media' scripts now finally enjoy translation support, making use of the
  experimental new Python scripting support package described above.
* The 'media' script now requires Python 2.6 or higher and is compatible with
  Python 3.

IRC Protocol:
* Added support for the 475 numeric (ERR_BADCHANNELKEY).
* Added support for the 482 numeric (ERR_CHANOPRIVSNEEDED).
* Added support for UnrealIRCd's 671 numeric.
* Incoming actions (i.e. "/me") without an argument are now handled properly.
* Fixed a number of crashes on illegal data from the server.
* Raw log tabs (/raw) now use percent-recording to depict non-ASCII characters
  in raw traffic for much improved usefulness and reliability in the multi-
  encoding world of IRC.
* Numeric 437 (ERR_UNAVAILRESOURCE) is now treated like numeric 433
  (ERR_NICKNAMEINUSE) during early connection negotiation: The next nickname in
  the identity's nickname list is tried, or the user asked for a new one if
  necessary. Previously Konversation would just idle in this situation and allow
  the connection attempt to time out.

Command line arguments:
* Added '--restart' command line argument and a 'Restart' action that quits and
  restart Konversation. Notes: If not already running, the command line argument
  has no effect; startup will occur normally. Also, the preservation of command
  line arguments across restarts is only supported on KDE Platform 4.6 Alpha 1
  and higher, as a required library feature is only available as of that
  version.
* Added a '--startupdelay <msec>' command line argument that causes the app to
  sleep for the specified amount of milliseconds early during the startup
  process, delaying D-Bus activity and UI creation.

System integration:
* Konversation now also registers itself for the irc:// and ircs:// protocols
  using the way preferred by freedesktop.org's shared-mime technology rather
  than just the KDE-specific way.
* Fixed the tray icon always being in 'active' mode (and thus conflicting with
  the Plasma desktop tray's auto-hide behavior) when using the new (and, in this
  release, only supported) system tray protocol.

D-Bus interface:
* A D-Bus method call to retrieve the list of channels a particular connection
  is currently attending has been added.

Documentation:
* Numerous updates and cleanup in the handbook.
* Fixed a bug causing the Help button in the Configure Konversation dialog not
  to open the handbook.

Misc:
* Various small code cleanups inspired by cppcheck.

Build system and dependencies:
* Konversation now depends on KDE Platform v4.4.3 or higher and Qt v4.6.0 or
  higher.
* A Python installation is a recommended dependency due to optional but highly
  popular bundled scripts and an experimental Python scripting support package
  mentioned above.
* Fixed build with KDE4_ENABLE_FINAL.
* The section of the build system required to build user interface and handbook
  translations is now always present instead of being added manually to the
  tarball at release time, springing into action when the subdirectories
  containing the translation files are added to the source tree from KDE SVN,
  or remaining dormant otherwise.
* Konversation could crash during Diffie-Hellman key exchange or Blowfish
  encryption/decryption if the system's installation of the Qt Cryptographic
  Infrastructure (QCA) does not have the required features available (usually
  because the qca-ossl provider plugin is not installed). It will now fail
  gracefully instead and show helpful error messages in the active tab.


Changes from 1.3 to 1.3.1:
Konversation 1.3.1 is a maintenance release that improves program behavior
and fixes defects, the most serious of which is a regression that unfortu-
nately suck into v1.3, which causes data corruption or even loss of Watched
Nicknames Online lists on application quit. Behavioral improvements are
found in the handling of aborting automatic reconnection attempts after
connection failure and RFC 1459 PING/PONG exchanges. Further notable bug-
fixes have been made to the Edit Network dialog, the handling of system
color schemes and using the ignore list feature to ignore certain CTCP
events.


* In addition to the '/disconnect' command, the graphical 'Disconnect'
  action and the '/quit' command can now be used to cancel an in-progress
  automatic reconnect in the event of connection failure as well.
* The '/disconnect' and '/reconnect' commands now take optional quit message
  parameters.
* Fixed crashes when pressing the "Edit" buttons below the server or
  channel lists in the "New Network"/"Edit Network" dialogs after adding
  a new server or channel and there was no item selected before in the re-
  spective list.
* Fixed bugs causing the "Edit" buttons below the server or channel lists
  in the "New Network"/"Edit Network" dialogs to edit the previously selec-
  ted list items rather than the ones shown as selected after adding a new
  server or channel.
* Fixed a bug that could cause outdated status information for nicks to be
  displayed in channel nickname lists after a reconnect.
* Efficiency improvements for channel join.
* Don't send PING in response to PONG if another PING is already scheduled
  to be sent in the future. This avoids getting kicked off a server for
  flooding when multiple clients are connected to a bouncer that forwards
  PONGs to all of them.
* Fixed numerous cases in which Konversation would incorrectly apply the
  KDE system color scheme to input lines, nickname lists and the listview
  version of the tab bar. This general overhaul of the relevant code also
  brought about minor efficiency and memory usage improvements.
* Fixed nickname lists not respecting the "Alternate Background" setting
  when set to use custom colors.
* Fixed the listview version of the tab bar not greying out disconnected
  tabs when set to use custom colors.
* Fixed a bug causing the processing of incoming CTCP CLIENTINFO and CTCP
  TIME requests not to take the ignore list into account.
* The "Insert IRC Color" dialog will now add a leading zero to colors which
  have single-digit numbers in the '%C...' string it inserts into the input
  line, to allow the text that follows to start with a digit rather than
  such a digit getting interpreted as part of the color number.
* Fixed a bug causing the Watched Nicknames Online nickname list for a net-
  work to be stored under the wrong network or lost entirely on application
  quit.
* Fixed a bug causing the order of the Quick Buttons below the nickname
  list in channel tabs to be flipped every time the config dialog was OK'd.
* Improved consistency of the filter fields in the URL Catcher and Channel
  List tabs with other KDE applications.
* Correct use of singular or plural unit suffixes for several numeric pre-
  ferences in the configuration dialog.
* It is no longer possible to set the auto-way time to the nonsensical
  value of zero minutes. Rather, a minimum of one minute is now enforced.


Changes from 1.3-beta1 to 1.3:
Konversation 1.3 debuts a major new feature in the area of Direct-Client-
to-Client (DCC) support: An implementation of the DCC Whiteboard extension
that brings collaborative drawing - think two-player Kolourpaint - to IRC.
It also brings back the integration with KDE's SSL certificate store the
KDE 3 version enjoyed and expands support for auto-away to the Windows and
Mac OS X platforms thanks to both recent advances in the KDE 4 platform and
new code in Konversation. Interface tweaks, new keyboard shortcuts and many
bugfixes (including a number of new fixes since 1.3-beta1) round things out.
Finally, Konversation now depends on KDE 4.3 and Qt 4.5.


* Fixed build with KDE 4.3.
* When opening an "Edit Network" dialog and adding a new item to one of
  the server or channel lists, provided they already contain at least one
  item and no selection is made before clicking "Add...", the "Move Down"
  button would be enabled afterwards despite no item being selected.
  Clicking the button at this point would crash the application. This has
  been fixed along with other potential problems in the code that updates
  the state of the list control buttons.
* After adding a new item to one of the server or channel lists in "Edit
  Network" dialogs, that item will now be selected.
* Fixed a bug causing the file dialog for selecting a new target directory
  and file name for an incoming DCC file transfer in the event that the
  default path is not writable to complain about being unable to find the
  file after clicking "OK" when no file of the chosen name at the chosen
  location exists already.
* Fixed a bug causing the file dialog for selecting a new target directory
  and file name for an incoming DCC file transfer in the event that the
  default path is not writable to lose the file name written in the "Lo-
  cation" field (by default, the original file name) when changing the
  current directory.


Changes from 1.2.3 to 1.3-beta1:
Konversation 1.3-beta1 debuts a major new feature in the area of Direct
Client-to-Client (DCC) support: An implementation of the DCC Whiteboard
extension that brings collaborative drawing - think two-player Kolour-
paint - to IRC. It also brings back the integration with KDE's SSL certi-
ficate store the KDE 3 version enjoyed and expands support for auto-away
to the Windows and Mac OS X platforms thanks to both recent advances in
the KDE 4 platform and new code in Konversation. Interface tweaks, new
keyboard shortcuts and many bugfixes round things out. Finally, Konversa-
tion now depends on KDE 4.3 and Qt 4.5.


* Konversation now depends on Qt 4.5 and KDE 4.3.
* Added support for DCC WHITEBOARD, bringing collaborative drawing to
  IRC.
* When showing the dialog informing the user about the local target
  file for an incoming DCC file transfer already existing that dialog
  now includes the sizes of the local file and the file the sender is
  offering up.
* Fixed a bug causing either an empty line or a few characters of gar-
  bage to be placed in the clipboard in place of marker/remember lines
  when copying chat text containing such lines.
* Fixed a bug causing quotation marks, ampersands and angle brackets
  in chat messages to be displayed as HTML entities in the OSD.
* The "Clear All Windows" action will now also resets the notification
  state of all tabs (i.e. removes active new message or highlight no-
  tifications from the tab bar).
* Fixed a bug causing the server responses to background data gather-
  ing via WHO (to keep the app's idea of its own hostmask up to date,
  as well as optionally channel user info) to be displayed in tabs as
  if the user had made the requests manually after sending a '/who'
  command without parameters.
* Fixed a bug causing a crash when sending '/privmsg' without any pa-
  rameters (did not apply to '/msg').
* In previous versions, channel tabs opened in the background (i.e.
  while "Focus new tabs" is disabled, as it is by default) would con-
  siderably increase the minimum width of the window due to particu-
  larities of the Qt layout system. After raising every channel tab
  at least once it would then be possible to make the window much
  narrower. This unintuitive behavior resulted in confusion as to why
  the minimum width of the Konversation window would sometimes vary
  greatly. This has been fixed in this version, i.e. it is no longer
  necessary to have raised every channel tab at least once to achieve
  a reasonable minimum width of the window. This also means that
  joining a new channel is now much less likely to resize the window.
* Fixed a bug causing the status bar to become multiple lines in
  height when hovering an URL containing percent-encoded line breaks
  in the chat text view.
* Fixed a bug making it impossible to scroll the Advanced Modes list
  in the Channel Settings dialog when the user doesn't have operator
  status in the channel.
* Fixed a crash when selecting more than one completed, failed or
  aborted outbound transfer in the "DCC Status" tab and clicking "Re-
  send" in their context menu.
* Fixed a bug causing the human-readable mode descriptions used by
  default in channel chat text views as well as the Channel Settings
  dialog's Advanced Modes list not to be translated.
* When the display of human-readable mode descriptions is enabled
  (as it is by default), the Advanced Mode list in the Channel Set-
  tings dialog will now show the respective mode characters along-
  side them. Previously, only the description was shown. This makes
  the list useful as a utility to look up the meaning of obscure
  mode characters.
* Fixed a bug causing both the default email client and the default
  web browser to be invoked when clicking an email address link in
  the chat text view.
* Added a built-in '/sayversion' command that, as opposed to the
  bundled '/kdeversion' script, can show the version of both the KDE
  Konversation was built against and is running on. It also outputs
  the information in a single message instead of several.
* Fixed a bug that would cause the second and following segments of a
  text so long that it has to be split into multiple messages when it
  is sent to be encoded incorrectly.
* The ASCII 0x1d character is now used to denote italic formatting of
  text rather than 0x09, to avoid the conflict with the tab character
  that is frequently pasted e.g. from websites with tables.
* Fixed a bug causing the server response to '/whois <nick> <nick>'
  not to be displayed on many IRC servers when the nick in questions
  is not online at that time (this variant of the WHOIS command is
  also used by the GUI actions).
* Fixed a bug causing missing bans in the list in the Channel Settings
  dialog on certain (mostly older) IRC servers.
* The text in notification messages used to be wrapped every 50 char-
  acters, an old workaround for problems with KDE 3.x's bubble notifi-
  cations. This has been removed now since it's no longer needed with
  modern notification frontends such as Plasma's, and produces rather
  ugly results there.
* Made it possible again to initate DCC file transfers to a query
  partner by dragging files or URLs onto the chat text area of the
  query.
* When building against the KDE Platform v4.4.3 libraries, the auto-
  away functionality will now make use of the new KIdleTime library
  to determine user activity and inactivity rather than use its own
  code, the primary advantage being that KIdleTime is supported on
  non-X11 platforms such as Windows and Mac OS X. In effect, this
  means auto-away is now supported on those platforms, depending on
  the implementation level in KIdleTime. (The use of KIdleTime can
  be explicitly disabled by passing '-DUSE_KIDLETIME=false' to
  'cmake', in which case Konversation will fall back to using the
  original, X11-specific code and auto-away will only work decently
  on an X11 platform.)
* SSL support now integrates with KDE's certificate handling again,
  as it used to in the KDE 3 version, made possible by improvements
  in the libraries of the KDE Platform v4.3 (the minimum version
  supported in this release) and higher.
* Not reacting to an SSL certificat validation error dialog in a
  timely manner should no longer result in Konversation locking up.
* In-progress automatic reconnect in the event of connection failure
  can now be aborted by using the '/disconnect' command.
* Manually issuing a reconnect order to a connection currently in-
  active after having exceeded its maximum number of reconnection
  attempts used to result in a single connection attempt after
  which it would be announced that the maximum number of reconnect-
  ion attempts had been exceeded again. This has been fixed: It will
  now make the number of attempts specified as the upper limit in
  the application settings.
* Fixed a bug that could cause the selection in the transfer list of
  the DCC Status tab to be lost when a new transfer was added to the
  list.
* Fixed a bug causing the information panel in the DCC Status tab to
  show information for a transfer other than the one selected in the
  transfer list after sending a file to oneself for the first time
  in a session.
* The frame that used to be around the main window's tab widget when
  the tab bar was located either at the bottom or top position has
  been removed.
* Improved compatibility with freedesktop.org-compliant notification
  frontends other than KDE's. Other frontends could previously show
  empty notification message contents due to non-standard content in
  the messages.
* Added an action to switch to the last focused tab, making it possi-
  ble to quickly switch forth and back between two tabs. The default
  keyboard shortcut for this new action is Alt+Space.
* Added a "-local" parameter to the '/amsg' and '/ame' commands that
  limits their scope to the channel and query tabs associated with
  the same connection as the tab the command is issued in.
* Fixed a bug causing the order of networks in the server list dialog
  not to be preserved across application restarts.


Changes from 1.2.2 to 1.2.3:
Konversation 1.2.3 is a hotfix release that improves upon an earlier
fix, originally included in Konversation 1.2.2, that increases the re-
liability of Konversation's interaction with the D-Bus inter-process
communication daemon.

* Increased reliability of interactions with the D-Bus inter-process
  communication daemon.


Changes from 1.2.1 to 1.2.2:
Konversation 1.2.2 contains a number of new features, such as support
for passive DCC chat and amarok:// URLs, and a large amount of user
interface improvements to various tabs (e.g. Watched Nicknames Online
and the URL Catcher) and dialogs (e.g. Join Channel). When used with
KDE SC 4.4 it supports the new system tray icon API. A sizable list
of bug fixes round things out; of particular note is a change address-
ing the high CPU usage some users have experienced with Qt 4.6.


* Added support for passive DCC chat.
* Made it possible to accept/reject DCC chats like DCC file transfers.
* Added an option to auto-accept DCC chats (previously it would always
  auto-accept).
* Added a confirmation dialog for closing DCC chats, consistent with
  other conversation tabs.
* Improved the sanity-checking code for the validity of ports used in
  DCC operations.
* Fixed connection attempts possibly stalling when there is a problem
  with executing the associated identity's pre-shell command (provided
  it has one set at all), and Konversation crashing when it is quit
  while a connection attempt is stuck on trying to execute the pre-
  shell command.
* Fixed /setkey, /delkey and /showkey treating their target arguments
  (i.e. a channel or a query) case-sensitive.
* Fixed the encryption key for a query getting lost if the other end
  changes their nickname.
* Added support for KStatusNotifierItem, the new system tray API in
  KDE.
* Fixed a bug causing multiple auto-replacements in a single message
  not to work.
* Made it possible to include syntax normally used to refer to a sub-
  group of the matching pattern as normal text in the replacement pat-
  tern of a regular expression auto-replace, by escaping it like this:
  %%1.
* Fixed a bug causing an empty MODE message to be sent to the server
  preceding the correct one when using /op, /deop and the like.
* Fixed a bug causing as many mode chars as target nicknames given to
  commands like /op, /deop etc. to be sent as part of every single re-
  sultant MODE messages sent to the server, despite one MODE message
  being generated for every group of three target nicknames. I.e. "/op
  foo foo foo foo" would result in "MODE +oooo foo foo foo" and "MODE
  +oooo foo", when it should only be "+ooo" and "+o", respectively.
* Added support for amarok:// URLs in chat text views and channel to-
  pics.
* Fixed a bug causing Konversation to treat "Page Up" and "Page Down"
  key events with any modifier (e.g. Ctrl) the same as without any mo-
  difier, making such combinations unavailable as shortcuts for other
  actions.
* Fixed a bug causing the status bar to remain stuck displaying the
  description of a menu action if subsequently hovering other actions
  without a description set.
* The Watched Nicknames Online, URL Catcher and Channel List tabs now
  use a toolbar at the top rather than a row of buttons at the bottom
  for their various actions, consistent with the Log Viewer and the
  (redesigned for 1.2) DCC Status tabs. Aside from a nicer UI this has
  the side benefit of reducing the minimum window width with any of
  these tabs open.
* Further work on reducing the use of the qt3support/kde3support lib-
  raries throughout the codebase.
* The design of the search bar has been made more consistent with the
  search bars found in other KDE applications (e.g. Konqueror, Konso-
  le and KWrite).
* Added a "--noautoconnect" command line argument to disable auto-co-
  nnecting to any IRC networks on application startup.
* The invite dialog now has a drop-down offering the options "Always
  ask", "Always join" and "Always ignore" for future default behavior,
  rather than just a "Don't ask again" checkbox that wasn't sufficient
  to cover all scenarios.
* The "Hide Nicklist" action has been renamed "Show Nicklist" to com-
  ply with the KDE 4 HIG.
* URLs are no longer decoded before being passed to the web browser,
  fixing the opening of some links from the chat text view.
* Fixed a bug causing the application to crash when pressing the left
  or right arrow keys after selecting an active file transfer in the
  DCC Status tab's transfer list when using Qt 4.6.
* Improved performance of the DCC Status tab's transfer list.
* It's now possible to add nicknames to the Watched Nicknames Online
  list, as well as remove them, right from the tab rather than having
  to go to the config dialog.
* Fixed a bug that would cause the "Choose Association" KDE address
  book integration action to create a new contact in the address book.
* It's now possible to add a nickname to the watch list of all net-
  works in the Watched Nicknames Online tab at once.
* Fixed a bug causing the opening of all bookmarks in a bookmark fol-
  der at once not to work.
* The ban list interface has seen a facelift. The new way of working
  with the list makes it very easy to use an existing list entry as
  a starting point, modify it and then decide between replacing the
  original ban with the new version or adding it as an additional ban.
* The topic history list in the Channel Settings dialog has seen a
  number of behavioral and reliability improvements.
* Updated various dialog layouts to better comply with the alignment
  rules of the KDE 4 HIG.
* The URL list in the URL catcher tab now sports a new Date column
  and can be sorted. The sorting settings are saved and restored
  across sessions.
* Fixed a bug causing the vertical spacing inbetween the regular mode
  checkboxen on the "Modes" tab of the Channel Settings dialog to
  change when the display of the advanced mode list was toggled or
  the dialog was resized.
* The Join Channel dialog now sports a combo box listing all open co-
  nnections (and the nicknames used on them, to be able to tell mul-
  tiple connections to the same network apart), with the connection
  owning the active tab automatically pre-selected. This allows one
  to pick the connection to join the channel on regardless of the
  active tab at the time the dialog is invoked (e.g. via the keyboard
  shortcut). Previously, the dialog would only operate on the connec-
  tion owning the active tab (and display it in a static label),
  possibly requiring one to switch to a suitable tab first.
* Fixed a bug causing the "Clear History" item in the context menu of
  the channel combobox in the "Join Channel" dialog not to clear the
  history correctly; while it would be gone for as long as the dialog
  was open, it would be back when closing and reopening the dialog.
* Fixed a bug causing a crash on Windows when middle-clicking the chat
  text view.
* Fixed a bug causing the pasting of clipboard contents using keyboard
  shortcuts not to work when the chat text has keyboard focus.
* Fixed a bug causing the setting or removing of a 'q' channel mode to
  be mistakenly announced as giving or taking channel owner privileges
  on networks where it's actually a type of ban.
* Fixed a bug causing a crash when pressing the "Ok" button in the
  "Join Channel" dialog without entering anything in the dialog's
  "Channel:" input field beforehand.
* More robust Unicode handling to make interaction with the D-Bus dae-
  mon more reliable.


Changes from 1.2 to 1.2.1:
This second release in the Konversation 1.2.x release series for KDE 4
adds a number of new features to the bookmarks system and support for
reacting to changes in network availability as signaled by KDE's Solid,
along with a number of fixes for bugs discovered since version 1.2 was
released last month.


* Fixed a crash when cancelling the warning dialog that is shown upon
  receiving two incoming DCC file transfer requests using the same file
  name.
* Fixed a crash when using the "Clear Completed" action in the DCC Sta-
  tus tab after having previously used the "Clear" action to remove spe-
  cific transfers from the transfer list.
* Fixed a crash when using the "Clear" or "Clear Completed" action in the
  DCC Status tab after creating a mixed selection of removable (e.g. com-
  pleted, or failed) and non-removable (e.g. sending) transfers and the
  last addition to the selection was a removable transfer.
* Added a "Bookmark Tabs as Folder" feature.
* Added the ability to open the contents of an entire bookmark folder at
  once (aka "Open Folder in Tabs").
* Made the default generated bookmark titles more verbose: The Format is
  now "Channel (Network-or-Server)".
* Added support for reacting to changes in network availability as re-
  ported by KDE's Solid subsystem. If the network goes down, Konversa-
  tion will now no longer make futile attempts to reconnect the affect-
  ed connections. Instead, it will reconnect once the network comes back
  up.
* Variable expansion (%B, %C, %I, etc.) is no longer done in text seg-
  ments recognized as URLs to avoid clashes with percent-encoded char-
  acters in URLs copied from web browsers, such as German umlauts.
* Made tooltips for truncated labels in the listview version of the tab
  bar work again with newer versions of Qt.
* Fixed a bug that caused the Watched Nicknames Online list to show the
  wrong or no tooltip when hovering a list item with the mouse pointer.
* The default destination folder for incoming DCC file transfers is now
  the "Downloads paths" configured in System Settings or the equivalent
  in other desktop environments (under the hood, this is a shared XDG
  setting).
* Making and then comitting unrelated changes in the Channel Settings
  dialog could cause unintentionally setting the channel's topic to an
  older version if someone else had changed the topic since the first
  time the dialog was opened or while the dialog was open, due to a bug
  in the code that avoids such external topic changes interfering with
  concurrent local editing of the topic. This has been fixed.
* The contents of the topic edit field in the Channel Settings dialog
  will now reflect the selected item in the topic history list until
  the user starts editing.
* Fixed a bug that could cause user mode changes occurring directly af-
  ter joining a channel not to be reflected by the channel's nickname
  list.
* Fixed a bug causing the "Open File" context menu action for DCC file
  transfer items in the transfer list in the DCC Status tab not to work
  for incoming file transfers.
* Added support for RPL_HOSTHIDDEN.


Changes from 1.2-rc1 to 1.2:
Konversation 1.2 is the first release of Konversation for the KDE 4 app-
lication platform and desktop environment. In addition to preserving the
full functionality of the KDE 3 version, this release offers a signifi-
cant amount of new features and improvements to the user interface, per-
formance, memory usage, energy efficiency, correctness and stability.
Sum total, the changelog of all development releases since Konversation
1.1 and of this final release combined once again make for the longest
changelog in Konversation's release history.

Some of the highlights compared to Konversation 1.1 include support for
SOCKS v5 and HTTP proxies, a redesigned DCC file transfer user interface
(and much improved DCC code under the hood with several new features,
such as support for IPv6 and DCC REJECT), support for UPnP for NAT tra-
versal, rewritten and much improved support for Blowfish encryption (now
supporting DH1080 key exchange, for example), a significantly better per-
forming channel list, a rewrite of the channel nickname lists for better
performance and improved battery-friendlyness, a new channel join invita-
tion user interface, an improved auto-replace feature, expanded media
player support and many improvements to the IRC protocol implementation.

Enjoy!


* When dragging a link from the chat text view, the drag object will now
  contain a plain text version in addition to the URL version. This allows
  dragging a link to places that don't accept URL drops, such as Konsole,
  the Konqueror address bar or Konversation's own input line.


Changes from 1.2-beta1 to 1.2-rc1:
After a pleasantly uneventful two weeks with beta1, this release candida-
te for our first KDE 4 stable release brings a handful of bugfixes that,
while definitely worth having, are fortunately none too scary. We thus ex-
pect the final Konversation 1.2 release to follow in the very near future.


* Fixed the scrollbar thumb not remaining at the bottom when the chat text
  view is resized (such as when the window is resized or the input bar in-
  creases in height after typing more than one line with auto-expand mode
  enabled).
* Fixed a bug that could cause the progress bar for DCC file transfers not
  to be updated when "Fast DCC send" was enabled.
* Fixed a bug that could cause a crash when resuming an incoming DCC file
  transfer.
* Fixed characters that require the Alt Gr modifier to be typed (such as
  the '@' symbol in German keyboard layouts, for example) not causing key-
  board focus to move to the input line when typed while the chat text view
  has keyboard focus and thus not showing up in the input line.
* Fixed a bug causing both the link and the marker or remember line to be
  selected when a line is appended directly after a link that has just been
  clicked.
* Fixed a bug causing the automatic scroll-down not to work when more back-
  log is replayed than the viewport can show at once at channel join.
* The "Advanced Modes" listing in the "Modes" tab of the Channel Settings
  dialog will now properly vertically expand as the dialog is resized even
  to a very large height.
* Fixed a bug that could cause a crash while manipulating a channel's ban
  list.
* Fixed a bug causing the moving of child tabs of a network tab in the
  treelist version of the tab bar not to work using the keyboard shortcuts,
  context menu actions or "Window" menu actions.


Changes from 1.2-alpha6 to 1.2-beta1:
Konversation 1.2-beta1 marks the departure from active feature development
for Konversation 1.2 and the entrance into the much-vaunted halls of bug-
fixing-until-the-final-release, which we expect to materialize in early
October. Until then, you can enjoy what this beta has to offer: HTTP and
SOCKS v5 proxy support, further redesign of the DCC Status tab (many of
you will be happy to find the minimum window size with the DCC Status tab
open much reduced now), the long-awaited return of marker and remember
lines and the resurrection of link dragging from the text display widget
are of particular note, but the changelog has the details on a variety of
other additions, plus the usual assortment of bugfixes, as well.


* Added a topic widget for Konsole windows and hooked it up to the KPart's
  setWindowCaption signal
* Added tooltips to items in the new DCC transfer lists that describe the
  transfer's status more verbosely.
* Fixed the OSD stealing focus when it appears on Windows.
* Running DCC file transfers are now properly aborted on application quit.
* Removed the 'ucs2' encoding from the encoding list, as it is is not sup-
  ported on IRC. This also resolves a crash when sending messages after
  selecting it (however the crashing codepath has been independently made
  more robust as well).
* Fixed a crash when sending a message containing only spaces.
* Added a "Manage Profiles" button to the information area above the ter-
  minal area in Konsole tabs.
* Added SOCKS v5 and HTTP proxy support. Proxy credentials are stored in
  KWallet.
* Moved the buttons in the DCC Status tab to a toolbar, similar to how
  things were already laid out in log viewer tabs.
* Redesigned the DCC transfer info panel in the DCC Status tab to have a
  smaller minimum size. This should mean that less people will see their
  window size increase when a DCC transfer is initiated, as it reduces
  the minimum size of the window with the DCC Status tab open.
* Added a "Clear Completed" item to the DCC Status tab's toolbar.
* Fixed a crash on the processing of illegal lines sent by the server that
  contain only spaces (as sent by the buggy lidegw lide.cz gateway script).
* Made DCC transfer speed reporting more reliable.
* Fixed sorting the transfer list in the DCC Status tab by its "Started At"
  column. Previously, sorting by that column would sort alphabetically by
  the string value of the fields rather than properly by date.
* Fixed the Channel Settings no longer disabling interface elements allow-
  ing the manipulation of channel properties when the user lacks the ne-
  cessary operator privileges in the channel.
* The position of the splitter handle determining the size of the info pa-
  nel in the DCC Status tab is now saved across application restarts.
* Fixed a crash when changing settings after the "Insert Character" dialog
  had been used.
* When an attempt to set up a port forward via UPnP fails, an error message
  stating as much will now be shown in the currently active or last active
  tab for the associated IRC server connection.
* Made the '/amsg' command work properly again.
* Fixed two close icons (one on the left, one on the right) being shown on
  tabs when close buttons were enabled and the tabs were in top or bottom
  position.
* Fixed incorrect colors in the listview version of the tab bar when ini-
  tially switching to it within a session.
* Fixed a regression vs. the KDE 3 version that caused a failure to correct-
  ly parse shortened IPv6 addresses except when using RFC 2732-style bracket
  notation and explicitly stating a port to connect to.
* Made the display of server address and port number in various connection-
  related chat view messages more consistent and IPv6-friendly (with the
  '<ip>:<port>' forward previously used, it could be hard to tell where the
  IP ended and the port began -- now it's '<ip> (port <port>)').
* Updated the scripting documentation to talk about D-Bus rather than DCOP.
* The initial width of the nickname lists in channel tabs is now more sen-
  sible.
* Added back the ability to drag links out of the chat view.
* Resurrected the RTL text support in the chat view.
* Fixed a crash during UPnP discovery when the router doesn't respond in
  the expected way.
* Various actions that operate on the active tab (e.g. those found in the
  "Insert" menu) are now properly disabled when the last tab is closed.
* Fixed a bug with Qt 4.5 where after closing a tab a tab adjacent to it
  would briefly be activated before subsequently activating the tab that
  was active before the just closed one (i.e. only noticable when 'a tab
  adjacent to the just closed tab' and 'the previously active tab' are not
  the same).
* Marker lines and the remember line are back.
* Fixed a bug that could cause queue flushing rates to be entered into the
  configuration that would prevent successfully connecting to Freenode and
  potentially other IRC networks.


Changes from 1.2-alpha5 to 1.2-alpha6:
Konversation 1.2-alpha6 is primarily a hotfix release addressing a serious
DCC crash that we unfortunately only discovered after releasing alpha5. To
sweeten the offer, however, it also includes a nicer DCC tranfer list that
separates incoming and outgoing transfers into distinct categories, allows
you to enable/disable individual columns and saves the sort column and di-
rection across application restarts. Furthermore, Konsole tabs may now be
renamed and there's also a fix for the handling of certain rare mode cha-
racters.


* The transfer list in the DCC Status tab now separates items into "Inco-
  ming Transfers" and "Outgoing Transfers" categories, using the same ca-
  tegory headers employed in System Settings and other places throughout
  KDE 4.
* It's now possible to enable/disable the display of individual columns of
  the transfer list in the DCC Status tab. This is remembered across app-
  lication restarts.
* The sort column and direction of the transfer list in the DCC Status tab
  is now remembered across application restarts when using Qt 4.5 or higher.
* A "Rename Tab..." action has been added to the context menu of Konsole
  tabs.
* Fixed a crash when the client observes channel modes being modified that
  carry a parameter when used as user modes.
* Fixed a crash when an incoming active or outgoing passive DCC file trans-
  fer either timed out or was manually aborted while in "Connecting" state."


Changes from 1.2-alpha4 to 1.2-alpha5:
Konversation 1.2-alpha5 features significant performance and memory usage
improvements in several areas of the application, such as channel nickname
lists, backlog loading, Channel List tabs and the URL Catcher - the latter
two have also seen a fair number of interface refinements, making them much
more enjoyable to use. The DCC subsystem has seen the addition of IPv6 sup-
port and a '/dcc get' command to accept an incoming file transfer from the
input line. Various smaller additions and improvements have been made as
well, including the usual share of bug fixes.


* Added back "Do not ask again" checkbox missing in the rewritten invita-
  tion dialog that appeared in v1.2-alpha4. By implication, the dialog now
  also observes the "Automatically join channel on invite" option from the
  "Warning Dialogs" page in the configuration dialog again.
* Fixed problems reconnecting an SSL-enabled connection using a self-sign-
  ed certificate.
* Fixed a build problem with KDE trunk (i.e. what will one day be KDE 4.4).
* Fixed loading and saving of the settings toggling the invitation and mul-
  ti-line paste warning dialogs in the "Warning Dialogs" page of the con-
  figuration dialog.
* Improved wording of the description of the invitation dialog setting in
  the "Warning Dialogs" page of the configuration dialog to reflect that
  the dialog being disabled doesn't imply that the channel the user was
  invited to will be joined automatically, as the user might have rejec-
  ted the invitation when he got the dialog along with checking "Don't
  ask again".
* Decreased memory usage (the objects created for every IRC user encounter-
  ed are lighter now).
* Initializing Phonon is now delayed until it is actually needed, resulting
  in less memory usage for those not using highlight sound notifications
  and less work being done during application startup.
* Fixed DCC file transfer problems with files larger than 4 GB on 32bit sys-
  tems, along with some other correctness improvements to the file transfer
  code.
* Backlog loading is now more efficient.
* Added IPv6 support for DCC file transfers.
* The fallback default file name for unnamed files received via DCC now con-
  tains the date of when the file was received in ISO format.
* Fixed a crash when trying to perform a tab completion with an empty nick-
  list (i.e. shortly after joining a big channel, before its nicklist has
  been filled in).
* Channel nickname list updating is now more efficient and pleasant to look
  at. Rather than resorting the entire list after the addition of a new nick-
  name, the nickname is now inserted directly at the correct position (using
  a binary search), avoiding a lot of CPU-intensive comparisons between nick-
  names. The same optimization is also done for nickname and user status (as
  relevant in case "Sort by status" is enabled) changes - rather than trigger-
  ing full resorts, items are moved directly to new positions as necessary.
  Resorting after both new additions and changes was previously done only
  after a delay of one second (as part of a scheme to throttle the update rate
  to a maximum of once per second given how CPU-intensive it was), which meant
  that new nicknames would initially appear at the end of the list and move to
  the correct position only after one second, and that nickname and status
  changes were similarly reflected in the sorting only after one second - this
  delay has now been eliminated, making the nickname list much snappier in re-
  acting to what's going on.
  Note however that when more than ten events requiring an update to sorting
  occur within one second, a fallback to the old scheme of doing a full resort
  at a maximum rate of once per second, after an initial delay of one second,
  occurs, as this is believed to be more efficient in situations of very high
  activity (such as merges after netsplits). Thus the new scheme described
  above should be seen as an additional optimization for the common case.
* In addition to the broad strokes optimization described above, other minor
  optimization work has been done on the nickname list updating code, impro-
  ving the efficiency of updates further.
* Fixed topic label text color not reacting to system color scheme changes.
* Added a '/dcc get [nick [file]]' command to accept an incoming DCC file
  transfer request.
* Fixed a crash when using the 'Insert -> IRC Color...' menu item without
  there being any tabs.
* Nickname changes of the discussion partner are now announced in query tabs,
  provided the information is available (i.e. when one shares a channel with
  the discussion parther, so the server informs Konversation of the nickname
  change).
* Fixed building on OpenSolaris.
* The channel item context menu in Channel List tabs now has a "Join Channel"
  action, and the list of URLs extracted from the channel topic has been mo-
  ved to a sub-menu.
* Increased use of the IRC icons found in recent versions of the Oxygen icon
  set.
* Fixed a bug causing the time a user went online not to be displayed in
  WHOIS information (provided the server reports it).
* Fixed close button icons not immediately appearing on newly-added tabs when
  enabled (a preferences change would cause them to appear).
* A significant revamp of the Channel List code, especially around the way the
  list data received from the server is being moved into the UI, has brought
  about significantly improved behavior. The application should now no longer
  be bogged down for extended periods of time while the list is being process-
  ed - in extreme cases, this could even lead to disconnects by timeout.
* The "Apply Filter" button has been removed from the Channel List interface.
  Instead, the filter is (re)applied automatically as its settings are chang-
  ed, i.e. briefly after stopping to type into the "Filter pattern" field or
  after changing one of the spin- or checkboxes.
* Fixed the display of human-readable mode descriptions in place of traditio-
  nal mode characters (toggled by the "Show raw mode characters" preference
  and only applicable when Konversation knows a description for a given mode
  char) being inconsistent between '/mode <channel> and '/mode <channel>/<user>
  +/-<mode>' - separate, unequal lists of mode descriptions were being used;
  this has been unified now.
* Fixed the "Modes" tab of the Channel Settings dialog not using human-readable
  mode descriptions in place of traditional mode characters when the "Show raw
  mode characters" preference is disabled (as it is by default) and a descrip-
  tion for a given mode char is available.
* Fixed the mode list shown by "Show Advanced Modes" in the "Modes" tab of the
  Channel Settings dialog not showing all modes announced as supported by the
  server.
* The Channel List, when hovering a list item with the mouse pointer, now shows
  a tooltip with the entire topic of the channel when it doesn't fit the topic
  column's width.
* Konversation will now display a warning dialog box when the user is trying
  to send a character not supported by the chosen encoding.
* When a message containing characters not supported by the chosen encoding
  is sent, the chat view will now display the '?' replacements for those cha-
  racters that are sent to the IRC server and thus seen by other users. Pre-
  viously, the chat view would display the version of the message before
  this encoding step, and thus usually show the characters, as the Unicode
  character set normally used by KDE/Qt is considerably broader than many
  of the encodings that can be selected in Konversation. In other words, the
  chat view now accurately portrays what is sent to other users when a mes-
  sage contains characters not supported by the active encoding.
* The URL Catcher should now open considerably faster with long lists of
  caught URLs and mail addresses.
* The list items in the URL Catcher now have the same context menu as links
  in the chat view. Previously there was no context menu.
* Caught mails and mail addresses not coming from an IRC user (an example
  would be links contained in a server's Message of the Day text) now have
  their "From" field filled in with the tab name instead of it being left
  blank in the URL Catcher.
* Fixed a bug causing the DCC Status tab to sometimes prematurely claim a
  transfer status of 100%, as well as an unrealistic transfer speed, when
  sending a file to another user. The transfer would go on until actually
  finished; merely the information shown in the interface was defective.
* Fixed log viewer tabs not observing the chat window background image setting.
* Fixed log viewer tabs not reacting to changes to the chat window background
  color or font settings.
* Fixed raw log tabs only applying the chat view background image setting on
  configuration changes, not when initially being opened.
* The removal of the frame around the tab widget is now exclusive to KDE 4.3.
  We do it by way of enabling document mode for the tab widget (which is new
  in Qt 4.5), which renders badly in versions of the Oxygen style found in
  KDE versions earlier than 4.3, and the workaround we previously applied to
  make it work even with those older Oxygen versions had the unwelcome side-
  effect of breaking the application of color preferences to the input bar
  and nickname list.


Changes from 1.2-alpha3 to 1.2-alpha4:
Alpha 4 marks a significant milestone on the way to feature completeness
for the v1.2 release of Konversation. New features in this release inclu-
de UPnP NAT traversal support for DCC file transfers and chats, DH1080
key exchange support for Blowfish encryption and the ability to automati-
cally split very long actions (i.e. usage of the '/me' command) into mul-
tiple messages conforming to the maximum length of an IRC message (this
was already supported for regular messages for some time).

Many bugs have also been addressed, including an important fix for invita-
tion dialogs causing disconnects by timeout if they were not dealt with
quickly enough - and not only is the rewritten dialog non-blocking, it also
allows for handling multiple outstanding invitations in a single dialog,
rather than a new dialog being displayed for every additional invitation
received. Other fixes include further interface polish and robustness and
correctness improvements to Blowfish encryption, the Watched Nicks Online
system and the storage of per-tab encoding preferences in the configuration
file.

A closing note for packagers: In this release we have replaced our cus-
tom implementation of the Blowfish encryption algorithm with an optional
dependency on the Qt Cryptographic Architecture (QCA) library in version
2 or higher. By implication, Blowfish encryption support is now optional:
A QCA2-enabled build will have it; a build not using QCA2 will not.


* Changed links to KDE's (and hence our) bug tracker throughout the code-
  base to use https://bugs.kde.org/ rather than http://bugs.kde.org/
* Fixed the "Show Menubar" item not getting removed from the chat view
  context view after showing the menubar again. Also added a separator
  after the item (only visible when it is present).
* Switched the timestamps in log files to use KDE's locale settings for
  formatting the date and time, as the equivalent Qt API used previously
  seems to look at the value of LC_NUMERIC to detemine the format in Qt
  4, which doesn't meet user expectations.
* Fixed the "Date" column in the topic history of the Channel Options
  Dialog not using KDE's locale settings to format the value.
* Fixed the "Date" column in the Channel Settings dialog's topic history
  sorting alphabetically rather than by date.
* Improved Windows support in the bundled 'media' script.
* Fixed the vertical alignment of the topic label when using Qt 4.5 (it's
  now top-aligned rather than vertically centered, i.e. making the topic
  area bigger than the topic by dragging the splitter down won't cause
  the topic to move down to stay in the vertical center anymore -- Qt 4.5
  is needed because a method to retrieve the document margin from the chat
  view to use as the top margin for the topic label is new in that version).
* Fixed various chat view messages containing date/time values (channel
  created, topic set, online since, ban info) not using KDE's locale set-
  tings for their display format.
* Added support for using UPnP for NAT traversal for DCC file transfers
  (both active send and passive receive) and DCC chat. When UPnP is ena-
  bled in both Konversation and your router, Konversation now knows how
  to ask your router to set up the necessary port forward, and also how
  to to ask it to remove it later.
* Added support for the KDE 4 version of JuK to the bundled 'media' script.
* Fixed '/msg <channel> <message>' not displaying the resulting message in
  the target channel when the user is attending that channel.
* Made the appearance of the line informing about the message being sent
  with '/msg <nick|channel> <message>' consistent between channel, query
  and status tabs (it now looks like in the former in the latter two as
  well).
* Fixed the visualization of '/msg <nick|channel> <message>' (i.e. the
  '<-> target> message' line) being shown only after adding the resul-
  ting message to the target chat view (if present), causing an odd-look-
  ing order if the origin view and the target view are the same.
* Watched Nicknames Online now generally operates on networks by their
  internal unique IDs rather than names, enabling it to handle multiple
  configured networks with identical names properly.
* Konversation's custom implementation of Blowfish encryption has been
  replaced with an optional dependency on the Qt Cryptographic Architec-
  ture (QCA) library version 2.
* The '/setkey [nick|channel] <key>' command now recognizes 'cbc:' (ci-
  pher-block chaining) and 'ecb:' (electronic codebook) prefixes in the
  key field to set a particular Blowfish block cipher mode of operation,
  defaulting to the value of a config dialog preference (Behavior -> Co-
  nnection-> Encryption -> Default Encryption Type, the default is Elec-
  tronic Codebook (ECB)) when no prefix is given.
* Fixed crash when opening links with ' in them when the "Custom Browser"
  preference is enabled in Konversation's config dialog.
* Improved consistency of link opening behavior between the chat view, the
  topic label and the URL catcher (all three now use the new-in-KDE-4 KTool-
  Invocation API to invoke the KDE default browser, whereas the topic label
  and the URL catcher were still using KRun until now).
* Fixed a bug that could cause the state of the spell-checking setting for
  the input line to be lost across application restarts.
* Added support for considering square brackets ([]) part of URLs.
* Fixed the code producing multiple JOIN commands for auto-join as neces-
  sary to stay under the 512 byte limit for a single command to take the
  length of the commas in the commands into account when calculating the
  distribution of the channels among the multiple lines, as well as not
  to list channels falling at the boundary twice, once in the current and
  once in the following line. In English: Fixed auto-join with a massive
  amount of channels possibly not joining all channels correctly.
* Fixed a bug causing re-joining of password-protected channels to fail
  on reconnects when those channels also had another mode with a parame-
  ter set.
* Fixed a bug that caused query lines written by the user that are so long
  that they need to be split up into multiple messages not to display in
  the query text color.
* Fixed a bug causing query lines written by the user that are so long they
  need to be split up into multiple messages for sending not to be displayed
  in the configured query text color.
* Fixed the status bar showing HTML data when hovering the contents of the
  info label area at the top of query tabs. The data was actually supposed
  to be displayed as a tooltip (just like the nickname list item tooltips
  in channel tabs), and is now.
* Fixed a bug causing the automatic away system to set the user away again
  on the next periodic activity check when no further mouse/keyboard acti-
  vity occurs after unlocking the screen/ending the screensaver.
* Implemented splitting up of overly long actions (i.e. usage of the
  '/me' command) into multiple messages to stay under the 512 byte message
  length limit (in raw format) imposed by the IRC protocol. As with the
  normal message splitting, this is aware of how multi-byte/variable-width
  text encodings and sender hostmask length (which is part of the message on
  the receiving end) factor into the matter. Note that only the first message
  is actually sent as an action, the other messages are sent as normal messa-
  ges - intentionally, as this seemed to make the most sense formatting-wise.
* Fixed the dialog box appearing upon receiving an invitation to join a chan-
  nel causing a disconnect by timeout when not being dealt with by the user
  swiftly enough.
* Multiple invitations to join channels are now being handled by a single
  dialog box per connection, so that receiving many invitations in short
  order no longer means getting flooded with dialog boxes.
* Implemented DH1080 key exchange support for Blowfish encryption. You can
  use the '/keyx' command to initiate a key exchange.
* The raw log now shows encrypted incoming and outgoing messages in their
  encrypted form. Previously, incoming messages were being decrypted before
  being shown, and outgoing messages were being shown before encryption
  took place, thus not capturing what was actually coming from or going to
  the network socket as is the intent of the raw log.
* Fixed a bug causing unrecognized channel mode characters being shown as
  their decimal value in the chat view messages announcing them having been
  set or removed.
* Per-tab encoding settings for tabs belonging to a connection to a configu-
  red network (i.e. one found in the Server List dialog) now reference the
  unique ID rather than the name of the network in the config file, making
  things work reliably across restarts even when there are multiple identi-
  cally named networks. Encoding config file entries for tabs belonging to
  connections to servers that are not part of a configured network continue
  to reference the server hostnames.
* Fixed the "(away)" label in front of the input line, indicating away sta-
  tus, not showing up in query tabs.


Changes from 1.2-alpha2 to 1.2-alpha3:
This third alpha fixes a fair amount of annoying bugs encountered in
day-to-day usage, as well as a serious bug in handling NAMES messages
from IRC servers. We've also made some UI changes that we'd like to
get your feedback on: We've changed the default tab completion mode
to "Cycle Nicklist", and we've removed the frame around the tab wid-
get when using the listview version of the tab bar.


* Worked around a Qt bug that has a text selection in the chat view that
  includes the last line in the view grow to include the new text when
  new text is appended to the view.
* Fixed Konversation exposing various signals on D-Bus that it shouldn't
  have.
* Fixed a regression causing '/names #channel' to end up duplicating the
  nickname list contents when already attending '#channel'.
* When using Qt 4.5, Konversation no longer paints a frame around the UI
  elements of a view (e.g. a channel) when using the listview version of
  the tab bar. Feedback on this change is appreciated!
* Fixed duplicated messages about DCC transfer failures in the chat view.
* When the menu bar is hidden, the top-most item in the chat view context
  menu is now the option to unhide it again.
* Fixed the OSD disappearing also cancelling the system tray blinking no-
  tification.
* Fixed a crash on quit by D-Bus / by KDE session logout.
* Fixed the tab completion nickname list sorting behavior for the "Shell-
  like" completion modes. The behavior now matches the "Cycle Nicklist"
  mode and the "Shell-like" modes of previous Konversation 1.x versions
  again: The last active nick for the given prefix is at the top of the
  list, with the rest of the list sorted alphabetically.
* The default tab completion mode has been changed to "Cycle Nicklist".
  Feedback on this change is appreciated!
* Changed the bundled 'bug' script to perform a quick search with the
  given parameter, rather than try to use it as a bug ID directly. The
  resulting behavior is unchanged for a numerical parameter, but with
  a string, much more useful.
* The 'mail' script, which was disabled in the build system up until now,
  is now getting installed again.
* Fixed a bug causing the "Set Encoding" menu not to work.
* Fixed a bug causing the bundled 'media' script not to work when used
  to retrieve song information from Amarok 2 for a song which has any
  of the following meta data fields not set: title, artist or album.
* Fixed the 'Self' field of the DCC transfer details panel not showing
  the port when available.
* Fixed DCC transfers showing an average speed of 1 TB/s in their first
  second.


Changes from 1.2-alpha1 to 1.2-alpha2:
After just under a week's worth of adding back some missing functiona-
lity, polishing the interface and, of course, of fixing bugs, we've de-
cided to bring you Konversation 1.2-alpha2. While there were no major
defects discovered in alpha1, this one should yield an overall more re-
fined user experience, and brings us another good step closer to our
first stable release for KDE 4.


* Fixed nicknames in action messages using the message text color when
  nick coloring is disabled rather than the correct action text color
  as the rest of the message.
* Added back the context menus for nicknames and channel links in the
  chat view.
* Fixed the topic/info area in channels, queries and DCC chats, the nick-
  name list in channels and the listview variant of the tab bar not keep-
  ing their sizes when the window is resized.
* Added missing actions ("Reconnect", "Disconnect", "Join channel ...")
  back to the context menu for server status tabs.
* Improved the placement of the "Join on connect" channel tab context
  menu item (back under "Enable Notifications" as in v1.1).
* Added the use of some of the new irc-* icons found in recent updates
  to the Oxygen icon theme.
* Fixed crash when joining a channel after having been blocked from get-
  ting the topic for the channel.
* Made the initial size of the "Edit Network" dialog more reasonable.
* Improved vertical size of and text alignment inside the input line.
* Added back support for drag and drop reordering of views to the list-
  view version of the tab bar.
* Added back support for "surfing" in the listview version of the tab
  bar by pressing and holding the left mouse button on a view and moving
  the mouse up and down in the list view.
* Fixed mouse handling for close buttons in the listview version of the
  tab bar.
* Added back support for showing tooltips for truncated view items in
  the listview version of the tab bar.
* Fixed crash when receiving lines terminated by LFCRLF from buggy IRC
  servers (such as the shroudBNC IRC proxy when it relays a private mes-
  sage received while no user was connected to it).
* Worked around a Qt bug that has a text selection in the chat view that
  includes the last character in the view grow to include the new text
  when new text is appended to the view.
* Sound notifications for highlights now reuse a single Phonon MediaObject
  by enqueuing notification sounds rather than instanciate a new one for
  every notification, improving resource efficiency and hopefully taking
  care of some high CPU usage reports that seemed to be linked to Konver-
  sation's Phonon usage.
* Fixed the enabling/disabling of the "Find Previous" action.
* Fixed several bugs in the Server List dialog (sort indicator disappear-
  ing while dragging items, stray pixel in the top-left corner of the list-
  view, hover decoration while dragging not always showing).
* Improved handling in the Identity editor dialog: When Konversation com-
  plains about one or more required fields not being filled in, the dialog
  will now put focus on the field when it opens.
* Fixed the 'Self' IP field of the DCC transfer details panel not showing
  a value when on the receiving end of a DCC file transfer.
* Handle DCC REJECTs. A DCC SEND is now automatically aborted when the
  partner rejects it.
* Fixed a bug causing the ordering of views to be partially reversed when
  switching from the listview version of the tab bar to the regular tab bar.
* Improved consistency of the context menu for links between the topic area
  and the chat view.
* Fixed repeated searches for the same search pattern (i.e. "Find Next")
  sometimes not working reliably with the chat view search bar.
* Minor code cleanups and performance improvements.


Changes from 1.1 to 1.2-alpha1:
We're happy to bring you this first public release of the KDE 4 version of
Konversation.

Despite the "alpha" moniker we've settled on for this one, mostly due to
not yet being feature-complete (see below), this port has already been
used productively by a fair number of people for some time and should be
stable enough for general usage. In fact, certain features, notably DCC
file transfers and auto-replace, are expected to be more robust than in
Konversation 1.1.

While this version largely achieves feature parity with Konversation 1.1
(and adds several new features on top), notable exceptions are the lack
of support for marker lines as well as nick and channel context menus in
the chat view. These are pending the merge of a rewritten chat view and
will make a return before the final Konversation 1.2 release. Other known
issues in this version include a lack of KDE 4 HIG compliance in the con-
figuration dialog and various minor interface polish problems; these will
be addressed as well.

Enjoy, and don't forget to report any bugs you encounter!


* Ported to KDE 4 (KDE 4.1 or higher is required).
* Enabled the (experimental, hackish) Amarok 2 support in the 'media' script.
* Fixed a bug that could cause channel notifications to be lost across recon-
  nects.
* Removed the code to recreate hidden-to-tray state across application re-
  starts. It was broken after the shutdown procedures were moved to a point
  in time after after the main window is hidden to cover quit-by-DCOP, and
  Konversation 1.1 features an explicit hidden startup option that fulfills
  user demands more accurately anyhow. This fixes a bug that made Konversa-
  tion always hide to tray on startup regardless of the aforementioned op-
  tion when the system tray icon was enabled.
* Added a network settings lookup fallback to retrieving the key of a channel.
  Previously, this relied solely on the channel's mode map. Closes the brief
  gap between a channel join and the server's reply to MODE where possible,
  so that e.g. reconnecting directly after auto-joining a channel with a key
  doesn't result in a failed rejoin due to not having the key by way of the
  MODE reply yet.
* Fixed opening URLs from the channel topic context menu in Channel List tabs.
* When connecting to multiple selected unexpanded network items from the Ser-
  ver List, don't also try to connect to the hidden server sub-items selected
  by implication, avoiding unwanted connection duplicates.
* Mask the password field in the Quick Connect dialog.
* Fixed a bug causing passive DCC file transfers to stall at 99%.
* Fixed "/leave" command in queries.
* Fixed auto-replace rules containing commas in the pattern not being loaded
  correctly from the config file.
* Fixed non-regex mode auto-replace rules containing regex special characters
  and character sequences not working correctly.
* Improved performance of non-regex mode auto-replace rules.
* Added option to open log files with the system text editor instead of the
  built-in log viewer.
* Made the Oxygen nicklist icon theme the default nicklist icon theme.
* Removed the bundled 'weather' script (it relied on a KDE 3 service no lon-
  ger present in KDE 4; a replacement will need to adopt a new approach).
* Fix sending and receiving of files with names containing spaces
* DCC Protocol adjustment to proper handle passive DCC resume/accept requests.
  (this breaks passive-resume compatibly with <konversation-1.2)
* Send proper DCC reject commands when rejecting a queued receive.
* Improved error recovery during dcc send.
* Fix time left for transfers that finished in under 1 sec displaying infinite
  time left.
* Increased default DCC buffer size to 16384 to reduce CPU load while sending
  or receiving files.
* Added KNotify events for "Highlight triggered", "DCC transfer complete"
  and "DCC transfer error".
* Fixed Automatic User Information Look Up not being started upon channel
  join on some IRC servers (namely those that don't send RPL_CHANNELCREATED
  after joining a channel, such at those used by IRCnet).
* Updated the server hostname for the pre-configured Freenode network to the
  one given on their website these days, 'chat.freenode.net'.
* Added support for browsing the input line history by using the mouse wheel.
* Fixed problems the bundled 'tinyurl' script had with certain URLs by conver-
  ting it to use the TinyURL API rather than screen scraping.
* Added initial support for the MODES parameter of RPL_ISUPPORT. When giving
  or taking op, half-op or voice to/from multiple people at once, Konversa-
  tion will now combine as many of them into a single MODE command as the
  server advertises it supports (as long as it advertises an actual value;
  the value-less unlimited MODES case is not supported yet as it requires
  more work on limiting MODE commands to the 512 byte IRC message buffer
  limit for extreme cases). If MODES is not given at all by the server, the
  fallback is an RFC1459-compliant value of 3.
* Added support for formatting variable expansion in the replacement part of
  auto-replace rules.
* Rewrote multi-line paste editor, improving handling and appearance.
* Added button to intelligently replace line breaks with spaces to the multi-
  line paste editor.


Changes from 1.0.1 to 1.1:
We are extremely pleased to announce Konversation's newest major release, v1.1.
Konversation 1.1 is a special release for us in multiple ways: It's our farewell
to KDE 3, by way of being the last major release built upon that venerable
platform. It's also our biggest release yet, in terms of the number and
magnitude of the changes.

The additions and improvements in this release are both user-visible and under
the hood. Some of the highlights are rewritten connection handling (robustness
and correctness improvements, better support for IRC URLs, bookmarking and
more), redone DCC with better UI and Passive/Reverse DCC support, a redone away
system with the addition of auto-away support, redone and much more useful
remember / marker line support, a new outbound traffic scheduler that is capable
of aggressive throttling to avoid flooding while smartly reordering messages to
improve latencies, great convenience additions like a "Next Active Tab" shortcut,
and much, much more, along with a large number of bugfixes and tweaks to round
things out. Note: All fixes made since RC1 are marked with a "[New since RC1]"
label in the changelog.

We're confident that this release is the best and most robust version of
Konversation published so far, and upgrading comes highly recommended to all
users. Enjoy!


Text views
* Added an option to hide the scrollbar in chat windows.
* Don't scroll to bottom if the view was scrolled up before resizing.
* Fixed chat views occassionally not being scrolled to the bottom at their
  inception with long backlog appends.
* Fixed an off-by-one error in scrollback culling.
* Fixed a bug that lead to single leading whitespace characters in lines being
  omitted from display in chat windows.
* Now preserving trailing whitespace in raw log tabs.
* Fixed display of '<' and '>' in backlog lines.
* Fixed copy/paste with shortcuts other than the default Ctrl+C/V ones.
* Fixed onotice display.
* Fixed middle-click-to-open-in-new-tab on chat window URLs when Konqueror
  wasn't running.
* Fixed superfluous closing parenthesis being inserted after links in lines
  which contain multiple links followed by closing parentheses.
* Fixed URLs with encoded hash mark %23 being incorrectly passed off to handler.
* Fixed variable expansion causing certain URLs to be corrupted when pasted.
* Added a "Save Link As" item to the context menu of links in the chat window.
* Have the "Save as..." dialog suggest a file name.
* Implemented Shift+Click to "Save as..." URLs..
* Made the channel links context menu work in server status views.
* Fixed nickname links in chat view messages created as a result of '/msg <nick>
  <message>' commands erroneously prepending '->' to nicknames.
* Fixed operations on nicknames containing "\" characters from the nickname
  context menu.
* Fixed query view context menus operating on the wrong nickname under certain
  circumstances.
* Fixed a bug that caused the "Send File..." action in the generic query context
  menu to pick the wrong recipient after hovering the user's own nick in the
  chat display.
* Fixed date display not using the locale's date format.
* Fixed IRC color parsing so that the colors gets reset to default if no color
  numbers were given.
* Fixed a bug that could cause the text selection in a chat window to be messed
  up when new text was appended.

Marker/Remember Lines
* Konversation now distinguishes between manually and automatically inserted
  marker lines, making the "show line in all chat windows" preference less
  confusing.
* The automatically inserted remember lines when chat windows are hidden are now
  "sliding", i.e. there is only one per chat window, and it moves.
* Automatically inserted remember lines will now optionally only be inserted
  when there's actually new text being appended to the chat window (enabled by
  default).
* The automatic remember line will now also be inserted when the window has lost
  focus.
* Added an action to clear all marker lines in a chat window.
* Improved marker lines-related preferences and terminology.
* Improved the appearance of marker lines in the chat window.
* Made the (marker line-related and other) identity default settings consistent
  between the initial identity and additional newly created identities.
* Fixed hidden join/part/quit events marking tabs as dirty, allowing multiple
  consecutive remember lines to appear.
* Fixed crash when minimizing or closing the application window prior to any tab
  switch when the auto-insertion of remember lines is enabled.

Input line
* Fixed input line contents rather than actual sent text being appended to the
  input history upon a multi-line paste edit.
* Special characters and IRC color codes will now be inserted at the cursor
  position rather than the end of the input line contents.

Nickname list
* Implemented an additional "Sort by activity" nicklist sorting mode.
* Added Oxygen nicklist icon theme by Nuno Pinheiro.
* The list of nickname list themes is now sorted alphabetically.
* Fixed race condition when removing a nicklist theme (listview would be
  repopulated before deletion was complete).
* Fixed using the wrong palette for the disabled text color in the nickname
  list.
* Fixed moving back from the custom alternate background color to system colors
  in the channel nickname listviews when disabling the "Use custom colors for
  lists, [...]" preference.
* Cleanups in the nicklist item code.

Tab bar / Tree list
* Added option to add and remove a channel from its network's auto-join list
  from the tab context menu.
* Added option to close tabs using middle-mouse.
* Slightly sped up tab switching by eliminating some redundant UI action state
  updates.
* Channel tabs will no longer close when kicked, but rather grey out on the tab
  bar and offer context menu actions to rejoin.
* Channel and query tabs will now grey out on the tab bar when disconnected and
  no higher priority notification is present. Channel tabs will only ungrey if
  and when the channel is successfully rejoined after reconnect; query tabs
  ungrey immediately once reconnected.
* Display tooltips for truncated treelist items.
* Fixed forwarding keyboard events received by the treelist to Konsole widgets
  and focus adjustment thereafter as well as generally after switching to
  Konsole tabs by other means.
* Fixed treelist scrollbar not picking up on new palette when the KDE color
  scheme changes.
* Fixed a bug that could cause a crash when the view treelist would receive
  keypress events during application shutdown.
* [New since RC1] Fixed a corner case where a server status item could become a
  child item of another server status item when dragging it below an special
  application pane item such as DCC Status or Watched Nicks Online.
* [New since RC1] Fixed a crash when using the mouse wheel on the list within
  ~150ms of a drag and drop operation.

System Tray icon
* Remember and recreate minimized-to-tray state across sessions.
* Added option for hidden-to-tray startup.
* Reload tray icons when the icon theme changes at runtime.
* Added option to not blink the systray icon, but just light it up.

Channel Settings Dialog
* Added a search line to the ban list.
* Fixed sorting the ban list by time set.
* Made the ban list's "Time Set" column use KDE locale settings for the date
  format.
* Fixed OK'ing/Cancel'ing/closing the Channel Settings Dialog not dealing with
  open ban list in-line edits correctly.
* Reset topic editbox when the channel options dialog has been dismissed with
  cancel.
* Fixed incorrect time display in the topic history list in the Channel Settings
  dialog.

Server List Dialogs
* Moved the "Show at application startup" option for the Server List dialog to
  the dialog itself.
* Auto-correct hostnames and passwords entered with preceding or trailing spaces
  in the Server List dialog.
* Don't allow impossible ports to be set for servers.
* Sensible default focus in the server list dialog.
* Fixed unresponsive, defective Server List dialog window appearing at
  application startup using the Beryl or Compiz compositing window managers.

Interface Misc
* Added a "Next Active Tab" keyboard shortcut to jump to the next active tab with
  the highest priority notification.
* Added a Find Previous standard action.
* Have the "Insert Character" dialog pick up on text view font changes.
* Show correct number of colors in the color chooser dialog.
* Made "Alternate Background" colorchooser disable when unneeded.
* Fixed crash when changing the KDE color scheme while a non-chat tab is open.
* The encoding selection now allows returning to the used identity's default
  encoding setting.
* Update actions on charset changes.
* Added Notifications Toggle and Encoding sub-menu to the window menu.
* Moved "Hide Nicklist" menu action from Edit to Settings.
* Fixed the "Automatically join channel on invite" setting not to show an
  inquiring dialog anyway.
* Fixed saving the state of the invitation dialog option in the Warning Dialogs
  preferences.
* Added a warning dialog for quitting with active DCC file transfers.
* Return focus to the text display widget after closing the search bar in a log
  reader view.
* Made pressing Return or Enter in the Log File Viewer's size spinbox apply the
  setting, just as pressing the Return button.
* Fixed a bug where the SSL padlock icon would be shown on a non-SSL connection
  (and clicking would cause a crash).
* Empty topic labels will no longer show empty tooltips, but rather none at all.
* Added a sample 12-hour clock format string to the timestamp format combobox.
* Timestamp format list is no longer localized.
* Robustness improvements and less UI quirks around channel password handling.
* Improved general layout and consistency of tab, chat view, query and topic
  context menus. Added some missing icons.
* Fixed some bugs of UI actions not being appropriately as their context
  changes.
* Fixed enabled state of "Close All Open Queries" action not being updated
  correctly when queries are closed by way of closing a status view tab.
* The window caption is now properly being reset when the last tab is closed.
* Made units in spinboxen in the identity and app preferences UI more
  consistent.
* Minor fixes to accelerators and tabbing order in various dialogs.

Commands
* Support command aliases in network connect commands.
* Turned parameter-less '/away' into a toggle: Sets away state with default
  message initially, and unsets away state if already away.
* Added an '/aunaway' command to complement '/aaway' (previously, there was only
  '/aback').
* Added support for '/kill'.
* A '/join' command for an already-joined channel will now focus it.
* Added an '/encoding' command as an alias to '/charset'.
* '/charset' and '/encoding' now accept 'latin-1' as an alias for 'iso-8859-1'.
* Improved messages for the '/charset' and '/encoding' commands.
* Rewrote /me parsing to be less hackish and display usage info with an empty
  parameter.
* '/msg <nick>' is no longer treated as equivalent to '/query <nick>'.
* '/msg <nick>' will now error out when lacking a message parameter.
* '/query <recipient> [message]' will now error out when recipient is a channel.
* Added a '/queuetuner' command to bring up the outbound traffic scheduler's
  tuning/debug pane.

Notifications
* Seperated query messages and messages containing the user's nickname into two
  distinct KNotify events.
* Made the tab notification color of private messages configurable independently
  from normal messages.
* Don't highlight own nick on topic created by messages.
* Fixed disabling notifications for a tab not cancelling highlight sounds.
* Fixed a race condition where a highlight's autotext reply would outrun the
  original line's tab notification.
* Fixed actions in queries and DCC chats producing message notification events
  (rather than the correct private message ones).
* Changed the OSD screensaver check logic to work in KDE 4.
* [New since RC1] Fixed on screen display occassionally reverting to the default
  position when using the settings dialog to change unrelated settings.

Connection handling
* Improved behavior with regard to reusing existing connections in connection
  attempts that provide an initial channel to join, such as command line
  arguments, the DCOP interface, the bookmark system or irc:// links).
  Previously, the application would have inconsistently either reused an
  existing or created a new connection.
* Better dialog messages in the interactive variant of the decision to either
  reuse or create a new connection (from the Server List dialog and the Quick
  Connect dialog).
* Improved and more consistent display of connection names (i.e. network or
  server host name) throughout the application.
* Much improved irc:// URL support for connection intanciation, with support
  added for IPv6 host names and many of the features proposed by the Mirashi
  specification.
* Eliminated redundant irc:// URL parsing codepaths in favor of a single one.
* Added support for irc:// URLs to the chat views.
* Removed "konversationircprotocolhandler" shell script. The Konversation
  executable now understands irc:// URLs directly.
* Initiating connections from command line arguments and options now works also
  when the application is already running.
* Fixed a bug that would cause a connection initiated from command line options
  not to get past the identity validation stage when the configuration file was
  unitialized and empty.
* The server list dialog will now always be closed when starting Konversation
  with command line arguments to initiate a connection, consistent with the
  configuration-based auto-connect behavior.
* Providing a channel in the creation of a new connection (i.e. via command line
  arguments, the DCOP interface, the Quick Connect dialog, the bookmark system
  or irc:// links) now consistently pre-empts the stored auto-join channel list
  if the target of the connection is a network or the hostname is found to be
  part of a configured network. Previously, this would only work for Quick
  Connect and the bookmark system (which caused the infamous Sabayon user flood
  in #kde due to their "Get Support" desktop link connecting to Freenode, which
  in an unconfigured Konversation has #kde in its auto-join list).
* Connections now have globally unique IDs.
* The DCOP interface now understands connection IDs in addition to host names.
* The scripting systems now uses globally unique connection IDs rather than
  server host names to refer to connections, fixing a bug where scripted
  responses were being handed to all connections sharing a hostname (which was
  actually intentional in the absence of connection IDs, but undesirable for
  users).
* Improved iteration behavior over a network's server list on connection losses.
* The "Reconnect" action now works also when Konversation doesn't consider the
  connection to be in a disconnected state.
* Improved the server status view messages related to reconnection attempts.
* Consistently apply the "Reconnect delay" setting (previously confusingly named
  "Reconnect timeout"), which wasn't done before.
* Fixed a bug that could cause the connection process to claim that a DNS lookup
  was successful when it actually wasn't.
* Fixed opening bookmarks with spaces in the target address name (which may be a
  network name, and networks may have spaces in their name).
* Properly update the state of the "Add/Remove to Watched Nicknames" nickname
  context menu actions when the connection isn't to a config-backed network, in
  which case there's no way to store and make use of those list entries.
* Fixed a crash when quitting the application with a resident connection that
  disconnected due to an SSL error.
* Fixed crashes in the DCOP interface if no connection was present.
* Make the "Reconnect" action available even while ostensibly in the process of
  connecting.
* Fix possible crash when closing all views and subsequently creating a new
  connection.
* Fixed crash upon auto-connect at application startup.
* Improved the naming of preferences related to automatic reconnection attempts
  to be less confusing.
* Made it possible to set the number of automatic reconnection attempts to
  unlimited.
* Provided better default values to the preferences related to automatic
  reconnection attempts.
* Fixed crash when opening a Konsole tab and Konsole was not installed.
* Fixed allowing the user to create an infinite loop of showing the SSL
  connection details dialog upon being presented with the invalid certificate
  multiple choice dialog at connection time by checking "Do not ask again" and
  then clicking "Details".

Identities
* Made it possible to set a Quit message independently from the Part message.
* Saving a newly-created identity is no longer allowed without entering a real
  name.
* Apply switching the identity in the identity dialog as opened from the network
  dialog to the network's settings.
* Have the Edit/Delete/Up/Down buttons for the nickname list of an Identity
  correctly change state according to the selection

Away system
* Added per-identity support for automatic away on a configurable amount of user
  desktop inactivity and/or screensaver activation, along with support for
  automatic return on activity.
* Fixed the "Global Away" toggle to make sense and update its state properly.
* Turned parameter-less '/away' into a toggle: Sets away state with default
  message initially, and unsets away state if already away.
* Added an '/aunaway' command to complement '/aaway' (previously, there was only
  '/aback').
* Broadly rewrote away management related code for improved robustness and less
  duplication and hacks (e.g. no more abuse of multiServerCommand for global
  away).

DCC
* Massive DCC refactoring and improved reliability.
* Passive DCC support (Reverse DCC RECV, SEND).
* Replaced the DCC Transfer Details dialog with a retractable transfer details
  pane directly in the DCC Status tab.
* Added DCC transfer average speed reading to the DCC transfer details panel.
* The DCC Status tab now remembers its column widths across sessions.
* Fixed duplicated quotation marks around file names in DCC transfer status
  messages.
* Fixed "Open File" DCC dialog remembering the last viewed location incorrectly.
* Added an "Open Folder" button to the DCC transfer details panel.
* Added check for whether the URL is well-formed before initiating a DCC send.
  Fixes a bug of dragging a nickname link in the chat view onto the query chat
  view drop target starting a DCC transfer that cannot succeed.
* Ported the DCC code away from relying on server group IDs to refer to
  connections, made it use connection IDs instead. Fixes potential bugs with
  multiple concurrent connections to the same network.
* Fixed queued DCC transfer items not picking up on download destination
  directory changes.
* Fixed bug leading to crash upon initiating DCC Chat when "Focus new tabs" was
  enabled.
* [New since RC1] New transfer items added to the DCC panel's transfer list are no
  longer automatically selected, meaning work on other items in the list occuring
  at the same time no longer gets interrupted.
* [New since RC1] The "Filename:" line in the DCC panel's detailed info pane is
  now using text squeezing to avoid an increase in minimum window width with long
  file names.
* [New since RC1] Failed receives now longer show 833TB/s as their transfer
  speed.

Blowfish support
* Fixed FiSH-style +p prefix to send clear text to channel despite an encryption
  key being set.
* Text encoding is now being applied to the cleartext, rather than the
  ciphertext. This fixes using characters outside the ASCII range with blowfish
  encryption.
* Fixed CTCP (and thus DCC) requests to nicknames for whom an encryption key is
  set.
* Added support for encrypted topics.
* If an encryption key is set, a lock icon will now be shown next to the input
  box.
* Added a '/showkey <channel|query>' command to show the encryption key for the
  target in a popup dialog.

Auto-replace
* Improved auto-replace behavior with multiple matches in one line (fixes
  multiple Wikipedia links).
* Fixed bug that could cause auto-replace to replace the wrong group of the
  matching string.
* Auto-replace is now case-sensitive in regular expression mode.
* Added regular expression editor button to auto-replace preferences.
* Fixed conditional enabling of the RegExpEditor button in the auto-replace
  preferences page.

Ignore
* Fixed being asked twice whether to close a query upon ignoring the opponent.
* Fixed crash when opting to close a query upon chosing to ignore the opponent
  from the context menu of his nickname.

Watched Nicknames
* Improved robustness of the Watched Nicknames Online system.
* The "Offline" branches in the "Watched Nicks Online" list will now be omitted
  when there are no offline nicks for the respective network.
* Fixed display of WHOIS spam prompted by the Watch List's WHOIS activity.
* Connections to non-config-backed targets no longer show in Watched Nicks
  Online.
* [New since RC1] Actually honor the preference to enable/disable the Watched
  Nicknames Online system, and apply it at runtime.
* [New since RC1] Make sure the periodic Watched Nicknames Online check actually
  starts running within the same session after adding the first nickname to the
  list.
* [New since RC1] Fixed a crash on quit with the Watched Nicks Online tab open and
  there being an open connection to a network that nicks are being watched for.

Channel List
* IRC markup is now removed from content in the Channel List view.
* Speed improvements in Channel List views.
* Fixed keyboard accelerator collisions in Channel List views.
* Allow higher values than 99 in the min/max users filter spin boxes in Channel
  List views.

Under the Hood / Protocol
* Rewrote the outbound queue scheduling system to be smart enough to reorder
  outbound traffic to reduce interactive latency while aggressively throttling
  the rate to prevent flooding. Use '/queuetuner' to tweak.
* Rearranged when and how auto-who is triggered upon channel join a bit, to
  avoid excessive flooding on multiple concurrent joins in some cases.
* Auto-Who reliability improvements.
* Fixed auto-join with very many channels (the auto-join command would exceed
  the maximum buffer length; it is now split into multiple commands as needed).
* Fixed bugs around rejoining channels after reconnects related to the cause of
  the disconnect, channel passwords and picking the actual list of joined
  channels over the network's auto-join list.
* Improved behavioral consistency in situations where the auto-join list is
  preempted by a transitory auto-join channel (bookmarks, etc.).
* Fixed bug that caused the topic state not to be cleared properly prior to
  rejoining channels during reconnects.
* Fixed onotice payload being cut off after the first word.
* Changed RPL_WHOISOPERATOR handling to internationalize the common case ("is an
  IRC Operator") and otherwise passthrough the string sent by the server.
* Fixed parsing of alternate invite format on Asuka ircds (QuakeNet).
* Added support for PRIVMSG from the server.
* Support RPL_UMODEIS.
* Announce 'k' channel mode (i.e. channel key) changes in non-raw mode as well.
* The command part of CTCP requests is now always converted to uppercase before
  sending, as some clients don't like lower- or mixed-case commands as the user
  may have entered them.
* Display mode for your nick and channels you're not in.
* Fixed per-channel encoding settings for the channels of a network being lost
  when the network is renamed.
* Fixed crash when receiving actions for channels the client is not attending.
* Made newline handling in the DCOP interface more robust, fixing a potential
  security problem (CVE-2007-4400).
* A few speed optimizations and memory leak fixes.
* [New since RC1] Fixed a crash on quit during KDE logout or when quitting by
  DCOP.

Included scripts
* Support for KMPlayer in the 'media' script (based on the window caption, as
  KMPlayer has no proper appropriate DCOP interface).
* Added KPlayer support to the 'media' script (also caption-based).
* Added support for Audacious to the 'media' script.
* Fixed problems in disk space calculation in the 'sysinfo' script caused by
  wrapped df(1) output.
* Added KDE 4 support to the 'sysinfo' script.
* Removed some bashisms from the 'sysinfo' script.
* Rewrote 'weather' script for increased reliability in error handling and
  better readability.
* Removed broken 'qurl' script in favor of new 'tinyurl' one.
* Fixed the 'fortune' script not working properly when variable expansion is
  turned off in the preferences.
* [New since RC1] Fixed a bug in the 'media' script that caused it to break when
  querying Audacious with audtool not being available.

Packaging
* [New since RC1] Standards compliancy fixes in the application .desktop file and
  the nicklist icon theme .desktop files.

Build
* Fixed build with --enable-final.

-------------------------------------------------------------------------------

Changes from 1.0 to 1.0.1
We are pleased to announce the immediate availability of Konversation 1.0.1,
a maintenance release featuring notable improvements for users of right-to-
left languages (including new Arabic and Hebrew translations), further re-
finement of the user interface and application functionality, and fixes for
minor defects found in the previous release.

* A bug that caused left-to-right text contained in lines determined to be
  right-to-left text to appear reversed has been fixed.
* Whether a line is treated as right-to-left vs. left-to-right text is now
  determined by the amount of each type of character in the line, improving
  the user experience in chats involving bi-directional text considerably.
* The "Edit Network" dialog has been refined for clarity and ease of use.
* A warning dialog to prevent accidentally quitting Konversation has been
  added.
* The Auto Replace list can now be sorted.
* The '/media' script command now sports improved player recognition, enhan-
  ced and easier configurability, the ability to distinguish between audio
  and video media as well as newly added support for kdetv. New '/audio' and
  '/video' command aliases have been added to expose these new abilities.
* The lower boundary of the default DCC port range has been raised from 1025
  to 1026 to avoid conflicts with the commonly blocked Windows RPC port 1025.
* Dismissing an OSD notification by clicking on it will now also cancel the
  systray notification flash.
* A new configuration file option [OSD]OSDCheckDesktopLock has been added,
  allowing to manually disable the screensaver check in non-KDE environments
  that do not support it, causing the OSD not to be displayed.
* A bug that could lead to the "Switch to" sub-menu in the context menus of
  tabs not to be updated properly upon switching tabs has been fixed.
* A bug that caused the 'irc setBack' DCOP call not to function has been
  fixed.
* A bug that caused ampersands in the names of tabs not to be displayed and
  an immediately following character to be used as keyboard accelerator has
  been fixed.
* A bug that caused ignoring nicknames with '[' or ']' characters in them to
  fail has been fixed.
* Command aliases containing regular expression syntax can no longer cause
  built-in commands not to function.
* A bug that caused the Konversation irc:// protocol handler not to function
  has been fixed. Its compatibility with systems that do not use the GNU bash
  shell as default shell has been improved.
* A notable number of code quality improvements suggested by KDEs automated
  quality control service EBN have been implemented.

-------------------------------------------------------------------------------

Changes from 0.19 to 1.0
We are extremely pleased to announce the immediate availability of Konversation
1.0, a significant milestone in the lifetime of the Konversation project. This
release includes major new functionality as well as a large amount of
improvements to existing functionality, with an emphasis on user interface
polish and overall reliability. Notable new features include a vertical treelist
of tabs as an alternative to the traditional tab bar, auto-replacement of words
in incoming and outgoing messages, an improved Channel Settings dialog now
featuring a ban list, an optional expanding input box and many improvements to
both DCC file transfers and DCC chats. Enjoy!


User Interface
* It is now possible to place the tabs on the left side of the application
window.
  This has been implemented as a treelist of tabs. The treelist supports all of
  the cosmetic and interactive properties of the original horizontal tab bar,
  including colored notifications, LED icons, (hover) close buttons with delayed
  activation, reordering, drag'n'drop and mouse wheel cruising. And a few tricks
  of its own.
* Connection status tabs now feature specific context menu entries to disconnect
  and reconnect, as well as to join a channel on that connection.
* The automatic resizing of tabs in the tab bar first implemented in version
  0.19 is now optional.
* The grouping behavior of Channel List and Raw Log tabs in the tab bar has been
  improved.
* Disabling notification for a tab will now unset the active notification.
* The enabled/disabled state of the notifications for connection status tabs
will
  now be remembered across sessions for configured networks.
* The speed of switching tabs in quick succession with the auto-spellchecking
  preference enabled has been improved.
* Using custom fonts in the user interface is now optional. The font used by the
  tab bar is now configurable.
* Events in the connection status tabs are now logged into separate logfiles.
* The Channel Settings dialog now includes a Ban List tab that allows viewing,
  adding and removing bans in a channel. The dialog can now be opened from the
  menu bar and chat window context menu in addition to the button in the topic
  area.
* Mode and topic handling in the Channel Settings dialog and the channel mode
  buttons have been overhauled to make them more robust and reliable.
* The number of Quick Buttons to show below the nickname list in channel tabs is
  now configurable. Additional buttons may be added or existing buttons removed.
* Konversation now supports auto-replacing words in incoming and outgoing
  messages. Regular expressions are supported. The auto-replace configuration
can
  be found in the preferences dialog. The static Wiki link feature found in
older
  versions has been retired in favor of an auto-replace rule.
* The search bar has been redesigned to provide a better user experience.
* The "Find Next" action will now open the search bar when there is no active
  search, matching the behavior of Konqueror and other KDE applications.
* The sorting of the nick completion list has been improved to put the last
  active user for a given completion prefix at the beginning of the list.
* The tab completion of the user's own nickname has been reenabled.
* The nick completion feature has been significantly cleaned up and made more
  reliable. A bug that could lead to an application crash during nick completion
  has been fixed.
* An option to expand the vertical size of the input box automatically when the
  text entered grows beyond the length of a single line has been added.
* The behavior of the input box on pasting text including leading or trailing
  newline characters has been improved never to cause lines being sent without
  user acknowledgement.
* The input box of connection status, channel and query tabs will now be
disabled
  and the nickname list of channel tabs cleared when the respective server
  connection is closed.
* Konversation can now optionally insert a remember line whenever a tab is
hidden,
  either by switching to a different tab or minimizing the window.
* Multiple consecutive remember lines will no longer be inserted.
* Remember lines can now also be inserted into the chat windows of connection
  status and DCC Chat tabs.
* The Colored Nicknames feature will now always assign the same color to the
same
   nickname.
* The number of backlog lines to show in the chat window is now configurable.
* The recognition of URLs in the chat window has been improved to cope better
  with URLs containing or being surrounded by parentheses and to exclude
trailing
  dots and commas.
* Channel links following mode characters or surrounded by interpunctuation are
  now properly recognized in the chat window.
* The context menus for URLs and channel links in the topic area now match the
  context menus in the chat window.
* Multiple ignore or unignore actions ordered at the same time will no longer be
  shown on separate lines in the chat window.
* The nickname context menus in the chat window, topic are and the nickname list
  will now show "Ignore", "Unignore" and "Add to Watched Nicknames" entries as
  applicable.
* A bug that could lead to the chat window nickname context menu actions ceasing
  to function after the targeted user left the channel has been fixed.
* The Server List dialog now allows connecting to a specific server in a network
  even when a connection to that network has been previously established. If
that
  connection is active, a dialog box will verify whether to disconnect from the
  current server and connect to the chosen one instead, otherwise the connection
  will simply be reestablished using the newly chosen server.
* The Quick Connect feature will now properly warn when the identity to be used
  in the connection attempt is not set up properly.
* The appearance and behavior of the warning about an incorrectly set-up
identity
  have been improved. A prior connection attempt will now be automatically
resumed
  after the identity settings have been corrected.
* Many of the pages in the Konversation preferences dialog have been redesigned
  and rewritten for improved consistency, reliability and clarity. The general
  layout of the dialog has been improved as well.
* The naming of certain actions in the Configure Shortcuts dialog has been
  improved to make them easier to recognize outside of their normal context in
  the application interface.
* Numerous improvements to keyboard navigation have been made.
* The nickname list now longer allows drag'n'drop of channel or user links from
  the chat window onto list entries, as a DCC transfer of those data sources
  cannot succeed.
* The preference to show or hide the real names of users in the nickname list
will
  now be applied immediately.
* The columns of the nickname list will no longer resize erratically when the
  preferences to show or hide real names and hostmasks are changed at runtime.
* A bug that could lead to nicknames being sent as messages when double-clicking
  a selection of multiple nicknames in the nickname list has been fixed.
* The placement of actions in the application menus has been improved.
* The shown/hidden state of the application menubar will now be remembered
across
  sessions. When the menubar is hidden, a menu action to show it again will now
be
  added to the chat window context menu.
* The "Close All Open Queries" menu action is now be disabled properly when
there
  are no open queries.
* A bug that could lead to the "Close All Open Queries" menu action failing to
  properly close all open queries has been fixed.
* A bug that could lead to an application crash when closing the tab after
choosing
  to ignore someone in a query has been fixed.
* The "Hide Nicklist" menu action will now be disabled properly when the tab
shown
  does not have a nickname list has been fixed.
* The actions in the "Insert" menu will now be disabled properly when the
current
  tab does not support them.
* The default double-click action in the "Watched Nicks Online" tab is now to
open
  a query to the respective contact.
* The sorting in the Watched Nicks Online tab has been improved: Offline users
are
  now always sorted at the bottom.
* Several bugs in the "Watched Nicknames Online" tab that could lead to
application
  crashes have been fixed.
* Several errors in the chat window status messages produced by the Watched
Nicks
  Online system have been corrected.
* A bug that could lead to the columns in the "Watched Nicks Online" list
resizing
  erratically has been fixed.
* A bug that could lead to the status bar not being cleared properly when the
last
  tab was closed or the application window lost focus after a link was
  launched from the chat window has been fixed.
* The display of temporary and static info texts in the status bar has been
  improved not to interfere with each other and provide more useful information.
  Also, the status bar lag info section is now updated more consistently to
avoid
  jumping around of the other status bar sections.
* A bug that could lead to a wrong nickname count being shown in the status bar
  of channel tabs has been fixed.
* Repeated triggering of the "Open URL Catcher" menu action will now properly
  show and hide the URL Catcher tab.
* The warning about pasting text with multiple lines can now be properly
disabled
  and reenabled from the Warning Dialogs preferences page.
* A bug that could lead to IRC bookmarks showing up as actions in the Configure
  Shortcuts dialog has been fixed.
* A bug that could lead to changes of the global KDE icon set not being applied
  to the tab bar close buttons immediately has been fixed.
* A bug that caused the application window to change its horizontal size after
  opening a Query to a user with a very long hostmask has been fixed. The DCC
  Chat and query tabs now use the same heading style as channel tabs.
* A bug that could lead to the topic and nickname list areas not keeping their
  size properly across tab switches has been fixed.
* A bug that could lead to certain types of KNotify event notifications not
  being executed properly when the system tray icon was enabled has been fixed.
* A bug that could lead to ampersands in network names being shown as
  underscores in the menu under certain circumstances has been fixed.
* A bug that could lead to an application crash when trying to access
  non-existing tabs via the Alt+number keyboard shortcuts has been fixed.
* A bug that could lead to the toolbar being hidden after it was edited has been
  fixed.
* A bug that could lead to the chat window context menu not being cancelled
  properly when clicking outside of it has been fixed.
* A bug that could lead to heavy disk seeking when the splitters separating
  the topic area and the nickname list from the chat window were moved has been
  fixed.
* The option to only show the application in the system tray at all times has
  been retired in favor of the standard KDE mechanic of minimizing into the
  system tray.

Commands
* The 'Now Playing' script invoked via the /media command alias now features
  support for XMMS and KSCD as well as improved support for untagged media files
  playing in Amarok. Support for non-ASCII encodings in file names and meta tags
  has been improved as well.
* New "/hop" and "/dehop" commands to grant or remove half-op status from a user
  have been added.
* A new "/devoice" command has been added.
* A new "/kickban" command to ban and immediately kick a user has been added. It
  supports the same parameters as the "/ban" command plus an additional "kickban
  reason" parameter.
* Commands to grant or remove status for users will now be applied to the user's
  own nickname when no nickname parameter is given.
* The "/unignore" command now supports the same simple nickname-only format as
  the "/ignore" command.
* If given no parameter, the "/away" command will now set the away state with
  the default away message. The "/back" and "/unaway" commands can be used to
  unset the away state.
* You may now use "%nick" as a placeholder for your own nickname in the auto-
  connect commands for a network.
* A bug that could lead to the auto-connect commands for a network not being
  executed correctly has been fixed.

DCC
* DCC file transfers now support file names containing spaces on send, receive
  and resume. The automatic replacement of spaces with underscores in file names
  can now be optionally disabled in the DCC preferences.
* File names are no longer being needlessly lower-cased during DCC transfers.
* The DCC file transfer and DCC Chat info messages shown in the chat window have
  been significantly improved to provide more useful information while being
less
  excessively verbose.
* DCC Chats will now be logged properly.
* It is now possible to select multiple files in the DCC Status tab.
* The default size of the buffer used in DCC transfers has been increased to
  8192kb for improved DCC performance.
* The DCC Status tab will no longer show a speed of '?' for completed, failed or
  aborted transfers.
* Bugs that could lead to the IP used for DCC transfers not being retrieved from
  the server correctly upon reconnect or in general on certain servers have been
  fixed.
* A bug that could lead to the progress bar of a transfer in the DCC Status tab
  being rendered at a wrong position has been fixed.
* A bug that could lead to Konversation's CPU usage spiking to 100% after a DCC
  Chat was closed from the remote side has been fixed.
* Several bugs that could lead to application crashes in DCC Chat tabs after the
  server connection from which the DCC Chat originated was closed have been
fixed.

Technology
* Konversation will now properly split up very long lines into multiple messages
  by calculating the length of the message preamble and the number of bytes of
the
  text payload. Encodings that use multiple or variable numbers of bytes per
  character are accounted for.
* The Disconnect and Reconnect menu actions and the respective input box
commands
  have been rewritten for increased reliability. Their state will now be updated
  properly, and they will quit the IRC server in the correct manner.
* A previous away state will now be recreated upon reconnection to a server.
* The Quick Connect feature will now no longer join the auto-join channels of
  the configured network that the quick connect server was recognized as being a
  part of.
* The "Konversation" and "KonvDCOPIdentity" DCOP objects have been renamed to
  "irc" and "identity", respectively. Several bugs in the DCOP API have been
  fixed, and deprecated interfaces removed.
* Processing of the user lists of newly joined channels has been rewritten to
  fix several bugs, including improved compatibility with the Bip IRC proxy and
  other servers.
* The lag calculation and timeout handling code has been rewritten for improved
  reliability and performance.
* Recognition of the half-op user status has been improved.
* The detection of text being typed into the input box to prevent focussing new
  tabs at inconvenient times has been improved to work correctly with non-ASCII
  characters.
* The handling of channel user limits in the Channel Settings dialog is now more
  reliable.
* Support for mode flags encountered on UnrealIRCD servers has been improved.
* Support for RPL_DATASTR on UnrealIRCD servers has been improved.
* A bug that could lead to the mode flags displayed for users not being updated
  properly after they were kicked from a channel has been fixed.
* A bug that could lead to iterating over a configured network's servers failing
  after a connection failure has been fixed.
* A bug that could lead to Konversation connecting to the wrong server in a
  network when choosing to connect to a specific server from the Server List
dialog
  has been fixed.
* A dialog will now ask the user for an additional nickname when all nicknames
  configured in the identity where tried unsuccessfully during a connection
  attempt. This replaces the previous behavior of repeatedly appending
underscores
  to the last nickname, which eventually ran into the nickname length limit on
the
  server.
* A bug that could lead to unnecessary nick changes immediately after connecting
  to a server has been fixed.
* A bug that could lead to Konversation trying to auto-identify multiple times
  upon connect on certain servers has been fixed.
* A bug that could lead to Konversation not picking up on users leaving a
  channel without providing a part or quit message on UnrealIRCD servers has
been
  fixed.
* Changes to the list of auto-join channels for a network will now be applied
  immediately.
* The auto-reconnect preference will now be properly applied at runtime.
* Konversation will no longer enable IDENTIFY-MSG mode on servers that support
it,
  but continues to be able to process messages with IDENTIFY-MSG prefixes in
case
  an involved IRC proxy chose to enable IDENTIFY-MSG mode.
* The broken default for the Custom Web Browser preference has been fixed.
* Konversation will no longer allow Konsole tabs to be opened in KDE
  environments in which the use of terminals is prohibited by the KIOSK
framework.
* A bug that could lead to an application crash when a Konsole tab was closed
  from the Konsole component's context menu has been fixed.
* A bug that could lead to an application crash when a channel was joined while
  the application window was hidden has been fixed.

-------------------------------------------------------------------------------

Changes from 0.18 to 0.19
We are extremely pleased to announce the immediate release of Konversation 0.19.
The focus
of this release is on extending and improving upon established functionality.
Most notable
in this regard are significantly improved management of IRC networks and servers
all across
the application, a redesigned tab bar and better support for common IRC
commands. A long
list of further additions and improvements has us confident of this being the
best version
of Konversation yet. Enjoy!


User Interface
* The Server List dialog has been rewritten to allow direct manipulation of a
network's
  servers and features more intelligent sorting behavior. Reordering networks
via drag
  and drop is now possible. A behavioral audit of all actions in the dialog
resulted in
  numerous improvements.
* A redesigned tab bar sports highly configurable text- and LED icon-based
notifications
  as well as more intelligent scaling behavior under space-critical conditions.
* Tabs are now intelligently grouped around their respective connection status
tab.
* Status tab labels now display the user-configured network name where
appropriate.
* The Find Text dialog has been replaced by a search bar that no longer
interrupts your
  workflow.
* Channel links in the chat area now feature a context menu for quick access to
common
  actions.
* Usage of the status bar has been extended to show context-relevant information
as the
  cursor passes over various interface elements. The lag information segment is
now
  only shown where appropriate.
* A channel's topic can now be cleared by setting an empty text in the Channel
Options
  dialog.
* The Channel Options dialog has been redesigned to allow editing the current
topic
  while browsing a channel's topic history.
* The Watched Nicknames interface has been fully integrated with network
management.
* Pressing the Arrow Down key in the input line now preserves any input entered
by
  adding it to the history.
* Commands may now be sent as regular messages by typing Ctrl+Enter.
* The multi-line paste editor window now highlights whitespace characters and
prepends
  the existing content of the input line.
* The Colored Nicknames feature has been improved to better handle nickname
changes and
  immediately apply any changes to the color palette.
* Some previously not configurable notification events have been made
configurable.
* Users leaving a server will now be announced in any query you have open with
them.
* Query tab labels will now update when a user you have a query open with
changes
  his/her name.
* The DCC file transfer dialogs have seen a number of cosmetic improvements.
Among other
  things, in the event of a file being renamed on save, the local file name is
now shown
  across the application.
* Various status and error messages have been rewritten for improved consistency
and
  clarity.
* The KDE standard text font will now be correctly set as initial default chat
font.
* It is now possible to skip displaying a server's MOTD on connect.
* If the application is set to display a server's MOTD in a fixed-width font and
the
  previously configured default chat font is already a fixed-width font, the
chat font
  will now be used rather than the global KDE default fixed-width font.
* The state of the automatic spell checking functionality is now remembered
across
  sessions and set for all tabs.
* Networks no longer lose their channel history when their settings are changed.
* The Server List dialog will no longer close when a connection attempt fails
due to
  the identity not being set up correctly.
* After changing your nickname using the optional drop-down menu to the left of
the
  input line, focus will now be returned to the input line.
* The configuration dialog has been rewritten to correctly update the button
state of
  its primary actions and improve consistency with the KDE style guide.
* The vertical and horizontal splitters in channel tabs now behave better when
the
  application window is resized and correctly retain their positions across
sessions.
* The OSD preview in the OSD settings page is now always shown correctly.
* The OSD will no longer be shown when the desktop is locked.
* A bug that prevented copying text from the chat area under certain
circumstances has
  been fixed.
* Keyboard search in the channel nickname list has been fixed.
* A number of issues affecting nickname context menus in the chat area have been
fixed.
* A bug leading to a wrong operator count in the status bar has been fixed.
* It is no longer possible to add nameless networks or hostless servers in the
respon-
  sible management dialogs.
* Bugs that led to parts of the interface not reacting to KDE color scheme
changes have
  been fixed.
* The status bar now correctly reacts to KDE font size changes.
* A bug that led to the application window resizing on overly long status bar
contents
  has been fixed.
* A bug that led to multiple remember lines being inserted into the frontmost
tab when
  away mode was activated has been fixed.
* A bug that led to wrong link addresses being opened from the chat area has
been fixed.
* Bugs that led to wrong URLs being produced by dragging a link from the chat
area to
  the input line have been fixed.
* Channel names are now better recognized as such by the chat area.


Bookmarking
* Bookmark titles now default to the channel name.
* Bookmarks now store the network name rather than the server address where
available.
* Bookmarks now support IPv6 addresses.


Commands
* The '/server' command now recognizes a greater variety of address notations
including
  network names.
* The '/names' command now always succeeds in returning the user list of a
channel.
* The '/topic' command now always succeeds in returning the topic of a channel.
* A '/dns' command has been added that facilitates resolving the host name of a
user on
  the server as well as generic host names. Reverse resolve is supported on KDE
3.5.1+.
* An '/unignore' command has been added.
* A '/disconnect' command has been added.
* A '/reconnect' command has been added that disconnects and then reconnects the
respec-
  tive server.
* A '/setkey' command has been added to set the Blowfish encryption/decryption
key for
  the respective context.
* The '/list' command now correctly opens the Channel List tab.
* A bug in parsing the arguments of the '/join' command has been fixed.
* Usage information and error reporting for various commands has been rewritten
for
  improved consistency and clarity.
* A bug that led to a 'clear' command being sent to the server when using the
'/clear'
  command to clear the contents of a query tab has been fixed.


Miscellaneous
* The 'media' script has been rewritten and now features improved compatibility
with
  common character sets, greatly enhanced support for the Kaffeine media player
and
  newly added support for the Yammi media player.
* The 'sysinfo' script has been rewritten to produce more concise output and
better
  handle a variety of storage scenarios.
* The convenience feature expanding [[term]] into a Wikipedia link is now
localizable
  and generates a link that performs an intelligent lookup for the term in the
Wiki-
  pedia rather than assume a correct direct link.


Technology
* Konversation now depends on KDE 3.4+.
* The preferences storage system has been rewritten to facilitate easier
maintenance
  and faster development in future release cycles.
* Localized support for a long list of IRC protocol primitives has been added.
* The application will now correctly iterate over a network's servers on
successive
  failed connection attempts.
* When the '/server' command or the Quick Connect dialog is used to connect to a
  server that has previously been added to a network in the Server List dialog,
it
  will be recognized as being part of the network and the respective identity
  settings will be applied.
* The automated reply to a highlight event can now reference the groups of the
matched
  pattern by the identifiers %1-%9 and the entire match by the identifier %0.
* The CABAP IDENTIFY-MSG technology is now supported.
* Compatibility with the Unreal IRC server has been improved.
* Initial support for Blowfish encryption (compatible with mIRCryption and FiSH)
has
  been added. Note that Diffie-Hellman key exchange (DHX) is not yet supported.
* The Watched Nicknames reporting has been made more reliable.
* Socket handling in the DCC file transfer feature has been improved.
* Alpha-blending of icons in the channel nickname list has been fixed.
* Support for the iso-2022-jp encoding has been enhanced.
* The custom web browser feature will now automatically append the URL as a
parameter
  to the specified command when the %u identifier is missing.
* Channel modes are now correctly cleared and updated in the internal
representation
  on rejoin.
* A bug that led to an infinite loop during a connection attempt when all
nicknames
  configured in the identity were in use has been fixed.
* A bug that could lead to a crash when opening the log file for a closed
connection has
  been fixed.

-------------------------------------------------------------------------------

Changes from 0.17 to 0.18
- All nicks were blue when colored nicks are disabled with some setups
- /cycle now works as expected
- /gauge script was not working correctly when given a bigger than 100 argument
- /mail script has been added
- Button to invoke Regular Expression Editor (if installed) in Settings ->
Highlight.
- Complete command line argument system for connection
- An option to disable clickable nicks . Add ClickableNicks=false to
konversationrc to disable it.
- Fixed a big memory leak in message processing
- Nicklist slider now correctly resizes in all channels when its resized and
correctly restores on startup
- [[foo]] is now a link to http://en.wikipedia.org/wiki/foo . We will expand
this to local wikipedia's in a later release [Update: Now fixed in 0.19]


Changes from 0.16 to 0.17
- Add an option to hide realnames in nicklist
- Show away users as disabled ala Xchat
- Remove sort by away status
- Fix whois replies for normal users on safe channels ( IRCNet alike )
- Fix whois replies from ircd-hybrid ( Efnet alike )
- Better handling of quiet bans ( especially Freenode )
- KDE color scheme is now honered in topic widget
- Enable clickable nicks even if colored nicks are off
- Per identity pre-shell command support with a GUI
- Bookmarking support
- Detect Japanese encoding correctly while trying to auto-detect Unicode

Changes from 0.15 to 0.16
- Dropping URLs onto nick on nicklist or onto query initiates DCC send
- You can now do SSL connections from Quick Connect Dialog
- Nicklist Icon Themes
- New topic widget
- Added a channel dialog
- Made the nickname box optional
- Fix DCC resume when its set to auto-accept
- Calculate DCC CPS more accurately
- Colored nicks support
- Added dcop functions to set away and added alt+a shortcut to toggle away
- Clicking nicks in channel text will now open a query and similarly,
  clicking #foo will now join channel #foo
- Nicks in channel view now have a context menu as in nicklistview
- Tab at begining of line inserts last completed nick
- A media script added to replace amarok,juk,noatun,kaffeine scripts.
  Use /media instead of using /amarok,/juk etc.
- Links can now be dragged & dropped from channels
- Midde clicking urls now opens them in new tab in konqueror ( if konqueror is
used for links )
- Improved unicode detection
- Fix unicode detection for strings containing color markup
- /omsg,/onotice support
- Added an option to use an IPv4 interface for IPv6 dcc sends
- A new /google script added to search Google using Google SOAP api
- Redesigned settings page
- A new application icon
- Lots of optimizations all around

Changes from 0.14 to 0.15
- Ported socket code to KNetwork. Weird connection problems should be gone now
- Get default username/ident information from system
- Support for bouncer prefixes in nick completion
- Dcc port range support
- Scripts now works with /script or /exec script
- Improved bidi support.
- Cleaned up settings dialog
- Added an option how to get own IP for DCC send/chat
- "Open Watched Nicks Online panel on startup" option
- Support encoding settings per channel
- SSL Support
- KIO-fied local I/O on DCC send/receive
- OSD Positioning Support
- New network based server settings
- Added an option to stay in systray all the time
- Full irc:/ url support (channel name & password now supported in url)
- /charset support
- auto /WHO support
- display away status of nicks in nick list

Changes from 0.13 to 0.14
- Added irc "pseudo" command /prefs for changing settings without settings
dialog.
- Measure away time and make it available via placeholder (%t)
- (Very much) Improved OSD.
- New application icons by luciash d' being <luci@sh.ground.cz>. Thanks!
- Added /server command for connecting to a server.
- After the connection is lost and the old nickname is still in use,
  the nickbutton in the channelwindows is updated to the new nick.
- Now you can read utf8 encoded messages even if your locale is not unicode
- "Do not show this dialog again" preferences now works correctly
- Added an "Insert Remember Line" feature.
  The user can mark the position in the channel where he stopped
  reading(because he is away for a short time).
  When he comes back, he can scroll back to this mark and read
  what he missed.
- Added the possibility to execute commands on server connection(for
  authentication and such things). Can be configured in the "Edit Server"
  dialog.
- Added further timestamps for am/pm (BR 79612)
- Added QuickConnect dialog by Michael Goettsche. (Thanks once again)
- Properly receive a logout/shutdown request and terminate konversation,
  instead of minimizing to the systray.
- Make OSD switchable on/off via DCOP. Thanks to Michael Goettsche! (BR 75870)
- Dates can now be shown, next to the timestamp. Patch by Michael Goettsche
  (BR 82785) (thanks!)
- Added DCC auto-resume feature by Michael Goettsche (BR 81740) (thanks!)
- Added systray notification
- Added shell like nick completion mode (aka uga mode)
- Implemented a cleaner way of handling tab shortcuts
- Implemented DCC Chat
- Hilight mailto: links
- Topic line can now be hidden
- Added an away nickname
- Added /aaway, /ame and /amsg
- Added "Open URL" context menu to channel list entries
- Implemented slower / faster blinking of tabs for more / less important events
- Less important events like Join, Part and Nickchanges can now be hidden
- Custom CTCP Version Reply Support
- Added a shortcut to close all open queries
- Added a patch by Thomas Nagy to cycle tabs with mouse scroll wheel (thanks!)
- Added logfile reader
- Added patch by Gary Cramblitt to enhance DCC panel (thanks!)
- Added patch by Gary Cramblitt to select custom web browser command (thanks!)
- When the server goes offline, now all associated tabs get crossed out
- Added a multi line pasting editor
- Nicks Online is now a tabbed panel, rather than separate window.
- Added sound support to the highlight list
- Added regular expression support to the highlight list^
- Follow the style guide when the tray icon is enabled by minimizing to tray
when
  the close button is clicked.
- Auto text feature on highlight events
- DCC resume offers to rename a transfer now
- Added patch by Ruud Nabben to enable hiding of IRC colors (thanks!)
- Various small fixes and additions

Changes from 0.12 to 0.13
- Added an option to hide hostmasks in channel nick lists
- Autojoin on invite with user interaction implemented
- Added URL catcher interface
- Added user interface for "don't show again" dialogs
- Added slovenian translation by Barko (thanks!)
- Added korean translation by Hye-Shik Chang (thanks!)
- Added option to place tabs on top
- Color configuration is now in preferences dialog
- Quick buttons configuration is now in preferences dialog
- Notify list is now in preferences dialog
- Option for a background image added
- Added /quote command for raw server messages
- Added Copy URL into clipboard for URL catcher
- Added option for reconnect on too long lag
- Added "Server list" menu entry to "File" menu
- Applied a patch by Peter Simonsson (thanks!)
- Patch added Color picker, IRC colors and KNotify events
- Added support for command aliases
- Encodings are now on per-identity basis
- Added indicator to show own away state
- Added system tray icon patch by Frauke Oster (thanks!)
- Channel list update is now more CPU friendly
- Tell the user why the channel list could not be opened
- Channel list now sorts correctly when number column is clicked
- Applied a patch by Christian Muehlhaeuser to enable bigger mode changes
(thanks)
- Applied a patch by Christian Muehlhaeuser to right-align close widgets
(thanks)
- Info button on dcc panel now works
- Added /unban command
- Applied a patch by Christian Muehlhaeuser for OSD functions (thanks)
- Applied a patch by Sascha Cunz for extended user modes beyond @ and + (thanks)
- Applied a patch by Steve Wollkind to close visible tab via shortcut (thanks)

Changes from 0.11 to 0.12
- Now handles multi server mode in one single window
- Fixed the wrong Ops counter
- Added /notify command and respective dcop calls
- Added support for /oper command
- Implemented /ban command and menu items
- Added shortcut (F3) for search dialog
- History does not get cleared on cursor up/down anymore
- Added context menu to copy URLs immediately
- Added paragraph spacing
- Added hostmask column to nick list
- Implemented background hostmask scanning
- Recognises now who set the first topic
- Added nickname sorting options
- Sorting now has up/down arrows
- Added channel list panel
- Added russian translation by Stanislav Karchebny (thanks!)
- Applied some patches by Stanislav Karchebny
- Added PgUp/PgDown support to Channels, Queries and Status views
- Added rename button to identity page to overcome QComboBox limitations
- Tabs now blink in the last highlight color to indicate important text
- Tabs don't get to front anymore while the user is typing in an input line
- Added shortcut editor dialog
- Added konsole panel (thanks to Mickael Marchand)

Changes from 0.10 to 0.11
- Added a patch by Bart Verwilst to provide automatic service registration
(thanks!)
- Added "Hide Menu" function
- Improved server connection code to stop konversation freezes at startup
- Server lag calculation after reconnect fixed
- Implemented own async lookup class to throw out broken QDns
- Added prelimnary application icons
- Send File in dcc panel now works
- Added Send File context menu item in text views
- Added dialog for Resume / Overwrite DCC Get files
- Added large paste warning dialog
- Close Buttons on tabs are now an option
- Added context menu on tabs with close item
- Added ALT+1 - ALT+9 for switching tabs
- Applied a big patch by Alex Zepeda. Thanks!
- First working DCOP implementation
- Implemented a simple search dialog
- Added a raw log pane

Changes from 0.9 to 0.10
- Font encodings are now set via KCharsets
- Implemented different identities
- Added double click actions to nick list and notify list
- Added support for ASCII-BEL
- Added custom spacing and margin
- Added close buttons for the tabs
- Redesign of the color configuration dialog
- Switched to kapp->config() to properly remember dialog status
- Color code parsing now works with QRegExp
- CTCP-Ping now works
- Removed files that are no longer needed
- Updated German translation

Changes from 0.8 to 0.9
- Added strikeout support (untested yet)
- Added Swedish translation, done by Karolina Lindqvist (thanks!)
- Added optional timestamps to chat windows
- Quick Buttons and Channel Mode Buttons can now be hidden
- Added support for multi channel joins
- Added #include "sourcefile.moc" to all Q_OBJECTS to speed up compiles
- Added support for autoconnect to server
- Inserted a QSplitter between channel text and nick list
- Added support for background colors
- Reduced flickering on blinking tabs
- Added experimental support for foreign language characters
- Added ignore list functionality
- Added away / unaway messages
- DCC folder can now be selected vial GUI
- Applied a patch by Barak Bloch to fix foreign character set behaviour
(thanks!)
- Updated German translation

Changes from 0.7 to 0.8:
- DCCs can now be opened (started) using the 'open' button
- DCCs can now be aborted using the 'abort' button
- Added support for /users reply
- Added support for /invite and 341 reply
- Added support for 401 error reply
- Added /smsg for "silent messages"
- Text and Nicklist-Fonts can now be selected via GUI
- Changed server ping response again to make dalnet ircd happy
- Fixed nicklist sorting in channels
- Switched to kdevelop 2.1.4 to hopefully fix some compile problems
- Made Notices appear a bit different
- DCC recipient list now gets sorted
- Made text widget not scroll when scroll bar isn't completely down
- Parsed WHOIS messages into human readable form
- Pasting multiline text into input lines now behaves as expected
- Hilights now honor the sending nick, too (patch by Suran. Thanks!)
- You can now hilight all your own lines independently
- Fixed the problem in the appearance dialog with font names
- Added DCC error dialogs
- Quit/Nickchange/Kicks are now only reported in channels where the nick
actually is in
- Fixed bug with lockups on defective logfiles
- Added support for EUR currency symbol
- Added keyboard handling to navigate between pages
- Code cleanup in nick list
- Added first support for custom colors in nick list
- Added application dsescription for the 'About' dialog
- Major restructuring of the server status panel
