]> cat aescling's git repositories - mastodon.git/commitdiff
Add high color privacy icons
authorThibaut Girka <thib@sitedethib.com>
Sat, 27 Apr 2019 15:41:49 +0000 (17:41 +0200)
committerThibG <thib@sitedethib.com>
Wed, 1 May 2019 14:38:01 +0000 (16:38 +0200)
Fixes #1015

app/javascript/flavours/glitch/features/local_settings/page/index.js
app/javascript/flavours/glitch/features/ui/index.js
app/javascript/flavours/glitch/reducers/local_settings.js
app/javascript/flavours/glitch/styles/accessibility.scss

index bc4ad359ce0e0af40c3d0612f3b4e11d6c45d561..a13bffa3a219760afc83c59d00711c7fb119f5bd 100644 (file)
@@ -42,6 +42,15 @@ export default class LocalSettingsPage extends React.PureComponent {
         >
           <FormattedMessage id='settings.show_reply_counter' defaultMessage='Display an estimate of the reply count' />
         </LocalSettingsPageItem>
+        <LocalSettingsPageItem
+          settings={settings}
+          item={['hicolor_privacy_icons']}
+          id='mastodon-settings--hicolor_privacy_icons'
+          onChange={onChange}
+        >
+          <FormattedMessage id='settings.hicolor_privacy_icons' defaultMessage='High color privacy icons' />
+          <span className='hint'><FormattedMessage id='settings.hicolor_privacy_icons.hint' defaultMessage="Display privacy icons in bright and easily distinguishable colors" /></span>
+        </LocalSettingsPageItem>
         <section>
           <h2><FormattedMessage id='settings.notifications_opts' defaultMessage='Notifications options' /></h2>
           <LocalSettingsPageItem
index f95571d25d8ac1b029f68a075a1216468b72fb42..13c71337a039d5f98d35deffd2e10374cf901e61 100644 (file)
@@ -68,6 +68,7 @@ const mapStateToProps = state => ({
   dropdownMenuIsOpen: state.getIn(['dropdown_menu', 'openId']) !== null,
   unreadNotifications: state.getIn(['notifications', 'unread']),
   showFaviconBadge: state.getIn(['local_settings', 'notifications', 'favicon_badge']),
+  hicolorPrivacyIcons: state.getIn(['local_settings', 'hicolor_privacy_icons']),
 });
 
 const keyMap = {
@@ -446,6 +447,7 @@ export default class UI extends React.Component {
       'wide': isWide,
       'system-font': this.props.systemFontUi,
       'navbar-under': navbarUnder,
+      'hicolor-privacy-icons': this.props.hicolorPrivacyIcons,
     });
 
     const handlers = {
index ef694d4ead8853426589515736d477c5fffef8db..93ab1a9edb673676a98b67e27a2e97fc01f9db60 100644 (file)
@@ -18,6 +18,7 @@ const initialState = ImmutableMap({
   confirm_before_clearing_draft: true,
   preselect_on_reply: true,
   inline_preview_cards: true,
+  hicolor_privacy_icons: true,
   content_warnings : ImmutableMap({
     auto_unfold : false,
     filter      : null,
index 4fe5c8b1c15eea943f1301b0c15d3696d4ca62b2..35e91da805e7db862b6b46888b2b67123a28e5fa 100644 (file)
@@ -11,3 +11,25 @@ $emojis-requiring-outlines: '8ball' 'ant' 'back' 'black_circle' 'black_heart' 'b
     }
   }
 }
+
+.hicolor-privacy-icons {
+  .status__visibility-icon.fa-globe,
+  .composer--options--dropdown--content--item .fa-globe {
+    color: #1976D2;
+  }
+
+  .status__visibility-icon.fa-unlock,
+  .composer--options--dropdown--content--item .fa-unlock {
+    color: #388E3C;
+  }
+
+  .status__visibility-icon.fa-lock,
+  .composer--options--dropdown--content--item .fa-lock {
+    color: #FFA000;
+  }
+
+  .status__visibility-icon.fa-envelope,
+  .composer--options--dropdown--content--item .fa-envelope {
+    color: #D32F2F;
+  }
+}