summaryrefslogtreecommitdiffstats
path: root/kcontrol/randr/krandrtray.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kcontrol/randr/krandrtray.cpp')
-rw-r--r--kcontrol/randr/krandrtray.cpp19
1 files changed, 6 insertions, 13 deletions
diff --git a/kcontrol/randr/krandrtray.cpp b/kcontrol/randr/krandrtray.cpp
index 422aebba2..18d14bdc6 100644
--- a/kcontrol/randr/krandrtray.cpp
+++ b/kcontrol/randr/krandrtray.cpp
@@ -136,13 +136,14 @@ void KRandRSystemTray::contextMenuAboutToShow(KPopupMenu* menu)
findPrimaryDisplay();
refresh();
-#ifndef QT_XRANDR_FIXES_01
// HACK
- // This is needed because all unpatched versions of Qt does not properly generate screen
+ // This is needed because Qt does not properly generate screen
// resize events when switching screens, so KDE gets stuck in the old resolution
- currentScreen()->proposeSize(GetHackResolutionParameter());
- currentScreen()->applyProposed();
-#endif
+ // This only seems to happen with more than one screen, so check for that condition...
+ if (kapp->desktop()->numScreens() > 1) {
+ currentScreen()->proposeSize(GetHackResolutionParameter());
+ currentScreen()->applyProposed();
+ }
currentScreen()->proposeSize(GetDefaultResolutionParameter());
currentScreen()->applyProposed();
@@ -256,9 +257,6 @@ int KRandRSystemTray::GetDefaultResolutionParameter()
return returnIndex;
}
-#ifndef QT_XRANDR_FIXES_01
-#warning "Your version of Qt3 does not contain the XRandR screen switching patch. This will force a slow and suboptimal display switching method."
-// HACK
int KRandRSystemTray::GetHackResolutionParameter() {
int resparm;
@@ -267,7 +265,6 @@ int KRandRSystemTray::GetHackResolutionParameter() {
return resparm;
}
-#endif
void KRandRSystemTray::populateMenu(KPopupMenu* menu)
{
@@ -561,7 +558,6 @@ void KRandRSystemTray::slotCycleDisplays()
findPrimaryDisplay();
refresh();
-#ifndef QT_XRANDR_FIXES_01
// HACK
// This is needed because Qt does not properly generate screen
// resize events when switching screens, so KDE gets stuck in the old resolution
@@ -570,7 +566,6 @@ void KRandRSystemTray::slotCycleDisplays()
currentScreen()->proposeSize(GetHackResolutionParameter());
currentScreen()->applyProposed();
}
-#endif
currentScreen()->proposeSize(GetDefaultResolutionParameter());
currentScreen()->applyProposed();
@@ -746,7 +741,6 @@ void KRandRSystemTray::slotOutputChanged(int parameter)
findPrimaryDisplay();
refresh();
-#ifndef QT_XRANDR_FIXES_01
// HACK
// This is needed because Qt does not properly generate screen
// resize events when switching screens, so KDE gets stuck in the old resolution
@@ -755,7 +749,6 @@ void KRandRSystemTray::slotOutputChanged(int parameter)
currentScreen()->proposeSize(GetHackResolutionParameter());
currentScreen()->applyProposed();
}
-#endif
currentScreen()->proposeSize(GetDefaultResolutionParameter());
currentScreen()->applyProposed();