Thomas Lübking
c08038e0a6
prefer query Screens::refreshRate()
...
ScreenInfo::rate is reporting 50Hz (on at least nvidia)
... AGAIN! * sigh*
In addition we check for __GL_SYNC_DISPLAY_DEVICE to pick
the rate of the screen that the driver will actually sync to
(hopefully...)
The patch is limited to nvidia systems for 5.3, applied everywhere
in master (ie. will be in 5.4 unless there's some problem)
BUG: 347360
REVIEW: 123693
2015-05-15 22:02:39 +02:00
Thomas Lübking
5779e6844d
add Screens::name(int screen); STUB but for XRandr
...
required to compare __GL_SYNC_DISPLAY_DEVICE and
later on to assign windows to an output rather than
a screen number
2015-05-15 21:59:44 +02:00
Thomas Lübking
b85d5666c1
add OutputInfo class to obtain output names
2015-05-15 21:59:38 +02:00
Thomas Lübking
03ab846da8
add refreshRate to Screens. STUB but for XRandr!
...
the randr refreshrate is calculated from the current mode
2015-05-15 21:59:36 +02:00
Thomas Lübking
f916cb1aa5
forward resource modes next to crtcs
...
modes will be required for proper refreshrate detection
2015-05-15 21:59:08 +02:00
Thomas Lübking
0b334f2a70
desk grid: do not recreate DesktopButtonsViews
...
Same issue as with present windows closers: qml is slow
Interestingly "hide" means "hide" here and there're also
no visual artifacts.
BUG: 347339
REVIEW: 123668
2015-05-15 21:59:00 +02:00
Thomas Lübking
56fce0adc7
make switchWindow FROM stickies act on current VD
...
it's probably the user expectation and few windows
are on all desktops
BUG: 331512
REVIEW: 123640
2015-05-15 21:58:56 +02:00
Thomas Lübking
c2ba765820
updateXTime before sending a takeFocus message
...
old timestamps confuse clients
BUG: 347153
REVIEW: 123639
2015-05-15 21:58:48 +02:00
Thomas Lübking
e0c3b4eed3
window aperture always needs to cancel
...
even if the window is invisible
fade out instead of NOOP or "restorage"
BUG: 347174
REVIEW: 123636
2015-05-15 21:58:41 +02:00
Thomas Lübking
5d09eaae1f
do not switch desktop on resizing windows
...
REVIEW: 123599
2015-05-15 21:58:37 +02:00
Thomas Lübking
7a7d79a168
break desktopshowing state from cover & flipswitch
...
REVIEW: 123550
CCBUG: 346837
2015-05-15 21:58:30 +02:00
David Edmundson
5115d54926
Multitouch on hwcomposer
...
REVIEW: 123796
2015-05-15 13:28:29 +01:00
l10n daemon script
f0e0568b37
SVN_SILENT made messages (.desktop file)
2015-05-15 12:12:44 +00:00
l10n daemon script
cea4b7faeb
SVN_SILENT made messages (.desktop file) - always resolve ours
...
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2015-05-15 10:25:45 +00:00
l10n daemon script
01b64c10c0
SVN_SILENT made messages (.desktop file)
2015-05-14 12:10:27 +00:00
l10n daemon script
a3c7eac1b8
SVN_SILENT made messages (.desktop file) - always resolve ours
...
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2015-05-14 10:21:14 +00:00
David Edmundson
42768d515a
Add missing include
...
Reviewed-by: Martin G
2015-05-12 14:26:48 +01:00
Martin Gräßlin
51bb4cf2a1
[scripting] Register KWin::AbstractClient in declarative scripts
2015-05-12 11:32:05 +02:00
Martin Gräßlin
a0c45a68b8
Disable GBM if we build without EGL support
2015-05-12 10:03:00 +02:00
Martin Gräßlin
4bf479aca2
[libkwineffects] GL_NONE instead of None in GLTexture
...
It's about GL not about Xlib, so use GL_NONE instead of None.
Additional bonus: it compiles if the file does not include Xlib.
2015-05-11 16:25:00 +02:00
Martin Gräßlin
d6700ff9f9
[backends/hwcomposer] Forward input events to main thread
...
Libhybris input events are generated in a different thread, but we want
them in the main thread (InputRedirection and KWayland are not (yet)
thread safe). Thus all events need to be send to the main thread using
QMetaObject::invokeMethod.
2015-05-11 15:43:30 +02:00
Martin Gräßlin
d5d304c2f6
[backends/hwcompser] Toggle blank screen on power button press
...
Also blocks compositor while screen is turned off.
2015-05-11 15:24:23 +02:00
Martin Gräßlin
533a39bc3e
[backends/hwcomposer] Perform mapping of key codes
...
Not all key codes are mapped yet. Those not mapped have KEY_RESERVED
as mapping value and those are not forwarded to InputRedirection.
2015-05-11 14:28:32 +02:00
Martin Gräßlin
79c94d42f3
[wayland] Support shm buffers on GLES
2015-05-11 11:11:16 +02:00
Martin Graesslin
6a66d84f5c
[backends/hwcomper] Initial support for input handling
...
Unfortunately on libhybris enabled systems libinput doesn't work, thus
the backend needs to handle input events which can be read from hybris.
So far the backend only handles touch events properly, though some
aspects look wrong. E.g. motion gives only for one touch contact point.
Unfortunately the documentation is quite weak, so there might be
something important missing.
2015-05-09 16:22:27 +02:00
Martin Gräßlin
1f62c0acb0
[backends/hwcomposer] Handle OutputInterfaces in Backend
...
Allows to read the DPI information and export the physical display
size from it. DPI is scaled by 1000 in hwcomposer, split by X and Y,
which allows to calculate size in mm from pixel size.
2015-05-08 21:41:38 +02:00
Martin Gräßlin
af134dbbda
Fix build
...
Some day I will understand CMake syntax. Promised!
2015-05-08 13:19:04 +02:00
Martin Gräßlin
e9e055dcca
Call Workspace::clientHidden when ShellClient gets destroyed
...
Ensures that active_client gets changed if it was a ShellClient.
2015-05-08 12:43:47 +02:00
Martin Gräßlin
597a9da77f
Workspace::activateNextClient and clientHidden operate on AbstractClient
...
This is required to change the active_client after the active_client
closes.
2015-05-08 12:43:47 +02:00
Martin Gräßlin
f55c086007
Change Workspace::clientRemoved to carry an AbstractClient
...
At the same time emit it when a ShellClient get's removed. This ensures
it gets removed from e.g. the FocusChain.
2015-05-08 12:43:47 +02:00
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.
2015-05-08 12:43:47 +02:00
Martin Gräßlin
28d314a487
[wayland] Create a DataDeviceManager in wayland server
...
Makes QtWayland way more happy.
2015-05-08 12:43:47 +02:00
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.
2015-05-08 12:43:47 +02:00
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.
2015-05-08 12:43:47 +02:00
Martin Gräßlin
b6f793090e
Toplevel::setOpacity becomes virtual
...
It calls unconditionally into NETWinInfo.
2015-05-08 12:43:47 +02:00
Martin Gräßlin
23862e512d
Move implementation of ::palette to AbstractClient
...
Includes moving of the colorscheme and DecorationPalette related
functionality.
2015-05-08 12:43:47 +02:00
Martin Gräßlin
38b418887a
Move minimize implementation to AbstractClient
2015-05-08 12:43:47 +02:00
Martin Gräßlin
d2884484bc
Move ::titlebarPosition to AbstractClient
2015-05-08 12:43:47 +02:00
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
2015-05-08 12:43:47 +02:00
Martin Gräßlin
254887155c
Implement virtual desktop handling in AbstractClient
2015-05-08 12:43:47 +02:00
Martin Gräßlin
1bfba1765c
Signal desktopPresenceChanged carries AbstractClient as argument
2015-05-08 12:43:47 +02:00
Martin Gräßlin
e672a53721
Move implementation of demanding attention to AbstractClient
2015-05-08 12:43:47 +02:00
Martin Gräßlin
16568804be
Demands Attention handling in Workspace operates on AbstractClient
...
Affects:
* list attention_chain
* clientAttentionChanged
* clientDemandsAttentionChanged
2015-05-08 12:43:47 +02:00
Martin Gräßlin
986308f938
Move implementation of isSpecialWindow to AbstractClient
2015-05-08 12:43:46 +02:00
Martin Gräßlin
4b27abd76b
Move implementation of wantsTabFocus to AbstractClient
2015-05-08 12:43:46 +02:00
Martin Gräßlin
1fcd1120d9
Move auto-raise handling to AbstractClient
...
Adds QTimer to AbstractClient and introduces new protected method to
start the timer.
2015-05-08 12:43:46 +02:00
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.
2015-05-08 12:43:46 +02:00
Martin Gräßlin
b84118a51b
Workspace::updateClientLayer operates on AbstractClient
...
Requires a virtual updateLayer in AbstractClient. Default implementation
does nothing.
2015-05-08 12:43:46 +02:00
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.
2015-05-08 12:43:46 +02:00
Martin Gräßlin
3527f1d4b8
Implement AbstractClient::icon
...
Moves implementation, adds a protected setter and provides the property.
2015-05-08 12:43:46 +02:00