mutter:wip/carlosg/context-priority

Last commit made on 2019-01-21
Get this branch:
git clone -b wip/carlosg/context-priority https://git.launchpad.net/mutter

Branch merges

Branch information

Name:
wip/carlosg/context-priority
Repository:
lp:mutter

Recent commits

162d6d4... by Carlos Garnacho

cogl/egl: Use EGL_IMG_context_priority

As long as the context_priority extension is available request a high
priority context, to help the compositor look fluid despite heavy GPU usage
from other applications at a regular priority.

This becomes sort of pointless if/when unredirection applies, should still
help with overview/workspace switch animations, or if the application is
not fullscreen.

Based on a similar patch by Daniel Stone to Weston.

ff50727... by Jonas Ådahl

startup-notification: Silence warning

Warning in question:

../src/core/startup-notification.c:646:16: error: unused variable ‘display’ [-Werror=unused-variable]

f033d0e... by Carlos Garnacho

core: Add MetaLaunchContext

This is a GAppLaunchContext subclass meant to replace usage of
GdkAppLaunchContext in gnome-shell.

Launch contexts get created from the MetaStartupNotification as
they are closely related. The messaging underneath depends on
the availability of a X11 display, if there is one we go through
it (and libsn). If there is none, we still create startup sequences
manually for wayland clients.

ca67d52... by Carlos Garnacho

x11: Add method to launch applications, using SnLauncher

The method spawns a launch request that will get caught by the
SnMonitor we have in place to handle X11 startup notification
messages.

60d22b7... by Carlos Garnacho

wayland: Accept NULL primary data source

A NULL argument is expected here in order to unset the selection,
meta_wayland_data_device_set_primary() accepts a NULL source, but
gtk_primary_selection_device.set_selection was not handling a
NULL wl_resource.

Closes: https://gitlab.gnome.org/GNOME/mutter/issues/335

e9778eb... by Jonas Ådahl

build: Pass --quiet to glib-genmarshal

We don't need to know it read the input file really.

56d260c... by Jonas Ådahl

screen-cast-monitor-stream-src: Only send cursor bitmap when it changes

To avoid unnecessary pixel copying, only send the cursor bitmap when it
changes. This also allows the receiver to know when the cursor bitmap
actually changed.

https://gitlab.gnome.org/GNOME/mutter/merge_requests/357

c45d5f5... by Jonas Ådahl

cursor-tracker: Emit `cursor-changed` after renderer was updated

Otherwise the cursor retrieved via meta_cursor_renderer_get_cursor() is
out of date.

https://gitlab.gnome.org/GNOME/mutter/merge_requests/357

4e402b3... by Jonas Ådahl

screen-cast: Add 'cursor-mode' to allow decoupled cursor updates

The 'cursor-mode', which currently is limited to RecordMonitor(), allows
the user to either do screen casts where the cursor is hidden, embedded
in the framebuffer, or sent as PipeWire stream metadata.

The latter allows the user to get cursor updates sent, including the
cursor sprite, without requiring a stage paint each frame. Currently
this is done by using the cursor sprite texture, and either reading
directly from, or drawing to an offscreen framebuffer which is read from
instead, in case the texture is scaled.

https://gitlab.gnome.org/GNOME/mutter/merge_requests/357

79d99cb... by Jonas Ådahl

cursor-renderer: Add API to allow inhibiting HW cursor

There may be reasons to temporarly inhibit the HW cursor under certain
circumstances. Allow adding such inhibitations by adding API to the
cursor renderer to allow API users to add generic inhibitors with
whatever logic is deemed necessary.

https://gitlab.gnome.org/GNOME/mutter/merge_requests/357