aboutsummaryrefslogtreecommitdiff
path: root/src/modules/instance.js
diff options
context:
space:
mode:
authorHJ <30-hj@users.noreply.git.pleroma.social>2020-02-18 21:20:43 +0000
committerHJ <30-hj@users.noreply.git.pleroma.social>2020-02-18 21:20:43 +0000
commit3ddf7ebe2c94f88be12644d7a7a675f6f8331707 (patch)
tree878e90d5381ce14f9c3d88ab77e998ef6238760d /src/modules/instance.js
parent26e455bb4cadb90b4351f2a2e8f53eaa15d9e569 (diff)
parent32902e01f80a2ff27e9f4fc5a922c47b63f397fd (diff)
Merge branch 'themes-accent' into 'develop'
Themes v3 Part 1 "2.1" codenamed "One step for themes, a giant burder for code reviewers" Closes #750 and #774 See merge request pleroma/pleroma-fe!1037
Diffstat (limited to 'src/modules/instance.js')
-rw-r--r--src/modules/instance.js17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/modules/instance.js b/src/modules/instance.js
index 625323b9..8781646d 100644
--- a/src/modules/instance.js
+++ b/src/modules/instance.js
@@ -1,5 +1,5 @@
import { set } from 'vue'
-import { setPreset } from '../services/style_setter/style_setter.js'
+import { getPreset, applyTheme } from '../services/style_setter/style_setter.js'
import { instanceDefaultProperties } from './config.js'
const defaultState = {
@@ -10,6 +10,7 @@ const defaultState = {
textlimit: 5000,
server: 'http://localhost:4040/',
theme: 'pleroma-dark',
+ themeData: undefined,
background: '/static/aurora_borealis.jpg',
logo: '/static/logo.png',
logoMask: true,
@@ -96,6 +97,9 @@ const instance = {
dispatch('initializeSocket')
}
break
+ case 'theme':
+ dispatch('setTheme', value)
+ break
}
},
async getStaticEmoji ({ commit }) {
@@ -147,9 +151,16 @@ const instance = {
}
},
- setTheme ({ commit }, themeName) {
+ setTheme ({ commit, rootState }, themeName) {
commit('setInstanceOption', { name: 'theme', value: themeName })
- return setPreset(themeName, commit)
+ getPreset(themeName)
+ .then(themeData => {
+ commit('setInstanceOption', { name: 'themeData', value: themeData })
+ // No need to apply theme if there's user theme already
+ const { customTheme } = rootState.config
+ if (customTheme) return
+ applyTheme(themeData.theme)
+ })
},
fetchEmoji ({ dispatch, state }) {
if (!state.customEmojiFetched) {