diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml
index e87a1af90..d3891a41a 100644
--- a/locales/ja-JP.yml
+++ b/locales/ja-JP.yml
@@ -557,6 +557,7 @@ wordMute: "ワードミュート"
userSaysSomething: "{name}が何かを言いました"
makeActive: "アクティブにする"
display: "表示"
+copy: "コピー"
_sidebar:
full: "フル"
diff --git a/src/client/pages/preferences/theme.vue b/src/client/pages/preferences/theme.vue
index 173ccd709..2461504a4 100644
--- a/src/client/pages/preferences/theme.vue
+++ b/src/client/pages/preferences/theme.vue
@@ -55,8 +55,8 @@
{{ $t('_theme.code') }}
- install(this.installThemeCode)" :disabled="installThemeCode == null" primary inline> {{ $t('install') }}
- preview(this.installThemeCode)" :disabled="installThemeCode == null" inline> {{ $t('preview') }}
+ install(installThemeCode)" :disabled="installThemeCode == null" primary inline> {{ $t('install') }}
+ preview(installThemeCode)" :disabled="installThemeCode == null" inline> {{ $t('preview') }}
@@ -68,6 +68,7 @@
{{ $t('_theme.code') }}
+
{{ $t('uninstall') }}
@@ -80,7 +81,6 @@
import Vue from 'vue';
import { faPalette, faDownload, faFolderOpen, faCheck, faTrashAlt, faEye } from '@fortawesome/free-solid-svg-icons';
import * as JSON5 from 'json5';
-import MkInput from '../../components/ui/input.vue';
import MkButton from '../../components/ui/button.vue';
import MkSelect from '../../components/ui/select.vue';
import MkSwitch from '../../components/ui/switch.vue';
@@ -88,10 +88,10 @@ import MkTextarea from '../../components/ui/textarea.vue';
import { Theme, builtinThemes, applyTheme, validateTheme } from '../../scripts/theme';
import { selectFile } from '../../scripts/select-file';
import { isDeviceDarkmode } from '../../scripts/is-device-darkmode';
+import copyToClipboard from '../../scripts/copy-to-clipboard';
export default Vue.extend({
components: {
- MkInput,
MkButton,
MkSelect,
MkSwitch,
@@ -192,6 +192,14 @@ export default Vue.extend({
});
},
+ copyThemeCode() {
+ copyToClipboard(this.selectedThemeCode);
+ this.$root.dialog({
+ type: 'success',
+ iconOnly: true, autoClose: true
+ });
+ },
+
parseThemeCode(code) {
let theme;
@@ -247,7 +255,7 @@ export default Vue.extend({
key: 'themes', value: themes
});
this.$root.dialog({
- type: 'info',
+ type: 'success',
iconOnly: true, autoClose: true
});
},