From 3c6f1a5de364bb89a044c5aaf8b34ca401179f11 Mon Sep 17 00:00:00 2001 From: Ryo Nakano Date: Sun, 20 Apr 2025 09:58:09 +0900 Subject: [PATCH 1/9] epiphany: Update epiphany-46.5.tar.xz to 48.0 --- org.gnome.epiphany.json | 4 ++-- overview-button.patch | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/org.gnome.epiphany.json b/org.gnome.epiphany.json index e1dcebc..865203e 100644 --- a/org.gnome.epiphany.json +++ b/org.gnome.epiphany.json @@ -25,8 +25,8 @@ "sources": [ { "type": "archive", - "url": "https://download.gnome.org/sources/epiphany/46/epiphany-46.5.tar.xz", - "sha256": "b9c7dae15d038519bf189f440eacd8c27e5abfba39ce05e9c95823a9d6396311", + "url": "https://download.gnome.org/sources/epiphany/48/epiphany-48.0.tar.xz", + "sha256": "c9d1f6dffbad03b0916436901c770da302879ca60a636d2b72b25b142ec05f80", "x-checker-data": { "type": "gnome", "name": "epiphany" diff --git a/overview-button.patch b/overview-button.patch index c781e67..74b1ecd 100644 --- a/overview-button.patch +++ b/overview-button.patch @@ -1,15 +1,15 @@ diff --git a/src/ephy-action-bar-end.c b/src/ephy-action-bar-end.c -index 20034eec7..fb0666ef3 100644 +index 88e194841..75186fa73 100644 --- a/src/ephy-action-bar-end.c +++ b/src/ephy-action-bar-end.c -@@ -298,8 +298,9 @@ ephy_action_bar_end_init (EphyActionBarEnd *action_bar_end) +@@ -320,8 +320,9 @@ ephy_action_bar_end_init (EphyActionBarEnd *action_bar_end) if (is_desktop_pantheon ()) { - gtk_menu_button_set_icon_name (GTK_MENU_BUTTON (action_bar_end->bookmarks_button), - "user-bookmarks"); + gtk_button_set_icon_name (GTK_BUTTON (action_bar_end->bookmarks_button), + "user-bookmarks"); - gtk_menu_button_set_icon_name (GTK_MENU_BUTTON (action_bar_end->overview_button), - "view-grid"); + gtk_button_set_icon_name (GTK_BUTTON (action_bar_end->overview_button), -+ "adw-tab-overview-symbolic"); ++ "adw-tab-overview-symbolic"); + gtk_widget_remove_css_class (action_bar_end->overview_button, "toolbar-button"); } From 16841df61fc37ce5bbf835b08c4113f85668fb19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Danielle=20For=C3=A9?= Date: Mon, 28 Apr 2025 11:14:00 -0700 Subject: [PATCH 2/9] Add symbolic privacy icon --- data/meson.build | 3 +- data/preferences-system-privacy-symbolic.svg | 41 ++++++++++++++++++++ 2 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 data/preferences-system-privacy-symbolic.svg diff --git a/data/meson.build b/data/meson.build index 3ceb125..03d8462 100644 --- a/data/meson.build +++ b/data/meson.build @@ -27,7 +27,8 @@ icon_names = [ 'ephy-permission-location-symbolic.svg', 'ephy-permission-microphone-symbolic.svg', 'ephy-permission-notifications-symbolic.svg', - 'ephy-starred-symbolic.svg' + 'ephy-starred-symbolic.svg', + 'preferences-system-privacy-symbolic.svg' ] foreach icon_name : icon_names diff --git a/data/preferences-system-privacy-symbolic.svg b/data/preferences-system-privacy-symbolic.svg new file mode 100644 index 0000000..52cbe03 --- /dev/null +++ b/data/preferences-system-privacy-symbolic.svg @@ -0,0 +1,41 @@ + + + + + + + + + From 00fc7d1b0f925c1002932d73e9c5c1cf022e2031 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Danielle=20For=C3=A9?= Date: Tue, 29 Apr 2025 08:48:24 -0700 Subject: [PATCH 3/9] Drop bookmarks patch --- bookmarks-row.patch | 16 ---------------- org.gnome.epiphany.json | 4 ---- 2 files changed, 20 deletions(-) delete mode 100644 bookmarks-row.patch diff --git a/bookmarks-row.patch b/bookmarks-row.patch deleted file mode 100644 index e037753..0000000 --- a/bookmarks-row.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/src/resources/style-elementary.css b/src/resources/style-elementary.css -index 610fcae84..c6ff14386 100644 ---- a/src/resources/style-elementary.css -+++ b/src/resources/style-elementary.css -@@ -75,6 +75,11 @@ popover.suggestions listview > row:selected { - background-color: alpha(currentColor, 0.15); - } - -+.bookmarks-row { -+ min-width: 250px; -+ padding: 3px; -+} -+ - /* bookmarks */ - .bookmarks-row:hover { - background: alpha(currentColor, 0.15); diff --git a/org.gnome.epiphany.json b/org.gnome.epiphany.json index 865203e..e76b55c 100644 --- a/org.gnome.epiphany.json +++ b/org.gnome.epiphany.json @@ -32,10 +32,6 @@ "name": "epiphany" } }, - { - "type": "patch", - "path": "bookmarks-row.patch" - }, { "type": "patch", "path": "downloads-flat.patch" From ff9260b9f295da3bddbea2fdc0dc5e00ecef2ce2 Mon Sep 17 00:00:00 2001 From: Ryo Nakano Date: Thu, 15 May 2025 20:13:32 +0900 Subject: [PATCH 4/9] Bump Flatpak platform to 8.2 --- org.gnome.epiphany.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.gnome.epiphany.json b/org.gnome.epiphany.json index e76b55c..fa692a2 100644 --- a/org.gnome.epiphany.json +++ b/org.gnome.epiphany.json @@ -1,7 +1,7 @@ { "app-id": "org.gnome.Epiphany", "runtime": "io.elementary.Platform", - "runtime-version": "8.1", + "runtime-version": "8.2", "sdk": "io.elementary.Sdk", "command": "epiphany", "finish-args": [ From f0954305ab8098634a2cbf01e18fec755f0aa5ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Danielle=20For=C3=A9?= Date: Thu, 15 May 2025 07:57:59 -0700 Subject: [PATCH 5/9] Update ci.yml --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 07d6d3a..7f334e3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,7 +24,7 @@ jobs: fail-fast: false container: - image: ghcr.io/elementary/flatpak-platform/runtime:8.1-${{ matrix.configuration.arch }} + image: ghcr.io/elementary/flatpak-platform/runtime:8.2-${{ matrix.configuration.arch }} options: --privileged steps: From c0e9eb9b14c3f392ef86df4bab65fb887f2f046e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Danielle=20For=C3=A9?= Date: Thu, 15 May 2025 07:58:12 -0700 Subject: [PATCH 6/9] Update merge.yml --- .github/workflows/merge.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/merge.yml b/.github/workflows/merge.yml index 933b715..74e1a17 100644 --- a/.github/workflows/merge.yml +++ b/.github/workflows/merge.yml @@ -22,7 +22,7 @@ jobs: fail-fast: false container: - image: ghcr.io/elementary/flatpak-platform/runtime:8.1-${{ matrix.configuration.arch }} + image: ghcr.io/elementary/flatpak-platform/runtime:8.2-${{ matrix.configuration.arch }} options: --privileged steps: From 6652c67c725b50638f6a06253cb634a9844c0b82 Mon Sep 17 00:00:00 2001 From: Ryo Nakano Date: Sat, 17 May 2025 15:34:53 +0900 Subject: [PATCH 7/9] Bump epiphany to 48.3 --- org.gnome.epiphany.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/org.gnome.epiphany.json b/org.gnome.epiphany.json index fa692a2..abcdfcc 100644 --- a/org.gnome.epiphany.json +++ b/org.gnome.epiphany.json @@ -25,8 +25,8 @@ "sources": [ { "type": "archive", - "url": "https://download.gnome.org/sources/epiphany/48/epiphany-48.0.tar.xz", - "sha256": "c9d1f6dffbad03b0916436901c770da302879ca60a636d2b72b25b142ec05f80", + "url": "https://download.gnome.org/sources/epiphany/48/epiphany-48.3.tar.xz", + "sha256": "da2953e7e2b73bf7473c0a33979104d79362795295eaa0a2a38ea188537daf13", "x-checker-data": { "type": "gnome", "name": "epiphany" From 80c34e8836f893222fa1e5262b234ebf5b8e9adf Mon Sep 17 00:00:00 2001 From: Ryo Nakano Date: Sat, 17 May 2025 16:15:48 +0900 Subject: [PATCH 8/9] Fix startup crash --- ...-shell-Fix-startup-crash-on-Pantheon.patch | 55 +++++++++++++++++++ org.gnome.epiphany.json | 4 ++ 2 files changed, 59 insertions(+) create mode 100644 0001-shell-Fix-startup-crash-on-Pantheon.patch diff --git a/0001-shell-Fix-startup-crash-on-Pantheon.patch b/0001-shell-Fix-startup-crash-on-Pantheon.patch new file mode 100644 index 0000000..78bb6be --- /dev/null +++ b/0001-shell-Fix-startup-crash-on-Pantheon.patch @@ -0,0 +1,55 @@ +From ac33dc67ea66a44a5c81bb4b419423e4f315f3b3 Mon Sep 17 00:00:00 2001 +From: Ryo Nakano +Date: Sat, 17 May 2025 15:56:29 +0900 +Subject: [PATCH] shell: Fix startup crash on Pantheon + +This fixes Epiphany crashes on Pantheon at its early startup with GTK >= 4.17.0. + +GTK 4.17 introduced an intentional crash in any application that calls `gdk_display_manager_get()` +before `gtk_init()` (see https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/7836). + +We call `granite_init()` in `ephy_shell_init()` before this commit and `granite_init()` calls +`gdk_display_manager_get()` internally as you can see the following URL, which causes this crash. + +https://github.com/elementary/granite/blob/7.6.0/lib/Init.vala#L26 + +This commit fixes the crash by moving `granite_init()` to `ephy_shell_startup()`, where GTK +should be already initialized. +--- + src/ephy-shell.c | 13 ++++++++----- + 1 file changed, 8 insertions(+), 5 deletions(-) + +diff --git a/src/ephy-shell.c b/src/ephy-shell.c +index 20eb9b7f4..9a3bcb661 100644 +--- a/src/ephy-shell.c ++++ b/src/ephy-shell.c +@@ -574,6 +574,14 @@ ephy_shell_startup (GApplication *application) + EphyEmbedShellMode mode; + GAction *action; + ++#ifdef USE_GRANITE ++ /* Apply elementary stylesheet instead of default Adwaita stylesheet. ++ * This needs to be before calling the parent startup() to work. ++ */ ++ if (is_desktop_pantheon ()) ++ granite_init (); ++#endif ++ + G_APPLICATION_CLASS (ephy_shell_parent_class)->startup (application); + + #if USE_GRANITE +@@ -944,11 +952,6 @@ ephy_shell_init (EphyShell *shell) + ephy_shell->startup_finished = FALSE; + g_object_add_weak_pointer (G_OBJECT (ephy_shell), + (gpointer *)ptr); +- +-#ifdef USE_GRANITE +- if (is_desktop_pantheon ()) +- granite_init (); +-#endif + } + + static void +-- +2.49.0 + diff --git a/org.gnome.epiphany.json b/org.gnome.epiphany.json index abcdfcc..da290b4 100644 --- a/org.gnome.epiphany.json +++ b/org.gnome.epiphany.json @@ -32,6 +32,10 @@ "name": "epiphany" } }, + { + "type": "patch", + "path": "0001-shell-Fix-startup-crash-on-Pantheon.patch" + }, { "type": "patch", "path": "downloads-flat.patch" From 7e9d584b73c52f29c554eecc0296343ff93dcd37 Mon Sep 17 00:00:00 2001 From: Ryo Nakano Date: Sun, 18 May 2025 08:58:56 +0900 Subject: [PATCH 9/9] Rename and simplify patch --- ...-shell-Fix-startup-crash-on-Pantheon.patch | 55 ------------------- fix-startup-crash.patch | 31 +++++++++++ org.gnome.epiphany.json | 2 +- 3 files changed, 32 insertions(+), 56 deletions(-) delete mode 100644 0001-shell-Fix-startup-crash-on-Pantheon.patch create mode 100644 fix-startup-crash.patch diff --git a/0001-shell-Fix-startup-crash-on-Pantheon.patch b/0001-shell-Fix-startup-crash-on-Pantheon.patch deleted file mode 100644 index 78bb6be..0000000 --- a/0001-shell-Fix-startup-crash-on-Pantheon.patch +++ /dev/null @@ -1,55 +0,0 @@ -From ac33dc67ea66a44a5c81bb4b419423e4f315f3b3 Mon Sep 17 00:00:00 2001 -From: Ryo Nakano -Date: Sat, 17 May 2025 15:56:29 +0900 -Subject: [PATCH] shell: Fix startup crash on Pantheon - -This fixes Epiphany crashes on Pantheon at its early startup with GTK >= 4.17.0. - -GTK 4.17 introduced an intentional crash in any application that calls `gdk_display_manager_get()` -before `gtk_init()` (see https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/7836). - -We call `granite_init()` in `ephy_shell_init()` before this commit and `granite_init()` calls -`gdk_display_manager_get()` internally as you can see the following URL, which causes this crash. - -https://github.com/elementary/granite/blob/7.6.0/lib/Init.vala#L26 - -This commit fixes the crash by moving `granite_init()` to `ephy_shell_startup()`, where GTK -should be already initialized. ---- - src/ephy-shell.c | 13 ++++++++----- - 1 file changed, 8 insertions(+), 5 deletions(-) - -diff --git a/src/ephy-shell.c b/src/ephy-shell.c -index 20eb9b7f4..9a3bcb661 100644 ---- a/src/ephy-shell.c -+++ b/src/ephy-shell.c -@@ -574,6 +574,14 @@ ephy_shell_startup (GApplication *application) - EphyEmbedShellMode mode; - GAction *action; - -+#ifdef USE_GRANITE -+ /* Apply elementary stylesheet instead of default Adwaita stylesheet. -+ * This needs to be before calling the parent startup() to work. -+ */ -+ if (is_desktop_pantheon ()) -+ granite_init (); -+#endif -+ - G_APPLICATION_CLASS (ephy_shell_parent_class)->startup (application); - - #if USE_GRANITE -@@ -944,11 +952,6 @@ ephy_shell_init (EphyShell *shell) - ephy_shell->startup_finished = FALSE; - g_object_add_weak_pointer (G_OBJECT (ephy_shell), - (gpointer *)ptr); -- --#ifdef USE_GRANITE -- if (is_desktop_pantheon ()) -- granite_init (); --#endif - } - - static void --- -2.49.0 - diff --git a/fix-startup-crash.patch b/fix-startup-crash.patch new file mode 100644 index 0000000..e040800 --- /dev/null +++ b/fix-startup-crash.patch @@ -0,0 +1,31 @@ +diff --git a/src/ephy-shell.c b/src/ephy-shell.c +index 20eb9b7f4..9a3bcb661 100644 +--- a/src/ephy-shell.c ++++ b/src/ephy-shell.c +@@ -574,6 +574,14 @@ ephy_shell_startup (GApplication *application) + EphyEmbedShellMode mode; + GAction *action; + ++#ifdef USE_GRANITE ++ /* Apply elementary stylesheet instead of default Adwaita stylesheet. ++ * This needs to be before calling the parent startup() to work. ++ */ ++ if (is_desktop_pantheon ()) ++ granite_init (); ++#endif ++ + G_APPLICATION_CLASS (ephy_shell_parent_class)->startup (application); + + #if USE_GRANITE +@@ -944,11 +952,6 @@ ephy_shell_init (EphyShell *shell) + ephy_shell->startup_finished = FALSE; + g_object_add_weak_pointer (G_OBJECT (ephy_shell), + (gpointer *)ptr); +- +-#ifdef USE_GRANITE +- if (is_desktop_pantheon ()) +- granite_init (); +-#endif + } + + static void diff --git a/org.gnome.epiphany.json b/org.gnome.epiphany.json index da290b4..2fcb0cf 100644 --- a/org.gnome.epiphany.json +++ b/org.gnome.epiphany.json @@ -34,7 +34,7 @@ }, { "type": "patch", - "path": "0001-shell-Fix-startup-crash-on-Pantheon.patch" + "path": "fix-startup-crash.patch" }, { "type": "patch",