Skip to content
Snippets Groups Projects
  • Yuki Nakagawa's avatar
    548ff547
    Optimize user setting page for mobile browser (#1924) · 548ff547
    Yuki Nakagawa authored
    * Remove overflow because it blocks scrolling on mobile safari.
    
    * Add “-webkit-overflow-scrolling: touch;” to enable smooth scroll on mobile safari and other webkit browsers.
    
    * Use radio buttons in user setting page.
    
    Because select tags with long text are not fit in the width of mobile devices.
    
    * Add flex property to fit labels to devise width.
    
    * Change font size of select.
    
    It causes auto zooming on mobile safari.
    548ff547
    History
    Optimize user setting page for mobile browser (#1924)
    Yuki Nakagawa authored
    * Remove overflow because it blocks scrolling on mobile safari.
    
    * Add “-webkit-overflow-scrolling: touch;” to enable smooth scroll on mobile safari and other webkit browsers.
    
    * Use radio buttons in user setting page.
    
    Because select tags with long text are not fit in the width of mobile devices.
    
    * Add flex property to fit labels to devise width.
    
    * Change font size of select.
    
    It causes auto zooming on mobile safari.
show.html.haml 1.57 KiB
- content_for :page_title do
  = t('settings.preferences')

= simple_form_for current_user, url: settings_preferences_path, html: { method: :put } do |f|
  = render 'shared/error_messages', object: current_user

  .fields-group
    = f.input :locale, collection: I18n.available_locales, wrapper: :with_label, include_blank: false, label_method: lambda { |locale| human_locale(locale) }

    = f.input :setting_default_privacy, collection: Status.visibilities.keys - ['direct'], wrapper: :with_label, include_blank: false, label_method: lambda { |visibility| I18n.t("statuses.visibilities.#{visibility}") }, required: false, as: :radio_buttons, collection_wrapper_tag: 'ul', item_wrapper_tag: 'li'

  .fields-group
    = f.simple_fields_for :notification_emails, hash_to_object(current_user.settings.notification_emails) do |ff|
      = ff.input :follow, as: :boolean, wrapper: :with_label
      = ff.input :follow_request, as: :boolean, wrapper: :with_label
      = ff.input :reblog, as: :boolean, wrapper: :with_label
      = ff.input :favourite, as: :boolean, wrapper: :with_label
      = ff.input :mention, as: :boolean, wrapper: :with_label
      = ff.input :digest, as: :boolean, wrapper: :with_label

  = f.simple_fields_for :interactions, hash_to_object(current_user.settings.interactions) do |ff|
    = ff.input :must_be_follower, as: :boolean, wrapper: :with_label
    = ff.input :must_be_following, as: :boolean, wrapper: :with_label

  .fields-group
    = f.input :setting_boost_modal, as: :boolean, wrapper: :with_label

  .actions
    = f.button :button, t('generic.save_changes'), type: :submit