diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index 45dbf07e1f..e8038dfe14 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -373,6 +373,7 @@ members: "メンバー" transfer: "譲渡" messagingWithUser: "ユーザーとチャット" messagingWithGroup: "グループでチャット" +enable: "有効にする" _2fa: alreadyRegistered: "既に設定は完了しています。" diff --git a/src/client/app.vue b/src/client/app.vue index 74bf95b72d..e7f61f589e 100644 --- a/src/client/app.vue +++ b/src/client/app.vue @@ -193,6 +193,7 @@ export default Vue.extend({ return { 'p': this.post, 'n': this.post, + 's': this.search, 'h|/': this.help }; }, diff --git a/src/client/components/notes.vue b/src/client/components/notes.vue index 476b479fcd..cdf857b642 100644 --- a/src/client/components/notes.vue +++ b/src/client/components/notes.vue @@ -1,6 +1,6 @@ <template> <div class="mk-notes" v-size="[{ max: 500 }]"> - <div class="empty _panel" v-if="empty"> + <div class="empty" v-if="empty"> <img src="https://xn--931a.moe/assets/info.jpg" alt=""/> <div>{{ $t('noNotes') }}</div> </div> diff --git a/src/client/components/post-form.vue b/src/client/components/post-form.vue index 166b3c7c5f..e089912e0c 100644 --- a/src/client/components/post-form.vue +++ b/src/client/components/post-form.vue @@ -153,7 +153,7 @@ export default Vue.extend({ this.$t('_postForm._placeholders.f') ]; const x = xs[Math.floor(Math.random() * xs.length)]; - + return this.renote ? this.$t('_postForm.quotePlaceholder') : this.reply @@ -713,7 +713,7 @@ export default Vue.extend({ border-radius: 0; background: transparent; color: var(--fg); - font-family: initial; + font-family: inherit; @media (max-width: 500px) { padding: 0 16px; diff --git a/src/client/components/ui/input.vue b/src/client/components/ui/input.vue index 69d842ef0f..cd295b68d8 100644 --- a/src/client/components/ui/input.vue +++ b/src/client/components/ui/input.vue @@ -254,7 +254,7 @@ export default Vue.extend({ > .input { position: relative; - + &:before { content: ''; display: block; @@ -327,14 +327,16 @@ export default Vue.extend({ } > input { + $height: 32px; display: block; + height: $height; width: 100%; margin: 0; padding: 0; font: inherit; font-weight: normal; font-size: 16px; - line-height: 32px; + line-height: $height; color: var(--inputText); background: transparent; border: none; diff --git a/src/client/pages/instance/index.vue b/src/client/pages/instance/index.vue index 3d0f10705a..e3e7332bc3 100644 --- a/src/client/pages/instance/index.vue +++ b/src/client/pages/instance/index.vue @@ -120,30 +120,30 @@ <section class="_card"> <div class="_title"><fa :icon="faShareAlt"/> {{ $t('integration') }}</div> <div class="_content"> - <header><fa :icon="faTwitter"/> {{ $t('twitter-integration-config') }}</header> - <mk-switch v-model="enableTwitterIntegration">{{ $t('enable-twitter-integration') }}</mk-switch> + <header><fa :icon="faTwitter"/> Twitter</header> + <mk-switch v-model="enableTwitterIntegration">{{ $t('enable') }}</mk-switch> <template v-if="enableTwitterIntegration"> - <mk-input v-model="twitterConsumerKey" :disabled="!enableTwitterIntegration"><template #icon><fa :icon="faKey"/></template>{{ $t('twitter-integration-consumer-key') }}</mk-input> - <mk-input v-model="twitterConsumerSecret" :disabled="!enableTwitterIntegration"><template #icon><fa :icon="faKey"/></template>{{ $t('twitter-integration-consumer-secret') }}</mk-input> - <mk-info>{{ $t('twitter-integration-info', { url: `${url}/api/tw/cb` }) }}</mk-info> + <mk-info>Callback URL: {{ `${url}/api/tw/cb` }}</mk-info> + <mk-input v-model="twitterConsumerKey" :disabled="!enableTwitterIntegration"><template #icon><fa :icon="faKey"/></template>Consumer Key</mk-input> + <mk-input v-model="twitterConsumerSecret" :disabled="!enableTwitterIntegration"><template #icon><fa :icon="faKey"/></template>Consumer Secret</mk-input> </template> </div> <div class="_content"> - <header><fa :icon="faGithub"/> {{ $t('github-integration-config') }}</header> - <mk-switch v-model="enableGithubIntegration">{{ $t('enable-github-integration') }}</mk-switch> + <header><fa :icon="faGithub"/> GitHub</header> + <mk-switch v-model="enableGithubIntegration">{{ $t('enable') }}</mk-switch> <template v-if="enableGithubIntegration"> - <mk-input v-model="githubClientId" :disabled="!enableGithubIntegration"><template #icon><fa :icon="faKey"/></template>{{ $t('github-integration-client-id') }}</mk-input> - <mk-input v-model="githubClientSecret" :disabled="!enableGithubIntegration"><template #icon><fa :icon="faKey"/></template>{{ $t('github-integration-client-secret') }}</mk-input> - <mk-info>{{ $t('github-integration-info', { url: `${url}/api/gh/cb` }) }}</mk-info> + <mk-info>Callback URL: {{ `${url}/api/gh/cb` }}</mk-info> + <mk-input v-model="githubClientId" :disabled="!enableGithubIntegration"><template #icon><fa :icon="faKey"/></template>Client ID</mk-input> + <mk-input v-model="githubClientSecret" :disabled="!enableGithubIntegration"><template #icon><fa :icon="faKey"/></template>Client Secret</mk-input> </template> </div> <div class="_content"> - <header><fa :icon="faDiscord"/> {{ $t('discord-integration-config') }}</header> - <mk-switch v-model="enableDiscordIntegration">{{ $t('enable-discord-integration') }}</mk-switch> + <header><fa :icon="faDiscord"/> Discord</header> + <mk-switch v-model="enableDiscordIntegration">{{ $t('enable') }}</mk-switch> <template v-if="enableDiscordIntegration"> - <mk-input v-model="discordClientId" :disabled="!enableDiscordIntegration"><template #icon><fa :icon="faKey"/></template>{{ $t('discord-integration-client-id') }}</mk-input> - <mk-input v-model="discordClientSecret" :disabled="!enableDiscordIntegration"><template #icon><fa :icon="faKey"/></template>{{ $t('discord-integration-client-secret') }}</mk-input> - <mk-info>{{ $t('discord-integration-info', { url: `${url}/api/dc/cb` }) }}</mk-info> + <mk-info>Callback URL: {{ `${url}/api/dc/cb` }}</mk-info> + <mk-input v-model="discordClientId" :disabled="!enableDiscordIntegration"><template #icon><fa :icon="faKey"/></template>Client ID</mk-input> + <mk-input v-model="discordClientSecret" :disabled="!enableDiscordIntegration"><template #icon><fa :icon="faKey"/></template>Client Secret</mk-input> </template> </div> <div class="_footer"> @@ -180,7 +180,7 @@ import MkTextarea from '../../components/ui/textarea.vue'; import MkSwitch from '../../components/ui/switch.vue'; import MkInfo from '../../components/ui/info.vue'; import MkUserSelect from '../../components/user-select.vue'; -import { version } from '../../config'; +import { version, url } from '../../config'; import i18n from '../../i18n'; import getAcct from '../../../misc/acct/render'; @@ -204,6 +204,7 @@ export default Vue.extend({ data() { return { version, + url, meta: null, stats: null, serverInfo: null, diff --git a/src/client/pages/messaging-room.form.vue b/src/client/pages/messaging-room.form.vue index 7dff9d6b2e..b32ecc467f 100644 --- a/src/client/pages/messaging-room.form.vue +++ b/src/client/pages/messaging-room.form.vue @@ -247,6 +247,7 @@ export default Vue.extend({ padding: 16px 16px 0 16px; resize: none; font-size: 1em; + font-family: inherit; outline: none; border: none; border-radius: 0; diff --git a/src/client/pages/messaging-room.vue b/src/client/pages/messaging-room.vue index cb6cae697a..39f8831ade 100644 --- a/src/client/pages/messaging-room.vue +++ b/src/client/pages/messaging-room.vue @@ -8,6 +8,7 @@ <portal to="avatar"><mk-avatar class="avatar" :user="user" :disable-preview="true"/></portal> </template> <template v-if="!fetching && group"> + <portal to="icon"><fa :icon="faUsers"/></portal> <portal to="title">{{ group.name }}</portal> </template> @@ -35,7 +36,7 @@ <script lang="ts"> import Vue from 'vue'; -import { faArrowCircleDown, faFlag } from '@fortawesome/free-solid-svg-icons'; +import { faArrowCircleDown, faFlag, faUsers } from '@fortawesome/free-solid-svg-icons'; import i18n from '../i18n'; import XList from '../components/date-separated-list.vue'; import XMessage from './messaging-room.message.vue'; @@ -63,7 +64,7 @@ export default Vue.extend({ connection: null, showIndicator: false, timer: null, - faArrowCircleDown, faFlag + faArrowCircleDown, faFlag, faUsers }; }, diff --git a/src/client/pages/messaging.vue b/src/client/pages/messaging.vue index 252702d550..4b6f49d82a 100644 --- a/src/client/pages/messaging.vue +++ b/src/client/pages/messaging.vue @@ -150,7 +150,7 @@ export default Vue.extend({ showCancelButton: true }); if (canceled) return; - this.navigateGroup(group); + this.$router.push(`/my/messaging/group/${group.id}`); } } }); diff --git a/src/client/router.ts b/src/client/router.ts index 949eb1ccbd..0f80e736e1 100644 --- a/src/client/router.ts +++ b/src/client/router.ts @@ -31,6 +31,7 @@ export const router = new VueRouter({ { path: '/my/mentions', component: page('mentions') }, { path: '/my/messaging', name: 'messaging', component: page('messaging') }, { path: '/my/messaging/:user', component: page('messaging-room') }, + { path: '/my/messaging/group/:group', component: page('messaging-room') }, { path: '/my/drive', name: 'drive', component: page('drive') }, { path: '/my/drive/folder/:folder', component: page('drive') }, { path: '/my/pages', name: 'pages', component: page('pages') }, diff --git a/src/docs/keyboard-shortcut.ja-JP.md b/src/docs/keyboard-shortcut.ja-JP.md index 2c51165568..3811613db3 100644 --- a/src/docs/keyboard-shortcut.ja-JP.md +++ b/src/docs/keyboard-shortcut.ja-JP.md @@ -10,6 +10,7 @@ <tr><td><kbd class="key">P</kbd>, <kbd class="key">N</kbd></td><td>新規投稿</td><td><b>P</b>ost, <b>N</b>ew, <b>N</b>ote</td></tr> <tr><td><kbd class="key">T</kbd></td><td>タイムラインの最も新しい投稿にフォーカス</td><td><b>T</b>imeline, <b>T</b>op</td></tr> <tr><td><kbd class="group"><kbd class="key">Shift</kbd> + <kbd class="key">N</kbd></kbd></td><td>通知を表示/隠す</td><td><b>N</b>otifications</td></tr> + <tr><td><kbd class="key">S</kbd></td><td>検索</td><td><b>S</b>earch</td></tr> <tr><td><kbd class="key">H</kbd>, <kbd class="key">?</kbd></td><td>ヘルプを表示</td><td><b>H</b>elp</td></tr> </tbody> </table>