Commit graph

10444 commits

Author SHA1 Message Date
Fredrik Höglund
19796b8263 kwin: Use the robust access functions
Use glReadnPixels() instead of glReadPixels(), and glGetnUniformfv()
instead of glGetUniformfv().
2013-05-21 00:22:57 +02:00
Fredrik Höglund
2f87b7542f kwin/es: Resolve functions for GL_EXT_robustness 2013-05-21 00:22:57 +02:00
Fredrik Höglund
adc581d2ab kwin: Resolve functions for GL_ARB_robustness
Only the subset of functions available in core contexts is resolved,
except for glGetnTexImageARB() and glGetnUniformivARB(), which are
not used by kwin.

Instead of setting the function pointers to NULL when the extension isn't
supported, kwin provides its own implementations that call the non-robust
versions of the functions.  This is so callers don't have to check if the
extension is supported before calling the functions.
2013-05-21 00:22:55 +02:00
Thomas Lübking
69ef2f9c16 tidy up
REVIEW: 109785
2013-05-20 16:09:27 +02:00
Thomas Lübking
b7e6a334da rebase measuring to nano res + fix vsync padding
REVIEW: 109784
2013-05-20 16:09:27 +02:00
Thomas Lübking
9446abc696 hasWaitSync -> blocksForRetrace and syncsToVBlank
since that's not the same.
also autodetect triple buffering

REVIEW: 109783
2013-05-20 16:09:27 +02:00
Oliver Henshaw
2a726bb289 Merge remote-tracking branch 'origin/KDE/4.10' into master
Conflicts:
	CMakeLists.txt
	kcontrol/style/kcmstyle.cpp
	kwin/effects/boxswitch/boxswitch.desktop
	kwin/effects/slideback/slideback.desktop
	kwin/kcmkwin/kwinoptions/kwinactions.desktop
	kwin/kwin.notifyrc
	libs/solid/control/backends/fakenet/solid_fakenet.desktop
	libs/solid/control/solidmodemmanager.desktop
	libs/solid/control/solidnetworkmanager.desktop
	libs/solid/control/solidremotecontrolmanager.desktop
	plasma/generic/applets/batterymonitor/metadata.desktop
	plasma/generic/applets/lock_logout/metadata.desktop
	plasma/generic/applets/notifications/contents/ui/LastNotificationPopup.qml
	plasma/generic/scriptengines/google_gadgets/plasma-packagestructure-googlegadgets.desktop
	plasma/generic/scriptengines/google_gadgets/plasma-scriptengine-googlegadgets.desktop
	solid/kcm/kcm_solid.desktop
	solid/modemmanager-0.4/solid_modemmanager04.desktop
	solid/networkmanager-0.7/solid_networkmanager07.desktop
	solid/networkmanager_fake-0.9/solid_networkmanager09_fake.desktop
	solid/wicd/solid_wicd.desktop
2013-05-20 14:18:21 +01:00
Kai Uwe Broulik
8a637e87fd Drop "effectsnotsupported" notification. It is no longer used.
BUG: 320020
2013-05-19 20:34:26 +02:00
Martin Gräßlin
fca3814fd9 Fix build error without screenedges
TabBox missed an ifdef.
2013-05-19 14:12:14 +02:00
Martin Gräßlin
ca5032e9d6 Drop explosion effect
It has been unmaintained and mostly broken for years.

BUG: 312176
FIXED-IN: 4.11
REVIEW: 110513
2013-05-19 09:56:04 +02:00
Script Kiddy
7e1386f415 SVN_SILENT made messages (.desktop file) 2013-05-18 10:23:03 +02:00
Script Kiddy
d2c32dc36e SVN_SILENT made messages (.desktop file) 2013-05-17 14:36:18 +02:00
Martin Gräßlin
59690ee625 Revert the change for when to emit the maximizedChanged signal
It broke the maximize window effect.

REVIEW: 110468
2013-05-17 11:09:49 +02:00
Martin Gräßlin
76d96506dc Remove damage argument in Toplevel::resetDamage
We always reset with the complete window geometry, so the subtracting
doesn't make any sense. We can just always set the damage to an empty
region.

REVIEW: 110438
2013-05-17 10:07:45 +02:00
Script Kiddy
e5316fa9d9 SVN_SILENT made messages (.desktop file) 2013-05-17 09:43:27 +02:00
Ralf Jung
d54176f52a Change default refresh rate to 60Hz
This changes the default refresh rate (which KWin uses if it cannot get the rate from the screen) from 50Hz to 60Hz.
There are two reasons for this:
- When plugging out the last active screen, even without calling xrandr the X server changes the screen geometry to some built-in minimum (320x200), with, of course, no information about the refresh rate. As a result, KWin assumes 50Hz and restarts the compositor to accommodate for this change, only to change it again soon thereafter when there's a screen again.
- I know of nobody using a 50Hz screen. Most people use 60Hz, some use 120Hz, but 50Hz seems pretty rare to me.

REVIEW: 110454
2013-05-16 16:53:42 +02:00
Aurélien Gâteau
9aea91166b Improve kwin_killer_helper dialog
Simplify dialog text, using different text for local and remote
processes.

Replace "KWin" in the dialog name with "Window Manager".

REVIEW: 110363
2013-05-16 09:39:11 +02:00
Thomas Lübking
8f4b3c33a8 connect toplevel to in-loop screenCount() signal
required because Screens::changed is emitted queued in case of timer shortcut
since a direct signal would cause problems on screen resizes (or rotations,
for that matter) since at that time QDesktopWidget::screenGeometry(int) -xrandr-
is updated, but QDesktopWidget::screen(int)->geometry() (root window) is NOT,
resulting in an invalid value in geometry.cpp/Workspace::desktopResiized(),
thus a "capped" overlay window

However, w/o the count updated we re-encounter what RR 110119 was supposed to fixed
in the first place ...

REVIEW: 110385
BUG: 319848
FIXED-IN: 4.11
2013-05-15 22:18:29 +02:00
Thomas Lübking
18332d3ddb revert to NON obosolete signtature
the signature is obsolete in KF5 but mandatory in KDE4
not using it so far breaks the protocol thus kstart temp.
rules fail

REVIEW: 110386
2013-05-15 22:18:29 +02:00
Thomas Lübking
b3a12c513e add mnemonics to tabbing and "more actions"
BUG: 302833
FIXED-IN: 4.11
REVIEW: 110402
2013-05-15 22:18:29 +02:00
Thomas Lübking
7efc42774f delay withdraw of support props
The CM selecton withdraw delay was introduced to mostly unburden
plasma from recreating the theme on temporary changes, but since
plasma also watches some properties hinting supported features
and acts in consequence, this isn't sufficient and actually causes
two theme changes instead of one in the case of a regular suspend

REVIEW: 110232
CCBUG: 179042
2013-05-15 22:18:29 +02:00
Thomas Lübking
dc1a489f91 don't RE-claim CM selection
stealing it from ourself is reported to be able
to confuse KWindowSystem about the state.
Also it causes minor but unnecessary overhead.

REVIEW: 110231
CCBUG: 179042
2013-05-15 22:18:28 +02:00
Script Kiddy
f668277b1b SVN_SILENT made messages (.desktop file) 2013-05-14 17:36:07 +02:00
Script Kiddy
211d1c73bf SVN_SILENT made messages (.desktop file) 2013-05-13 13:21:47 +02:00
Martin Gräßlin
2b26d969b1 Maybe now Jenkins is happy 2013-05-13 10:19:52 +02:00
Martin Gräßlin
255c6d822b Make Jenkins happy
Yes, it linked on my system.
2013-05-13 09:58:04 +02:00
Martin Gräßlin
9f4f713e52 Remove mocked getStringProperty for test_client_machine
Utils has an xcb variant nowadays, so let's use that and get it under
unit test at the same time.
2013-05-13 09:33:50 +02:00
Martin Gräßlin
64e464afe5 Use xcb_window_t in Motif::readFlags
Actual method is not ported to XCB yet.

REVIEW: 110269
2013-05-13 09:33:29 +02:00
Martin Gräßlin
dfec59c60e Port getStringProperty to XCB 2013-05-13 08:48:19 +02:00
Martin Gräßlin
cefaa756e7 Port ClientWinMask to XCB
Enum values are nicer than defines.
2013-05-13 08:48:19 +02:00
Martin Gräßlin
5018c35313 Port timestampCompare/Diff to xcb
basically: s/Time/xcb_timestamp_t/g
2013-05-13 08:48:19 +02:00
Martin Gräßlin
20f9af1571 Port qt/x11 button and modifier mapping to XCB
enums are nicer than C defines
2013-05-13 08:48:19 +02:00
Martin Gräßlin
a51ba112fd Port (un)grabXServer to xcb 2013-05-13 08:48:19 +02:00
Martin Gräßlin
7e9d7f3959 Port (un)grabXKeyboard to XCB 2013-05-13 08:48:19 +02:00
Martin Gräßlin
023de5b75e Remove Workspace pointer from Group
REVIEW: 110360
2013-05-13 08:28:21 +02:00
Martin Gräßlin
fc4f431bfb Remove Workspace pointer from Placement 2013-05-13 08:28:16 +02:00
Martin Gräßlin
d305185247 Remove Workspace pointer from Toplevel
Instead have a simple workspace() method returning the pointer.
2013-05-13 08:28:16 +02:00
Martin Gräßlin
c4b3d11261 Reparse configuration before (un)loading scripts
When the scripting KCM triggered a loading of a script it did not work
because the scripting code was operating on an old data set.

Reparsing the configuration before evaluating which scripts to (un)load
solves this problem.

Cherry-picked from 4.10 branch: dd5b4bdec8e24359d4715c078e2f442967a3f873

CCBUG: 319767
2013-05-13 08:26:39 +02:00
Martin Gräßlin
f04be6b149 Reparse configuration before (un)loading scripts
When the scripting KCM triggered a loading of a script it did not work
because the scripting code was operating on an old data set.

Reparsing the configuration before evaluating which scripts to (un)load
solves this problem.

REVIEW: 110357
BUG: 319767
FIXED-IN: 4.10.4
2013-05-13 08:20:25 +02:00
Script Kiddy
d8db0f88be SVN_SILENT made messages (.desktop file) 2013-05-12 08:49:41 +02:00
Kai Uwe Broulik
ed955e9488 Rewrite Scale In effect in JavaScript
REVIEW: 109075
2013-05-11 22:20:39 +00:00
Montel Laurent
dd8cf0b678 normalize signal/slot 2013-05-11 14:09:15 +02:00
Script Kiddy
68ddc5f236 SVN_SILENT made messages (.desktop file) 2013-05-11 10:34:17 +02:00
Script Kiddy
44c8899fee SVN_SILENT made messages (.desktop file) 2013-05-10 11:04:42 +02:00
l10n daemon script
e49290a016 SVN_SILENT made messages (.desktop file) 2013-05-09 17:07:04 +00:00
Fredrik Höglund
2f11f71930 kwin: Bind attributes to the same indices in all shaders
This saves us from having to look up the attribute locations each
time we update the vertex array state.
2013-05-08 18:37:39 +02:00
Fredrik Höglund
87ad8789f1 kwin: Update the GL1 code in GLVertexBuffer to match the VBO code
This saves two memory allocations in the GL1 path in setData().
2013-05-08 18:37:27 +02:00
Fredrik Höglund
e1a33cec44 kwin: Don't reallocate the vertex buffer on every setData() call
Allocate enough space to hold the geometry for multiple draw calls,
and use glMapBufferRange() to gradually fill the buffer.  Once the
data store is full, it's orphaned and a new one is allocated.
2013-05-08 18:37:12 +02:00
Fredrik Höglund
0475559120 kwin: Use one buffer object in GLVertexBuffer
Store the vertex positions and texture coordinates in the same buffer
object. This saves one buffer allocation in every setData() call.

The attributes are also interleaved as they are uploaded into the buffer
to maximize locality of reference.
2013-05-08 18:37:02 +02:00
Fredrik Höglund
e65f717b47 kwin/es: Resolve functions for GL_EXT_map_buffer_range 2013-05-08 18:36:50 +02:00