Hannah von Reth [Thu, 5 Nov 2015 18:07:31 +0000 (19:07 +0100)]
Fix build with Qt4
Hannah von Reth [Tue, 3 Nov 2015 14:22:07 +0000 (15:22 +0100)]
Disable connect to core dialog if not disconnected.
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.
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.
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
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
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
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.
Manuel Nickschas [Thu, 8 Oct 2015 21:58:43 +0000 (23:58 +0200)]
Merge pull request #146 from benapetr/master
Clean up
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
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.
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.
Pierre Schweitzer [Thu, 2 Jul 2015 12:28:05 +0000 (14:28 +0200)]
Pass argument by reference in CliParserArg constructor
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.
Manuel Nickschas [Thu, 8 Oct 2015 21:34:45 +0000 (23:34 +0200)]
Merge pull request #134 from mamarley/reconnectfix
Call socketDisconnected() from socketStateChanged()
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
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
Andrew Brown [Thu, 14 May 2015 08:12:26 +0000 (09:12 +0100)]
Write out warning when a user login fails
Fixes #1356.
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
instead.
Given that contents are in a span element, setting white-space to
pre-wrap on span makes the setHtml call do the expected thing.
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
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.
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).
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
text.
Patrick von Reth [Tue, 22 Sep 2015 13:31:28 +0000 (15:31 +0200)]
Apply small snore api changed.
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
Patrick von Reth [Tue, 18 Aug 2015 07:12:46 +0000 (09:12 +0200)]
Update Snorenotify project location.
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.
Petr Bena [Mon, 21 Sep 2015 12:19:33 +0000 (14:19 +0200)]
Clean up
Removed extra semicolon and resolved some compiler warnings
Bernhard Scheirle [Sat, 19 Sep 2015 06:47:21 +0000 (08:47 +0200)]
Adds nicer ircuser tooltips
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
Armin K [Sat, 2 May 2015 21:04:53 +0000 (23:04 +0200)]
Fix build with Qt-5.5
http://code.qt.io/cgit/qt/qtbase.git/commit/?id=
ebef2ad1360c80ad62de5f4a1c4e7e4051725c1c
Manuel Nickschas [Wed, 1 Jul 2015 18:53:17 +0000 (20:53 +0200)]
Merge pull request #129 from fuzzball81/pep8-cleanup
Pep8 cleanup
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
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.
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
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.
Michael Marley [Sat, 13 Jun 2015 21:38:29 +0000 (17:38 -0400)]
Keep _wantReconnect set to true by default instead of false
Previously _wantReconnect was set to false by default (unless the
client was actually disconnected). If the disconnect() signal was
fired without any other signals (socketError(), for example), this
would cause the client to not reconnect. This seems to be
happening rather often with Qt5 client builds because a vast
majority of the time when I restart my core (or the entire core
server), the Qt5 clients do not reconnect. This patch keeps
_wantReconnect set to true whenever the client is connected so that
problem will not occur anymore. Disconnecting manually will set
it back to false so that the client won't try to reconnect after
a manual disconnect.
Michael Marley [Sat, 23 May 2015 22:17:04 +0000 (18:17 -0400)]
Use SHA2-512 to store the core certificate digest in the client
Previously, MD5 was used. Like the core password hashing update,
this implements a versioning system so that the digest will be
automagically upgraded without bugging the user. If for some
reason the user downgrades again, the client will still work but
the user will be asked to validate the certificate again.
SHA2-256 is more common for storing certificate digests, but in
this case, SHA2-512 was used. This is because Qt4 does not
implement any hash higher than SHA1 and a SHA2-512 implementation
is already bundled for use with the core password hashing.
Jason Joyce [Wed, 13 May 2015 01:53:18 +0000 (21:53 -0400)]
Adding tag file to the ignore list.
Deiz [Fri, 8 May 2015 19:37:52 +0000 (15:37 -0400)]
Respect WITH_WEBKIT when defining HAVE_WEBKIT
Jason Joyce [Fri, 8 May 2015 02:41:10 +0000 (22:41 -0400)]
Adding the build folder to the ignore file.
jjoyce [Thu, 7 May 2015 20:46:27 +0000 (16:46 -0400)]
Adding a gitignore file.
jjoyce [Thu, 7 May 2015 19:03:02 +0000 (15:03 -0400)]
Python PEP8 cleanup of macosx_makebundle.py
jjoyce [Thu, 7 May 2015 18:46:41 +0000 (14:46 -0400)]
Python PEP8 cleanup of macos_DeployApp.py
Manuel Nickschas [Wed, 6 May 2015 08:11:49 +0000 (10:11 +0200)]
Merge pull request #126 from mamarley/insertuserracefix
Fix SQL errors caused by sender insertion from multiple threads
Michael Marley [Tue, 5 May 2015 01:27:14 +0000 (21:27 -0400)]
Fix SQL errors caused by sender insertion from multiple threads
At least on Qt5, the QSqlQuery.lastQuery() function, when used with
prepared queries, returns the EXECUTE statement and not the actual
query. Qt then attempts to PREPARE this statement, which causes
a syntax error, aborting the transaction and dropping the message that
was to be inserted. A better idea would be to execute the named
prepared query directly, which avoids the problem.
Daniel Schaal [Fri, 1 May 2015 14:34:22 +0000 (16:34 +0200)]
Add cmdline options for SSL certificate/key paths.
Add cmdline options to core to specify the SSL certificate
and SSL key path, --ssl-cert and --ssl-key respectively.
If not set, the usual path CONFIGDIR/quasselCert.pem
will be used for the cert and the key.
If only the path to the certificate is set, it is assumed
to also contain the key.
Alf Gaida [Sat, 25 Apr 2015 17:25:34 +0000 (19:25 +0200)]
Fix read GIT_HEAD and GIT_DESCRIBE from environment
add missed ENV
Michael Marley [Thu, 23 Apr 2015 22:05:31 +0000 (18:05 -0400)]
Call socketDisconnected() from socketStateChanged()
This makes sure that socketDisconnected() is always called when
Quassel disconnects even if it isn't fully connected yet.
Otherwise, reconnect occasionally fails to work properly.
egs-me [Thu, 23 Apr 2015 14:12:40 +0000 (16:12 +0200)]
Merge pull request #123 from mamarley/initdbfix
Execute initDbSession() on DB reconnects
Michael Marley [Thu, 23 Apr 2015 12:46:43 +0000 (08:46 -0400)]
Execute initDbSession() on DB reconnects
Previously, the initDbSession() function would only be run on the
initial connect. Since the initDbSession() code in PostgreSQL is
used to fix the CVE-2013-4422 SQL Injection bug, this means that
Quassel was still vulnerable to that CVE if the PostgreSQL server
is restarted or the connection is lost at any point while Quassel
is running.
This bug also causes the Qt5 psql timezone fix to stop working
after a reconnect.
The fix is to disable Qt's automatic reconnecting, check the
connection status ourselves, and reconnect if necessary, executing
the initDbSession() function afterward.
Manuel Nickschas [Tue, 21 Apr 2015 20:38:00 +0000 (22:38 +0200)]
Merge pull request #122 from mamarley/psqltzfix
Set the PostgreSQL session timezone to 'UTC'
Manuel Nickschas [Tue, 21 Apr 2015 20:34:25 +0000 (22:34 +0200)]
Post-release version bump
Michael Marley [Mon, 20 Apr 2015 16:43:53 +0000 (12:43 -0400)]
Set the PostgreSQL session timezone to 'UTC'
With Qt5, the PostgreSQL driver will transparently convert times
to the database's timezone before inserting. Because the default
is 'localtime', this causes the local time to be stored in the DB
instead of the UTC time. This in turn causes the time displayed
in the client to be wrong by the same offset as that timezone's
offset. To fix the issue, just make sure the PostgreSQL is in the
'UTC' timezone, so the passed UTC time will not be converted.
Manuel Nickschas [Wed, 15 Apr 2015 20:58:17 +0000 (22:58 +0200)]
Bump version for release
Manuel Nickschas [Wed, 15 Apr 2015 20:57:53 +0000 (22:57 +0200)]
Update ChangeLog
Manuel Nickschas [Wed, 15 Apr 2015 20:56:03 +0000 (22:56 +0200)]
Output the CMake version during configuration
This will allow us to quickly see if too old (or sometimes even
too new) CMake versions cause problems for building.
Patrick von Reth [Mon, 16 Mar 2015 10:55:41 +0000 (11:55 +0100)]
Use the Qca-qt5 import target if available
Manuel Nickschas [Wed, 15 Apr 2015 18:12:08 +0000 (20:12 +0200)]
Merge pull request #121 from mamarley/unusedcipherfix
Fix compiler warning when compiling without QCA support
Manuel Nickschas [Thu, 9 Apr 2015 11:53:29 +0000 (13:53 +0200)]
Merge pull request #120 from mamarley/dbcreatefix
Update the schema creation DDL for the new password hashing
Michael Marley [Mon, 6 Apr 2015 01:54:36 +0000 (21:54 -0400)]
Fix compiler warning when compiling without QCA support
Michael Marley [Mon, 6 Apr 2015 01:35:09 +0000 (21:35 -0400)]
Update the schema creation DDL for the new password hashing
I'm not sure whether this slipped out in a merge or whether I
forgot to add it in the first place, but it should have been part
of commit
5924533c6d0f9777d38c01ed7e1510a55db2b876. This
completely broke setting up a new Quassel instance from scratch
with 0.12-rc1, but upgrades from previous versions are unaffected.
Daniel Albers [Wed, 25 Mar 2015 12:11:50 +0000 (13:11 +0100)]
Fix typo in PasswordChangeDlg failure message
Daniel Albers [Wed, 26 Mar 2014 04:00:33 +0000 (05:00 +0100)]
Update translations from Transifex
26056 translated messages
Many thanks to:
- cs: Jaroslav Lichtblau <dragonlord@seznam.cz>
- da: Jens True <frazzer@hotmail.com>,
Joe Hansen <joedalton2@yahoo.dk>
- de: contradictioned <contradictioned@googlemail.com>,
Felix Kaechele <felix@fetzig.org>,
Manuel Hoffmann <contradictioned@googlemail.com>,
Tobias Frei <tobias@freiwuppertal.de>
- el: Stefanos Sofroniou <inactive+_stefanos_@transifex.com>
- eo: Tinjo Kohen <tiffypet@yahoo.com>
- es: Adolfo Jayme Barrientos <fitoschido@ubuntu.com>,
Jonathan Farnham <jonathan@haitu-yu.com>
- fi: Lasse Liehu <larso@gmx.com>
- fr: Vlavv <vlavv2@gmail.com>
- gl: Miguel Anxo Bouzada <mbouzada@gmail.com>
- hi: Raju Devidas Vindane <rajuvindane@gmail.com>
- ko: Sungjin Kang <potopro@gmail.com>
- mr: Raju Devidas Vindane <rajuvindane@gmail.com>
- nl: simonphilips <simon.philips@gmail.com>
- oc: Cédric Valmary <cvalmary@yahoo.fr>
- pa: A S Alam <apreet.alam@gmail.com>
- pt_BR: Pedro Araujo <pedroaraujo@colorlesscube.com>
- ro: Arthur Țițeică <arthur.titeica@gmail.com>
- sl: Andrej Mernik <andrejm@ubuntu.si>
- sr: Jovan Jojkić <jovanjojkic@gmail.com>
- tr: Volkan Gezer <volkangezer@gmail.com>
- uk: Yuri Chornoivan <yurchor@ukr.net>
Daniel Albers [Tue, 25 Mar 2014 23:10:11 +0000 (00:10 +0100)]
Update quassel.pot
Lasse Liehu [Tue, 25 Mar 2014 22:53:23 +0000 (00:53 +0200)]
These two settings keys shouldn't be translated
Manuel Nickschas [Wed, 11 Mar 2015 22:21:29 +0000 (23:21 +0100)]
Merge pull request #118 from mamarley/randomfix
Fix FTBFS on certain older libstdc++ versions.
Michael Marley [Wed, 11 Mar 2015 21:54:05 +0000 (17:54 -0400)]
Fix FTBFS on certain older libstdc++ versions.
Manuel Nickschas [Wed, 11 Mar 2015 19:47:23 +0000 (20:47 +0100)]
Bump version for release
Manuel Nickschas [Wed, 11 Mar 2015 19:46:47 +0000 (20:46 +0100)]
Update ChangeLog
Manuel Nickschas [Wed, 11 Mar 2015 19:43:25 +0000 (20:43 +0100)]
Merge pull request #116 from mamarley/splitfix2
Improve the message-splitting algorithm for PRIVMSG and CTCP
Chris H [Sun, 14 Sep 2014 17:30:09 +0000 (13:30 -0400)]
Move websearch from botton of context menu to underneath copy selection.
It seems the 'Copy Selection' button got moved between when the patch
was made and when it finally got applied. Got missed during the merge.
Manuel Nickschas [Wed, 11 Mar 2015 19:15:24 +0000 (20:15 +0100)]
Merge pull request #117 from mamarley/oldcoresslconfig
Add back the SSL protocol selection dialog box for old cores.
Manuel Nickschas [Wed, 11 Mar 2015 19:13:12 +0000 (20:13 +0100)]
Merge pull request #111 from mamarley/nosslloopback
Don't require SSL for loopback connections with --require-ssl
Manuel Nickschas [Wed, 11 Mar 2015 19:10:41 +0000 (20:10 +0100)]
Merge pull request #110 from mamarley/passhash
Introduce new password hash versioning system and new salted SHA2-512 hash
Manuel Nickschas [Wed, 11 Mar 2015 18:49:27 +0000 (19:49 +0100)]
Provide a proper dialog for changing the core password
The password change dialog now asks for your old password, and forces
you to confirm the new password by typing it twice, as is customary.
To make this works, we need to add bidirectional communication between
client and core, forcing some more changes to the way the first iteration
of the feature was done.
Note that this commit breaks compatibility with the previous implementation.
If you run a beta1 core or client, you need to upgrade both to make things
work again. Since no real release happened in between, I don't deem it
necessary to provide backwards compat or yet another feature guard.
Manuel Nickschas [Wed, 11 Mar 2015 18:43:21 +0000 (19:43 +0100)]
Make PeerPtr work for RPC calls
While most of the functionality was already in place, it turns out
that we need to enable loading/saving PeerPtr from/to a QVariant in
order for SignalProxy to work properly.
I'm honestly not sure why it seemed to work without this when implementing
the TransferManager, but it's obvious it's required.
Manuel Nickschas [Mon, 9 Mar 2015 20:53:00 +0000 (21:53 +0100)]
Add missing dependency to KWidgetsAddons
This is pulled in by some other frameworks modules anyway, but we should
list it explicitly.
Michael Marley [Fri, 27 Feb 2015 17:31:17 +0000 (12:31 -0500)]
Add back the SSL protocol selection dialog box for old cores.
Cores before 0.10 will default to SSLv3 if the user doesn't make a
selection. If a >=0.10 client is used with a <0.10 core to connect
to a server that has SSLv3 disabled, it is impossible to connect
to that server without upgrading the core or using an old client
to change the SSL protocol settings.
This also changes the SSLv2 and SSLv3 options to indicate their
insecurity and therefore discourage their use.
Cores from 0.10 and up use SSL autonegotiation and to not need the
protocol setting.
This partially reverts commit
e53fc69a91553b57932ba599b39999d550114588.
Michael Marley [Sat, 14 Feb 2015 01:12:18 +0000 (20:12 -0500)]
Don't require SSL for loopback connections with --require-ssl
Encrypting a loopback connection is a pointless waste of computing
power. This patch will allow people to use loopback connections
from things like quassel-webserver without encryption while still
requiring encryption for remote connections.
Michael Marley [Tue, 3 Mar 2015 01:31:02 +0000 (20:31 -0500)]
Add support for SHA2-512 hash on Qt4 builds
Qt4 doesn't support anything higher than SHA1 in
QCryptographicHash, so it is necessary to include a fallback. This
bundles sha512.c from PolarSSL/mbed TLS. It is only used for Qt4
builds and does not require a dependency on external libraries that
might be hard to compile on Windows® or Mac OSX®. It can be
removed once Qt4 is no longer supported.
Michael Marley [Sat, 21 Feb 2015 12:33:57 +0000 (07:33 -0500)]
Improve the message-splitting algorithm for PRIVMSG and CTCP
This introduces a new message splitting algorithm based on
QTextBoundaryFinder. It works by first starting with the entire
message to be sent, encoding it, and checking to see if it is over
the maximum message length. If it is, it uses QTBF to find the
word boundary most immediately preceding the maximum length. If no
suitable boundary can be found, it falls back to searching for
grapheme boundaries. It repeats this process until the entire
message has been sent.
Unlike what it replaces, the new splitting code is not recursive
and cannot cause stack overflows. Additionally, if it is unable
to split a string, it will give up gracefully and not crash the
core or cause a thread to run away.
This patch fixes two bugs. The first is garbage characters caused
by accidentally splitting the string in the middle of a multibyte
character. Since the new code splits at a character level instead
of a byte level, this will no longer be an issue. The second is
the core crash caused by sending an overlength CTCP query ("/me")
containing only multibyte characters. This bug was caused by the
old CTCP splitter using the byte index from lastParamOverrun() as
a character index for a QString.
Manuel Nickschas [Wed, 18 Feb 2015 21:09:54 +0000 (22:09 +0100)]
Bump version for release
Manuel Nickschas [Wed, 18 Feb 2015 21:07:59 +0000 (22:07 +0100)]
Update INSTALL
Manuel Nickschas [Wed, 18 Feb 2015 20:54:50 +0000 (21:54 +0100)]
Update ChangeLog
Manuel Nickschas [Wed, 18 Feb 2015 20:17:51 +0000 (21:17 +0100)]
Update AboutData
Kimmo Huoman [Mon, 2 Feb 2015 12:13:51 +0000 (14:13 +0200)]
Allows merging buffers over networks
Feature request at http://bugs.quassel-irc.org/issues/1334
> As stated in Issue 83 merge is only possible with chats on the
> same network.
> As the usage of Bitlbee etc has increased, it would be useful
> to be able to merge chats across all networks as well. The issue
> rises as people are now using alternative methods (Facebook, Lync
> etc) during the day and returning to IRC in the evening.
Closes #1334
Manuel Nickschas [Wed, 18 Feb 2015 20:03:51 +0000 (21:03 +0100)]
Merge pull request #107 from siduction-upstream/master
Set GIT_HEAD and GIT_DESCRIBE from environment
Chris Holland [Sat, 1 Feb 2014 20:54:40 +0000 (15:54 -0500)]
Toggle hiding of Join/Part/Quits with a single button
Alf Gaida [Tue, 17 Feb 2015 22:58:32 +0000 (23:58 +0100)]
Set GIT_HEAD and GIT_DESCRIBE via environmental variables
Set GIT_HEAD and GIT_DESCRIBE before run cmake in case no source repo is
available - booth values must be extracted at clone/pull time
Example:
git log -1 | grep commit | sed 's#commit ##' > debian/git_head; \
git describe > debian/git_describe
export GIT_HEAD=$(shell [ -f debian/git_head ] && cat debian/git_head)
Pierre-Hugues Husson [Mon, 26 May 2014 11:38:08 +0000 (13:38 +0200)]
Add "/print" command
This only displays an info message without sending anything to
the server.
Manuel Nickschas [Tue, 17 Feb 2015 21:16:23 +0000 (22:16 +0100)]
Change location and behavior of the Password Change action
This action fits better in the File menu than under Settings, so
move it there.
Also, to increase discoverability, we now show the option even if
the core is too old to support the feature. A popup message informing
the user is shown in that case.
Additionally, the changed password is now saved client-side (if the
account is setup to remember the password), thus avoiding having to
re-enter the new password on next launch.
Michael Marley [Sat, 14 Feb 2015 19:01:42 +0000 (14:01 -0500)]
Hide or disable the Change Password option when appropriate
Previously, the Change Password option would be shown all the
time, even the the client was connected to a core not supporting
the password change functionality or if a monolithic build was in
use. Now, the Change Password option will be disabled if the
client is disconnected or is connected to a core not supporting the
functionality and will be hidden if a monolithic build is in use.
Martin T. H. Sandsmark [Tue, 25 Nov 2014 00:43:18 +0000 (01:43 +0100)]
Implement password changing from client.
Add menu item and dialog for getting a new password from the user,
signal from client to core to give the new password, and wire up the
signal on the core to change the password in the database.
Also update the stored password on the client side.
Manuel Nickschas [Mon, 16 Feb 2015 22:05:55 +0000 (23:05 +0100)]
Migrate KDE-specific settings from KDE4 to KF5
This uses Kdelibs4ConfigMigrator to move over KDE-specific settings
(i.e. window state, shortcuts, notifications...) from the KDE4 config
dir to the one used by KF5. This should make the move seamless for
most intents and purposes.
Note that migration won't happen (again) once the KF5 config files
exist.
Manuel Nickschas [Mon, 16 Feb 2015 21:52:57 +0000 (22:52 +0100)]
Port remaining stuff in MainWin to KF5
We use KToolbar now and handle the full screen action properly in
both KDE4 and KF5.
Manuel Nickschas [Mon, 16 Feb 2015 20:56:48 +0000 (21:56 +0100)]
Fix shortcut saving on KDE, and use the system dialog for Frameworks
While re-enabling the system dialog for shortcut editing for KF5,
I finally figured out why shortcuts where never saved when using KDE;
a long standing bug we've had.
Turns out QDialog::exec() does not actually save things. All this time
I was looking into completely different directions; but it never
occured to me that I need to explicitly save after the dialog is
accepted (our own dialog does this automatically). This is not a
complaint; it was being stupid on my end :)
Fixes #1057.
Manuel Nickschas [Sun, 15 Feb 2015 21:48:09 +0000 (22:48 +0100)]
Use KNotifications if Frameworks integration is enabled
This brings back proper support for KNotify if KDE Frameworks
integration is enabled.
Note that quassel.notifyrc is installed in a different location
if KF5 as opposed to KDE4. If you don't have a system installation
of Quassel, you may have to manually copy that file from data/
to $HOME/.local/share/knofitications5 for KNotify to know about
Quassel.
Manuel Nickschas [Thu, 12 Feb 2015 21:24:34 +0000 (22:24 +0100)]
Adapt custom stylesheet path to new default install location
When switching from a KDE4 build to Qt5/KF5, the default install
location for data files switches from /usr/share/apps/quassel to
/usr/share/quassel, as is standard. Users who have selected one of
the pre-installed stylesheets will use that setting.
Thus, if a custom stylesheet is configured and points to /usr/share/apps,
in case it is not found we will now try and look into /usr/share as well.
If we find the stylesheet in the new location, we'll also update the
stored setting.
Manuel Nickschas [Wed, 11 Feb 2015 22:22:31 +0000 (23:22 +0100)]
Work around weirdly broken MOCs
Apparently, Debian Wheezy ships Qt 4.8.2 with a MOC that thinks it's older
than 4.6, or something. Not sure what's going on, but if we remove
that "#if QT_VERSION" that checks for versions older than 4.6 (and thus does
not make any sense now that we require 4.8 anyway), the MOC on (some?)
Wheezy installations fails to deal with the Q_INTERFACES call.
I guess it doesn't hurt to keep the guard around, but this issue still leaves
me scratching my head...