diff --git a/frontend/public/assets/icons.json b/frontend/public/assets/icons.json index b7a3099a6..ab85268c6 100644 --- a/frontend/public/assets/icons.json +++ b/frontend/public/assets/icons.json @@ -257,10 +257,6 @@ ], "path": "m20.2 5.9.8-.8C19.6 3.7 17.8 3 16 3s-3.6.7-5 2.1l.8.8C13 4.8 14.5 4.2 16 4.2s3 .6 4.2 1.7zm-.9.8c-.9-.9-2.1-1.4-3.3-1.4s-2.4.5-3.3 1.4l.8.8c.7-.7 1.6-1 2.5-1 .9 0 1.8.3 2.5 1l.8-.8zM19 13h-2V9h-2v4H5c-1.1 0-2 .9-2 2v4c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-4c0-1.1-.9-2-2-2zM8 18H6v-2h2v2zm3.5 0h-2v-2h2v2zm3.5 0h-2v-2h2v2z" }, - { - "keys": ["Warn"], - "path": "M 11.999765,2 2,22 h 20 z m 0,4.1999619 6.845654,13.6948891 H 5.1545815 Z m -0.909027,4.2211761 v 5.263416 h 1.818524 v -5.263416 z m 0,6.31599 v 2.105149 h 1.818524 v -2.105149 z" - }, { "keys": ["Gallery"], "path": "M 11.999742,2 C 6.5002947,2 1.9999999,6.5002944 2,11.999742 2,17.499188 6.5002947,22 11.999742,22 17.499187,22 22,17.499188 22,11.999742 22,6.5002944 17.499187,1.9999999 11.999742,2 Z M 7.4796784,5.5010206 H 9.2940081 C 10.454244,5.5013381 11.3944,6.4424302 11.393587,7.6026664 v 1.8143297 c -3.18e-4,1.1594289 -0.94015,2.0992499 -2.0995789,2.0995789 H 7.4796784 C 6.3194422,11.517395 5.3783618,10.577232 5.3780327,9.4169961 V 7.6026664 C 5.3772125,6.4416227 6.3186347,5.5002073 7.4796784,5.5010206 Z m 7.2263136,0 h 1.816396 c 1.160237,3.175e-4 2.100392,0.9414098 2.099579,2.1016458 v 1.8143297 c -3.17e-4,1.1594289 -0.94015,2.0992499 -2.099579,2.0995789 h -1.816396 c -1.159429,-3.18e-4 -2.09925,-0.94015 -2.099579,-2.0995789 V 7.6026664 c -8.2e-4,-1.1602362 0.939342,-2.1013166 2.099579,-2.1016458 z M 7.4796784,12.483425 h 1.8143297 c 1.1594289,3.18e-4 2.0992499,0.94015 2.0995789,2.099579 v 1.816397 c -3.18e-4,1.159428 -0.94015,2.099249 -2.0995789,2.099578 H 7.4796784 C 6.3194422,18.4998 5.3783618,17.559637 5.3780327,16.399401 v -1.816397 c 3.175e-4,-1.160236 0.9414095,-2.100391 2.1016457,-2.099579 z m 7.2263136,0 h 1.816396 c 1.159429,3.18e-4 2.09925,0.94015 2.099579,2.099579 v 1.816397 c -3.17e-4,1.159428 -0.94015,2.099249 -2.099579,2.099578 h -1.816396 c -1.159429,-3.17e-4 -2.09925,-0.94015 -2.099579,-2.099578 v -1.816397 c 3.17e-4,-1.159429 0.94015,-2.09925 2.099579,-2.099579 z" diff --git a/frontend/scss/_theme.scss b/frontend/scss/_theme.scss index b1e285936..b63285bf2 100644 --- a/frontend/scss/_theme.scss +++ b/frontend/scss/_theme.scss @@ -237,12 +237,11 @@ --tabset-background-color: #44475a47; // #282A36; --tabset-border-color: #535353; --tab-background-color: #44475A; - --tab-color: #fff; - --tab-hover-background-color: #6272A4; - --tab-hover-color: #50FA7B; - --tab-avtive-indicator-color: #50FA7B; - --tab-active-background-color: #36c55a; + --tab-hover-background-color: #2bb249; + --tab-hover-color: #fdfdfd; + --tab-active-background-color: #1a672c; --tab-active-color: #fdfdfd; + --tab-active-border-color: #2ea14b; --table-border-color: #44475a; @@ -481,13 +480,12 @@ body[data-theme="bright"] { --tabset-background-color: #f3f4f6; --tabset-border-color: #e5e7eb; - --tab-background-color: #ffffff; - --tab-color: #374151; - --tab-hover-background-color: #e0e7ff; - --tab-hover-color: var(--primary-color); - --tab-avtive-indicator-color: var(--primary-color); - --tab-active-background-color: #dbeafe; - --tab-active-color: var(--primary-color); + --tab-background-color: #44475A; + --tab-hover-background-color: #2bb249; + --tab-hover-color: #fdfdfd; + --tab-active-background-color: #22c55e; + --tab-active-color: #fdfdfd; + --tab-active-border-color: #3fb55c; --table-border-color: #e5e7eb; diff --git a/frontend/scss/app/components/_tabset.scss b/frontend/scss/app/components/_tabset.scss index fcecc7096..3c133f280 100644 --- a/frontend/scss/app/components/_tabset.scss +++ b/frontend/scss/app/components/_tabset.scss @@ -28,14 +28,22 @@ color: var(--modest-text-color); } + .tp__icon-button, + .tp__text-button { + &:hover { + fill: var(--tab-hover-color); + color: var(--tab-hover-color); + background-color: var(--tab-hover-background-color); + } + } &--active { - fill: var(--text-button-active-color); - color: var(--text-button-active-color); .tp__icon-button, .tp__text-button { - fill: var(--text-button-active-color); - color: var(--text-button-active-color); + background-color: var(--tab-active-background-color); + fill: var(--tab-active-color); + color: var(--tab-active-color); + border-color: var(--tab-active-border-color); } } diff --git a/frontend/src/app/components/playlist/playlist_update_view.rs b/frontend/src/app/components/playlist/playlist_update_view.rs index 936f52338..c37ee4fbd 100644 --- a/frontend/src/app/components/playlist/playlist_update_view.rs +++ b/frontend/src/app/components/playlist/playlist_update_view.rs @@ -29,6 +29,8 @@ pub fn PlaylistUpdateView() -> Html { let exists = selected_targets.current().iter().any(|t| t.id == target.id); if !exists { selected_targets.push(target); + } else { + selected_targets.retain(|t: &Rc| t.id != target.id); } }) }; @@ -79,8 +81,9 @@ pub fn PlaylistUpdateView() -> Html { .map(|target| { let handle_click = handle_target_select.clone(); let target_name = target.name.clone(); + let button_class = if selected_targets.current().iter().any(|t| t.id == target.id) { "active" } else {""}; html! { - }