diff --git a/app/serializers/manifest_serializer.rb b/app/serializers/manifest_serializer.rb index 21ec0d4be..dafe8f55b 100644 --- a/app/serializers/manifest_serializer.rb +++ b/app/serializers/manifest_serializer.rb @@ -7,7 +7,7 @@ class ManifestSerializer < ActiveModel::Serializer attributes :name, :short_name, :description, :icons, :theme_color, :background_color, :display, :start_url, :scope, - :share_target + :share_target, :shortcuts def name object.site_title @@ -64,4 +64,42 @@ class ManifestSerializer < ActiveModel::Serializer }, } end + + def shortcuts + [ + { + name: 'New toot', + url: '/web/statuses/new', + icons: [ + { + src: '/shortcuts/new-status.png', + type: 'image/png', + sizes: '192x192', + }, + ], + }, + { + name: 'Notifications', + url: '/web/notifications', + icons: [ + { + src: '/shortcuts/notifications.png', + type: 'image/png', + sizes: '192x192', + }, + ], + }, + { + name: 'Direct messages', + url: '/web/timelines/direct', + icons: [ + { + src: '/shortcuts/direct.png', + type: 'image/png', + sizes: '192x192', + }, + ], + }, + ] + end end diff --git a/public/shortcuts/direct.png b/public/shortcuts/direct.png new file mode 100644 index 000000000..e8772c00e Binary files /dev/null and b/public/shortcuts/direct.png differ diff --git a/public/shortcuts/new-status.png b/public/shortcuts/new-status.png new file mode 100644 index 000000000..b7095f3c4 Binary files /dev/null and b/public/shortcuts/new-status.png differ diff --git a/public/shortcuts/notifications.png b/public/shortcuts/notifications.png new file mode 100644 index 000000000..6b9d45718 Binary files /dev/null and b/public/shortcuts/notifications.png differ diff --git a/public/shortcuts/profile.png b/public/shortcuts/profile.png new file mode 100644 index 000000000..0b3bf517d Binary files /dev/null and b/public/shortcuts/profile.png differ