2018-03-13 17:14:57 -07:00
|
|
|
<SettingsLayout page='settings/general' label="General">
|
|
|
|
<h1>General Settings</h1>
|
|
|
|
|
2019-01-26 12:58:11 -08:00
|
|
|
<h2>Media</h2>
|
|
|
|
<form class="ui-settings">
|
2019-08-18 21:29:36 +02:00
|
|
|
<label class="setting-group">
|
2018-12-01 14:09:08 -08:00
|
|
|
<input type="checkbox" id="choice-never-mark-media-sensitive"
|
|
|
|
bind:checked="$neverMarkMediaAsSensitive" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Show sensitive media by default
|
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
|
|
|
<input type="checkbox" id="choice-use-blurhash"
|
|
|
|
bind:checked="$ignoreBlurhash" on:change="onChange(event)">
|
|
|
|
Show a plain gray color for sensitive media
|
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
2019-05-25 13:20:52 -07:00
|
|
|
<input type="checkbox" id="choice-mark-media-sensitive"
|
|
|
|
bind:checked="$markMediaAsSensitive" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Treat all media as sensitive
|
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
2018-12-08 09:44:12 -08:00
|
|
|
<input type="checkbox" id="choice-large-inline-media"
|
|
|
|
bind:checked="$largeInlineMedia" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Show large inline images and videos
|
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
2019-01-26 12:58:11 -08:00
|
|
|
<input type="checkbox" id="choice-autoplay-gif"
|
|
|
|
bind:checked="$autoplayGifs" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Autoplay GIFs
|
|
|
|
</label>
|
2019-01-26 12:58:11 -08:00
|
|
|
</form>
|
|
|
|
|
|
|
|
<h2>UI</h2>
|
|
|
|
<form class="ui-settings">
|
2019-08-18 21:29:36 +02:00
|
|
|
<label class="setting-group">
|
2018-12-01 14:09:08 -08:00
|
|
|
<input type="checkbox" id="choice-disable-custom-scrollbars"
|
|
|
|
bind:checked="$disableCustomScrollbars" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Disable custom scrollbars
|
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
2019-05-28 22:46:01 -07:00
|
|
|
<input type="checkbox" id="choice-disable-infinite-scroll"
|
|
|
|
bind:checked="$disableInfiniteScroll" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Disable
|
2019-05-28 22:46:01 -07:00
|
|
|
<Tooltip
|
|
|
|
text="infinite scroll"
|
|
|
|
tooltipText={
|
|
|
|
"When infinite scroll is disabled, new toots will not automatically appear at the bottom " +
|
|
|
|
"or top of the timeline. Instead, buttons will allow you to load more content on demand."
|
|
|
|
}
|
|
|
|
/>
|
2019-08-18 21:29:36 +02:00
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
2019-04-20 09:12:42 -07:00
|
|
|
<input type="checkbox" id="choice-hide-cards"
|
|
|
|
bind:checked="$hideCards" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Hide link preview cards
|
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
2019-01-26 12:58:11 -08:00
|
|
|
<input type="checkbox" id="choice-underline-links"
|
|
|
|
bind:checked="$underlineLinks" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Underline links in toots and profiles
|
|
|
|
</label>
|
2018-12-01 14:09:08 -08:00
|
|
|
</form>
|
|
|
|
|
|
|
|
<h2>Accessibility</h2>
|
2019-01-26 12:58:11 -08:00
|
|
|
<form class="ui-settings">
|
2019-08-18 21:29:36 +02:00
|
|
|
<label class="setting-group">
|
2018-03-22 20:23:00 -07:00
|
|
|
<input type="checkbox" id="choice-reduce-motion"
|
2018-12-01 14:09:08 -08:00
|
|
|
bind:checked="$reduceMotion" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Reduce motion in UI animations
|
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
2018-12-02 21:12:58 -08:00
|
|
|
<input type="checkbox" id="choice-disable-tap-on-status"
|
|
|
|
bind:checked="$disableTapOnStatus" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Disable tappable area on entire toot
|
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
2018-08-19 18:03:26 -07:00
|
|
|
<input type="checkbox" id="choice-omit-emoji-in-display-names"
|
2018-12-01 14:09:08 -08:00
|
|
|
bind:checked="$omitEmojiInDisplayNames" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Remove emoji from user display names
|
|
|
|
</label>
|
|
|
|
<label class="setting-group">
|
2018-12-01 11:53:20 -08:00
|
|
|
<input type="checkbox" id="choice-disable-long-aria-labels"
|
2018-12-01 14:09:08 -08:00
|
|
|
bind:checked="$disableLongAriaLabels" on:change="onChange(event)">
|
2019-08-18 21:29:36 +02:00
|
|
|
Use short article ARIA labels
|
|
|
|
</label>
|
2018-03-13 17:14:57 -07:00
|
|
|
</form>
|
2018-11-04 15:57:05 -08:00
|
|
|
|
2019-02-11 21:04:00 -08:00
|
|
|
{#if $isUserLoggedIn }
|
|
|
|
<h2>{themeTitle}</h2>
|
|
|
|
<ThemeSettings instanceName={$currentInstance} />
|
|
|
|
{/if}
|
2018-03-13 17:14:57 -07:00
|
|
|
</SettingsLayout>
|
|
|
|
<style>
|
|
|
|
.ui-settings {
|
|
|
|
background: var(--form-bg);
|
|
|
|
border: 1px solid var(--main-border);
|
|
|
|
border-radius: 4px;
|
|
|
|
padding: 20px;
|
|
|
|
line-height: 2em;
|
|
|
|
}
|
|
|
|
.setting-group {
|
2019-08-18 21:29:36 +02:00
|
|
|
display: block;
|
2018-03-13 17:14:57 -07:00
|
|
|
padding: 5px 0;
|
|
|
|
}
|
2019-09-21 13:45:48 -07:00
|
|
|
|
|
|
|
@media (max-width: 240px) {
|
|
|
|
.ui-settings {
|
|
|
|
padding: 20px 10px;
|
|
|
|
}
|
|
|
|
}
|
2018-03-13 17:14:57 -07:00
|
|
|
</style>
|
|
|
|
<script>
|
|
|
|
import SettingsLayout from '../../_components/settings/SettingsLayout.html'
|
2018-12-01 12:57:00 -08:00
|
|
|
import ThemeSettings from '../../_components/settings/instance/ThemeSettings.html'
|
2018-03-13 17:14:57 -07:00
|
|
|
import { store } from '../../_store/store'
|
2019-05-28 22:46:01 -07:00
|
|
|
import Tooltip from '../../_components/Tooltip.html'
|
2018-03-13 17:14:57 -07:00
|
|
|
|
|
|
|
export default {
|
|
|
|
components: {
|
2018-12-01 12:57:00 -08:00
|
|
|
SettingsLayout,
|
2019-05-28 22:46:01 -07:00
|
|
|
ThemeSettings,
|
|
|
|
Tooltip
|
2018-03-13 17:14:57 -07:00
|
|
|
},
|
2018-12-01 14:09:08 -08:00
|
|
|
methods: {
|
|
|
|
onChange (event) {
|
|
|
|
// these two are mutually exclusive
|
2019-08-03 13:49:37 -07:00
|
|
|
const { markMediaAsSensitive, neverMarkMediaAsSensitive } = this.store.get()
|
2018-12-01 14:09:08 -08:00
|
|
|
if (markMediaAsSensitive && neverMarkMediaAsSensitive) {
|
|
|
|
if (event.target.id === 'choice-mark-media-sensitive') {
|
|
|
|
this.store.set({ neverMarkMediaAsSensitive: false })
|
|
|
|
} else {
|
|
|
|
this.store.set({ markMediaAsSensitive: false })
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
this.store.save()
|
|
|
|
}
|
|
|
|
},
|
2018-12-01 12:57:00 -08:00
|
|
|
store: () => store,
|
|
|
|
computed: {
|
|
|
|
themeTitle: ({ $loggedInInstancesInOrder, $currentInstance }) => (
|
|
|
|
$loggedInInstancesInOrder.length > 1 ? `Theme for ${$currentInstance}` : 'Theme'
|
|
|
|
)
|
|
|
|
}
|
2018-04-19 21:38:01 -07:00
|
|
|
}
|
2018-12-02 21:12:58 -08:00
|
|
|
</script>
|