diff --git a/app/lib/frontend/templates/views/shared/layout.dart b/app/lib/frontend/templates/views/shared/layout.dart index d49b4412bf..c96dcd735f 100644 --- a/app/lib/frontend/templates/views/shared/layout.dart +++ b/app/lib/frontend/templates/views/shared/layout.dart @@ -31,6 +31,9 @@ d.Node pageLayoutNode({ required String? moderationUrl, required ModerationSubject? moderationSubject, }) { + final appleTouchIconUrl = faviconUrl.endsWith('.png') + ? faviconUrl + : staticUrls.getAssetUrl('/static/img/apple-touch-icon.png'); return d.fragment([ d.unsafeRawHtml('\n'), d.element( @@ -85,7 +88,14 @@ d.Node pageLayoutNode({ href: 'https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500;700&family=Google+Sans+Display:wght@400&family=Google+Sans+Text:wght@400;500;700&family=Google+Sans+Mono:wght@400;700&display=swap', ), + // default favicon d.link(rel: 'shortcut icon', href: faviconUrl), + // WebClip icon(s) for Apple devices + // https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html + d.meta(rel: 'apple-touch-icon', href: appleTouchIconUrl), + d.meta( + rel: 'apple-touch-icon-precomposed', href: appleTouchIconUrl), + d.link( rel: 'stylesheet', href: 'https://www.gstatic.com/glue/v25_0/ccb.min.css'), diff --git a/app/test/frontend/golden/authorized_page.html b/app/test/frontend/golden/authorized_page.html index bbe30a300a..731488f299 100644 --- a/app/test/frontend/golden/authorized_page.html +++ b/app/test/frontend/golden/authorized_page.html @@ -19,6 +19,8 @@ Pub Authorized Successfully + + diff --git a/app/test/frontend/golden/consent_page.html b/app/test/frontend/golden/consent_page.html index 765e55a538..5d4ae6b029 100644 --- a/app/test/frontend/golden/consent_page.html +++ b/app/test/frontend/golden/consent_page.html @@ -19,6 +19,8 @@ Consent + + diff --git a/app/test/frontend/golden/create_publisher_page.html b/app/test/frontend/golden/create_publisher_page.html index 33d0f896e4..929752fa5f 100644 --- a/app/test/frontend/golden/create_publisher_page.html +++ b/app/test/frontend/golden/create_publisher_page.html @@ -19,6 +19,8 @@ Create publisher + + diff --git a/app/test/frontend/golden/error_page.html b/app/test/frontend/golden/error_page.html index 022d4d240e..e68a39a2b0 100644 --- a/app/test/frontend/golden/error_page.html +++ b/app/test/frontend/golden/error_page.html @@ -19,6 +19,8 @@ error_title + + diff --git a/app/test/frontend/golden/help_page.html b/app/test/frontend/golden/help_page.html index 1350faeb84..507c6dc6c5 100644 --- a/app/test/frontend/golden/help_page.html +++ b/app/test/frontend/golden/help_page.html @@ -19,6 +19,8 @@ Help | Dart packages + + diff --git a/app/test/frontend/golden/landing_page.html b/app/test/frontend/golden/landing_page.html index a5fd627a94..637ab7271e 100644 --- a/app/test/frontend/golden/landing_page.html +++ b/app/test/frontend/golden/landing_page.html @@ -19,6 +19,8 @@ The official repository for Dart and Flutter packages. + + diff --git a/app/test/frontend/golden/my_activity_log_page.html b/app/test/frontend/golden/my_activity_log_page.html index 0d8db6300f..9da8542383 100644 --- a/app/test/frontend/golden/my_activity_log_page.html +++ b/app/test/frontend/golden/my_activity_log_page.html @@ -19,6 +19,8 @@ My activity log + + diff --git a/app/test/frontend/golden/my_liked_packages.html b/app/test/frontend/golden/my_liked_packages.html index 77241caa32..031de8560f 100644 --- a/app/test/frontend/golden/my_liked_packages.html +++ b/app/test/frontend/golden/my_liked_packages.html @@ -19,6 +19,8 @@ My liked packages + + diff --git a/app/test/frontend/golden/my_packages.html b/app/test/frontend/golden/my_packages.html index 1207647586..63b8f021bc 100644 --- a/app/test/frontend/golden/my_packages.html +++ b/app/test/frontend/golden/my_packages.html @@ -19,6 +19,8 @@ My packages | starting with oxygen + + diff --git a/app/test/frontend/golden/my_publishers.html b/app/test/frontend/golden/my_publishers.html index d9f0401c57..b45a812a04 100644 --- a/app/test/frontend/golden/my_publishers.html +++ b/app/test/frontend/golden/my_publishers.html @@ -19,6 +19,8 @@ My publishers + + diff --git a/app/test/frontend/golden/pkg_activity_log_page.html b/app/test/frontend/golden/pkg_activity_log_page.html index 10cb99ae6a..3909e292a2 100644 --- a/app/test/frontend/golden/pkg_activity_log_page.html +++ b/app/test/frontend/golden/pkg_activity_log_page.html @@ -19,6 +19,8 @@ oxygen package - Admin + + diff --git a/app/test/frontend/golden/pkg_admin_page.html b/app/test/frontend/golden/pkg_admin_page.html index b72e970181..c9de9a189f 100644 --- a/app/test/frontend/golden/pkg_admin_page.html +++ b/app/test/frontend/golden/pkg_admin_page.html @@ -19,6 +19,8 @@ oxygen package - Admin + + diff --git a/app/test/frontend/golden/pkg_changelog_page.html b/app/test/frontend/golden/pkg_changelog_page.html index 24cd4212ae..2ee006ad8f 100644 --- a/app/test/frontend/golden/pkg_changelog_page.html +++ b/app/test/frontend/golden/pkg_changelog_page.html @@ -19,6 +19,8 @@ oxygen changelog | Dart package + + diff --git a/app/test/frontend/golden/pkg_example_page.html b/app/test/frontend/golden/pkg_example_page.html index 99174c78c0..6132b90466 100644 --- a/app/test/frontend/golden/pkg_example_page.html +++ b/app/test/frontend/golden/pkg_example_page.html @@ -19,6 +19,8 @@ oxygen example | Dart package + + diff --git a/app/test/frontend/golden/pkg_index_page.html b/app/test/frontend/golden/pkg_index_page.html index cd26f382bd..3dcd20c9be 100644 --- a/app/test/frontend/golden/pkg_index_page.html +++ b/app/test/frontend/golden/pkg_index_page.html @@ -19,6 +19,8 @@ Search results for sdk:dart + + diff --git a/app/test/frontend/golden/pkg_install_page.html b/app/test/frontend/golden/pkg_install_page.html index fe13412d74..585a5e5b72 100644 --- a/app/test/frontend/golden/pkg_install_page.html +++ b/app/test/frontend/golden/pkg_install_page.html @@ -19,6 +19,8 @@ oxygen install | Dart package + + diff --git a/app/test/frontend/golden/pkg_score_page.html b/app/test/frontend/golden/pkg_score_page.html index 3f28ec74de..4b9af22a62 100644 --- a/app/test/frontend/golden/pkg_score_page.html +++ b/app/test/frontend/golden/pkg_score_page.html @@ -19,6 +19,8 @@ oxygen score | Dart package + + diff --git a/app/test/frontend/golden/pkg_score_page_with_downloads_chart.html b/app/test/frontend/golden/pkg_score_page_with_downloads_chart.html index 3f28ec74de..4b9af22a62 100644 --- a/app/test/frontend/golden/pkg_score_page_with_downloads_chart.html +++ b/app/test/frontend/golden/pkg_score_page_with_downloads_chart.html @@ -19,6 +19,8 @@ oxygen score | Dart package + + diff --git a/app/test/frontend/golden/pkg_show_page.html b/app/test/frontend/golden/pkg_show_page.html index 0c1f56ffd7..6cf80dfaa1 100644 --- a/app/test/frontend/golden/pkg_show_page.html +++ b/app/test/frontend/golden/pkg_show_page.html @@ -19,6 +19,8 @@ oxygen | Dart package + + diff --git a/app/test/frontend/golden/pkg_show_page_discontinued.html b/app/test/frontend/golden/pkg_show_page_discontinued.html index 3a3756b291..e36ce1fd42 100644 --- a/app/test/frontend/golden/pkg_show_page_discontinued.html +++ b/app/test/frontend/golden/pkg_show_page_discontinued.html @@ -19,6 +19,8 @@ pkg | Dart package + + diff --git a/app/test/frontend/golden/pkg_show_page_flutter_plugin.html b/app/test/frontend/golden/pkg_show_page_flutter_plugin.html index 4a4fb8b55a..07cebf9f2c 100644 --- a/app/test/frontend/golden/pkg_show_page_flutter_plugin.html +++ b/app/test/frontend/golden/pkg_show_page_flutter_plugin.html @@ -19,6 +19,8 @@ flutter_titanium | Flutter package + + diff --git a/app/test/frontend/golden/pkg_show_page_publisher.html b/app/test/frontend/golden/pkg_show_page_publisher.html index 1379de0880..d838390ccf 100644 --- a/app/test/frontend/golden/pkg_show_page_publisher.html +++ b/app/test/frontend/golden/pkg_show_page_publisher.html @@ -19,6 +19,8 @@ neon | Dart package + + diff --git a/app/test/frontend/golden/pkg_show_page_retracted.html b/app/test/frontend/golden/pkg_show_page_retracted.html index 6f63db5e88..566de30fa3 100644 --- a/app/test/frontend/golden/pkg_show_page_retracted.html +++ b/app/test/frontend/golden/pkg_show_page_retracted.html @@ -19,6 +19,8 @@ pkg 1.0.0 | Dart package + + diff --git a/app/test/frontend/golden/pkg_show_page_retracted_non_retracted_version.html b/app/test/frontend/golden/pkg_show_page_retracted_non_retracted_version.html index 5608c4ed92..407ea7b3c9 100644 --- a/app/test/frontend/golden/pkg_show_page_retracted_non_retracted_version.html +++ b/app/test/frontend/golden/pkg_show_page_retracted_non_retracted_version.html @@ -19,6 +19,8 @@ pkg | Dart package + + diff --git a/app/test/frontend/golden/pkg_show_version_page.html b/app/test/frontend/golden/pkg_show_version_page.html index 0351983fda..cd1f07764c 100644 --- a/app/test/frontend/golden/pkg_show_version_page.html +++ b/app/test/frontend/golden/pkg_show_version_page.html @@ -19,6 +19,8 @@ oxygen | Dart package + + diff --git a/app/test/frontend/golden/pkg_versions_page.html b/app/test/frontend/golden/pkg_versions_page.html index aa19f4541b..c7eb454616 100644 --- a/app/test/frontend/golden/pkg_versions_page.html +++ b/app/test/frontend/golden/pkg_versions_page.html @@ -19,6 +19,8 @@ oxygen package - All Versions + + diff --git a/app/test/frontend/golden/publisher_activity_log_page.html b/app/test/frontend/golden/publisher_activity_log_page.html index bf8eed6768..6b8e5c090b 100644 --- a/app/test/frontend/golden/publisher_activity_log_page.html +++ b/app/test/frontend/golden/publisher_activity_log_page.html @@ -19,6 +19,8 @@ Publisher activity log: example.com + + diff --git a/app/test/frontend/golden/publisher_admin_page.html b/app/test/frontend/golden/publisher_admin_page.html index db16524d3e..b0d4c25187 100644 --- a/app/test/frontend/golden/publisher_admin_page.html +++ b/app/test/frontend/golden/publisher_admin_page.html @@ -19,6 +19,8 @@ Publisher administration: example.com + + diff --git a/app/test/frontend/golden/publisher_list_page.html b/app/test/frontend/golden/publisher_list_page.html index f632766c46..18ab7205d2 100644 --- a/app/test/frontend/golden/publisher_list_page.html +++ b/app/test/frontend/golden/publisher_list_page.html @@ -19,6 +19,8 @@ Publishers + + diff --git a/app/test/frontend/golden/publisher_packages_page.html b/app/test/frontend/golden/publisher_packages_page.html index 40898cfe7e..c26a6e32dc 100644 --- a/app/test/frontend/golden/publisher_packages_page.html +++ b/app/test/frontend/golden/publisher_packages_page.html @@ -19,6 +19,8 @@ Packages of publisher example.com + + diff --git a/app/test/frontend/golden/publisher_unlisted_packages_page.html b/app/test/frontend/golden/publisher_unlisted_packages_page.html index 4f2e88129d..cc9990ebd1 100644 --- a/app/test/frontend/golden/publisher_unlisted_packages_page.html +++ b/app/test/frontend/golden/publisher_unlisted_packages_page.html @@ -19,6 +19,8 @@ Packages of publisher example.com + + diff --git a/app/test/frontend/golden/report_page.html b/app/test/frontend/golden/report_page.html index 1ac2eac18d..1289be58da 100644 --- a/app/test/frontend/golden/report_page.html +++ b/app/test/frontend/golden/report_page.html @@ -19,6 +19,8 @@ Report a problem + + diff --git a/app/test/frontend/golden/report_page_appeal.html b/app/test/frontend/golden/report_page_appeal.html index e42151b6ce..90b6850d42 100644 --- a/app/test/frontend/golden/report_page_appeal.html +++ b/app/test/frontend/golden/report_page_appeal.html @@ -19,6 +19,8 @@ Appeal a resolution + + diff --git a/app/test/frontend/golden/search_page.html b/app/test/frontend/golden/search_page.html index d3b9f77cea..e6c6f5427a 100644 --- a/app/test/frontend/golden/search_page.html +++ b/app/test/frontend/golden/search_page.html @@ -19,6 +19,8 @@ Search results for foobar + + diff --git a/app/test/frontend/golden/topics_page.html b/app/test/frontend/golden/topics_page.html index 1d4603c6fe..4af91d2b54 100644 --- a/app/test/frontend/golden/topics_page.html +++ b/app/test/frontend/golden/topics_page.html @@ -19,6 +19,8 @@ Topics + + diff --git a/app/test/task/testdata/goldens/packages/oxygen.html b/app/test/task/testdata/goldens/packages/oxygen.html index 20a8f93f50..08c4762563 100644 --- a/app/test/task/testdata/goldens/packages/oxygen.html +++ b/app/test/task/testdata/goldens/packages/oxygen.html @@ -19,6 +19,8 @@ oxygen | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/changelog.html b/app/test/task/testdata/goldens/packages/oxygen/changelog.html index dca8398550..a2894ef786 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/changelog.html +++ b/app/test/task/testdata/goldens/packages/oxygen/changelog.html @@ -19,6 +19,8 @@ oxygen changelog | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/example.html b/app/test/task/testdata/goldens/packages/oxygen/example.html index 8fb8f44d33..17b242bc63 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/example.html +++ b/app/test/task/testdata/goldens/packages/oxygen/example.html @@ -19,6 +19,8 @@ oxygen example | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/install.html b/app/test/task/testdata/goldens/packages/oxygen/install.html index f280313337..8438ca9d13 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/install.html +++ b/app/test/task/testdata/goldens/packages/oxygen/install.html @@ -19,6 +19,8 @@ oxygen install | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/license.html b/app/test/task/testdata/goldens/packages/oxygen/license.html index bf2cc21036..4cfbc0c009 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/license.html +++ b/app/test/task/testdata/goldens/packages/oxygen/license.html @@ -19,6 +19,8 @@ oxygen license | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/score.html b/app/test/task/testdata/goldens/packages/oxygen/score.html index d78eb57db5..7c75ce1c90 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/score.html +++ b/app/test/task/testdata/goldens/packages/oxygen/score.html @@ -19,6 +19,8 @@ oxygen score | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/versions.html b/app/test/task/testdata/goldens/packages/oxygen/versions.html index e8022768e2..473b77d01a 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/versions.html +++ b/app/test/task/testdata/goldens/packages/oxygen/versions.html @@ -19,6 +19,8 @@ oxygen package - All Versions + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0.html b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0.html index f0f838847b..1d376ca240 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0.html +++ b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0.html @@ -19,6 +19,8 @@ oxygen 1.0.0 | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/changelog.html b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/changelog.html index a0c339166f..5ecdbc10b1 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/changelog.html +++ b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/changelog.html @@ -19,6 +19,8 @@ oxygen 1.0.0 changelog | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/example.html b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/example.html index 826f35289a..48b0857d80 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/example.html +++ b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/example.html @@ -19,6 +19,8 @@ oxygen 1.0.0 example | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/install.html b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/install.html index 86ae593af6..7598273941 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/install.html +++ b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/install.html @@ -19,6 +19,8 @@ oxygen 1.0.0 install | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/license.html b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/license.html index ab267e2660..7db6cce3cc 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/license.html +++ b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/license.html @@ -19,6 +19,8 @@ oxygen 1.0.0 license | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/score.html b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/score.html index 6215f8d989..474380a8d5 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/score.html +++ b/app/test/task/testdata/goldens/packages/oxygen/versions/1.0.0/score.html @@ -19,6 +19,8 @@ oxygen 1.0.0 score | Dart package + + diff --git a/app/test/task/testdata/goldens/packages/oxygen/versions/2.0.0.html b/app/test/task/testdata/goldens/packages/oxygen/versions/2.0.0.html index 20a8f93f50..08c4762563 100644 --- a/app/test/task/testdata/goldens/packages/oxygen/versions/2.0.0.html +++ b/app/test/task/testdata/goldens/packages/oxygen/versions/2.0.0.html @@ -19,6 +19,8 @@ oxygen | Dart package + + diff --git a/static/img/apple-touch-icon.png b/static/img/apple-touch-icon.png new file mode 100644 index 0000000000..dde49e1ce3 Binary files /dev/null and b/static/img/apple-touch-icon.png differ