[enhancement] Need a client API to specify resize limitations
Bug #1421591 reported by
Daniel van Vugt
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mir |
Fix Released
|
Medium
|
Alan Griffiths | ||
mir (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Mir needs a client API to specify resize behaviour. That is min/max sizes, aspect ratio and granularity (e.g. terminals only resize by whole characters).
An example of these requirements is specified in XSizeHints (which we will need to mostly support):
http://
Note that for Mir we do indeed need to specify the limits before resizing is attempted. To "ask" the client during a resize would break our nice design of "never trust or wait for clients".
Related branches
lp:~alan-griffiths/mir/surface-has-max-size
- Alberto Aguirre (community): Approve
- Cemil Azizoglu (community): Approve
- PS Jenkins bot (community): Approve (continuous-integration)
-
Diff: 82 lines (+64/-0)2 files modifiedsrc/server/shell/canonical_window_manager.cpp (+20/-0)
tests/acceptance-tests/test_surface_modifications.cpp (+44/-0)
lp:~alan-griffiths/mir/surface-has-min-size
- Alberto Aguirre (community): Approve
- Kevin DuBois (community): Approve
- PS Jenkins bot (community): Approve (continuous-integration)
- Robert Carr (community): Approve
-
Diff: 632 lines (+386/-10)14 files modifiedinclude/client/mir_toolkit/mir_surface.h (+42/-0)
include/common/mir/geometry/dimensions.h (+8/-0)
include/common/mir/geometry/point.h (+6/-0)
include/server/mir/scene/surface_creation_parameters.h (+5/-0)
src/client/mir_surface.cpp (+4/-0)
src/client/mir_surface_api.cpp (+24/-0)
src/client/symbols.map (+4/-0)
src/protobuf/mir_protobuf.proto (+5/-0)
src/server/frontend/session_mediator.cpp (+11/-0)
src/server/shell/basic_window_manager.h (+2/-2)
src/server/shell/canonical_window_manager.cpp (+55/-6)
src/server/shell/canonical_window_manager.h (+6/-1)
tests/acceptance-tests/test_client_library.cpp (+105/-0)
tests/acceptance-tests/test_surface_modifications.cpp (+109/-1)
lp:~alan-griffiths/mir/more-surface-resize
- PS Jenkins bot (community): Approve (continuous-integration)
- Alexandros Frantzis (community): Approve
- Kevin DuBois (community): Approve
- Alan Griffiths: Abstain
- Alberto Aguirre (community): Approve
- Andreas Pokorny (community): Approve
- Daniel van Vugt: Needs Fixing
-
Diff: 1181 lines (+634/-172)14 files modifiedexamples/server_example_canonical_window_manager.cpp (+115/-58)
examples/server_example_canonical_window_manager.h (+6/-2)
include/client/mir_toolkit/mir_surface.h (+53/-0)
include/server/mir/scene/surface_creation_parameters.h (+5/-0)
include/server/mir/shell/surface_specification.h (+6/-0)
src/client/mir_surface.cpp (+34/-0)
src/client/mir_surface.h (+6/-0)
src/client/mir_surface_api.cpp (+48/-0)
src/client/symbols.map (+6/-2)
src/protobuf/mir_protobuf.proto (+14/-0)
src/server/frontend/session_mediator.cpp (+26/-0)
src/server/shell/canonical_window_manager.cpp (+115/-55)
src/server/shell/canonical_window_manager.h (+6/-2)
tests/acceptance-tests/test_surface_modifications.cpp (+194/-53)
Changed in mir: | |
assignee: | nobody → Alan Griffiths (alan-griffiths) |
status: | Triaged → In Progress |
Changed in mir: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.13.0