diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2021-07-19 15:11:28 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2021-07-19 15:11:28 +0900 |
| commit | f1c9e596e8454742f15c89077755505f1bd6c368 (patch) | |
| tree | 463f6cb426cc00755847a3d6fc2b17e9b703031d /src | |
| parent | Tweak style (diff) | |
| download | misskey-f1c9e596e8454742f15c89077755505f1bd6c368.tar.gz misskey-f1c9e596e8454742f15c89077755505f1bd6c368.tar.bz2 misskey-f1c9e596e8454742f15c89077755505f1bd6c368.zip | |
アイコンを四角で表示するオプション
Diffstat (limited to 'src')
| -rw-r--r-- | src/client/components/global/avatar.vue | 56 | ||||
| -rw-r--r-- | src/client/pages/settings/general.vue | 6 | ||||
| -rw-r--r-- | src/client/store.ts | 4 |
3 files changed, 42 insertions, 24 deletions
diff --git a/src/client/components/global/avatar.vue b/src/client/components/global/avatar.vue index 64fb2116b6..eea970ec9a 100644 --- a/src/client/components/global/avatar.vue +++ b/src/client/components/global/avatar.vue @@ -1,9 +1,9 @@ <template> -<span class="eiwwqkts _noSelect" :class="{ cat }" :title="acct(user)" v-if="disableLink" v-user-preview="disablePreview ? undefined : user.id" @click="onClick"> +<span class="eiwwqkts _noSelect" :class="{ cat, square: $store.state.squareAvatars }" :title="acct(user)" v-if="disableLink" v-user-preview="disablePreview ? undefined : user.id" @click="onClick"> <img class="inner" :src="url" decoding="async"/> <MkUserOnlineIndicator v-if="showIndicator" class="indicator" :user="user"/> </span> -<MkA class="eiwwqkts _noSelect" :class="{ cat }" :to="userPage(user)" :title="acct(user)" :target="target" v-else v-user-preview="disablePreview ? undefined : user.id"> +<MkA class="eiwwqkts _noSelect" :class="{ cat, square: $store.state.squareAvatars }" :to="userPage(user)" :title="acct(user)" :target="target" v-else v-user-preview="disablePreview ? undefined : user.id"> <img class="inner" :src="url" decoding="async"/> <MkUserOnlineIndicator v-if="showIndicator" class="indicator" :user="user"/> </MkA> @@ -81,28 +81,6 @@ export default defineComponent({ border-radius: 100%; line-height: 16px; - &.cat { - &:before, &:after { - background: #df548f; - border: solid 4px currentColor; - box-sizing: border-box; - content: ''; - display: inline-block; - height: 50%; - width: 50%; - } - - &:before { - border-radius: 0 75% 75%; - transform: rotate(37.5deg) skew(30deg); - } - - &:after { - border-radius: 75% 0 75% 75%; - transform: rotate(-37.5deg) skew(-30deg); - } - } - > .inner { position: absolute; bottom: 0; @@ -125,5 +103,35 @@ export default defineComponent({ width: 20%; height: 20%; } + + &.square { + border-radius: 20%; + + > .inner { + border-radius: 20%; + } + } + + &.cat { + &:before, &:after { + background: #df548f; + border: solid 4px currentColor; + box-sizing: border-box; + content: ''; + display: inline-block; + height: 50%; + width: 50%; + } + + &:before { + border-radius: 0 75% 75%; + transform: rotate(37.5deg) skew(30deg); + } + + &:after { + border-radius: 75% 0 75% 75%; + transform: rotate(-37.5deg) skew(-30deg); + } + } } </style> diff --git a/src/client/pages/settings/general.vue b/src/client/pages/settings/general.vue index 9dbc103145..cc40d2be98 100644 --- a/src/client/pages/settings/general.vue +++ b/src/client/pages/settings/general.vue @@ -37,6 +37,7 @@ <FormSwitch v-model:value="showGapBetweenNotesInTimeline">{{ $ts.showGapBetweenNotesInTimeline }}</FormSwitch> <FormSwitch v-model:value="loadRawImages">{{ $ts.loadRawImages }}</FormSwitch> <FormSwitch v-model:value="disableShowingAnimatedImages">{{ $ts.disableShowingAnimatedImages }}</FormSwitch> + <FormSwitch v-model:value="squareAvatars">{{ $ts.squareAvatars }}</FormSwitch> <FormSwitch v-model:value="useSystemFont">{{ $ts.useSystemFont }}</FormSwitch> <FormSwitch v-model:value="useOsNativeEmojis">{{ $ts.useOsNativeEmojis }} <div><Mfm text="🍮🍦🍭🍩🍰🍫🍬🥞🍪" :key="useOsNativeEmojis"/></div> @@ -145,6 +146,7 @@ export default defineComponent({ instanceTicker: defaultStore.makeGetterSetter('instanceTicker'), enableInfiniteScroll: defaultStore.makeGetterSetter('enableInfiniteScroll'), useReactionPickerForContextMenu: defaultStore.makeGetterSetter('useReactionPickerForContextMenu'), + squareAvatars: defaultStore.makeGetterSetter('squareAvatars'), }, watch: { @@ -176,6 +178,10 @@ export default defineComponent({ this.reloadAsk(); }, + squareAvatars() { + this.reloadAsk(); + }, + showGapBetweenNotesInTimeline() { this.reloadAsk(); }, diff --git a/src/client/store.ts b/src/client/store.ts index 04f9e83c61..2ae9cd790f 100644 --- a/src/client/store.ts +++ b/src/client/store.ts @@ -194,6 +194,10 @@ export const defaultStore = markRaw(new Storage('base', { where: 'device', default: false }, + squareAvatars: { + where: 'device', + default: false + }, })); // TODO: 他のタブと永続化されたstateを同期 |