feat(frontend): リアクションの横幅を150pxに制限するかどうかユーザーが選べるように (#12416)
* feat(frontend): リアクションの横幅を150pxに制限するかどうかユーザーが選べるように * localesの変更をjs-JP.ymlのみに修正し、日本語をより分かりやすく * クラス名を.icon から .limitWidthに変更
This commit is contained in:
		@@ -11,7 +11,7 @@ SPDX-License-Identifier: AGPL-3.0-only
 | 
			
		||||
	:class="[$style.root, { [$style.reacted]: note.myReaction == reaction, [$style.canToggle]: canToggle, [$style.small]: defaultStore.state.reactionsDisplaySize === 'small', [$style.large]: defaultStore.state.reactionsDisplaySize === 'large' }]"
 | 
			
		||||
	@click="toggleReaction()"
 | 
			
		||||
>
 | 
			
		||||
	<MkReactionIcon :class="$style.icon" :reaction="reaction" :emojiUrl="note.reactionEmojis[reaction.substring(1, reaction.length - 1)]"/>
 | 
			
		||||
	<MkReactionIcon :class="defaultStore.state.limitWidthOfReaction ? $style.limitWidth : ''" :reaction="reaction" :emojiUrl="note.reactionEmojis[reaction.substring(1, reaction.length - 1)]"/>
 | 
			
		||||
	<span :class="$style.count">{{ count }}</span>
 | 
			
		||||
</button>
 | 
			
		||||
</template>
 | 
			
		||||
@@ -188,7 +188,7 @@ if (!mock) {
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.icon {
 | 
			
		||||
.limitWidth {
 | 
			
		||||
	max-width: 150px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -56,6 +56,7 @@ SPDX-License-Identifier: AGPL-3.0-only
 | 
			
		||||
					<option value="medium">{{ i18n.ts.medium }}</option>
 | 
			
		||||
					<option value="large">{{ i18n.ts.large }}</option>
 | 
			
		||||
				</MkRadios>
 | 
			
		||||
				<MkSwitch v-model="limitWidthOfReaction">{{ i18n.ts.limitWidthOfReaction }}</MkSwitch>
 | 
			
		||||
			</div>
 | 
			
		||||
 | 
			
		||||
			<MkSelect v-model="instanceTicker">
 | 
			
		||||
@@ -226,6 +227,7 @@ const serverDisconnectedBehavior = computed(defaultStore.makeGetterSetter('serve
 | 
			
		||||
const showNoteActionsOnlyHover = computed(defaultStore.makeGetterSetter('showNoteActionsOnlyHover'));
 | 
			
		||||
const showClipButtonInNoteFooter = computed(defaultStore.makeGetterSetter('showClipButtonInNoteFooter'));
 | 
			
		||||
const reactionsDisplaySize = computed(defaultStore.makeGetterSetter('reactionsDisplaySize'));
 | 
			
		||||
const limitWidthOfReaction = computed(defaultStore.makeGetterSetter('limitWidthOfReaction'));
 | 
			
		||||
const collapseRenotes = computed(defaultStore.makeGetterSetter('collapseRenotes'));
 | 
			
		||||
const reduceAnimation = computed(defaultStore.makeGetterSetter('animation', v => !v, v => !v));
 | 
			
		||||
const useBlurEffectForModal = computed(defaultStore.makeGetterSetter('useBlurEffectForModal'));
 | 
			
		||||
@@ -290,6 +292,7 @@ watch([
 | 
			
		||||
	overridedDeviceKind,
 | 
			
		||||
	mediaListWithOneImageAppearance,
 | 
			
		||||
	reactionsDisplaySize,
 | 
			
		||||
	limitWidthOfReaction,
 | 
			
		||||
	highlightSensitiveMedia,
 | 
			
		||||
	keepScreenOn,
 | 
			
		||||
	disableStreamingTimeline,
 | 
			
		||||
 
 | 
			
		||||
@@ -330,6 +330,10 @@ export const defaultStore = markRaw(new Storage('base', {
 | 
			
		||||
		where: 'device',
 | 
			
		||||
		default: 'medium' as 'small' | 'medium' | 'large',
 | 
			
		||||
	},
 | 
			
		||||
	limitWidthOfReaction: {
 | 
			
		||||
		where: 'device',
 | 
			
		||||
		default: true,
 | 
			
		||||
	},
 | 
			
		||||
	forceShowAds: {
 | 
			
		||||
		where: 'device',
 | 
			
		||||
		default: false,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user