make sure Shadow X11 property is not set on decorated windows, since it is handled by
the decoration itself (and therefore should not be by kwin).
This commit is contained in:
parent
a9ce4aa2af
commit
275cf05184
2 changed files with 30 additions and 1 deletions
|
@ -42,8 +42,12 @@
|
|||
#include <QtGui/QLabel>
|
||||
#include <QtGui/QPainter>
|
||||
#include <QtGui/QBitmap>
|
||||
#include <QtGui/QX11Info>
|
||||
#include <QtCore/QObjectList>
|
||||
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/Xatom.h>
|
||||
|
||||
namespace Oxygen
|
||||
{
|
||||
|
||||
|
@ -59,7 +63,8 @@ namespace Oxygen
|
|||
_forceActive( false ),
|
||||
_mouseButton( Qt::NoButton ),
|
||||
_itemData( this ),
|
||||
_sourceItem( -1 )
|
||||
_sourceItem( -1 ),
|
||||
_shadowAtom( 0 )
|
||||
{}
|
||||
|
||||
//___________________________________________
|
||||
|
@ -167,6 +172,9 @@ namespace Oxygen
|
|||
|
||||
} else if( hasSizeGrip() ) deleteSizeGrip();
|
||||
|
||||
// needs to remove shadow property on window since shadows are handled by the decoration
|
||||
removeShadowHint();
|
||||
|
||||
}
|
||||
|
||||
//___________________________________________
|
||||
|
@ -1827,4 +1835,18 @@ namespace Oxygen
|
|||
_sizeGrip = 0;
|
||||
}
|
||||
|
||||
//_________________________________________________________________
|
||||
void Client::removeShadowHint( void )
|
||||
{
|
||||
|
||||
// do nothing if no window id
|
||||
if( !windowId() ) return;
|
||||
|
||||
// create atom
|
||||
if( !_shadowAtom )
|
||||
{ _shadowAtom = XInternAtom( QX11Info::display(), "_KDE_NET_WM_SHADOW", False); }
|
||||
|
||||
XDeleteProperty(QX11Info::display(), windowId(), _shadowAtom);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -41,6 +41,7 @@
|
|||
#include <QtCore/QTextStream>
|
||||
#include <QtCore/QTimerEvent>
|
||||
|
||||
#include <X11/Xdefs.h>
|
||||
|
||||
namespace Oxygen
|
||||
{
|
||||
|
@ -398,6 +399,9 @@ namespace Oxygen
|
|||
|
||||
//@}
|
||||
|
||||
//! remove shadow hint
|
||||
void removeShadowHint( void );
|
||||
|
||||
protected slots:
|
||||
|
||||
//! set target item to -1
|
||||
|
@ -459,6 +463,9 @@ namespace Oxygen
|
|||
*/
|
||||
QBasicTimer _dragStartTimer;
|
||||
|
||||
//! shadow atom
|
||||
Atom _shadowAtom;
|
||||
|
||||
};
|
||||
|
||||
} // namespace Oxygen
|
||||
|
|
Loading…
Reference in a new issue