Mir

Code review comment for lp:~alan-griffiths/mir/even-NullWindowManager-configures-surface

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

> I do have some concerns about having a Null/SkeletonWindowManager in the first
> place (at least as a public production interface), though. Allowing users to
> inherit from such a class, creates a coupling with the implementation, which I
> am not convinced is worth it for what this class has to offer (at the moment
> at least). Why, as things stand, do we want to offer SkeletonWindowManager vs
> just offering the WindowManager interface?

As the window manager has to implement some minimal (as opposed to null) behavior I think we should provide this (as opposed to documenting it).

The use comes in two places:

1. the default window management logic is inconvenient for a number of our acceptance tests (e.g. they don't expect surfaces to be resized or placed). These use SkeletonWindowManager to disable the default.

2. Unity8 also finds the default window management logic is inconvenient and, as it currently uses different (older) customization points[*]. NullWindowManager provides a simple way to disable the default.

[*] It is very plausible that, after 0.13, Unity8 will be able to migrate to using the WindowManager interface for customizing window management (and we will then remove the interfaces it currently employs).

« Back to merge proposal