Commit graph

10657 commits

Author SHA1 Message Date
Thomas Lübking
287acae1db handle closebutton arm state inside effect only
the enabled/disabled change is a useless distraction

implicitly fixes
BUG: 321810
FIXED-IN: 4.11
REVIEW: 111538
2013-07-19 21:16:44 +02:00
Thomas Lübking
0f57c9407a depend titlebar protection dir pref on cap dir
when visualPixels is not 0, this means the titlebar does
not touch an upper/lower border, thus moving that direction
is ok and protection should be sought horizontally

BUG: 322507
FIXED-IN: 4.11
REVIEW: 111573
2013-07-19 21:16:15 +02:00
Thomas Lübking
02ed20662d prevent shrinking away titlebar f. bottom corners
it's the same condition as shriking away from plain edges
(one can resize exclusively in that direction as well)

REVIEW: 111573
2013-07-19 21:14:43 +02:00
Martin Gräßlin
93e2ce4bfd Use QVector instead of QList for the list of active effects
We only append to the list, so the advantage of insertion into QList
does not matter.

Thanks to Milian Wolff to point this out in his Akademy talk [1] and for
pointing me to Marc Mutz blog post [2] discussing this topic and
recommending the usage of QVector over QList.

[1] http://milianw.de/files/apps-on-speed-akademy2013/index.html
[2] http://marcmutz.wordpress.com/effective-qt/containers/

REVIEW: 111597
2013-07-19 16:03:50 +02:00
Martin Gräßlin
13ad458cca Use const_iterators for our Effect iterators
We never modify the list, so we don't need the mutuable iterator. This
ensures that the data doesn't get detached.
2013-07-19 16:03:50 +02:00
Martin Gräßlin
4ab0a6a223 Disable lanczos filter also for SandyBridge on Mesa 9.1
Debian gave me an update to 9.1 and I started feeling the pain...
Mesa 9.2 works fine on the same hardware.

REVIEW: 111558
2013-07-18 16:02:38 +02:00
l10n daemon script
2fc1ae684b SVN_SILENT made messages (.desktop file) 2013-07-14 06:59:57 +00:00
l10n daemon script
88e8e01ea7 SVN_SILENT made messages (.desktop file) 2013-07-13 06:44:24 +00:00
l10n daemon script
f203861b12 SVN_SILENT made messages (.desktop file) 2013-07-10 02:34:48 +00:00
Thomas Lübking
3ad47552d0 non-empty attrib_list for glXCreateContextAttribsARB
empty list is legal but causes bogus context on at least i915

BUG: 321843
REVIEW: 111355
FIXED-IN: 4.11
2013-07-08 18:53:37 +02:00
Thomas Lübking
5bd49bfee2 update visibleRect when elevating toplevel
required to clean eg. the blur cache and because the
stacking changes.

BUG: 321831
FIXED-IN: 4.11
REVIEW: 111359
2013-07-08 18:53:37 +02:00
Thomas Lübking
5cf328fbec ensure to not add NULL effect windows to stacking
happens during threaded startup and crashes in blur effect
when initially enabled

REVIEW: 111360
2013-07-08 18:53:37 +02:00
Thomas Lübking
3b285ba572 don't query effects threaded
calls sycoca/kconfiggroup...

BUG: 321576
FIXED-IN: 4.11
REVIEW: 111374
2013-07-08 18:53:36 +02:00
Thomas Lübking
9f69a793e8 fix GL1.2 saturation modulation for non opaques
whether a window is ARGB or just not opaque does
not matter

BUG: 319091
FIXED-IN: 4.11
REVIEW: 111433
2013-07-08 18:53:36 +02:00
Thomas Lübking
bcf6c9c319 use configured xrender filter
that's why it's configured

REVIEW: 111428
BUG: 322074
FIXED-IN: 4.11
2013-07-08 18:53:36 +02:00
Martin Gräßlin
2689bcbec4 ScopedCPointer instead of QScopedPointer 2013-07-08 08:34:06 +02:00
Martin Gräßlin
71940e879d Fix modulation in Invert effect
Thanks to Kevin for spotting and providing a fix.

BUG: 322013
FIXED-IN: 4.11
2013-07-08 08:31:51 +02:00
l10n daemon script
93ca1c4396 SVN_SILENT made messages (.desktop file) 2013-07-08 04:04:09 +00:00
Fredrik Höglund
4b120288b6 kwin: Use glBufferSubData() when preferred
Use glBufferData() to reallocate the data store, and glBufferSubData()
to upload data to unused ranges of vertex buffers.
2013-07-08 01:23:38 +02:00
Fredrik Höglund
9de4c490ba kwin: Add GLPlatform::preferBufferSubData()
This method returns true when glMapBufferRange() is likely to perform
worse than glBufferSubData() when updating an unused range in a buffer
object.

This is the case with the NVIDIA driver, where glMapBufferRange()
will force thread serialization. The driver tracks which ranges of
the buffer are in use, so calls to glBufferSubData() should not
cause a pipeline stall.
2013-07-08 01:23:37 +02:00
Christoph Feck
4e897f2315 Fix crash after zoom when not using XRender
Commit for bug 304435 missed a check for OpenGL.
OK'd by Thomas Lübking.

BUG: 322073
2013-07-08 00:22:27 +02:00
l10n daemon script
205c557f89 SVN_SILENT made messages (.desktop file) 2013-07-05 03:48:50 +00:00
l10n daemon script
cc001b9be0 SVN_SILENT made messages (.desktop file) 2013-07-04 03:55:20 +00:00
Fredrik Höglund
a87e8f5e8e kwin: Drop the xcb_icccm dependency
This dependency is causing build problems on a number of systems,
and it doesn't make much sense to bring in a whole library for three
one-line convenience functions.
2013-07-02 00:21:32 +02:00
Thomas Lübking
a3d502338d delay adding Unmanaged clients by 50ms
This provides some sort of synthetic XSYNC support
for unmanaged clients and allows them to do an initial
update after mapping and before being painted (prevent
flicker)
Also it helps with Unmanaged clients performing quick
map/unmap/map cycles what also seems to induce the black
window issue on the nvidia blob.

CCBUG: 284888
BUG: 319184
FIXED-IN: 4.11
REVIEW: 111292
2013-07-01 21:19:54 +02:00
Thomas Lübking
f71457b2cf Don't highlight hoverd window while PW start/stops
Instead have a synthetic motion after the effect started
and explicitly set the selected window on click/drags

BUG: 314840
BUG: 314715
FIXED-IN: 4.11
CCBUG: 314717
REVIEW: 111276
2013-07-01 21:19:53 +02:00
Thomas Lübking
eb647c7489 do not emit maximizeChange if mode didn't change
BUG: 321638
FIXED-IN: 4.11
REVIEW: 111262
2013-07-01 21:19:53 +02:00
Thomas Lübking
9694330aa8 grant minimizability to transient special clients
This will not provide a 100% fix, since at least KMainWindow
toolbars at some point start to behave like override_redirects

BUG: 320921
REVIEW: 111303
FIXED-IN: 4.11
2013-07-01 21:19:53 +02:00
Thomas Lübking
89a1027ac8 fix secondary test for hiding utility windows
broke with 2ae475ce
CCBUG: 320921
REVIEW: 111302
2013-07-01 21:19:52 +02:00
l10n daemon script
dcd670692b SVN_SILENT made messages (.desktop file) 2013-07-01 03:54:58 +00:00
l10n daemon script
b83d4b1583 SVN_SILENT made messages (.desktop file) 2013-06-30 03:57:16 +00:00
Fredrik Höglund
6562fcc665 kwin: Don't query GL_VIEWPORT in pushRenderTarget()
Assume that the default framebuffer has the same dimensions as the screen.

By not quering the dimensions of the viewport we don't risk serialization
in drivers that use threaded dispatch.
2013-06-27 00:06:54 +02:00
Fredrik Höglund
7124f5190b Revert "kwin: Make WindowQuadList inherit from QVector"
This reverts commit 23dff966437bb664a2ffdb3f7957ef39978f5fad.

Using QVector is not a win when effects such as wobbly windows are
active, due to the realloc overhead. So revert this change for now.
2013-06-27 00:06:49 +02:00
Martin Gräßlin
db2e6687e1 Remove dead assignment in GLVertexBuffer::draw
Variable primitiveMode is not read in the branch and there's a return in
the same branch.

REVIEW: 111192
2013-06-26 17:58:48 +02:00
Martin Gräßlin
fa6b46ef30 Remove dead assignments
Variable deltaX and deltaY are assigned in the if-else branches, but not
read again after being set in the branches.
2013-06-26 17:58:43 +02:00
Martin Gräßlin
2ea7be70b7 Remove not needed KCmdLineArgs::parsedArgs() in kdemain
It's also called in KWin::Application's ctor.
2013-06-26 17:58:43 +02:00
Martin Gräßlin
41ff079da5 Dead increment 2013-06-26 17:58:43 +02:00
Thomas Lübking
725534471e exclude padding from snap delta of screen snap
using the actual delta this casewise causes false
preference for window snapping (less to move)
this restores the pre snap-to-content behavior
in that regard and delta isn't used for anything else.

BUG: 321325
FIXED-IN: 4.11
REVIEW: 111139
2013-06-26 12:42:10 +02:00
Thomas Lübking
774e3ec05b ignore desktops and splashes for snapping
Desktops cannot be resonably snapped or cause
implicit screen snapping and splashes are undemanded
short term clients

REVIEW: 111139
2013-06-26 12:42:10 +02:00
Thomas Lübking
16ee964eb7 Ignore the desktop on smart placement
The desktop usually intersects all windows and
by this pollutes the heuristics with its punishment
2013-06-26 12:42:10 +02:00
Thomas Lübking
70d81ce426 drop inputFocus on internalKeep
unmapping would do the same, but does not take
place to keep the window alive for the compositor
this breaks re-activation which takes place on
inputFocus events which won't occur since the
window got deactivated, but never lost the focus

BUG: 317484
FIXED-IN: 4.11
REVIEW: 111046
2013-06-26 12:42:09 +02:00
Thomas Lübking
3f69a5d09b move Screens::create post global config reading
It calls KConfigGroup what is not thread safe and
collides with threaded config reading.

BUG: 321164
FIXED-IN: 4.11
REVIEW: 111082
2013-06-26 12:42:09 +02:00
Thomas Lübking
936b63dc1a updt ActiveLayer client layer on client activation
When a client becomes active on a screen with a fullscreen
window on the ActiveLayer, that window needs to be withdrawn
from the active layer explicitly as it does not get this update
with deactivation.

REVIEW: 111084
2013-06-26 12:42:09 +02:00
Thomas Lübking
e717c131bf Hook modalChanged signal for DialogParent script
Eg. gtk+ alters the modality after mapping and
before unmapping the window.
Therfore the former implementation ahd a wrong idea
about the modality until the window was activated and
again had a wrong idea when the dialog closed, keeping
the main client dimmed.

Modality changes at runtime are uncommon but legal and can
happen anytime.

BUG: 321340
FIXED-IN: 4.11
REVIEW: 111154
2013-06-26 12:42:09 +02:00
Thomas Lübking
cf6acf84b9 deny configure requests to leave QuickTiling
similar to maximization blocking
also ensure the user can permit configure requests
for quick tiled and maximized windows

REVIEW: 111186
BUG: 321491
FIXED-IN: 4.11
2013-06-26 12:42:09 +02:00
Thomas Lübking
fab8aa9a12 update composite blocking from deleted, not client
fixing bug by deferring the deletion and removal of the
deleted to the next event cycle had the side effect that
this now happens in the event cycle of the compositor
restart, which was deferred to avoid precisely that...

so the test is now moved to the removal of the deleted
which got an additional flag wasClient to avoid calling
this action for each and every tooltip (and might be usable
elsewise)

BUG: 321537
FIXED-IN: 4.11
REVIEW: 111204
2013-06-26 12:42:09 +02:00
Aurélien Gâteau
4a426d731d kwin: Fix build on arm
CCMAIL: ubuntu@kitterman.com
2013-06-26 10:13:33 +02:00
Hrvoje Senjan
10f7f12820 Merge remote-tracking branch 'origin/KDE/4.10' 2013-06-25 21:09:30 +02:00
Weng Xuetian
756bf0a5e3 Fix BigSmall Icon Tab box behavior when icons can not fit in the screen
REVIEW: 111163
2013-06-25 11:09:01 -04:00
l10n daemon script
e93b7b7e68 SVN_SILENT made messages (.desktop file) 2013-06-25 03:48:10 +00:00