Browse Source

Fix #3063 - Add dynamic app manifest (#3563)

* Fix #3063 - Add dynamic app manifest

* Added short_name

* Add background_color
closed-social-glitch-2
Eugen Rochko 6 years ago
committed by GitHub
parent
commit
722d152082
4 changed files with 23 additions and 14 deletions
  1. +11
    -0
      app/controllers/manifests_controller.rb
  2. +11
    -0
      app/views/manifests/show.json.rabl
  3. +1
    -0
      config/routes.rb
  4. +0
    -14
      public/manifest.json

+ 11
- 0
app/controllers/manifests_controller.rb View File

@ -0,0 +1,11 @@
# frozen_string_literal: true
class ManifestsController < ApplicationController
before_action :set_instance_presenter
def show; end
def set_instance_presenter
@instance_presenter = InstancePresenter.new
end
end

+ 11
- 0
app/views/manifests/show.json.rabl View File

@ -0,0 +1,11 @@
object false
node(:name) { Setting.site_title }
node(:short_name) { Setting.site_title }
node(:description) { strip_tags(Setting.site_description.presence || I18n.t('about.about_mastodon')) }
node(:icons) { [{ src: '/android-chrome-192x192.png', sizes: '192x192', type: 'image/png' }] }
node(:theme_color) { '#282c37' }
node(:background_color) { '#d9e1e8' }
node(:display) { 'standalone' }
node(:start_url) { '/web/timelines/home' }
node(:scope) { root_url }

+ 1
- 0
config/routes.rb View File

@ -17,6 +17,7 @@ Rails.application.routes.draw do
get '.well-known/host-meta', to: 'well_known/host_meta#show', as: :host_meta, defaults: { format: 'xml' } get '.well-known/host-meta', to: 'well_known/host_meta#show', as: :host_meta, defaults: { format: 'xml' }
get '.well-known/webfinger', to: 'well_known/webfinger#show', as: :webfinger get '.well-known/webfinger', to: 'well_known/webfinger#show', as: :webfinger
get 'manifest', to: 'manifests#show', defaults: { format: 'json' }
devise_for :users, path: 'auth', controllers: { devise_for :users, path: 'auth', controllers: {
sessions: 'auth/sessions', sessions: 'auth/sessions',

+ 0
- 14
public/manifest.json View File

@ -1,14 +0,0 @@
{
"name": "Mastodon",
"description": "Mastodon is a free, open-source social network server.",
"icons": [
{
"src": "\/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image\/png"
}
],
"theme_color": "#282c37",
"display": "standalone",
"start_url": "/web/timelines/home"
}

Loading…
Cancel
Save