Manuel Nickschas [Sun, 25 Jan 2009 01:00:39 +0000 (02:00 +0100)]
Improve data and icon file handling
Add some more locations that data files are being searched in, and reorder the icon
search order to prefer system themes over our own files. Ah, and fix some bugs that
would exclude some dirs that really should be included.
This hopefully provides sane handling of external files now.
Manuel Nickschas [Sun, 25 Jan 2009 01:00:32 +0000 (02:00 +0100)]
Always embed pics/* until we actually support loading from external files
Manuel Nickschas [Fri, 23 Jan 2009 23:35:27 +0000 (00:35 +0100)]
Revamping the build system (again...)
* LINGUAS can now be a comma-separated list, and it now supports quassel_xx_YY.ts style properly
* Get rid of the options for having builtin icons
* Instead, -DEMBED_DATA=ON will embed all external files into the binary, whereas all files
will be installed externally if the option is not set
* Data files and icons are now installed into sane locations (needs to be checked on Mac)
* Various improvements and simplifications (yes, I've discovered PARENT_SCOPE now :D)
Note: - Code changes to find files again follow in the next commit
- -DEMBED_DATA=OFF not supported on Win32 yet, and untested on Mac and for static builds
- -DWITH_KDE=ON implies -DEMBED_DATA=OFF
Manuel Nickschas [Thu, 22 Jan 2009 23:21:02 +0000 (00:21 +0100)]
Don't show migration warnings if we don't have old settings to migrate
Manuel Nickschas [Thu, 22 Jan 2009 22:05:34 +0000 (23:05 +0100)]
Remove old UiStyle migration code that would try to access settings at the old location
Manuel Nickschas [Thu, 22 Jan 2009 21:16:08 +0000 (22:16 +0100)]
Well, if we check for a settings version, maybe we should set it too...
Manuel Nickschas [Thu, 22 Jan 2009 19:35:12 +0000 (20:35 +0100)]
This should fix config file migration for the mac.
Please test though, maybe I've run into #ifdef hell again :)
Marcus Eggenberger [Thu, 22 Jan 2009 11:56:20 +0000 (12:56 +0100)]
Make Quasel compile on mac and win again.
Curse you evil #ifdefs!111
Manuel Nickschas [Wed, 21 Jan 2009 23:32:09 +0000 (00:32 +0100)]
warnings--
Manuel Nickschas [Wed, 21 Jan 2009 23:27:00 +0000 (00:27 +0100)]
Don't tinker with config and data files on Mac for now
Still need to figure out how to behave correctly on Mac. To not break Mac builds
until that's sorted, this should restore the old behavior.
Disabling migration code on Mac as well.
Manuel Nickschas [Wed, 21 Jan 2009 08:04:54 +0000 (09:04 +0100)]
Improve data directory search
Marcus Eggenberger [Wed, 21 Jan 2009 22:54:12 +0000 (23:54 +0100)]
using the extended away icon for away state as proposed by jussi01
Marcus Eggenberger [Tue, 20 Jan 2009 23:44:27 +0000 (00:44 +0100)]
Another try on tackeling the minimize issues. lol.
going to sleep.
hmm... using git as twitter rocks.
!nini
Marcus Eggenberger [Tue, 20 Jan 2009 23:33:08 +0000 (00:33 +0100)]
maybe clicking the tray icon toggles minimize to tray again. maybe it won't. maybe it crashes quassel right on start.
I didn't test it, as I don't want to mess up my settings. (meaning: it compiled but I didn't even started quassel afterwards)
Manuel Nickschas [Tue, 20 Jan 2009 21:46:48 +0000 (22:46 +0100)]
Make IconLoader compile again
Manuel Nickschas [Tue, 20 Jan 2009 21:46:32 +0000 (22:46 +0100)]
Wupps, fixed an oooopsie with the migration code :)
Marcus Eggenberger [Tue, 20 Jan 2009 21:31:53 +0000 (22:31 +0100)]
This could / should / oh well you know the drill... just test if minimize to tray now works properly (BR #398)
Marcus Eggenberger [Tue, 20 Jan 2009 21:30:05 +0000 (22:30 +0100)]
fixing a glitch on mac os in the general settings page (systray setting for mac os)
Manuel Nickschas [Tue, 20 Jan 2009 20:47:54 +0000 (21:47 +0100)]
Adding code for migrating settings and database to the new location
Please make sure to backup your config and data before running Quassel, just
in case something goes wrong.
Manuel Nickschas [Tue, 20 Jan 2009 01:14:10 +0000 (02:14 +0100)]
Make Settings use --configdir (or the default location)
Note that the default location on Unix is now
~/.config/quassel-irc.org/quassel{core,client}.conf
This follows the XDG standard (Qt and, hence, Quassel honor XDG_CONFIG_HOME
as well; but not more sophisticated stuff like .config/user-dirs)
Manuel Nickschas [Tue, 20 Jan 2009 01:08:30 +0000 (02:08 +0100)]
Abuse QSettings to find a sensible config file location
Rather than trying to do The Right Thing [tm] ourselves, we now just instantiate
a QSettings object and retrieve its path to figure out where Quassel should store
its config data. Path is cached, so it's not too expensive.
Manuel Nickschas [Sat, 17 Jan 2009 00:37:08 +0000 (01:37 +0100)]
Get rid of the old path finding methods in util.cpp
Use the stuff in Quassel:: now. And use --configdir to specify the config dir
on the cli, rather than the now deprecated --datadir.
Manuel Nickschas [Sat, 17 Jan 2009 00:18:43 +0000 (01:18 +0100)]
Provide Quassel::configDirPath() and Quassel::findDataFilePath()
These functions are about to obsolete their pendants in util.cpp. With KDE integration
enabled, data files will (only) be looked for in KDE's data directories rather than XDG.
This is in preparation of build system changes that will install stuff into KDE's dirs.
Still lacks some stuff to work properly on Win and Mac, I guess.
Instead of --datadir, use --configdir now. We'll move all user files in one location soon.
Edward Hades [Tue, 20 Jan 2009 17:15:48 +0000 (20:15 +0300)]
Modified automatic branch mask generation for IP addresses.
Now instead for ident Nick!~Login@123.45.67.89 it sets mask to
*!~Login@123.45.67.* instead of *!~Login@*.67.89.
Marcus Eggenberger [Tue, 20 Jan 2009 00:03:31 +0000 (01:03 +0100)]
This could / should / I just wish it does / who the hell knows / whatever / <insert random words here> fix the issue where quassel stops kde's logout. (Br # 485).
I can't test it on mac os.
Marcus Eggenberger [Sun, 18 Jan 2009 13:19:45 +0000 (14:19 +0100)]
fixing a client crash that could occur when processing dynamic backlog
Manuel Nickschas [Fri, 16 Jan 2009 20:15:47 +0000 (21:15 +0100)]
Some more fixes
Manuel Nickschas [Fri, 16 Jan 2009 20:15:27 +0000 (21:15 +0100)]
Formatting, make strings translateable, naming convention++
Joshua T Corbin [Thu, 8 Jan 2009 23:53:00 +0000 (18:53 -0500)]
Only display the verbose error message once.
Joshua T Corbin [Thu, 8 Jan 2009 23:52:59 +0000 (18:52 -0500)]
Useful error message on certificate error.
When the core is compiled with SSL support, but a certificate file is not present
or invalid display a verbose warning pointing to the FAQ.
Joshua T Corbin [Thu, 8 Jan 2009 23:52:58 +0000 (18:52 -0500)]
Precise error messages in SslServer::setCertificate.
Joshua T Corbin [Thu, 8 Jan 2009 23:52:57 +0000 (18:52 -0500)]
Catch and describe IO errors in SslServer::setCertificate.
Joshua T Corbin [Thu, 8 Jan 2009 23:52:56 +0000 (18:52 -0500)]
Reset certFile instead of reopening in SslServer::setCertificate.
Joshua T Corbin [Thu, 8 Jan 2009 23:52:55 +0000 (18:52 -0500)]
Basic checks on path in SslServer::setCertificate.
Joshua T Corbin [Thu, 8 Jan 2009 23:52:54 +0000 (18:52 -0500)]
More obvious logic in SslServer::setCertificate.
Joshua T Corbin [Thu, 8 Jan 2009 23:52:53 +0000 (18:52 -0500)]
Separate certificate setting into a method.
Move SSL certificate setting logic from SslServer::SslServer
to SslServer::setCertificate.
Manuel Nickschas [Fri, 16 Jan 2009 19:40:02 +0000 (20:40 +0100)]
Add socket warnings, make strings translatable, adjust whitespace
Manuel Nickschas [Fri, 16 Jan 2009 19:39:50 +0000 (20:39 +0100)]
Add quWarning() and quError()
Joshua T Corbin [Thu, 8 Jan 2009 23:52:50 +0000 (18:52 -0500)]
Add listen option.
The listen option changes what address the core will listen on, the default is
to listen on all available IPv4 and IPv6 addresses.
Manuel Nickschas [Fri, 16 Jan 2009 16:25:32 +0000 (17:25 +0100)]
Fix a regression that would show some wrong context menu entries in some cases
Manuel Nickschas [Thu, 15 Jan 2009 23:04:20 +0000 (00:04 +0100)]
Properly display core build date, fixes #473
Will probably see how to get a localized string into that at some point; using
__TIME__ and __DATE__ is quite hacky, and since we run genversion anyway, we can
as well have it provide a real timestamp instead.
Manuel Nickschas [Thu, 15 Jan 2009 20:11:59 +0000 (21:11 +0100)]
Improve mouse button detection for mouse release events
This might be a solution to the strange behavior when clicking links in Windows
(as described in Bug 483). Please test and feedback.
Manuel Nickschas [Thu, 15 Jan 2009 19:45:15 +0000 (20:45 +0100)]
Properly initialize _messageFilter in all cases, fixes #482
Thanks to EgS for pointing me to the root of the issue.
Marcus Eggenberger [Thu, 15 Jan 2009 15:16:15 +0000 (16:16 +0100)]
No longer saving QTextLayouts for chatitems
Marcus Eggenberger [Wed, 14 Jan 2009 20:02:50 +0000 (21:02 +0100)]
fixes #484 - issues with ssl status indicator
Manuel Nickschas [Tue, 13 Jan 2009 22:56:03 +0000 (23:56 +0100)]
Weed out networks.ini to only contain popular networks
Manuel Nickschas [Tue, 13 Jan 2009 22:41:09 +0000 (23:41 +0100)]
Automatically create networks and buffers specified in networks.ini
In order for a network and certain channels to be added automatically in a blank core
configuration, add the following to a [NetworkName] block in networks.ini:
Default=Yes
DefaultChannels=#channel1,#channel2,#channel3
We'll create the network(s), and on first connect, the given channels will be joined automatically.
Manuel Nickschas [Tue, 13 Jan 2009 22:40:17 +0000 (23:40 +0100)]
Move handling of networks.ini from NetworksSettingsPage in Network
We use this in Client as well, so avoid code duplication here.
Manuel Nickschas [Tue, 13 Jan 2009 22:37:42 +0000 (23:37 +0100)]
Take list of auto-rejoin channels directly from core
This might fix the dreaded auto-rejoin bug. I can only guess, but maybe the cached list
in CoreNetwork and the list in the database get out of sync in some circumstances. This
gets rid of the (unneeded) caching; please let me know if the rejoin bug is still present.
Manuel Nickschas [Tue, 13 Jan 2009 08:26:38 +0000 (09:26 +0100)]
Make "rejoin channels on reconnect" option work
Marcus Eggenberger [Tue, 13 Jan 2009 17:54:50 +0000 (18:54 +0100)]
Internal changes to message redirection. As a side effect this will
reset your redirection settings. Automagicaly fixes #454
Marcus Eggenberger [Tue, 13 Jan 2009 15:34:18 +0000 (16:34 +0100)]
Reducing the overhead between ChatlineModelItem and MessageModelItem.
This concludes my work on restructuring the MessageModel to not be
such a malloc hog. Also it seems that performance can be further
increased by reducing virtual calls on the MessageModelItems.
Marcus Eggenberger [Tue, 13 Jan 2009 14:52:31 +0000 (15:52 +0100)]
UiStyle::StyledMessage derived now from Message
Marcus Eggenberger [Tue, 13 Jan 2009 14:21:24 +0000 (15:21 +0100)]
quassel no longer allocates an MessageItem on the heap for every message - working towards a better mem handling
Marcus Eggenberger [Tue, 13 Jan 2009 12:57:44 +0000 (13:57 +0100)]
Message object cleanup
Manuel Nickschas [Mon, 12 Jan 2009 21:09:57 +0000 (22:09 +0100)]
Make button to edit identities from networks settings work
Manuel Nickschas [Mon, 12 Jan 2009 20:59:11 +0000 (21:59 +0100)]
Fix an issue where active query buffer couldn't be deleted
Manuel Nickschas [Mon, 12 Jan 2009 17:28:13 +0000 (18:28 +0100)]
Provide real networks.ini containing a large range of predefined networks
This has been converted from mIRC's servers.ini using the real quick and dirty
convert_mirc_servers_ini.pl found in scripts/.
Note that you have to properly install Quassel for presets to work, the file is expected
to be in one of the standard data dirs (usually $PREFIX/share/apps/quassel).
Manuel Nickschas [Mon, 12 Jan 2009 17:28:00 +0000 (18:28 +0100)]
Some tweaks in NetworksSettingsPage
Manuel Nickschas [Mon, 12 Jan 2009 01:49:17 +0000 (02:49 +0100)]
Redesign network settings page
Manuel Nickschas [Mon, 12 Jan 2009 00:51:22 +0000 (01:51 +0100)]
Introduce presets for adding networks
We now allow providing a networks.ini that contains a predefined list of networks/servers.
When adding a network, one can choose a preset from that list to have server properties
filled in automatically. This should make it much easier for users to add networks.
For adding a custom network, we allow entering the most important data right in the dialog,
to avoid useless clicks.
Manuel Nickschas [Sun, 11 Jan 2009 22:34:17 +0000 (23:34 +0100)]
Add a method to find data files in standard directories (such as $PREFIX/share)
Also we move finding those directories out of iconloader.cpp into util.cpp such that we
can reuse that elsewhere.
Oh, and we make IconLoader spit out a warning if an icon isn't found now, as sometimes icons
change names upstream.
Manuel Nickschas [Mon, 12 Jan 2009 02:58:53 +0000 (03:58 +0100)]
Yearly copyright bump :)
Marcus Eggenberger [Sun, 11 Jan 2009 19:49:37 +0000 (20:49 +0100)]
oops
Marcus Eggenberger [Sun, 11 Jan 2009 19:32:08 +0000 (20:32 +0100)]
You can now apply the current settings for hiding events like join or
quits as default settings.
Marcus Eggenberger [Sun, 11 Jan 2009 17:40:27 +0000 (18:40 +0100)]
the network item now shows the activity of the status buffer
Marcus Eggenberger [Sun, 11 Jan 2009 16:09:12 +0000 (17:09 +0100)]
properly resetting core lag on disconnect
Marcus Eggenberger [Sun, 11 Jan 2009 16:03:06 +0000 (17:03 +0100)]
Default identity is now created by the client, if no identity exists.
This has the benefit, that the identity is translated according to the client's language settings.
Marcus Eggenberger [Sun, 11 Jan 2009 15:47:13 +0000 (16:47 +0100)]
when renaming a buffer to a matching known irc user, the on/offline state is now displayed correctly
Manuel Nickschas [Sun, 11 Jan 2009 13:47:12 +0000 (14:47 +0100)]
Revert "Properly focus BufferView on first click"
Turns out that the side effect of the input line losing focus on bufferswitch
seems to be more confusing than the issue fixed by this commit, so I revert this.
This reverts commit
a35e9270e608bfbc5b21ba47d49b3139f06b13e9.
Manuel Nickschas [Sun, 11 Jan 2009 11:46:28 +0000 (12:46 +0100)]
InputLine now regains focus on keypress
Pressing any letter, number, or space will automatically focus the input line now.
This compensates for the fact that clicking in the BufferView now takes away focus :)
Fixes #47 and #221.
Manuel Nickschas [Sun, 11 Jan 2009 11:02:26 +0000 (12:02 +0100)]
Properly focus BufferView on first click
Now you don't need to click in a BufferView twice anymore to gain keyboard focus,
for example for hiding a buffer per pressing backspace.
Side-effect is that the input line loses focus now when clicking in the view (obviously),
but the next commmit focuses it automatically on key press, so it should be smooth that way.
Manuel Nickschas [Sun, 11 Jan 2009 00:03:16 +0000 (01:03 +0100)]
Don't make the user category item selectable in the nick list
Manuel Nickschas [Sat, 10 Jan 2009 23:42:00 +0000 (00:42 +0100)]
Enable multi-selection in nick list
This allows you, for example, to op/deop multiple users at once.
Manuel Nickschas [Sat, 10 Jan 2009 20:48:29 +0000 (21:48 +0100)]
Don't print quotes in usage()
Manuel Nickschas [Sat, 10 Jan 2009 20:38:47 +0000 (21:38 +0100)]
Reworking CliParser to allow building quasselcore always without KDE deps
Rather than hacking KDE support into CliParser using #ifdef (which forces all quassel binaries
to be built even with or without KDE support), I have now created an abstract base class and
specializations for the two cases. quasselcore now always builds without KDE deps.
Marcus Eggenberger [Fri, 9 Jan 2009 18:21:03 +0000 (19:21 +0100)]
Setting a proper minimum width for the settings treewidget according to it's content
Manuel Nickschas [Fri, 9 Jan 2009 16:50:28 +0000 (17:50 +0100)]
Handle multi-selections in BufferViews sanely.
This means that actions like hiding and deleting buffers now also work if multiple buffers
are selected. This is true for all displayed actions, i.e. you can hide events in multiple
buffers at once, or send CTCP commands to multiple nicks, etc.
(Finally) fixes #432.
Manuel Nickschas [Fri, 9 Jan 2009 08:40:15 +0000 (09:40 +0100)]
Don't allow deletion of active (joined) buffers
Marcus Eggenberger [Fri, 9 Jan 2009 02:28:00 +0000 (03:28 +0100)]
fixing cmake files
Marcus Eggenberger [Fri, 9 Jan 2009 02:24:22 +0000 (03:24 +0100)]
Quassel no longer gets a nervous breakdown when you select too many buffers - fixes #432
Manuel Nickschas [Wed, 7 Jan 2009 18:21:21 +0000 (19:21 +0100)]
More properly rename the 'Zoom Original' action, and remove shortcut for now as it collides with RTS
Kevin Funk [Tue, 6 Jan 2009 19:50:01 +0000 (20:50 +0100)]
Fix typo
Edward Hades [Tue, 23 Dec 2008 19:54:12 +0000 (22:54 +0300)]
Updated Russian translation.
Manuel Nickschas [Tue, 6 Jan 2009 19:18:29 +0000 (20:18 +0100)]
Updated Turkish translation, thanks to H. İbrahim Güngör
Marcus Eggenberger [Tue, 6 Jan 2009 19:43:26 +0000 (20:43 +0100)]
SignalProxy++ // now leaner and meaner than ever before!
Marcus Eggenberger [Tue, 6 Jan 2009 19:11:13 +0000 (20:11 +0100)]
fixing wrong usage of QList::erase(QList::iterator) (also for QHash)
Marcus Eggenberger [Tue, 6 Jan 2009 13:08:33 +0000 (14:08 +0100)]
fixing request -> receive sync calls
Marcus Eggenberger [Tue, 6 Jan 2009 00:16:21 +0000 (01:16 +0100)]
Internal cleanup of the SignalProxy.
Marcus Eggenberger [Mon, 5 Jan 2009 17:50:38 +0000 (18:50 +0100)]
separate status buffer item is now only available when the view is restricted to one network
Marcus Eggenberger [Mon, 5 Jan 2009 17:24:27 +0000 (18:24 +0100)]
don't display processing time for empty message list
Marcus Eggenberger [Mon, 5 Jan 2009 17:20:15 +0000 (18:20 +0100)]
bufferviews are now saved periodically
Marcus Eggenberger [Mon, 5 Jan 2009 13:18:07 +0000 (14:18 +0100)]
The new 'All Buffers' view is no properly presorted.
If you have a randomly sorted 'All Buffers' view, then create a new
one in the buffer view settings and delete the incorrectly sorted one.
Manuel Nickschas [Mon, 5 Jan 2009 13:00:20 +0000 (14:00 +0100)]
Notification backends now can emit a signal activated() that tells MainWin to raise itself
For now, this signal is emitted by systray, dbus and knotify. Unfortunately, raise() does not seem
to work with kwin and (according to docs) neither on Windows. Furthermore, my knotify seems
to be broken and doesn't signal a click at all. Thus, this whole thing got "limited" testing by me :)
Take it as "might work under some circumstances in some environments". Feedback welcome.
Marcus Eggenberger [Mon, 5 Jan 2009 01:29:01 +0000 (02:29 +0100)]
All Buffers is dead! Long live All buffers!
Manuel Nickschas [Sun, 4 Jan 2009 17:09:42 +0000 (18:09 +0100)]
Initialize _autoWidgetsChanged *cough*
Marcus Eggenberger [Sun, 4 Jan 2009 16:47:39 +0000 (17:47 +0100)]
fixing default indentation for bufferviews
Marcus Eggenberger [Sun, 4 Jan 2009 16:35:42 +0000 (17:35 +0100)]
The Monolithic build behaves now like a regular IRC client.
This is to make Quassel suitable for Kubuntu.
You currently cannot connect to a remote core with the monolithic
client. We investigate proper methods to make this possible again
without being uintuitive.
Marcus Eggenberger [Sun, 4 Jan 2009 15:52:21 +0000 (16:52 +0100)]
removing the sync dialog from mono build
Marcus Eggenberger [Sun, 4 Jan 2009 15:48:55 +0000 (16:48 +0100)]
Removing core related items from menu and statusbar