I have developed a few different solutions to this problem over the years. Although not yet managed to get any of them simultaneously approved and completed.
You can however see some progress has been made on this topic in: scene/basic_surface.cpp:
mir::geometry::Size ms::BasicSurface::client_size() const
{
// TODO: In future when decorated, client_size() would be smaller than size
return size();
}
I have developed a few different solutions to this problem over the years. Although not yet managed to get any of them simultaneously approved and completed.
You can however see some progress has been made on this topic in: scene/basic_ surface. cpp:
mir::geometry::Size ms::BasicSurfac e::client_ size() const
{
// TODO: In future when decorated, client_size() would be smaller than size
return size();
}
A closely related enhancement that needs to be done at the same time is: https:/ /trello. com/c/Ru4bK7J4