mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-09-20 06:49:56 +00:00
fix bug 3319: LyX starts offscreen when changing monitor configuration
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17796 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
ab2b590abe
commit
c701b8ff65
@ -358,17 +358,17 @@ void GuiView::setGeometry(unsigned int width,
|
||||
// only true when the -geometry option was NOT used
|
||||
if (width != 0 && height != 0) {
|
||||
if (posx != -1 && posy != -1) {
|
||||
// if there are ever startup positioning problems
|
||||
// on a virtual desktop then check the 6 lines below
|
||||
// if there are startup positioning problems:
|
||||
// http://doc.trolltech.com/4.2/qdesktopwidget.html
|
||||
QDesktopWidget& dw = *qApp->desktop();
|
||||
QRect desk = dw.availableGeometry(dw.primaryScreen());
|
||||
(posx >= desk.width() ? posx = 50 : true);
|
||||
(posy >= desk.height()? posy = 50 : true);
|
||||
// don't allow negative coordinates on a non-virtual desktop
|
||||
if (!dw.isVirtualDesktop()) {
|
||||
(posx < 0 ? posx = 50 : true);
|
||||
(posy < 0 ? posy = 50 : true);
|
||||
if (dw.isVirtualDesktop()) {
|
||||
if(!dw.geometry().contains(posx, posy)) {
|
||||
posx = 50;
|
||||
posy = 50;
|
||||
}
|
||||
} else {
|
||||
// Which system doesn't use a virtual desktop?
|
||||
// TODO save also last screen number and check if it is still availabe.
|
||||
}
|
||||
#ifdef Q_WS_WIN
|
||||
// FIXME: use setGeometry only when Trolltech has fixed the qt4/X11 bug
|
||||
|
Loading…
Reference in New Issue
Block a user