placement: ignore the active output with place under mouse
BUG: 488110
This commit is contained in:
parent
8c97c4dd31
commit
40f50c9d0f
1 changed files with 3 additions and 4 deletions
|
@ -499,13 +499,12 @@ void Placement::placeDialog(Window *c, const QRect &area, PlacementPolicy nextPl
|
||||||
|
|
||||||
void Placement::placeUnderMouse(Window *c, const QRect &area, PlacementPolicy /*next*/)
|
void Placement::placeUnderMouse(Window *c, const QRect &area, PlacementPolicy /*next*/)
|
||||||
{
|
{
|
||||||
Q_ASSERT(area.isValid());
|
const auto screenArea = workspace()->clientArea(PlacementArea, c, Cursors::self()->mouse()->pos());
|
||||||
|
|
||||||
QRectF geom = c->frameGeometry();
|
QRectF geom = c->frameGeometry();
|
||||||
geom.moveCenter(Cursors::self()->mouse()->pos());
|
geom.moveCenter(Cursors::self()->mouse()->pos());
|
||||||
c->move(geom.topLeft().toPoint());
|
c->move(geom.topLeft().toPoint());
|
||||||
c->moveResize(c->keepInArea(c->moveResizeGeometry(), area)); // make sure it's kept inside workarea
|
c->moveResize(c->keepInArea(c->moveResizeGeometry(), screenArea));
|
||||||
cascadeIfCovering(c, area);
|
cascadeIfCovering(c, screenArea);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Placement::placeOnMainWindow(Window *c, const QRect &area, PlacementPolicy nextPlacement)
|
void Placement::placeOnMainWindow(Window *c, const QRect &area, PlacementPolicy nextPlacement)
|
||||||
|
|
Loading…
Reference in a new issue