Commit Graph

2282 Commits (9b0c6ddef32e86c740654de04ba5ab6286828287)

Author SHA1 Message Date
Script Kiddy 6e544c93ff SVN_SILENT made messages (.desktop file) 2013-01-05 08:24:47 +01:00
Martin Gräßlin 4024c3cb13 Fix broken extended border bottom in Aurorae
Swapped top/bottom.
2013-01-04 15:25:08 +01:00
Script Kiddy d6dd4308db SVN_SILENT made messages (.desktop file) 2013-01-03 07:40:00 +01:00
Martin Gräßlin 533d57da60 Mark most ctors as explicit as reported by Krazy2 checker 2013-01-02 18:35:46 +01:00
Christophe Giboudeaux e79997c9bf Add a fixme 2013-01-01 15:01:16 +01:00
Martin Gräßlin a9bec311c2 Extended Border support in Aurorae
Aurorae Themes can make use of the extended borders feature to allow
resizing outside the window decoration area. So far only Plastik makes
use of it in the Tiny border case.

This should be extended in future by adding generic NoSideBorders and
NoBorders sizes as used by Oxygen.

FEATURE: 308992
FIXED-IN: 4.11
REVIEW: 107936
2012-12-30 09:54:43 +01:00
Script Kiddy 12f341712c SVN_SILENT made messages (.desktop file) 2012-12-24 09:05:36 +01:00
Script Kiddy d7316b9fcb SVN_SILENT made messages (.desktop file) 2012-12-23 08:01:50 +01:00
Script Kiddy ef0cae8dab SVN_SILENT made messages (.desktop file) 2012-12-18 15:28:22 +01:00
Script Kiddy a2472524c2 SVN_SILENT made messages (.desktop file) 2012-12-17 07:49:07 +01:00
Thomas Lübking 2f80548304 defer all member destruction to next event cycle
BUG: 311018
FIXE-IN: 4.10
2012-12-14 22:36:40 +01:00
Script Kiddy dda5cbea69 SVN_SILENT made messages (.desktop file) 2012-12-13 07:29:15 +01:00
Script Kiddy 974e0e9c7d SVN_SILENT made messages (.desktop file) 2012-12-09 07:14:36 +01:00
Script Kiddy a5bec484f6 SVN_SILENT made messages (.desktop file) 2012-12-05 07:19:24 +01:00
Script Kiddy 49a373b681 SVN_SILENT made messages (.desktop file) 2012-12-01 08:03:43 +01:00
Script Kiddy 5fc8da9ad7 SVN_SILENT made messages (.desktop file) 2012-11-30 07:40:50 +01:00
Script Kiddy 5a9a6d3b8a SVN_SILENT made messages (.desktop file) 2012-11-28 07:36:20 +01:00
Hugo Pereira Da Costa 6ec1e49e92 Extend window border to the masked rounded corners in non compositing mode
CCBUG: 230013
2012-11-26 10:57:23 +01:00
Hugo Pereira Da Costa 2023fb58f4 Fixed writting of configuration so that hidden options are not overridden by default values. 2012-11-16 11:59:58 +01:00
Montel Laurent 2ed928b5f4 Fix compile with strict iterator 2012-11-15 07:52:49 +01:00
Hugo Pereira Da Costa 6db2407334 Added hidden option to disable extended window borders. 2012-11-11 13:15:47 +01:00
Script Kiddy b2bf54f859 SVN_SILENT made messages (.desktop file) 2012-11-11 06:50:24 +01:00
Hugo Pereira Da Costa f4cdf47c93 implemented extended border region for oxygen 2012-11-09 18:05:25 +01:00
Cedric Bellegarde 53ae2b91e2 GUI: Kwin appmenu support:
- Add support for application menu button in Kwin
- Add kded appmenu configuration in kcm_style
2012-11-09 13:44:50 +01:00
Martin Gräßlin 9308028fa4 Decoration can announce whether it currently requires an alpha channel
A decoration can provide the AbilityAnnounceAlphaChannel in addition to
AbilityUsesAlphaChannel. If this ability is provided the decoration can
enable/disable the use of the alpha channel through setAlphaEnabled().

The base idea behind this mechanism is to be able to tell the compositor
that currently alpha is not needed. An example is the maximized state in
which the decoration is fully opaque so that there is no need to use the
translucency code path which would render all windows behind the deco.

In addition also the blur effect honors this setting so that behind a
known opaque decoration no blurring is performed.

Oxygen is adjusted to disable translucency in maximized state and Aurorae
is adjusted to allow themes to enable/disable translucency. For Plastik
translucency and with that also blurring is disabled.

REVIEW: 106810
2012-11-09 10:36:43 +01:00
Hugo Pereira Da Costa d5326ea461 change std::vector into QList and updated code accordingly.
Fixed compilation warnings.
2012-11-04 20:54:22 +01:00
Script Kiddy 21463a9a91 SVN_SILENT made messages (.desktop file) 2012-11-04 06:38:24 +01:00
Hugo Pereira Da Costa 15b51db1ab oxygenlistmodel: Added "contains" method to generic model, to check index validity better.
oxygenexceptionlistwidget: better check index validity in "edit" method. Also update buttons status after removing items, since
apparently selectionChanged signal is not sent by Qt.

CCBUG: 309388
2012-11-01 19:13:16 +01:00
Script Kiddy 17ddc517b7 SVN_SILENT made messages (.desktop file) 2012-10-29 09:53:30 +01:00
Script Kiddy a8a16c65d3 SVN_SILENT made messages (.desktop file) 2012-10-26 13:27:19 +02:00
Martin Gräßlin a85ff67deb QML Plastik as fallback for incorrectly configured Aurorae
If a theme is configured which does not exist, Aurorae will load the
Plastik theme which is known to be around.
2012-10-25 11:18:53 +02:00
Martin Gräßlin 18acfc4436 Plastik theme for Aurorae replaces the classic Plastik
* Update script to migrate Plastik users to Aurorae
* Plastik QML renamed to Plastik
* Old Plastik is dropped
2012-10-25 11:18:52 +02:00
Martin Gräßlin ae99d9bc6e Fix initial button flickering in Plastik QML
Disable animations till the decoration is completel loaded. This
ensures that the buttons do not flicker because of the animation from
black to their respective color.
2012-10-25 11:18:52 +02:00
Martin Gräßlin 728b47ef07 Use a Component for Explicit Spacers
A component has the advantage that the width property can depend from
other properties. This does not work with the previous on the fly
construction as the width does not update when the referenced property
changes.
2012-10-25 11:18:52 +02:00
Script Kiddy 2141dc821b SVN_SILENT made messages (.desktop file) 2012-10-16 18:43:37 +02:00
Martin Gräßlin 777513a0c8 Merge branch 'KDE/4.9'
Conflicts:
	ksmserver/themes/contour/metadata.desktop
	ksmserver/themes/default/metadata.desktop
	kwin/kcmkwin/kwinscripts/kwinscripts.desktop
	kwin/scripts/videowall/metadata.desktop
	kwin/tabbox/qml/clients/compact/metadata.desktop
	kwin/tabbox/qml/clients/present_windows/metadata.desktop
	plasma/desktop/containments/desktop/plasma-containment-desktop.desktop
	plasma/generic/applets/system-monitor/plasma-applet-sm_hdd_activity.desktop
	plasma/generic/runners/nepomuksearch/plasma-runner-nepomuksearch.desktop
	plasma/generic/runners/places/plasma-runner-places.desktop
	plasma/generic/runners/webshortcuts/plasma-runner-webshortcuts.desktop
	powerdevil/kcmodule/activities/powerdevilactivitiesconfig.desktop
	powerdevil/kcmodule/global/powerdevilglobalconfig.desktop
	powerdevil/kcmodule/profiles/powerdevilprofilesconfig.desktop
2012-10-12 07:59:22 +02:00
Martin Gräßlin 798ccac19d Remove margins for decoration-maximized elements
Fixes incorrect rendering of decorations providing a maximized element.
BUG: 308248
FIXED-IN: 4.9.3
2012-10-12 07:47:07 +02:00
Script Kiddy c129dc2d63 SVN_SILENT made messages (.desktop file) 2012-10-11 10:01:52 +02:00
Martin Gräßlin 49cce8dede Build option to disable the Oxygen window decoration
This build option is added to make it easier to build just KWin without
kde-workspace. This is a common requirement by developers wanting to
contribute to KWin and only want to build KWin but use everything else
from their normal distribution.

Building KWin standalone is very often difficult due to Oxygen. If the
library has changed it is not possible to build just KWin without also
building the workspace libs and if you do so you run into ABI problems
when trying to start KWin - either the decoration or the style is
crashing due to not matching libraries.

To circumvent this common issue for new developers this build option
is introduced to just exclude the Oxygen window decoration and defaulting
to Plastik.

Of course by default this option is turned ON, so that the Oxygen
decoration gets build. By default there is no change at all.

REVIEW: 106303
2012-10-04 17:09:39 +02:00
Script Kiddy 5cd15e8920 SVN_SILENT made messages (.desktop file) 2012-10-01 10:36:58 +02:00
Script Kiddy 8c38be18b7 SVN_SILENT made messages (.desktop file) 2012-09-29 11:37:39 +02:00
Martin Gräßlin 9f8228bb1c Merge branch 'KDE/4.9' 2012-09-27 15:35:36 +02:00
Martin Gräßlin 049582536a Fix enabled borders and padding for maximized Aurorae decos
In the maximized state the enabled borders were still enabled causing
the actual borders to be still shown. In addition the padding is not
adjusted to be 0. This is done in the C++ part is it does not make any
sense to have shadows being thrown to another screen for a maximized
window.

REVIEW: 106576
BUG: 307365
FIXED-IN: 4.9.2
2012-09-27 15:34:32 +02:00
Script Kiddy cb86f3e0f5 SVN_SILENT made messages (.desktop file) 2012-09-20 10:06:35 +02:00
Script Kiddy 203a9c1838 SVN_SILENT made messages (.desktop file) 2012-09-19 01:16:25 +02:00
Script Kiddy 31464244e1 SVN_SILENT made messages (.desktop file) 2012-09-18 19:14:07 +02:00
Script Kiddy f161331b1e SVN_SILENT made messages (.desktop file) 2012-09-02 10:37:09 +02:00
Script Kiddy 62ef8ddcad SVN_SILENT made messages (.desktop file) 2012-09-01 11:00:30 +02:00
Martin Gräßlin 4812edc92d Ignore SettingsCompositing changed in Aurorae
Not needed and causing troubles when restarting Compositing.
2012-09-01 10:02:17 +02:00
Script Kiddy c4d6cd3cf7 SVN_SILENT made messages (.desktop file) 2012-08-30 10:53:23 +02:00
Hugo Pereira Da Costa a93f71ab57 properly deal with invalid colors when calculating cache keys.
using color.rgba() for an invalid color corresponds to solid black, which in turns conflicts with the cache
value for such color. We use "transparent black" instead.
CCBUG: 304868
2012-08-29 14:53:40 +02:00
Hugo Pereira Da Costa e06ca2e82c properly deal with invalid colors when calculating cache keys.
using color.rgba() for an invalid color corresponds to solid black, which in turns conflicts with the cache
value for such color. We use "transparent black" instead.
CCBUG: 304868
2012-08-29 14:51:14 +02:00
Script Kiddy 9fb338ccd5 SVN_SILENT made messages (.desktop file) 2012-08-28 18:59:14 +02:00
Hugo Pereira Da Costa e248577c37 Fixed positioning of tabs when manually reordering with right mouse button
Made 'drop target' animation consistent with where tab is actually dropped
Cleanup code.
CCBUG: 305443
2012-08-28 09:27:57 +02:00
Hugo Pereira Da Costa 08e9acae0d Fixed positioning of tabs when manually reordering with right mouse button
Made 'drop target' animation consistent with where tab is actually dropped
Cleanup code.
CCBUG: 305443
2012-08-28 09:26:04 +02:00
Hugo Pereira Da Costa f28d4ef91a Added Option to enable window close on menu double click.
CCBUG: 305738
2012-08-27 23:00:44 +02:00
Hugo Pereira Da Costa 6efd6bc702 fixed indentation. 2012-08-27 23:00:32 +02:00
Martin Gräßlin d81df32a4f Support for Plastik's configuration options
Adding a KConfigXT xml file and an ui file to configure the QML
variant of Plastik.

Currently supported options:
* title alignment
* title shadow
* animation of buttons

Missing option:
* colored borders
2012-08-26 20:59:37 +02:00
Martin Gräßlin 8de1fea67e Option to disable window close on menu double click in Aurorae
For each theme the setting can be enabled individually with the
default being enabled by default. It is completely handled
inside the MenuButton QML component so each QML theme benefits
from the option automatically, too.

BUG: 301327
FIXED-IN: 4.10
REVIEW: 106160
2012-08-26 20:56:19 +02:00
Martin Gräßlin 8d55d9fa21 Use DecorationOptions in Aurorae themes
Instead of injection the Factory as a context property into the
Aurorae QML file the new DecorationOptions is used.
2012-08-26 20:56:19 +02:00
Martin Gräßlin 459da3ea44 Port of Plastik decoration to QML
The Plastik decoration buttons are provided by a declarative
extension plugin as the canvas drawing API would be needed to
draw these buttons. This should be changed with Qt 5.

But it's also a nice example to show how a QML based decoration
can have an extension in C++.
2012-08-26 20:56:19 +02:00
Martin Gräßlin ce2b251c9b Support for config values in QML decorations
When the decoration is reset a signal is emitted that the config
might have changed which the decoration can connect to for
reloading its configuration. For this an invokable method is
added to Aurorae allowing to read a config value which just
returns the QVariant.

Proper support for border sizes are added by providing the enum
in DecorationOptions, so that QML themes can use the enum values
to decide which border size to use.

The kcm is adjusted to also support these config mechanisms and
to properly load and save the border sizes for QML based themes.
2012-08-26 20:56:19 +02:00
Martin Gräßlin 13993a6efb Properly reset Aurorae decorations when theme changes
On change of theme recreate all decorations and create a new
declarative engine and component which is basically a re-init
of the Factory.

There are too many differences between themes - especially when
switching between an old SVG based Aurorae and a new QML based
Aurorae theme.
2012-08-26 20:56:19 +02:00
Martin Gräßlin 673dcd6ad3 Declarative extension plugin for window decorations
The generic QML components from Aurorae are split out into an
own declarative plugin. In addition two new helper classes are
added to this plugin:
* A ColorHelper to map a few function of KColorSheme and making
  it possible to actually work with colors in QML. The need
  emerged from trying to port Plastik to QML which makes strong
  use of color shading.
* A DecorationOptions class which is a wrapper around KWin's
  KDecorationOptions but in a more useable way for QML. The
  various options are provided as properties and the value of
  the properties changes automatically depending on whether the
  decoration is active or inactive.

Aurorae itself is not yet adjusted to these changes, but it
should also be adjusted as some of the options are currently
exported in the factory and the factory is injected into the
Aurorae QML decoration.
2012-08-26 20:56:19 +02:00
Martin Gräßlin 5923086d1f Basic QML theme support in Aurorae
Aurorae can load QML themes from Plasma package structures.
Code not yet tested as there are no packages yet.
2012-08-26 20:56:19 +02:00
Martin Gräßlin fb01e4ab8c Ensure that titleHeight is at least height of buttons
Required to properly lay out the title in case of vertical or
bottom alignment.

BUG: 304822
FIXED-IN: 4.9.1
REVIEW: 105937
2012-08-17 20:39:17 +02:00
Martin Gräßlin 85f31b1310 Honor the decoration font in Aurorae
Adding two properties to the AuroraeFactory to read the active
and inactive title font.

BUG: 304791
FIXED-IN: 4.9.1
REVIEW: 105956
2012-08-17 17:45:56 +02:00
Martin Gräßlin 874fccacd5 Delay maximize operation by one event cycle
The result of maximizing a window might be the decoration
going away. Because of that we need to delay the handling of
maximize and title bar double click by one cycle as had been
done for other close operations in 0fea5325

BUG: 304870
FIXED-IN: 4.9.1
REVIEW: 105961
2012-08-10 16:52:53 +02:00
Martin Gräßlin 46441998a3 Do not accept left mouse press events on titlebar in Aurorae
Accepting the mouse events breaks moving the window by dragging
the title bar. The reason is that it eats the mouse event and
by that never reaches KWin core to perform the movement.

Other mouse buttons need to be accepted for handling the window
operations. Also we need to listen in general to left mouse
button for the double click operation.

BUG: 304249
FIXED-IN: 4.9.1
REVIEW: 105784
2012-08-02 10:50:21 +02:00
Martin Gräßlin 5c7d046d13 Install event filter on Aurorae Decoration to handle WheelEvents
Unfortunately QtQuick 1 does not provide a way to receive Wheel
events. But the window decoration needs to pass wheel events on
the titlebar to KWin core.

In order to process also Wheel Events in Aurorae an event
filter is installed on the widget and in case the mouse positon
is on the title bar the titlebarMouseWheelOperation is invoked.

BUG: 304248
FIXED-IN: 4.9.1
REVIEW: 105801
2012-08-02 10:49:06 +02:00
Hugo Pereira Da Costa 6effa63296 added suffix (px) to shadow spinboxes. 2012-07-20 14:53:29 +02:00
Martin Gräßlin 5517d4db2c Delay closing of a window by one event cycle
This is an issue we already had in the past with Aurorae. When
closing a window the graphics scene crashes because the deco
gets destroyed before the code in the graphics scene finished
the execution.

With the port to QML this seemed to be fixed unless as it turns
out it throws an XIO error on closing:
fatal IO error 11 (Resource temporarily unavailable) on X server ":0"

This can be triggered using glxgears. Closing glxgears would
reliable crash Aurorae. To circumvent this issue we have to
delay the close by one event cycle using QMetaObject's
invokeMethod with a Qt::QueuedConnection.

This has also to be done in the useractions menu as the menu
is still open when the window closes causing the same problem
inside Aurorae.

BUG: 303450
FIXED-IN: 4.9.0
Reviewed-By: Thomas Lüking
2012-07-14 11:11:02 +02:00
Martin Gräßlin e868ed8999 Do not use States and Transitions in QML of Aurorae
According to Nuno it's much better to define the animations in
a Behavior element as that is together with the element which
gets animated.

Also he recommends to not use states but just property binding
for the properties which are animated in the Behavior.

And I must admit that this produces cleaner code, though the
conditions are now scattered all over the source code and not
nicely put together in one state section. Let's just hope I got
the logic right.

Well seems like it is useful to go to a QML training, at least
it made me aware of my State definitions are not good and then
talking to Nuno and giving a try to his recommendations.

REVIEW: 105426
2012-07-05 15:22:57 +02:00
Script Kiddy 953d088b6a SVN_SILENT made messages (.desktop file) 2012-06-12 17:07:51 +02:00
Hugo Pereira Da Costa 46d0116dd5 Added hidden configuration option to enable/disable closing windows by clicking on menu button.
Option is called "CloseFromMenuButton"
It is false by default.
To turn it on, add
  CloseFromMenuButton=true
in [Windeco] section of $HOME/.kde4/share/config/oxygenrc.
Note that it results in poor usability of the menu button, if enabled.

CCBUG: 301237
2012-06-07 12:28:25 -07:00
Script Kiddy 62211420c7 SVN_SILENT made messages (.desktop file) 2012-05-28 11:08:19 +02:00
Martin Gräßlin 4490d51ae8 Initialize themeconfig class members with default values
Static getters for each default value added which are used in
ctor to initialize the class members and in the load for
readEntry's default value.

REVIEW: 104994
2012-05-19 19:46:28 +02:00
Martin Gräßlin ea8db29c2b Escape HTML tags in window caption in Aurorae and Killer
The unescaped tags are interpreted as HTML by Aurorae decorations
and the KWin killer. Escaping the tags ensures that the text is not
rendered incorrectly.

BUG: 293657
FIXED-IN: 4.9.0
REVIEW: 104989
2012-05-19 11:56:35 +02:00
Thomas Lübking e2553bd842 add deco API versioning support
REVIEW: 104978
BUG: 299141
FIXED-IN: 4.9
2012-05-17 23:26:43 +02:00
Hugo Pereira Da Costa fb361b3d35 Cleanup radial gradient definition and offsets.
Fixed bug on shading windows with large buttons.
2012-05-03 20:09:45 +02:00
Hugo Pereira Da Costa ba573c60ed Check that widget style supports "SH_ArgbDndWindow" to decide whether or not to draw a shadow around
ItemTag drag-and-drop icon.
2012-05-01 17:32:28 +02:00
Hugo Pereira Da Costa 83255bed73 fixed rect adjustment. 2012-05-01 17:32:28 +02:00
Hugo Pereira Da Costa aab88cc10d re-implemented compositing-off dnd calculation properly. 2012-05-01 17:32:28 +02:00
Hugo Pereira Da Costa ba3b445231 fixed hotspot. 2012-05-01 17:32:28 +02:00
Hugo Pereira Da Costa 27f1f45391 implemented (partially) shadows for drag pixmaps. 2012-05-01 17:32:28 +02:00
Hugo Pereira Da Costa 06820d7c77 fixed active item detection when rendering drag pixmap. 2012-05-01 17:32:28 +02:00
Hugo Pereira Da Costa f76b087b33 mark title transition as dirty when resizing client, to avoid flicker.
CCBUG: 298428
2012-04-23 11:48:30 +02:00
Martin Gräßlin 2b2976aa20 Adjust Aurorae Menu Button close behavior to KCommonDecoration
See 27b667f49562963ea3f13d5b9dd56ff846feb75a
2012-03-01 13:33:35 +01:00
Hugo Pereira Da Costa 0b1f4fc1d6 cosmetics. 2012-02-29 17:17:25 +01:00
Hugo Pereira Da Costa 2eb4b96a8c Fixed warning when rendering text on invalid rectangle;
Fixed painting of buttons in preview.
(thanks Martin :) )
2012-02-29 17:10:23 +01:00
Hugo Pereira Da Costa 0a7195fe22 removed unneeded check. 2012-02-29 16:54:52 +01:00
Hugo Pereira Da Costa 8f28376274 fixed tabbing order 2012-02-29 08:57:41 +01:00
Martin Gräßlin cb5360c53d Improve mouse click behavior of Aurorae Menu button
The general idea is: single click opens menu, double click closes
the window. The problem is that the when the menu is opened after
the single click, the menu will eat the second click. So double
click will not work.

This commit brings back the workaround from Aurorae2. The clicked
event is not used at all, but we start a timer on the press event
with the doubleClickInterval. If no double click appears during the
interval we open the menu, if there is a double click we close the
window.

The downside of this approach is that there is a slight delay between
clicking the menu button and the menu appearing. For that the right
click behavior is unchanged. That is right clicking opens the menu
instantly and double click to close it, is broken.
2012-02-16 11:34:37 +01:00
Thomas Lübking 85635dd485 fix tabbing
BUG: 290959
BUG: 265160
BUG: 229292
BUG: 238279
BUG: 290758
BUG: 222831
BUG: 278275
BUG: 245747
BUG: 230000

BUG: 253697
BUG: 230570
BUG: 265977
BUG: 225337
BUG: 225339

REVIEW: 103855
2012-02-11 16:30:22 +01:00
Thomas Lübking bf88ec09ac Revert "fix tabbing"
pushed out of branch, not master - leading to absent revision, found hash collision??

This reverts commit 94b2ad7b85801e37e2df4671cdc4f26b6d7e5506.
2012-02-11 16:29:14 +01:00
Thomas Lübking d245035a17 fix tabbing
BUG: 290959
BUG: 265160
BUG: 229292
BUG: 238279
BUG: 290758
BUG: 222831
BUG: 278275
BUG: 245747
BUG: 230000

BUG: 253697
BUG: 230570
BUG: 265977
BUG: 225337
BUG: 225339

REVIEW: 103855
2012-02-11 16:01:41 +01:00
Hugo Pereira Da Costa 2b2a21e4d4 manually reduce shadow size in preview for better rendering. 2012-01-16 10:16:29 +01:00
Martin Gräßlin 2fce5db7cf Fix button sizes in Aurorae
Maximize/Restore, Menu and spacers did not honor button size factor.
2012-01-13 18:08:45 +01:00
Martin Gräßlin de72df5a90 Proper resetting of Aurorae on changes
Most settings don't require a reload of the decorations.
2012-01-13 18:08:45 +01:00
Martin Gräßlin 5f5499a74f Reload Aurorae buttons when the button settings changed 2012-01-13 18:08:45 +01:00
Martin Gräßlin a1bee6f8a7 Proper button handling in Aurorae QML
Buttons are exported as a global "options" in the factory.
Additionally the theme's buttons are also exported. The thme decided
based on the custom button positions property which one to use.

In the kcm the button options are also exported.
2012-01-13 18:08:45 +01:00
Martin Gräßlin 4e07ced451 Drop unused code 2012-01-13 18:08:45 +01:00
Martin Gräßlin 0df0266602 Makes two methods private which are no longer accessed from outside 2012-01-13 18:08:45 +01:00
Martin Gräßlin beba190f8f Correctly update decoration width/height on theme change 2012-01-13 18:08:45 +01:00
Martin Gräßlin 12ca69deda Ensure that borders have at least a size of 0
Prevents cropping of windows with tiny borders.
BUG: 257428
2012-01-13 18:08:45 +01:00
Martin Gräßlin cb47db887c Fix c'n'p error 2012-01-13 18:08:44 +01:00
Martin Gräßlin 30d8f2c1ea Don't load FrameSvg in AuroraeTheme
This allows to remove Plasma compile dependency from Aurorae and
the KCM.
2012-01-13 18:08:44 +01:00
Martin Gräßlin 8a4a8b3903 Drop GraphicsScene based Aurorae 2012-01-13 18:08:44 +01:00
Martin Gräßlin a0efa6453e Adding a slot to load an AuroraeTheme.
Can be used from the decoration module to load the theme for each
decoration.
2012-01-13 18:08:44 +01:00
Martin Gräßlin b44efd3c22 Use one declarative engine for all decortions
Each decoration gets a graphicsview and scene instead and a declarative
item is created for each decoration.

There's probably still room for improvments. E.g. never render the
scene onto the widget but directly into the textures?
2012-01-13 18:08:43 +01:00
Martin Gräßlin c2b23a3772 Aurorae supports all buttons
Not really correct, but we can hardly check it.
2012-01-13 18:08:43 +01:00
Martin Gräßlin acfdc9765e Disable window tabbing in Aurorae 2012-01-13 18:08:43 +01:00
Martin Gräßlin 459794f65a Send mouse events to support window resizing 2012-01-13 18:08:43 +01:00
Martin Gräßlin a8f47b6a4a Reload Aurorae theme when settings changed. 2012-01-13 18:08:43 +01:00
Martin Gräßlin f96f5c979e Better Maximized/Restore button
Use just one button with the two variants embedded. Makes the state
transitions more robust.
2012-01-13 18:08:42 +01:00
Martin Gräßlin fee9a52fd5 No longer updating the window shape
We don't have the mask for the opaque version anyway, so it does
not make any sense as for composited no mask was set.
2012-01-13 18:08:42 +01:00
Martin Gräßlin d5021ca956 Don't read properties if compiling the script failed 2012-01-13 18:08:42 +01:00
Martin Gräßlin 5ba3f0356b Use parallel animations for button group 2012-01-13 18:08:42 +01:00
Martin Gräßlin 41dc4f35d1 Add inner-border support 2012-01-13 18:08:42 +01:00
Martin Gräßlin 90c882161c Export titleHeight for caption element 2012-01-13 18:08:42 +01:00
Martin Gräßlin 9b5f5a49cc Proper maximized support in Aurorae (QML)
Switches to the explicit maximized decoration element and animates
the button groups and caption.

Legacy support for just the centered element is still missing. Unsure
if it should be added or if it makes sense to break compatibility here.
2012-01-13 18:08:42 +01:00
Martin Gräßlin d78320fa65 Support for Maximized/Restore buttons 2012-01-13 18:08:41 +01:00
Martin Gräßlin 5c36fcac36 Aurorae goes QML
What's working:
* background for active and inactive decorations inclusive transitions
* all buttons get loaded
* transition between button states
* all borders, paddings etc is working
* mouse interaction with buttons and title area

What's not yet working:
* special maximize mode
* mouse wheel on title area
* window tabs
* changing themes
* crash resistence (currently a not compiling QML file crashes KWin badly)
* window/blur mask (tricky - we need the alpha mask of the background SVG)

What's going to be dropped:
* special opaque mode
* decoration position at left/right/bottom instead of top
Why? Because nobody uses these features
2012-01-13 18:08:41 +01:00
Martin Gräßlin e8e4029a79 Prepare Aurorae for a QML based theme 2012-01-13 18:08:41 +01:00
Martin Gräßlin ee882624e4 Make AuroraeTheme config available through properties
Some minor aspects are still missing. Will be added if needed.
2012-01-13 18:08:41 +01:00
Martin Gräßlin e801c12c69 Create a DeclarativeView instead of GraphicsView
Now we cannot see anything any more, but hey it compiles :-)
2012-01-13 18:08:41 +01:00
Martin Gräßlin d8ce81d241 First set of properties and signals added to Aurorae 2012-01-13 18:08:40 +01:00
Hugo Pereira Da Costa 49d44ee2a5 removed other instances of QSharedPointer (damn Qt)
CCBUG: 290965
2012-01-09 09:50:35 +01:00
Hugo Pereira Da Costa 0f8e0545f5 Changed QSharedPointer -> QPointer
CCBUG: 290965
2012-01-09 09:44:01 +01:00
Script Kiddy 3dc974f3bb SVN_SILENT made messages (.desktop file) 2012-01-09 08:36:30 +01:00
Script Kiddy ea20b79d70 SVN_SILENT made messages (.desktop file) 2011-12-22 11:48:21 +01:00
Script Kiddy 59a6dd3156 SVN_SILENT made messages (.desktop file) 2011-12-21 09:55:39 +01:00
Script Kiddy 2a7a4bb74d SVN_SILENT made messages (.desktop file) 2011-12-20 16:29:23 +01:00
Script Kiddy 61053eb8d0 SVN_SILENT made messages (.desktop file) 2011-12-19 15:33:20 +01:00
Script Kiddy 8979af0a5f SVN_SILENT made messages (.desktop file) 2011-12-18 09:55:30 +01:00
Thomas Lübking 4040b1ae2f queue aurorae decoration button events to prevent them from
destroying the scene in the same event cycle

BUG: 242116
REVIEW: 103336
2011-12-05 18:28:35 +01:00
Hugo Pereira Da Costa 12bcd08871 do not fade separator when it is drawn for both active and inactive windows. 2011-11-08 19:01:02 +01:00
Christophe Giboudeaux f76c40c424 Fix the -Wmissing-include-dirs warnings 2011-10-19 23:53:13 +02:00
Martin Gräßlin eda72d6475 Don't react on mouse release events in Aurorae if mouse is outside button
HAPPY BIRTHDAY KDE. One bug fix as a present.

BUG: 283236
FIXED-IN: 4.7.3
2011-10-14 20:45:07 +02:00
Hugo Pereira Da Costa 885e42142f Fixed glow animation for outlined windows. 2011-10-05 23:01:13 +02:00
Hugo Pereira Da Costa 066927ebfb More fine tuning of window borders in outline mode. 2011-10-05 19:56:00 +02:00
Hugo Pereira Da Costa e8addb2596 Turn off antialiasing when rendering window outline borders.
CCBUG: 283398
2011-10-05 18:55:45 +02:00
Luboš Luňák 2f1bb4f4a3 do not access possibly deleted memory 2011-09-30 19:24:42 +02:00
Hugo Pereira Da Costa f435f716b8 do not paint buttons (from parent) if hidden. 2011-09-23 15:46:29 +02:00
Hugo Pereira Da Costa c9ed76be6f set bottom border to zero when shading windows. This makes buttons and title vertically
centered.
2011-09-22 22:28:24 +02:00
Hugo Pereira Da Costa acf1ba4717 keep button hover state even when pressed. 2011-09-22 22:22:37 +02:00
Hugo Pereira Da Costa f931cd22f9 Use Client::layoutMetric to access shadowSize instead of shadowCache. This fixes some painting issues for maximized
windows.
2011-09-20 14:08:34 +02:00
Hugo Pereira Da Costa f2e93e1b73 Revert "fine tune button shadows."
This reverts commit 8c2841a58f75466c5ad87aff35bad8859f9c6822.
2011-09-20 09:14:24 +02:00
Hugo Pereira Da Costa c62bd64896 fine tune button shadows. 2011-09-20 09:10:09 +02:00
Hugo Pereira Da Costa 2ced9ec941 added comments in ::paintEvent. 2011-09-20 09:09:42 +02:00
Hugo Pereira Da Costa 58e2393d56 re-ordered button.
No "parentUpdate" in non-compositing mode (cause unneeded)
2011-09-19 16:23:29 +02:00
Hugo Pereira Da Costa e22573e586 buttons 2011-09-19 15:31:18 +02:00
Hugo Pereira Da Costa b8a767e3cf properly update parent when button state is changed. 2011-09-19 15:20:07 +02:00
Hugo Pereira Da Costa 01da5bb015 moved all button painting to client. 2011-09-19 15:16:43 +02:00
Hugo Pereira Da Costa 3f8b4de381 try install better glow. 2011-09-16 18:31:12 +02:00
Hugo Pereira Da Costa 4732070efa only define Shadow in scope where it is used. 2011-09-16 18:26:30 +02:00
Hugo Pereira Da Costa a05eecf4f0 improved and simplified window decoration buttons. 2011-09-16 17:49:45 +02:00
Hugo Pereira Da Costa 0393983755 use QPainter::setWindow to actually perform scaling. 2011-09-16 17:19:02 +02:00
Hugo Pereira Da Costa bd6653ef59 Moved painting of windeco buttons to own cache in Style and deco helper;
Simplified decoration windeco buttons painting to use only one cache;
Renamed windeco button painting to dockWidgetButton painting for style.
2011-09-15 23:22:45 +02:00
Hugo Pereira Da Costa c5365e287a fixed indentation. 2011-09-13 14:19:47 +02:00
Script Kiddy 4cbbf921d4 SVN_SILENT made messages (.desktop file) 2011-09-09 09:21:44 +02:00
Script Kiddy 157f51ce85 SVN_SILENT made messages (.desktop file) 2011-09-08 09:04:13 +02:00
Script Kiddy 74792cff83 SVN_SILENT made messages (.desktop file) 2011-09-02 09:01:06 +02:00
Melchior FRANZ 0b1dbed749 tabstrip: make outline color configurable 2011-08-27 18:52:40 +02:00
Montel Laurent 62c5a5e276 normalize signal/slots 2011-08-17 23:51:55 +02:00
Hugo Pereira Da Costa ce0862d726 Merge branch 'master' of git.kde.org:kde-workspace 2011-08-05 17:02:41 +02:00
Script Kiddy 857a61e30f SVN_SILENT made messages (.desktop file) 2011-08-04 10:39:45 +02:00
Jaime Torres 664aaa1b60 ++ prefix for non-trivial data-types
change suffix ++ to prefix ++ to speed up a little bit not-trivial
data-types. discovered by cppcheck

REVIEW: 102057
2011-08-02 17:21:56 +02:00
Hugo Pereira Da Costa f256f62ad0 Merge branch 'master' of git.kde.org:kde-workspace 2011-07-27 09:48:42 -04:00
Script Kiddy ff5707c91b SVN_SILENT made messages (.desktop file) 2011-07-27 09:34:28 +02:00
Hugo Pereira Da Costa cfdfe9251c git pull Revert "use QWeakPointer (and explicit deletion, if needed)
instead of QSharedPointer"

This reverts commit 73da3a77f2041ac3de44842a162243c036fd32f9.
CCBUG: 277925
2011-07-25 17:04:28 +02:00
Hugo Pereira Da Costa 6d96696898 Merge branch 'master' of git.kde.org:kde-workspace 2011-07-21 16:07:31 +02:00
Hugo Pereira Da Costa 14e876e4b6 changed animation text, for clarity. 2011-07-21 16:06:58 +02:00
Script Kiddy 9b8404279b SVN_SILENT made messages (.desktop file) 2011-07-21 09:27:01 +02:00
Hugo Pereira Da Costa bb769a9eb6 moved method from private to protected. 2011-07-18 12:20:58 +02:00
Hugo Pereira Da Costa 3637caf68c minor code cleanup. 2011-07-18 10:21:17 +02:00
Hugo Pereira Da Costa 43cae07762 fixed saving of animations configuration based on expertMode(). 2011-07-18 10:09:22 +02:00
Hugo Pereira Da Costa 9f12ecd91d fix updateChanged() method. 2011-07-18 10:06:13 +02:00
Hugo Pereira Da Costa 4e7364d9df nothing. 2011-07-18 10:06:05 +02:00
Hugo Pereira Da Costa a6ffa920e4 implemented individual animations configuration. 2011-07-18 09:49:15 +02:00
Hugo Pereira Da Costa 92f9181db9 tabulations. 2011-07-18 07:55:17 +02:00
Hugo Pereira Da Costa f75111622b added animation config widget to allow individual animation configuration. 2011-07-18 07:53:41 +02:00
Hugo Pereira Da Costa c21122c863 added necessary options to configure all type of animations individually. 2011-07-18 07:36:44 +02:00
Hugo Pereira Da Costa 6c235bbe1e removed unused header. 2011-07-17 17:55:28 +02:00
Hugo Pereira Da Costa 31d6f0e7ac tabulations. 2011-07-17 16:27:51 +02:00
Hugo Pereira Da Costa 0ae4d9489f always enable window grouping, when available.
removed corresponding config option.
2011-07-17 16:12:30 +02:00
Hugo Pereira Da Costa 7ca4d15919 use QWeakPointer (and explicit deletion, if needed) instead of QSharedPointer
CCBUG: 277925
2011-07-17 15:49:16 +02:00
Hugo Pereira Da Costa 5c95478e56 removed shadowCacheMode option.
Default mode (variable) is what's kept.
2011-07-17 13:13:44 +02:00
Script Kiddy 1eb1c85289 SVN_SILENT made messages (.desktop file) 2011-07-13 09:17:45 +02:00
Script Kiddy d414f57c8d SVN_SILENT made messages (.desktop file) 2011-07-07 10:20:05 +02:00
Script Kiddy 976f396fc7 SVN_SILENT made messages (.desktop file) 2011-07-06 10:41:48 +02:00
Hugo Pereira Da Costa db297dee87 fixed unbalanced save/restore 2011-07-02 13:13:58 +02:00
Hugo Pereira Da Costa 05fc073439 draw background overlay pixmap manually in preview. 2011-06-30 11:43:34 +02:00
Hugo Pereira Da Costa 18cdb220d7 Added "show advanced options" button. 2011-06-30 11:20:50 +02:00
Hugo Pereira Da Costa dfcab17585 use backing store pixmap for buttons when compositing is not active.
Copy parent backgronud from backing store pixmap when rendering buttons.
2011-06-28 09:24:02 +02:00
Hugo Pereira Da Costa d3d5d9b9d3 Merge branch 'master' into master-no-composite 2011-06-28 09:09:50 +02:00
Hugo Pereira Da Costa f6a12ad1cf coding style. 2011-06-28 09:09:31 +02:00
Hugo Pereira Da Costa 8361b13de9 added double buffering to oxygen-client when compositing is off;
force update of buttons in client->paintEvent();
call _client->paint() from Button, instead of parentWidget()->render();
2011-06-28 01:27:58 +02:00
Hugo Pereira Da Costa 6e0733e0de fixed button rendering when compositing is disabled. 2011-06-28 01:09:22 +02:00
Script Kiddy 163824af85 SVN_SILENT made messages (.desktop file) 2011-06-22 09:44:08 +02:00
Script Kiddy 538e9d1467 SVN_SILENT made messages (.desktop file) 2011-06-21 11:01:53 +02:00
Hugo Pereira Da Costa 5194705e30 fixed detection of pressed state for decoration's 'toggle like' buttons. 2011-06-14 18:49:46 +02:00
Pino Toscano 339990dbae i18n: do not extract placeholder strings 2011-06-08 21:00:49 +02:00
Script Kiddy b0e3b23c25 SVN_SILENT made messages (.desktop file) 2011-06-08 09:23:45 +02:00
Script Kiddy 01e64e9039 SVN_SILENT made messages (.desktop file) 2011-06-03 09:06:45 +02:00
Hugo Pereira Da Costa c7f87d49d7 Set padding to 0 when client is maximized.
CCBUG: 274177
2011-05-30 17:56:50 +02:00
Hugo Pereira Da Costa 8c7585e500 do not render shadows when maximized.
CCBUG: 274177
2011-05-30 16:51:25 +02:00
Script Kiddy a7dc64e5b8 SVN_SILENT made messages (.desktop file) 2011-05-29 10:09:53 +02:00
Script Kiddy 3d0c81f121 SVN_SILENT made messages (.desktop file) 2011-05-17 10:49:34 +02:00
Hugo Pereira Da Costa 810a750d25 removed some unneeded empty lines. 2011-05-11 10:23:36 +02:00
Script Kiddy 9d7c88d288 SVN_SILENT made messages (.desktop file) 2011-05-11 09:17:09 +02:00
Script Kiddy cb2597dcaf SVN_SILENT made messages (.desktop file) 2011-05-09 09:32:40 +02:00
Hugo Pereira Da Costa b602ce9d52 fixed default tab. 2011-05-05 23:43:11 +02:00
Hugo Pereira Da Costa c5766a5e3a removed "shadowMode" option, since it has been obsoleted by kwin's new shadow system. 2011-05-01 11:52:22 +02:00
Hugo Pereira Da Costa 8d7455cfaf sanitize color handling in button rendering. 2011-04-28 18:09:09 +02:00
Hugo Pereira Da Costa 24543ebbb9 Use QPalette::Button colors for button (!) rendering. 2011-04-28 17:28:46 +02:00
Hugo Pereira Da Costa 685d5b2a4b cleanup 2011-04-21 19:14:28 +02:00
Hugo Pereira Da Costa 5a29c0b21b added dedicated hint so that widget style can tell the decoration whether to
use a window pixmap or not.
2011-04-20 12:01:38 +02:00
Hugo Pereira Da Costa d84f048b6a moved pixmap rendering to separate method.
It is called independently from window background in decoration code;
It is called together with window background in style.
2011-04-20 11:28:45 +02:00
Hugo Pereira Da Costa 77dd014d8a fixed horizontal positionning of background pixmap. 2011-04-20 10:57:40 +02:00
Hugo Pereira Da Costa 82d3524353 Merge branch 'master' into oxygen/background-pixmap 2011-04-20 10:21:37 +02:00
Hugo Pereira Da Costa e213b3ca9f fix gradient positionning for maximized windows 2011-04-16 13:18:45 +02:00
Hugo Pereira Da Costa 38f5c5d055 nothing. 2011-04-16 11:48:44 +02:00
Martin Gräßlin 320de6abc6 Merge branch 'master' into oxygen-shadows
Conflicts:
	kwin/atoms.cpp
	kwin/atoms.h
2011-04-04 18:09:59 +02:00
Hugo Pereira Da Costa 275cf05184 make sure Shadow X11 property is not set on decorated windows, since it is handled by
the decoration itself (and therefore should not be by kwin).
2011-04-04 09:42:11 +02:00
Script Kiddy 25fd8bd0d3 SVN_SILENT made messages (.desktop file) 2011-03-31 07:42:47 +02:00
Hugo Pereira Da Costa 258bc024a4 Removed unnecessary compilation of oxygendecohelper. 2011-03-16 17:53:39 +01:00
Script Kiddy 5c0a54f89d SVN_SILENT made messages (.desktop file) 2011-03-12 08:34:39 +01:00
Hugo Pereira Da Costa e5956f2e9a Decoration: read background pixmap from oxygenrc 2011-03-03 10:52:35 +01:00
Hugo Pereira Da Costa 96c7dedacb Added background pixmap offset to properly align decoration background and style background. 2011-03-03 10:35:56 +01:00
Hugo Pereira Da Costa 9918437a71 play with the idea of painting an overlay pixmap on top of window background. 2011-03-02 17:01:45 +01:00
Hugo Pereira Da Costa a190d65790 more variable names cleanup 2011-02-24 19:11:12 +01:00
Hugo Pereira Da Costa 3c290e07cd cleanup variable names. 2011-02-24 17:47:38 +01:00
Hugo Pereira Da Costa 0960942f4e cleanup variable names for consistency 2011-02-24 17:37:04 +01:00
Hugo Pereira Da Costa 1aeb5fedcc ::(Style/Deco/)Helper - variable names cleanup
moved all caches to Private; added protected accessor, and updated daughter classes
accordingly. Also renamed variables for consistency with other classes
2011-02-24 17:08:41 +01:00
Hugo Pereira Da Costa 3c5c517220 Oxygen::Config - fixed writting of shadowMode. 2011-02-24 08:24:00 +01:00
Hugo Pereira Da Costa 98b415db93 Oxygen::Config - Fixed saving of ShadowCacheMode. 2011-02-24 08:22:49 +01:00
Hugo Pereira Da Costa cf7f1a378a Factory: properly account for shadow configuration change when return changed status. 2011-02-23 11:21:46 +01:00
Hugo Pereira Da Costa 4abee2e112 perform all shadow configuration in ShadowCache::readConfig.
This will avoid code duplication between style and decoration.
2011-02-23 11:14:21 +01:00
Hugo Pereira Da Costa 2099e9dab0 moved Oxygen::ShadowCache and Oxygen::ShadowConfiguration from kwin/clients/oxygen to libs/oxygen
This is necessary to implement client-side shadows (for menus and drop-down lists)
2011-02-23 10:04:00 +01:00
Hugo Pereira Da Costa c9899372ba use Oxygen::Helper rather than Oxygen::DecoHelper. 2011-02-23 09:59:31 +01:00
Hugo Pereira Da Costa b35d3c7b65 clean-up headers to make shadow cache and configuration decoration independent. 2011-02-23 09:46:17 +01:00
Martin Gräßlin 4f12f43d5d Clean up documentation in KWin
* COMPOSITE_TODO lists many tasks already implemented or not valid any more,
  it's easier to just write a new document with concrete tasks in the wiki
* NEWCOLORSCHEME.README has been unchanged since it's first introduction in 2000.
  Does not sound any "new" to me and lists changes compared to KWM
* clients/PORTING: all important clients have been ported and what is not yet
  ported will probably never get ported. The unported decos have been moved
  to unmaintained some time ago.
* clients/REQUIREMENTS_FOR_CVS: well the requirements are not valid any more.
2011-02-20 18:22:10 +01:00
Script Kiddy 15155326e2 SVN_SILENT made messages (.desktop file) 2011-02-03 07:25:47 +01:00
Hugo Pereira Da Costa 488b3644d5 Changed handling of shadow overlap with window content
Oxygen::ShadowCache::shadowSize() now returns the shadow extend outside of the window body (the extend)
Overlab between the actual shadow pixmap and the window body is dealt with internally (by creating larger pixmaps)
This allows notably Oxygen::Client to not attempt to draw shadow when shadowSize == 0 (which was never the case
before)
2011-02-02 17:23:08 +01:00
Hugo Pereira Da Costa c1ff9525e3 Removed obsolete ShadowCache::Key::useOxygenShadows flag
The flag has been made obsolete by the fact that window corners are not part of the shadow anymore.
Configuration::useOxygenShadows is now dealt with by setting the active flag directly.
2011-02-02 17:21:12 +01:00
Script Kiddy b637e9d7ca SVN_SILENT made messages (.desktop file) 2011-02-02 08:26:11 +01:00
Montel Laurent 91bf3ab073 Fix ui files 2011-02-01 13:16:06 +01:00
Kevin Ottens de2c5b91f1 The demo needs to find the lib oxygen headers. 2011-01-30 17:34:15 +01:00
Hugo Pereira Da Costa 71d4bdd45d added dbus signal+connection to update shadows on fly in demo.
svn path=/trunk/KDE/kdebase/workspace/; revision=1217941
2011-01-29 18:33:01 +00:00