miral-workspaces

“Workspaces” have arrived on MirAL trunk (lp:miral).

We won’t be releasing 1.3 with this feature just yet (as we want some experience with this internally first). But if you build from source there’s an example to play with (bin/miral-app).

As always, bug reports and other suggestions are welcome.

Note that the miral-shell doesn’t have transitions and other effects like fully featured desktop environments.

MirAL 1.2

There’s a new MirAL release (1.2.0) available in ‘Zesty Zapus’ (Ubuntu 17.04) and the so-called “stable phone overlay” ppa for ‘Xenial Xerus’ (Ubuntu 16.04LTS). MirAL is a project aimed at simplifying the development of Mir servers and particularly providing a stable ABI and sensible default behaviors.

Unsurprisingly, given the project’s original goal, the ABI is unchanged.

Since my last update the integration of libmiral into QtMir has progressed and libmiral has been used in the latest updates to Unity8.

The changes in 1.2.0 fall are:

A new libmirclientcpp-dev package

This is a “C++ wrapper for libmirclient” and has been split
from libmiral-dev.

Currently it comprises RAII wrappers for some Mir client library types: MirConnection, MirWindowSpec, MirWindow and MirWindowId. In addition, the WindowSpec wrapper provides named constructors and function chaining to enable code like the following:

auto const window = mir::client::WindowSpec::
    for_normal_window(connection, 50, 50, mir_pixel_format_argb_8888)
    .set_buffer_usage(mir_buffer_usage_software)
    .set_name(a_window.c_str())
    .create_window();

Refresh the “Building and Using MirAL” doc

This has been rewritten (and renamed) to reflect the presence of MirAL in the Ubuntu archives and make installation (rather than “build it yourself”) the default approach.

Bug fixes

  • [libmiral] Chrome-less shell hint does not work any more (LP: #1658117)
  • “$ miral-app -kiosk” fails with “Unknown command line options:
    –desktop_file_hint=miral-shell.desktop” (LP: #1660933)
  • [libmiral] Fix focus and movement rules for Input Method and Satellite
    windows. (LP: #1660691)
  • [libmirclientcpp-dev] WindowSpec::set_state() wrapper for mir_window_spec_set_state()
    (LP: #1661256)