gnome-shell:wip/carlosg/small-api-cleanups

Last commit made on 2020-10-06
Get this branch:
git clone -b wip/carlosg/small-api-cleanups https://git.launchpad.net/gnome-shell

Branch merges

Branch information

Name:
wip/carlosg/small-api-cleanups
Repository:
lp:gnome-shell

Recent commits

ff6c0ca... by Carlos Garnacho

shell: Update to MetaCursorTracker API change

The pointer coordinates in meta_cursor_tracker_get_pointer() are now
returned as a graphene_point_t.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1405

2321ce2... by Georges Basile Stavracas Neto

Replace CoglMatrix by graphene_matrix_t

Replace both the types, and the cogl_matrix_* API calls
with the corresponding graphene_matrix_* ones.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1436

6b1e2df... by =?utf-8?q?Florian_M=C3=BCllner?= <email address hidden>

extensionUtils: Adjust version check

With the new versioning scheme, the previously-minor version gets
shifted up to major, and unstable releases are marked by non-numeric
"versions" rather than uneven numbers. Reflect that in the extension
version check.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1456

deb78b9... by =?utf-8?q?Florian_M=C3=BCllner?= <email address hidden>

Bump version to 40.alpha

The GNOME project has adopted a new versioning scheme[0], and
GNOME 3.38 will be followed by GNOME 40.

Open the new development cycle by switching to the new scheme, as
well as to post-release bumps as recommended.

[0] https://discourse.gnome.org/t/new-gnome-versioning-scheme/4235

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1456

b3c106c... by =?utf-8?q?Florian_M=C3=BCllner?= <email address hidden>

Bump version to 3.38.1

Update NEWS.

da36506... by =?utf-8?q?Florian_M=C3=BCllner?= <email address hidden>

workspacesView: Work around Clutter optimization

Clutter nowadays omits reallocations when only the stage position
changed, that is when the allocation relative to the parent changed.

As a result (apart from better performance of course), workspaces
in the overview may now end up with an outdated "actual geometry"
in case the overview moved to a new primary monitor (of equal size
as the previous one).

Work around that by emitting a signal from the overview on allocation
changes, and use that to update the cached geometry.

We can revert that change once workspaces become part of the regular
overview hierarchy.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3211

d04daf6... by Georges Basile Stavracas Neto

appDisplay: Protect against source icon destruction

When dragging icons out of a folder dialog, there is a very peculiar
combination of steps that may break GNOME Shell:

 1. Open an app folder dialog
 2. Start dragging an icon to outside the grid
 3. Wait until the popdown animation starts
 4. Before it finishes, drop the icon
 5. See the warnings / crash

That's caused by the source icon being destroyed after the delayed
move timer starts, and before it finishes.

Protect against the source icon being destroyed before the delayed
move timeout triggers by connecting to the 'destroy' signal and
removing the timeout on the callback. Use a single field, called
'_delayedMoveData', to store all data related to delayed moves.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

aaff88a... by Georges Basile Stavracas Neto

appDisplay: Remove icon from folder when dragging out

When dragging an icon outside of a folder dialog, there's a small delay
before the dialog pops down. If the icon is dropped during this delay,
the drag is cancelled, and the icon continues to be in the folder.

However, this behavior turned out to be problematic, and it was a common
point of failure that throwing icons outside folders wouldn't work.

Remove the icon from the folder when dragging it to outside the dialog.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3092

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

1acbdcc... by Georges Basile Stavracas Neto

appDisplay: Allow passing callback to AppFolderDialog.popdown()

Next commit will allow removing icons from the folder, and we want to
do that effectively after the dialog pops down.

Add an optional callback to AppFolderDialog.popdown().

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447

33bd038... by Georges Basile Stavracas Neto

appDisplay: Don't change opacity on destruction

At the end of BaseAppView._clearAnimateLater(), the '_grid' actor's opacity is
set to 255. As it turns out, _clearAnimateLater() is called, among others, by
vfunc_unmap(). However, unmapping is part of the destruction process, and at
the time it is called, '_grid' is already destroying, which makes GJS complain
about accessing an invalid object.

Don't change opacity on BaseAppView._clearAnimateLater(), and instead move it
to the couple of places outside vfunc_unmap() that call it.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1447