[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/4.4/kdebase/workspace/kwin/effects
From: Martin Gräßlin <ubuntu () martin-graesslin ! com>
Date: 2010-03-14 16:26:10
Message-ID: 1268583970.555981.8043.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 1103210 by graesslin:
Backport rev 1103206:
Rearrange windows when the gemoetry changes in both pw and dg in pw mode.
CCBUG: 228829
M +25 -0 desktopgrid/desktopgrid.cpp
M +1 -0 desktopgrid/desktopgrid.h
M +10 -0 presentwindows/presentwindows.cpp
M +1 -0 presentwindows/presentwindows.h
--- branches/KDE/4.4/kdebase/workspace/kwin/effects/desktopgrid/desktopgrid.cpp \
#1103209:1103210 @@ -419,6 +419,31 @@
effects->addRepaintFull();
}
+void DesktopGridEffect::windowGeometryShapeChanged( EffectWindow* w, const QRect& \
old ) + {
+ Q_UNUSED( old )
+ if( !activated )
+ return;
+ if( w == windowMove && wasWindowMove )
+ return;
+ if( isUsingPresentWindows() )
+ {
+ if( w->isOnAllDesktops() )
+ {
+ for( int i=0; i<effects->numberOfDesktops(); i++ )
+ {
+ WindowMotionManager& manager = \
m_managers[i*effects->numScreens()+w->screen()]; + \
m_proxy->calculateWindowTransformations(manager.managedWindows(), w->screen(), \
manager); + }
+ }
+ else
+ {
+ WindowMotionManager& manager = \
m_managers[(w->desktop()-1)*effects->numScreens()+w->screen()]; + \
m_proxy->calculateWindowTransformations(manager.managedWindows(), w->screen(), \
manager); + }
+ }
+ }
+
void DesktopGridEffect::windowInputMouseEvent( Window, QEvent* e )
{
if(( e->type() != QEvent::MouseMove
--- branches/KDE/4.4/kdebase/workspace/kwin/effects/desktopgrid/desktopgrid.h \
#1103209:1103210 @@ -46,6 +46,7 @@
virtual void paintWindow( EffectWindow* w, int mask, QRegion region, \
WindowPaintData& data ); virtual void windowClosed( EffectWindow* w );
virtual void windowAdded( EffectWindow* w );
+ virtual void windowGeometryShapeChanged( EffectWindow* w, const QRect& old \
); virtual void windowInputMouseEvent( Window w, QEvent* e );
virtual void grabbedKeyboardEvent( QKeyEvent* e );
virtual bool borderActivated( ElectricBorder border );
--- branches/KDE/4.4/kdebase/workspace/kwin/effects/presentwindows/presentwindows.cpp \
#1103209:1103210 @@ -408,6 +408,16 @@
m_motionManager.unmanage( w );
}
+void PresentWindowsEffect::windowGeometryShapeChanged( EffectWindow* w, const QRect& \
old ) + {
+ Q_UNUSED( old )
+ if( !m_activated )
+ return;
+ if( !m_windowData.contains( w ))
+ return;
+ rearrangeWindows();
+ }
+
bool PresentWindowsEffect::borderActivated( ElectricBorder border )
{
if( !m_borderActivate.contains( border ) && !m_borderActivateAll.contains( \
border ) )
--- branches/KDE/4.4/kdebase/workspace/kwin/effects/presentwindows/presentwindows.h \
#1103209:1103210 @@ -79,6 +79,7 @@
virtual void windowAdded( EffectWindow *w );
virtual void windowClosed( EffectWindow *w );
virtual void windowDeleted( EffectWindow *w );
+ virtual void windowGeometryShapeChanged( EffectWindow* w, const QRect& old \
); virtual bool borderActivated( ElectricBorder border );
virtual void windowInputMouseEvent( Window w, QEvent *e );
virtual void grabbedKeyboardEvent( QKeyEvent *e );
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic