diff options
Diffstat (limited to 'app/javascript/flavours/glitch/styles/components/drawer.scss')
-rw-r--r-- | app/javascript/flavours/glitch/styles/components/drawer.scss | 335 |
1 files changed, 162 insertions, 173 deletions
diff --git a/app/javascript/flavours/glitch/styles/components/drawer.scss b/app/javascript/flavours/glitch/styles/components/drawer.scss index 8ad55c79b..ebf996907 100644 --- a/app/javascript/flavours/glitch/styles/components/drawer.scss +++ b/app/javascript/flavours/glitch/styles/components/drawer.scss @@ -4,7 +4,7 @@ box-sizing: border-box; padding: 10px 5px; width: 300px; - flex: 1 1 100%; + flex: none; contain: strict; &:first-child { @@ -15,10 +15,10 @@ padding-right: 10px; } - @include multi-columns('screen and (max-width: 630px)') { - &, &:first-child, &:last-child { - padding: 0; - } + @include single-column('screen and (max-width: 630px)') { flex: auto } + + @include limited-single-column('screen and (max-width: 630px)') { + &, &:first-child, &:last-child { padding: 0 } } .wide & { @@ -27,207 +27,196 @@ flex: 1 1 200px; } - .react-swipeable-view-container & { + @include single-column('screen and (max-width: 630px)') { + :root & { // Overrides `.wide` for single-column view + flex: auto; + width: 100%; + min-width: 0; + max-width: none; + padding: 0; + } + } + + .react-swipeable-view-container & { height: 100% } + + & > .contents { + position: relative; + padding: 0; + width: 100%; height: 100%; + background: lighten($ui-base-color, 13%); + overflow-x: hidden; + overflow-y: auto; + contain: strict; + } +} + +.drawer--header { + display: flex; + flex-direction: row; + margin-bottom: 10px; + flex: none; + background: lighten($ui-base-color, 8%); + font-size: 16px; + + & > * { + display: block; + box-sizing: border-box; + border-bottom: 2px solid transparent; + padding: 15px 5px 13px; + height: 48px; + flex: 1 1 auto; + color: $ui-primary-color; + text-align: center; + text-decoration: none; + cursor: pointer; } - .drawer--header { - display: flex; - flex-direction: row; - margin-bottom: 10px; - flex: none; - background: lighten($ui-base-color, 8%); - font-size: 16px; + a { + transition: background 100ms ease-in; - & > * { - display: block; - box-sizing: border-box; - border-bottom: 2px solid transparent; - padding: 15px 5px 13px; - height: 48px; - flex: 1 1 auto; - color: $ui-primary-color; - text-align: center; - text-decoration: none; - cursor: pointer; + &:focus, + &:hover { + outline: none; + background: lighten($ui-base-color, 3%); + transition: background 200ms ease-out; } + } +} - a { - transition: background 100ms ease-in; +.drawer--search { + position: relative; + margin-bottom: 10px; + flex: none; - &:focus, - &:hover { - outline: none; - background: lighten($ui-base-color, 3%); - transition: background 200ms ease-out; - } + @include limited-single-column('screen and (max-width: 360px)') { margin-bottom: 0 } + @include single-column('screen and (max-width: 630px)') { font-size: 16px } + + input { + display: block; + box-sizing: border-box; + margin: 0; + border: none; + padding: 10px 30px 10px 10px; + width: 100%; + height: 36px; + outline: 0; + color: $ui-primary-color; + background: $ui-base-color; + font-size: 14px; + font-family: inherit; + line-height: 16px; + + &:focus { + outline: 0; + background: lighten($ui-base-color, 4%); } } - .drawer--search { - position: relative; - margin-bottom: 10px; - flex: none; + & > .icon { + .fa { + display: inline-block; + position: absolute; + top: 10px; + right: 10px; + width: 18px; + height: 18px; + color: $ui-secondary-color; + font-size: 18px; + opacity: 0; + cursor: default; + pointer-events: none; + z-index: 2; + transition: all 100ms linear; + } - @include limited-single-column('screen and (max-width: 360px)') { - margin-bottom: 0; + .fa-search { + opacity: 0.3; + transform: rotate(0deg); } - input { - display: block; - box-sizing: border-box; - margin: 0; - border: none; - padding: 10px 30px 10px 10px; - width: 100%; - height: 36px; - outline: 0; - color: $ui-primary-color; - background: $ui-base-color; - font-size: 14px; - font-family: inherit; - line-height: 16px; + .fa-times-circle { + top: 11px; + transform: rotate(-90deg); + cursor: pointer; - &:focus { - outline: 0; - background: lighten($ui-base-color, 4%); - } + &:hover { color: $primary-text-color } } - & > .icon { - .fa { - display: inline-block; - position: absolute; - top: 10px; - right: 10px; - width: 18px; - height: 18px; - color: $ui-secondary-color; - font-size: 18px; + &.active { + .fa-search { opacity: 0; - cursor: default; - pointer-events: none; - z-index: 2; - transition: all 100ms linear; + transform: rotate(90deg); } - .fa-search { + .fa-times-circle { opacity: 0.3; + pointer-events: auto; transform: rotate(0deg); } - - .fa-times-circle { - top: 11px; - transform: rotate(-90deg); - cursor: pointer; - - &:hover { - color: $primary-text-color; - } - } - - &.active { - .fa-search { - opacity: 0; - transform: rotate(90deg); - } - - .fa-times-circle { - opacity: 0.3; - pointer-events: auto; - transform: rotate(0deg); - } - } } } +} - & > .contents { - position: relative; - padding: 0; - width: 100%; - height: 100%; - background: lighten($ui-base-color, 13%); - overflow-x: hidden; - overflow-y: auto; - contain: strict; - - .drawer--account { - padding: 10px; - color: $ui-primary-color; +.drawer--account { + padding: 10px; + color: $ui-primary-color; - & > a { - color: inherit; - text-decoration: none; - } + & > a { + color: inherit; + text-decoration: none; + } - & > .avatar { - float: left; - margin-right: 10px; - } + & > .avatar { + float: left; + margin-right: 10px; + } - & > .acct { - display: block; - color: $primary-text-color; - font-weight: 500; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } - } + & > .acct { + display: block; + color: $primary-text-color; + font-weight: 500; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } +} - .drawer--results { - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - padding: 0; - background: $ui-base-color; - overflow-x: hidden; - overflow-y: auto; - contain: strict; - - & > header { - border-bottom: 1px solid darken($ui-base-color, 4%); - padding: 15px 10px; - color: $ui-base-lighter-color; - background: lighten($ui-base-color, 2%); - font-size: 14px; - font-weight: 500; - } +.drawer--results { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + padding: 0; + background: $ui-base-color; + overflow-x: hidden; + overflow-y: auto; + contain: strict; - & > section { - background: $ui-base-color; - - & > .hashtag { - display: block; - padding: 10px; - color: $ui-secondary-color; - text-decoration: none; - - &:hover, - &:active, - &:focus { - color: lighten($ui-secondary-color, 4%); - text-decoration: underline; - } - } - } - } + & > header { + border-bottom: 1px solid darken($ui-base-color, 4%); + padding: 15px 10px; + color: $ui-base-lighter-color; + background: lighten($ui-base-color, 2%); + font-size: 14px; + font-weight: 500; } -} -:root { // Overrides .wide stylings for mobile view - @include single-column('screen and (max-width: 630px)', $parent: null) { - .drawer { - flex: auto; - width: 100%; - min-width: 0; - max-width: none; - padding: 0; + & > section { + background: $ui-base-color; - .drawer--search input { - font-size: 16px; + & > .hashtag { + display: block; + padding: 10px; + color: $ui-secondary-color; + text-decoration: none; + + &:hover, + &:active, + &:focus { + color: lighten($ui-secondary-color, 4%); + text-decoration: underline; } } } |