diff --git a/src/components/sidebar/ServerList.vue b/src/components/sidebar/ServerList.vue index efdddf3..bc33090 100644 --- a/src/components/sidebar/ServerList.vue +++ b/src/components/sidebar/ServerList.vue @@ -18,9 +18,9 @@ @@ -30,10 +30,12 @@ import ServerListItem from './ServerListItem.vue'; import {defineComponent} from 'vue'; import {useStore} from "@/store"; import CollapsibleSection from "@/components/sidebar/CollapsibleSection.vue"; +import RadioList from "@/components/util/RadioList.vue"; export default defineComponent({ name: 'ServerList', components: { + RadioList, CollapsibleSection, ServerListItem }, diff --git a/src/components/sidebar/ServerListItem.vue b/src/components/sidebar/ServerListItem.vue index 0b87850..8557ab6 100644 --- a/src/components/sidebar/ServerListItem.vue +++ b/src/components/sidebar/ServerListItem.vue @@ -15,12 +15,9 @@ --> + + + diff --git a/src/scss/_mixins.scss b/src/scss/_mixins.scss index 85b371a..3b8bd68 100644 --- a/src/scss/_mixins.scss +++ b/src/scss/_mixins.scss @@ -26,6 +26,7 @@ font-size: 1.6rem; font-family: Raleway, sans-serif; box-sizing: border-box; + text-shadow: none; .svg-icon { display: inline-block; diff --git a/src/scss/style.scss b/src/scss/style.scss index aad3443..958ccac 100644 --- a/src/scss/style.scss +++ b/src/scss/style.scss @@ -172,20 +172,47 @@ input { display: flex; padding: 0.8rem 0.8rem 0.7rem; position: relative; - border-bottom: 0.1rem solid transparent; > button { - text-overflow: ellipsis; - overflow: hidden; - white-space: nowrap; margin: -0.8rem -0.8rem -0.7rem; - padding: 0.8rem 0.8rem 0.7rem; - text-align: left; flex-grow: 1; - min-height: 3.2rem; - border-radius: 0.5rem; } } + + > input[type=radio] { + clip: rect(1px, 1px, 1px, 1px); + height: 1px; + width: 1px; + position: absolute; + + & + label { + @include button; + } + + &:hover + label, &:checked + label { + @include button-hovered; + position: relative; + } + + &:focus + label { + @include button-focused; + } + + &:active + label { + @include button-active; + } + } + + & > li > button, & > input[type=radio] + label { + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; + padding: 0.8rem 0.8rem 0.7rem; + text-align: left; + min-height: 3.2rem; + border-radius: 0.5rem; + border-bottom: 0.1rem solid transparent; + } } #app .map .tile img, img {