~gnome3-team/epiphany-browser/+git/master:mcatanzaro/update-appdata-again

Last commit made on 2023-12-01
Get this branch:
git clone -b mcatanzaro/update-appdata-again https://git.launchpad.net/~gnome3-team/epiphany-browser/+git/master

Branch merges

Branch information

Name:
mcatanzaro/update-appdata-again
Repository:
lp:~gnome3-team/epiphany-browser/+git/master

Recent commits

e5c2bd9... by Michael Catanzaro <email address hidden>

Update appdata

appstreamcli wants us to get rid of the GNOME kudos, and there is a new
syntax for the developer tag.

293db25... by Artur S0 <email address hidden>

Update Russian translation

affc981... by Andre Klapper

DOAP: Replace defunct mailing list with Discourse support forum

3b334ba... by Michael Catanzaro <email address hidden>

Fix encodings test when running in non-English locale

Let's force use of the C.UTF-8 locale, so the value of the collation key
does not depend on the host locale.

Fixes #1842

Part-of: <https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1413>

eded3b9... by Philippe Normand <email address hidden>

canary: Bump to 23.08 WebKit SDK runtime

The first WebKitGTK build relying on the new version is 271053@main.

fd1eb86... by Michael Catanzaro <email address hidden>

Rename "Firefox account" to "Mozilla account"

Fixes #2231

Part-of: <https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1417>

1da1cae... by Michael Catanzaro <email address hidden>

Unregister main world message handlers when no longer needed

Currently all script message handlers are global, always connected, and
managed by EphyEmbedShell. But this is only suitable for about half of
them. It's OK to do this for message handlers that use Epiphany's
private script world, because they are not accessible to web content and
therefore it is harmless to leave them registered always. But Epiphany
registers three other message handlers that *are* always accessible to
web content. One reloads the current page, one reloads the page
bypassing TLS errors, and one deletes web apps. Arbitrary websites
should not be able to access these, but we cannot use a private script
world because the message handlers need to be accessible to Epiphany's
error pages and about:applications page.

Fix this by registering these message handlers only immediately before
displaying an error page or about:applications. The message handler will
then be unregistered before the next page load, so it's no longer
available to websites.

Note in the case of EphyAboutHandler, the load has already started, so
we unregister the handler for the very next load. For the other two
cases, the load will start imminently, so we should not unregister the
handler until the load after that.

Finally, note that message handlers only get unregistered when a future
load does not itself require message handlers. That should be fine for
any reasonably foreseeable future, but it would break if we ever
intentionally wanted to make a message handler available to all
websites, so leave a warning about this.

Fixes #1664

Part-of: <https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1409>

cafca23... by Michael Catanzaro <email address hidden>

embed-shell: rename ucm registration functions

We'll think of these functions as registering the user content manager
itself, rather than all of its handlers, since in the next commit I'll
move the registration of default script world handlers to different
places.

Part-of: <https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1409>

92caed9... by Michael Catanzaro <email address hidden>

web-view: register ucm handlers in constructed

Best practice is to do the bare minimum work in new, so there is less to
do when using g_object_new() directly. We don't ever do that in
Epiphany, but it's still nice to follow best practices, and also avoids
a small amount of code duplication.

Part-of: <https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1409>

4a9d37b... by Michael Catanzaro <email address hidden>

web-view: unregister ucm handlers in finalize

This should only ever happen once, so it needs to be done in finalize,
not in dispose.

Part-of: <https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1409>