Accessibility: Simplify design, more obvious selectability

Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
This commit is contained in:
Jan-Christoph Borchardt 2019-01-24 18:55:58 +01:00 committed by John Molakvoæ (skjnldsv)
parent 6afc5fbe9e
commit 4b88ac4d2a
No known key found for this signature in database
GPG Key ID: 60C25B8C072916CF
4 changed files with 47 additions and 60 deletions

View File

@ -1,59 +1,49 @@
#accessibility {
max-width: 800px;
}
#accessibility a {
border-bottom: 1px dotted;
&:hover,
&:focus {
border-bottom-style: solid;
}
}
.preview-list { .preview-list {
display: flex; display: flex;
flex-wrap: wrap; flex-direction: column;
} }
.preview { .preview {
display: flex; display: flex;
flex-direction: column; justify-content: flex-start;
min-width: 250px; margin: 1em;
max-width: 400px; margin-left: 0;
flex: 1 1 300px;
border: 1px solid var(--color-border);
padding: 10px;
border-radius: var(--border-radius);
transition: all 200ms ease-in-out;
filter: drop-shadow(0 1px 2px var(--color-box-shadow));
background-color: var(--color-main-background);
opacity: 0.9;
margin: 10px;
position: relative; position: relative;
&, &,
* { * {
cursor: pointer;
user-select: none; user-select: none;
} }
&:hover,
&:focus,
&.selected {
filter: drop-shadow(0 1px 4px var(--color-box-shadow));
opacity: 1;
}
.preview-image { .preview-image {
height: 200px; flex-basis: 200px;
flex-shrink: 0;
margin-right: 1em;
background-position: top left; background-position: top left;
background-size: cover; background-size: cover;
background-repeat: no-repeat; background-repeat: no-repeat;
border-radius: var(--border-radius);
} }
h3 {
.preview-description {
display: flex; display: flex;
justify-content: space-between; flex-direction: column;
line-height: 1em;
align-items: center; label {
} padding: 12px 0;
p { }
text-align: justify;
}
.icon-checkmark-color {
transition: all 100ms ease-in-out;
border-radius: 1em;
padding: 4px 5px 4px 20px;
background-position: 4px center;
opacity: 0;
visibility: hidden;
}
&.selected .icon-checkmark-color {
opacity: 1;
visibility: visible;
box-shadow: 0 0 0 1px var(--color-success);
} }
} }

View File

@ -75,7 +75,7 @@ class AccessibilityProvider {
'id' => 'fontdyslexic', 'id' => 'fontdyslexic',
'img' => $this->urlGenerator->imagePath($this->appName, 'font-opendyslexic.jpg'), 'img' => $this->urlGenerator->imagePath($this->appName, 'font-opendyslexic.jpg'),
'title' => $this->l->t('Dyslexia font'), 'title' => $this->l->t('Dyslexia font'),
'text' => $this->l->t('OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia. The typeface was created by Abelardo Gonzalez, who released it through an open-source license.') 'text' => $this->l->t('OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia.')
] ]
); );
} }

View File

@ -1,21 +1,18 @@
<template> <template>
<div id="accessibility" class="section"> <div id="accessibility" class="section">
<h2>{{t('accessibility', 'Accessibility')}}</h2> <h2>{{t('accessibility', 'Accessibility')}}</h2>
<p class="settings-hint"> <p>
{{t('accessibility', 'Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders.')}}</br> {{t('accessibility', 'Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders.')}} We aim to be compliant with the <a target="_blank" href="https://www.w3.org/WAI/standards-guidelines/wcag/" rel="noreferrer nofollow">Web Content Accessibility Guidelines</a> 2.1 on AA level, with the high contrast theme even on AAA level.</br>
We aim to be compliant with the <a target="_blank" href="https://www.w3.org/WAI/standards-guidelines/wcag/" rel="noreferrer nofollow">Web Content Accessibility Guidelines</a> 2.1 on AA level, with the high contrast theme even on AAA level.</br>
If you find any issues, dont hesitate to report them on <a target="_blank" href="https://github.com/nextcloud/server/issues/" rel="noreferrer nofollow">our issue tracker</a>. And if you want to get involved, come join <a target="_blank" href="https://nextcloud.com/design" rel="noreferrer nofollow">our design team</a>! If you find any issues, dont hesitate to report them on <a target="_blank" href="https://github.com/nextcloud/server/issues/" rel="noreferrer nofollow">our issue tracker</a>. And if you want to get involved, come join <a target="_blank" href="https://nextcloud.com/design" rel="noreferrer nofollow">our design team</a>!
</p> </p>
<div class="themes-list preview-list"> <div class="preview-list">
<preview v-for="preview in themes" :preview="preview" <preview v-for="preview in themes" :preview="preview"
:key="preview.id" :selected="selected.theme" :key="preview.id" :selected="selected.theme"
v-on:select="selectTheme"></preview> v-on:select="selectTheme"></preview>
</div>
<div class="fonts-list preview-list">
<preview v-for="preview in fonts" :preview="preview" <preview v-for="preview in fonts" :preview="preview"
:key="preview.id" :selected="selected.font" :key="preview.id" :selected="selected.font"
v-on:select="selectFont"></preview> v-on:select="selectFont"></preview>
</div> </div>
</div> </div>
</template> </template>

View File

@ -1,13 +1,13 @@
<template> <template>
<a :class="{preview: true, selected: preview.id === selected}" <div :class="{preview: true}">
href="#" @click="selectItem">
<div class="preview-image" :style="{backgroundImage: 'url(' + preview.img + ')'}"></div> <div class="preview-image" :style="{backgroundImage: 'url(' + preview.img + ')'}"></div>
<h3> <div class="preview-description">
<span>{{preview.title}}</span> <h3>{{preview.title}}</h3>
<div class="icon-checkmark-color">{{t('accessibility', 'enabled')}}</div> <p>{{preview.text}}</p>
</h3> <input type="checkbox" class="checkbox" :id="'accessibility-' + preview.id" v-model="selected" />
<p>{{preview.text}}</p> <label :for="'accessibility-' + preview.id" @click="selectItem">{{t('accessibility', 'Enable')}}</label>
</a> </div>
</div>
</template> </template>
<script> <script>