diff --git a/src/renderer/less/bootstrap.less b/src/renderer/less/bootstrap.less index a32d04bc..ace079f4 100644 --- a/src/renderer/less/bootstrap.less +++ b/src/renderer/less/bootstrap.less @@ -35,10 +35,12 @@ color: #212529; text-align: left; list-style: none; - background-color: #fff; + background-color: var(--color1); background-clip: padding-box; border: 1px solid rgba(0, 0, 0, 0.15); border-radius: 0.25rem; + box-shadow: var(--mediaItemShadow), var(--mediaItemShadow-ShadowSubtle); + backdrop-filter: var(--glassFilter); } .dropdown-menu[data-bs-popper] { top: 100%; @@ -1388,23 +1390,24 @@ fieldset:disabled .btn { .btn-secondary { color : #fff; - background-color: #6c757d; - border-color : #6c757d; + border-color : 1px solid rgba(100, 100, 100, 0.35); + background-color: rgba(100, 100, 100, 0.25); + border-top-color: 1px solid rgba(100, 100, 100, 0.5); } .btn-secondary:hover { color : #fff; - background-color: #5c636a; - border-color : #565e64; + // background-color: #5c636a; + // border-color : #565e64; } -.btn-check:focus+.btn-secondary, -.btn-secondary:focus { - color : #fff; - background-color: #5c636a; - border-color : #565e64; - box-shadow : 0 0 0 0.25rem rgba(130, 138, 145, 0.5); -} +// .btn-check:focus+.btn-secondary, +// .btn-secondary:focus { +// color : #fff; +// background-color: #5c636a; +// border-color : #565e64; +// box-shadow : 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +// } .btn-check:checked+.btn-secondary, .btn-check:active+.btn-secondary, diff --git a/src/renderer/main/vueapp.js b/src/renderer/main/vueapp.js index e049ff71..e1abc256 100644 --- a/src/renderer/main/vueapp.js +++ b/src/renderer/main/vueapp.js @@ -581,6 +581,9 @@ const app = new Vue({ if (this.cfg.visual.theme != "default.less" && this.cfg.visual.theme != "") { this.setTheme(this.cfg.visual.theme) } + if (this.cfg.visual.styles.length != 0) { + await this.reloadStyles() + } if (this.platform == "darwin") { this.chrome.windowControlPosition = "left" @@ -762,6 +765,9 @@ const app = new Vue({ ipcRenderer.on('theme-update', (event, arg) => { less.refresh(true, true, true) self.setTheme(self.cfg.visual.theme, true) + if (app.cfg.visual.styles.length != 0) { + app.reloadStyles() + } }) ipcRenderer.on('SoundCheckTag', (event, tag) => { @@ -899,9 +905,6 @@ const app = new Vue({ this.$forceUpdate() }, 500) ipcRenderer.invoke("renderer-ready", true) - if (this.cfg.visual.styles.length != 0) { - this.reloadStyles() - } document.querySelector("#LOADER").remove() if (this.cfg.general.themeUpdateNotification) { this.checkForThemeUpdates() @@ -986,6 +989,7 @@ const app = new Vue({ less.registerStylesheetsImmediately() less.refresh(true, true, true) this.$forceUpdate() + return }, macOSEmu() { this.chrome.forceDirectives["macosemu"] = { diff --git a/src/renderer/style.less b/src/renderer/style.less index 7d50fab8..aa4d73ee 100644 --- a/src/renderer/style.less +++ b/src/renderer/style.less @@ -44,6 +44,7 @@ --songProgressBackground: #333; --textColor: #eee; --replayGradient: linear-gradient(45deg, hsl(248deg 58% 29%), hsl(13deg 41% 42%)); + --glassFilter: blur(16px) saturate(180%); } *:focus-visible { @@ -238,6 +239,17 @@ input[type="text"], input[type="number"] { opacity: 0.70; } +a.dropdown-item { + color: var(--textColor); + + &:hover { + background-color: var(--selected); + color: var(--textColor); + } + &:active { + background-color: var(--selected-click); + } +} .bg-artwork { position: absolute; diff --git a/src/renderer/themes/compactui.less b/src/renderer/themes/compactui.less new file mode 100644 index 00000000..e69de29b diff --git a/src/renderer/themes/groovy/index.less b/src/renderer/themes/groovy/index.less deleted file mode 100644 index ab0c0141..00000000 --- a/src/renderer/themes/groovy/index.less +++ /dev/null @@ -1 +0,0 @@ -// \ No newline at end of file diff --git a/src/renderer/themes/groovy/theme.json b/src/renderer/themes/groovy/theme.json deleted file mode 100644 index db9f5469..00000000 --- a/src/renderer/themes/groovy/theme.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "name": "Groovy", - "description": "Inspired by Groove Music and Media Player found on Windows", - "version": "1.0.0", - "author": "ciderapp", - "github_repo": "ciderapp/Groovy", - "directives": { - "windowLayout": { - "value": "twopanel" - }, - "lcdArtworkSize": { - "value": 70 - } - } -} \ No newline at end of file diff --git a/src/renderer/themes/inline_drawer.less b/src/renderer/themes/inline_drawer.less new file mode 100644 index 00000000..a87f6a61 --- /dev/null +++ b/src/renderer/themes/inline_drawer.less @@ -0,0 +1,41 @@ +&:not(.modular-fs) { + .app-drawer { + border-radius: 0px; + top : 0; + right : 0; + height : 100%; + box-shadow : unset; + border-left : 1px solid var(--color2); + background : var(--color1); + margin-right : 0px; + position : relative; + } + + .drawertransition-enter-active, + .drawertransition-leave-active { + transition: margin .25s var(--appleEase), opacity .25s var(--appleEase); + } + + .drawertransition-enter, + .drawertransition-leave-to { + margin-right: -300px; + } + + @media screen and (max-width: 1120px) { + .app-drawer { + margin-right: 0px; + position : absolute; + } + + .drawertransition-enter-active, + .drawertransition-leave-active { + transition: right .25s var(--appleEase), opacity .25s var(--appleEase); + } + + .drawertransition-enter, + .drawertransition-leave-to { + right: -300px; + } + } + +} \ No newline at end of file diff --git a/src/renderer/themes/reduce_visuals.less b/src/renderer/themes/reduce_visuals.less new file mode 100644 index 00000000..9b23fb0a --- /dev/null +++ b/src/renderer/themes/reduce_visuals.less @@ -0,0 +1,115 @@ +body { + --ciderShadow-Generic : var(--mediaItemShadow); + --mediaItemShadow-Shadow : var(--mediaItemShadow); + --mediaItemShadow-ShadowSubtle: var(--mediaItemShadow); +} + +.bg-artwork-container { + display : none; + animation: none !important; + + .bg-artwork { + animation: none !important; + } +} + +.replaycard-enter-active, +.replaycard-leave-active { + transition: unset; +} + +.replaycard-enter, +.replaycard-leave-to { + opacity : 0; + transform: translateY(20px); +} + +.modal-enter-active, +.modal-leave-active { + transition: unset; +} + +.modal-enter, +.modal-leave-to { + opacity : 0; + transform: scale(1.10); +} + +.wpfade-enter-active, +.wpfade-leave-active { + transition: opacity .1s var(--appleEase); +} + +.wpfade-enter, +.wpfade-leave-to { + opacity: 0; +} + +.wpfade_transform-enter-active, +.wpfade_transform-leave-active { + transition : unset; + will-change: unset; +} + +.wpfade_transform-enter { + opacity : 0; + transform : unset; + will-change: unset; +} + +.wpfade_transform-leave-to { + opacity : 0; + transform : unset; + will-change: unset; +} + + +.wpfade_transform_backwards-enter-active, +.wpfade_transform_backwards-leave-active { + transition: unset; +} + +.wpfade_transform_backwards-enter { + opacity : 0; + transform : unset; + will-change: unset; +} + +.wpfade_transform_backwards-leave-to { + opacity : 0; + transform : unset; + will-change: unset; +} + +.fabfade-enter-active, +.fabfade-leave-active { + transition: unset; +} + +.fabfade-enter, +.fabfade-leave-to { + opacity : 0; + transform: scale(0.5); +} + +.fsModeSwitch-enter-active, +.fsModeSwitch-leave-active { + transition: unset; +} + +.fsModeSwitch-enter, +.fsModeSwitch-leave-to { + transform: scale(1.10); + opacity : 0; +} + + +.drawertransition-enter-active, +.drawertransition-leave-active { + transition: unset; +} + +.drawertransition-enter, +.drawertransition-leave-to { + right: -300px; +} \ No newline at end of file diff --git a/src/renderer/views/pages/settings.ejs b/src/renderer/views/pages/settings.ejs index 3195af5e..7a45c317 100644 --- a/src/renderer/views/pages/settings.ejs +++ b/src/renderer/views/pages/settings.ejs @@ -226,7 +226,6 @@