Bug 101742 - docked mixer slider half cut off when kicker is placed on the right of the screen
Summary: docked mixer slider half cut off when kicker is placed on the right of the sc...
Status: RESOLVED FIXED
Alias: None
Product: kmix
Classification: Applications
Component: general (other bugs)
Version First Reported In: 2.4
Platform: unspecified Linux
: NOR normal
Target Milestone: ---
Assignee: Christian Esken
URL:
Keywords:
: 105650 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-03-17 21:57 UTC by murray
Modified: 2005-05-14 16:35 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description murray 2005-03-17 21:57:04 UTC
Version:           2.4 (using KDE 3.4.0 Level "a" , SUSE 9.2 UNSUPPORTED)
Compiler:          gcc version 3.3.4 (pre 3.3.5 20040809)
OS:                Linux (i686) release 2.6.8-24.11-default

I keep my kicker bar on the right side of the screen, rather then on the bottom. When I bring up the docked kmix slider, it is shifted half off the screen. It is not a problem with the crt scan width. This is a regression from previous KDE versions.

Thanks,
murray smigel
Comment 1 Christian Esken 2005-05-01 15:43:28 UTC
I can reproduce this, but I have no idea yet how to fix this. If somebody can tell me a trick how to make Popups behave properly, then please tell me and I'll fix this bug.
Comment 2 Christian Esken 2005-05-14 00:16:21 UTC
SVN commit 413370 by esken:

Now handle Multihead displays. And also make sure that the dialog is not
moved out-of-the screen on the right (see Bug 101742).
CCBUGS: 101742


 M  +11 -0     trunk/KDE/kdemultimedia/kmix/kmixdockwidget.cpp  


--- trunk/KDE/kdemultimedia/kmix/kmixdockwidget.cpp #413369:413370
@@ -246,6 +246,17 @@
 			y = y + h - this->height();
 	
 		_dockAreaPopup->move(x, y);  // so that the mouse is outside of the widget
+
+		// Now handle Multihead displays. And also make sure that the dialog is not
+		// moved out-of-the screen on the right (see Bug 101742).
+		QDesktopWidget* vdesktop = QApplication::desktop();
+		const QRect& vScreenSize = vdesktop->screenGeometry(_dockAreaPopup);
+		if ( (x+_dockAreaPopup->width()) > (vScreenSize.width()) ) {
+			// move horizontally, so that it is completely visible
+			_dockAreaPopup->move(vScreenSize.width() - _dockAreaPopup->width() -1 , y);
+		} // horizontally out-of bound
+		// the above stuff could also be implemented vertically
+
 		_dockAreaPopup->show();
 		KWin::setState(_dockAreaPopup->winId(), NET::StaysOnTop | NET::SkipTaskbar | NET::SkipPager );
 		
Comment 3 Christian Esken 2005-05-14 00:17:17 UTC
Found a solution to fix this. The fixed version will ship wtih KDE3.4.2 latest.
Comment 4 Christian Esken 2005-05-14 16:35:52 UTC
*** Bug 105650 has been marked as a duplicate of this bug. ***