2009/2/1 Guillaume Pothier <gpoth...@gmail.com> > Hi Alessandro, sorry I didn't reply earlier,
Hi Guillaume, np :) > I was offline this week. > I think your fix is not in the ideal place. I think that what happens > is that you are using a driver that is not xrandr1.2-aware (please > tell me if I'm wrong), how can I check that? > and therefore Kephal falls back to > QDesktopWidget for screen management; unfortunately QDesktopWidget has > this problem that it still reports the old screen information while > the notifications are processed. But the fix for this should be in > Kephal, not in plasma (otherwise the problem would reappear in other > components such as kwin). I deeply checked and Kephal actually returns correct screen info (2 screens, the first (0, 0, 1280, 1024), the second(1280, 0, 1680, 1050)). Moreover adjustSize() uses Plasma::View::screen() in order to resize the view, and before delaying adjustSize, that screen was just wrong. > I actually had a patch to fix this but I was waiting for somebody to > test it before committing. Can you check this bug: > http://bugs.kde.org/show_bug.cgi?id=181325 and test the patch, > reverting your own patch, and see if it works for you? It does not do me the trick.. I still have second screen displacement.. I feel the issues are not correlated, anyway i'd wait for someone else, more expert than me, to talk :) > Cheers, > g > Cheers :) > 2009/1/30 Alessandro Diaferia <alediafe...@gmail.com>: > > As you can see from the sources Plasma::View uses QTimer::singleShot(0, > > this, SLOT(privateInit())) in the ctor but DesktopView calls adjustSize() > in > > the ctor with no delay.. > > > > This causes the fact that adjustSize() uses invalid information about the > > current screen to setup its size and makes my second screen disappear (or > > actually, with a wrong size/position). > > I managed to fix this giving a delay also to adjustSize() so that when it > is > > called the correct information are already set (and screen() returns the > > correct number in this case). > > > > Hope this is ok to commit, since i'd like to have my screen back > officially > > :P > > > > Since i'm having troubles with the reviewboard here comes the patch: > > > > Index: shells/desktop/desktopview.cpp > > =================================================================== > > > > --- shells/desktop/desktopview.cpp (revision 918687) > > +++ shells/desktop/desktopview.cpp (working copy) > > @@ -104,7 +104,7 @@ DesktopView::DesktopView(Plasma::Contain > > QBrush b(tile); > > setBackgroundBrush(tile); > > > > > > - adjustSize(); > > + QTimer::singleShot(0, this, SLOT(adjustSize())); > > > > Kephal::Screens *screens = Kephal::Screens::self(); > > connect(screens, SIGNAL(screenResized(Kephal::Screen *, QSize, > QSize)), > > > > > > Hugs!! > > > > -- > > Alessandro Diaferia > > > > _______________________________________________ > > Plasma-devel mailing list > > Plasma-devel@kde.org > > https://mail.kde.org/mailman/listinfo/plasma-devel > > > > > _______________________________________________ > Plasma-devel mailing list > Plasma-devel@kde.org > https://mail.kde.org/mailman/listinfo/plasma-devel > -- Alessandro Diaferia
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel