Commit graph

8785 commits

Author SHA1 Message Date
Martin Gräßlin
e1cbb33631 Desktop Box support for QML based TabBox
First very simple layout just rendering icon and name.
Good enough for the start.
2012-01-14 11:51:35 +01:00
Martin Gräßlin
1f07877adb Move AuroraePreview into a Loader
Makes performance of list a little bit better.
2012-01-13 18:08:46 +01:00
Martin Gräßlin
afae882ba4 Adding scrollbar to list view 2012-01-13 18:08:46 +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
5ce7381f15 Decoration KCM uses QML and loads QML based Aurorae themes
This allows to have the Aurorae themes interactive.
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
Thomas Lübking
c33c52d09a Fix regression igonring hiddenPreviews on stacking updates
BUG: 289945
REVIEW: 103687
2012-01-13 16:42:39 +01:00
Thomas Lübking
e76ecd7c4c Don't listen to repetitive motif hints regarding the window border and prefer rules over them anyway
BUG: 291312
REVIEW: 103681
FIXED-IN: 4.8
2012-01-13 16:42:39 +01:00
Thomas Lübking
7d3f668790 Withdraw partial maximization state when resizing partially maximized client but moveResizeMaximizedWindows() isn't true
REVIEW: 103683
BUG: 290990
FIXED-IN: 4.8
2012-01-13 16:42:39 +01:00
Martin Gräßlin
8627c12167 Remove stupid code 2012-01-13 09:19:45 +01:00
Martin Gräßlin
e785550be4 Remove unused method parameter in Fade effect 2012-01-13 09:15:44 +01:00
Martin Gräßlin
2d3198e67c Ensure variables are initialized in fade effect 2012-01-13 09:13:58 +01:00
Martin Gräßlin
e1f888d1f6 Remove stupid code 2012-01-13 09:11:08 +01:00
Martin Gräßlin
c3ca894171 Merge branch 'KDE/4.8' 2012-01-13 09:08:25 +01:00
Martin Gräßlin
07685da24e Check whether the ShaderManager is valid in Explosion effect
The effect did not check whether the ShaderManager is valid causing
a null pointer access when trying to use the shader.

Additionally this change moves the Shader init into the close window
slot as close window referrenced windows without checking whether the
effect would work. If the effect would not work each closed window
would be referrenced without any chance to being unreffed again as this
code is in a block checking whether the effect is valid.

BUG: 291390
FIXED-IN: 4.8.0
2012-01-13 09:06:15 +01:00
Script Kiddy
788f32cceb SVN_SILENT made messages (.desktop file) 2012-01-13 09:05:07 +01:00
Philipp Knechtges
dbc48c91f9 kwin: don't wait for vsync when nothing has been painted 2012-01-12 21:01:56 +01:00
Philipp Knechtges
815a0fe681 Merge remote-tracking branch 'origin/KDE/4.8' 2012-01-12 20:53:09 +01:00
Philipp Knechtges
8a4fbd438a kwin: fixing high cpu usage in the fade effect
This is a condensed version of Martin's patch that fixes a high cpu
usage in KWin and X. It seems to be due to a window being created and
deleted at almost the same time, such that the fade effect never quits.
The bug was reliably reproducable with starting Amarok.

CCBUG: 290025
CCBUG: 288948
2012-01-12 20:40:34 +01:00
Philipp Knechtges
050d991cb1 kwin: simplifying paintSimpleScreen
This patch reduces the number of QRegion and WindowQuadList operations
by drawing the opaque and translucent parts of the window within the
same bottom to top pass.

REVIEW: 103671
2012-01-11 18:04:28 +01:00
Aaron Seigo
6b52a4ef19 Merge branch 'KDE/4.8' 2012-01-11 14:11:53 +01:00
Script Kiddy
2cee922fc9 SVN_SILENT made messages (.desktop file) 2012-01-11 09:13:06 +01:00