miral should not change surface geometry because it got maximized

Bug #1628630 reported by Daniel d'Andrada
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
MirAL
Fix Released
Medium
Alan Griffiths

Bug Description

When a surface gets maximized, miral doesn't have enough information to set the surface position and size (aka geometry), thus it should not touch them.

1 - Shell might animate the window maximization. In this case shell can, for instance, interpolate the geometry between its current, restored, state and its maximized state.

2 - miral doesn't know the available desktop area. There can be for instance a panel on top and a launcher on the left edge limiting the available are that a maximized window can occupy. And those UI elements might not be backed up by MirSurfaces either, like in unity8.

Likewise when you restore a window from maximized state.

Related branches

Changed in miral:
assignee: nobody → Alan Griffiths (alan-griffiths)
description: updated
Changed in miral:
status: New → In Progress
importance: Undecided → Medium
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

Following the same argument for removing policy from modify_window() that we applied in revision 347 I think it is modify_window() that shouldn't be interpreting state changes to imply resizing.

Moving that logic to before the call to handle_modify_window() in order to provide suggestions for position and size in the modifications argument will allow shells to customise the result. (We do that for surface creation already.)

Changed in miral:
milestone: none → 0.2
Changed in miral:
status: In Progress → Fix Committed
Changed in miral:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.