Commit Graph

55 Commits (8426e13f3a4d61ecf2c9d38ccdc10014e17bff97)

Author SHA1 Message Date
Martin Gräßlin fdfc479012 Move mouse area into the delegate
Fixes mouse clicks not being accepted in TabBox in case the view
had started to scroll.
2011-12-04 18:53:48 +01:00
Martin Gräßlin 252c21e903 Use 128x128 for big icons TabBox 2011-11-12 22:42:04 +01:00
Martin Gräßlin d89b9b3abe Do not stretch icons but use the smaller one with padding
Thanks to Iceweasel for providing a maximum icon of 48x48 which
looks really bad when upscaled to 128x128. Orig icon is placed
in the center of a new pixmap in requested size.
2011-11-12 22:39:01 +01:00
Martin Gräßlin f27a00d8cd Setting a maximum highlight move duration on the TabBox layouts
Makes the wrapping around the corners much more usable...
2011-11-12 22:16:02 +01:00
Martin Gräßlin 219d0cc6a9 KConf Update for TabBox QML
* BoxSwitch users are migrated to new QML TabBox thumbnails layout
* Thumbnail layout is new default (as before was BoxSwitch)
* Removed obsoleted settings from TabBox config
2011-11-12 21:50:18 +01:00
Martin Gräßlin 571a87a0b7 Safetey check in TabBox's Image Provider
We cannot provide pixmaps if the client is null or the index
is for "there are no windows".
2011-11-10 21:23:14 +01:00
Martin Gräßlin 43109f7264 Caption of selected item underneath icon only TabBox 2011-11-10 20:44:05 +01:00
Martin Gräßlin f98593d3fb Window Thumbnail support for QML
A new QML item "ThumbnailItem" is registered to the TabBox. The
C++ implementation finds the EffectWindow of the TabBox and adds
itself to the EffectWindow.

While rendering the EffectWindow the information for all registered
ThumbnailItems are extracted and the thumbnail is rendered on top
of the EffectWindow.

This has obvious limitations like you cannot put other QML items
on top of the thumbnail. Nevertheless it works well enough to
be a possible replacement for e.g. BoxSwitch effect.

When compositing is disabled an icon is rendered instead of the
Thumbnail.

One TabBox Layout inspired by BoxSwitch Effect is added. For the
KCM small pre-rendered items are used.

REVIEW: 103039
2011-11-10 14:28:06 +01:00
Martin Gräßlin c20e9c18c2 Load main QML file while creating TabBox View
Layout loading still delayed till first show event.
2011-11-04 20:08:23 +01:00
Martin Gräßlin ba98af770a Add safety check for invalid ModelIndex
With the new QML tabbox it could happen that the index is not
valid and nothing is selected in the view.
2011-11-04 19:27:02 +01:00
Martin Gräßlin 8b9e7f56cf Pass mouse events to declarative Tabbox
The ListViews have therefore to emit a signal when the item changed
due to a mouse click event.
2011-10-31 14:34:37 +01:00
Martin Gräßlin 17834ae3f9 Request Icons in Correct Size 2011-10-31 08:51:34 +01:00
Martin Gräßlin 08d6f62ae7 New TabBox Layout configuration dialog
This dialog shows all available layouts with a preview.
2011-10-31 08:41:07 +01:00
Martin Gräßlin a38c0e31ca Adding new properties for optimalWidth/Height 2011-10-30 21:56:25 +01:00
Martin Gräßlin aa17081fe8 TabBox in QML
All the default layouts (informative, compact, text, small and big icons)
are rewritten in QML and replace the ListView used before. The old code
is still around for the desktop switching modes which are not yet ported.

Next steps include to update the configuration module to not show now
obsoleted settings as well as providing a better way to choose the layout.

REVIEW: 102948
2011-10-30 16:07:14 +01:00
Jonathan Marten 17c6b3b2db Make the Walk Through Desktop List and Reverse actions work again
With a comment to explain the non-obvious global shortcut setting.

BUG:279638
REVIEW:102558
2011-09-10 11:39:10 +01:00
Arthur Arlt 5d2f8356f4 Make reconfigure() a Q_SLOT
make reconfigure() a Q_SLOT and connect to the signal configChanged()
of class Workspace.

REVIEW: 101942
2011-07-15 22:23:29 +02:00
Martin Gräßlin f89ba7a382 Move tabbox.(h|cpp) to tabbox sub directory 2011-07-15 17:22:41 +02:00
Martin Gräßlin 9cb53d5d30 Create TabBoxView when first used
When effects are active we never need the "classic" TabBoxView.
Nevertheless it was always created when KWin started up. By
delaying the creation some ressources should be saved if the user
only uses effects.

REVIEW: 101897
2011-07-12 21:02:57 +02:00
Martin Gräßlin 2ce4d166a1 Move loading of the TabBox Config XML into a thread
This should improve the KWin startup time as some IO is moved
into another thread. Till the config is loaded the TabBox blocks
all signals to activate the TabBox, but it is unlikely that alt+tab
is tried to be used before KWin is completely started.
2011-07-12 21:02:48 +02:00
Martin Gräßlin c703dca4b2 Remove leftover from splitting out the Outline handling
Should have been removed with 44b83f951aeb3221c43ef3356e46650248b673cd
2011-07-09 11:25:49 +02:00
Martin Gräßlin ff3900d825 Refactor KWin Outline code into an own class
This change unduplicates some code and merges it into one class
allowing us to use an replacement effect for the outline in
future.
CCMAIL: a.arlt@stud.uni-heidelberg.de
REVIEW: 100848
2011-04-28 11:19:05 +02:00
Thomas Lübking 096691db01 secure referenced windows in uncomposited tabbox highlighting
forward port of 8aa28760efc3a77d0e8f48b6ede142d898b44856
BUG: 263250
2011-02-14 21:17:49 +01:00
Martin Gräßlin 0a7e48f7aa KWin uses kdelibs coding style. 2011-01-31 20:07:03 +01:00
Thomas Lübking 647eaa8afb raise alt+tab selected window w/o compositing (requires highlight windows option to be checked)
unlink composited window highlighting from the tabbox
-> results in semi-legacy behaviour w/o activating the selected window

BUG: 227344

svn path=/trunk/KDE/kdebase/workspace/; revision=1186871
2010-10-17 19:49:07 +00:00
Martin Gräßlin 5b54bb1d03 Forward port rev 1137263:
Make icon sizes 64x64 and 128x128 available in KWin and use it in TabBox for large icon modes.
So no more ugly upscaling.
CCBUG: 241384

svn path=/trunk/KDE/kdebase/workspace/; revision=1137264
2010-06-12 06:56:40 +00:00
Martin Gräßlin 752580496b Blur behind tabbox
svn path=/trunk/KDE/kdebase/workspace/; revision=1134066
2010-06-03 10:33:52 +00:00
Martin Gräßlin f099f6323b Too long titles in tabbox are probably elided in the middle as the application name is on the right.
svn path=/trunk/KDE/kdebase/workspace/; revision=1130021
2010-05-24 08:26:25 +00:00
Martin Gräßlin 445273c021 Sometimes warnings about missing parenthesis are correct
svn path=/trunk/KDE/kdebase/workspace/; revision=1130020
2010-05-24 08:20:28 +00:00
Martin Gräßlin 612864aed2 An tabbox item may never be bigger than the screen.
BUG: 235143

svn path=/trunk/KDE/kdebase/workspace/; revision=1130011
2010-05-24 08:00:59 +00:00
Martin Gräßlin 7277ec7450 Add optional desktop entry to alt+tab for minimizing all windows (show desktop).
FEATURE: 167644

svn path=/trunk/KDE/kdebase/workspace/; revision=1105144
2010-03-19 10:15:56 +00:00
Martin Gräßlin 551bcc2959 Do not show the desktop name when using a tabbox mode which only includes windows from current desktop. In that case the information is redundant as all windows are on the same desktop.
svn path=/trunk/KDE/kdebase/workspace/; revision=1104681
2010-03-18 09:54:03 +00:00
Martin Gräßlin 8d2178ad5d Correctly handle mouse clicks in TabBox when there is an additional view.
BUG: 226877

svn path=/trunk/KDE/kdebase/workspace/; revision=1103492
2010-03-15 08:39:40 +00:00
Martin Gräßlin 646c7909d3 Do not activate highlight windows in desktop switching. This fixes a crash in walk through desktops.
BUG: 223432

svn path=/trunk/KDE/kdebase/workspace/; revision=1096422
2010-02-26 16:50:45 +00:00
Aaron J. Seigo 7c284cb3e1 same duration as used in Plasma::ItemBackground; smoother and more consistent for bonus
svn path=/trunk/KDE/kdebase/workspace/; revision=1081170
2010-01-27 21:23:42 +00:00
Martin Gräßlin 608f5fab7a Fixing some regressions in the layout preview widget introduced due to the animation.
This change also includes some visual updates which fixes the black corners issue for non composited tabbox (no idea why), the hughe black border in the prview is still visible (also no idea why).

svn path=/trunk/KDE/kdebase/workspace/; revision=1070114
2010-01-04 22:24:30 +00:00
Martin Gräßlin 10e6e014d9 Improvments to the item animation and to the painting (inspired by krunner).
svn path=/trunk/KDE/kdebase/workspace/; revision=1070080
2010-01-04 20:17:59 +00:00
Martin Gräßlin ac8dc8b07f Small improvements to the layout of the entries of tabbox list.
* list is vertically centered
 * items are stretched to fit the width

svn path=/trunk/KDE/kdebase/workspace/; revision=1069444
2010-01-03 14:41:25 +00:00
Martin Gräßlin e4062507f3 Fix a regression compared to 4.3: animating the selection in classic tabbox
svn path=/trunk/KDE/kdebase/workspace/; revision=1069406
2010-01-03 12:11:25 +00:00
Martin Gräßlin cb51fbb14c All desktops needs to check for application mode as well as for window mode.
BUG: 219563

svn path=/trunk/KDE/kdebase/workspace/; revision=1064722
2009-12-21 15:11:49 +00:00
Martin Gräßlin 07368e7625 Enable highlight windows effect by default (in general and for tabbox) as it works very reliable and is a great and useful feature.
svn path=/trunk/KDE/kdebase/workspace/; revision=1063954
2009-12-19 17:26:03 +00:00
Martin Gräßlin 60a152eca9 Add application switching to TabBox (that is only one element per window class).
FEATURE: 206950

svn path=/trunk/KDE/kdebase/workspace/; revision=1042640
2009-10-30 11:22:39 +00:00
Martin Gräßlin c4e0e0a612 Black borders around the tabbox in non-composited setup are ugly.
There are still a few pixels in the corner - no idea why

svn path=/trunk/KDE/kdebase/workspace/; revision=1042348
2009-10-29 17:03:15 +00:00
Martin Gräßlin 93ac3e14e3 Do not set deselected icons to grayscale. It seems to be more difficult to identify the window. Thanks to Chani for the feedback.
svn path=/trunk/KDE/kdebase/workspace/; revision=1042346
2009-10-29 17:03:05 +00:00
Martin Gräßlin 4591f8bacd Less warnings please
svn path=/trunk/KDE/kdebase/workspace/; revision=1042345
2009-10-29 17:03:02 +00:00
Martin Gräßlin f538de9b1d Fix broken navigation in tabbox if a tabular layout is used and there is an odd number of items.
svn path=/trunk/KDE/kdebase/workspace/; revision=1042344
2009-10-29 17:02:54 +00:00
Martin Gräßlin 8ebbebbb55 First set the new model then reset. Stupid me :-(
svn path=/trunk/KDE/kdebase/workspace/; revision=1042343
2009-10-29 17:02:45 +00:00
Martin Gräßlin 9834f6faf7 Fix a compile fail on OpenSolaris.
Thanks to tropikhajma for reporting the bug and providing a patch.
BUG: 211686

svn path=/trunk/KDE/kdebase/workspace/; revision=1039986
2009-10-25 09:15:49 +00:00
Lucas Murray 3fd898cbf7 Less warnings please.
svn path=/trunk/KDE/kdebase/workspace/; revision=1031445
2009-10-05 07:58:12 +00:00
Lucas Murray 8cbce93613 Less warnings please.
svn path=/trunk/KDE/kdebase/workspace/; revision=1031438
2009-10-05 06:59:10 +00:00