Mir

Code review comment for lp://staging/~vanvugt/mir/parenting-client-api

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

A more visual explanation:

sometoolkit_create_menu(conn, window, x, y):
    surf = mir_connection_create_surface_sync(conn, parms);
    mir_surface_set_type(surf, mir_surface_type_popover);
    mir_surface_set_parent(surf, window);
    mir_surface_place_relative(surf, x, y);
    return surf;

So you see there are two important benefits:
  1. The Mir API is minimal in size (in fact intentionally normalized [1])
  2. The Mir API is maximally flexible; Mir doesn't need to know what a "menu" is. The toolkit is free to define whatever it likes.
[1] http://en.wikipedia.org/wiki/Database_normalization

It's also important to remember that our design documents detail the design of the Unity shell. Mir needs to support more than just Unity.

« Back to merge proposal