quassel.git
11 years agoReload stylesheet after changing it in the AppearanceSettingsPage
Manuel Nickschas [Wed, 29 Jul 2009 18:32:09 +0000 (20:32 +0200)]
Reload stylesheet after changing it in the AppearanceSettingsPage

11 years agoAllow reloading stylesheets at runtime
Manuel Nickschas [Wed, 29 Jul 2009 17:16:45 +0000 (19:16 +0200)]
Allow reloading stylesheets at runtime

We can now relayout the ChatScene using ChatScene::layout() and this is used whenever
UiStyle changes. This means that it's now possible to reload stylesheets at runtime and
reflect this in the ChatView without restarting the client.

11 years agoIntroduce a timer for resizing the ChatView
Manuel Nickschas [Wed, 29 Jul 2009 15:49:54 +0000 (17:49 +0200)]
Introduce a timer for resizing the ChatView

This allows for smooth resizing, as the layout is only calculated at most once every 100ms.

11 years agoRemove the word boundary cache
Manuel Nickschas [Wed, 29 Jul 2009 15:31:05 +0000 (17:31 +0200)]
Remove the word boundary cache

This removes the pre-calculation of word boundaries, which we used to speed up chatline height
computation.

This should also fix the wordwrap issues we had with some fonts.

11 years agoAdd configuration option for a custom stylesheet
Manuel Nickschas [Tue, 28 Jul 2009 22:02:19 +0000 (00:02 +0200)]
Add configuration option for a custom stylesheet

Configure -> Appearance now allows you to select a custom stylesheet that should be loaded.
This will override both the default stylesheet and the settings.qss containing your dialog-based
settings; it will be overridden by --qss specified on the command line.

11 years agoMove color and font settings to [Colors] and [Fonts]
Manuel Nickschas [Tue, 28 Jul 2009 21:21:11 +0000 (23:21 +0200)]
Move color and font settings to [Colors] and [Fonts]

Better to keep those separate, rather than lumping them together with all the rest
of the ChatView/__default__ stuff.

11 years agoIntroduce the new ChatViewSettingsPage
Manuel Nickschas [Tue, 28 Jul 2009 15:45:28 +0000 (17:45 +0200)]
Introduce the new ChatViewSettingsPage

This is supposed to group the ChatView-related settings in once place, including fonts
and colors. Oh, and you now also can configure the timestamp format :)

We've reduced the number of configurable colors, simply because more fancy stuff can and should
be done via stylesheets.
Note that the style settings, while stored, are still unbeknownst to the style
engine until we start actually generating stylesheets.

11 years agoMake timestamp configurable in the style engine
Manuel Nickschas [Tue, 28 Jul 2009 15:00:41 +0000 (17:00 +0200)]
Make timestamp configurable in the style engine

The style engine now reads the timestamp format string from the ChatView settings.
This means all that's missing now is a settingspage that offers an UI for changing
the string.

11 years agoMake the Settings caches flat structures
Manuel Nickschas [Tue, 28 Jul 2009 14:58:07 +0000 (16:58 +0200)]
Make the Settings caches flat structures

As settingspages tend to access values by absolute path (rather than by group and key),
we should use a flat hash rather than a nested tree structure, such that caching and
in particular the notifiers work with both the group/key combination and the absolute key.
This should also be slightly more efficient.

11 years agoLet SettingsPage handle FontSelector and ColorButton automatically
Manuel Nickschas [Mon, 27 Jul 2009 23:49:45 +0000 (01:49 +0200)]
Let SettingsPage handle FontSelector and ColorButton automatically

This means that SettingsPages can now handle both FontSelector and ColorButton automatically and
don't have to worry about tracking/saving/loading them. This should save us several hundred lines
of boilerplate code, and also some cute kittens.

I must reiterate that Qt's property system is worth a ton of bacon. At least.

11 years agoAdd a FontSelector widget
Manuel Nickschas [Mon, 27 Jul 2009 23:43:09 +0000 (01:43 +0200)]
Add a FontSelector widget

This handles a label, a demo frame, and a button to choose a font. It's not checkable
at the moment though.

FontSelector uses the property system, so it can be used conveniently.

11 years agoRevamp ColorButton
Manuel Nickschas [Mon, 27 Jul 2009 23:34:59 +0000 (01:34 +0200)]
Revamp ColorButton

Rather than requiring parent widgets using this to connect all sorts of signals and show the
color selection dialog themselves, move this into ColorButton itself, making it a
self-sufficient widget. Also, we're now using the Qt property system, and emit a
colorChanged() signal.

Oh, and we inherit from QToolButton now, which seems to be a saner choice on MacOSX and also
allows for nicer layouts on all platforms. Yes, we'll try and improve the looks later on, right
now it's just a crude QPixmap overlaying the button.

11 years agoDIE DIE DIE ColorSettingsPage
Manuel Nickschas [Mon, 27 Jul 2009 23:31:34 +0000 (01:31 +0200)]
DIE DIE DIE ColorSettingsPage

Finally getting rid of this mess. Most things didn't work anymore anyway
with the new style engine. We'll be setting colors more context-sensitively in the
future (e.g. set the colors for a widget in that widget's settings).

11 years agoMake text selection stylesheetable
Manuel Nickschas [Fri, 24 Jul 2009 04:06:40 +0000 (06:06 +0200)]
Make text selection stylesheetable

This adds a new [label="selected"] that you can use in stylesheets to determine how
a text selection should look like in ChatView (i.e. it's no longer hardcoded to the
"highlight" and "highlighted-text" Palette roles).

Note that you probably shouldn't do more than setting the selection colors globally for
ChatLine, as else the painting routines might do funky stuff.

11 years agoMerge rather than replace identical sections in QSS
Manuel Nickschas [Wed, 22 Jul 2009 23:13:51 +0000 (01:13 +0200)]
Merge rather than replace identical sections in QSS

11 years agoChange handling of message labels
Manuel Nickschas [Wed, 22 Jul 2009 22:12:07 +0000 (00:12 +0200)]
Change handling of message labels

Turns out that it seems to make more sense to apply labels after everything
else, so we can override all formats if a label is set. Also, this prepares
representing selections through message labels rather than special casing in paint().

As a sideeffect, I could simplify the code somewhat and remove duplication.

11 years agoCorrectly handle the font property "underline"
Manuel Nickschas [Wed, 22 Jul 2009 15:14:29 +0000 (17:14 +0200)]
Correctly handle the font property "underline"

11 years agoAdd debug menu entry for reloading the stylesheets
Manuel Nickschas [Thu, 25 Jun 2009 19:22:09 +0000 (21:22 +0200)]
Add debug menu entry for reloading the stylesheets

Hitting the Refresh key (commonly F5) will now reload the stylesheets
and repaint ChatViews. Use this to test color combination without restarting
the client all the time.

11 years agoUpdate ChatViews whenever the stylesheet is reloaded
Manuel Nickschas [Thu, 25 Jun 2009 19:18:59 +0000 (21:18 +0200)]
Update ChatViews whenever the stylesheet is reloaded

UiStyle now emits a signal when loadStyleSheet() (now a slot) is called.
ChatView reacts by invalidating the scene. Note that the ChatLines are not re-layouted,
which means that changes in font sizes and possibly styles might lead to a broken appearance.
This is primarily thought for testing color combinations without restarting the client
all the time.

11 years agoMake UiStyle a QObject
Manuel Nickschas [Thu, 25 Jun 2009 18:32:50 +0000 (20:32 +0200)]
Make UiStyle a QObject

That way we can use signals/slots with it, e.g. emit a signal upon changes in the
style.

11 years agoParse mIRC colors in stylesheets
Manuel Nickschas [Thu, 25 Jun 2009 18:17:13 +0000 (20:17 +0200)]
Parse mIRC colors in stylesheets

Use a condition like [fg-color="03"] or [bg-color="05"] to specify formats for
mIRC colors. We use this more verbose format (rather than adding extra attributes
to ChatLine instead, like "color-03: red;") to allow for maximum flexibility in
styling. The idea is to be able to specify formats e.g. for a particular combination
of foreground and background.

11 years agoRemove C-style comment lines from stylesheets
Manuel Nickschas [Thu, 25 Jun 2009 17:49:40 +0000 (19:49 +0200)]
Remove C-style comment lines from stylesheets

We also now remove all sections we parse and handle from the stylesheet
prior to handing it over to QApplication, so we can use incompatible extensions.

11 years agoAdd --qss parameter to load a custom stylesheet
Manuel Nickschas [Wed, 24 Jun 2009 07:44:38 +0000 (09:44 +0200)]
Add --qss parameter to load a custom stylesheet

Because there doesn't seem to be sane way to hijack Qt's -stylesheet parameter,
we introduce our own. This also allows us to add incompatible extensions to QSS,
because we can remove them before handing over the pre-parsed stylesheet to QApplication.
Note that -stylesheet is now ignored.

The style engine now loads $datadir/default.qss, $configdir/custom.qss and --qss "file.qss"
in that order. Later block declarations override earlier ones, if they are identical.
That way, you can override parts of the system-installed default.qss in your own configdir or
on the command line.

11 years agoParse format parameters in QSS
Manuel Nickschas [Wed, 24 Jun 2009 07:44:21 +0000 (09:44 +0200)]
Parse format parameters in QSS

Adds [format="$fmt"], where $fmt can be one of "bold", "italic",
"underline" and "reverse" corresponding to the respective mIRC format codes.

11 years agofix compile error on non-x86_64
Daniel Albers [Tue, 23 Jun 2009 14:36:48 +0000 (16:36 +0200)]
fix compile error on non-x86_64

11 years agoMake sender-hash based styling ("colored nicks") work again
Manuel Nickschas [Mon, 22 Jun 2009 19:54:35 +0000 (21:54 +0200)]
Make sender-hash based styling ("colored nicks") work again

Plain messages now obtain their format depending on the sender hash.
This can be used to implement colored nicks, but with our new style engine,
we can now solve several problems like using other colors for highlighted messages.

Note that the number of hashed is currently hard-coded to 16; waiting for a nice way
to make this number configurable in a stylesheet.

11 years agoFix QSS font handling
Manuel Nickschas [Sun, 21 Jun 2009 21:38:53 +0000 (23:38 +0200)]
Fix QSS font handling

This fixes some issues with merging font properties in stylesheets.
As a side-effect, we don't parse the "oblique" font style anymore, as this
is not a supported QTextFormat property.

11 years agoRemove highlight-color related settings from QtUiStyle[Settings]
Manuel Nickschas [Sun, 21 Jun 2009 19:58:18 +0000 (21:58 +0200)]
Remove highlight-color related settings from QtUiStyle[Settings]

Since we now use message labels for styling highlighted messages, it's no longer
necessary to have explicit options for this in QtUiStyle.

11 years agoMake backgrounds of ChatLines and ChatItems styleable
Manuel Nickschas [Sun, 21 Jun 2009 19:23:40 +0000 (21:23 +0200)]
Make backgrounds of ChatLines and ChatItems styleable

The background color (set by UiStyle) is now available in the MessageModel
via the BackgroundRole. It is used by the items to paint themselves, if it is
set by a stylesheet.

Message labels (so far, we support "highlight" and "own message") are also respected
properly. They can be accessed via the MsgLabelRole and are now used for accessing the style
engine.

11 years agoAdd a Contents subelement type to ChatLine
Manuel Nickschas [Thu, 18 Jun 2009 20:27:14 +0000 (22:27 +0200)]
Add a Contents subelement type to ChatLine

This allows independent styling of the contents part of a message,
equivalent to the Sender and Timestamp columns.

11 years agoMake UiStyle::styleString() and friends static
Manuel Nickschas [Thu, 18 Jun 2009 08:21:56 +0000 (10:21 +0200)]
Make UiStyle::styleString() and friends static

styleString() actually just converts our internal format codes into a list
of FormatTypes, which are only used as keys for getting a particular format from
a particular style. Hence, styleString() itself can be made static. Amongst other things,
this has the advantage that StyledMessage's lazy styling can be encapsulated properly, and
there is no need to externally ensure that the message has been styled.

11 years agoHandle all message types properly in UiStyle; eliminate msgtype format codes
Manuel Nickschas [Wed, 17 Jun 2009 06:50:27 +0000 (08:50 +0200)]
Handle all message types properly in UiStyle; eliminate msgtype format codes

Turned out we didn't handle all message types (as in Message::Type) in
UiStyle, e.g. the daychange message was treated like an error. Possibly this
also fixes the "daychange msg not translated" bug, but I haven't tested yet.

Also, styleString() now takes a base message format as optional parameter. This
eliminates the need to add the msgtype as one of the %Dx format codes in every message.
Accordingly, I've removed those format codes and added a mapping for Message::Type -> UiStyle::FormatType
instead that is used to set the initial format for a string to be styled.

Sorry translators, this touches most of the strings in UiStyle, so those will have to be updated.

11 years agoParse font properties in QSS
Manuel Nickschas [Sat, 13 Jun 2009 12:18:05 +0000 (14:18 +0200)]
Parse font properties in QSS

We now accept font, font-style, font-weight, font-size and font-family
for ChatLine in stylesheets.

11 years agoSwitch to lowercase for subelement and message types in QssParser
Manuel Nickschas [Thu, 11 Jun 2009 14:26:44 +0000 (16:26 +0200)]
Switch to lowercase for subelement and message types in QssParser

Lowercase seems to be the convention in stylesheet syntax, so we adhere to
that. Even though we do bend the original definitions of "subelement" and
"objectname" a bit to fit our purposes :)

11 years agoParse foreground and background for ChatLines
Manuel Nickschas [Thu, 11 Jun 2009 14:05:12 +0000 (16:05 +0200)]
Parse foreground and background for ChatLines

11 years agoActually start using the formats retrieved via QssParser
Manuel Nickschas [Thu, 11 Jun 2009 14:04:12 +0000 (16:04 +0200)]
Actually start using the formats retrieved via QssParser

11 years agoKill old non-stylesheet code from UiStyle
Manuel Nickschas [Mon, 8 Jun 2009 07:46:15 +0000 (09:46 +0200)]
Kill old non-stylesheet code from UiStyle

Remove stuff that has been commented out for a while now and/or is no longer used
within the new styleengine.
This also disables most of the colorsettingspage for now. Consider this dialog
dysfunctional, as it will be rewritten completely or probably even obsoleted soon.

11 years agoMove QssParser out of UiStyle
Manuel Nickschas [Tue, 9 Jun 2009 07:00:45 +0000 (09:00 +0200)]
Move QssParser out of UiStyle

After the design of the new styleengine is becoming clearer to me, I've decided
to move QssParser out of UiStyle into the global namespace (and its own pair of files).
QssParser has now adapted to the new message label concept, and can determine both
format code and message label from a ChatLine section header.

This is still mostly untested and quite unfinished work in progress.

11 years agoAdd preliminary label support to the style engine
Manuel Nickschas [Fri, 10 Apr 2009 15:55:10 +0000 (17:55 +0200)]
Add preliminary label support to the style engine

Labels are supposed to be used for things like highlights. We now support
up to 16 different labels for defining special format settings overriding
the stock ones. This is a more flexible approach than hardcoding, say, a background
color and will allow full styling even for highlights and possibly other special
messages. For example, nick coloring can be adjusted to the highlight color via
stylesheet (once stylesheet support arrives).

Also, rework the format merging code to be much easier and still more flexible.

11 years agoIntroducing QssParser
Manuel Nickschas [Thu, 26 Mar 2009 09:43:10 +0000 (10:43 +0100)]
Introducing QssParser

This parses our extensions to Qt stylesheets. So far, we can modify the
application palette as follows:

Palette {
  base: white;
  text: rgb(128, 128, 255);
  window-text: #12ffaa33;
  ...
}

The roles and brush/color definitions follow the Qt stylesheet syntax; note that
we allow for styling all of the palette roles (including things like tooltip-base,
which are not included in Qt's list of stylable roles).

11 years agoRework mergedFormats() to handle pre-set formats
Manuel Nickschas [Fri, 20 Mar 2009 21:01:36 +0000 (22:01 +0100)]
Rework mergedFormats() to handle pre-set formats

This allows us to seed the format cache with information from a stylesheet.
mergedFormats() now handles sensible combinations of pre-set values in order
to construct the requested format. For example, if the stylesheet sets a format
for the sender column in a highlighted message, this is now used to construct
derivations from that rather than using the hardcoded stock formats.

11 years agoInitialize UiStyle before MainWin such that the letter can properly use a modified...
Manuel Nickschas [Fri, 20 Mar 2009 20:59:09 +0000 (21:59 +0100)]
Initialize UiStyle before MainWin such that the letter can properly use a modified palette

11 years agoFixing a bug where the unread messages backlog requester wouldn't
Marcus Eggenberger [Tue, 4 Aug 2009 22:44:15 +0000 (00:44 +0200)]
Fixing a bug where the unread messages backlog requester wouldn't
fetch any backlog in certain cases. (Needs Core restart)

11 years agoFixes #742 - JOIN without parameters
Marcus Eggenberger [Sun, 26 Jul 2009 16:14:51 +0000 (18:14 +0200)]
Fixes #742 - JOIN without parameters

11 years agoFixes #741 - HTML escape characters in tooltips.
Marcus Eggenberger [Sun, 26 Jul 2009 16:08:39 +0000 (18:08 +0200)]
Fixes #741 - HTML escape characters in tooltips.
Thanks to lastic for suplying the patch!

11 years agoallow topic changes to be hidden
Daniel Albers [Wed, 22 Jul 2009 15:07:20 +0000 (17:07 +0200)]
allow topic changes to be hidden

adds message type Message::Topic

11 years agoFixes #692 - double escaping of backslashes when using Postgres
Marcus Eggenberger [Sun, 26 Jul 2009 16:04:03 +0000 (18:04 +0200)]
Fixes #692 - double escaping of backslashes when using Postgres
It is strongly recommended that Postgres users do upgrade to this version.

11 years agoMake ping timeouts and auto-WHO configurable
Manuel Nickschas [Tue, 21 Jul 2009 22:33:58 +0000 (00:33 +0200)]
Make ping timeouts and auto-WHO configurable

A new [Core]NetworkConfig object allows configuring global network parameters. This adds
a new settingspage (Misc -> Connection) that allows configuring the dreaded "active ping timeouts" that
hit some people, and also auto-WHO (tracking users' away status) can now be disabled or modified.

11 years agoAllow custom saving/loading of SettingsPage autowidgets
Manuel Nickschas [Tue, 21 Jul 2009 22:25:01 +0000 (00:25 +0200)]
Allow custom saving/loading of SettingsPage autowidgets

SettingsPages can automatically handle child widgets' contents (e.g. track changes,
load and save) if those have the properties "settingsKey" and "defaultValue" set. However,
sometimes widgets need to be saved to something else than a Settings object (e.g. a core config object).

You can now leave the settingsKey property empty for your autowidgets and reimplement
{save|load}AutoWidgetValue() in your derived SettingsPage to handle custom saving and loading.

11 years agoChange version string to be more intuitive
Manuel Nickschas [Wed, 15 Jul 2009 23:15:05 +0000 (01:15 +0200)]
Change version string to be more intuitive

Having 0.4.0+ for git master confuses users. So let's use a version string like
v0.5-pre (0.4.0+198 git-dee6c47*) instead, which still gives us all the information
and is less confusing.

Version is obtained from version.inc.

11 years agoProperly handle unlimited IRC reconnection retries
Manuel Nickschas [Wed, 15 Jul 2009 22:08:52 +0000 (00:08 +0200)]
Properly handle unlimited IRC reconnection retries

Fixes #743. Also, do the first reconnect retry immediately after disconnect
even with unlimited retries enabled.

11 years agoBump inxi script to current version
Manuel Nickschas [Wed, 15 Jul 2009 18:14:23 +0000 (20:14 +0200)]
Bump inxi script to current version

11 years agoAdd GPL header to mpris script
Manuel Nickschas [Wed, 15 Jul 2009 18:08:23 +0000 (20:08 +0200)]
Add GPL header to mpris script

Ack'd by the author.

11 years agoUse 48x48 icons for the toolbar
Manuel Nickschas [Tue, 14 Jul 2009 20:51:19 +0000 (22:51 +0200)]
Use 48x48 icons for the toolbar

With KDE, one might scale icons up to 48x48, and with non-KDE, the theme default
might be larger than 22x22 as well. So we use the larger icons (which will be scaled down
to the correct size anyway).

11 years agoSync oxygen icons to upstream KDE
Manuel Nickschas [Thu, 25 Jun 2009 19:28:11 +0000 (21:28 +0200)]
Sync oxygen icons to upstream KDE

11 years agoUse KToolBar instead of QToolBar for KDEified Quassel
Manuel Nickschas [Tue, 14 Jul 2009 20:25:21 +0000 (22:25 +0200)]
Use KToolBar instead of QToolBar for KDEified Quassel

This basically gives you the common context menu to change icon size and if/where to
display the texts. It also should honor your global appearance setting by default.

11 years agoImprove MainWindow state save/restore
Manuel Nickschas [Tue, 14 Jul 2009 20:20:05 +0000 (22:20 +0200)]
Improve MainWindow state save/restore

Rather than tracking the visibility manually, we now make sure that the window state is saved
before the window is hidden, i.e. not in aboutToQuit() which is already too late for that.
Instead of calling QApplication::quit(), we use our new slot MainWin::quit() which saves the window
layout first.

For KDEified Quassel, we now use KMainWindow's autosave feature rather than using QMainWindow::restoreState().
This might fix some issues with multiple desktops etc, though I haven't tested that. In any case it's cleaner
as it saves additional properties (e.g. toolbar state).

11 years agoSet bugtracker address in KAboutData
Manuel Nickschas [Mon, 13 Jul 2009 17:39:41 +0000 (19:39 +0200)]
Set bugtracker address in KAboutData

This should tell DrKonqui where to report bugs for Quassel.
Thanks to Dario Andres for reporting this.

11 years agoFixes #682 - Core crashes on client connection
Marcus Eggenberger [Sun, 12 Jul 2009 13:16:49 +0000 (15:16 +0200)]
Fixes #682 - Core crashes on client connection
Big thanks to seezer for debuging and researching!

11 years agoSmall update to my bundling script for Mac OS X.
Marcus Eggenberger [Sun, 12 Jul 2009 13:13:42 +0000 (15:13 +0200)]
Small update to my bundling script for Mac OS X.

11 years agoFixes #691 - missing messages when using unread message requester
Marcus Eggenberger [Sun, 28 Jun 2009 15:11:00 +0000 (17:11 +0200)]
Fixes #691 - missing messages when using unread message requester

11 years agoFixes bug #715 - multiple targets in PRIVMSG and NOTICE
Marcus Eggenberger [Sun, 28 Jun 2009 14:39:47 +0000 (16:39 +0200)]
Fixes bug #715 - multiple targets in PRIVMSG and NOTICE

11 years agoAn attempt to fix #682 - core crash on client connect when using ssl.
Marcus Eggenberger [Sun, 28 Jun 2009 14:08:12 +0000 (16:08 +0200)]
An attempt to fix #682 - core crash on client connect when using ssl.
As I'm unable to reproduce this bug, I'm just following a hunch here.
Please let me know if it helps. seezer: ping!

11 years agoHelping Postgres' Query Planer.
Marcus Eggenberger [Fri, 26 Jun 2009 08:31:33 +0000 (10:31 +0200)]
Helping Postgres' Query Planer.
Note: this does not guarantee, that issues with Postgres are resolved
for everyone. These changes produced very good results in a couple of
test series. Let me know how they work out for you.

11 years agoFixes #572 - changes to nick coloring
Marcus Eggenberger [Tue, 9 Jun 2009 20:28:54 +0000 (22:28 +0200)]
Fixes #572 - changes to nick coloring
Nick color is now determined case insensitive, based only on the nick,
and ignored trailing underscores.

11 years agoInitialize variables
Manuel Nickschas [Mon, 8 Jun 2009 20:46:24 +0000 (22:46 +0200)]
Initialize variables

11 years agoFixes Bug #711 - missing nicks after changing channelmodes (op, voice,...)
Marcus Eggenberger [Sun, 7 Jun 2009 21:38:30 +0000 (23:38 +0200)]
Fixes Bug #711 - missing nicks after changing channelmodes (op, voice,...)

11 years agoAllow to fetch larger-than-1000-line chunks of backlog dynamically
Manuel Nickschas [Sun, 7 Jun 2009 15:51:15 +0000 (17:51 +0200)]
Allow to fetch larger-than-1000-line chunks of backlog dynamically

11 years agoAdd ^ to vali url chars
Sebastian Goth [Mon, 1 Jun 2009 10:25:53 +0000 (12:25 +0200)]
Add ^ to vali url chars

11 years agoFix restoring maximized state at restart on Windows
Manuel Nickschas [Tue, 26 May 2009 20:40:55 +0000 (22:40 +0200)]
Fix restoring maximized state at restart on Windows

11 years agoMore windowstate-related changes
Manuel Nickschas [Tue, 26 May 2009 08:25:35 +0000 (10:25 +0200)]
More windowstate-related changes

* Properly save/restore state to/from session
* Fix minimize on close on Windows, fixes #703
* Various tweaks, hoping to solve the remaining issues with that

Please test if you had problems with window behavior before, and get back to me.

11 years agoRemove "Minimize on minimize" setting
Manuel Nickschas [Tue, 26 May 2009 08:24:10 +0000 (10:24 +0200)]
Remove "Minimize on minimize" setting

This is no longer needed because you can now hide Quassel by clicking the
tray icon. The minimize button should always, well, minimize an application, and we
required a hack to intercept that before. So it's gone now.

11 years agoAlt-A
Marcus Eggenberger [Thu, 21 May 2009 20:00:32 +0000 (22:00 +0200)]
Alt-A

11 years agonew internal hot buffers list
Marcus Eggenberger [Thu, 21 May 2009 19:17:25 +0000 (21:17 +0200)]
new internal hot buffers list

11 years agoProperly flushing buffers after all backlog was received.
Marcus Eggenberger [Thu, 21 May 2009 15:59:37 +0000 (17:59 +0200)]
Properly flushing buffers after all backlog was received.
This fixes a bug where it seems to be impossible to delete a buffer.

11 years agoOverlayFilter no longer filters whole networks unnecessarily out
Marcus Eggenberger [Thu, 21 May 2009 14:48:35 +0000 (16:48 +0200)]
OverlayFilter no longer filters whole networks unnecessarily out

11 years agoNew FlatProxyModel
Marcus Eggenberger [Thu, 21 May 2009 14:47:51 +0000 (16:47 +0200)]
New FlatProxyModel
A ProxyModel that flattens a treelike model in preorder.

11 years agoimproved debugging facilities for the bufferview overlay
Marcus Eggenberger [Sun, 12 Apr 2009 19:53:20 +0000 (21:53 +0200)]
improved debugging facilities for the bufferview overlay

11 years agominor refactoring on how backlog requests are triggered
Marcus Eggenberger [Fri, 10 Apr 2009 23:01:46 +0000 (01:01 +0200)]
minor refactoring on how backlog requests are triggered

11 years agoFilter some unicode control codes out of IRC messages
Manuel Nickschas [Tue, 19 May 2009 00:28:49 +0000 (02:28 +0200)]
Filter some unicode control codes out of IRC messages

U+FDD0 and U+FDD1 are for internal Qt use and might screw up some Qt widgets if used
inappropriately. Hence, we filter them out of incoming messages.

Thanks to Sho_ and the Konversation team for the heads-up!

11 years agoDisable crashhandler if coredumps are enabled
Daniel Albers [Mon, 18 May 2009 22:29:33 +0000 (00:29 +0200)]
Disable crashhandler if coredumps are enabled

Fixes #673.

11 years agoUpdated Norwegian Bokmaal translation
Terje Andersen [Mon, 18 May 2009 22:03:41 +0000 (00:03 +0200)]
Updated Norwegian Bokmaal translation

11 years agoSome build system fixes
Manuel Nickschas [Mon, 18 May 2009 21:21:03 +0000 (23:21 +0200)]
Some build system fixes

* Require Qt >= 4.4.1 for client/mono builds, as older versions cause crashes
* Don't require Qt's image libraries for quasselcore

11 years agoTranslation of few more strings
Tomas Chvatal [Sat, 16 May 2009 14:01:13 +0000 (16:01 +0200)]
Translation of few more strings

11 years agofix denying a large paste
Henning Rohlfs [Sat, 16 May 2009 11:32:10 +0000 (13:32 +0200)]
fix denying a large paste

11 years agoFix 512 byte limit protection
Manuel Nickschas [Thu, 14 May 2009 22:14:58 +0000 (00:14 +0200)]
Fix 512 byte limit protection

Fixes #685.

11 years agoProperly save and restore the mainwindow state
Manuel Nickschas [Wed, 13 May 2009 21:16:27 +0000 (23:16 +0200)]
Properly save and restore the mainwindow state

We now save size, position, maximize, minimize and hidden-to-tray on exit
and restore it at next start. Since Qt's restoreState() has some issues, I had
to workaround things a bit, so please test on your system and report if there are
still problems with the current implementation!

Fixes #677, fixes #452 (since the state is remembered, so just quit Quassel using the
tray context menu while it's hidden).

11 years agoMake SessionSettings derive from UiSettings
Manuel Nickschas [Tue, 12 May 2009 06:59:47 +0000 (08:59 +0200)]
Make SessionSettings derive from UiSettings

In order to avoid code duplication, we'll want to be able to put mainwin state
saving/restoring into methods taking an UiSettings object. Hence, we'll let SessionSettings
inherit from UiSettings rather than ClientSettings, and virtualize the accessors.

Also kill the separate sessionsettings.* files, as we want to centralize the various settings
objects into common files.

11 years agoInclude current nick for highlight checking if "All nicks" is chosen
Manuel Nickschas [Mon, 11 May 2009 06:50:59 +0000 (08:50 +0200)]
Include current nick for highlight checking if "All nicks" is chosen

Fixes #676.

11 years agoMake behavior of input line history a bit more intuitive
Manuel Nickschas [Fri, 8 May 2009 21:15:42 +0000 (23:15 +0200)]
Make behavior of input line history a bit more intuitive

Pressing enter will append the current text to the input line history even if an earlier
entry was selected before. This is the behavior in any shell known to man, thus expected :)

Finally closes #655.

11 years agoFix problems with phonon media playback
Manuel Nickschas [Thu, 7 May 2009 19:52:11 +0000 (21:52 +0200)]
Fix problems with phonon media playback

Suggested by Squider, thanks! Fixes #679.

11 years agoProperly handle multiple spaces in a row in msgs sent by (faulty?) ircds
Manuel Nickschas [Thu, 7 May 2009 18:53:14 +0000 (20:53 +0200)]
Properly handle multiple spaces in a row in msgs sent by (faulty?) ircds

Fixes #681.

11 years agoHandle ircd reply 328 (channel homepage)
Manuel Nickschas [Thu, 7 May 2009 18:07:46 +0000 (20:07 +0200)]
Handle ircd reply 328 (channel homepage)

11 years agoHandle ircd reply 329 (channel creation time)
Manuel Nickschas [Thu, 7 May 2009 18:01:09 +0000 (20:01 +0200)]
Handle ircd reply 329 (channel creation time)

The warning to implement this has been around for over a year now, just because
nobody ever bothered to finally stab those few lines into the core :)

11 years agoFixed gender-specific language and some punctuation mistakes in the Russian translation
Maia Kozheva [Sun, 3 May 2009 08:51:39 +0000 (15:51 +0700)]
Fixed gender-specific language and some punctuation mistakes in the Russian translation

11 years agoFixed some indentation issues (and a typo).
Sjors Gielen [Wed, 6 May 2009 23:53:30 +0000 (01:53 +0200)]
Fixed some indentation issues (and a typo).

11 years agoSelect highlighted channel on clicking the blinking tray icon in all cases
Manuel Nickschas [Thu, 7 May 2009 17:27:57 +0000 (19:27 +0200)]
Select highlighted channel on clicking the blinking tray icon in all cases

This was partially broken for KDEified Quassel.

11 years agoRemove input line margin
Manuel Nickschas [Mon, 27 Apr 2009 20:32:31 +0000 (22:32 +0200)]
Remove input line margin

11 years agoSystray icon improvements
Manuel Nickschas [Mon, 27 Apr 2009 18:38:19 +0000 (20:38 +0200)]
Systray icon improvements

* Hide rather than minimize the MainWin on click (this is standard behavior)
* Bring window to front if it's obscured by other windows, rather than minimize it
  This works with KDE integration and on Windows only. Sorry pure Qt users, but I don't
  feel like reimplementing the X11 voodoo required for finding out our state :/
* Properly restore the old position after unhiding the window
* Select highlighted buffer if a highlight is pending
* Fix some corner cases where minimize/restore failed before

Kudos to the KSystemTrayIcon developers for showing me how to stab some manners into window managers :)

11 years agoAdd Fabiano Francesconi (Italian translator) to AboutDlg
Manuel Nickschas [Mon, 27 Apr 2009 15:28:12 +0000 (17:28 +0200)]
Add Fabiano Francesconi (Italian translator) to AboutDlg