4 years agoUse 'override' where appropriate
Manuel Nickschas [Tue, 1 Mar 2016 23:15:08 +0000 (00:15 +0100)]
Use 'override' where appropriate

4 years agoFix inconsistent use of override in NickListWidget
Manuel Nickschas [Tue, 1 Mar 2016 19:01:14 +0000 (20:01 +0100)]
Fix inconsistent use of override in NickListWidget

Clang warns about this.

4 years agoSet CMake policy for visibility
Manuel Nickschas [Tue, 1 Mar 2016 18:55:53 +0000 (19:55 +0100)]
Set CMake policy for visibility

CMake 3.3+ changed behavior for handling visibility for target types
other than dynamic libraries. This commit adds a cmake_policy call
to allow the new behavior, removing a dev warning in the process.

4 years agoMerge pull request #189 from phuzion/master
Daniel Albers [Mon, 29 Feb 2016 19:44:45 +0000 (20:44 +0100)]
Merge pull request #189 from phuzion/master

Minor string cleanup

4 years agoMinor string cleanup 189/head
phuzion [Mon, 29 Feb 2016 17:51:10 +0000 (17:51 +0000)]
Minor string cleanup

4 years agoFix (meta) type handling in existing DCC code
Manuel Nickschas [Sun, 28 Feb 2016 23:23:25 +0000 (00:23 +0100)]
Fix (meta) type handling in existing DCC code

Obviously, this code was never tested with a non-monolithic build,
and Qt didn't know how to handle our fancy enums.

Also, enum classes are now a thing since C++11, and we should use
them. Unfortunately, they have the same annoyances as nested classes
with Qt4-style signal/slot connections...

4 years agoRemove weird convenience accessors
Manuel Nickschas [Sun, 28 Feb 2016 21:11:05 +0000 (22:11 +0100)]
Remove weird convenience accessors

No clue why I thought this would be a good idea...

4 years agoMerge pull request #180 from digitalcircuit/ircv3-expanded-caps
Manuel Nickschas [Sun, 28 Feb 2016 19:29:29 +0000 (20:29 +0100)]
Merge pull request #180 from digitalcircuit/ircv3-expanded-caps

Implement IRCv3.2 CAP LS, away-notify and friends

4 years agoMerge pull request #136 from sandsmark/sonnet
Manuel Nickschas [Sun, 28 Feb 2016 17:58:03 +0000 (18:58 +0100)]
Merge pull request #136 from sandsmark/sonnet

Add spell-checking support via the Sonnet framework

4 years agoSend extra modes via non-breaking protocol change 180/head
Shane Synan [Fri, 19 Feb 2016 09:17:26 +0000 (03:17 -0600)]
Send extra modes via non-breaking protocol change

Send extra user mode updates in backwards-compatible manner.

When multiple modes are received in IrcChannel::joinIrcUsers, call
addUserMode one time for each, then call ircuser->addUserModes() with
the new modes.  Perhaps less efficient, but avoids breaking protocol.

Reduce excess network traffic by only syncing IrcUser::setUserModes
and IrcUser::addUserModes when changes are made.

Preliminary test results on Ubuntu (more testing always welcome!)
* New core, new client - works fine (as one might hope)
* New core, old client - client prints warning to console but works
(IrcChannel modes might internally get out of sync, but visible
 channel list updates with mode changes, multiple modes, etc)
* New core, Quasseldroid alpha/NG - works fine
* Old core, new client - works fine

If desired, the warning and other potential risks could be avoided
entirely by implementing a new Feature flag and only sending the
additional mode information to clients that request it.  However,
this seemed excessive to avoid what in limited testing was only a
warning in the client console log, normally hidden away from sight.

4 years agoAdd support for multi-prefix
Shane Synan [Fri, 19 Feb 2016 08:25:10 +0000 (02:25 -0600)]
Add support for multi-prefix

Add support for multi-prefix to get a full list of modes in NAMES and
WHO replies, updating ircuser objects as appropriate.  This enables
seeing if an operator (+o) also has voice (+v), etc.  In the future,
Quassel could show this information in a smart, useful manner.

This commit limits synced modes to one for 'NAMES' replies to avoid a
warning in older clients.  The next commit will address this.

See http://ircv3.net/specs/extensions/multi-prefix-3.1.html

4 years agoAdd support for userhost-in-names capability
Shane Synan [Wed, 17 Feb 2016 19:51:23 +0000 (13:51 -0600)]
Add support for userhost-in-names capability

Add support for userhost-in-names, which, if enabled, allows getting
the user/hostname information of a channel without using WHO polling.

See http://ircv3.net/specs/extensions/userhost-in-names-3.2.html

4 years agoAdd support for account-notify, extended-join
Shane Synan [Wed, 17 Feb 2016 19:49:48 +0000 (13:49 -0600)]
Add support for account-notify, extended-join

Add support for account-notify to track account changes and
extended-join to get account information on join.  For now, this only
updates user/hostname information.  In the future it will track
logged in accounts in ircuser, pending a new feature flag and
inclusion of WHOX support.

See http://ircv3.net/specs/extensions/account-notify-3.1.html
And http://ircv3.net/specs/extensions/extended-join-3.1.html

4 years agoAdd more sources of nick!user@host updates
Shane Synan [Wed, 17 Feb 2016 20:03:26 +0000 (14:03 -0600)]
Add more sources of nick!user@host updates

Update IrcUser user and hostname information from more sources.  This
is more important now since away-notify disables automatic WHO
polling, so user@host information won't be updated if the server
doesn't generate fake join/quit messages for /chghost and friends.

In the future, IRCv3 capability chghost will remove the need for this
once all servers support it.  (In only a few decades, right..?)
For chghost, see http://ircv3.net/specs/extensions/chghost-3.2.html

4 years agoAdd support for away-notify capability
Shane Synan [Wed, 17 Feb 2016 20:03:01 +0000 (14:03 -0600)]
Add support for away-notify capability

Add support for away-notify. As nicks change status, update ircuser
objects with new away status and messages, no /whois needed.

Modify automatic WHO polling when away-notify is active to poll all
channels ONCE regardless of polling settings and nick-limit.  This
captures away state for existing nicks in the channel.  Channels
joined after this will queue a separate one-off WHO poll.

Queue one-time WHO of nicks who join a channel when away-notify is
active as some servers won't send an :away message in this situation.
To support this, autoWhoQueue can now check specific users.

See http://ircv3.net/specs/extensions/away-notify-3.1.html

4 years agoImplement IRCv3.2 capability negotiation
Shane Synan [Wed, 17 Feb 2016 20:00:43 +0000 (14:00 -0600)]
Implement IRCv3.2 capability negotiation

Always send CAP LS, similar to ZNC and HexChat.  IrcEventCap checks
returned capabilities, queuing up desired ones until all replies
finish, then requests each capability one-by-one.  This prevents an
error with one capability from blocking all of them.

See http://ircv3.net/specs/core/capability-negotiation-3.1.html
And http://ircv3.net/specs/core/capability-negotiation-3.2.html

Modify SASL authentication to only happen if present in capability
list.  If it's not supported, log an error in the status buffer and
continue connecting anyways.

See http://ircv3.net/specs/extensions/sasl-3.1.html
And http://ircv3.net/specs/extensions/sasl-3.2.html

4 years agoFix typo in translatable string.
Daniel Albers [Thu, 11 Feb 2016 09:15:37 +0000 (10:15 +0100)]
Fix typo in translatable string.

Thanks to yurchor for flagging.

4 years agoAdd catalog update to tx-sync.sh.
Daniel Albers [Thu, 11 Feb 2016 00:17:08 +0000 (01:17 +0100)]
Add catalog update to tx-sync.sh.

Transifex now offers automatic fetching of source files. Let tx-sync.sh
regenerate and commit quassel.pot automatically to make use of that.

4 years agoUpdate translations from Transifex
Daniel Albers [Wed, 25 Mar 2015 04:00:24 +0000 (05:00 +0100)]
Update translations from Transifex

  26449 translated messages

Many thanks to:
 - cs: Jaroslav Lichtblau <dragonlord@seznam.cz>
 - de: Sebastian Meyer <transifex@netzvieh.de>
 - es: Javier Llorente <javier@opensuse.org>
 - fi: Lasse Liehu <larso@gmx.com>
 - fr: Vlavv <vlavv2@gmail.com>
 - hi: Raju Devidas Vindane <rajuvindane@gmail.com>
 - pa: A S Alam <apreet.alam@gmail.com>
 - pt_BR: André Marcelo Alvarenga <alvarenga@kde.org>
 - sl: Andrej Mernik <andrejm@ubuntu.si>
 - tr: Demiray Muhterem <mdemiray@msn.com>, Volkan Gezer <volkangezer@gmail.com>
 - uk: Yuri Chornoivan <yurchor@ukr.net>

4 years agoupdate-pot.sh: Fix patch call
Daniel Albers [Tue, 7 Apr 2015 19:01:52 +0000 (21:01 +0200)]
update-pot.sh: Fix patch call

4 years agopull-from-transifex.sh: Drop -e from git commit
Daniel Albers [Tue, 31 Mar 2015 18:24:51 +0000 (20:24 +0200)]
pull-from-transifex.sh: Drop -e from git commit

4 years agoMake update-pot.sh $PWD independent.
Daniel Albers [Mon, 30 Mar 2015 16:32:51 +0000 (18:32 +0200)]
Make update-pot.sh $PWD independent.

4 years agoDon't prefix the nick with a colon while connecting to a server
Manuel Nickschas [Wed, 10 Feb 2016 18:58:52 +0000 (19:58 +0100)]
Don't prefix the nick with a colon while connecting to a server

For the NICK command during the initial connection handshake, we
always prefixed the parameter with a colon. While this is not an RFC
violation, it is unnecessary as nicks can't contain spaces. Worse, it
confuses some obscure ircds...

4 years agoUpdate ChangeLog
Manuel Nickschas [Tue, 9 Feb 2016 20:59:55 +0000 (21:59 +0100)]
Update ChangeLog

4 years agoSupport new QtInfoMsg message type
Manuel Nickschas [Mon, 8 Feb 2016 21:37:57 +0000 (22:37 +0100)]
Support new QtInfoMsg message type

Qt 5.5 introduced QtInfoMsg. This commit adds support for this
in our logger, thus removing a warning.

4 years agoUpdate AboutData
Manuel Nickschas [Mon, 8 Feb 2016 21:21:43 +0000 (22:21 +0100)]
Update AboutData

4 years agoMerge pull request #178 from TheOneRing/fix_snore_crash
Manuel Nickschas [Mon, 8 Feb 2016 20:34:48 +0000 (21:34 +0100)]
Merge pull request #178 from TheOneRing/fix_snore_crash

Fix possible crash, mostly occurring on notification flood.

4 years agoMerge pull request #177 from justjanne/patch-1
Manuel Nickschas [Mon, 8 Feb 2016 20:34:17 +0000 (21:34 +0100)]
Merge pull request #177 from justjanne/patch-1

Fixed a tiny bug in aliasmanager

4 years agoMerge pull request #175 from ayonix/ssl-fix
Manuel Nickschas [Mon, 8 Feb 2016 20:33:53 +0000 (21:33 +0100)]
Merge pull request #175 from ayonix/ssl-fix

Fix the SSL check on systems that don't use OpenSSL

4 years agoDon't allow newlines in buffer names
Manuel Nickschas [Mon, 8 Feb 2016 20:29:14 +0000 (21:29 +0100)]
Don't allow newlines in buffer names

Since it is possible to enter newlines when renaming a buffer via
the GUI, we need to have a sanity check that cuts off the additional

Fixes #1389.

4 years agoFix issues with buffer selection and filtered views
Manuel Nickschas [Mon, 8 Feb 2016 20:04:03 +0000 (21:04 +0100)]
Fix issues with buffer selection and filtered views

Whenever the current buffer changed, filtered BufferViews need to
check if the previously selected item should be hidden (e.g. due to
activity settings). The existing code for this never really worked
due to the currentChanged() signal emission being wonky (it would
sometimes be eaten for some reason), and fully stopped working in
Qt5 since it connected to a private, internal slot of QSFPM.

This commit removes the old code and replaces it by faking the
emission of a dataChanged() signal from the base model whenever
the current buffer changes.

4 years agoFix build with Qt4
Manuel Nickschas [Thu, 4 Feb 2016 21:40:49 +0000 (22:40 +0100)]
Fix build with Qt4

Qt4 can't serialize lists of things out of the box, in this case
lists of shortcuts. Rather than declaring a new metatype, we just
go back to storing a single shortcut for Qt4 - it's all we internally
support anyway.

4 years agoDon't serialize PeerPtr value in RPC connections
Manuel Nickschas [Wed, 3 Feb 2016 23:10:08 +0000 (00:10 +0100)]
Don't serialize PeerPtr value in RPC connections

PeerPtr is used in RPC signatures for enabling receivers to send replies
to a particular peer rather than broadcast to all connected ones.
To enable this, the SignalProxy transparently replaces the bogus value
received over the network with the actual address of the local Peer

Because the actual value isn't needed on the wire, it should be
serialized as null. This also prevents the accidental use of a bogus
remote pointer address.

4 years agoFix shortcut handling with KDE Frameworks
Manuel Nickschas [Wed, 3 Feb 2016 21:50:02 +0000 (22:50 +0100)]
Fix shortcut handling with KDE Frameworks

KDE Frameworks slightly altered the way it handles default shortcuts
for actions; the property name was changed to support lists of
shortcuts. This issue lead to default shortcuts not being active for
Quassel built against KDE Frameworks.

4 years agoFix possible crash, mostly occurring on notification flood. 178/head
Hannah von Reth [Wed, 3 Feb 2016 09:37:01 +0000 (10:37 +0100)]
Fix possible crash, mostly occurring on notification flood.

4 years agoFixed a tiny bug in aliasmanager 177/head
Janne Koschinski [Tue, 2 Feb 2016 16:50:32 +0000 (17:50 +0100)]
Fixed a tiny bug in aliasmanager

The `/wait` check is to test if the first command is a `/wait`, which would operate synchronously.
But `/wait` matches also on other commands – so, if, for example, we’d have a command like `/waiting`, it would be matched.
Instead we actually want to match on `/wait ` (with space at the end).

4 years agoMerge pull request #173 from TheOneRing/snor_next
Manuel Nickschas [Sun, 31 Jan 2016 22:05:25 +0000 (23:05 +0100)]
Merge pull request #173 from TheOneRing/snor_next

Fix build with snorenotify 0.7

4 years agoMerge pull request #172 from TheOneRing/fix_msvcx64
Manuel Nickschas [Sun, 31 Jan 2016 22:05:06 +0000 (23:05 +0100)]
Merge pull request #172 from TheOneRing/fix_msvcx64

Fix msvc x64 build and openssl for msc.

4 years agoFix the SSL check on systems that don't use OpenSSL 175/head
Ayonix [Mon, 18 Jan 2016 21:57:35 +0000 (22:57 +0100)]
Fix the SSL check on systems that don't use OpenSSL

4 years agoFix build with snorenotify 0.7 173/head
Hannah von Reth [Thu, 3 Dec 2015 14:49:23 +0000 (15:49 +0100)]
Fix build with snorenotify 0.7

4 years agoFix msvc x64 build and openssl for msc. 172/head
Hannah von Reth [Tue, 12 Jan 2016 14:53:57 +0000 (15:53 +0100)]
Fix msvc x64 build and openssl for msc.

Parts of the changes are in the external script.

4 years agoMerge pull request #167 from esainane/patch-1
Manuel Nickschas [Sat, 2 Jan 2016 19:47:06 +0000 (20:47 +0100)]
Merge pull request #167 from esainane/patch-1

signalproxy: Correct signal method name warnings

4 years agoMerge pull request #166 from mamarley/hashversionmigrationfix
Manuel Nickschas [Sat, 2 Jan 2016 15:35:01 +0000 (16:35 +0100)]
Merge pull request #166 from mamarley/hashversionmigrationfix

Fix migration of hashversion

4 years agoMerge pull request #143 from TheOneRing/windows-ci
Daniel Albers [Sat, 19 Dec 2015 11:08:16 +0000 (12:08 +0100)]
Merge pull request #143 from TheOneRing/windows-ci

This adds CI for Windows builds. The executables can be found at

4 years agoOnly link to ZLIB if it was found.
Hannah von Reth [Thu, 10 Dec 2015 15:54:26 +0000 (16:54 +0100)]
Only link to ZLIB if it was found.

4 years agoAdd support for Appvayor Windows ci.
Patrick von Reth [Tue, 4 Aug 2015 12:12:13 +0000 (14:12 +0200)]
Add support for Appvayor Windows ci.

Add build scripts for appveyor.com ci for mingw and msvc 2013.
The ci automatically creates a Nsis installer and a 7zip package.

4 years agosignalproxy: Correct signal method name warnings 167/head
esainane [Sat, 12 Dec 2015 05:56:17 +0000 (18:56 +1300)]
signalproxy: Correct signal method name warnings

_id was used to index SignalProxy::SignalRelay::_slots.
signal.signalId is used to index caller->metaObject()->method.

This can be verified by changing eg. displayMsg to use a type that is
compatible with Message but won't work with QMetaType::type, like Message&

4 years agoFix migration of hashversion 166/head
Michael Marley [Tue, 1 Dec 2015 00:33:37 +0000 (19:33 -0500)]
Fix migration of hashversion

Previously, hashversion was not migrated.  This would cause the
value to default to 0, causing login failures for existing users.

4 years agoMerge pull request #163 from esainane/fix-ssl-identd-race
Daniel Albers [Sun, 29 Nov 2015 20:52:45 +0000 (21:52 +0100)]
Merge pull request #163 from esainane/fix-ssl-identd-race

Fix ident race condition

4 years agoFix ident race condition 163/head
Sai Nane [Sat, 28 Nov 2015 23:43:40 +0000 (12:43 +1300)]
Fix ident race condition

This creates an entry for the port as soon as the socket is opened,
without duplicates. This allows an identd service to respond correctly
if a request is received before the SSL handshake has finished and been
processed on our side.

Since socketOpen is not used in the project, it is removed here.
Since the only usage of socketInitialized(...) is with oidentd, its
semantic meaning is slightly changed to occur earlier, like socketOpen,
but only once, like the former socketInitialized(...).

4 years agoMerge pull request #158 from romibi/master
Manuel Nickschas [Sun, 22 Nov 2015 22:27:34 +0000 (23:27 +0100)]
Merge pull request #158 from romibi/master

Fix Lambda

4 years agoMerge pull request #157 from wengxt/wengxt-patch-1
Manuel Nickschas [Sun, 22 Nov 2015 22:26:52 +0000 (23:26 +0100)]
Merge pull request #157 from wengxt/wengxt-patch-1

Fix SSL detection

4 years agoMerge pull request #156 from veeti/sha256-certificate
Manuel Nickschas [Sun, 22 Nov 2015 22:26:28 +0000 (23:26 +0100)]
Merge pull request #156 from veeti/sha256-certificate

Display SHA256 fingerprint for SSL certificates

4 years agoMerge pull request #155 from TheOneRing/improve_connect
Manuel Nickschas [Sun, 22 Nov 2015 22:26:03 +0000 (23:26 +0100)]
Merge pull request #155 from TheOneRing/improve_connect

Improve MainPage

4 years agoMerge pull request #154 from rsalinas/master
Manuel Nickschas [Sun, 22 Nov 2015 22:21:45 +0000 (23:21 +0100)]
Merge pull request #154 from rsalinas/master

quasselcore: fixed return values for --add-user and --change-userpass

4 years agoMerge pull request #153 from elxa/fix-op-command-crashing-core
Manuel Nickschas [Sun, 22 Nov 2015 22:20:30 +0000 (23:20 +0100)]
Merge pull request #153 from elxa/fix-op-command-crashing-core

Fixes a crash of the core when executing "/op *" in a query.

4 years agoMerge pull request #152 from heftig/master
Manuel Nickschas [Sun, 22 Nov 2015 21:21:33 +0000 (22:21 +0100)]
Merge pull request #152 from heftig/master

Correct capitalization of networkid column name

4 years agoFix OIdentdConfigGenerator double-printing on ssl 161/head
esainane [Sat, 21 Nov 2015 08:38:11 +0000 (21:38 +1300)]
Fix OIdentdConfigGenerator double-printing on ssl

connected() is always connected to socketInitialized().
encrypted() is also connected to socketInitialized() when ssl is enabled.

socketInitialized() fires socketOpen(...) unconditionally, but does not fire socketInitialized(...) if we're using SSL without encryption yet - see line 464.

With socketOpen(...) connected to OIdentdConfigurationGenerator::addSocket, OIdentdConfigurationGenerator writes to .oidentd.conf twice for every connection.

Changing this to have socketInitialized(...) connected instead prevents this duplication.

4 years agoFix Lambda 158/head
romibi [Fri, 13 Nov 2015 10:50:14 +0000 (11:50 +0100)]
Fix Lambda

No default values for Lambda's allowed...

4 years agoFix SSL detection 157/head
Weng Xuetian [Thu, 12 Nov 2015 00:13:33 +0000 (16:13 -0800)]
Fix SSL detection

CMAKE_POSITION_INDEPENDENT_CODE will always append fPIE flag as last compiler flag when calling try_compile which makes check_cxx_source_compiles fails. Move the SSL check before set CMAKE_POSITION_INDEPENDENT_CODE and append Qt5Core_EXECUTABLE_COMPILE_FLAGS to CMAKE_CXX_FLAGS solve the problem.

4 years agoFix build with Qt4 155/head
Hannah von Reth [Thu, 5 Nov 2015 18:07:31 +0000 (19:07 +0100)]
Fix build with Qt4

4 years agoDisplay SHA256 fingerprint for SSL certificates 156/head
Veeti Paananen [Wed, 4 Nov 2015 22:12:50 +0000 (00:12 +0200)]
Display SHA256 fingerprint for SSL certificates

4 years agoDisable connect to core dialog if not disconnected.
Hannah von Reth [Tue, 3 Nov 2015 14:22:07 +0000 (15:22 +0100)]
Disable connect to core dialog if not disconnected.

4 years agoSimplify MainPage and add Connect to core button in clients
Hannah von Reth [Tue, 3 Nov 2015 14:07:13 +0000 (15:07 +0100)]
Simplify MainPage and add Connect to core button in clients

Instead of overriding the paint function simply use a layout
and a QLabel in MainPage, this also enables us to add a button
to open the connect to core dialog.

This commit also hides the Nick list in a disconnected state,
to make sure the Quassel logo is centred and to keep it in line
with the All Chats view.

4 years agoquasselcore: --add-user and --change-userpass now exit with non-null in case 154/head
Raul Salinas-Monteagudo [Sat, 31 Oct 2015 10:53:02 +0000 (11:53 +0100)]
quasselcore: --add-user and --change-userpass now exit with non-null in case
of errors.

4 years agoFixes a crash of the core when executing "/op *" in a query. 153/head
Konstantin Bläsi [Wed, 21 Oct 2015 01:26:02 +0000 (03:26 +0200)]
Fixes a crash of the core when executing "/op *" in a query.

4 years agoCorrect capitalization of networkid column name 152/head
Jan Alexander Steffens (heftig) [Mon, 19 Oct 2015 19:30:28 +0000 (21:30 +0200)]
Correct capitalization of networkid column name

Fixes http://bugs.quassel-irc.org/issues/1369

4 years agoMerge pull request #151 from Tucos/ws-hist
Manuel Nickschas [Thu, 8 Oct 2015 22:12:37 +0000 (00:12 +0200)]
Merge pull request #151 from Tucos/ws-hist

Preserve white-space in the input history.

4 years agoMerge pull request #150 from Tucos/autospace
Manuel Nickschas [Thu, 8 Oct 2015 22:07:54 +0000 (00:07 +0200)]
Merge pull request #150 from Tucos/autospace

Automatically remove automatically added space

4 years agoMerge pull request #149 from Tucos/cipherkeys
Manuel Nickschas [Thu, 8 Oct 2015 22:06:12 +0000 (00:06 +0200)]
Merge pull request #149 from Tucos/cipherkeys

Store the channel keys in CoreNetwork again

4 years agoMerge pull request #148 from Tucos/DMdebug
Manuel Nickschas [Thu, 8 Oct 2015 22:04:54 +0000 (00:04 +0200)]
Merge pull request #148 from Tucos/DMdebug

Disable checkbox if no DockManager is present

4 years agoPerformance tweak: rem. pointless recursive calls
Petr Bena [Wed, 23 Sep 2015 14:07:16 +0000 (16:07 +0200)]
Performance tweak: rem. pointless recursive calls

For some reason there was an extra call to IrcChannel::joinIrcUser
from IrcUser::joinIrcChannel. That means that in past we did:

* Call to                         IrcChannel::joinIrcUsers(...)
* From there we call              IrcUser::joinIrcChannel(this)
* And from there we called        IrcChannel::joinIrcUser(this)
* Which again called              IrcChannel::joinIrcUsers(list that contained only this 1 user)
* Which figured out this user is already in this channel and exits

That is a pointless overhead, so now we call the second function with
extra parameter that tells it not to call joinIrcUser because we know
this user doesn't need to be added there, thus saves few thousands of
pointless function calls and user list contructions, especially while
joining large channels.

4 years agoMerge pull request #146 from benapetr/master
Manuel Nickschas [Thu, 8 Oct 2015 21:58:43 +0000 (23:58 +0200)]
Merge pull request #146 from benapetr/master

Clean up

4 years agoMerge pull request #145 from Scheirle/enh_usertooltip
Manuel Nickschas [Thu, 8 Oct 2015 21:57:05 +0000 (23:57 +0200)]
Merge pull request #145 from Scheirle/enh_usertooltip

Adds nicer ircuser tooltips

4 years agoMerge pull request #139 from TheOneRing/snorenotify-0.6
Manuel Nickschas [Thu, 8 Oct 2015 21:48:11 +0000 (23:48 +0200)]
Merge pull request #139 from TheOneRing/snorenotify-0.6

Updated the Snorenotification backend to the new api of Snorenotify.

4 years agoDon't assign a default value to spacePos
Pierre Schweitzer [Thu, 2 Jul 2015 12:31:29 +0000 (14:31 +0200)]
Don't assign a default value to spacePos

Will be ignored later on in CtcpParser::parseSimple.

4 years agoPass argument by reference in CliParserArg constructor
Pierre Schweitzer [Thu, 2 Jul 2015 12:28:05 +0000 (14:28 +0200)]
Pass argument by reference in CliParserArg constructor

4 years agoUse prefix operators when possible for non-primitive types
Pierre Schweitzer [Thu, 2 Jul 2015 12:21:55 +0000 (14:21 +0200)]
Use prefix operators when possible for non-primitive types

This affects mostly iterators.

4 years agoMerge pull request #134 from mamarley/reconnectfix
Manuel Nickschas [Thu, 8 Oct 2015 21:34:45 +0000 (23:34 +0200)]
Merge pull request #134 from mamarley/reconnectfix

Call socketDisconnected() from socketStateChanged()

4 years agoMerge pull request #133 from mamarley/clientreconnectfix
Manuel Nickschas [Thu, 8 Oct 2015 21:33:54 +0000 (23:33 +0200)]
Merge pull request #133 from mamarley/clientreconnectfix

Keep _wantReconnect set to true by default instead of false

4 years agoMerge pull request #132 from mamarley/md5corecertfix
Manuel Nickschas [Thu, 8 Oct 2015 21:31:59 +0000 (23:31 +0200)]
Merge pull request #132 from mamarley/md5corecertfix

Use SHA2-512 to store the core certificate digest in the client

4 years agoWrite out warning when a user login fails
Andrew Brown [Thu, 14 May 2015 08:12:26 +0000 (09:12 +0100)]
Write out warning when a user login fails

Fixes #1356.

5 years agoPreserve white-space in the input history. 151/head
Bas Pape [Sat, 28 Dec 2013 12:07:30 +0000 (13:07 +0100)]
Preserve white-space in the input history.

By default QTextHtmlImporter::appendNodeText replaces white-space
characters with a single space and leading white-space is removed. When
white-space is set to pre-wrap in the style of the node, it is preserved

Given that contents are in a span element, setting white-space to
pre-wrap on span makes the setHtml call do the expected thing.

5 years agoStore the channel keys in CoreNetwork again 149/head
Bas Pape [Thu, 24 Sep 2015 19:15:49 +0000 (21:15 +0200)]
Store the channel keys in CoreNetwork again

The refactoring from 3146ad0 (and e0781ee) was not a true refactoring as
it changed behaviour: CoreIrcChannels (as opposed to CoreNetworks) are
ephemeral, which meant disconnecting or parting lost the channel key.
Keys are still kept by the channel's cipher, but synced from/to its network when
the constructor/destructor is called.

Fixes #1248

5 years agoDisable checkbox if no DockManager is present 148/head
Bas Pape [Thu, 24 Sep 2015 18:32:13 +0000 (20:32 +0200)]
Disable checkbox if no DockManager is present

This gets rid of the stray debug message introduced by 0bf9227 and adds
some visual feedback on the settingspage instead.

5 years agoRemove forward declarations in multilineedit.h 150/head
Bas Pape [Thu, 24 Sep 2015 18:29:08 +0000 (20:29 +0200)]
Remove forward declarations in multilineedit.h

TabCompleter isn't used and QKeyEvent's header is included (and required
for inlined functions).

5 years agoRemove the tabcompletion space at end of text
Bas Pape [Thu, 24 Sep 2015 18:11:48 +0000 (20:11 +0200)]
Remove the tabcompletion space at end of text

The "add space after nick when completing mid-sentence" option
introduced by 84381d6 left the space even if it turned out to be at
the end. Remove it again if the text hasn't changed when sending the

5 years agoApply small snore api changed. 139/head
Patrick von Reth [Tue, 22 Sep 2015 13:31:28 +0000 (15:31 +0200)]
Apply small snore api changed.

5 years agoFixed english in ircchannel.cpp 146/head
Petr Bena [Tue, 22 Sep 2015 08:01:50 +0000 (10:01 +0200)]
Fixed english in ircchannel.cpp

Mostly only comments, it hurt my eyes while reading it :P

5 years agoUpdate Snorenotify project location.
Patrick von Reth [Tue, 18 Aug 2015 07:12:46 +0000 (09:12 +0200)]
Update Snorenotify project location.

5 years agoUpdated the Snorenotification backend to the new api of Snorenotify.
Patrick von Reth [Thu, 16 Jul 2015 14:15:54 +0000 (16:15 +0200)]
Updated the Snorenotification backend to the new api of Snorenotify.

Use Snorenotify also if Quassel is build with KDE support but only load
secondary backends which allow redirection to a phone etc. are loaded.

5 years agoClean up
Petr Bena [Mon, 21 Sep 2015 12:19:33 +0000 (14:19 +0200)]
Clean up

Removed extra semicolon and resolved some compiler warnings

5 years agoAdds nicer ircuser tooltips 145/head
Bernhard Scheirle [Sat, 19 Sep 2015 06:47:21 +0000 (08:47 +0200)]
Adds nicer ircuser tooltips

5 years agoMerge pull request #142 from TheOneRing/Fix-build-with-Qt-5.5
Manuel Nickschas [Thu, 30 Jul 2015 10:53:21 +0000 (12:53 +0200)]
Merge pull request #142 from TheOneRing/Fix-build-with-Qt-5.5

Fix build with Qt-5.5

5 years agoFix build with Qt-5.5 142/head
Armin K [Sat, 2 May 2015 21:04:53 +0000 (23:04 +0200)]
Fix build with Qt-5.5


5 years agoMerge pull request #129 from fuzzball81/pep8-cleanup
Manuel Nickschas [Wed, 1 Jul 2015 18:53:17 +0000 (20:53 +0200)]
Merge pull request #129 from fuzzball81/pep8-cleanup

Pep8 cleanup

5 years agoMerge pull request #128 from Deiz/optional-webkit
Manuel Nickschas [Wed, 1 Jul 2015 18:50:58 +0000 (20:50 +0200)]
Merge pull request #128 from Deiz/optional-webkit

Respect WITH_WEBKIT when defining HAVE_WEBKIT

5 years agoMerge pull request #125 from schaal/sslcert
Manuel Nickschas [Wed, 1 Jul 2015 18:47:41 +0000 (20:47 +0200)]
Merge pull request #125 from schaal/sslcert

Add core options to specify path to ssl certs.

5 years agoMerge pull request #124 from siduction-upstream/master
Manuel Nickschas [Wed, 1 Jul 2015 18:42:54 +0000 (20:42 +0200)]
Merge pull request #124 from siduction-upstream/master

Fix read GIT_HEAD and GIT_DESCRIBE from environment

5 years agoMove config file migration after QCoreApplication instantiation
Manuel Nickschas [Thu, 23 Apr 2015 20:34:07 +0000 (22:34 +0200)]
Move config file migration after QCoreApplication instantiation

Seems like Kdelibs4ConfigMigrator accesses QCoreApplication::arguments()
now, leading to a warning on startup if QCA hasn't been instantiated yet.