Martin Gräßlin
8d3ee65269
[wayland] Don't set surface on Toplevel for non Xwayland-Clients
...
For other clients we are only interested in the shell surfaces.
10 years ago
Martin Gräßlin
28d314a487
[wayland] Create a DataDeviceManager in wayland server
...
Makes QtWayland way more happy.
10 years ago
Martin Gräßlin
6826b9eb94
[autotests] Adjust to changes regarding AbstractClient
...
We need a Mock for AbstractClient and our mock Client needs to
inherit from it.
10 years ago
Martin Gräßlin
912ab71abd
ShellClient inherits AbstractClient
...
This allows to make ShellClient behave more like a Client and allows
to activate it. Some pieces for activating are still missing.
10 years ago
Martin Gräßlin
b6f793090e
Toplevel::setOpacity becomes virtual
...
It calls unconditionally into NETWinInfo.
10 years ago
Martin Gräßlin
23862e512d
Move implementation of ::palette to AbstractClient
...
Includes moving of the colorscheme and DecorationPalette related
functionality.
10 years ago
Martin Gräßlin
38b418887a
Move minimize implementation to AbstractClient
10 years ago
Martin Gräßlin
d2884484bc
Move ::titlebarPosition to AbstractClient
10 years ago
Martin Gräßlin
a4d16debfc
Partly move shade implementation to AbstractClient
...
* properties defined in AbstractClient
* implementation of isShade moved to AbstractClient
* implementation of setShade(bool) moved to AbstractClient
* default implementation for isShadeable added to AbstractClient
* default implementation for shadeMode returning ShadeNone
* default implementation fo setShade which does nothing
10 years ago
Martin Gräßlin
254887155c
Implement virtual desktop handling in AbstractClient
10 years ago
Martin Gräßlin
1bfba1765c
Signal desktopPresenceChanged carries AbstractClient as argument
10 years ago
Martin Gräßlin
e672a53721
Move implementation of demanding attention to AbstractClient
10 years ago
Martin Gräßlin
16568804be
Demands Attention handling in Workspace operates on AbstractClient
...
Affects:
* list attention_chain
* clientAttentionChanged
* clientDemandsAttentionChanged
10 years ago
Martin Gräßlin
986308f938
Move implementation of isSpecialWindow to AbstractClient
10 years ago
Martin Gräßlin
4b27abd76b
Move implementation of wantsTabFocus to AbstractClient
10 years ago
Martin Gräßlin
1fcd1120d9
Move auto-raise handling to AbstractClient
...
Adds QTimer to AbstractClient and introduces new protected method to
start the timer.
10 years ago
Martin Gräßlin
25e3af5988
Implement keepAbove and keepBelow in AbstractClient
...
Moves the properties and the base implementation into AbstractClient.
Methods invoke a new protected virtual method which is implemented in
Client to update the TabGroup.
10 years ago
Martin Gräßlin
b84118a51b
Workspace::updateClientLayer operates on AbstractClient
...
Requires a virtual updateLayer in AbstractClient. Default implementation
does nothing.
10 years ago
Martin Gräßlin
7d51838efc
Implement AbstractClient::isActive and ::setActive
...
Moves the implmentation to AbstractClient. Methods are no longer virtual,
setActive calls a virtual protected method which is implemented in Client
for Client specific activation code.
10 years ago
Martin Gräßlin
3527f1d4b8
Implement AbstractClient::icon
...
Moves implementation, adds a protected setter and provides the property.
10 years ago
Martin Gräßlin
2f59f3e8b4
Move property closeable to AbstractClient
10 years ago
Martin Gräßlin
4d466f9ab3
Implement AbstractClient::skipSwitcher
...
Moves implementation from Client to AbstractClient.
10 years ago
Martin Gräßlin
3182c8f3e5
Implement AbstractClient::isFirstInTabBox
...
Moves implementation from Client to AbstractClient. Setter is protected,
getter is no longer virtual.
10 years ago
Martin Gräßlin
4ac4a97c20
Implement AbstractClient::tabBoxClient
...
Moves the implementation from Client to AbstractClient.
10 years ago
Martin Gräßlin
ab4e798837
Remove no longer needed casts from TabBox::establish/removeTabBoxGrab
10 years ago
Martin Gräßlin
1e7a28033b
Drop no longer needed dynamic_cast in Workspace::performWindowOperation
10 years ago
Martin Gräßlin
7a74413712
Drop dynamic_cast from UserActionsMenu::slotSendToDesktop
10 years ago
Martin Gräßlin
d4f7445749
Remove remaining Client usage from FocusChain
10 years ago
Martin Gräßlin
704b255234
Drop no longer needed dynamic_casts from TabBox
10 years ago
Martin Gräßlin
7d5236cac8
TabBox::shadeActivate operates on AbstractClient
10 years ago
Martin Gräßlin
9457b362c1
Drop not needed dynamic cast in WorkspaceWrapper::setActiveClient
10 years ago
Martin Gräßlin
fe8946740c
Remove no longer cast in Workspace::allowClientActivation
10 years ago
Martin Gräßlin
41cd927bce
Move Workspace::activeClient and ::mostRecentlyActivatedClient back to header
...
Now all is moved they can be inlined again.
10 years ago
Martin Gräßlin
fdcaf2b86f
Make Workspace::active_client an AbstractClient
10 years ago
Martin Gräßlin
69f198e923
Move ::demandAttention to AbstractClient
10 years ago
Martin Gräßlin
af48d38d22
Workspace::should_get_focus becomes QList<AbstractClient*>
10 years ago
Martin Gräßlin
94ce47ef7b
Workspace::mostRecentlyActivatedClient returns an AbstractClient
...
Implementation temporarily moved to cpp. Needs to be moved back once
should_get_focus and active_client are AbstractClient.
10 years ago
Martin Gräßlin
b1026aa162
Workspace::allowFullClientRaising operates on AbstractCliet
10 years ago
Martin Gräßlin
1d7d1787a8
Workspace::last_active_client becomes an AbstractClient
10 years ago
Martin Gräßlin
f28d759352
Workspace::allowClientActivation operates on AbstractClient
...
Still requires a dynamic_cast for check on should_get_focus. To be
removed once Workspace::should_get_focus is a list of AbstractClients.
10 years ago
Martin Gräßlin
dde1947461
Move ::userTime to AbstractClient
...
Default implementation returns 0.
10 years ago
Martin Gräßlin
1a7e8aeaf2
Move enum QuickTileFlag and ::setQuickTileMode to AbstractClient
10 years ago
Martin Gräßlin
5b53d2401e
Move ::packTo to AbstractClient
...
Base implementation which does nothing
10 years ago
Martin Gräßlin
683fc0613f
Workspace::packPosition* operates on AbstractClient
10 years ago
Martin Gräßlin
7a85ee5309
Make helper method isIrrelevant operate on AbstractClient
10 years ago
Martin Gräßlin
7ffc742a69
Move ::isCurrentTab to AbstractClient
...
Default implementation returns true.
10 years ago
Martin Gräßlin
6feb1c6604
Move ::titlebarPosition and enum Position to AbstractClient
10 years ago
Martin Gräßlin
e5734f9e6c
Move (grow|shrink)(Horizontal|Vertical) to AbstractClient
...
A virtual base implementation is provided which does nothing. Needed
in AbstractClient to get Workspace::slotWindowGrow* to work with
active_client becoming an AbstractCliet.
10 years ago
Martin Gräßlin
138c1b2ff0
Workspace::sendClientToDesktop operates on AbstractClient
...
Unfortunately transient handling is still on Client, thus it's
still in a cast-if block.
10 years ago
Martin Gräßlin
4f1c98773e
Workspace::showWindowMenu operates on AbstractClient
10 years ago