Commit graph

12716 commits

Author SHA1 Message Date
Jonathan Riddell
325a479e6e add include(ECMOptionalAddSubdirectory) 2015-02-19 17:12:18 +01:00
Jonathan Riddell
63ff7263a3 use ecm_optional_add_subdirectory instead of add_subdirectory for docs, the translations may be incomplete 2015-02-19 17:06:25 +01:00
Lukáš Tinkl
ae3d2092eb extract UI messages correctly 2015-02-19 14:41:03 +01:00
Jonathan Riddell
84954b9e4f Update version number for 5.2.1 2015-02-19 11:34:15 +01:00
Martin Gräßlin
7bbb68aad6 Check GL version and/or extension for using texture format GL_R8
BUG: 344301
FIXED-IN: 5.2.1
REVIEW: 122615
2015-02-18 09:09:50 +01:00
l10n daemon script
891c3fe83c SVN_SILENT made messages (.desktop file) 2015-02-15 11:23:45 +00:00
Martin Gräßlin
d344b6cc3d Fix glPixelStore in GLTexture::update
Resetting glPixelStore is bound to the variable useUnpack, but setting
was only bound to a subset of the checks going into useUnpack variable.
This could cause an assert if one updated with a QImage not in format
ARGB32_Premultiplied.

REVIEW: 122521
2015-02-11 15:31:51 +01:00
Martin Gräßlin
7b5cf8bcdc [effects] Ensure the correct cursor shape is set for mouse interception
When starting mouse interception the window might already be created
in which case the cursor wasn't defined. So let's always set it.

REVIEW: 12232
2015-02-06 09:40:30 +01:00
Thomas Lübking
ff700a8db5 fix e3768b4355
accidentally picked the patch from the wrong branch
just about comments
2015-02-06 00:27:31 +01:00
Thomas Lübking
92aa2fb553 save geom_restore before calling for border update
otherwise the stored geometry would be correct for
maximized borders, thus the unmaximized borders
make the window to small on unmaximizing

BUG: 343691
FIXED-IN: 5.2.1
REVIEW: 122416
2015-02-05 17:15:11 +01:00
Thomas Lübking
fa1368cb9e correctly handle virtual desktop on packing
copy approach from smart placement

REVIEW: 122417
2015-02-05 17:14:23 +01:00
Thomas Lübking
4f7edb8d74 Rules: make WindowRole matching case sensitive
required by KWindowInfo forwarding
BUG: 343709
FIXED-IN: 5.2.1
REVIEW: 122407
2015-02-05 17:14:08 +01:00
Thomas Lübking
49fa157f0f do not wrap text in deco button drag source
The text cannot be aligned to the icon (makes
it move around when dragging the icon) nor
can we just allocate two line (makes single lines
detached from the icon)

BUG: 343411
REVIEW: 122301
FIXED-IN: 5.2.1
2015-02-05 17:05:56 +01:00
Thomas Lübking
e3768b4355 updateFocusMousePosition() before some actions
in particular artificial geometry updates that should not
update the focus and are prone to a static cursor

BUG: 343319
REVIEW: 122299
FIXED-IN: 5.2.1
2015-02-05 17:05:34 +01:00
Thomas Lübking
2390024f69 use xcb_time_current_time as setinputfocus default
BUG: 343430
REVIEW: 122298
FIXED-IN: 5.2.1
2015-02-05 17:05:14 +01:00
Martin Gräßlin
04d6bd2874 [kcmkwin/compositing] Fix ordering of items in keep window thumbnail combo box
BUG: 343399
FIXED-IN: 5.2.1
REVIEW: 122424
2015-02-04 14:05:16 +01:00
Martin Gräßlin
11fd9f69c1 Fix build with clang and gcc 5.0
BUG: 343529
FIXED-IN: 5.2.1
2015-02-03 14:01:53 +01:00
Martin Gräßlin
62d71bc247 [kcmkwin/options] Load/Unload WindowGeometry effect
Depending on the state of the show window geometry we need to load
or unload the effect.

BUG: 343272
FIXED-IN: 5.2.1
REVIEW: 122258
2015-01-29 11:44:47 +01:00
Martin Gräßlin
658ff303fe [effects] Support building the effect_builtins without need to link the lib
This change allows to include the effect_builtins.cpp into the build of
e.g. a kcm without having to link against all effects.

The use case for this is when one needs to resolve just the name of an
effect without wanting to hard code the name.
2015-01-29 11:44:47 +01:00
Martin Gräßlin
a93a2ab191 Disable libinput integration if >= 0.8 is found
libinput 0.8 is incompatible causing the build to fail. As we are in
dependency freeze the only option is to disable the build.

BUG: 342893
FIXED-IN: 5.2.1
2015-01-28 16:20:57 +01:00
David Edmundson
b62bf43236 Avoid deleting an engine whilst components from our engine are still in use
Otherwise it can lead to crashes

Reviewed-by: Martin G
2015-01-28 14:12:25 +01:00
Marco Martin
63885cc5b3 use xembed for the qml view of window decorations modul
the only way to ensure the view won't randomly become black
(probably QQuickwidget won't be fixed in qt anytime soon or
ever in 5.x lifetime due to how architecturally is)

basically systemsettings has no control of what gets loaded in,
if one other kcm will call winId(), this one will break.

BUG:341971
2015-01-28 09:58:47 +01:00
Martin Gräßlin
3b6ab89617 [kcmkwin/deco] Do not runtime depend on QtQuick 2.4 (Qt 5.4)
Sorry, sorry, sorry! We need better runtime checks on the CI.
2015-01-27 14:08:12 +01:00
l10n daemon script
795ebbb879 SVN_SILENT made messages (.desktop file) 2015-01-27 12:18:48 +00:00
Martin Gräßlin
7508cd49e0 Trigger rebuilding of quads after creating a new DecorationShadow
If there were already a shadow, the quads are rebuild, but not if
we created a new shadow. This is not a problem if the shadow exists
before the quads are built for the first time (e.g. when managing
the window), but if the shadow is created later on the quads are
incorrect and the shadow doesn't get rendered at all. This happens
for example with Aurorae based decoration themes, where the creation
of the first shadow is delayed into the next event cycle.
2015-01-27 11:42:21 +01:00
Martin Gräßlin
1e41e3e674 Properly disconnect the test xcb connection
So far it only got disconnected in the multi-head situation.

REVIEW: 122218
2015-01-26 11:11:09 +01:00
Martin Gräßlin
52793c5e5b [kcmkwin/deco] Fix build for Qt < 5.4
QQuickWidget::setClearColor is new in Qt 5.4. Sorry about the unintended
breakage of building with Qt 5.3.
2015-01-26 10:27:39 +01:00
Jonathan Riddell
f26845cf8f Update version number for 5.2.0 2015-01-22 11:34:22 +01:00
Thomas Lübking
ce2fa727e8 Overhaul of deco kcm
- align with system palette
- base color for buttons and preview individually
  to create a visual gap (make them more standalone)
- downsized button config buttons to match up w/ preview
  appearance (and because it was simply to huge for a desktop thing)
- upsized preview to preferably show two elements at once
  (current + 2*1/2context)
- made the titlebar a visible visual element
- label the titlebar "Titlebar"
- move the (altered) hint to the drag-from area
- hint draggability with a pointing hand cursor
- less hardcoded values
- brief animations on button adding/removing

BUG: 337544
REVIEW: 122064
2015-01-22 01:31:31 +01:00
l10n daemon script
56b830202e SVN_SILENT made messages (.desktop file) 2015-01-21 09:49:18 +00:00
Martin Gräßlin
6e67badfab Handle case that XCURSOR_SIZE environment variable is not set
In a default startup startkde does not set XCURSOR_SIZE environment
variable. Only XCURSOR_THEME is set. The size should be DPI dependent.
With this patch Cursor is able to handle this situation and does not
fall back to loading the config from file. Logic is taken from
KHintsSettings in frameworkintegration which in turn is from
KApplication.

REVIEW: 122139
2015-01-21 09:24:01 +01:00
Martin Gräßlin
4a260c6f42 [kcmkwin/tabbox] Improve locating the services used in preview mode
Instead of hard coding the desktop files, let's try to use what the
user actually uses.
 * Browser mapped from text/html mime type
 * File manager mapped from inode/directory mime type
 * Email client mapped from message/rfc822 mime type

Only systemsettings is "hard coded" as there is no mime type to map.

The thumbnails are not changed, though. But they are so small that
it's hardly recognizable anyway. For future it could be considered to
map against appdata to get a better screenshot.

BUG: 310622
REVIEW: 122170
2015-01-20 15:25:16 +01:00
Martin Gräßlin
198ce47fec [scene-xrender] Trigger a full decoration repaint when sizes are dirty
When the pixmaps are re-created we should ensure that they are filled
with proper content.

BUG: 342980
REVIEW: 122148
2015-01-19 15:30:06 +01:00
Martin Gräßlin
2910645df0 [scene-xrender] Implement support for DecorationShadow
The DecorationShadow on XRender is implemented by creating the
required QPixmaps in ::prepareBackend. That way the rendering
infrastructure can be shared with the window based shadows.

BUG: 342758
REVIEW: 122009
2015-01-19 09:30:01 +01:00
Tobias C. Berner
ef3f0f753b Add <array> include where needed, to make it build on FreeBSD.
REVIEW: 122090
2015-01-17 15:22:11 +02:00
Martin Gräßlin
60ebdbe352 Improve reading the color scheme in Client
Only emit paletteChanged signal and repaint decoration if the palette
actually changed. Even more important: check for path.isEmpty() instead
of path.isNull(). ::isNull() returns false for "" causing a costly
creation for default color scheme.

REVIEW: 122083
2015-01-16 07:58:32 +01:00
Martin Gräßlin
7dc2baf74d Update cursor theme when it changes at runtime
Connecting to the DBus signal emitted on KGlobalAccels by the
cursor kcm and forcing a reload of all cursors. For runtime
config change we need to take the config value and need to ignore
the now outdated environment variables.

REVIEW: 121928
BUG: 325763
FIXED-IN: 5.2.0
2015-01-14 08:45:22 +01:00
Martin Gräßlin
ab4b1ba25a First try getting cursor theme from environment variable
If XCURSOR_THEME and XCURSOR_SIZE are set they are preferred over
reading the values from kcminputrc.

REVIEW: 121923
BUG: 334954
FIXED-IN: 5.2.0
2015-01-14 08:33:33 +01:00
l10n daemon script
d173ff7412 SVN_SILENT made messages (.desktop file) 2015-01-13 12:47:17 +00:00
Martin Gräßlin
5e47d41f7b [effects/startupfeedback] Use dedicated shader for bouncing cursor
BUG: 342203
REVIEW: 121941
2015-01-13 08:46:11 +01:00
Lasse Liehu
4963bf3d44 Fix QTranslator installation for Qt translations
The translator instance was uninstalled right away after installation
because it was destroyed when returning from the function.

REVIEW: 121977
2015-01-12 21:10:38 +02:00
Martin Gräßlin
c4fb3cd55d [kdecoration] Try falling back to default plugin and Aurorae
If the configured decoration plugin fails to load, we try to load
the default decoration plugin. If that also fails to load, we try
to load Aurorae, which is shipped with KWin, so the chances are
higher that it is available.

Also the checks in Aurorae are improved to fall back to the Plastik
theme if the selected SVG theme is not available.

BUG: 341014
FIXED-IN: 5.2.0
REVIEW: 121859
2015-01-12 14:30:30 +01:00
Martin Gräßlin
fcd8cf3ada [glxbackend] Introduce env variable KWIN_USE_INTEL_SWAP_EVENT
The feature is pretty much untested as it depends on Qt 5.4 and this
was not a requirement during the development of 5.2. On the other hand
regressions in this feature are very severe as it can freeze the screen
and by that render the system unusable.

This change disables the feature by default. To enable it use the
environment variable KWIN_USE_INTEL_SWAP_EVENT=1.

CCBUG: 342582
REVIEW: 122008
2015-01-12 14:30:02 +01:00
Martin Gräßlin
9fb27bc0ba [decoration] Use client's depth in X11Renderer for put_image
If the Client uses ARGB the depth is not 24, thus we should use
the actual depth from the Client.

BUG: 342757
2015-01-12 11:43:29 +01:00
Martin Gräßlin
6f0e4b2d5a [glxbackend] Add default values for member variables 2015-01-12 08:54:25 +01:00
Martin Gräßlin
6b0ae95b80 Increase so-version for kwineffect libraries
Known ABI changes in at least GLTexture, probably more places.
2015-01-09 16:03:23 +01:00
Fredrik Höglund
301a996563 glx: Fix the swap event filter for DRI3 drivers
The drawable field is set to the X drawable ID when the swap event is
synthesized by DRI2WireToEvent(), and the GLX drawable ID when the
event is received over the wire. The latter being the case with DRI3.

__glXWireToEvent() fixes this for Xlib clients by changing the field
to the X drawable ID. This doesn't work for xcb clients however,
so we have to expect the field to be set to either the X or the GLX
drawable ID.

BUG: 342582
2015-01-08 14:20:10 +01:00
David Edmundson
9fe660ac5c Notify when the client palette changes and proxy this to kdecoration
BUG: 341921
REVIEW: 121917
2015-01-08 13:16:20 +01:00
Martin Gräßlin
38849215d5 Recursion check while decoration updates the borders
Mostly a safety check, but fixes a crash with borderless maximized
windows. If that option is set we also do not notify the decoration
at all, as the deco will be destroyed anyway.

BUG: 341675
REVIEW: 121858
2015-01-08 12:50:05 +01:00
Jonathan Riddell
3f6524da8b Update version number for 5.1.95 2015-01-08 11:43:14 +01:00