diff --git a/app/javascript/styles/mastodon-material-dark.scss b/app/javascript/styles/mastodon-material-dark.scss new file mode 100644 index 000000000..901a441be --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark.scss @@ -0,0 +1,18 @@ +@charset "UTF-8"; + +@import 'application'; +@import 'mastodon-material-dark/account'; +@import 'mastodon-material-dark/basics'; +@import 'mastodon-material-dark/button'; +//@import 'mastodon-material-dark/cards'; +@import 'mastodon-material-dark/columns'; +@import 'mastodon-material-dark/components'; +@import 'mastodon-material-dark/config'; +@import 'mastodon-material-dark/control'; +@import 'mastodon-material-dark/emoji-picker'; +@import 'mastodon-material-dark/icons'; +@import 'mastodon-material-dark/material-icons'; +@import 'mastodon-material-dark/media'; +@import 'mastodon-material-dark/mobile'; +@import 'mastodon-material-dark/modal'; +@import 'mastodon-material-dark/statuses'; \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/_functions.scss b/app/javascript/styles/mastodon-material-dark/_functions.scss new file mode 100644 index 000000000..54750d029 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/_functions.scss @@ -0,0 +1,12 @@ +@charset "UTF-8"; +@use "sass:string"; + + +@function to-string($value) { + @return inspect($value); +} + +// convert hex color code to svg styled color code +@function svg-color ($color) { + @return '%23' + string.slice(to-string($color), 2, 7); +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/_mixins.scss b/app/javascript/styles/mastodon-material-dark/_mixins.scss new file mode 100644 index 000000000..5f573e339 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/_mixins.scss @@ -0,0 +1,25 @@ +@charset "UTF-8"; + + +$shadow-color-1: rgba(0,0,0,.2); +$shadow-color-2: rgba(0,0,0,.14); +$shadow-color-3: rgba(0,0,0,.12); + +@mixin shadow-1dp { box-shadow: 0 2px 1px -1px $shadow-color-1, 0 1px 1px 0 $shadow-color-2, 0 1px 3px 0 $shadow-color-3 } +@mixin shadow-2dp { box-shadow: 0 3px 1px -2px $shadow-color-1, 0 2px 2px 0 $shadow-color-2, 0 1px 5px 0 $shadow-color-3 } +@mixin shadow-3dp { box-shadow: 0 3px 3px -2px $shadow-color-1, 0 3px 4px 0 $shadow-color-2, 0 1px 8px 0 $shadow-color-3 } +@mixin shadow-4dp { box-shadow: 0 2px 4px -1px $shadow-color-1, 0 4px 5px 0 $shadow-color-2, 0 1px 10px 0 $shadow-color-3 } +@mixin shadow-5dp { box-shadow: 0 3px 5px -1px $shadow-color-1, 0 5px 8px 0 $shadow-color-2, 0 1px 14px 0 $shadow-color-3 } +@mixin shadow-6dp { box-shadow: 0 3px 5px -1px $shadow-color-1, 0 6px 10px 0 $shadow-color-2, 0 1px 18px 0 $shadow-color-3 } +@mixin shadow-7dp { box-shadow: 0 4px 5px -2px $shadow-color-1, 0 7px 10px 1px $shadow-color-2, 0 2px 16px 1px $shadow-color-3 } +@mixin shadow-8dp { box-shadow: 0 5px 5px -3px $shadow-color-1, 0 8px 10px 1px $shadow-color-2, 0 3px 14px 2px $shadow-color-3 } +@mixin shadow-9dp { box-shadow: 0 5px 6px -3px $shadow-color-1, 0 9px 12px 1px $shadow-color-2, 0 3px 16px 2px $shadow-color-3 } +@mixin shadow-10dp { box-shadow: 0 6px 6px -3px $shadow-color-1, 0 10px 14px 1px $shadow-color-2, 0 4px 18px 3px $shadow-color-3 } +@mixin shadow-11dp { box-shadow: 0 6px 7px -4px $shadow-color-1, 0 11px 15px 1px $shadow-color-2, 0 4px 20px 3px $shadow-color-3 } +@mixin shadow-12dp { box-shadow: 0 7px 8px -4px $shadow-color-1, 0 12px 17px 2px $shadow-color-2, 0 5px 22px 4px $shadow-color-3 } +@mixin shadow-13dp { box-shadow: 0 7px 8px -4px $shadow-color-1, 0 13px 19px 2px $shadow-color-2, 0 5px 24px 4px $shadow-color-3 } +@mixin shadow-14dp { box-shadow: 0 7px 9px -4px $shadow-color-1, 0 14px 21px 2px $shadow-color-2, 0 5px 26px 4px $shadow-color-3 } +@mixin shadow-15dp { box-shadow: 0 8px 9px -5px $shadow-color-1, 0 15px 22px 2px $shadow-color-2, 0 6px 28px 5px $shadow-color-3 } +@mixin shadow-16dp { box-shadow: 0 8px 10px -5px $shadow-color-1, 0 16px 24px 2px $shadow-color-2, 0 6px 30px 5px $shadow-color-3 } + +@mixin non-overflow-shadow-4dp { box-shadow: 0 2px 4px -1px $shadow-color-1, 0 4px 5px -1px $shadow-color-2} diff --git a/app/javascript/styles/mastodon-material-dark/account.scss b/app/javascript/styles/mastodon-material-dark/account.scss new file mode 100644 index 000000000..b43194729 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/account.scss @@ -0,0 +1,143 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + +.account { + border-bottom: 1px solid $border-color; + + .account__display-name { color: $primary-text-color } + .account__display-name strong { color: $secondary-text-color } + + &__avatar { + border-radius: $avater-radius; + width: 40px; + height: 40px; + + &-overlay { + &-base { + border-radius: 50%; + width: 44px; + height: 44px; + background-size: 44px; + } + + &-overlay { border-radius: $avater-radius } + } + } + + &__header { + &__bar { + background: $card-background-color; + padding: 8px; + border-bottom: 1px solid $border-color; + + .avatar .account__avatar { border: none } + } + + &__tabs { + padding: 8px; + + &__name { + padding: 8px; + + h1 { + color: $primary-text-color; + + small { color: $secondary-text-color } + } + } + + &__buttons { + .icon-button { + border: none; + border-radius: 50%; + padding: 0; + } + } + } + + &__extra { + margin-top: 0; + + &__links { + color: $secondary-text-color; + padding: 10px 0; + + a { + color: $secondary-text-color; + padding: 4px 12px; + + strong { color: $ui-text-color } + } + } + } + + &__bio { + margin: 0; + + .account__header { + &__content { + color: $primary-text-color; + padding: 8px; + } + + &__fields { + border: 1px solid $border-color; + border-radius: 4px; + + .verified { + border: none; + background: $verified-background-color; + + a, + &__mark { color: $primary-text-color } + } + + dl { + border-bottom: 1px solid $border-color; + + &:first-child .verified { border-radius: 0 } + + &:last-child { border-bottom: 0 } + } + + dt { + color: $primary-text-color; + background: $list-background-inactive-color; + } + + dd { color: $primary-text-color } + } + } + } + } + + &__section-headline { + background: $text-tab-background-color; + border-bottom: 1px solid $border-color; + + a { + padding: 16px 0; + color: $text-tab-indicator-color; + + &.active { + color: $text-tab-indicator-active-color; + border-bottom: 4px solid $text-tab-indicator-active-color; + + &::before, + &:after { border: none } + + &:focus { background: $text-tab-indicator-background-focus-color } + } + + &:hover { background: $text-tab-indicator-background-hover-color } + } + } +} + +.account-role { + padding: 4px 8px; + border-radius: 17px; + color: $ui-text-color; + background-color: $contained-chip-color; +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/basics.scss b/app/javascript/styles/mastodon-material-dark/basics.scss new file mode 100644 index 000000000..5c7c3dc04 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/basics.scss @@ -0,0 +1,24 @@ +@charset "UTF-8"; +@import 'config'; + + +body { background: $background-color } + +// Chrome & Safari scroll bar +::-webkit-scrollbar-thumb { + background: $scroll-bar-thumb-color; + + &:hover { background: $scroll-bar-thumb-hover-color } + &:active { background: $scroll-bar-thumb-active-color } +} + +::-webkit-scrollbar-track, +::-webkit-scrollbar-track:hover, +::-webkit-scrollbar-track:active { + background: transparent !important; +} + +// Firefox scroll bar +html { + scrollbar-color: $scroll-bar-thumb-color transparent; +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/button.scss b/app/javascript/styles/mastodon-material-dark/button.scss new file mode 100644 index 000000000..38fd1a3c1 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/button.scss @@ -0,0 +1,95 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + +.icon-button { + color: $icon-button-color; + border-radius: 50%; + + &.active { + color: $icon-button-active-color; + + &:hover { color: $icon-button-active-hover-color } + } + + &.disabled { color: $disabled-icon-color } + + &.inverted { + color: $icon-button-color; + + &:hover { + color: $icon-button-hover-color; + background-color: $icon-background-hover-color; + } + } + + &.overlayed { + border-radius: 50%; + background: $media-icon-background-color; + color: $media-icon-color; + + &:hover { + background: $media-icon-background-color; + color: $media-icon-hover-color; + } + } + + &:hover { + color: $icon-button-hover-color; + background-color: $icon-background-hover-color; + } + + &:active, + &:focus { background-color: transparent } +} + +.text-icon-button { + color: $icon-button-color; + border-radius: 50%; + font-size: 12px; + + &:hover { + background-color: $icon-background-hover-color; + color: $icon-button-hover-color; + } +} + +.button, +.button:active, +.button:focus { + background-color: $contained-button-color; + border-radius: $button-radius; +} + +.button:hover { + @include shadow-2dp; + background-color: $contained-button-hover-color; +} + +.button.logo-button { + background: $contained-button-color; + margin: 2px; + + &:hover { background: $contained-button-hover-color } + + .button--destructive:hover { background: $contained-button-hover-color } +} + +.button.button--block { margin: 8px 0 } + +.button.confirmation-modal__cancel-button { + box-shadow: none; + background-color: transparent; + margin: 0 8px; + color: $text-button-color; + + &:hover { background: $text-button-hover-color } + + &:focus { background: $text-button-focus-color } +} + +.spoiler-button__overlay__label { + background: $media-icon-background-color; + border-radius: $button-radius; + color: $media-icon-color; +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/cards.scss b/app/javascript/styles/mastodon-material-dark/cards.scss new file mode 100644 index 000000000..96988f2c9 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/cards.scss @@ -0,0 +1,29 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.column { + box-shadow: none !important; + margin: 2px 0 !important; + padding: 8px !important; +} + +.status { + border-bottom: 0 !important; + border-radius: $card-radius; +} + +.account { border-bottom: 0 !important } + +.status__wrapper.status__wrapper, +.notification.notification { + @include shadow-1dp; + margin: 8px 2px; +} + +.notification .status__wrapper.status__wrapper { box-shadow: none !important } + +.notification__filter-bar { + @include non-overflow-shadow-4dp; +} \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/color/mastodon-dark.scss b/app/javascript/styles/mastodon-material-dark/color/mastodon-dark.scss similarity index 77% rename from app/javascript/styles/material-v1-dark/color/mastodon-dark.scss rename to app/javascript/styles/mastodon-material-dark/color/mastodon-dark.scss index 14ef148f4..47f990072 100644 --- a/app/javascript/styles/material-v1-dark/color/mastodon-dark.scss +++ b/app/javascript/styles/mastodon-material-dark/color/mastodon-dark.scss @@ -27,7 +27,7 @@ $menu-background-color: #d9e1e8; $menu-background-hover-color: lighten($menu-background-color, 6%); $menu-background-active-color: lighten($menu-background-color, 10%); $menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #444b5d; +$card-background-color: #313543; $card-background-hover-color: lighten($card-background-color, 6%); $card-background-inactive-color: lighten($card-background-color, 10%); $list-background-color: #282c37; @@ -60,7 +60,7 @@ $top-bar-icon-active-color: $icon-hover-color; $media-icon-color: transparentize(#ffffff, 0.4); $media-icon-hover-color: transparentize(#ffffff, 0.2); $media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); +$media-icon-background-hover-color: transparentize(#000000, 0.8); $control-border-color: $icon-color; // Button color @@ -103,5 +103,27 @@ $search-bar-focus-color: #ffffff; // Tab color $tab-indicator-color: #d9e1e8; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.7); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.6); \ No newline at end of file +$tab-indicator-active-color: $top-bar-icon-color; +$tab-background-color: #1f232b; +$tab-indicator-background-hover-color: transparentize($tab-indicator-active-color, 0.9); +$tab-indicator-background-focus-color: transparentize($tab-indicator-active-color, 0.8); +$text-tab-indicator-color: $tab-indicator-color; +$text-tab-indicator-active-color: $tab-indicator-active-color; +$text-tab-background-color: $tab-background-color; +$text-tab-indicator-background-hover-color: transparentize($text-tab-indicator-active-color, 0.9); +$text-tab-indicator-background-focus-color: transparentize($text-tab-indicator-active-color, 0.8); + +// Media indicator color +$media-page-indicator-color: #9e9e9e; +$media-page-indicator-active-color: #e6e6e6; + +// Poll chart color +$poll-bar-leading-color: $primary-color; +$poll-bar-color: lighten($poll-bar-leading-color, 30%); + +// Contents color in read status +$read-primary-text-color: transparentize($primary-text-color, 0.3); +$read-secondary-text-color: transparentize($secondary-text-color, 0.3); +$read-ui-text-color: transparentize($ui-text-color, 0.3); +$read-poll-bar-leading-color: transparentize($poll-bar-leading-color, 0.3); +$read-poll-bar-color: transparentize($poll-bar-color, 0.3); \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/columns.scss b/app/javascript/styles/mastodon-material-dark/columns.scss new file mode 100644 index 000000000..689028581 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/columns.scss @@ -0,0 +1,461 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + +.column { + @include shadow-1dp; + padding: 0; + margin: 10px 8px; + border-radius: $card-radius; + + &>.scrollable { background: $list-background-color } + + &:last-child { box-shadow: none } +} + +.column-header { + background: $top-bar-color; + border-radius: $bar-radius; + + > button { + padding: 16px 0 16px 16px; + color: $top-bar-text-color; + } + + &>.column-header__back-button { color: $top-bar-icon-color } + + &.active { + .column-header__icon { + color: $secondary-color; + text-shadow: none; + } + } + + &__icon { + margin-right: 16px; + color: $top-bar-icon-color; + font-size: 20px; + } + + &__buttons { height: 56px } + + &__button { + background: $top-bar-color; + color: $top-bar-icon-color; + margin: 8px 10px; + padding: 10px 12px; + border-radius: 50%; + + &.active { + color: $top-bar-icon-active-color; + background: $icon-background-active-color; + + &:hover { + color: $top-bar-icon-hover-color; + background: $icon-background-hover-color; + } + } + + &:hover { + color: $top-bar-icon-hover-color; + background: $icon-background-hover-color; + } + } + + &__setting-btn { + color: $icon-button-color; + padding: 8px 0; + + &:hover { + color: $icon-button-hover-color; + text-decoration: none; + } + + .fa { font-size: 20px } + + span { vertical-align: middle } + } + + &__setting-arrows { + font-size: 16px; + border-bottom: 8px; + + .column-header__setting-btn { + padding: 8px; + border-radius: 50%; + + &:last-child { padding-right: 8px } + } + } + + &__wrapper { + @include shadow-4dp; + border-radius: $bar-radius; + + .announcements { border-top: 1px solid $border-color } + + &.active { + @include shadow-4dp; + + &::before { background: transparent } + } + } + + &__collapsible { + color: $ui-text-color; + background: $card-background-color; + border-top: 1px solid $border-color; + + &-inner { + background: $card-background-color; + padding: 16px; + } + + &.collapsed { border-top: none } + } + + &__back-button { + background: $top-bar-color; + color: $top-bar-icon-color; + padding: 8px; + margin: auto 0; + border-radius: 50%; + + span { display: none } + } +} + +.column-subheading { + color: $section-text-color; + background: $background-color; + padding: 12px 16px; + border-top: 1px solid $border-color; +} + +.column-link { + color: $ui-text-color; + background: $background-color; + padding: 16px; + border-radius: $nav-drawer-item-radius; + + &:hover { background: $list-background-hover-color } + + &:active, + &:focus { background: $list-background-active-color } + + &__icon { + margin-right: 32px; + font-size: 20px; + } + + &--transparent { + &.active { + color: $ui-text-color; + background: $menu-background-active-color; + + &:hover { background: $menu-background-active-hover-color } + + .fa { color: $icon-color } + } + + &:hover { + color: $ui-text-color; + + .fa { color: $icon-color } + } + } + + .fa { color: $icon-color } +} + +.column-settings { + &__section { + color: $section-text-color; + margin-bottom: 0; + margin-top: 8px; + } + + &__row .text-btn { margin-bottom: 0 } +} + +.column-back-button { + @include shadow-4dp; + background: $top-bar-color; + color: $top-bar-icon-color; + padding: 16px; + + span { visibility: hidden } // hide "back" string +} + +.column-inline-form { + padding: 16px 0 16px 16px; + background: $card-background-color; + + .icon-button { margin: 0 16px } +} + +.setting-text { + color: $primary-text-color; + background: $search-bar-color; + border-radius: $bar-radius; + + &::placeholder { color: $tips-text-color } + + &:focus { + @include shadow-1dp; + background: $search-bar-focus-color; + } +} + +.empty-column-indicator { + color: $secondary-text-color; + background: $card-background-color; + font-size: 16px; +} + +.conversation { + border-bottom: 1px solid $border-color; + padding: 12px; + background: $list-background-inactive-color; + + &--unread { + background: $list-background-color; + + .conversation__content__relative-time { color: $info-text-color } + } + + &__unread { background: $primary-color } + + &__avatar { padding: 0 16px 0 0 } + + &__content { + padding: 0; + + &__relative-time { + font-size: 14px; + color: $info-text-color; + } + + &__names, + &__names a { + color: $primary-text-color; + font-size: 16px; + } + } +} + +// read status in notification column +.muted { + .status { + &__content { + color: $read-primary-text-color; + + p { color: $read-primary-text-color } + + a { color: $read-secondary-text-color } + } + + &__display-name strong { color: $read-primary-text-color } + } + + .poll { + color: $read-primary-text-color; + + &__chart { + background: $read-poll-bar-color; + + &.leading { background: $read-poll-bar-leading-color } + } + + &__footer, + &__link { color: $read-ui-text-color } + } +} + +.load-gap { border-bottom: 1px solid $border-color } + +.load-more { + color: $icon-color; + padding: 16px; + + &:hover { background: $menu-background-hover-color } +} + +.getting-started { + background: $background-color; + color: $ui-text-color; + + &__wrapper { + background: $background-color; + height: auto !important; + border-bottom: 1px solid $border-color; + } + + &__footer { + padding: 16px; + + p { + color: $secondary-text-color; + font-size: 12px; + margin-bottom: 16px; + } + + a { color: $ui-text-color } + + p a { color: $link-text-color } + } + + &__trends { + background: $background-color; + margin-bottom: 0; + + h4 { + color: $section-text-color; + padding: 12px 16px; + border-top: 1px solid $border-color; + border-bottom: none; + } + } +} + +.trends__item { + padding: 16px; + border-bottom: none; + + &__name { + color: $secondary-text-color; + font-size: 12px; + + a { color: $primary-text-color } + } + + &__current { + padding-right: 16px; + margin-left: 4px; + color: $secondary-text-color; + } + + &__sparkline path { + stroke: $primary-color; + fill: $primary-color; + fill-opacity: 0.5; + } +} + +.setting-toggle { + &__label { + color: $ui-text-color; + margin: 8px 8px 8px 14px; + } +} + +.announcements { + background: $card-background-color; + padding: 0; + + &__container { color: $primary-text-color } + + &__item { + padding: 16px; + font-size: 16px; + + &__unread { background: $badge-color } + } +} + +.reactions-bar { + .emoji-button { + color: $icon-button-color; + font-size: 20px; + + &:hover { color: $icon-button-hover-color } + + &:active { color: $icon-button-active-color } + } + + &__item { + background: $contained-chip-color; + border-radius: 17px; + margin: 2px 4px; + + &.active { + background-color: $contained-chip-selected-color; + .reactions-bar__item__count { color: $ui-text-color } + } + + &__emoji { + width: 24px; + height: 24px; + margin: 4px 0 4px 2px; + } + + &__count { + font-size: 16px; + margin: 0 8px; + color: $secondary-text-color; + } + + &:hover { background: $contained-chip-hover-color } + } +} + +.notification { + &__filter-bar { + background: $tab-background-color; + border-bottom: 1px solid $border-color; + z-index: 1; + + button { + background: $tab-background-color; + color: $tab-indicator-color; + font-size: 16px; + + span { font-size: 14px } + + &.active { + color: $tab-indicator-active-color; + border-bottom: 4px solid $tab-indicator-active-color; + + &::before, + &:after { border: none } + + &:focus { background: $tab-indicator-background-focus-color } + } + + &:hover { background: $tab-indicator-background-hover-color } + } + } + + &__message { + color: $secondary-text-color; + margin: 0 16px 0 70px; + font-size: 16px; + } + + &__display-name:hover { color: inherit } +} + +.notification-favourite .status.status-direct { + background: transparent; + + .icon-button.disabled { color: $disabled-icon-color } +} + +// read notification +.notification.notification-favourite.focusable, +.notification.notification-follow.focusable { background: $list-background-inactive-color } + +.relationship-tag { + color: $ui-text-color; + background-color: $contained-chip-color; + font-size: 12px; + border-radius: 17px; + padding: 4px 8px; + opacity: 1; +} + +.react-swipeable-view-container { height: auto } + +.attachment-list__list a { color: $secondary-text-color } + +.focusable { background: transparent !important } \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/components.scss b/app/javascript/styles/mastodon-material-dark/components.scss new file mode 100644 index 000000000..92d2801f4 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/components.scss @@ -0,0 +1,389 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.drawer { + &__header { + @include shadow-4dp; + background: $top-bar-color; + border-radius: $nav-bar-radius; + justify-content: space-around; + + a { transition: none } + + a:hover { + background: $icon-background-hover-color; + border-radius: 50%; + } + } + + &__tab { + color: $top-bar-icon-color; + font-size: 20px; + margin: 10px auto 10px; + padding: 8px; + flex: none; + height: 20px; + width: 20px; + border-bottom: none; + text-align: justify; + + &:hover { color: $top-bar-icon-hover-color } + } + + &__pager { + @include shadow-1dp; + border-radius: $card-radius; + } + + &__inner { + background: $card-background-color; + + &.darker { background: $card-background-color } + + &__mastodon { background: $card-background-color } + } +} + +.search { + &__input { + background: $search-bar-color; + color: $tips-text-color; + border-radius: $search-bar-radius; + padding: 12px 12px 12px 40px; + + &:focus { + @include shadow-2dp; + background: $search-bar-focus-color; + color: $search-bar-text-color; + } + + &::placeholder { color: $tips-text-color } + } + + &__icon { + .fa { + color: $icon-color; + font-size: 20px; + top: 12px; + right: unset; + left: 12px; + height: 6px; + transition: none; + + &.active { opacity: 1 } + + &-search { + transform: none; + opacity: 1; + } + &-times-circle.active { + right: 10px; + left: unset; + transform: none; + } + } + } +} + +.search-popout { + @include shadow-2dp; + background: $search-bar-focus-color; + border-radius: 0px $bar-radius; + border-top: 1px solid $border-color; + margin-top: 0; + color: $tips-text-color; + + h4 { + color: $secondary-text-color; + } + + em { + color: $search-bar-text-color; + } +} + +.search-results { + &__header { + color: $secondary-text-color; + background-color: $card-background-color; + padding: 16px; + + .fa { margin-right: 8px } + } + + &__section { + h5 { + background: $card-background-color; + border-bottom: 1px solid $border-color; + padding: 16px; + color: $section-text-color; + + .fa { margin-right: 8px } + } + } +} + +.navigation-bar { + color: $secondary-text-color; + padding: 14px; + + strong { + color: $ui-text-color; + } +} + +.navigation-panel hr { + border-top: 1px solid $border-color; + margin: 8px 0; +} + +.dropdown-menu { + @include shadow-8dp; + background: $menu-background-color; + padding: 8px 0; + border-radius: $menu-radius; + + &__arrow { visibility: hidden } + + &__item a { + font-size: 14px; + padding: 8px 16px; + background: $menu-background-color; + color: $menu-text-color; + + &:hover, &:active { + background: $menu-background-hover-color; + color: $menu-text-color; + } + } + + &__separator { + margin: 8px 0; + border-bottom: 1px solid $border-color; + } +} + +.compose-form { + .autosuggest-textarea { + &__textarea { + background: $card-background-color; + color: $ui-text-color; + + &::placeholder { color: $tips-text-color } + } + + &__suggestions { + @include shadow-1dp; + background: $menu-background-color; + color: $ui-text-color; + border-radius: $card-radius; + font-size: 16px; + padding: 8px 0; + + &__item { + padding: 8px; + border-radius: 0; + + &:hover { background: $menu-background-hover-color } + + &.selected, + &:focus, + &:active { background: $menu-background-active-color } + } + } + } + + .spoiler-input__input { + color: $ui-text-color; + background: $card-background-color; + + &::placeholder { color: $tips-text-color } + } + + .compose-form { + &__warning { + @include shadow-1dp; + color: $secondary-text-color; + background: $card-background-color; + padding: 16px; + + a { color: $link-text-color } + } + + &__modifiers { + background: $card-background-color; + color: $tips-text-color; + } + + &__buttons-wrapper { + background: $card-background-color; + color: $tips-text-color; + } + + &__poll-wrapper { + border-top: 1px solid $border-color; + + ul { padding: 12px } + + select { + color: $ui-text-color; + background-color: $background-color; + border: 0; + + &:focus { border-color: $border-active-color } + } + + .button.button-secondary { + box-shadow: none; + color: $outlined-button-color; + border-color: $outlined-button-color; + + &:hover { background-color: $outlined-button-hover-color } + + &:active { background-color: $outlined-button-active-color } + + &:focus { background-color: $outlined-button-color } + + + } + } + + &__utilBtns { padding-top: 0 } + + &__publish .compose-form__publish-button-wrapper { box-shadow: none } + } +} + +.no-reduce-motion .spoiler-input { + transition-duration: .2s, .2s; +} + + +.poll { + &__input { + border: 2px solid $control-border-color; + width: 20px; + height: 20px; + flex: 0 0 20px; + } + + &__text input[type=text] { + color: $ui-text-color; + background: $background-color; + border: 1px solid $border-color; + padding: 8px 12px; + + &:focus { border-color: $border-active-color } + } + + &__chart { + border-radius: 0; + background: $poll-bar-color; + + &.leading { background: $poll-bar-leading-color } + } + + &__footer { + padding-top: 8px; + padding-bottom: 0; + color: $ui-text-color; + } + + &__link { color: $ui-text-color } +} + +.privacy-dropdown { + &.active .privacy-dropdown__value.active { + background: $icon-background-hover-color; + border-radius: 50%; + box-shadow: none; + + .icon-button { color: $icon-button-active-color } + } + + &__dropdown { + @include shadow-8dp; + background: $menu-background-color; + border-radius: $dialog-radius; + } + + &__option { + color: $icon-color; + padding: 8px 16px; + + &__icon { + font-size: 20px; + margin-right: 12px; + } + + &__content { + color: $secondary-text-color; + + strong { color: $ui-text-color } + } + + &.active { + background: $menu-background-active-color; + color: $icon-hover-color; + + .privacy-dropdown__option__content { + color: $secondary-text-color; + + strong { color: $ui-text-color } + } + + &:hover { + background: $menu-background-active-color; + + .privacy-dropdown__option__content { + color: $secondary-text-color; + + strong { color: $ui-text-color } + } + } + } + + &:hover { + background: $menu-background-hover-color; + color: $icon-hover-color; + + .privacy-dropdown__option__content { + color: $secondary-text-color; + + strong { color: $ui-text-color } + } + } + } +} + +.character-counter { + color: $secondary-text-color; +} + +.reply-indicator { + @include shadow-1dp; + border-radius: $card-radius; + background: $card-background-color; + padding: 16px; + + &__header { margin-bottom: 4px } + + &__display { + &-name { + color: $primary-text-color; + padding-right: 24px; + } + + &-avatar { margin-right: 8px } + } + + &__content { color: $primary-text-color } +} + +.attachment-list { + &__list a { color: $secondary-text-color } + + &.compact .fa { color: $icon-color } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/config.scss b/app/javascript/styles/mastodon-material-dark/config.scss new file mode 100644 index 000000000..77d7982e4 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/config.scss @@ -0,0 +1,39 @@ +@charset "UTF-8"; + + +// Color scheme +@import 'color/mastodon-dark'; + + +// Layout profile +@import 'layout/material-v1'; + + +// Material Design Icon settings +// If you want to use self-hosting font, please place MaterialIcons-Regular.woff2 file in '../../fonts' folder and configure below. +@font-face { + font-family: "Material Icons"; + src: + local("Material Icons"), + //url("https://raw.githubusercontent.com/google/material-design-icons/master/iconfont/MaterialIcons-Regular.woff2"); // GitHub + //url("https://fonts.gstatic.com/s/materialicons/v50/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2"); // Google Fonts + url("../fonts/MaterialIcons-Regular.woff2"); // Self-hosting +} + + +// Search bar hover settings +// You can enable/disable search bar floating. +/*.search__input:hover { + @include shadow-2dp; + background: $search-bar-focus-color; +}*/ + + +// Favorite icon settings +$favorite-icon: "star"; $favorite-icon-border: "star_border"; // Star +//$favorite-icon: "favorite"; $favorite-icon-border: "favorite_border"; // Heart +//$favorite-icon: "plus_one"; $favorite-icon-border: "plus_one"; // +1 + +$favorite-icon-color: #ffd600; // Star +//$favorite-icon-color: #ff4081; // Heart +//$favorite-icon-color: #db4437; // +1 \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/control.scss b/app/javascript/styles/mastodon-material-dark/control.scss new file mode 100644 index 000000000..7bd251291 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/control.scss @@ -0,0 +1,69 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.react-toggle { + width: 36px; + height: 16px; + border-radius: 15px; + + &-track { + background-color: $toggle-track-color; + margin: 4px; + width: 36px; + height: 16px; + + &-check { visibility: hidden } + &-x { visibility: hidden } + } + + &-thumb { + @include shadow-1dp; + width: 20px; + height: 20px; + border: 0; + background-color: $toggle-thumb-color; + } + + &--checked { + .react-toggle{ + &-track { background-color: $toggle-track-active-color } + + &-thumb { + background-color: $toggle-thumb-active-color; + left: 22px; + } + } + + &:hover:not(.react-toggle--disabled) .react-toggle-track { background-color: $toggle-track-active-color !important } + + } + + &:hover:not(.react-toggle--disabled) .react-toggle-track { background-color: $toggle-track-color } +} + +.radio-button { + padding: 8px 0; + + &__input { + border: 2px solid $border-color; + + &.checked { + border-color: $icon-button-active-color; + background: $icon-button-active-color; + padding: 3px; + background-clip: content-box; + } + } +} + +.compose-form__sensitive-button .checkbox { + border: 2px solid $border-color; + border-radius: 2px; + + &.active { + border-color: $primary-color; + background: $primary-color; + } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/emoji-picker.scss b/app/javascript/styles/mastodon-material-dark/emoji-picker.scss new file mode 100644 index 000000000..2c17701cf --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/emoji-picker.scss @@ -0,0 +1,90 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + +.emoji-picker-dropdown { + &__menu { + @include shadow-8dp; + background: $menu-background-color; + border-radius: $menu-radius; + } + + &__modifiers__menu { + @include shadow-8dp; + background: $menu-background-color; + border-radius: $menu-radius; + + button { + padding: 8px; + } + } +} + +.emoji-mart { + width: 388px !important; + font-size: 14px; + color: $ui-text-color; + + &-bar { + border: 0 solid $border-color; + + &:first-child { + background: $menu-background-color; + } + } + + &-anchors { + color: $icon-button-color; + padding: 0; + } + + &-anchor { + padding: 10px 4px; + + &-selected { + color: $icon-button-active-color; + } + + &-bar { + background-color: $tab-indicator-active-color; + } + + &:hover { + color: $icon-button-hover-color; + } + } + + &-search { + background: $menu-background-color; + + input { + outline: none; + padding: 8px; + background: $search-bar-color; + color: $ui-text-color; + border: 0; + border-radius: $search-bar-radius; + + &:focus { + @include shadow-2dp; + background: $search-bar-focus-color; + } + } + } + + &-scroll { + padding: 0 8px 8px; + background: $menu-background-color; + } + + &-category-label span { + padding: 4px 6px; + background: $menu-background-color; + } + + &-emoji:hover::before { + background-color: $icon-background-hover-color; + } + + &-no-results { color: $secondary-text-color } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/icons.scss b/app/javascript/styles/mastodon-material-dark/icons.scss new file mode 100644 index 000000000..beca11a6f --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/icons.scss @@ -0,0 +1,48 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.fa.fa-users.column-link, +.fa.fa-globe.column-link, +.fa.fa-address-book.column-link, +.fa.fa-bullhorn.column-link, +.fa.fa-envelope.column-link, +.fa.fa-bookmark.column-link, +.fa.fa-star.column-link, +.fa.fa-list-ul.column-link { + &__icon.fa-fw { color: $icon-color } +} + + +.fa { vertical-align: sub } // adjust material icon font baseline to other font + +.fa.fa-times, +.fa.fa-eraser, +.fa.fa-plus { vertical-align: middle } // adjustment exception + +.fa.fa-check { vertical-align: initial } + +.fa.fa-lock { text-transform: none } + +.fa-fw { width: 16px } + +// icon in tab settings +.fa.fa-chevron-left.column-back-button__icon.fa-fw, +.text-btn.column-header__setting-btn .fa.fa-eraser { + font-size: 20px; + margin-right: 16px; +} + +.icon-with-badge__badge { + background: $badge-color; + border: none; + padding: 2px 6px; + border-radius: 12px; +} + +// favorite icon color +.star-icon.active, +.star-icon.icon-button.active.active, +.notification__favourite-icon-wrapper .star-icon, +.status__action-bar-button.star-icon.icon-button.active { color: $favorite-icon-color } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/layout/material-v1.scss b/app/javascript/styles/mastodon-material-dark/layout/material-v1.scss similarity index 100% rename from app/javascript/styles/material-v2-dark/layout/material-v1.scss rename to app/javascript/styles/mastodon-material-dark/layout/material-v1.scss diff --git a/app/javascript/styles/mastodon-material-dark/material-icons.scss b/app/javascript/styles/mastodon-material-dark/material-icons.scss new file mode 100644 index 000000000..e473dfe31 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/material-icons.scss @@ -0,0 +1,146 @@ +@charset "UTF-8"; +@import 'config'; +@import 'functions'; + + +.fa { + &.fa-bars, + &.fa-navicon, + &.fa-reorder, + &.fa-globe, + &.fa-cog, + &.fa-cogs, + &.fa-gears, + &.fa-sign-out, + &.fa-search, + &.fa-times, + &.fa-times-circle, + &.fa-close, + &.fa-remove, + &.fa-chevron-down, + &.fa-ellipsis-v, + &.fa-paperclip, + &.fa-tasks, + &.fa-plus, + &.fa-unlock, + &.fa-lock, + &.fa-envelope, + &.fa-home, + &.fa-bullhorn, + &.fa-sliders, + &.fa-chevron-left, + &.fa-chevron-right, + &.fa-reply, + &.fa-reply-all, + &.fa-share-alt, + &.fa-star, + &.fa-bookmark, + &.fa-ellipsis-h, + &.fa-bell, + &.fa-eraser, + &.fa-users, + &.fa-file-text, + &.fa-user-plus, + &.fa-address-book, + &.fa-address-book-o, + &.fa-list, + &.fa-list-ul, + &.fa-eye, + &.fa-eye-slash, + &.fa-pencil, + &.fa-trash, + &.fa-play, + &.fa-external-link, + &.fa-retweet, + &.fa-link, + &.fa-pause, + &.fa-volume-up, + &.fa-volume-off, + &.fa-expand, + &.fa-download, + &.fa-arrows-alt, + &.fa-compress, + &.fa-user-times, + &.fa-check { + font-family: "Material Icons"; + } +} + +.fa { + &.fa-bars::before, &.fa-navicon::before,&.fa-reorder::before { content: "menu" } + &.fa-globe::before { content: "public" } + &.fa-cog::before, &.fa-cogs::before, &.fa-gears::before { content: "settings" } + &.fa-sign-out::before { content: "exit_to_app" } + &.fa-search::before { content: "search" } + &.fa-times::before, &.fa-times-circle::before, &.fa-close::before, &.fa-remove::before { content: "close" } + &.fa-chevron-down::before, &.fa-ellipsis-v::before { content: "more_vert" } + &.fa-paperclip::before { content: "attach_file" } + &.fa-tasks::before { content: "poll" } + &.fa-plus::before { content: "add" } + &.fa-unlock::before { content: "lock_open" } + &.fa-lock::before { content: "lock" } + &.fa-envelope::before { content: "mail" } + &.fa-home::before { content: "home" } + &.fa-bullhorn::before { content: "announcement" } + &.fa-sliders::before { content: "tune" } + &.fa-chevron-left::before { content: "arrow_back" } + &.fa-chevron-right::before { content: "arrow_forward" } + &.fa-reply::before { content: "reply" } + &.fa-reply-all::before { content: "reply_all" } + &.fa-share-alt::before { content: "share" } + &.fa-star::before { content: $favorite-icon } + &.fa-bookmark::before { content: "bookmark" } + &.fa-ellipsis-h::before { content: "more_horiz" } + &.fa-bell::before { content: "notifications" } + &.fa-eraser::before { content: "clear_all" } + &.fa-users::before { content: "people" } + &.fa-file-text::before { content: "web" } + &.fa-user-plus::before { content: "person_add" } + &.fa-address-book::before { content: "explore" } + &.fa-address-book-o::before { content: "explore" } + &.fa-list::before { content: "list" } + &.fa-list-ul::before { content: "list" } + &.fa-eye::before { content: "visibility" } + &.fa-eye-slash::before { content : "visibility_off" } + &.fa-pencil::before { content: "create" } + &.fa-trash::before { content: "delete" } + &.fa-play::before { content: "play_arrow" } + &.fa-external-link::before { content: "open_in_new" } + &.fa-retweet::before { content: "repeat" } + &.fa-link::before { content: "link" } + &.fa-pause::before { content: "pause" } + &.fa-volume-up::before { content: "volume_up" } + &.fa-volume-off::before { content: "volume_off" } + &.fa-expand::before { content: "web_asset" } + &.fa-download::before { content: "file_download" } + &.fa-arrows-alt::before { content: "fullscreen" } + &.fa-compress::before { content: "fullscreen_exit" } + &.fa-user-times::before { content: "delete" } + &.fa-check::before { content: "check" } +} + +// bookmark icon +.status__action-bar-button.icon-button, +.bookmark-icon.icon-button { + .fa.fa-bookmark::before { content: "bookmark_border" } + &.active .fa.fa-bookmark::before { content: "bookmark" } +} + +// favorite icon +.status__action-bar-button.star-icon.icon-button, +.star-icon.icon-button { + .fa.fa-star::before { content: $favorite-icon-border } + + &.active, + &.active.activate { + .fa.fa-star::before { content: $favorite-icon } + } +} + +// boost icon +.no-reduce-motion button.icon-button i.fa-retweet { + height: 18px; + width: 18px; + transition: background-position .3s steps(1); + background-image: url('data:image/svg+xml;utf8,'); +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/media.scss b/app/javascript/styles/mastodon-material-dark/media.scss new file mode 100644 index 000000000..64a69a129 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/media.scss @@ -0,0 +1,99 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.media-gallery { border-radius: $card-radius } + +.media-modal__close { + align-content: center; + + &.icon-button { + background: transparent; + color: $media-icon-color; + text-align: center !important; + font-size: 24px !important; + width: 48px !important; + height: 48px !important; + border: 12px; + + &:hover { + background: $media-icon-background-hover-color; + color: $media-icon-hover-color; + } + + .fa-fw { width: 24px } + } +} + +.media-modal { + &__nav { + background: $media-icon-background-color; + color: $media-icon-color; + height: 48px; + width: 48px; + margin: auto 16px; + padding: 8px; + border-radius: 50%; + + .fa { width: 32px } + } + + &__button { + background-color: $media-page-indicator-color; + + &--active { background-color: $media-page-indicator-active-color } + } +} + +.video-player { + &__controls { + background: linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.2) 60%,transparent); + padding: 0 12px; + } + + &__seek { + &::before { + background: rgba(255,255,255,.2); + border-radius: 0; + } + + &__buffer { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__progress { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__volume { + &::before { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__current { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__time-current { margin-left: 68px } + + &__buttons button { font-size: 20px } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/mobile.scss b/app/javascript/styles/mastodon-material-dark/mobile.scss new file mode 100644 index 000000000..de6f4e94c --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/mobile.scss @@ -0,0 +1,48 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.tabs-bar { + background: $top-bar-color; + + &__link { + padding: 16px 16px 12px 16px; + color: $top-bar-icon-color; + border-bottom: 4px solid transparent; + + &.active { + border-bottom: 4px solid $tab-indicator-active-color; + color: $tab-indicator-active-color; + } + + .fa { font-size: 20px } + } + + &__wrapper { + @include shadow-4dp; + background: transparent; + } +} + + +#tabs-bar__portal { overflow-y: hidden } + +.floating-action-button { + @include shadow-6dp; + background: $floating-action-button-color; + color: $floating-action-button-icon-color; + font-size: 24px; + + &:hover { background: $floating-action-button-hover-color } + + &:active, + &:focus { background: $floating-action-button-active-color } +} + +.columns-area--mobile { + + .column { margin: 0 !important } + + .search__input { padding: 16px 38px } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/modal.scss b/app/javascript/styles/mastodon-material-dark/modal.scss new file mode 100644 index 000000000..7734c8dfa --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/modal.scss @@ -0,0 +1,76 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.confirmation-modal { + background: $card-background-color; + color: $ui-text-color; + border-radius: $dialog-radius; + width: 280px; + + &__container { + text-align: left; + padding: 24px; + } + + &__action-bar { + justify-content: flex-end; + background: $card-background-color; + padding: 8px; + } +} + +.actions-modal { + background: $card-background-color; + border-radius: $card-radius; + + ul li:not(:empty) a { + color: $ui-text-color; + font-size: 16px; + + &:hover { + background: $card-background-hover-color; + color: $ui-text-color; + } + } + + .dropdown-menu__separator { border-bottom-color: $border-color } + + .status { + background: $card-background-color; + border-bottom-color: $border-color; + padding-top: 12px; + padding-bottom: 12px; + + &__avatar { + left: 12px; + top: 12px; + } + } +} + +.report-modal { + background: $card-background-color; + color: $ui-text-color; + border-radius: $card-radius; + + &__target { + padding: 24px; + text-align: left; + font-weight: bold; + } + + &__container { + border-top: none; + } +} + +.embed-modal .embed-modal__container { + padding: 0 24px 24px 24px; + + .hint { + margin-bottom: 16px; + color: $secondary-text-color; + } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-dark/statuses.scss b/app/javascript/styles/mastodon-material-dark/statuses.scss new file mode 100644 index 000000000..f60c2d859 --- /dev/null +++ b/app/javascript/styles/mastodon-material-dark/statuses.scss @@ -0,0 +1,172 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.status { + padding: 12px 12px 12px 70px; + border-bottom: 1px solid $border-color; + + &__expand { width: 70px } + + &__info { + font-size: 16px; + padding-right: 4px; + } + + &__relative-time { color: $info-text-color } + + &__display-name { + color: $secondary-text-color; + + strong { color: $primary-text-color } + } + + &__avatar { + left: 12px; + top: 12px; + } + + &__content { + font-size: 16px; + padding-top: 4px; + color: $primary-text-color; + + a { + color: $link-text-color; + + &.unhandled-link { color: $link-text-color } + } + + .status__content__spoiler-link { + background: transparent; + + &:hover { background: $text-button-hover-color } + + &:focus { background: $text-button-focus-color } + } + + &__spoiler-link { + border: 0; + color: $text-button-color; + } + + &__read-more-button { + font-size: 14px; + color: $text-button-color; + border-radius: $button-radius; + padding: 4px 6px; + + &:hover { + background: $text-button-hover-color; + text-decoration: none; + } + + &:focus { background: $text-button-focus-color } + } + } + + &__action-bar { + &__counter__label { + font-size: 14px; + color: $info-text-color; + } + } + + &__prepend { color: $secondary-text-color } + + &.status-direct:not(.read) { + background: transparent; + border-bottom-color: $border-color; + } +} + +.status-card { + color: $icon-color; + border-color: $border-color; + outline: none; + + &__image { + background: transparent; + + &>.fa { + font-size: 26px; + } + } + + &__title { + color: $primary-text-color; + margin-bottom: 6px; + } + + &__description { color: $secondary-text-color } + + &__actions { + &>div { + background: $media-icon-background-color; + border-radius: $button-radius; + } + + button, + a { + color: $media-icon-color; + font-size: 20px; + } + + a { bottom: auto } + } + + &.compact { + border-color: $border-color; + outline: none; + background: transparent; + + .status-card { + &__content { padding: 12px } + &__image { flex: 0 0 64px } + } + + &:hover { background-color: transparent !important } + } + + &:hover { background-color: $card-background-color } +} + +// Detailed status in mobile +.status.light { + .status { + &__display-name { color: $primary-text-color } + &__relative-time { color: $info-text-color } + &__content { color: $primary-text-color } + } + + .display-name { color: $secondary-text-color } + .display-name strong { color: $primary-text-color } +} + +.detailed-status { + background: $card-background-color; + padding: 16px; + + &__display-name { + color: $secondary-text-color; + + strong { color: $primary-text-color } + } + + &__meta { + margin-top: 16px; + color: $info-text-color; + } + + &__action-bar { + background: $card-background-color; + border-top: none; + border-bottom: 1px solid $border-color; + padding: 12px 0; + } + + &__button { + .icon-button { font-size: 20px !important } + } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light.scss b/app/javascript/styles/mastodon-material-light.scss new file mode 100644 index 000000000..7a725f929 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light.scss @@ -0,0 +1,18 @@ +@charset "UTF-8"; + +@import 'application'; +@import 'mastodon-material-light/account'; +@import 'mastodon-material-light/basics'; +@import 'mastodon-material-light/button'; +//@import 'mastodon-material-light/cards'; +@import 'mastodon-material-light/columns'; +@import 'mastodon-material-light/components'; +@import 'mastodon-material-light/config'; +@import 'mastodon-material-light/control'; +@import 'mastodon-material-light/emoji-picker'; +@import 'mastodon-material-light/icons'; +@import 'mastodon-material-light/material-icons'; +@import 'mastodon-material-light/media'; +@import 'mastodon-material-light/mobile'; +@import 'mastodon-material-light/modal'; +@import 'mastodon-material-light/statuses'; \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/_functions.scss b/app/javascript/styles/mastodon-material-light/_functions.scss new file mode 100644 index 000000000..54750d029 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/_functions.scss @@ -0,0 +1,12 @@ +@charset "UTF-8"; +@use "sass:string"; + + +@function to-string($value) { + @return inspect($value); +} + +// convert hex color code to svg styled color code +@function svg-color ($color) { + @return '%23' + string.slice(to-string($color), 2, 7); +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/_mixins.scss b/app/javascript/styles/mastodon-material-light/_mixins.scss new file mode 100644 index 000000000..5f573e339 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/_mixins.scss @@ -0,0 +1,25 @@ +@charset "UTF-8"; + + +$shadow-color-1: rgba(0,0,0,.2); +$shadow-color-2: rgba(0,0,0,.14); +$shadow-color-3: rgba(0,0,0,.12); + +@mixin shadow-1dp { box-shadow: 0 2px 1px -1px $shadow-color-1, 0 1px 1px 0 $shadow-color-2, 0 1px 3px 0 $shadow-color-3 } +@mixin shadow-2dp { box-shadow: 0 3px 1px -2px $shadow-color-1, 0 2px 2px 0 $shadow-color-2, 0 1px 5px 0 $shadow-color-3 } +@mixin shadow-3dp { box-shadow: 0 3px 3px -2px $shadow-color-1, 0 3px 4px 0 $shadow-color-2, 0 1px 8px 0 $shadow-color-3 } +@mixin shadow-4dp { box-shadow: 0 2px 4px -1px $shadow-color-1, 0 4px 5px 0 $shadow-color-2, 0 1px 10px 0 $shadow-color-3 } +@mixin shadow-5dp { box-shadow: 0 3px 5px -1px $shadow-color-1, 0 5px 8px 0 $shadow-color-2, 0 1px 14px 0 $shadow-color-3 } +@mixin shadow-6dp { box-shadow: 0 3px 5px -1px $shadow-color-1, 0 6px 10px 0 $shadow-color-2, 0 1px 18px 0 $shadow-color-3 } +@mixin shadow-7dp { box-shadow: 0 4px 5px -2px $shadow-color-1, 0 7px 10px 1px $shadow-color-2, 0 2px 16px 1px $shadow-color-3 } +@mixin shadow-8dp { box-shadow: 0 5px 5px -3px $shadow-color-1, 0 8px 10px 1px $shadow-color-2, 0 3px 14px 2px $shadow-color-3 } +@mixin shadow-9dp { box-shadow: 0 5px 6px -3px $shadow-color-1, 0 9px 12px 1px $shadow-color-2, 0 3px 16px 2px $shadow-color-3 } +@mixin shadow-10dp { box-shadow: 0 6px 6px -3px $shadow-color-1, 0 10px 14px 1px $shadow-color-2, 0 4px 18px 3px $shadow-color-3 } +@mixin shadow-11dp { box-shadow: 0 6px 7px -4px $shadow-color-1, 0 11px 15px 1px $shadow-color-2, 0 4px 20px 3px $shadow-color-3 } +@mixin shadow-12dp { box-shadow: 0 7px 8px -4px $shadow-color-1, 0 12px 17px 2px $shadow-color-2, 0 5px 22px 4px $shadow-color-3 } +@mixin shadow-13dp { box-shadow: 0 7px 8px -4px $shadow-color-1, 0 13px 19px 2px $shadow-color-2, 0 5px 24px 4px $shadow-color-3 } +@mixin shadow-14dp { box-shadow: 0 7px 9px -4px $shadow-color-1, 0 14px 21px 2px $shadow-color-2, 0 5px 26px 4px $shadow-color-3 } +@mixin shadow-15dp { box-shadow: 0 8px 9px -5px $shadow-color-1, 0 15px 22px 2px $shadow-color-2, 0 6px 28px 5px $shadow-color-3 } +@mixin shadow-16dp { box-shadow: 0 8px 10px -5px $shadow-color-1, 0 16px 24px 2px $shadow-color-2, 0 6px 30px 5px $shadow-color-3 } + +@mixin non-overflow-shadow-4dp { box-shadow: 0 2px 4px -1px $shadow-color-1, 0 4px 5px -1px $shadow-color-2} diff --git a/app/javascript/styles/mastodon-material-light/account.scss b/app/javascript/styles/mastodon-material-light/account.scss new file mode 100644 index 000000000..b43194729 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/account.scss @@ -0,0 +1,143 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + +.account { + border-bottom: 1px solid $border-color; + + .account__display-name { color: $primary-text-color } + .account__display-name strong { color: $secondary-text-color } + + &__avatar { + border-radius: $avater-radius; + width: 40px; + height: 40px; + + &-overlay { + &-base { + border-radius: 50%; + width: 44px; + height: 44px; + background-size: 44px; + } + + &-overlay { border-radius: $avater-radius } + } + } + + &__header { + &__bar { + background: $card-background-color; + padding: 8px; + border-bottom: 1px solid $border-color; + + .avatar .account__avatar { border: none } + } + + &__tabs { + padding: 8px; + + &__name { + padding: 8px; + + h1 { + color: $primary-text-color; + + small { color: $secondary-text-color } + } + } + + &__buttons { + .icon-button { + border: none; + border-radius: 50%; + padding: 0; + } + } + } + + &__extra { + margin-top: 0; + + &__links { + color: $secondary-text-color; + padding: 10px 0; + + a { + color: $secondary-text-color; + padding: 4px 12px; + + strong { color: $ui-text-color } + } + } + } + + &__bio { + margin: 0; + + .account__header { + &__content { + color: $primary-text-color; + padding: 8px; + } + + &__fields { + border: 1px solid $border-color; + border-radius: 4px; + + .verified { + border: none; + background: $verified-background-color; + + a, + &__mark { color: $primary-text-color } + } + + dl { + border-bottom: 1px solid $border-color; + + &:first-child .verified { border-radius: 0 } + + &:last-child { border-bottom: 0 } + } + + dt { + color: $primary-text-color; + background: $list-background-inactive-color; + } + + dd { color: $primary-text-color } + } + } + } + } + + &__section-headline { + background: $text-tab-background-color; + border-bottom: 1px solid $border-color; + + a { + padding: 16px 0; + color: $text-tab-indicator-color; + + &.active { + color: $text-tab-indicator-active-color; + border-bottom: 4px solid $text-tab-indicator-active-color; + + &::before, + &:after { border: none } + + &:focus { background: $text-tab-indicator-background-focus-color } + } + + &:hover { background: $text-tab-indicator-background-hover-color } + } + } +} + +.account-role { + padding: 4px 8px; + border-radius: 17px; + color: $ui-text-color; + background-color: $contained-chip-color; +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/basics.scss b/app/javascript/styles/mastodon-material-light/basics.scss new file mode 100644 index 000000000..5c7c3dc04 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/basics.scss @@ -0,0 +1,24 @@ +@charset "UTF-8"; +@import 'config'; + + +body { background: $background-color } + +// Chrome & Safari scroll bar +::-webkit-scrollbar-thumb { + background: $scroll-bar-thumb-color; + + &:hover { background: $scroll-bar-thumb-hover-color } + &:active { background: $scroll-bar-thumb-active-color } +} + +::-webkit-scrollbar-track, +::-webkit-scrollbar-track:hover, +::-webkit-scrollbar-track:active { + background: transparent !important; +} + +// Firefox scroll bar +html { + scrollbar-color: $scroll-bar-thumb-color transparent; +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/button.scss b/app/javascript/styles/mastodon-material-light/button.scss new file mode 100644 index 000000000..38fd1a3c1 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/button.scss @@ -0,0 +1,95 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + +.icon-button { + color: $icon-button-color; + border-radius: 50%; + + &.active { + color: $icon-button-active-color; + + &:hover { color: $icon-button-active-hover-color } + } + + &.disabled { color: $disabled-icon-color } + + &.inverted { + color: $icon-button-color; + + &:hover { + color: $icon-button-hover-color; + background-color: $icon-background-hover-color; + } + } + + &.overlayed { + border-radius: 50%; + background: $media-icon-background-color; + color: $media-icon-color; + + &:hover { + background: $media-icon-background-color; + color: $media-icon-hover-color; + } + } + + &:hover { + color: $icon-button-hover-color; + background-color: $icon-background-hover-color; + } + + &:active, + &:focus { background-color: transparent } +} + +.text-icon-button { + color: $icon-button-color; + border-radius: 50%; + font-size: 12px; + + &:hover { + background-color: $icon-background-hover-color; + color: $icon-button-hover-color; + } +} + +.button, +.button:active, +.button:focus { + background-color: $contained-button-color; + border-radius: $button-radius; +} + +.button:hover { + @include shadow-2dp; + background-color: $contained-button-hover-color; +} + +.button.logo-button { + background: $contained-button-color; + margin: 2px; + + &:hover { background: $contained-button-hover-color } + + .button--destructive:hover { background: $contained-button-hover-color } +} + +.button.button--block { margin: 8px 0 } + +.button.confirmation-modal__cancel-button { + box-shadow: none; + background-color: transparent; + margin: 0 8px; + color: $text-button-color; + + &:hover { background: $text-button-hover-color } + + &:focus { background: $text-button-focus-color } +} + +.spoiler-button__overlay__label { + background: $media-icon-background-color; + border-radius: $button-radius; + color: $media-icon-color; +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/cards.scss b/app/javascript/styles/mastodon-material-light/cards.scss new file mode 100644 index 000000000..96988f2c9 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/cards.scss @@ -0,0 +1,29 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.column { + box-shadow: none !important; + margin: 2px 0 !important; + padding: 8px !important; +} + +.status { + border-bottom: 0 !important; + border-radius: $card-radius; +} + +.account { border-bottom: 0 !important } + +.status__wrapper.status__wrapper, +.notification.notification { + @include shadow-1dp; + margin: 8px 2px; +} + +.notification .status__wrapper.status__wrapper { box-shadow: none !important } + +.notification__filter-bar { + @include non-overflow-shadow-4dp; +} \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/color/mastodon-light.scss b/app/javascript/styles/mastodon-material-light/color/mastodon-light.scss similarity index 74% rename from app/javascript/styles/material-v1-light/color/mastodon-light.scss rename to app/javascript/styles/mastodon-material-light/color/mastodon-light.scss index 62a064b87..22bcc9f91 100644 --- a/app/javascript/styles/material-v1-light/color/mastodon-light.scss +++ b/app/javascript/styles/mastodon-material-light/color/mastodon-light.scss @@ -59,7 +59,7 @@ $top-bar-icon-active-color: $icon-hover-color; $media-icon-color: transparentize(#ffffff, 0.4); $media-icon-hover-color: transparentize(#ffffff, 0.2); $media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); +$media-icon-background-hover-color: transparentize(#000000, 0.8); $control-border-color: $icon-color; // Button color @@ -101,6 +101,28 @@ $search-bar-color: #d9e1e8; $search-bar-focus-color: $background-color; // Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: lighten($tab-indicator-color, 36%); -$tab-indicator-background-focus-color: lighten($tab-indicator-color, 30%); \ No newline at end of file +$tab-indicator-color: #282c37; +$tab-indicator-active-color: $top-bar-icon-color; +$tab-background-color: #e6ebf0; +$tab-indicator-background-hover-color: transparentize($tab-indicator-active-color, 0.9); +$tab-indicator-background-focus-color: transparentize($tab-indicator-active-color, 0.8); +$text-tab-indicator-color: $tab-indicator-color; +$text-tab-indicator-active-color: $tab-indicator-active-color; +$text-tab-background-color: $tab-background-color; +$text-tab-indicator-background-hover-color: transparentize($text-tab-indicator-active-color, 0.9); +$text-tab-indicator-background-focus-color: transparentize($text-tab-indicator-active-color, 0.8); + +// Media indicator color +$media-page-indicator-color: #9e9e9e; +$media-page-indicator-active-color: #e6e6e6; + +// Poll chart color +$poll-bar-leading-color: $primary-color; +$poll-bar-color: lighten($poll-bar-leading-color, 30%); + +// Contents color in read status +$read-primary-text-color: transparentize($primary-text-color, 0.3); +$read-secondary-text-color: transparentize($secondary-text-color, 0.3); +$read-ui-text-color: transparentize($ui-text-color, 0.3); +$read-poll-bar-leading-color: transparentize($poll-bar-leading-color, 0.3); +$read-poll-bar-color: transparentize($poll-bar-color, 0.3); \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/columns.scss b/app/javascript/styles/mastodon-material-light/columns.scss new file mode 100644 index 000000000..689028581 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/columns.scss @@ -0,0 +1,461 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + +.column { + @include shadow-1dp; + padding: 0; + margin: 10px 8px; + border-radius: $card-radius; + + &>.scrollable { background: $list-background-color } + + &:last-child { box-shadow: none } +} + +.column-header { + background: $top-bar-color; + border-radius: $bar-radius; + + > button { + padding: 16px 0 16px 16px; + color: $top-bar-text-color; + } + + &>.column-header__back-button { color: $top-bar-icon-color } + + &.active { + .column-header__icon { + color: $secondary-color; + text-shadow: none; + } + } + + &__icon { + margin-right: 16px; + color: $top-bar-icon-color; + font-size: 20px; + } + + &__buttons { height: 56px } + + &__button { + background: $top-bar-color; + color: $top-bar-icon-color; + margin: 8px 10px; + padding: 10px 12px; + border-radius: 50%; + + &.active { + color: $top-bar-icon-active-color; + background: $icon-background-active-color; + + &:hover { + color: $top-bar-icon-hover-color; + background: $icon-background-hover-color; + } + } + + &:hover { + color: $top-bar-icon-hover-color; + background: $icon-background-hover-color; + } + } + + &__setting-btn { + color: $icon-button-color; + padding: 8px 0; + + &:hover { + color: $icon-button-hover-color; + text-decoration: none; + } + + .fa { font-size: 20px } + + span { vertical-align: middle } + } + + &__setting-arrows { + font-size: 16px; + border-bottom: 8px; + + .column-header__setting-btn { + padding: 8px; + border-radius: 50%; + + &:last-child { padding-right: 8px } + } + } + + &__wrapper { + @include shadow-4dp; + border-radius: $bar-radius; + + .announcements { border-top: 1px solid $border-color } + + &.active { + @include shadow-4dp; + + &::before { background: transparent } + } + } + + &__collapsible { + color: $ui-text-color; + background: $card-background-color; + border-top: 1px solid $border-color; + + &-inner { + background: $card-background-color; + padding: 16px; + } + + &.collapsed { border-top: none } + } + + &__back-button { + background: $top-bar-color; + color: $top-bar-icon-color; + padding: 8px; + margin: auto 0; + border-radius: 50%; + + span { display: none } + } +} + +.column-subheading { + color: $section-text-color; + background: $background-color; + padding: 12px 16px; + border-top: 1px solid $border-color; +} + +.column-link { + color: $ui-text-color; + background: $background-color; + padding: 16px; + border-radius: $nav-drawer-item-radius; + + &:hover { background: $list-background-hover-color } + + &:active, + &:focus { background: $list-background-active-color } + + &__icon { + margin-right: 32px; + font-size: 20px; + } + + &--transparent { + &.active { + color: $ui-text-color; + background: $menu-background-active-color; + + &:hover { background: $menu-background-active-hover-color } + + .fa { color: $icon-color } + } + + &:hover { + color: $ui-text-color; + + .fa { color: $icon-color } + } + } + + .fa { color: $icon-color } +} + +.column-settings { + &__section { + color: $section-text-color; + margin-bottom: 0; + margin-top: 8px; + } + + &__row .text-btn { margin-bottom: 0 } +} + +.column-back-button { + @include shadow-4dp; + background: $top-bar-color; + color: $top-bar-icon-color; + padding: 16px; + + span { visibility: hidden } // hide "back" string +} + +.column-inline-form { + padding: 16px 0 16px 16px; + background: $card-background-color; + + .icon-button { margin: 0 16px } +} + +.setting-text { + color: $primary-text-color; + background: $search-bar-color; + border-radius: $bar-radius; + + &::placeholder { color: $tips-text-color } + + &:focus { + @include shadow-1dp; + background: $search-bar-focus-color; + } +} + +.empty-column-indicator { + color: $secondary-text-color; + background: $card-background-color; + font-size: 16px; +} + +.conversation { + border-bottom: 1px solid $border-color; + padding: 12px; + background: $list-background-inactive-color; + + &--unread { + background: $list-background-color; + + .conversation__content__relative-time { color: $info-text-color } + } + + &__unread { background: $primary-color } + + &__avatar { padding: 0 16px 0 0 } + + &__content { + padding: 0; + + &__relative-time { + font-size: 14px; + color: $info-text-color; + } + + &__names, + &__names a { + color: $primary-text-color; + font-size: 16px; + } + } +} + +// read status in notification column +.muted { + .status { + &__content { + color: $read-primary-text-color; + + p { color: $read-primary-text-color } + + a { color: $read-secondary-text-color } + } + + &__display-name strong { color: $read-primary-text-color } + } + + .poll { + color: $read-primary-text-color; + + &__chart { + background: $read-poll-bar-color; + + &.leading { background: $read-poll-bar-leading-color } + } + + &__footer, + &__link { color: $read-ui-text-color } + } +} + +.load-gap { border-bottom: 1px solid $border-color } + +.load-more { + color: $icon-color; + padding: 16px; + + &:hover { background: $menu-background-hover-color } +} + +.getting-started { + background: $background-color; + color: $ui-text-color; + + &__wrapper { + background: $background-color; + height: auto !important; + border-bottom: 1px solid $border-color; + } + + &__footer { + padding: 16px; + + p { + color: $secondary-text-color; + font-size: 12px; + margin-bottom: 16px; + } + + a { color: $ui-text-color } + + p a { color: $link-text-color } + } + + &__trends { + background: $background-color; + margin-bottom: 0; + + h4 { + color: $section-text-color; + padding: 12px 16px; + border-top: 1px solid $border-color; + border-bottom: none; + } + } +} + +.trends__item { + padding: 16px; + border-bottom: none; + + &__name { + color: $secondary-text-color; + font-size: 12px; + + a { color: $primary-text-color } + } + + &__current { + padding-right: 16px; + margin-left: 4px; + color: $secondary-text-color; + } + + &__sparkline path { + stroke: $primary-color; + fill: $primary-color; + fill-opacity: 0.5; + } +} + +.setting-toggle { + &__label { + color: $ui-text-color; + margin: 8px 8px 8px 14px; + } +} + +.announcements { + background: $card-background-color; + padding: 0; + + &__container { color: $primary-text-color } + + &__item { + padding: 16px; + font-size: 16px; + + &__unread { background: $badge-color } + } +} + +.reactions-bar { + .emoji-button { + color: $icon-button-color; + font-size: 20px; + + &:hover { color: $icon-button-hover-color } + + &:active { color: $icon-button-active-color } + } + + &__item { + background: $contained-chip-color; + border-radius: 17px; + margin: 2px 4px; + + &.active { + background-color: $contained-chip-selected-color; + .reactions-bar__item__count { color: $ui-text-color } + } + + &__emoji { + width: 24px; + height: 24px; + margin: 4px 0 4px 2px; + } + + &__count { + font-size: 16px; + margin: 0 8px; + color: $secondary-text-color; + } + + &:hover { background: $contained-chip-hover-color } + } +} + +.notification { + &__filter-bar { + background: $tab-background-color; + border-bottom: 1px solid $border-color; + z-index: 1; + + button { + background: $tab-background-color; + color: $tab-indicator-color; + font-size: 16px; + + span { font-size: 14px } + + &.active { + color: $tab-indicator-active-color; + border-bottom: 4px solid $tab-indicator-active-color; + + &::before, + &:after { border: none } + + &:focus { background: $tab-indicator-background-focus-color } + } + + &:hover { background: $tab-indicator-background-hover-color } + } + } + + &__message { + color: $secondary-text-color; + margin: 0 16px 0 70px; + font-size: 16px; + } + + &__display-name:hover { color: inherit } +} + +.notification-favourite .status.status-direct { + background: transparent; + + .icon-button.disabled { color: $disabled-icon-color } +} + +// read notification +.notification.notification-favourite.focusable, +.notification.notification-follow.focusable { background: $list-background-inactive-color } + +.relationship-tag { + color: $ui-text-color; + background-color: $contained-chip-color; + font-size: 12px; + border-radius: 17px; + padding: 4px 8px; + opacity: 1; +} + +.react-swipeable-view-container { height: auto } + +.attachment-list__list a { color: $secondary-text-color } + +.focusable { background: transparent !important } \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/components.scss b/app/javascript/styles/mastodon-material-light/components.scss new file mode 100644 index 000000000..92d2801f4 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/components.scss @@ -0,0 +1,389 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.drawer { + &__header { + @include shadow-4dp; + background: $top-bar-color; + border-radius: $nav-bar-radius; + justify-content: space-around; + + a { transition: none } + + a:hover { + background: $icon-background-hover-color; + border-radius: 50%; + } + } + + &__tab { + color: $top-bar-icon-color; + font-size: 20px; + margin: 10px auto 10px; + padding: 8px; + flex: none; + height: 20px; + width: 20px; + border-bottom: none; + text-align: justify; + + &:hover { color: $top-bar-icon-hover-color } + } + + &__pager { + @include shadow-1dp; + border-radius: $card-radius; + } + + &__inner { + background: $card-background-color; + + &.darker { background: $card-background-color } + + &__mastodon { background: $card-background-color } + } +} + +.search { + &__input { + background: $search-bar-color; + color: $tips-text-color; + border-radius: $search-bar-radius; + padding: 12px 12px 12px 40px; + + &:focus { + @include shadow-2dp; + background: $search-bar-focus-color; + color: $search-bar-text-color; + } + + &::placeholder { color: $tips-text-color } + } + + &__icon { + .fa { + color: $icon-color; + font-size: 20px; + top: 12px; + right: unset; + left: 12px; + height: 6px; + transition: none; + + &.active { opacity: 1 } + + &-search { + transform: none; + opacity: 1; + } + &-times-circle.active { + right: 10px; + left: unset; + transform: none; + } + } + } +} + +.search-popout { + @include shadow-2dp; + background: $search-bar-focus-color; + border-radius: 0px $bar-radius; + border-top: 1px solid $border-color; + margin-top: 0; + color: $tips-text-color; + + h4 { + color: $secondary-text-color; + } + + em { + color: $search-bar-text-color; + } +} + +.search-results { + &__header { + color: $secondary-text-color; + background-color: $card-background-color; + padding: 16px; + + .fa { margin-right: 8px } + } + + &__section { + h5 { + background: $card-background-color; + border-bottom: 1px solid $border-color; + padding: 16px; + color: $section-text-color; + + .fa { margin-right: 8px } + } + } +} + +.navigation-bar { + color: $secondary-text-color; + padding: 14px; + + strong { + color: $ui-text-color; + } +} + +.navigation-panel hr { + border-top: 1px solid $border-color; + margin: 8px 0; +} + +.dropdown-menu { + @include shadow-8dp; + background: $menu-background-color; + padding: 8px 0; + border-radius: $menu-radius; + + &__arrow { visibility: hidden } + + &__item a { + font-size: 14px; + padding: 8px 16px; + background: $menu-background-color; + color: $menu-text-color; + + &:hover, &:active { + background: $menu-background-hover-color; + color: $menu-text-color; + } + } + + &__separator { + margin: 8px 0; + border-bottom: 1px solid $border-color; + } +} + +.compose-form { + .autosuggest-textarea { + &__textarea { + background: $card-background-color; + color: $ui-text-color; + + &::placeholder { color: $tips-text-color } + } + + &__suggestions { + @include shadow-1dp; + background: $menu-background-color; + color: $ui-text-color; + border-radius: $card-radius; + font-size: 16px; + padding: 8px 0; + + &__item { + padding: 8px; + border-radius: 0; + + &:hover { background: $menu-background-hover-color } + + &.selected, + &:focus, + &:active { background: $menu-background-active-color } + } + } + } + + .spoiler-input__input { + color: $ui-text-color; + background: $card-background-color; + + &::placeholder { color: $tips-text-color } + } + + .compose-form { + &__warning { + @include shadow-1dp; + color: $secondary-text-color; + background: $card-background-color; + padding: 16px; + + a { color: $link-text-color } + } + + &__modifiers { + background: $card-background-color; + color: $tips-text-color; + } + + &__buttons-wrapper { + background: $card-background-color; + color: $tips-text-color; + } + + &__poll-wrapper { + border-top: 1px solid $border-color; + + ul { padding: 12px } + + select { + color: $ui-text-color; + background-color: $background-color; + border: 0; + + &:focus { border-color: $border-active-color } + } + + .button.button-secondary { + box-shadow: none; + color: $outlined-button-color; + border-color: $outlined-button-color; + + &:hover { background-color: $outlined-button-hover-color } + + &:active { background-color: $outlined-button-active-color } + + &:focus { background-color: $outlined-button-color } + + + } + } + + &__utilBtns { padding-top: 0 } + + &__publish .compose-form__publish-button-wrapper { box-shadow: none } + } +} + +.no-reduce-motion .spoiler-input { + transition-duration: .2s, .2s; +} + + +.poll { + &__input { + border: 2px solid $control-border-color; + width: 20px; + height: 20px; + flex: 0 0 20px; + } + + &__text input[type=text] { + color: $ui-text-color; + background: $background-color; + border: 1px solid $border-color; + padding: 8px 12px; + + &:focus { border-color: $border-active-color } + } + + &__chart { + border-radius: 0; + background: $poll-bar-color; + + &.leading { background: $poll-bar-leading-color } + } + + &__footer { + padding-top: 8px; + padding-bottom: 0; + color: $ui-text-color; + } + + &__link { color: $ui-text-color } +} + +.privacy-dropdown { + &.active .privacy-dropdown__value.active { + background: $icon-background-hover-color; + border-radius: 50%; + box-shadow: none; + + .icon-button { color: $icon-button-active-color } + } + + &__dropdown { + @include shadow-8dp; + background: $menu-background-color; + border-radius: $dialog-radius; + } + + &__option { + color: $icon-color; + padding: 8px 16px; + + &__icon { + font-size: 20px; + margin-right: 12px; + } + + &__content { + color: $secondary-text-color; + + strong { color: $ui-text-color } + } + + &.active { + background: $menu-background-active-color; + color: $icon-hover-color; + + .privacy-dropdown__option__content { + color: $secondary-text-color; + + strong { color: $ui-text-color } + } + + &:hover { + background: $menu-background-active-color; + + .privacy-dropdown__option__content { + color: $secondary-text-color; + + strong { color: $ui-text-color } + } + } + } + + &:hover { + background: $menu-background-hover-color; + color: $icon-hover-color; + + .privacy-dropdown__option__content { + color: $secondary-text-color; + + strong { color: $ui-text-color } + } + } + } +} + +.character-counter { + color: $secondary-text-color; +} + +.reply-indicator { + @include shadow-1dp; + border-radius: $card-radius; + background: $card-background-color; + padding: 16px; + + &__header { margin-bottom: 4px } + + &__display { + &-name { + color: $primary-text-color; + padding-right: 24px; + } + + &-avatar { margin-right: 8px } + } + + &__content { color: $primary-text-color } +} + +.attachment-list { + &__list a { color: $secondary-text-color } + + &.compact .fa { color: $icon-color } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/config.scss b/app/javascript/styles/mastodon-material-light/config.scss new file mode 100644 index 000000000..3bcd48014 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/config.scss @@ -0,0 +1,39 @@ +@charset "UTF-8"; + + +// Color scheme +@import 'color/mastodon-light'; + + +// Layout profile +@import 'layout/material-v1'; + + +// Material Design Icon settings +// If you want to use self-hosting font, please place MaterialIcons-Regular.woff2 file in '../../fonts' folder and configure below. +@font-face { + font-family: "Material Icons"; + src: + local("Material Icons"), + //url("https://raw.githubusercontent.com/google/material-design-icons/master/iconfont/MaterialIcons-Regular.woff2"); // GitHub + //url("https://fonts.gstatic.com/s/materialicons/v50/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2"); // Google Fonts + url("../fonts/MaterialIcons-Regular.woff2"); // Self-hosting +} + + +// Search bar hover settings +// You can enable/disable search bar floating. +/*.search__input:hover { + @include shadow-2dp; + background: $search-bar-focus-color; +}*/ + + +// Favorite icon settings +$favorite-icon: "star"; $favorite-icon-border: "star_border"; // Star +//$favorite-icon: "favorite"; $favorite-icon-border: "favorite_border"; // Heart +//$favorite-icon: "plus_one"; $favorite-icon-border: "plus_one"; // +1 + +$favorite-icon-color: #ffd600; // Star +//$favorite-icon-color: #ff4081; // Heart +//$favorite-icon-color: #db4437; // +1 \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/control.scss b/app/javascript/styles/mastodon-material-light/control.scss new file mode 100644 index 000000000..7bd251291 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/control.scss @@ -0,0 +1,69 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.react-toggle { + width: 36px; + height: 16px; + border-radius: 15px; + + &-track { + background-color: $toggle-track-color; + margin: 4px; + width: 36px; + height: 16px; + + &-check { visibility: hidden } + &-x { visibility: hidden } + } + + &-thumb { + @include shadow-1dp; + width: 20px; + height: 20px; + border: 0; + background-color: $toggle-thumb-color; + } + + &--checked { + .react-toggle{ + &-track { background-color: $toggle-track-active-color } + + &-thumb { + background-color: $toggle-thumb-active-color; + left: 22px; + } + } + + &:hover:not(.react-toggle--disabled) .react-toggle-track { background-color: $toggle-track-active-color !important } + + } + + &:hover:not(.react-toggle--disabled) .react-toggle-track { background-color: $toggle-track-color } +} + +.radio-button { + padding: 8px 0; + + &__input { + border: 2px solid $border-color; + + &.checked { + border-color: $icon-button-active-color; + background: $icon-button-active-color; + padding: 3px; + background-clip: content-box; + } + } +} + +.compose-form__sensitive-button .checkbox { + border: 2px solid $border-color; + border-radius: 2px; + + &.active { + border-color: $primary-color; + background: $primary-color; + } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/emoji-picker.scss b/app/javascript/styles/mastodon-material-light/emoji-picker.scss new file mode 100644 index 000000000..2c17701cf --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/emoji-picker.scss @@ -0,0 +1,90 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + +.emoji-picker-dropdown { + &__menu { + @include shadow-8dp; + background: $menu-background-color; + border-radius: $menu-radius; + } + + &__modifiers__menu { + @include shadow-8dp; + background: $menu-background-color; + border-radius: $menu-radius; + + button { + padding: 8px; + } + } +} + +.emoji-mart { + width: 388px !important; + font-size: 14px; + color: $ui-text-color; + + &-bar { + border: 0 solid $border-color; + + &:first-child { + background: $menu-background-color; + } + } + + &-anchors { + color: $icon-button-color; + padding: 0; + } + + &-anchor { + padding: 10px 4px; + + &-selected { + color: $icon-button-active-color; + } + + &-bar { + background-color: $tab-indicator-active-color; + } + + &:hover { + color: $icon-button-hover-color; + } + } + + &-search { + background: $menu-background-color; + + input { + outline: none; + padding: 8px; + background: $search-bar-color; + color: $ui-text-color; + border: 0; + border-radius: $search-bar-radius; + + &:focus { + @include shadow-2dp; + background: $search-bar-focus-color; + } + } + } + + &-scroll { + padding: 0 8px 8px; + background: $menu-background-color; + } + + &-category-label span { + padding: 4px 6px; + background: $menu-background-color; + } + + &-emoji:hover::before { + background-color: $icon-background-hover-color; + } + + &-no-results { color: $secondary-text-color } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/icons.scss b/app/javascript/styles/mastodon-material-light/icons.scss new file mode 100644 index 000000000..beca11a6f --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/icons.scss @@ -0,0 +1,48 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.fa.fa-users.column-link, +.fa.fa-globe.column-link, +.fa.fa-address-book.column-link, +.fa.fa-bullhorn.column-link, +.fa.fa-envelope.column-link, +.fa.fa-bookmark.column-link, +.fa.fa-star.column-link, +.fa.fa-list-ul.column-link { + &__icon.fa-fw { color: $icon-color } +} + + +.fa { vertical-align: sub } // adjust material icon font baseline to other font + +.fa.fa-times, +.fa.fa-eraser, +.fa.fa-plus { vertical-align: middle } // adjustment exception + +.fa.fa-check { vertical-align: initial } + +.fa.fa-lock { text-transform: none } + +.fa-fw { width: 16px } + +// icon in tab settings +.fa.fa-chevron-left.column-back-button__icon.fa-fw, +.text-btn.column-header__setting-btn .fa.fa-eraser { + font-size: 20px; + margin-right: 16px; +} + +.icon-with-badge__badge { + background: $badge-color; + border: none; + padding: 2px 6px; + border-radius: 12px; +} + +// favorite icon color +.star-icon.active, +.star-icon.icon-button.active.active, +.notification__favourite-icon-wrapper .star-icon, +.status__action-bar-button.star-icon.icon-button.active { color: $favorite-icon-color } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/layout/material-v1.scss b/app/javascript/styles/mastodon-material-light/layout/material-v1.scss similarity index 100% rename from app/javascript/styles/material-v2-light/layout/material-v1.scss rename to app/javascript/styles/mastodon-material-light/layout/material-v1.scss diff --git a/app/javascript/styles/mastodon-material-light/material-icons.scss b/app/javascript/styles/mastodon-material-light/material-icons.scss new file mode 100644 index 000000000..e473dfe31 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/material-icons.scss @@ -0,0 +1,146 @@ +@charset "UTF-8"; +@import 'config'; +@import 'functions'; + + +.fa { + &.fa-bars, + &.fa-navicon, + &.fa-reorder, + &.fa-globe, + &.fa-cog, + &.fa-cogs, + &.fa-gears, + &.fa-sign-out, + &.fa-search, + &.fa-times, + &.fa-times-circle, + &.fa-close, + &.fa-remove, + &.fa-chevron-down, + &.fa-ellipsis-v, + &.fa-paperclip, + &.fa-tasks, + &.fa-plus, + &.fa-unlock, + &.fa-lock, + &.fa-envelope, + &.fa-home, + &.fa-bullhorn, + &.fa-sliders, + &.fa-chevron-left, + &.fa-chevron-right, + &.fa-reply, + &.fa-reply-all, + &.fa-share-alt, + &.fa-star, + &.fa-bookmark, + &.fa-ellipsis-h, + &.fa-bell, + &.fa-eraser, + &.fa-users, + &.fa-file-text, + &.fa-user-plus, + &.fa-address-book, + &.fa-address-book-o, + &.fa-list, + &.fa-list-ul, + &.fa-eye, + &.fa-eye-slash, + &.fa-pencil, + &.fa-trash, + &.fa-play, + &.fa-external-link, + &.fa-retweet, + &.fa-link, + &.fa-pause, + &.fa-volume-up, + &.fa-volume-off, + &.fa-expand, + &.fa-download, + &.fa-arrows-alt, + &.fa-compress, + &.fa-user-times, + &.fa-check { + font-family: "Material Icons"; + } +} + +.fa { + &.fa-bars::before, &.fa-navicon::before,&.fa-reorder::before { content: "menu" } + &.fa-globe::before { content: "public" } + &.fa-cog::before, &.fa-cogs::before, &.fa-gears::before { content: "settings" } + &.fa-sign-out::before { content: "exit_to_app" } + &.fa-search::before { content: "search" } + &.fa-times::before, &.fa-times-circle::before, &.fa-close::before, &.fa-remove::before { content: "close" } + &.fa-chevron-down::before, &.fa-ellipsis-v::before { content: "more_vert" } + &.fa-paperclip::before { content: "attach_file" } + &.fa-tasks::before { content: "poll" } + &.fa-plus::before { content: "add" } + &.fa-unlock::before { content: "lock_open" } + &.fa-lock::before { content: "lock" } + &.fa-envelope::before { content: "mail" } + &.fa-home::before { content: "home" } + &.fa-bullhorn::before { content: "announcement" } + &.fa-sliders::before { content: "tune" } + &.fa-chevron-left::before { content: "arrow_back" } + &.fa-chevron-right::before { content: "arrow_forward" } + &.fa-reply::before { content: "reply" } + &.fa-reply-all::before { content: "reply_all" } + &.fa-share-alt::before { content: "share" } + &.fa-star::before { content: $favorite-icon } + &.fa-bookmark::before { content: "bookmark" } + &.fa-ellipsis-h::before { content: "more_horiz" } + &.fa-bell::before { content: "notifications" } + &.fa-eraser::before { content: "clear_all" } + &.fa-users::before { content: "people" } + &.fa-file-text::before { content: "web" } + &.fa-user-plus::before { content: "person_add" } + &.fa-address-book::before { content: "explore" } + &.fa-address-book-o::before { content: "explore" } + &.fa-list::before { content: "list" } + &.fa-list-ul::before { content: "list" } + &.fa-eye::before { content: "visibility" } + &.fa-eye-slash::before { content : "visibility_off" } + &.fa-pencil::before { content: "create" } + &.fa-trash::before { content: "delete" } + &.fa-play::before { content: "play_arrow" } + &.fa-external-link::before { content: "open_in_new" } + &.fa-retweet::before { content: "repeat" } + &.fa-link::before { content: "link" } + &.fa-pause::before { content: "pause" } + &.fa-volume-up::before { content: "volume_up" } + &.fa-volume-off::before { content: "volume_off" } + &.fa-expand::before { content: "web_asset" } + &.fa-download::before { content: "file_download" } + &.fa-arrows-alt::before { content: "fullscreen" } + &.fa-compress::before { content: "fullscreen_exit" } + &.fa-user-times::before { content: "delete" } + &.fa-check::before { content: "check" } +} + +// bookmark icon +.status__action-bar-button.icon-button, +.bookmark-icon.icon-button { + .fa.fa-bookmark::before { content: "bookmark_border" } + &.active .fa.fa-bookmark::before { content: "bookmark" } +} + +// favorite icon +.status__action-bar-button.star-icon.icon-button, +.star-icon.icon-button { + .fa.fa-star::before { content: $favorite-icon-border } + + &.active, + &.active.activate { + .fa.fa-star::before { content: $favorite-icon } + } +} + +// boost icon +.no-reduce-motion button.icon-button i.fa-retweet { + height: 18px; + width: 18px; + transition: background-position .3s steps(1); + background-image: url('data:image/svg+xml;utf8,'); +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/media.scss b/app/javascript/styles/mastodon-material-light/media.scss new file mode 100644 index 000000000..64a69a129 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/media.scss @@ -0,0 +1,99 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.media-gallery { border-radius: $card-radius } + +.media-modal__close { + align-content: center; + + &.icon-button { + background: transparent; + color: $media-icon-color; + text-align: center !important; + font-size: 24px !important; + width: 48px !important; + height: 48px !important; + border: 12px; + + &:hover { + background: $media-icon-background-hover-color; + color: $media-icon-hover-color; + } + + .fa-fw { width: 24px } + } +} + +.media-modal { + &__nav { + background: $media-icon-background-color; + color: $media-icon-color; + height: 48px; + width: 48px; + margin: auto 16px; + padding: 8px; + border-radius: 50%; + + .fa { width: 32px } + } + + &__button { + background-color: $media-page-indicator-color; + + &--active { background-color: $media-page-indicator-active-color } + } +} + +.video-player { + &__controls { + background: linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.2) 60%,transparent); + padding: 0 12px; + } + + &__seek { + &::before { + background: rgba(255,255,255,.2); + border-radius: 0; + } + + &__buffer { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__progress { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__volume { + &::before { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__current { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__time-current { margin-left: 68px } + + &__buttons button { font-size: 20px } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/mobile.scss b/app/javascript/styles/mastodon-material-light/mobile.scss new file mode 100644 index 000000000..de6f4e94c --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/mobile.scss @@ -0,0 +1,48 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.tabs-bar { + background: $top-bar-color; + + &__link { + padding: 16px 16px 12px 16px; + color: $top-bar-icon-color; + border-bottom: 4px solid transparent; + + &.active { + border-bottom: 4px solid $tab-indicator-active-color; + color: $tab-indicator-active-color; + } + + .fa { font-size: 20px } + } + + &__wrapper { + @include shadow-4dp; + background: transparent; + } +} + + +#tabs-bar__portal { overflow-y: hidden } + +.floating-action-button { + @include shadow-6dp; + background: $floating-action-button-color; + color: $floating-action-button-icon-color; + font-size: 24px; + + &:hover { background: $floating-action-button-hover-color } + + &:active, + &:focus { background: $floating-action-button-active-color } +} + +.columns-area--mobile { + + .column { margin: 0 !important } + + .search__input { padding: 16px 38px } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/modal.scss b/app/javascript/styles/mastodon-material-light/modal.scss new file mode 100644 index 000000000..7734c8dfa --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/modal.scss @@ -0,0 +1,76 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.confirmation-modal { + background: $card-background-color; + color: $ui-text-color; + border-radius: $dialog-radius; + width: 280px; + + &__container { + text-align: left; + padding: 24px; + } + + &__action-bar { + justify-content: flex-end; + background: $card-background-color; + padding: 8px; + } +} + +.actions-modal { + background: $card-background-color; + border-radius: $card-radius; + + ul li:not(:empty) a { + color: $ui-text-color; + font-size: 16px; + + &:hover { + background: $card-background-hover-color; + color: $ui-text-color; + } + } + + .dropdown-menu__separator { border-bottom-color: $border-color } + + .status { + background: $card-background-color; + border-bottom-color: $border-color; + padding-top: 12px; + padding-bottom: 12px; + + &__avatar { + left: 12px; + top: 12px; + } + } +} + +.report-modal { + background: $card-background-color; + color: $ui-text-color; + border-radius: $card-radius; + + &__target { + padding: 24px; + text-align: left; + font-weight: bold; + } + + &__container { + border-top: none; + } +} + +.embed-modal .embed-modal__container { + padding: 0 24px 24px 24px; + + .hint { + margin-bottom: 16px; + color: $secondary-text-color; + } +} \ No newline at end of file diff --git a/app/javascript/styles/mastodon-material-light/statuses.scss b/app/javascript/styles/mastodon-material-light/statuses.scss new file mode 100644 index 000000000..f60c2d859 --- /dev/null +++ b/app/javascript/styles/mastodon-material-light/statuses.scss @@ -0,0 +1,172 @@ +@charset "UTF-8"; +@import 'config'; +@import 'mixins'; + + +.status { + padding: 12px 12px 12px 70px; + border-bottom: 1px solid $border-color; + + &__expand { width: 70px } + + &__info { + font-size: 16px; + padding-right: 4px; + } + + &__relative-time { color: $info-text-color } + + &__display-name { + color: $secondary-text-color; + + strong { color: $primary-text-color } + } + + &__avatar { + left: 12px; + top: 12px; + } + + &__content { + font-size: 16px; + padding-top: 4px; + color: $primary-text-color; + + a { + color: $link-text-color; + + &.unhandled-link { color: $link-text-color } + } + + .status__content__spoiler-link { + background: transparent; + + &:hover { background: $text-button-hover-color } + + &:focus { background: $text-button-focus-color } + } + + &__spoiler-link { + border: 0; + color: $text-button-color; + } + + &__read-more-button { + font-size: 14px; + color: $text-button-color; + border-radius: $button-radius; + padding: 4px 6px; + + &:hover { + background: $text-button-hover-color; + text-decoration: none; + } + + &:focus { background: $text-button-focus-color } + } + } + + &__action-bar { + &__counter__label { + font-size: 14px; + color: $info-text-color; + } + } + + &__prepend { color: $secondary-text-color } + + &.status-direct:not(.read) { + background: transparent; + border-bottom-color: $border-color; + } +} + +.status-card { + color: $icon-color; + border-color: $border-color; + outline: none; + + &__image { + background: transparent; + + &>.fa { + font-size: 26px; + } + } + + &__title { + color: $primary-text-color; + margin-bottom: 6px; + } + + &__description { color: $secondary-text-color } + + &__actions { + &>div { + background: $media-icon-background-color; + border-radius: $button-radius; + } + + button, + a { + color: $media-icon-color; + font-size: 20px; + } + + a { bottom: auto } + } + + &.compact { + border-color: $border-color; + outline: none; + background: transparent; + + .status-card { + &__content { padding: 12px } + &__image { flex: 0 0 64px } + } + + &:hover { background-color: transparent !important } + } + + &:hover { background-color: $card-background-color } +} + +// Detailed status in mobile +.status.light { + .status { + &__display-name { color: $primary-text-color } + &__relative-time { color: $info-text-color } + &__content { color: $primary-text-color } + } + + .display-name { color: $secondary-text-color } + .display-name strong { color: $primary-text-color } +} + +.detailed-status { + background: $card-background-color; + padding: 16px; + + &__display-name { + color: $secondary-text-color; + + strong { color: $primary-text-color } + } + + &__meta { + margin-top: 16px; + color: $info-text-color; + } + + &__action-bar { + background: $card-background-color; + border-top: none; + border-bottom: 1px solid $border-color; + padding: 12px 0; + } + + &__button { + .icon-button { font-size: 20px !important } + } +} \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/_functions.scss b/app/javascript/styles/material-v1-dark/_functions.scss new file mode 100644 index 000000000..54750d029 --- /dev/null +++ b/app/javascript/styles/material-v1-dark/_functions.scss @@ -0,0 +1,12 @@ +@charset "UTF-8"; +@use "sass:string"; + + +@function to-string($value) { + @return inspect($value); +} + +// convert hex color code to svg styled color code +@function svg-color ($color) { + @return '%23' + string.slice(to-string($color), 2, 7); +} \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/account.scss b/app/javascript/styles/material-v1-dark/account.scss index 2d8f2f210..b43194729 100644 --- a/app/javascript/styles/material-v1-dark/account.scss +++ b/app/javascript/styles/material-v1-dark/account.scss @@ -5,7 +5,7 @@ .account { border-bottom: 1px solid $border-color; - .account__display-name, + .account__display-name { color: $primary-text-color } .account__display-name strong { color: $secondary-text-color } &__avatar { @@ -13,11 +13,15 @@ width: 40px; height: 40px; - &-overlay-base { - border-radius: 50%; - width: 44px; - height: 44px; - background-size: 44px; + &-overlay { + &-base { + border-radius: 50%; + width: 44px; + height: 44px; + background-size: 44px; + } + + &-overlay { border-radius: $avater-radius } } } @@ -109,24 +113,24 @@ } &__section-headline { - background: $card-background-color; + background: $text-tab-background-color; border-bottom: 1px solid $border-color; a { padding: 16px 0; - color: $secondary-text-color; + color: $text-tab-indicator-color; &.active { - color: $tab-indicator-color; - border-bottom: 4px solid $tab-indicator-color; + color: $text-tab-indicator-active-color; + border-bottom: 4px solid $text-tab-indicator-active-color; - &:before, + &::before, &:after { border: none } - &:focus { background: $tab-indicator-background-focus-color } + &:focus { background: $text-tab-indicator-background-focus-color } } - &:hover { background: $tab-indicator-background-hover-color } + &:hover { background: $text-tab-indicator-background-hover-color } } } } diff --git a/app/javascript/styles/material-v1-dark/button.scss b/app/javascript/styles/material-v1-dark/button.scss index 6bb6bfa29..38fd1a3c1 100644 --- a/app/javascript/styles/material-v1-dark/button.scss +++ b/app/javascript/styles/material-v1-dark/button.scss @@ -23,6 +23,17 @@ } } + &.overlayed { + border-radius: 50%; + background: $media-icon-background-color; + color: $media-icon-color; + + &:hover { + background: $media-icon-background-color; + color: $media-icon-hover-color; + } + } + &:hover { color: $icon-button-hover-color; background-color: $icon-background-hover-color; @@ -75,4 +86,10 @@ &:hover { background: $text-button-hover-color } &:focus { background: $text-button-focus-color } +} + +.spoiler-button__overlay__label { + background: $media-icon-background-color; + border-radius: $button-radius; + color: $media-icon-color; } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/color/mastodon-light.scss b/app/javascript/styles/material-v1-dark/color/mastodon-light.scss deleted file mode 100644 index 62a064b87..000000000 --- a/app/javascript/styles/material-v1-dark/color/mastodon-light.scss +++ /dev/null @@ -1,106 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #2b90d9; -$secondary-color: #2b90d9; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #000000; -$secondary-text-color: #5f6368; -$ui-text-color: #202124; -$section-text-color: $primary-color; -$info-text-color: #5e5e5e; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #217aba; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $primary-text-color; - -// Background-color -$background-color: #eff3f5; -$menu-background-color: $background-color; -$menu-background-hover-color: darken($background-color, 6%); -$menu-background-active-color: darken($background-color, 10%); -$menu-background-active-hover-color: darken($background-color, 16%); -$card-background-color: #ffffff; -$card-background-hover-color: darken($card-background-color, 6%); -$card-background-inactive-color: darken($card-background-color, 10%); -$list-background-color: #ffffff; -$list-background-hover-color: darken($list-background-color, 6%); -$list-background-active-color: darken($list-background-color, 10%); -$list-background-inactive-color: darken($list-background-color, 10%); -$verified-background-color: lighten($verified-color, 20%); - -// Chip color -$contained-chip-color: #e0e0e0; -$contained-chip-hover-color: darken($contained-chip-color, 6%); -$contained-chip-selected-color: darken($contained-chip-color, 12%); -$outlined-chip-color: #ffffff; -$outlined-chip-hover-color: darken($outlined-chip-color, 6%); -$outlined-chip-selected-color: darken($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #282c37; -$icon-hover-color: darken($icon-color, 30%); -$icon-background-hover-color: darken($background-color, 4%); -$icon-background-active-color: darken($background-color, 8%); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: $icon-color; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $icon-hover-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: lighten($text-button-color, 36%); -$text-button-focus-color: lighten($text-button-color, 30%); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: $primary-color; -$toggle-track-active-color: lighten($primary-color, 26%); - -// Border color -$border-color: #dadce0; -$border-active-color: darken($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: #ccd7e0; -$scroll-bar-thumb-hover-color: darken($scroll-bar-thumb-color, 10%); -$scroll-bar-thumb-active-color: darken($scroll-bar-thumb-color, 18%); - -// App bar color -$top-bar-color: #ffffff; -$search-bar-color: #d9e1e8; -$search-bar-focus-color: $background-color; - -// Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: lighten($tab-indicator-color, 36%); -$tab-indicator-background-focus-color: lighten($tab-indicator-color, 30%); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/color/v1-dark.scss b/app/javascript/styles/material-v1-dark/color/v1-dark.scss index f6168a35e..a9289ce25 100644 --- a/app/javascript/styles/material-v1-dark/color/v1-dark.scss +++ b/app/javascript/styles/material-v1-dark/color/v1-dark.scss @@ -60,7 +60,7 @@ $top-bar-icon-active-color: lighten($top-bar-icon-color, 18%); $media-icon-color: transparentize(#ffffff, 0.4); $media-icon-hover-color: transparentize(#ffffff, 0.2); $media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); +$media-icon-background-hover-color: transparentize(#000000, 0.8); $control-border-color: $icon-color; // Button color @@ -97,11 +97,33 @@ $scroll-bar-thumb-hover-color: lighten($background-color, 30%); $scroll-bar-thumb-active-color: lighten($background-color, 38%); // App bar color -$top-bar-color: #2196f3; +$top-bar-color: #1565C0; $search-bar-color: lighten($background-color, 6%); $search-bar-focus-color: #ffffff; // Tab color $tab-indicator-color: $top-bar-icon-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file +$tab-indicator-active-color: $top-bar-icon-color; +$tab-background-color: $top-bar-color; +$tab-indicator-background-hover-color: transparentize($tab-indicator-active-color, 0.9); +$tab-indicator-background-focus-color: transparentize($tab-indicator-active-color, 0.8); +$text-tab-indicator-color: $secondary-text-color; +$text-tab-indicator-active-color: $top-bar-color; +$text-tab-background-color: #1e1e1e; +$text-tab-indicator-background-hover-color: transparentize($text-tab-indicator-active-color, 0.9); +$text-tab-indicator-background-focus-color: transparentize($text-tab-indicator-active-color, 0.8); + +// Media indicator color +$media-page-indicator-color: #9e9e9e; +$media-page-indicator-active-color: #e6e6e6; + +// Poll chart color +$poll-bar-leading-color: $primary-color; +$poll-bar-color: lighten($poll-bar-leading-color, 30%); + +// Contents color in read status +$read-primary-text-color: transparentize($primary-text-color, 0.3); +$read-secondary-text-color: transparentize($secondary-text-color, 0.3); +$read-ui-text-color: transparentize($ui-text-color, 0.3); +$read-poll-bar-leading-color: transparentize($poll-bar-leading-color, 0.3); +$read-poll-bar-color: transparentize($poll-bar-color, 0.3); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/color/v1-light.scss b/app/javascript/styles/material-v1-dark/color/v1-light.scss deleted file mode 100644 index 3a09d2a5d..000000000 --- a/app/javascript/styles/material-v1-dark/color/v1-light.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #000000; -$secondary-text-color: #5f6368; -$ui-text-color: #202124; -$inverted-text-color: #ffffff; -$section-text-color: $primary-color; -$info-text-color: #5e5e5e; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $inverted-text-color; -$search-bar-text-color: $primary-text-color; - -// Background-color -$background-color: #fafafa; -$menu-background-color: #ffffff; -$menu-background-hover-color: darken($menu-background-color, 6%); -$menu-background-active-color: darken($menu-background-color, 10%); -$menu-background-active-hover-color: darken($menu-background-color, 16%); -$card-background-color: #ffffff; -$card-background-hover-color: darken($card-background-color, 6%); -$card-background-inactive-color: darken($card-background-color, 10%); -$list-background-color: #ffffff; -$list-background-hover-color: darken($list-background-color, 6%); -$list-background-active-color: darken($list-background-color, 10%); -$list-background-inactive-color: darken($list-background-color, 10%); -$verified-background-color: lighten($verified-color, 20%); - -// Chip color -$contained-chip-color: #e0e0e0; -$contained-chip-hover-color: darken($contained-chip-color, 6%); -$contained-chip-selected-color: darken($contained-chip-color, 12%); -$outlined-chip-color: #ffffff; -$outlined-chip-hover-color: darken($outlined-chip-color, 6%); -$outlined-chip-selected-color: darken($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #757575; -$icon-hover-color: darken($icon-color, 30%); -$icon-background-hover-color: transparentize(#000000, 0.9); -$icon-background-active-color: transparentize(#000000, 0.8); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: #ffffff; -$top-bar-icon-hover-color: darken($top-bar-icon-color, 10%); -$top-bar-icon-active-color: darken($top-bar-icon-color, 18%); -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #dadce0; -$border-active-color: darken($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: darken($background-color, 20%); -$scroll-bar-thumb-hover-color: darken($scroll-bar-thumb-color, 10%); -$scroll-bar-thumb-active-color: darken($scroll-bar-thumb-color, 18%); - -// App bar color -$top-bar-color: #2196f3; -$search-bar-color: darken($background-color, 6%); -$search-bar-focus-color: $background-color; - -// Tab color -$tab-indicator-color: $top-bar-icon-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/color/v2-dark.scss b/app/javascript/styles/material-v1-dark/color/v2-dark.scss deleted file mode 100644 index aae145b3b..000000000 --- a/app/javascript/styles/material-v1-dark/color/v2-dark.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #ffffff; -$secondary-text-color: #9aa0a6; -$ui-text-color: #e8eaed; -$inverted-text-color: #000000; -$section-text-color: $primary-color; -$info-text-color: #9aa0a6; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $inverted-text-color; - -// Background-color -$background-color: #121212; -$menu-background-color: #1e1e1e; -$menu-background-hover-color: lighten($menu-background-color, 6%); -$menu-background-active-color: lighten($menu-background-color, 10%); -$menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #1e1e1e; -$card-background-hover-color: lighten($card-background-color, 6%); -$card-background-inactive-color: lighten($card-background-color, 10%); -$list-background-color: #1e1e1e; -$list-background-hover-color: lighten($list-background-color, 6%); -$list-background-active-color: lighten($list-background-color, 10%); -$list-background-inactive-color: lighten($list-background-color, 10%); -$verified-background-color: darken($verified-color, 20%); - -// Chip color -$contained-chip-color: #2e2e2e; -$contained-chip-hover-color: lighten($contained-chip-color, 6%); -$contained-chip-selected-color: lighten($contained-chip-color, 12%); -$outlined-chip-color: #1e1e1e; -$outlined-chip-hover-color: lighten($outlined-chip-color, 6%); -$outlined-chip-selected-color: lighten($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #e2e2e3; -$icon-hover-color: lighten($icon-color, 30%); -$icon-background-hover-color: transparentize(#ffffff, 0.8); -$icon-background-active-color: transparentize(#ffffff, 0.7); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: $icon-color; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $primary-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: #1e1e1e; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #5f6368; -$border-active-color: lighten($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: lighten($background-color, 20%); -$scroll-bar-thumb-hover-color: lighten($scroll-bar-thumb-color, 10%); -$scroll-bar-thumb-active-color: lighten($scroll-bar-thumb-color, 18%); - -// App bar color -$top-bar-color: #272727; -$search-bar-color: lighten($top-bar-color, 6%); -$search-bar-focus-color: #ffffff; - -// Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/color/v2-light.scss b/app/javascript/styles/material-v1-dark/color/v2-light.scss deleted file mode 100644 index 99d502543..000000000 --- a/app/javascript/styles/material-v1-dark/color/v2-light.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #000000; -$secondary-text-color: #5f6368; -$ui-text-color: #202124; -$inverted-text-color: #ffffff; -$section-text-color: $primary-color; -$info-text-color: #5e5e5e; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $primary-text-color; - -// Background-color -$background-color: #ffffff; -$menu-background-color: $background-color; -$menu-background-hover-color: darken($menu-background-color, 6%); -$menu-background-active-color: darken($menu-background-color, 10%); -$menu-background-active-hover-color: darken($menu-background-color, 16%); -$card-background-color: $background-color; -$card-background-hover-color: darken($card-background-color, 6%); -$card-background-inactive-color: darken($card-background-color, 10%); -$list-background-color: $background-color; -$list-background-hover-color: darken($list-background-color, 6%); -$list-background-active-color: darken($list-background-color, 10%); -$list-background-inactive-color: darken($list-background-color, 10%); -$verified-background-color: lighten($verified-color, 20%); - -// Chip color -$contained-chip-color: #e0e0e0; -$contained-chip-hover-color: darken($contained-chip-color, 6%); -$contained-chip-selected-color: darken($contained-chip-color, 12%); -$outlined-chip-color: #ffffff; -$outlined-chip-hover-color: darken($outlined-chip-color, 6%); -$outlined-chip-selected-color: darken($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #757575; -$icon-hover-color: darken($icon-color, 30%); -$icon-background-hover-color: transparentize(#000000, 0.9); -$icon-background-active-color: transparentize(#000000, 0.8); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: $icon-color; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $primary-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: #ffffff; -$floating-action-button-hover-color: darken($floating-action-button-color, 6%); -$floating-action-button-active-color: darken($floating-action-button-color, 10%); -$floating-action-button-icon-color: $secondary-color; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #dadce0; -$border-active-color: darken($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: darken($background-color, 20%); -$scroll-bar-thumb-hover-color: darken($background-color, 30%); -$scroll-bar-thumb-active-color: darken($background-color, 38%); - -// App bar color -$top-bar-color: $background-color; -$search-bar-color: darken($background-color, 6%); -$search-bar-focus-color: $background-color; - -// Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/columns.scss b/app/javascript/styles/material-v1-dark/columns.scss index dc61167dc..689028581 100644 --- a/app/javascript/styles/material-v1-dark/columns.scss +++ b/app/javascript/styles/material-v1-dark/columns.scss @@ -22,6 +22,8 @@ color: $top-bar-text-color; } + &>.column-header__back-button { color: $top-bar-icon-color } + &.active { .column-header__icon { color: $secondary-color; @@ -62,14 +64,29 @@ &__setting-btn { color: $icon-button-color; + padding: 8px 0; &:hover { color: $icon-button-hover-color; - background: $icon-background-hover-color; + text-decoration: none; } + + .fa { font-size: 20px } + + span { vertical-align: middle } } - &__setting-arrows { font-size: 16px } + &__setting-arrows { + font-size: 16px; + border-bottom: 8px; + + .column-header__setting-btn { + padding: 8px; + border-radius: 50%; + + &:last-child { padding-right: 8px } + } + } &__wrapper { @include shadow-4dp; @@ -80,12 +97,13 @@ &.active { @include shadow-4dp; - &:before { background: transparent } + &::before { background: transparent } } } &__collapsible { color: $ui-text-color; + background: $card-background-color; border-top: 1px solid $border-color; &-inner { @@ -98,7 +116,7 @@ &__back-button { background: $top-bar-color; - color: $icon-color; + color: $top-bar-icon-color; padding: 8px; margin: auto 0; border-radius: 50%; @@ -156,6 +174,8 @@ margin-bottom: 0; margin-top: 8px; } + + &__row .text-btn { margin-bottom: 0 } } .column-back-button { @@ -163,6 +183,8 @@ background: $top-bar-color; color: $top-bar-icon-color; padding: 16px; + + span { visibility: hidden } // hide "back" string } .column-inline-form { @@ -222,17 +244,31 @@ } } +// read status in notification column .muted { .status { &__content { - color: $primary-text-color; + color: $read-primary-text-color; - p { color: $primary-text-color } + p { color: $read-primary-text-color } - a { color: $secondary-text-color } + a { color: $read-secondary-text-color } } - &__display-name strong { color: $primary-text-color } + &__display-name strong { color: $read-primary-text-color } + } + + .poll { + color: $read-primary-text-color; + + &__chart { + background: $read-poll-bar-color; + + &.leading { background: $read-poll-bar-leading-color } + } + + &__footer, + &__link { color: $read-ui-text-color } } } @@ -267,7 +303,42 @@ a { color: $ui-text-color } p a { color: $link-text-color } + } + &__trends { + background: $background-color; + margin-bottom: 0; + + h4 { + color: $section-text-color; + padding: 12px 16px; + border-top: 1px solid $border-color; + border-bottom: none; + } + } +} + +.trends__item { + padding: 16px; + border-bottom: none; + + &__name { + color: $secondary-text-color; + font-size: 12px; + + a { color: $primary-text-color } + } + + &__current { + padding-right: 16px; + margin-left: 4px; + color: $secondary-text-color; + } + + &__sparkline path { + stroke: $primary-color; + fill: $primary-color; + fill-opacity: 0.5; } } @@ -330,22 +401,22 @@ .notification { &__filter-bar { - background: $top-bar-color; + background: $tab-background-color; border-bottom: 1px solid $border-color; z-index: 1; button { - background: $top-bar-color; - color: $top-bar-icon-color; + background: $tab-background-color; + color: $tab-indicator-color; font-size: 16px; span { font-size: 14px } &.active { - color: $tab-indicator-color; - border-bottom: 4px solid $tab-indicator-color; + color: $tab-indicator-active-color; + border-bottom: 4px solid $tab-indicator-active-color; - &:before, + &::before, &:after { border: none } &:focus { background: $tab-indicator-background-focus-color } @@ -370,6 +441,7 @@ .icon-button.disabled { color: $disabled-icon-color } } +// read notification .notification.notification-favourite.focusable, .notification.notification-follow.focusable { background: $list-background-inactive-color } @@ -384,8 +456,6 @@ .react-swipeable-view-container { height: auto } -.tabs-bar__wrapper { background: transparent } - .attachment-list__list a { color: $secondary-text-color } .focusable { background: transparent !important } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/components.scss b/app/javascript/styles/material-v1-dark/components.scss index f1e594e3c..92d2801f4 100644 --- a/app/javascript/styles/material-v1-dark/components.scss +++ b/app/javascript/styles/material-v1-dark/components.scss @@ -149,7 +149,7 @@ &__item a { font-size: 14px; - padding: 9px 16px; + padding: 8px 16px; background: $menu-background-color; color: $menu-text-color; @@ -166,11 +166,33 @@ } .compose-form { - .autosuggest-textarea__textarea { - background: $card-background-color; - color: $ui-text-color; + .autosuggest-textarea { + &__textarea { + background: $card-background-color; + color: $ui-text-color; + + &::placeholder { color: $tips-text-color } + } - &::placeholder { color: $tips-text-color } + &__suggestions { + @include shadow-1dp; + background: $menu-background-color; + color: $ui-text-color; + border-radius: $card-radius; + font-size: 16px; + padding: 8px 0; + + &__item { + padding: 8px; + border-radius: 0; + + &:hover { background: $menu-background-hover-color } + + &.selected, + &:focus, + &:active { background: $menu-background-active-color } + } + } } .spoiler-input__input { @@ -234,20 +256,42 @@ } } -.poll__input { - border: 2px solid $control-border-color; - width: 20px; - height: 20px; - flex: 0 0 20px; +.no-reduce-motion .spoiler-input { + transition-duration: .2s, .2s; } -.poll__text input[type=text] { - color: $ui-text-color; - background: $background-color; - border: 1px solid $border-color; - padding: 8px 12px; - &:focus { border-color: $border-active-color } +.poll { + &__input { + border: 2px solid $control-border-color; + width: 20px; + height: 20px; + flex: 0 0 20px; + } + + &__text input[type=text] { + color: $ui-text-color; + background: $background-color; + border: 1px solid $border-color; + padding: 8px 12px; + + &:focus { border-color: $border-active-color } + } + + &__chart { + border-radius: 0; + background: $poll-bar-color; + + &.leading { background: $poll-bar-leading-color } + } + + &__footer { + padding-top: 8px; + padding-bottom: 0; + color: $ui-text-color; + } + + &__link { color: $ui-text-color } } .privacy-dropdown { @@ -336,4 +380,10 @@ } &__content { color: $primary-text-color } +} + +.attachment-list { + &__list a { color: $secondary-text-color } + + &.compact .fa { color: $icon-color } } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/config.scss b/app/javascript/styles/material-v1-dark/config.scss index ee50da02f..c8cc5eef4 100644 --- a/app/javascript/styles/material-v1-dark/config.scss +++ b/app/javascript/styles/material-v1-dark/config.scss @@ -30,32 +30,10 @@ // Favorite icon settings -// If you exclude 'material-icons.scss', please comment out this section. -.fa { - &.fa-star:before { content: "star" } // Star - //&.fa-star:before { content: "favorite" } // Heart - //&.fa-star:before { content: "plus_one" } // +1 -} +$favorite-icon: "star"; $favorite-icon-border: "star_border"; // Star +//$favorite-icon: "favorite"; $favorite-icon-border: "favorite_border"; // Heart +//$favorite-icon: "plus_one"; $favorite-icon-border: "plus_one"; // +1 -.star-icon.active, -.star-icon.icon-button.active.active, -.notification__favourite-icon-wrapper .star-icon, -.status__action-bar-button.star-icon.icon-button.active { - color: #ffd600; // Star - //color: #ff4081; // Heart - //color: #db4437; // +1 -} - -.status__action-bar-button.star-icon.icon-button, -.star-icon.icon-button { - .fa.fa-star:before { content: "star_border" } // Star - //.fa.fa-star:before { content: "favorite_border" } // Heart - //.fa.fa-star:before { content: "plus_one" } // +1 - - &.active, - &.active.activate { - .fa.fa-star:before { content: "star" } // Star - //.fa.fa-star:before { content: "favorite" } // Heart - //.fa.fa-star:before { content: "plus_one" } // +1 - } -} \ No newline at end of file +$favorite-icon-color: #ffd600; // Star +//$favorite-icon-color: #ff4081; // Heart +//$favorite-icon-color: #db4437; // +1 \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/emoji-picker.scss b/app/javascript/styles/material-v1-dark/emoji-picker.scss index d57c5c041..2c17701cf 100644 --- a/app/javascript/styles/material-v1-dark/emoji-picker.scss +++ b/app/javascript/styles/material-v1-dark/emoji-picker.scss @@ -46,7 +46,7 @@ } &-bar { - background-color: $tab-indicator-color; + background-color: $tab-indicator-active-color; } &:hover { @@ -63,7 +63,7 @@ background: $search-bar-color; color: $ui-text-color; border: 0; - border-radius: $bar-radius; + border-radius: $search-bar-radius; &:focus { @include shadow-2dp; @@ -82,7 +82,7 @@ background: $menu-background-color; } - &-emoji:hover:before { + &-emoji:hover::before { background-color: $icon-background-hover-color; } diff --git a/app/javascript/styles/material-v1-dark/icons.scss b/app/javascript/styles/material-v1-dark/icons.scss index 6778e3d2c..beca11a6f 100644 --- a/app/javascript/styles/material-v1-dark/icons.scss +++ b/app/javascript/styles/material-v1-dark/icons.scss @@ -15,16 +15,21 @@ } -.fa { vertical-align: sub } //マテリアルアイコンを文字の高さにそろえる +.fa { vertical-align: sub } // adjust material icon font baseline to other font .fa.fa-times, -.fa.fa-eraser { vertical-align: middle } //↑の例外 +.fa.fa-eraser, +.fa.fa-plus { vertical-align: middle } // adjustment exception + +.fa.fa-check { vertical-align: initial } .fa.fa-lock { text-transform: none } .fa-fw { width: 16px } -.fa.fa-chevron-left.column-back-button__icon.fa-fw { +// icon in tab settings +.fa.fa-chevron-left.column-back-button__icon.fa-fw, +.text-btn.column-header__setting-btn .fa.fa-eraser { font-size: 20px; margin-right: 16px; } @@ -34,4 +39,10 @@ border: none; padding: 2px 6px; border-radius: 12px; -} \ No newline at end of file +} + +// favorite icon color +.star-icon.active, +.star-icon.icon-button.active.active, +.notification__favourite-icon-wrapper .star-icon, +.status__action-bar-button.star-icon.icon-button.active { color: $favorite-icon-color } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/layout/material-v2.scss b/app/javascript/styles/material-v1-dark/layout/material-v2.scss deleted file mode 100644 index 86d2c496f..000000000 --- a/app/javascript/styles/material-v1-dark/layout/material-v2.scss +++ /dev/null @@ -1,65 +0,0 @@ -@charset "UTF-8"; -@import '../mixins'; - - -// Navigation bar radius -$nav-bar-radius: 8px; - - -// Search bar radius -$search-bar-radius: 8px; - - -// Bar radius settings -$bar-radius: 0; -//$bar-radius: 8px; - - -// Button radius settings -$button-radius: 8px; - - -// Card radius settings -$card-radius: 8px; - - -// Dialog radius settings -$dialog-radius: 8px; - - -// Menu radius settings -$menu-radius: 8px; - - -// Navigation drawer item settings -$nav-drawer-item-radius: 8px; // corner rounded -//$nav-drawer-item-radius: 32px; // full rounded -//$nav-drawer-item-radius: 32px 0 0 32px; // left rounded - - -// Avater cropping settings -$avater-radius: 50%; // Rounded cropping -//$avater-radius: 8px // Material v2 square - - -// Chip settings -// If you want to use contained-chip, please comment out below. -.reactions-bar__item { - background: $outlined-chip-color !important; - border: 1px solid $border-color !important; - - &.active { background-color: $outlined-chip-selected-color !important } - - &:hover { background: $outlined-chip-hover-color !important } -} -.relationship-tag, -.account-role { - background: $outlined-chip-color !important; - border: 1px solid $border-color !important; -} - - -// Button shadow -// If you want to use material v2 styled non-shadow button, please comment out this section. -.button, -.compose-form .compose-form__publish-button-wrapper { @include shadow-2dp } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/material-icons.scss b/app/javascript/styles/material-v1-dark/material-icons.scss index 52b959485..e473dfe31 100644 --- a/app/javascript/styles/material-v1-dark/material-icons.scss +++ b/app/javascript/styles/material-v1-dark/material-icons.scss @@ -1,5 +1,6 @@ @charset "UTF-8"; @import 'config'; +@import 'functions'; .fa { @@ -31,6 +32,7 @@ &.fa-chevron-right, &.fa-reply, &.fa-reply-all, + &.fa-share-alt, &.fa-star, &.fa-bookmark, &.fa-ellipsis-h, @@ -46,51 +48,99 @@ &.fa-eye, &.fa-eye-slash, &.fa-pencil, - &.fa-trash { + &.fa-trash, + &.fa-play, + &.fa-external-link, + &.fa-retweet, + &.fa-link, + &.fa-pause, + &.fa-volume-up, + &.fa-volume-off, + &.fa-expand, + &.fa-download, + &.fa-arrows-alt, + &.fa-compress, + &.fa-user-times, + &.fa-check { font-family: "Material Icons"; } } .fa { - &.fa-bars:before, &.fa-navicon:before,&.fa-reorder:before { content: "menu" } - &.fa-globe:before { content: "public" } - &.fa-cog:before, &.fa-cogs:before, &.fa-gears:before { content: "settings" } - &.fa-sign-out:before { content: "exit_to_app" } - &.fa-search:before { content: "search" } - &.fa-times:before, &.fa-times-circle:before, &.fa-close:before, &.fa-remove:before { content: "close" } - &.fa-chevron-down:before, &.fa-ellipsis-v:before { content: "more_vert" } - &.fa-paperclip:before { content: "attach_file" } - &.fa-tasks:before { content: "poll" } - &.fa-plus:before { content: "add" } - &.fa-unlock:before { content: "lock_open" } - &.fa-lock:before { content: "lock" } - &.fa-envelope:before { content: "mail" } - &.fa-home:before { content: "home" } - &.fa-bullhorn:before { content: "announcement" } - &.fa-sliders:before { content: "tune" } - &.fa-chevron-left:before { content: "arrow_back" } - &.fa-chevron-right:before { content: "arrow_forward" } - &.fa-reply:before { content: "reply" } - &.fa-reply-all:before { content: "reply_all" } - &.fa-bookmark:before { content: "bookmark" } - &.fa-ellipsis-h:before { content: "more_horiz" } - &.fa-bell:before { content: "notifications" } - &.fa-eraser:before { content: "clear_all" } - &.fa-users:before { content: "people" } - &.fa-file-text:before { content: "web" } - &.fa-user-plus:before { content: "person_add" } - &.fa-address-book:before { content: "explore" } - &.fa-address-book-o:before { content: "explore" } - &.fa-list:before { content: "list" } - &.fa-list-ul:before { content: "list" } - &.fa-eye:before { content: "visibility" } - &.fa-eye-slash:before { content : "visibility_off" } - &.fa-pencil:before { content: "create" } - &.fa-trash:before { content: "delete" } + &.fa-bars::before, &.fa-navicon::before,&.fa-reorder::before { content: "menu" } + &.fa-globe::before { content: "public" } + &.fa-cog::before, &.fa-cogs::before, &.fa-gears::before { content: "settings" } + &.fa-sign-out::before { content: "exit_to_app" } + &.fa-search::before { content: "search" } + &.fa-times::before, &.fa-times-circle::before, &.fa-close::before, &.fa-remove::before { content: "close" } + &.fa-chevron-down::before, &.fa-ellipsis-v::before { content: "more_vert" } + &.fa-paperclip::before { content: "attach_file" } + &.fa-tasks::before { content: "poll" } + &.fa-plus::before { content: "add" } + &.fa-unlock::before { content: "lock_open" } + &.fa-lock::before { content: "lock" } + &.fa-envelope::before { content: "mail" } + &.fa-home::before { content: "home" } + &.fa-bullhorn::before { content: "announcement" } + &.fa-sliders::before { content: "tune" } + &.fa-chevron-left::before { content: "arrow_back" } + &.fa-chevron-right::before { content: "arrow_forward" } + &.fa-reply::before { content: "reply" } + &.fa-reply-all::before { content: "reply_all" } + &.fa-share-alt::before { content: "share" } + &.fa-star::before { content: $favorite-icon } + &.fa-bookmark::before { content: "bookmark" } + &.fa-ellipsis-h::before { content: "more_horiz" } + &.fa-bell::before { content: "notifications" } + &.fa-eraser::before { content: "clear_all" } + &.fa-users::before { content: "people" } + &.fa-file-text::before { content: "web" } + &.fa-user-plus::before { content: "person_add" } + &.fa-address-book::before { content: "explore" } + &.fa-address-book-o::before { content: "explore" } + &.fa-list::before { content: "list" } + &.fa-list-ul::before { content: "list" } + &.fa-eye::before { content: "visibility" } + &.fa-eye-slash::before { content : "visibility_off" } + &.fa-pencil::before { content: "create" } + &.fa-trash::before { content: "delete" } + &.fa-play::before { content: "play_arrow" } + &.fa-external-link::before { content: "open_in_new" } + &.fa-retweet::before { content: "repeat" } + &.fa-link::before { content: "link" } + &.fa-pause::before { content: "pause" } + &.fa-volume-up::before { content: "volume_up" } + &.fa-volume-off::before { content: "volume_off" } + &.fa-expand::before { content: "web_asset" } + &.fa-download::before { content: "file_download" } + &.fa-arrows-alt::before { content: "fullscreen" } + &.fa-compress::before { content: "fullscreen_exit" } + &.fa-user-times::before { content: "delete" } + &.fa-check::before { content: "check" } } +// bookmark icon .status__action-bar-button.icon-button, .bookmark-icon.icon-button { - .fa.fa-bookmark:before { content: "bookmark_border" } - &.active .fa.fa-bookmark:before { content: "bookmark" } + .fa.fa-bookmark::before { content: "bookmark_border" } + &.active .fa.fa-bookmark::before { content: "bookmark" } +} + +// favorite icon +.status__action-bar-button.star-icon.icon-button, +.star-icon.icon-button { + .fa.fa-star::before { content: $favorite-icon-border } + + &.active, + &.active.activate { + .fa.fa-star::before { content: $favorite-icon } + } +} + +// boost icon +.no-reduce-motion button.icon-button i.fa-retweet { + height: 18px; + width: 18px; + transition: background-position .3s steps(1); + background-image: url('data:image/svg+xml;utf8,'); } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/media.scss b/app/javascript/styles/material-v1-dark/media.scss index 74dfd8dcc..64a69a129 100644 --- a/app/javascript/styles/material-v1-dark/media.scss +++ b/app/javascript/styles/material-v1-dark/media.scss @@ -26,13 +26,74 @@ } } -.icon-button.overlayed { - border-radius: 50%; - background: $media-icon-background-color; - color: $media-icon-color; - - &:hover { +.media-modal { + &__nav { background: $media-icon-background-color; - color: $media-icon-hover-color; + color: $media-icon-color; + height: 48px; + width: 48px; + margin: auto 16px; + padding: 8px; + border-radius: 50%; + + .fa { width: 32px } } + + &__button { + background-color: $media-page-indicator-color; + + &--active { background-color: $media-page-indicator-active-color } + } +} + +.video-player { + &__controls { + background: linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.2) 60%,transparent); + padding: 0 12px; + } + + &__seek { + &::before { + background: rgba(255,255,255,.2); + border-radius: 0; + } + + &__buffer { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__progress { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__volume { + &::before { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__current { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__time-current { margin-left: 68px } + + &__buttons button { font-size: 20px } } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-dark/mobile.scss b/app/javascript/styles/material-v1-dark/mobile.scss index 448f80585..de6f4e94c 100644 --- a/app/javascript/styles/material-v1-dark/mobile.scss +++ b/app/javascript/styles/material-v1-dark/mobile.scss @@ -12,14 +12,17 @@ border-bottom: 4px solid transparent; &.active { - border-bottom: 4px solid $tab-indicator-color; - color: $tab-indicator-color; + border-bottom: 4px solid $tab-indicator-active-color; + color: $tab-indicator-active-color; } .fa { font-size: 20px } } - &__wrapper { @include shadow-4dp } + &__wrapper { + @include shadow-4dp; + background: transparent; + } } diff --git a/app/javascript/styles/material-v1-dark/modal.scss b/app/javascript/styles/material-v1-dark/modal.scss index 40710fe43..7734c8dfa 100644 --- a/app/javascript/styles/material-v1-dark/modal.scss +++ b/app/javascript/styles/material-v1-dark/modal.scss @@ -29,10 +29,25 @@ color: $ui-text-color; font-size: 16px; - &:hover { background: $card-background-hover-color } + &:hover { + background: $card-background-hover-color; + color: $ui-text-color; + } } .dropdown-menu__separator { border-bottom-color: $border-color } + + .status { + background: $card-background-color; + border-bottom-color: $border-color; + padding-top: 12px; + padding-bottom: 12px; + + &__avatar { + left: 12px; + top: 12px; + } + } } .report-modal { diff --git a/app/javascript/styles/material-v1-dark/statuses.scss b/app/javascript/styles/material-v1-dark/statuses.scss index c569b3b92..f60c2d859 100644 --- a/app/javascript/styles/material-v1-dark/statuses.scss +++ b/app/javascript/styles/material-v1-dark/statuses.scss @@ -73,6 +73,8 @@ } } + &__prepend { color: $secondary-text-color } + &.status-direct:not(.read) { background: transparent; border-bottom-color: $border-color; @@ -99,9 +101,25 @@ &__description { color: $secondary-text-color } + &__actions { + &>div { + background: $media-icon-background-color; + border-radius: $button-radius; + } + + button, + a { + color: $media-icon-color; + font-size: 20px; + } + + a { bottom: auto } + } + &.compact { border-color: $border-color; outline: none; + background: transparent; .status-card { &__content { padding: 12px } @@ -114,8 +132,16 @@ &:hover { background-color: $card-background-color } } +// Detailed status in mobile .status.light { - .display-name span { color: $info-text-color } + .status { + &__display-name { color: $primary-text-color } + &__relative-time { color: $info-text-color } + &__content { color: $primary-text-color } + } + + .display-name { color: $secondary-text-color } + .display-name strong { color: $primary-text-color } } .detailed-status { diff --git a/app/javascript/styles/material-v1-light/_functions.scss b/app/javascript/styles/material-v1-light/_functions.scss new file mode 100644 index 000000000..54750d029 --- /dev/null +++ b/app/javascript/styles/material-v1-light/_functions.scss @@ -0,0 +1,12 @@ +@charset "UTF-8"; +@use "sass:string"; + + +@function to-string($value) { + @return inspect($value); +} + +// convert hex color code to svg styled color code +@function svg-color ($color) { + @return '%23' + string.slice(to-string($color), 2, 7); +} \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/account.scss b/app/javascript/styles/material-v1-light/account.scss index 2d8f2f210..b43194729 100644 --- a/app/javascript/styles/material-v1-light/account.scss +++ b/app/javascript/styles/material-v1-light/account.scss @@ -5,7 +5,7 @@ .account { border-bottom: 1px solid $border-color; - .account__display-name, + .account__display-name { color: $primary-text-color } .account__display-name strong { color: $secondary-text-color } &__avatar { @@ -13,11 +13,15 @@ width: 40px; height: 40px; - &-overlay-base { - border-radius: 50%; - width: 44px; - height: 44px; - background-size: 44px; + &-overlay { + &-base { + border-radius: 50%; + width: 44px; + height: 44px; + background-size: 44px; + } + + &-overlay { border-radius: $avater-radius } } } @@ -109,24 +113,24 @@ } &__section-headline { - background: $card-background-color; + background: $text-tab-background-color; border-bottom: 1px solid $border-color; a { padding: 16px 0; - color: $secondary-text-color; + color: $text-tab-indicator-color; &.active { - color: $tab-indicator-color; - border-bottom: 4px solid $tab-indicator-color; + color: $text-tab-indicator-active-color; + border-bottom: 4px solid $text-tab-indicator-active-color; - &:before, + &::before, &:after { border: none } - &:focus { background: $tab-indicator-background-focus-color } + &:focus { background: $text-tab-indicator-background-focus-color } } - &:hover { background: $tab-indicator-background-hover-color } + &:hover { background: $text-tab-indicator-background-hover-color } } } } diff --git a/app/javascript/styles/material-v1-light/button.scss b/app/javascript/styles/material-v1-light/button.scss index 6bb6bfa29..38fd1a3c1 100644 --- a/app/javascript/styles/material-v1-light/button.scss +++ b/app/javascript/styles/material-v1-light/button.scss @@ -23,6 +23,17 @@ } } + &.overlayed { + border-radius: 50%; + background: $media-icon-background-color; + color: $media-icon-color; + + &:hover { + background: $media-icon-background-color; + color: $media-icon-hover-color; + } + } + &:hover { color: $icon-button-hover-color; background-color: $icon-background-hover-color; @@ -75,4 +86,10 @@ &:hover { background: $text-button-hover-color } &:focus { background: $text-button-focus-color } +} + +.spoiler-button__overlay__label { + background: $media-icon-background-color; + border-radius: $button-radius; + color: $media-icon-color; } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/color/mastodon-dark.scss b/app/javascript/styles/material-v1-light/color/mastodon-dark.scss deleted file mode 100644 index 14ef148f4..000000000 --- a/app/javascript/styles/material-v1-light/color/mastodon-dark.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #2b90d9; -$secondary-color: #2b90d9; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #ffffff; -$secondary-text-color: #9baec8; -$ui-text-color: #fff; -$inverted-text-color: #000000; -$section-text-color: $primary-color; -$info-text-color: #606984; -$tips-text-color: #6d7889; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4ea2df; -$menu-text-color: #282c37; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $inverted-text-color; - -// Background-color -$background-color: #191b22; -$menu-background-color: #d9e1e8; -$menu-background-hover-color: lighten($menu-background-color, 6%); -$menu-background-active-color: lighten($menu-background-color, 10%); -$menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #444b5d; -$card-background-hover-color: lighten($card-background-color, 6%); -$card-background-inactive-color: lighten($card-background-color, 10%); -$list-background-color: #282c37; -$list-background-hover-color: lighten($list-background-color, 6%); -$list-background-active-color: lighten($list-background-color, 10%); -$list-background-inactive-color: lighten($list-background-color, 10%); -$verified-background-color: darken($verified-color, 20%); - -// Chip color -$contained-chip-color: #42485a; -$contained-chip-hover-color: lighten($contained-chip-color, 6%); -$contained-chip-selected-color: lighten($contained-chip-color, 12%); -$outlined-chip-color: #393f4f; -$outlined-chip-hover-color: lighten($outlined-chip-color, 6%); -$outlined-chip-selected-color: lighten($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #9baec8; -$icon-hover-color: lighten($icon-color, 30%); -$icon-background-hover-color: lighten($background-color, 14%); -$icon-background-active-color: lighten($background-color, 18%); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: #fff; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $icon-hover-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.7); -$text-button-focus-color: transparentize($text-button-color, 0.6); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($primary-color, 18%); - -// Border color -$border-color: #393f4f; -$border-active-color: lighten($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: lighten($background-color, 16%); -$scroll-bar-thumb-hover-color: lighten($background-color, 26%); -$scroll-bar-thumb-active-color: lighten($background-color, 32%); - -// App bar color -$top-bar-color: #313543; -$search-bar-color: lighten($top-bar-color, 6%); -$search-bar-focus-color: #ffffff; - -// Tab color -$tab-indicator-color: #d9e1e8; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.7); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.6); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/color/v1-dark.scss b/app/javascript/styles/material-v1-light/color/v1-dark.scss deleted file mode 100644 index f6168a35e..000000000 --- a/app/javascript/styles/material-v1-light/color/v1-dark.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #ffffff; -$secondary-text-color: #9aa0a6; -$ui-text-color: #e8eaed; -$inverted-text-color: #000000; -$section-text-color: $primary-color; -$info-text-color: #9aa0a6; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $inverted-text-color; - -// Background-color -$background-color: #303030; -$menu-background-color: #1e1e1e; -$menu-background-hover-color: lighten($menu-background-color, 6%); -$menu-background-active-color: lighten($menu-background-color, 10%); -$menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #1e1e1e; -$card-background-hover-color: lighten($card-background-color, 6%); -$card-background-inactive-color: lighten($card-background-color, 10%); -$list-background-color: #1e1e1e; -$list-background-hover-color: lighten($list-background-color, 6%); -$list-background-active-color: lighten($list-background-color, 10%); -$list-background-inactive-color: lighten($list-background-color, 10%); -$verified-background-color: darken($verified-color, 20%); - -// Chip color -$contained-chip-color: #2e2e2e; -$contained-chip-hover-color: lighten($contained-chip-color, 6%); -$contained-chip-selected-color: lighten($contained-chip-color, 12%); -$outlined-chip-color: #1e1e1e; -$outlined-chip-hover-color: lighten($outlined-chip-color, 6%); -$outlined-chip-selected-color: lighten($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #e2e2e3; -$icon-hover-color: lighten($icon-color, 30%); -$icon-background-hover-color: transparentize(#ffffff, 0.8); -$icon-background-active-color: transparentize(#ffffff, 0.7); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: #ffffff; -$top-bar-icon-hover-color: lighten($top-bar-icon-color, 10%); -$top-bar-icon-active-color: lighten($top-bar-icon-color, 18%); -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #5f6368; -$border-active-color: lighten($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: lighten($background-color, 20%); -$scroll-bar-thumb-hover-color: lighten($background-color, 30%); -$scroll-bar-thumb-active-color: lighten($background-color, 38%); - -// App bar color -$top-bar-color: #2196f3; -$search-bar-color: lighten($background-color, 6%); -$search-bar-focus-color: #ffffff; - -// Tab color -$tab-indicator-color: $top-bar-icon-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/color/v1-light.scss b/app/javascript/styles/material-v1-light/color/v1-light.scss index 3a09d2a5d..e672b5640 100644 --- a/app/javascript/styles/material-v1-light/color/v1-light.scss +++ b/app/javascript/styles/material-v1-light/color/v1-light.scss @@ -60,7 +60,7 @@ $top-bar-icon-active-color: darken($top-bar-icon-color, 18%); $media-icon-color: transparentize(#ffffff, 0.4); $media-icon-hover-color: transparentize(#ffffff, 0.2); $media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); +$media-icon-background-hover-color: transparentize(#000000, 0.8); $control-border-color: $icon-color; // Button color @@ -103,5 +103,27 @@ $search-bar-focus-color: $background-color; // Tab color $tab-indicator-color: $top-bar-icon-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file +$tab-indicator-active-color: $top-bar-icon-color; +$tab-background-color: $top-bar-color; +$tab-indicator-background-hover-color: transparentize($tab-indicator-active-color, 0.9); +$tab-indicator-background-focus-color: transparentize($tab-indicator-active-color, 0.8); +$text-tab-indicator-color: $secondary-text-color; +$text-tab-indicator-active-color: $top-bar-color; +$text-tab-background-color: #ffffff; +$text-tab-indicator-background-hover-color: transparentize(#000000, 0.9); +$text-tab-indicator-background-focus-color: transparentize(#000000, 0.8); + +// Media indicator color +$media-page-indicator-color: #9e9e9e; +$media-page-indicator-active-color: #e6e6e6; + +// Poll chart color +$poll-bar-leading-color: $primary-color; +$poll-bar-color: lighten($poll-bar-leading-color, 30%); + +// Contents color in read status +$read-primary-text-color: transparentize($primary-text-color, 0.3); +$read-secondary-text-color: transparentize($secondary-text-color, 0.3); +$read-ui-text-color: transparentize($ui-text-color, 0.3); +$read-poll-bar-leading-color: transparentize($poll-bar-leading-color, 0.3); +$read-poll-bar-color: transparentize($poll-bar-color, 0.3); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/color/v2-dark.scss b/app/javascript/styles/material-v1-light/color/v2-dark.scss deleted file mode 100644 index aae145b3b..000000000 --- a/app/javascript/styles/material-v1-light/color/v2-dark.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #ffffff; -$secondary-text-color: #9aa0a6; -$ui-text-color: #e8eaed; -$inverted-text-color: #000000; -$section-text-color: $primary-color; -$info-text-color: #9aa0a6; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $inverted-text-color; - -// Background-color -$background-color: #121212; -$menu-background-color: #1e1e1e; -$menu-background-hover-color: lighten($menu-background-color, 6%); -$menu-background-active-color: lighten($menu-background-color, 10%); -$menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #1e1e1e; -$card-background-hover-color: lighten($card-background-color, 6%); -$card-background-inactive-color: lighten($card-background-color, 10%); -$list-background-color: #1e1e1e; -$list-background-hover-color: lighten($list-background-color, 6%); -$list-background-active-color: lighten($list-background-color, 10%); -$list-background-inactive-color: lighten($list-background-color, 10%); -$verified-background-color: darken($verified-color, 20%); - -// Chip color -$contained-chip-color: #2e2e2e; -$contained-chip-hover-color: lighten($contained-chip-color, 6%); -$contained-chip-selected-color: lighten($contained-chip-color, 12%); -$outlined-chip-color: #1e1e1e; -$outlined-chip-hover-color: lighten($outlined-chip-color, 6%); -$outlined-chip-selected-color: lighten($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #e2e2e3; -$icon-hover-color: lighten($icon-color, 30%); -$icon-background-hover-color: transparentize(#ffffff, 0.8); -$icon-background-active-color: transparentize(#ffffff, 0.7); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: $icon-color; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $primary-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: #1e1e1e; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #5f6368; -$border-active-color: lighten($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: lighten($background-color, 20%); -$scroll-bar-thumb-hover-color: lighten($scroll-bar-thumb-color, 10%); -$scroll-bar-thumb-active-color: lighten($scroll-bar-thumb-color, 18%); - -// App bar color -$top-bar-color: #272727; -$search-bar-color: lighten($top-bar-color, 6%); -$search-bar-focus-color: #ffffff; - -// Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/color/v2-light.scss b/app/javascript/styles/material-v1-light/color/v2-light.scss deleted file mode 100644 index 99d502543..000000000 --- a/app/javascript/styles/material-v1-light/color/v2-light.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #000000; -$secondary-text-color: #5f6368; -$ui-text-color: #202124; -$inverted-text-color: #ffffff; -$section-text-color: $primary-color; -$info-text-color: #5e5e5e; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $primary-text-color; - -// Background-color -$background-color: #ffffff; -$menu-background-color: $background-color; -$menu-background-hover-color: darken($menu-background-color, 6%); -$menu-background-active-color: darken($menu-background-color, 10%); -$menu-background-active-hover-color: darken($menu-background-color, 16%); -$card-background-color: $background-color; -$card-background-hover-color: darken($card-background-color, 6%); -$card-background-inactive-color: darken($card-background-color, 10%); -$list-background-color: $background-color; -$list-background-hover-color: darken($list-background-color, 6%); -$list-background-active-color: darken($list-background-color, 10%); -$list-background-inactive-color: darken($list-background-color, 10%); -$verified-background-color: lighten($verified-color, 20%); - -// Chip color -$contained-chip-color: #e0e0e0; -$contained-chip-hover-color: darken($contained-chip-color, 6%); -$contained-chip-selected-color: darken($contained-chip-color, 12%); -$outlined-chip-color: #ffffff; -$outlined-chip-hover-color: darken($outlined-chip-color, 6%); -$outlined-chip-selected-color: darken($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #757575; -$icon-hover-color: darken($icon-color, 30%); -$icon-background-hover-color: transparentize(#000000, 0.9); -$icon-background-active-color: transparentize(#000000, 0.8); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: $icon-color; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $primary-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: #ffffff; -$floating-action-button-hover-color: darken($floating-action-button-color, 6%); -$floating-action-button-active-color: darken($floating-action-button-color, 10%); -$floating-action-button-icon-color: $secondary-color; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #dadce0; -$border-active-color: darken($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: darken($background-color, 20%); -$scroll-bar-thumb-hover-color: darken($background-color, 30%); -$scroll-bar-thumb-active-color: darken($background-color, 38%); - -// App bar color -$top-bar-color: $background-color; -$search-bar-color: darken($background-color, 6%); -$search-bar-focus-color: $background-color; - -// Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/columns.scss b/app/javascript/styles/material-v1-light/columns.scss index dc61167dc..689028581 100644 --- a/app/javascript/styles/material-v1-light/columns.scss +++ b/app/javascript/styles/material-v1-light/columns.scss @@ -22,6 +22,8 @@ color: $top-bar-text-color; } + &>.column-header__back-button { color: $top-bar-icon-color } + &.active { .column-header__icon { color: $secondary-color; @@ -62,14 +64,29 @@ &__setting-btn { color: $icon-button-color; + padding: 8px 0; &:hover { color: $icon-button-hover-color; - background: $icon-background-hover-color; + text-decoration: none; } + + .fa { font-size: 20px } + + span { vertical-align: middle } } - &__setting-arrows { font-size: 16px } + &__setting-arrows { + font-size: 16px; + border-bottom: 8px; + + .column-header__setting-btn { + padding: 8px; + border-radius: 50%; + + &:last-child { padding-right: 8px } + } + } &__wrapper { @include shadow-4dp; @@ -80,12 +97,13 @@ &.active { @include shadow-4dp; - &:before { background: transparent } + &::before { background: transparent } } } &__collapsible { color: $ui-text-color; + background: $card-background-color; border-top: 1px solid $border-color; &-inner { @@ -98,7 +116,7 @@ &__back-button { background: $top-bar-color; - color: $icon-color; + color: $top-bar-icon-color; padding: 8px; margin: auto 0; border-radius: 50%; @@ -156,6 +174,8 @@ margin-bottom: 0; margin-top: 8px; } + + &__row .text-btn { margin-bottom: 0 } } .column-back-button { @@ -163,6 +183,8 @@ background: $top-bar-color; color: $top-bar-icon-color; padding: 16px; + + span { visibility: hidden } // hide "back" string } .column-inline-form { @@ -222,17 +244,31 @@ } } +// read status in notification column .muted { .status { &__content { - color: $primary-text-color; + color: $read-primary-text-color; - p { color: $primary-text-color } + p { color: $read-primary-text-color } - a { color: $secondary-text-color } + a { color: $read-secondary-text-color } } - &__display-name strong { color: $primary-text-color } + &__display-name strong { color: $read-primary-text-color } + } + + .poll { + color: $read-primary-text-color; + + &__chart { + background: $read-poll-bar-color; + + &.leading { background: $read-poll-bar-leading-color } + } + + &__footer, + &__link { color: $read-ui-text-color } } } @@ -267,7 +303,42 @@ a { color: $ui-text-color } p a { color: $link-text-color } + } + &__trends { + background: $background-color; + margin-bottom: 0; + + h4 { + color: $section-text-color; + padding: 12px 16px; + border-top: 1px solid $border-color; + border-bottom: none; + } + } +} + +.trends__item { + padding: 16px; + border-bottom: none; + + &__name { + color: $secondary-text-color; + font-size: 12px; + + a { color: $primary-text-color } + } + + &__current { + padding-right: 16px; + margin-left: 4px; + color: $secondary-text-color; + } + + &__sparkline path { + stroke: $primary-color; + fill: $primary-color; + fill-opacity: 0.5; } } @@ -330,22 +401,22 @@ .notification { &__filter-bar { - background: $top-bar-color; + background: $tab-background-color; border-bottom: 1px solid $border-color; z-index: 1; button { - background: $top-bar-color; - color: $top-bar-icon-color; + background: $tab-background-color; + color: $tab-indicator-color; font-size: 16px; span { font-size: 14px } &.active { - color: $tab-indicator-color; - border-bottom: 4px solid $tab-indicator-color; + color: $tab-indicator-active-color; + border-bottom: 4px solid $tab-indicator-active-color; - &:before, + &::before, &:after { border: none } &:focus { background: $tab-indicator-background-focus-color } @@ -370,6 +441,7 @@ .icon-button.disabled { color: $disabled-icon-color } } +// read notification .notification.notification-favourite.focusable, .notification.notification-follow.focusable { background: $list-background-inactive-color } @@ -384,8 +456,6 @@ .react-swipeable-view-container { height: auto } -.tabs-bar__wrapper { background: transparent } - .attachment-list__list a { color: $secondary-text-color } .focusable { background: transparent !important } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/components.scss b/app/javascript/styles/material-v1-light/components.scss index f1e594e3c..92d2801f4 100644 --- a/app/javascript/styles/material-v1-light/components.scss +++ b/app/javascript/styles/material-v1-light/components.scss @@ -149,7 +149,7 @@ &__item a { font-size: 14px; - padding: 9px 16px; + padding: 8px 16px; background: $menu-background-color; color: $menu-text-color; @@ -166,11 +166,33 @@ } .compose-form { - .autosuggest-textarea__textarea { - background: $card-background-color; - color: $ui-text-color; + .autosuggest-textarea { + &__textarea { + background: $card-background-color; + color: $ui-text-color; + + &::placeholder { color: $tips-text-color } + } - &::placeholder { color: $tips-text-color } + &__suggestions { + @include shadow-1dp; + background: $menu-background-color; + color: $ui-text-color; + border-radius: $card-radius; + font-size: 16px; + padding: 8px 0; + + &__item { + padding: 8px; + border-radius: 0; + + &:hover { background: $menu-background-hover-color } + + &.selected, + &:focus, + &:active { background: $menu-background-active-color } + } + } } .spoiler-input__input { @@ -234,20 +256,42 @@ } } -.poll__input { - border: 2px solid $control-border-color; - width: 20px; - height: 20px; - flex: 0 0 20px; +.no-reduce-motion .spoiler-input { + transition-duration: .2s, .2s; } -.poll__text input[type=text] { - color: $ui-text-color; - background: $background-color; - border: 1px solid $border-color; - padding: 8px 12px; - &:focus { border-color: $border-active-color } +.poll { + &__input { + border: 2px solid $control-border-color; + width: 20px; + height: 20px; + flex: 0 0 20px; + } + + &__text input[type=text] { + color: $ui-text-color; + background: $background-color; + border: 1px solid $border-color; + padding: 8px 12px; + + &:focus { border-color: $border-active-color } + } + + &__chart { + border-radius: 0; + background: $poll-bar-color; + + &.leading { background: $poll-bar-leading-color } + } + + &__footer { + padding-top: 8px; + padding-bottom: 0; + color: $ui-text-color; + } + + &__link { color: $ui-text-color } } .privacy-dropdown { @@ -336,4 +380,10 @@ } &__content { color: $primary-text-color } +} + +.attachment-list { + &__list a { color: $secondary-text-color } + + &.compact .fa { color: $icon-color } } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/config.scss b/app/javascript/styles/material-v1-light/config.scss index dd25f6bf7..294c254c3 100644 --- a/app/javascript/styles/material-v1-light/config.scss +++ b/app/javascript/styles/material-v1-light/config.scss @@ -30,32 +30,10 @@ // Favorite icon settings -// If you exclude 'material-icons.scss', please comment out this section. -.fa { - &.fa-star:before { content: "star" } // Star - //&.fa-star:before { content: "favorite" } // Heart - //&.fa-star:before { content: "plus_one" } // +1 -} +$favorite-icon: "star"; $favorite-icon-border: "star_border"; // Star +//$favorite-icon: "favorite"; $favorite-icon-border: "favorite_border"; // Heart +//$favorite-icon: "plus_one"; $favorite-icon-border: "plus_one"; // +1 -.star-icon.active, -.star-icon.icon-button.active.active, -.notification__favourite-icon-wrapper .star-icon, -.status__action-bar-button.star-icon.icon-button.active { - color: #ffd600; // Star - //color: #ff4081; // Heart - //color: #db4437; // +1 -} - -.status__action-bar-button.star-icon.icon-button, -.star-icon.icon-button { - .fa.fa-star:before { content: "star_border" } // Star - //.fa.fa-star:before { content: "favorite_border" } // Heart - //.fa.fa-star:before { content: "plus_one" } // +1 - - &.active, - &.active.activate { - .fa.fa-star:before { content: "star" } // Star - //.fa.fa-star:before { content: "favorite" } // Heart - //.fa.fa-star:before { content: "plus_one" } // +1 - } -} \ No newline at end of file +$favorite-icon-color: #ffd600; // Star +//$favorite-icon-color: #ff4081; // Heart +//$favorite-icon-color: #db4437; // +1 \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/emoji-picker.scss b/app/javascript/styles/material-v1-light/emoji-picker.scss index d57c5c041..2c17701cf 100644 --- a/app/javascript/styles/material-v1-light/emoji-picker.scss +++ b/app/javascript/styles/material-v1-light/emoji-picker.scss @@ -46,7 +46,7 @@ } &-bar { - background-color: $tab-indicator-color; + background-color: $tab-indicator-active-color; } &:hover { @@ -63,7 +63,7 @@ background: $search-bar-color; color: $ui-text-color; border: 0; - border-radius: $bar-radius; + border-radius: $search-bar-radius; &:focus { @include shadow-2dp; @@ -82,7 +82,7 @@ background: $menu-background-color; } - &-emoji:hover:before { + &-emoji:hover::before { background-color: $icon-background-hover-color; } diff --git a/app/javascript/styles/material-v1-light/icons.scss b/app/javascript/styles/material-v1-light/icons.scss index 6778e3d2c..beca11a6f 100644 --- a/app/javascript/styles/material-v1-light/icons.scss +++ b/app/javascript/styles/material-v1-light/icons.scss @@ -15,16 +15,21 @@ } -.fa { vertical-align: sub } //マテリアルアイコンを文字の高さにそろえる +.fa { vertical-align: sub } // adjust material icon font baseline to other font .fa.fa-times, -.fa.fa-eraser { vertical-align: middle } //↑の例外 +.fa.fa-eraser, +.fa.fa-plus { vertical-align: middle } // adjustment exception + +.fa.fa-check { vertical-align: initial } .fa.fa-lock { text-transform: none } .fa-fw { width: 16px } -.fa.fa-chevron-left.column-back-button__icon.fa-fw { +// icon in tab settings +.fa.fa-chevron-left.column-back-button__icon.fa-fw, +.text-btn.column-header__setting-btn .fa.fa-eraser { font-size: 20px; margin-right: 16px; } @@ -34,4 +39,10 @@ border: none; padding: 2px 6px; border-radius: 12px; -} \ No newline at end of file +} + +// favorite icon color +.star-icon.active, +.star-icon.icon-button.active.active, +.notification__favourite-icon-wrapper .star-icon, +.status__action-bar-button.star-icon.icon-button.active { color: $favorite-icon-color } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/layout/material-v2.scss b/app/javascript/styles/material-v1-light/layout/material-v2.scss deleted file mode 100644 index 86d2c496f..000000000 --- a/app/javascript/styles/material-v1-light/layout/material-v2.scss +++ /dev/null @@ -1,65 +0,0 @@ -@charset "UTF-8"; -@import '../mixins'; - - -// Navigation bar radius -$nav-bar-radius: 8px; - - -// Search bar radius -$search-bar-radius: 8px; - - -// Bar radius settings -$bar-radius: 0; -//$bar-radius: 8px; - - -// Button radius settings -$button-radius: 8px; - - -// Card radius settings -$card-radius: 8px; - - -// Dialog radius settings -$dialog-radius: 8px; - - -// Menu radius settings -$menu-radius: 8px; - - -// Navigation drawer item settings -$nav-drawer-item-radius: 8px; // corner rounded -//$nav-drawer-item-radius: 32px; // full rounded -//$nav-drawer-item-radius: 32px 0 0 32px; // left rounded - - -// Avater cropping settings -$avater-radius: 50%; // Rounded cropping -//$avater-radius: 8px // Material v2 square - - -// Chip settings -// If you want to use contained-chip, please comment out below. -.reactions-bar__item { - background: $outlined-chip-color !important; - border: 1px solid $border-color !important; - - &.active { background-color: $outlined-chip-selected-color !important } - - &:hover { background: $outlined-chip-hover-color !important } -} -.relationship-tag, -.account-role { - background: $outlined-chip-color !important; - border: 1px solid $border-color !important; -} - - -// Button shadow -// If you want to use material v2 styled non-shadow button, please comment out this section. -.button, -.compose-form .compose-form__publish-button-wrapper { @include shadow-2dp } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/material-icons.scss b/app/javascript/styles/material-v1-light/material-icons.scss index 52b959485..e473dfe31 100644 --- a/app/javascript/styles/material-v1-light/material-icons.scss +++ b/app/javascript/styles/material-v1-light/material-icons.scss @@ -1,5 +1,6 @@ @charset "UTF-8"; @import 'config'; +@import 'functions'; .fa { @@ -31,6 +32,7 @@ &.fa-chevron-right, &.fa-reply, &.fa-reply-all, + &.fa-share-alt, &.fa-star, &.fa-bookmark, &.fa-ellipsis-h, @@ -46,51 +48,99 @@ &.fa-eye, &.fa-eye-slash, &.fa-pencil, - &.fa-trash { + &.fa-trash, + &.fa-play, + &.fa-external-link, + &.fa-retweet, + &.fa-link, + &.fa-pause, + &.fa-volume-up, + &.fa-volume-off, + &.fa-expand, + &.fa-download, + &.fa-arrows-alt, + &.fa-compress, + &.fa-user-times, + &.fa-check { font-family: "Material Icons"; } } .fa { - &.fa-bars:before, &.fa-navicon:before,&.fa-reorder:before { content: "menu" } - &.fa-globe:before { content: "public" } - &.fa-cog:before, &.fa-cogs:before, &.fa-gears:before { content: "settings" } - &.fa-sign-out:before { content: "exit_to_app" } - &.fa-search:before { content: "search" } - &.fa-times:before, &.fa-times-circle:before, &.fa-close:before, &.fa-remove:before { content: "close" } - &.fa-chevron-down:before, &.fa-ellipsis-v:before { content: "more_vert" } - &.fa-paperclip:before { content: "attach_file" } - &.fa-tasks:before { content: "poll" } - &.fa-plus:before { content: "add" } - &.fa-unlock:before { content: "lock_open" } - &.fa-lock:before { content: "lock" } - &.fa-envelope:before { content: "mail" } - &.fa-home:before { content: "home" } - &.fa-bullhorn:before { content: "announcement" } - &.fa-sliders:before { content: "tune" } - &.fa-chevron-left:before { content: "arrow_back" } - &.fa-chevron-right:before { content: "arrow_forward" } - &.fa-reply:before { content: "reply" } - &.fa-reply-all:before { content: "reply_all" } - &.fa-bookmark:before { content: "bookmark" } - &.fa-ellipsis-h:before { content: "more_horiz" } - &.fa-bell:before { content: "notifications" } - &.fa-eraser:before { content: "clear_all" } - &.fa-users:before { content: "people" } - &.fa-file-text:before { content: "web" } - &.fa-user-plus:before { content: "person_add" } - &.fa-address-book:before { content: "explore" } - &.fa-address-book-o:before { content: "explore" } - &.fa-list:before { content: "list" } - &.fa-list-ul:before { content: "list" } - &.fa-eye:before { content: "visibility" } - &.fa-eye-slash:before { content : "visibility_off" } - &.fa-pencil:before { content: "create" } - &.fa-trash:before { content: "delete" } + &.fa-bars::before, &.fa-navicon::before,&.fa-reorder::before { content: "menu" } + &.fa-globe::before { content: "public" } + &.fa-cog::before, &.fa-cogs::before, &.fa-gears::before { content: "settings" } + &.fa-sign-out::before { content: "exit_to_app" } + &.fa-search::before { content: "search" } + &.fa-times::before, &.fa-times-circle::before, &.fa-close::before, &.fa-remove::before { content: "close" } + &.fa-chevron-down::before, &.fa-ellipsis-v::before { content: "more_vert" } + &.fa-paperclip::before { content: "attach_file" } + &.fa-tasks::before { content: "poll" } + &.fa-plus::before { content: "add" } + &.fa-unlock::before { content: "lock_open" } + &.fa-lock::before { content: "lock" } + &.fa-envelope::before { content: "mail" } + &.fa-home::before { content: "home" } + &.fa-bullhorn::before { content: "announcement" } + &.fa-sliders::before { content: "tune" } + &.fa-chevron-left::before { content: "arrow_back" } + &.fa-chevron-right::before { content: "arrow_forward" } + &.fa-reply::before { content: "reply" } + &.fa-reply-all::before { content: "reply_all" } + &.fa-share-alt::before { content: "share" } + &.fa-star::before { content: $favorite-icon } + &.fa-bookmark::before { content: "bookmark" } + &.fa-ellipsis-h::before { content: "more_horiz" } + &.fa-bell::before { content: "notifications" } + &.fa-eraser::before { content: "clear_all" } + &.fa-users::before { content: "people" } + &.fa-file-text::before { content: "web" } + &.fa-user-plus::before { content: "person_add" } + &.fa-address-book::before { content: "explore" } + &.fa-address-book-o::before { content: "explore" } + &.fa-list::before { content: "list" } + &.fa-list-ul::before { content: "list" } + &.fa-eye::before { content: "visibility" } + &.fa-eye-slash::before { content : "visibility_off" } + &.fa-pencil::before { content: "create" } + &.fa-trash::before { content: "delete" } + &.fa-play::before { content: "play_arrow" } + &.fa-external-link::before { content: "open_in_new" } + &.fa-retweet::before { content: "repeat" } + &.fa-link::before { content: "link" } + &.fa-pause::before { content: "pause" } + &.fa-volume-up::before { content: "volume_up" } + &.fa-volume-off::before { content: "volume_off" } + &.fa-expand::before { content: "web_asset" } + &.fa-download::before { content: "file_download" } + &.fa-arrows-alt::before { content: "fullscreen" } + &.fa-compress::before { content: "fullscreen_exit" } + &.fa-user-times::before { content: "delete" } + &.fa-check::before { content: "check" } } +// bookmark icon .status__action-bar-button.icon-button, .bookmark-icon.icon-button { - .fa.fa-bookmark:before { content: "bookmark_border" } - &.active .fa.fa-bookmark:before { content: "bookmark" } + .fa.fa-bookmark::before { content: "bookmark_border" } + &.active .fa.fa-bookmark::before { content: "bookmark" } +} + +// favorite icon +.status__action-bar-button.star-icon.icon-button, +.star-icon.icon-button { + .fa.fa-star::before { content: $favorite-icon-border } + + &.active, + &.active.activate { + .fa.fa-star::before { content: $favorite-icon } + } +} + +// boost icon +.no-reduce-motion button.icon-button i.fa-retweet { + height: 18px; + width: 18px; + transition: background-position .3s steps(1); + background-image: url('data:image/svg+xml;utf8,'); } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/media.scss b/app/javascript/styles/material-v1-light/media.scss index 74dfd8dcc..64a69a129 100644 --- a/app/javascript/styles/material-v1-light/media.scss +++ b/app/javascript/styles/material-v1-light/media.scss @@ -26,13 +26,74 @@ } } -.icon-button.overlayed { - border-radius: 50%; - background: $media-icon-background-color; - color: $media-icon-color; - - &:hover { +.media-modal { + &__nav { background: $media-icon-background-color; - color: $media-icon-hover-color; + color: $media-icon-color; + height: 48px; + width: 48px; + margin: auto 16px; + padding: 8px; + border-radius: 50%; + + .fa { width: 32px } } + + &__button { + background-color: $media-page-indicator-color; + + &--active { background-color: $media-page-indicator-active-color } + } +} + +.video-player { + &__controls { + background: linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.2) 60%,transparent); + padding: 0 12px; + } + + &__seek { + &::before { + background: rgba(255,255,255,.2); + border-radius: 0; + } + + &__buffer { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__progress { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__volume { + &::before { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__current { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__time-current { margin-left: 68px } + + &__buttons button { font-size: 20px } } \ No newline at end of file diff --git a/app/javascript/styles/material-v1-light/mobile.scss b/app/javascript/styles/material-v1-light/mobile.scss index 448f80585..de6f4e94c 100644 --- a/app/javascript/styles/material-v1-light/mobile.scss +++ b/app/javascript/styles/material-v1-light/mobile.scss @@ -12,14 +12,17 @@ border-bottom: 4px solid transparent; &.active { - border-bottom: 4px solid $tab-indicator-color; - color: $tab-indicator-color; + border-bottom: 4px solid $tab-indicator-active-color; + color: $tab-indicator-active-color; } .fa { font-size: 20px } } - &__wrapper { @include shadow-4dp } + &__wrapper { + @include shadow-4dp; + background: transparent; + } } diff --git a/app/javascript/styles/material-v1-light/modal.scss b/app/javascript/styles/material-v1-light/modal.scss index 40710fe43..7734c8dfa 100644 --- a/app/javascript/styles/material-v1-light/modal.scss +++ b/app/javascript/styles/material-v1-light/modal.scss @@ -29,10 +29,25 @@ color: $ui-text-color; font-size: 16px; - &:hover { background: $card-background-hover-color } + &:hover { + background: $card-background-hover-color; + color: $ui-text-color; + } } .dropdown-menu__separator { border-bottom-color: $border-color } + + .status { + background: $card-background-color; + border-bottom-color: $border-color; + padding-top: 12px; + padding-bottom: 12px; + + &__avatar { + left: 12px; + top: 12px; + } + } } .report-modal { diff --git a/app/javascript/styles/material-v1-light/statuses.scss b/app/javascript/styles/material-v1-light/statuses.scss index c569b3b92..f60c2d859 100644 --- a/app/javascript/styles/material-v1-light/statuses.scss +++ b/app/javascript/styles/material-v1-light/statuses.scss @@ -73,6 +73,8 @@ } } + &__prepend { color: $secondary-text-color } + &.status-direct:not(.read) { background: transparent; border-bottom-color: $border-color; @@ -99,9 +101,25 @@ &__description { color: $secondary-text-color } + &__actions { + &>div { + background: $media-icon-background-color; + border-radius: $button-radius; + } + + button, + a { + color: $media-icon-color; + font-size: 20px; + } + + a { bottom: auto } + } + &.compact { border-color: $border-color; outline: none; + background: transparent; .status-card { &__content { padding: 12px } @@ -114,8 +132,16 @@ &:hover { background-color: $card-background-color } } +// Detailed status in mobile .status.light { - .display-name span { color: $info-text-color } + .status { + &__display-name { color: $primary-text-color } + &__relative-time { color: $info-text-color } + &__content { color: $primary-text-color } + } + + .display-name { color: $secondary-text-color } + .display-name strong { color: $primary-text-color } } .detailed-status { diff --git a/app/javascript/styles/material-v2-dark/_functions.scss b/app/javascript/styles/material-v2-dark/_functions.scss new file mode 100644 index 000000000..54750d029 --- /dev/null +++ b/app/javascript/styles/material-v2-dark/_functions.scss @@ -0,0 +1,12 @@ +@charset "UTF-8"; +@use "sass:string"; + + +@function to-string($value) { + @return inspect($value); +} + +// convert hex color code to svg styled color code +@function svg-color ($color) { + @return '%23' + string.slice(to-string($color), 2, 7); +} \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/account.scss b/app/javascript/styles/material-v2-dark/account.scss index 2d8f2f210..b43194729 100644 --- a/app/javascript/styles/material-v2-dark/account.scss +++ b/app/javascript/styles/material-v2-dark/account.scss @@ -5,7 +5,7 @@ .account { border-bottom: 1px solid $border-color; - .account__display-name, + .account__display-name { color: $primary-text-color } .account__display-name strong { color: $secondary-text-color } &__avatar { @@ -13,11 +13,15 @@ width: 40px; height: 40px; - &-overlay-base { - border-radius: 50%; - width: 44px; - height: 44px; - background-size: 44px; + &-overlay { + &-base { + border-radius: 50%; + width: 44px; + height: 44px; + background-size: 44px; + } + + &-overlay { border-radius: $avater-radius } } } @@ -109,24 +113,24 @@ } &__section-headline { - background: $card-background-color; + background: $text-tab-background-color; border-bottom: 1px solid $border-color; a { padding: 16px 0; - color: $secondary-text-color; + color: $text-tab-indicator-color; &.active { - color: $tab-indicator-color; - border-bottom: 4px solid $tab-indicator-color; + color: $text-tab-indicator-active-color; + border-bottom: 4px solid $text-tab-indicator-active-color; - &:before, + &::before, &:after { border: none } - &:focus { background: $tab-indicator-background-focus-color } + &:focus { background: $text-tab-indicator-background-focus-color } } - &:hover { background: $tab-indicator-background-hover-color } + &:hover { background: $text-tab-indicator-background-hover-color } } } } diff --git a/app/javascript/styles/material-v2-dark/button.scss b/app/javascript/styles/material-v2-dark/button.scss index 6bb6bfa29..38fd1a3c1 100644 --- a/app/javascript/styles/material-v2-dark/button.scss +++ b/app/javascript/styles/material-v2-dark/button.scss @@ -23,6 +23,17 @@ } } + &.overlayed { + border-radius: 50%; + background: $media-icon-background-color; + color: $media-icon-color; + + &:hover { + background: $media-icon-background-color; + color: $media-icon-hover-color; + } + } + &:hover { color: $icon-button-hover-color; background-color: $icon-background-hover-color; @@ -75,4 +86,10 @@ &:hover { background: $text-button-hover-color } &:focus { background: $text-button-focus-color } +} + +.spoiler-button__overlay__label { + background: $media-icon-background-color; + border-radius: $button-radius; + color: $media-icon-color; } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/color/mastodon-dark.scss b/app/javascript/styles/material-v2-dark/color/mastodon-dark.scss deleted file mode 100644 index 14ef148f4..000000000 --- a/app/javascript/styles/material-v2-dark/color/mastodon-dark.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #2b90d9; -$secondary-color: #2b90d9; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #ffffff; -$secondary-text-color: #9baec8; -$ui-text-color: #fff; -$inverted-text-color: #000000; -$section-text-color: $primary-color; -$info-text-color: #606984; -$tips-text-color: #6d7889; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4ea2df; -$menu-text-color: #282c37; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $inverted-text-color; - -// Background-color -$background-color: #191b22; -$menu-background-color: #d9e1e8; -$menu-background-hover-color: lighten($menu-background-color, 6%); -$menu-background-active-color: lighten($menu-background-color, 10%); -$menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #444b5d; -$card-background-hover-color: lighten($card-background-color, 6%); -$card-background-inactive-color: lighten($card-background-color, 10%); -$list-background-color: #282c37; -$list-background-hover-color: lighten($list-background-color, 6%); -$list-background-active-color: lighten($list-background-color, 10%); -$list-background-inactive-color: lighten($list-background-color, 10%); -$verified-background-color: darken($verified-color, 20%); - -// Chip color -$contained-chip-color: #42485a; -$contained-chip-hover-color: lighten($contained-chip-color, 6%); -$contained-chip-selected-color: lighten($contained-chip-color, 12%); -$outlined-chip-color: #393f4f; -$outlined-chip-hover-color: lighten($outlined-chip-color, 6%); -$outlined-chip-selected-color: lighten($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #9baec8; -$icon-hover-color: lighten($icon-color, 30%); -$icon-background-hover-color: lighten($background-color, 14%); -$icon-background-active-color: lighten($background-color, 18%); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: #fff; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $icon-hover-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.7); -$text-button-focus-color: transparentize($text-button-color, 0.6); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($primary-color, 18%); - -// Border color -$border-color: #393f4f; -$border-active-color: lighten($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: lighten($background-color, 16%); -$scroll-bar-thumb-hover-color: lighten($background-color, 26%); -$scroll-bar-thumb-active-color: lighten($background-color, 32%); - -// App bar color -$top-bar-color: #313543; -$search-bar-color: lighten($top-bar-color, 6%); -$search-bar-focus-color: #ffffff; - -// Tab color -$tab-indicator-color: #d9e1e8; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.7); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.6); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/color/mastodon-light.scss b/app/javascript/styles/material-v2-dark/color/mastodon-light.scss deleted file mode 100644 index 62a064b87..000000000 --- a/app/javascript/styles/material-v2-dark/color/mastodon-light.scss +++ /dev/null @@ -1,106 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #2b90d9; -$secondary-color: #2b90d9; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #000000; -$secondary-text-color: #5f6368; -$ui-text-color: #202124; -$section-text-color: $primary-color; -$info-text-color: #5e5e5e; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #217aba; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $primary-text-color; - -// Background-color -$background-color: #eff3f5; -$menu-background-color: $background-color; -$menu-background-hover-color: darken($background-color, 6%); -$menu-background-active-color: darken($background-color, 10%); -$menu-background-active-hover-color: darken($background-color, 16%); -$card-background-color: #ffffff; -$card-background-hover-color: darken($card-background-color, 6%); -$card-background-inactive-color: darken($card-background-color, 10%); -$list-background-color: #ffffff; -$list-background-hover-color: darken($list-background-color, 6%); -$list-background-active-color: darken($list-background-color, 10%); -$list-background-inactive-color: darken($list-background-color, 10%); -$verified-background-color: lighten($verified-color, 20%); - -// Chip color -$contained-chip-color: #e0e0e0; -$contained-chip-hover-color: darken($contained-chip-color, 6%); -$contained-chip-selected-color: darken($contained-chip-color, 12%); -$outlined-chip-color: #ffffff; -$outlined-chip-hover-color: darken($outlined-chip-color, 6%); -$outlined-chip-selected-color: darken($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #282c37; -$icon-hover-color: darken($icon-color, 30%); -$icon-background-hover-color: darken($background-color, 4%); -$icon-background-active-color: darken($background-color, 8%); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: $icon-color; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $icon-hover-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: lighten($text-button-color, 36%); -$text-button-focus-color: lighten($text-button-color, 30%); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: $primary-color; -$toggle-track-active-color: lighten($primary-color, 26%); - -// Border color -$border-color: #dadce0; -$border-active-color: darken($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: #ccd7e0; -$scroll-bar-thumb-hover-color: darken($scroll-bar-thumb-color, 10%); -$scroll-bar-thumb-active-color: darken($scroll-bar-thumb-color, 18%); - -// App bar color -$top-bar-color: #ffffff; -$search-bar-color: #d9e1e8; -$search-bar-focus-color: $background-color; - -// Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: lighten($tab-indicator-color, 36%); -$tab-indicator-background-focus-color: lighten($tab-indicator-color, 30%); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/color/v1-dark.scss b/app/javascript/styles/material-v2-dark/color/v1-dark.scss deleted file mode 100644 index f6168a35e..000000000 --- a/app/javascript/styles/material-v2-dark/color/v1-dark.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #ffffff; -$secondary-text-color: #9aa0a6; -$ui-text-color: #e8eaed; -$inverted-text-color: #000000; -$section-text-color: $primary-color; -$info-text-color: #9aa0a6; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $inverted-text-color; - -// Background-color -$background-color: #303030; -$menu-background-color: #1e1e1e; -$menu-background-hover-color: lighten($menu-background-color, 6%); -$menu-background-active-color: lighten($menu-background-color, 10%); -$menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #1e1e1e; -$card-background-hover-color: lighten($card-background-color, 6%); -$card-background-inactive-color: lighten($card-background-color, 10%); -$list-background-color: #1e1e1e; -$list-background-hover-color: lighten($list-background-color, 6%); -$list-background-active-color: lighten($list-background-color, 10%); -$list-background-inactive-color: lighten($list-background-color, 10%); -$verified-background-color: darken($verified-color, 20%); - -// Chip color -$contained-chip-color: #2e2e2e; -$contained-chip-hover-color: lighten($contained-chip-color, 6%); -$contained-chip-selected-color: lighten($contained-chip-color, 12%); -$outlined-chip-color: #1e1e1e; -$outlined-chip-hover-color: lighten($outlined-chip-color, 6%); -$outlined-chip-selected-color: lighten($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #e2e2e3; -$icon-hover-color: lighten($icon-color, 30%); -$icon-background-hover-color: transparentize(#ffffff, 0.8); -$icon-background-active-color: transparentize(#ffffff, 0.7); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: #ffffff; -$top-bar-icon-hover-color: lighten($top-bar-icon-color, 10%); -$top-bar-icon-active-color: lighten($top-bar-icon-color, 18%); -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #5f6368; -$border-active-color: lighten($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: lighten($background-color, 20%); -$scroll-bar-thumb-hover-color: lighten($background-color, 30%); -$scroll-bar-thumb-active-color: lighten($background-color, 38%); - -// App bar color -$top-bar-color: #2196f3; -$search-bar-color: lighten($background-color, 6%); -$search-bar-focus-color: #ffffff; - -// Tab color -$tab-indicator-color: $top-bar-icon-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/color/v1-light.scss b/app/javascript/styles/material-v2-dark/color/v1-light.scss deleted file mode 100644 index 3a09d2a5d..000000000 --- a/app/javascript/styles/material-v2-dark/color/v1-light.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #000000; -$secondary-text-color: #5f6368; -$ui-text-color: #202124; -$inverted-text-color: #ffffff; -$section-text-color: $primary-color; -$info-text-color: #5e5e5e; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $inverted-text-color; -$search-bar-text-color: $primary-text-color; - -// Background-color -$background-color: #fafafa; -$menu-background-color: #ffffff; -$menu-background-hover-color: darken($menu-background-color, 6%); -$menu-background-active-color: darken($menu-background-color, 10%); -$menu-background-active-hover-color: darken($menu-background-color, 16%); -$card-background-color: #ffffff; -$card-background-hover-color: darken($card-background-color, 6%); -$card-background-inactive-color: darken($card-background-color, 10%); -$list-background-color: #ffffff; -$list-background-hover-color: darken($list-background-color, 6%); -$list-background-active-color: darken($list-background-color, 10%); -$list-background-inactive-color: darken($list-background-color, 10%); -$verified-background-color: lighten($verified-color, 20%); - -// Chip color -$contained-chip-color: #e0e0e0; -$contained-chip-hover-color: darken($contained-chip-color, 6%); -$contained-chip-selected-color: darken($contained-chip-color, 12%); -$outlined-chip-color: #ffffff; -$outlined-chip-hover-color: darken($outlined-chip-color, 6%); -$outlined-chip-selected-color: darken($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #757575; -$icon-hover-color: darken($icon-color, 30%); -$icon-background-hover-color: transparentize(#000000, 0.9); -$icon-background-active-color: transparentize(#000000, 0.8); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: #ffffff; -$top-bar-icon-hover-color: darken($top-bar-icon-color, 10%); -$top-bar-icon-active-color: darken($top-bar-icon-color, 18%); -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #dadce0; -$border-active-color: darken($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: darken($background-color, 20%); -$scroll-bar-thumb-hover-color: darken($scroll-bar-thumb-color, 10%); -$scroll-bar-thumb-active-color: darken($scroll-bar-thumb-color, 18%); - -// App bar color -$top-bar-color: #2196f3; -$search-bar-color: darken($background-color, 6%); -$search-bar-focus-color: $background-color; - -// Tab color -$tab-indicator-color: $top-bar-icon-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/color/v2-dark.scss b/app/javascript/styles/material-v2-dark/color/v2-dark.scss index aae145b3b..3c0de2770 100644 --- a/app/javascript/styles/material-v2-dark/color/v2-dark.scss +++ b/app/javascript/styles/material-v2-dark/color/v2-dark.scss @@ -60,7 +60,7 @@ $top-bar-icon-active-color: $primary-color; $media-icon-color: transparentize(#ffffff, 0.4); $media-icon-hover-color: transparentize(#ffffff, 0.2); $media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); +$media-icon-background-hover-color: transparentize(#000000, 0.8); $control-border-color: $icon-color; // Button color @@ -76,7 +76,7 @@ $outlined-button-active-color: lighten($primary-color, 30%); $text-button-color: $primary-color; $text-button-hover-color: transparentize($text-button-color, 0.8); $text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: #1e1e1e; +$floating-action-button-color: $secondary-color; $floating-action-button-hover-color: lighten($floating-action-button-color, 6%); $floating-action-button-active-color: lighten($floating-action-button-color, 10%); $floating-action-button-icon-color: #ffffff; @@ -102,6 +102,28 @@ $search-bar-color: lighten($top-bar-color, 6%); $search-bar-focus-color: #ffffff; // Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file +$tab-indicator-color: $top-bar-icon-color; +$tab-indicator-active-color: $top-bar-icon-color; +$tab-background-color: $top-bar-color; +$tab-indicator-background-hover-color: transparentize($tab-indicator-active-color, 0.9); +$tab-indicator-background-focus-color: transparentize($tab-indicator-active-color, 0.8); +$text-tab-indicator-color: $secondary-text-color; +$text-tab-indicator-active-color: $ui-text-color; +$text-tab-background-color: #1e1e1e; +$text-tab-indicator-background-hover-color: transparentize($text-tab-indicator-active-color, 0.9); +$text-tab-indicator-background-focus-color: transparentize($text-tab-indicator-active-color, 0.8); + +// Media indicator color +$media-page-indicator-color: #9e9e9e; +$media-page-indicator-active-color: #e6e6e6; + +// Poll chart color +$poll-bar-leading-color: $primary-color; +$poll-bar-color: lighten($poll-bar-leading-color, 30%); + +// Contents color in read status +$read-primary-text-color: transparentize($primary-text-color, 0.3); +$read-secondary-text-color: transparentize($secondary-text-color, 0.3); +$read-ui-text-color: transparentize($ui-text-color, 0.3); +$read-poll-bar-leading-color: transparentize($poll-bar-leading-color, 0.3); +$read-poll-bar-color: transparentize($poll-bar-color, 0.3); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/color/v2-light.scss b/app/javascript/styles/material-v2-dark/color/v2-light.scss deleted file mode 100644 index 99d502543..000000000 --- a/app/javascript/styles/material-v2-dark/color/v2-light.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #000000; -$secondary-text-color: #5f6368; -$ui-text-color: #202124; -$inverted-text-color: #ffffff; -$section-text-color: $primary-color; -$info-text-color: #5e5e5e; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $primary-text-color; - -// Background-color -$background-color: #ffffff; -$menu-background-color: $background-color; -$menu-background-hover-color: darken($menu-background-color, 6%); -$menu-background-active-color: darken($menu-background-color, 10%); -$menu-background-active-hover-color: darken($menu-background-color, 16%); -$card-background-color: $background-color; -$card-background-hover-color: darken($card-background-color, 6%); -$card-background-inactive-color: darken($card-background-color, 10%); -$list-background-color: $background-color; -$list-background-hover-color: darken($list-background-color, 6%); -$list-background-active-color: darken($list-background-color, 10%); -$list-background-inactive-color: darken($list-background-color, 10%); -$verified-background-color: lighten($verified-color, 20%); - -// Chip color -$contained-chip-color: #e0e0e0; -$contained-chip-hover-color: darken($contained-chip-color, 6%); -$contained-chip-selected-color: darken($contained-chip-color, 12%); -$outlined-chip-color: #ffffff; -$outlined-chip-hover-color: darken($outlined-chip-color, 6%); -$outlined-chip-selected-color: darken($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #757575; -$icon-hover-color: darken($icon-color, 30%); -$icon-background-hover-color: transparentize(#000000, 0.9); -$icon-background-active-color: transparentize(#000000, 0.8); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: $icon-color; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $primary-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: #ffffff; -$floating-action-button-hover-color: darken($floating-action-button-color, 6%); -$floating-action-button-active-color: darken($floating-action-button-color, 10%); -$floating-action-button-icon-color: $secondary-color; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #dadce0; -$border-active-color: darken($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: darken($background-color, 20%); -$scroll-bar-thumb-hover-color: darken($background-color, 30%); -$scroll-bar-thumb-active-color: darken($background-color, 38%); - -// App bar color -$top-bar-color: $background-color; -$search-bar-color: darken($background-color, 6%); -$search-bar-focus-color: $background-color; - -// Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/columns.scss b/app/javascript/styles/material-v2-dark/columns.scss index dc61167dc..689028581 100644 --- a/app/javascript/styles/material-v2-dark/columns.scss +++ b/app/javascript/styles/material-v2-dark/columns.scss @@ -22,6 +22,8 @@ color: $top-bar-text-color; } + &>.column-header__back-button { color: $top-bar-icon-color } + &.active { .column-header__icon { color: $secondary-color; @@ -62,14 +64,29 @@ &__setting-btn { color: $icon-button-color; + padding: 8px 0; &:hover { color: $icon-button-hover-color; - background: $icon-background-hover-color; + text-decoration: none; } + + .fa { font-size: 20px } + + span { vertical-align: middle } } - &__setting-arrows { font-size: 16px } + &__setting-arrows { + font-size: 16px; + border-bottom: 8px; + + .column-header__setting-btn { + padding: 8px; + border-radius: 50%; + + &:last-child { padding-right: 8px } + } + } &__wrapper { @include shadow-4dp; @@ -80,12 +97,13 @@ &.active { @include shadow-4dp; - &:before { background: transparent } + &::before { background: transparent } } } &__collapsible { color: $ui-text-color; + background: $card-background-color; border-top: 1px solid $border-color; &-inner { @@ -98,7 +116,7 @@ &__back-button { background: $top-bar-color; - color: $icon-color; + color: $top-bar-icon-color; padding: 8px; margin: auto 0; border-radius: 50%; @@ -156,6 +174,8 @@ margin-bottom: 0; margin-top: 8px; } + + &__row .text-btn { margin-bottom: 0 } } .column-back-button { @@ -163,6 +183,8 @@ background: $top-bar-color; color: $top-bar-icon-color; padding: 16px; + + span { visibility: hidden } // hide "back" string } .column-inline-form { @@ -222,17 +244,31 @@ } } +// read status in notification column .muted { .status { &__content { - color: $primary-text-color; + color: $read-primary-text-color; - p { color: $primary-text-color } + p { color: $read-primary-text-color } - a { color: $secondary-text-color } + a { color: $read-secondary-text-color } } - &__display-name strong { color: $primary-text-color } + &__display-name strong { color: $read-primary-text-color } + } + + .poll { + color: $read-primary-text-color; + + &__chart { + background: $read-poll-bar-color; + + &.leading { background: $read-poll-bar-leading-color } + } + + &__footer, + &__link { color: $read-ui-text-color } } } @@ -267,7 +303,42 @@ a { color: $ui-text-color } p a { color: $link-text-color } + } + &__trends { + background: $background-color; + margin-bottom: 0; + + h4 { + color: $section-text-color; + padding: 12px 16px; + border-top: 1px solid $border-color; + border-bottom: none; + } + } +} + +.trends__item { + padding: 16px; + border-bottom: none; + + &__name { + color: $secondary-text-color; + font-size: 12px; + + a { color: $primary-text-color } + } + + &__current { + padding-right: 16px; + margin-left: 4px; + color: $secondary-text-color; + } + + &__sparkline path { + stroke: $primary-color; + fill: $primary-color; + fill-opacity: 0.5; } } @@ -330,22 +401,22 @@ .notification { &__filter-bar { - background: $top-bar-color; + background: $tab-background-color; border-bottom: 1px solid $border-color; z-index: 1; button { - background: $top-bar-color; - color: $top-bar-icon-color; + background: $tab-background-color; + color: $tab-indicator-color; font-size: 16px; span { font-size: 14px } &.active { - color: $tab-indicator-color; - border-bottom: 4px solid $tab-indicator-color; + color: $tab-indicator-active-color; + border-bottom: 4px solid $tab-indicator-active-color; - &:before, + &::before, &:after { border: none } &:focus { background: $tab-indicator-background-focus-color } @@ -370,6 +441,7 @@ .icon-button.disabled { color: $disabled-icon-color } } +// read notification .notification.notification-favourite.focusable, .notification.notification-follow.focusable { background: $list-background-inactive-color } @@ -384,8 +456,6 @@ .react-swipeable-view-container { height: auto } -.tabs-bar__wrapper { background: transparent } - .attachment-list__list a { color: $secondary-text-color } .focusable { background: transparent !important } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/components.scss b/app/javascript/styles/material-v2-dark/components.scss index f1e594e3c..92d2801f4 100644 --- a/app/javascript/styles/material-v2-dark/components.scss +++ b/app/javascript/styles/material-v2-dark/components.scss @@ -149,7 +149,7 @@ &__item a { font-size: 14px; - padding: 9px 16px; + padding: 8px 16px; background: $menu-background-color; color: $menu-text-color; @@ -166,11 +166,33 @@ } .compose-form { - .autosuggest-textarea__textarea { - background: $card-background-color; - color: $ui-text-color; + .autosuggest-textarea { + &__textarea { + background: $card-background-color; + color: $ui-text-color; + + &::placeholder { color: $tips-text-color } + } - &::placeholder { color: $tips-text-color } + &__suggestions { + @include shadow-1dp; + background: $menu-background-color; + color: $ui-text-color; + border-radius: $card-radius; + font-size: 16px; + padding: 8px 0; + + &__item { + padding: 8px; + border-radius: 0; + + &:hover { background: $menu-background-hover-color } + + &.selected, + &:focus, + &:active { background: $menu-background-active-color } + } + } } .spoiler-input__input { @@ -234,20 +256,42 @@ } } -.poll__input { - border: 2px solid $control-border-color; - width: 20px; - height: 20px; - flex: 0 0 20px; +.no-reduce-motion .spoiler-input { + transition-duration: .2s, .2s; } -.poll__text input[type=text] { - color: $ui-text-color; - background: $background-color; - border: 1px solid $border-color; - padding: 8px 12px; - &:focus { border-color: $border-active-color } +.poll { + &__input { + border: 2px solid $control-border-color; + width: 20px; + height: 20px; + flex: 0 0 20px; + } + + &__text input[type=text] { + color: $ui-text-color; + background: $background-color; + border: 1px solid $border-color; + padding: 8px 12px; + + &:focus { border-color: $border-active-color } + } + + &__chart { + border-radius: 0; + background: $poll-bar-color; + + &.leading { background: $poll-bar-leading-color } + } + + &__footer { + padding-top: 8px; + padding-bottom: 0; + color: $ui-text-color; + } + + &__link { color: $ui-text-color } } .privacy-dropdown { @@ -336,4 +380,10 @@ } &__content { color: $primary-text-color } +} + +.attachment-list { + &__list a { color: $secondary-text-color } + + &.compact .fa { color: $icon-color } } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/config.scss b/app/javascript/styles/material-v2-dark/config.scss index 1d9a47e68..25becc639 100644 --- a/app/javascript/styles/material-v2-dark/config.scss +++ b/app/javascript/styles/material-v2-dark/config.scss @@ -30,32 +30,10 @@ // Favorite icon settings -// If you exclude 'material-icons.scss', please comment out this section. -.fa { - &.fa-star:before { content: "star" } // Star - //&.fa-star:before { content: "favorite" } // Heart - //&.fa-star:before { content: "plus_one" } // +1 -} +$favorite-icon: "star"; $favorite-icon-border: "star_border"; // Star +//$favorite-icon: "favorite"; $favorite-icon-border: "favorite_border"; // Heart +//$favorite-icon: "plus_one"; $favorite-icon-border: "plus_one"; // +1 -.star-icon.active, -.star-icon.icon-button.active.active, -.notification__favourite-icon-wrapper .star-icon, -.status__action-bar-button.star-icon.icon-button.active { - color: #ffd600; // Star - //color: #ff4081; // Heart - //color: #db4437; // +1 -} - -.status__action-bar-button.star-icon.icon-button, -.star-icon.icon-button { - .fa.fa-star:before { content: "star_border" } // Star - //.fa.fa-star:before { content: "favorite_border" } // Heart - //.fa.fa-star:before { content: "plus_one" } // +1 - - &.active, - &.active.activate { - .fa.fa-star:before { content: "star" } // Star - //.fa.fa-star:before { content: "favorite" } // Heart - //.fa.fa-star:before { content: "plus_one" } // +1 - } -} \ No newline at end of file +$favorite-icon-color: #ffd600; // Star +//$favorite-icon-color: #ff4081; // Heart +//$favorite-icon-color: #db4437; // +1 \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/emoji-picker.scss b/app/javascript/styles/material-v2-dark/emoji-picker.scss index d57c5c041..2c17701cf 100644 --- a/app/javascript/styles/material-v2-dark/emoji-picker.scss +++ b/app/javascript/styles/material-v2-dark/emoji-picker.scss @@ -46,7 +46,7 @@ } &-bar { - background-color: $tab-indicator-color; + background-color: $tab-indicator-active-color; } &:hover { @@ -63,7 +63,7 @@ background: $search-bar-color; color: $ui-text-color; border: 0; - border-radius: $bar-radius; + border-radius: $search-bar-radius; &:focus { @include shadow-2dp; @@ -82,7 +82,7 @@ background: $menu-background-color; } - &-emoji:hover:before { + &-emoji:hover::before { background-color: $icon-background-hover-color; } diff --git a/app/javascript/styles/material-v2-dark/icons.scss b/app/javascript/styles/material-v2-dark/icons.scss index 6778e3d2c..beca11a6f 100644 --- a/app/javascript/styles/material-v2-dark/icons.scss +++ b/app/javascript/styles/material-v2-dark/icons.scss @@ -15,16 +15,21 @@ } -.fa { vertical-align: sub } //マテリアルアイコンを文字の高さにそろえる +.fa { vertical-align: sub } // adjust material icon font baseline to other font .fa.fa-times, -.fa.fa-eraser { vertical-align: middle } //↑の例外 +.fa.fa-eraser, +.fa.fa-plus { vertical-align: middle } // adjustment exception + +.fa.fa-check { vertical-align: initial } .fa.fa-lock { text-transform: none } .fa-fw { width: 16px } -.fa.fa-chevron-left.column-back-button__icon.fa-fw { +// icon in tab settings +.fa.fa-chevron-left.column-back-button__icon.fa-fw, +.text-btn.column-header__setting-btn .fa.fa-eraser { font-size: 20px; margin-right: 16px; } @@ -34,4 +39,10 @@ border: none; padding: 2px 6px; border-radius: 12px; -} \ No newline at end of file +} + +// favorite icon color +.star-icon.active, +.star-icon.icon-button.active.active, +.notification__favourite-icon-wrapper .star-icon, +.status__action-bar-button.star-icon.icon-button.active { color: $favorite-icon-color } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/material-icons.scss b/app/javascript/styles/material-v2-dark/material-icons.scss index 52b959485..e473dfe31 100644 --- a/app/javascript/styles/material-v2-dark/material-icons.scss +++ b/app/javascript/styles/material-v2-dark/material-icons.scss @@ -1,5 +1,6 @@ @charset "UTF-8"; @import 'config'; +@import 'functions'; .fa { @@ -31,6 +32,7 @@ &.fa-chevron-right, &.fa-reply, &.fa-reply-all, + &.fa-share-alt, &.fa-star, &.fa-bookmark, &.fa-ellipsis-h, @@ -46,51 +48,99 @@ &.fa-eye, &.fa-eye-slash, &.fa-pencil, - &.fa-trash { + &.fa-trash, + &.fa-play, + &.fa-external-link, + &.fa-retweet, + &.fa-link, + &.fa-pause, + &.fa-volume-up, + &.fa-volume-off, + &.fa-expand, + &.fa-download, + &.fa-arrows-alt, + &.fa-compress, + &.fa-user-times, + &.fa-check { font-family: "Material Icons"; } } .fa { - &.fa-bars:before, &.fa-navicon:before,&.fa-reorder:before { content: "menu" } - &.fa-globe:before { content: "public" } - &.fa-cog:before, &.fa-cogs:before, &.fa-gears:before { content: "settings" } - &.fa-sign-out:before { content: "exit_to_app" } - &.fa-search:before { content: "search" } - &.fa-times:before, &.fa-times-circle:before, &.fa-close:before, &.fa-remove:before { content: "close" } - &.fa-chevron-down:before, &.fa-ellipsis-v:before { content: "more_vert" } - &.fa-paperclip:before { content: "attach_file" } - &.fa-tasks:before { content: "poll" } - &.fa-plus:before { content: "add" } - &.fa-unlock:before { content: "lock_open" } - &.fa-lock:before { content: "lock" } - &.fa-envelope:before { content: "mail" } - &.fa-home:before { content: "home" } - &.fa-bullhorn:before { content: "announcement" } - &.fa-sliders:before { content: "tune" } - &.fa-chevron-left:before { content: "arrow_back" } - &.fa-chevron-right:before { content: "arrow_forward" } - &.fa-reply:before { content: "reply" } - &.fa-reply-all:before { content: "reply_all" } - &.fa-bookmark:before { content: "bookmark" } - &.fa-ellipsis-h:before { content: "more_horiz" } - &.fa-bell:before { content: "notifications" } - &.fa-eraser:before { content: "clear_all" } - &.fa-users:before { content: "people" } - &.fa-file-text:before { content: "web" } - &.fa-user-plus:before { content: "person_add" } - &.fa-address-book:before { content: "explore" } - &.fa-address-book-o:before { content: "explore" } - &.fa-list:before { content: "list" } - &.fa-list-ul:before { content: "list" } - &.fa-eye:before { content: "visibility" } - &.fa-eye-slash:before { content : "visibility_off" } - &.fa-pencil:before { content: "create" } - &.fa-trash:before { content: "delete" } + &.fa-bars::before, &.fa-navicon::before,&.fa-reorder::before { content: "menu" } + &.fa-globe::before { content: "public" } + &.fa-cog::before, &.fa-cogs::before, &.fa-gears::before { content: "settings" } + &.fa-sign-out::before { content: "exit_to_app" } + &.fa-search::before { content: "search" } + &.fa-times::before, &.fa-times-circle::before, &.fa-close::before, &.fa-remove::before { content: "close" } + &.fa-chevron-down::before, &.fa-ellipsis-v::before { content: "more_vert" } + &.fa-paperclip::before { content: "attach_file" } + &.fa-tasks::before { content: "poll" } + &.fa-plus::before { content: "add" } + &.fa-unlock::before { content: "lock_open" } + &.fa-lock::before { content: "lock" } + &.fa-envelope::before { content: "mail" } + &.fa-home::before { content: "home" } + &.fa-bullhorn::before { content: "announcement" } + &.fa-sliders::before { content: "tune" } + &.fa-chevron-left::before { content: "arrow_back" } + &.fa-chevron-right::before { content: "arrow_forward" } + &.fa-reply::before { content: "reply" } + &.fa-reply-all::before { content: "reply_all" } + &.fa-share-alt::before { content: "share" } + &.fa-star::before { content: $favorite-icon } + &.fa-bookmark::before { content: "bookmark" } + &.fa-ellipsis-h::before { content: "more_horiz" } + &.fa-bell::before { content: "notifications" } + &.fa-eraser::before { content: "clear_all" } + &.fa-users::before { content: "people" } + &.fa-file-text::before { content: "web" } + &.fa-user-plus::before { content: "person_add" } + &.fa-address-book::before { content: "explore" } + &.fa-address-book-o::before { content: "explore" } + &.fa-list::before { content: "list" } + &.fa-list-ul::before { content: "list" } + &.fa-eye::before { content: "visibility" } + &.fa-eye-slash::before { content : "visibility_off" } + &.fa-pencil::before { content: "create" } + &.fa-trash::before { content: "delete" } + &.fa-play::before { content: "play_arrow" } + &.fa-external-link::before { content: "open_in_new" } + &.fa-retweet::before { content: "repeat" } + &.fa-link::before { content: "link" } + &.fa-pause::before { content: "pause" } + &.fa-volume-up::before { content: "volume_up" } + &.fa-volume-off::before { content: "volume_off" } + &.fa-expand::before { content: "web_asset" } + &.fa-download::before { content: "file_download" } + &.fa-arrows-alt::before { content: "fullscreen" } + &.fa-compress::before { content: "fullscreen_exit" } + &.fa-user-times::before { content: "delete" } + &.fa-check::before { content: "check" } } +// bookmark icon .status__action-bar-button.icon-button, .bookmark-icon.icon-button { - .fa.fa-bookmark:before { content: "bookmark_border" } - &.active .fa.fa-bookmark:before { content: "bookmark" } + .fa.fa-bookmark::before { content: "bookmark_border" } + &.active .fa.fa-bookmark::before { content: "bookmark" } +} + +// favorite icon +.status__action-bar-button.star-icon.icon-button, +.star-icon.icon-button { + .fa.fa-star::before { content: $favorite-icon-border } + + &.active, + &.active.activate { + .fa.fa-star::before { content: $favorite-icon } + } +} + +// boost icon +.no-reduce-motion button.icon-button i.fa-retweet { + height: 18px; + width: 18px; + transition: background-position .3s steps(1); + background-image: url('data:image/svg+xml;utf8,'); } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/media.scss b/app/javascript/styles/material-v2-dark/media.scss index 74dfd8dcc..64a69a129 100644 --- a/app/javascript/styles/material-v2-dark/media.scss +++ b/app/javascript/styles/material-v2-dark/media.scss @@ -26,13 +26,74 @@ } } -.icon-button.overlayed { - border-radius: 50%; - background: $media-icon-background-color; - color: $media-icon-color; - - &:hover { +.media-modal { + &__nav { background: $media-icon-background-color; - color: $media-icon-hover-color; + color: $media-icon-color; + height: 48px; + width: 48px; + margin: auto 16px; + padding: 8px; + border-radius: 50%; + + .fa { width: 32px } } + + &__button { + background-color: $media-page-indicator-color; + + &--active { background-color: $media-page-indicator-active-color } + } +} + +.video-player { + &__controls { + background: linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.2) 60%,transparent); + padding: 0 12px; + } + + &__seek { + &::before { + background: rgba(255,255,255,.2); + border-radius: 0; + } + + &__buffer { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__progress { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__volume { + &::before { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__current { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__time-current { margin-left: 68px } + + &__buttons button { font-size: 20px } } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-dark/mobile.scss b/app/javascript/styles/material-v2-dark/mobile.scss index 448f80585..de6f4e94c 100644 --- a/app/javascript/styles/material-v2-dark/mobile.scss +++ b/app/javascript/styles/material-v2-dark/mobile.scss @@ -12,14 +12,17 @@ border-bottom: 4px solid transparent; &.active { - border-bottom: 4px solid $tab-indicator-color; - color: $tab-indicator-color; + border-bottom: 4px solid $tab-indicator-active-color; + color: $tab-indicator-active-color; } .fa { font-size: 20px } } - &__wrapper { @include shadow-4dp } + &__wrapper { + @include shadow-4dp; + background: transparent; + } } diff --git a/app/javascript/styles/material-v2-dark/modal.scss b/app/javascript/styles/material-v2-dark/modal.scss index 40710fe43..7734c8dfa 100644 --- a/app/javascript/styles/material-v2-dark/modal.scss +++ b/app/javascript/styles/material-v2-dark/modal.scss @@ -29,10 +29,25 @@ color: $ui-text-color; font-size: 16px; - &:hover { background: $card-background-hover-color } + &:hover { + background: $card-background-hover-color; + color: $ui-text-color; + } } .dropdown-menu__separator { border-bottom-color: $border-color } + + .status { + background: $card-background-color; + border-bottom-color: $border-color; + padding-top: 12px; + padding-bottom: 12px; + + &__avatar { + left: 12px; + top: 12px; + } + } } .report-modal { diff --git a/app/javascript/styles/material-v2-dark/statuses.scss b/app/javascript/styles/material-v2-dark/statuses.scss index c569b3b92..f60c2d859 100644 --- a/app/javascript/styles/material-v2-dark/statuses.scss +++ b/app/javascript/styles/material-v2-dark/statuses.scss @@ -73,6 +73,8 @@ } } + &__prepend { color: $secondary-text-color } + &.status-direct:not(.read) { background: transparent; border-bottom-color: $border-color; @@ -99,9 +101,25 @@ &__description { color: $secondary-text-color } + &__actions { + &>div { + background: $media-icon-background-color; + border-radius: $button-radius; + } + + button, + a { + color: $media-icon-color; + font-size: 20px; + } + + a { bottom: auto } + } + &.compact { border-color: $border-color; outline: none; + background: transparent; .status-card { &__content { padding: 12px } @@ -114,8 +132,16 @@ &:hover { background-color: $card-background-color } } +// Detailed status in mobile .status.light { - .display-name span { color: $info-text-color } + .status { + &__display-name { color: $primary-text-color } + &__relative-time { color: $info-text-color } + &__content { color: $primary-text-color } + } + + .display-name { color: $secondary-text-color } + .display-name strong { color: $primary-text-color } } .detailed-status { diff --git a/app/javascript/styles/material-v2-light/_functions.scss b/app/javascript/styles/material-v2-light/_functions.scss new file mode 100644 index 000000000..54750d029 --- /dev/null +++ b/app/javascript/styles/material-v2-light/_functions.scss @@ -0,0 +1,12 @@ +@charset "UTF-8"; +@use "sass:string"; + + +@function to-string($value) { + @return inspect($value); +} + +// convert hex color code to svg styled color code +@function svg-color ($color) { + @return '%23' + string.slice(to-string($color), 2, 7); +} \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/account.scss b/app/javascript/styles/material-v2-light/account.scss index 2d8f2f210..b43194729 100644 --- a/app/javascript/styles/material-v2-light/account.scss +++ b/app/javascript/styles/material-v2-light/account.scss @@ -5,7 +5,7 @@ .account { border-bottom: 1px solid $border-color; - .account__display-name, + .account__display-name { color: $primary-text-color } .account__display-name strong { color: $secondary-text-color } &__avatar { @@ -13,11 +13,15 @@ width: 40px; height: 40px; - &-overlay-base { - border-radius: 50%; - width: 44px; - height: 44px; - background-size: 44px; + &-overlay { + &-base { + border-radius: 50%; + width: 44px; + height: 44px; + background-size: 44px; + } + + &-overlay { border-radius: $avater-radius } } } @@ -109,24 +113,24 @@ } &__section-headline { - background: $card-background-color; + background: $text-tab-background-color; border-bottom: 1px solid $border-color; a { padding: 16px 0; - color: $secondary-text-color; + color: $text-tab-indicator-color; &.active { - color: $tab-indicator-color; - border-bottom: 4px solid $tab-indicator-color; + color: $text-tab-indicator-active-color; + border-bottom: 4px solid $text-tab-indicator-active-color; - &:before, + &::before, &:after { border: none } - &:focus { background: $tab-indicator-background-focus-color } + &:focus { background: $text-tab-indicator-background-focus-color } } - &:hover { background: $tab-indicator-background-hover-color } + &:hover { background: $text-tab-indicator-background-hover-color } } } } diff --git a/app/javascript/styles/material-v2-light/button.scss b/app/javascript/styles/material-v2-light/button.scss index 6bb6bfa29..38fd1a3c1 100644 --- a/app/javascript/styles/material-v2-light/button.scss +++ b/app/javascript/styles/material-v2-light/button.scss @@ -23,6 +23,17 @@ } } + &.overlayed { + border-radius: 50%; + background: $media-icon-background-color; + color: $media-icon-color; + + &:hover { + background: $media-icon-background-color; + color: $media-icon-hover-color; + } + } + &:hover { color: $icon-button-hover-color; background-color: $icon-background-hover-color; @@ -75,4 +86,10 @@ &:hover { background: $text-button-hover-color } &:focus { background: $text-button-focus-color } +} + +.spoiler-button__overlay__label { + background: $media-icon-background-color; + border-radius: $button-radius; + color: $media-icon-color; } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/color/mastodon-dark.scss b/app/javascript/styles/material-v2-light/color/mastodon-dark.scss deleted file mode 100644 index 14ef148f4..000000000 --- a/app/javascript/styles/material-v2-light/color/mastodon-dark.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #2b90d9; -$secondary-color: #2b90d9; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #ffffff; -$secondary-text-color: #9baec8; -$ui-text-color: #fff; -$inverted-text-color: #000000; -$section-text-color: $primary-color; -$info-text-color: #606984; -$tips-text-color: #6d7889; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4ea2df; -$menu-text-color: #282c37; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $inverted-text-color; - -// Background-color -$background-color: #191b22; -$menu-background-color: #d9e1e8; -$menu-background-hover-color: lighten($menu-background-color, 6%); -$menu-background-active-color: lighten($menu-background-color, 10%); -$menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #444b5d; -$card-background-hover-color: lighten($card-background-color, 6%); -$card-background-inactive-color: lighten($card-background-color, 10%); -$list-background-color: #282c37; -$list-background-hover-color: lighten($list-background-color, 6%); -$list-background-active-color: lighten($list-background-color, 10%); -$list-background-inactive-color: lighten($list-background-color, 10%); -$verified-background-color: darken($verified-color, 20%); - -// Chip color -$contained-chip-color: #42485a; -$contained-chip-hover-color: lighten($contained-chip-color, 6%); -$contained-chip-selected-color: lighten($contained-chip-color, 12%); -$outlined-chip-color: #393f4f; -$outlined-chip-hover-color: lighten($outlined-chip-color, 6%); -$outlined-chip-selected-color: lighten($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #9baec8; -$icon-hover-color: lighten($icon-color, 30%); -$icon-background-hover-color: lighten($background-color, 14%); -$icon-background-active-color: lighten($background-color, 18%); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: #fff; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $icon-hover-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.7); -$text-button-focus-color: transparentize($text-button-color, 0.6); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($primary-color, 18%); - -// Border color -$border-color: #393f4f; -$border-active-color: lighten($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: lighten($background-color, 16%); -$scroll-bar-thumb-hover-color: lighten($background-color, 26%); -$scroll-bar-thumb-active-color: lighten($background-color, 32%); - -// App bar color -$top-bar-color: #313543; -$search-bar-color: lighten($top-bar-color, 6%); -$search-bar-focus-color: #ffffff; - -// Tab color -$tab-indicator-color: #d9e1e8; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.7); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.6); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/color/mastodon-light.scss b/app/javascript/styles/material-v2-light/color/mastodon-light.scss deleted file mode 100644 index 62a064b87..000000000 --- a/app/javascript/styles/material-v2-light/color/mastodon-light.scss +++ /dev/null @@ -1,106 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #2b90d9; -$secondary-color: #2b90d9; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #000000; -$secondary-text-color: #5f6368; -$ui-text-color: #202124; -$section-text-color: $primary-color; -$info-text-color: #5e5e5e; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #217aba; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $primary-text-color; - -// Background-color -$background-color: #eff3f5; -$menu-background-color: $background-color; -$menu-background-hover-color: darken($background-color, 6%); -$menu-background-active-color: darken($background-color, 10%); -$menu-background-active-hover-color: darken($background-color, 16%); -$card-background-color: #ffffff; -$card-background-hover-color: darken($card-background-color, 6%); -$card-background-inactive-color: darken($card-background-color, 10%); -$list-background-color: #ffffff; -$list-background-hover-color: darken($list-background-color, 6%); -$list-background-active-color: darken($list-background-color, 10%); -$list-background-inactive-color: darken($list-background-color, 10%); -$verified-background-color: lighten($verified-color, 20%); - -// Chip color -$contained-chip-color: #e0e0e0; -$contained-chip-hover-color: darken($contained-chip-color, 6%); -$contained-chip-selected-color: darken($contained-chip-color, 12%); -$outlined-chip-color: #ffffff; -$outlined-chip-hover-color: darken($outlined-chip-color, 6%); -$outlined-chip-selected-color: darken($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #282c37; -$icon-hover-color: darken($icon-color, 30%); -$icon-background-hover-color: darken($background-color, 4%); -$icon-background-active-color: darken($background-color, 8%); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: $icon-color; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $icon-hover-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: lighten($text-button-color, 36%); -$text-button-focus-color: lighten($text-button-color, 30%); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: $primary-color; -$toggle-track-active-color: lighten($primary-color, 26%); - -// Border color -$border-color: #dadce0; -$border-active-color: darken($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: #ccd7e0; -$scroll-bar-thumb-hover-color: darken($scroll-bar-thumb-color, 10%); -$scroll-bar-thumb-active-color: darken($scroll-bar-thumb-color, 18%); - -// App bar color -$top-bar-color: #ffffff; -$search-bar-color: #d9e1e8; -$search-bar-focus-color: $background-color; - -// Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: lighten($tab-indicator-color, 36%); -$tab-indicator-background-focus-color: lighten($tab-indicator-color, 30%); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/color/v1-dark.scss b/app/javascript/styles/material-v2-light/color/v1-dark.scss deleted file mode 100644 index f6168a35e..000000000 --- a/app/javascript/styles/material-v2-light/color/v1-dark.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #ffffff; -$secondary-text-color: #9aa0a6; -$ui-text-color: #e8eaed; -$inverted-text-color: #000000; -$section-text-color: $primary-color; -$info-text-color: #9aa0a6; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $inverted-text-color; - -// Background-color -$background-color: #303030; -$menu-background-color: #1e1e1e; -$menu-background-hover-color: lighten($menu-background-color, 6%); -$menu-background-active-color: lighten($menu-background-color, 10%); -$menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #1e1e1e; -$card-background-hover-color: lighten($card-background-color, 6%); -$card-background-inactive-color: lighten($card-background-color, 10%); -$list-background-color: #1e1e1e; -$list-background-hover-color: lighten($list-background-color, 6%); -$list-background-active-color: lighten($list-background-color, 10%); -$list-background-inactive-color: lighten($list-background-color, 10%); -$verified-background-color: darken($verified-color, 20%); - -// Chip color -$contained-chip-color: #2e2e2e; -$contained-chip-hover-color: lighten($contained-chip-color, 6%); -$contained-chip-selected-color: lighten($contained-chip-color, 12%); -$outlined-chip-color: #1e1e1e; -$outlined-chip-hover-color: lighten($outlined-chip-color, 6%); -$outlined-chip-selected-color: lighten($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #e2e2e3; -$icon-hover-color: lighten($icon-color, 30%); -$icon-background-hover-color: transparentize(#ffffff, 0.8); -$icon-background-active-color: transparentize(#ffffff, 0.7); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: #ffffff; -$top-bar-icon-hover-color: lighten($top-bar-icon-color, 10%); -$top-bar-icon-active-color: lighten($top-bar-icon-color, 18%); -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #5f6368; -$border-active-color: lighten($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: lighten($background-color, 20%); -$scroll-bar-thumb-hover-color: lighten($background-color, 30%); -$scroll-bar-thumb-active-color: lighten($background-color, 38%); - -// App bar color -$top-bar-color: #2196f3; -$search-bar-color: lighten($background-color, 6%); -$search-bar-focus-color: #ffffff; - -// Tab color -$tab-indicator-color: $top-bar-icon-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/color/v1-light.scss b/app/javascript/styles/material-v2-light/color/v1-light.scss deleted file mode 100644 index 3a09d2a5d..000000000 --- a/app/javascript/styles/material-v2-light/color/v1-light.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #000000; -$secondary-text-color: #5f6368; -$ui-text-color: #202124; -$inverted-text-color: #ffffff; -$section-text-color: $primary-color; -$info-text-color: #5e5e5e; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $inverted-text-color; -$search-bar-text-color: $primary-text-color; - -// Background-color -$background-color: #fafafa; -$menu-background-color: #ffffff; -$menu-background-hover-color: darken($menu-background-color, 6%); -$menu-background-active-color: darken($menu-background-color, 10%); -$menu-background-active-hover-color: darken($menu-background-color, 16%); -$card-background-color: #ffffff; -$card-background-hover-color: darken($card-background-color, 6%); -$card-background-inactive-color: darken($card-background-color, 10%); -$list-background-color: #ffffff; -$list-background-hover-color: darken($list-background-color, 6%); -$list-background-active-color: darken($list-background-color, 10%); -$list-background-inactive-color: darken($list-background-color, 10%); -$verified-background-color: lighten($verified-color, 20%); - -// Chip color -$contained-chip-color: #e0e0e0; -$contained-chip-hover-color: darken($contained-chip-color, 6%); -$contained-chip-selected-color: darken($contained-chip-color, 12%); -$outlined-chip-color: #ffffff; -$outlined-chip-hover-color: darken($outlined-chip-color, 6%); -$outlined-chip-selected-color: darken($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #757575; -$icon-hover-color: darken($icon-color, 30%); -$icon-background-hover-color: transparentize(#000000, 0.9); -$icon-background-active-color: transparentize(#000000, 0.8); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: #ffffff; -$top-bar-icon-hover-color: darken($top-bar-icon-color, 10%); -$top-bar-icon-active-color: darken($top-bar-icon-color, 18%); -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: $secondary-color; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #dadce0; -$border-active-color: darken($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: darken($background-color, 20%); -$scroll-bar-thumb-hover-color: darken($scroll-bar-thumb-color, 10%); -$scroll-bar-thumb-active-color: darken($scroll-bar-thumb-color, 18%); - -// App bar color -$top-bar-color: #2196f3; -$search-bar-color: darken($background-color, 6%); -$search-bar-focus-color: $background-color; - -// Tab color -$tab-indicator-color: $top-bar-icon-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/color/v2-dark.scss b/app/javascript/styles/material-v2-light/color/v2-dark.scss deleted file mode 100644 index aae145b3b..000000000 --- a/app/javascript/styles/material-v2-light/color/v2-dark.scss +++ /dev/null @@ -1,107 +0,0 @@ -@charset "UTF-8"; - - -// Base color -$primary-color: #4285f4; -$secondary-color: #db4437; -$error-color: #B00020; -$verified-color: #4caf50; - -// Text color -$primary-text-color: #ffffff; -$secondary-text-color: #9aa0a6; -$ui-text-color: #e8eaed; -$inverted-text-color: #000000; -$section-text-color: $primary-color; -$info-text-color: #9aa0a6; -$tips-text-color: #c0c0c0; -$disabled-text-color: rgba(0,0,0,.54); -$link-text-color: #4285f4; -$menu-text-color: $ui-text-color; -$top-bar-text-color: $ui-text-color; -$search-bar-text-color: $inverted-text-color; - -// Background-color -$background-color: #121212; -$menu-background-color: #1e1e1e; -$menu-background-hover-color: lighten($menu-background-color, 6%); -$menu-background-active-color: lighten($menu-background-color, 10%); -$menu-background-active-hover-color: lighten($menu-background-color, 16%); -$card-background-color: #1e1e1e; -$card-background-hover-color: lighten($card-background-color, 6%); -$card-background-inactive-color: lighten($card-background-color, 10%); -$list-background-color: #1e1e1e; -$list-background-hover-color: lighten($list-background-color, 6%); -$list-background-active-color: lighten($list-background-color, 10%); -$list-background-inactive-color: lighten($list-background-color, 10%); -$verified-background-color: darken($verified-color, 20%); - -// Chip color -$contained-chip-color: #2e2e2e; -$contained-chip-hover-color: lighten($contained-chip-color, 6%); -$contained-chip-selected-color: lighten($contained-chip-color, 12%); -$outlined-chip-color: #1e1e1e; -$outlined-chip-hover-color: lighten($outlined-chip-color, 6%); -$outlined-chip-selected-color: lighten($outlined-chip-color, 12%); - -// Badge color -$badge-color: $primary-color; -//$badge-color: $secondary-color; - -// Icon color -$icon-color: #e2e2e3; -$icon-hover-color: lighten($icon-color, 30%); -$icon-background-hover-color: transparentize(#ffffff, 0.8); -$icon-background-active-color: transparentize(#ffffff, 0.7); -$disabled-icon-color: lighten($icon-color, 16%); -$top-bar-icon-color: $icon-color; -$top-bar-icon-hover-color: $icon-hover-color; -$top-bar-icon-active-color: $primary-color; -$media-icon-color: transparentize(#ffffff, 0.4); -$media-icon-hover-color: transparentize(#ffffff, 0.2); -$media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); -$control-border-color: $icon-color; - -// Button color -$icon-button-color: $icon-color; -$icon-button-hover-color: $icon-hover-color; -$icon-button-active-color: $primary-color; -$icon-button-active-hover-color: lighten($icon-button-active-color, 10%); -$contained-button-color: $primary-color; -$contained-button-hover-color: lighten($contained-button-color, 10%); -$outlined-button-color: $primary-color; -$outlined-button-hover-color: lighten($primary-color, 36%); -$outlined-button-active-color: lighten($primary-color, 30%); -$text-button-color: $primary-color; -$text-button-hover-color: transparentize($text-button-color, 0.8); -$text-button-focus-color: transparentize($text-button-color, 0.7); -$floating-action-button-color: #1e1e1e; -$floating-action-button-hover-color: lighten($floating-action-button-color, 6%); -$floating-action-button-active-color: lighten($floating-action-button-color, 10%); -$floating-action-button-icon-color: #ffffff; - -// Toggle color -$toggle-thumb-color: #ffffff; -$toggle-track-color: darken($toggle-thumb-color, 18%); -$toggle-thumb-active-color: #1a73e8; -$toggle-track-active-color: lighten($toggle-thumb-active-color, 18%); - -// Border color -$border-color: #5f6368; -$border-active-color: lighten($border-color, 30%); - -// Scroll bar color -$scroll-bar-thumb-color: lighten($background-color, 20%); -$scroll-bar-thumb-hover-color: lighten($scroll-bar-thumb-color, 10%); -$scroll-bar-thumb-active-color: lighten($scroll-bar-thumb-color, 18%); - -// App bar color -$top-bar-color: #272727; -$search-bar-color: lighten($top-bar-color, 6%); -$search-bar-focus-color: #ffffff; - -// Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/color/v2-light.scss b/app/javascript/styles/material-v2-light/color/v2-light.scss index 99d502543..74115f87c 100644 --- a/app/javascript/styles/material-v2-light/color/v2-light.scss +++ b/app/javascript/styles/material-v2-light/color/v2-light.scss @@ -60,7 +60,7 @@ $top-bar-icon-active-color: $primary-color; $media-icon-color: transparentize(#ffffff, 0.4); $media-icon-hover-color: transparentize(#ffffff, 0.2); $media-icon-background-color: transparentize(#000000, 0.5); -$media-icon-background-hover-color: transparentize(#ffffff, 0.8); +$media-icon-background-hover-color: transparentize(#000000, 0.8); $control-border-color: $icon-color; // Button color @@ -102,6 +102,28 @@ $search-bar-color: darken($background-color, 6%); $search-bar-focus-color: $background-color; // Tab color -$tab-indicator-color: $primary-color; -$tab-indicator-background-hover-color: transparentize($tab-indicator-color, 0.8); -$tab-indicator-background-focus-color: transparentize($tab-indicator-color, 0.7); \ No newline at end of file +$tab-indicator-color: $top-bar-icon-color; +$tab-indicator-active-color: $top-bar-icon-color; +$tab-background-color: $top-bar-color; +$tab-indicator-background-hover-color: transparentize($tab-indicator-active-color, 0.9); +$tab-indicator-background-focus-color: transparentize($tab-indicator-active-color, 0.8); +$text-tab-indicator-color: $secondary-text-color; +$text-tab-indicator-active-color: $ui-text-color; +$text-tab-background-color: #ffffff; +$text-tab-indicator-background-hover-color: transparentize($text-tab-indicator-active-color, 0.9); +$text-tab-indicator-background-focus-color: transparentize($text-tab-indicator-active-color, 0.8); + +// Media indicator color +$media-page-indicator-color: #9e9e9e; +$media-page-indicator-active-color: #e6e6e6; + +// Poll chart color +$poll-bar-leading-color: $primary-color; +$poll-bar-color: lighten($poll-bar-leading-color, 30%); + +// Contents color in read status +$read-primary-text-color: transparentize($primary-text-color, 0.3); +$read-secondary-text-color: transparentize($secondary-text-color, 0.3); +$read-ui-text-color: transparentize($ui-text-color, 0.3); +$read-poll-bar-leading-color: transparentize($poll-bar-leading-color, 0.3); +$read-poll-bar-color: transparentize($poll-bar-color, 0.3); \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/columns.scss b/app/javascript/styles/material-v2-light/columns.scss index dc61167dc..689028581 100644 --- a/app/javascript/styles/material-v2-light/columns.scss +++ b/app/javascript/styles/material-v2-light/columns.scss @@ -22,6 +22,8 @@ color: $top-bar-text-color; } + &>.column-header__back-button { color: $top-bar-icon-color } + &.active { .column-header__icon { color: $secondary-color; @@ -62,14 +64,29 @@ &__setting-btn { color: $icon-button-color; + padding: 8px 0; &:hover { color: $icon-button-hover-color; - background: $icon-background-hover-color; + text-decoration: none; } + + .fa { font-size: 20px } + + span { vertical-align: middle } } - &__setting-arrows { font-size: 16px } + &__setting-arrows { + font-size: 16px; + border-bottom: 8px; + + .column-header__setting-btn { + padding: 8px; + border-radius: 50%; + + &:last-child { padding-right: 8px } + } + } &__wrapper { @include shadow-4dp; @@ -80,12 +97,13 @@ &.active { @include shadow-4dp; - &:before { background: transparent } + &::before { background: transparent } } } &__collapsible { color: $ui-text-color; + background: $card-background-color; border-top: 1px solid $border-color; &-inner { @@ -98,7 +116,7 @@ &__back-button { background: $top-bar-color; - color: $icon-color; + color: $top-bar-icon-color; padding: 8px; margin: auto 0; border-radius: 50%; @@ -156,6 +174,8 @@ margin-bottom: 0; margin-top: 8px; } + + &__row .text-btn { margin-bottom: 0 } } .column-back-button { @@ -163,6 +183,8 @@ background: $top-bar-color; color: $top-bar-icon-color; padding: 16px; + + span { visibility: hidden } // hide "back" string } .column-inline-form { @@ -222,17 +244,31 @@ } } +// read status in notification column .muted { .status { &__content { - color: $primary-text-color; + color: $read-primary-text-color; - p { color: $primary-text-color } + p { color: $read-primary-text-color } - a { color: $secondary-text-color } + a { color: $read-secondary-text-color } } - &__display-name strong { color: $primary-text-color } + &__display-name strong { color: $read-primary-text-color } + } + + .poll { + color: $read-primary-text-color; + + &__chart { + background: $read-poll-bar-color; + + &.leading { background: $read-poll-bar-leading-color } + } + + &__footer, + &__link { color: $read-ui-text-color } } } @@ -267,7 +303,42 @@ a { color: $ui-text-color } p a { color: $link-text-color } + } + &__trends { + background: $background-color; + margin-bottom: 0; + + h4 { + color: $section-text-color; + padding: 12px 16px; + border-top: 1px solid $border-color; + border-bottom: none; + } + } +} + +.trends__item { + padding: 16px; + border-bottom: none; + + &__name { + color: $secondary-text-color; + font-size: 12px; + + a { color: $primary-text-color } + } + + &__current { + padding-right: 16px; + margin-left: 4px; + color: $secondary-text-color; + } + + &__sparkline path { + stroke: $primary-color; + fill: $primary-color; + fill-opacity: 0.5; } } @@ -330,22 +401,22 @@ .notification { &__filter-bar { - background: $top-bar-color; + background: $tab-background-color; border-bottom: 1px solid $border-color; z-index: 1; button { - background: $top-bar-color; - color: $top-bar-icon-color; + background: $tab-background-color; + color: $tab-indicator-color; font-size: 16px; span { font-size: 14px } &.active { - color: $tab-indicator-color; - border-bottom: 4px solid $tab-indicator-color; + color: $tab-indicator-active-color; + border-bottom: 4px solid $tab-indicator-active-color; - &:before, + &::before, &:after { border: none } &:focus { background: $tab-indicator-background-focus-color } @@ -370,6 +441,7 @@ .icon-button.disabled { color: $disabled-icon-color } } +// read notification .notification.notification-favourite.focusable, .notification.notification-follow.focusable { background: $list-background-inactive-color } @@ -384,8 +456,6 @@ .react-swipeable-view-container { height: auto } -.tabs-bar__wrapper { background: transparent } - .attachment-list__list a { color: $secondary-text-color } .focusable { background: transparent !important } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/components.scss b/app/javascript/styles/material-v2-light/components.scss index f1e594e3c..92d2801f4 100644 --- a/app/javascript/styles/material-v2-light/components.scss +++ b/app/javascript/styles/material-v2-light/components.scss @@ -149,7 +149,7 @@ &__item a { font-size: 14px; - padding: 9px 16px; + padding: 8px 16px; background: $menu-background-color; color: $menu-text-color; @@ -166,11 +166,33 @@ } .compose-form { - .autosuggest-textarea__textarea { - background: $card-background-color; - color: $ui-text-color; + .autosuggest-textarea { + &__textarea { + background: $card-background-color; + color: $ui-text-color; + + &::placeholder { color: $tips-text-color } + } - &::placeholder { color: $tips-text-color } + &__suggestions { + @include shadow-1dp; + background: $menu-background-color; + color: $ui-text-color; + border-radius: $card-radius; + font-size: 16px; + padding: 8px 0; + + &__item { + padding: 8px; + border-radius: 0; + + &:hover { background: $menu-background-hover-color } + + &.selected, + &:focus, + &:active { background: $menu-background-active-color } + } + } } .spoiler-input__input { @@ -234,20 +256,42 @@ } } -.poll__input { - border: 2px solid $control-border-color; - width: 20px; - height: 20px; - flex: 0 0 20px; +.no-reduce-motion .spoiler-input { + transition-duration: .2s, .2s; } -.poll__text input[type=text] { - color: $ui-text-color; - background: $background-color; - border: 1px solid $border-color; - padding: 8px 12px; - &:focus { border-color: $border-active-color } +.poll { + &__input { + border: 2px solid $control-border-color; + width: 20px; + height: 20px; + flex: 0 0 20px; + } + + &__text input[type=text] { + color: $ui-text-color; + background: $background-color; + border: 1px solid $border-color; + padding: 8px 12px; + + &:focus { border-color: $border-active-color } + } + + &__chart { + border-radius: 0; + background: $poll-bar-color; + + &.leading { background: $poll-bar-leading-color } + } + + &__footer { + padding-top: 8px; + padding-bottom: 0; + color: $ui-text-color; + } + + &__link { color: $ui-text-color } } .privacy-dropdown { @@ -336,4 +380,10 @@ } &__content { color: $primary-text-color } +} + +.attachment-list { + &__list a { color: $secondary-text-color } + + &.compact .fa { color: $icon-color } } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/config.scss b/app/javascript/styles/material-v2-light/config.scss index f823bad9a..f53c47791 100644 --- a/app/javascript/styles/material-v2-light/config.scss +++ b/app/javascript/styles/material-v2-light/config.scss @@ -30,32 +30,10 @@ // Favorite icon settings -// If you exclude 'material-icons.scss', please comment out this section. -.fa { - &.fa-star:before { content: "star" } // Star - //&.fa-star:before { content: "favorite" } // Heart - //&.fa-star:before { content: "plus_one" } // +1 -} +$favorite-icon: "star"; $favorite-icon-border: "star_border"; // Star +//$favorite-icon: "favorite"; $favorite-icon-border: "favorite_border"; // Heart +//$favorite-icon: "plus_one"; $favorite-icon-border: "plus_one"; // +1 -.star-icon.active, -.star-icon.icon-button.active.active, -.notification__favourite-icon-wrapper .star-icon, -.status__action-bar-button.star-icon.icon-button.active { - color: #ffd600; // Star - //color: #ff4081; // Heart - //color: #db4437; // +1 -} - -.status__action-bar-button.star-icon.icon-button, -.star-icon.icon-button { - .fa.fa-star:before { content: "star_border" } // Star - //.fa.fa-star:before { content: "favorite_border" } // Heart - //.fa.fa-star:before { content: "plus_one" } // +1 - - &.active, - &.active.activate { - .fa.fa-star:before { content: "star" } // Star - //.fa.fa-star:before { content: "favorite" } // Heart - //.fa.fa-star:before { content: "plus_one" } // +1 - } -} \ No newline at end of file +$favorite-icon-color: #ffd600; // Star +//$favorite-icon-color: #ff4081; // Heart +//$favorite-icon-color: #db4437; // +1 \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/emoji-picker.scss b/app/javascript/styles/material-v2-light/emoji-picker.scss index d57c5c041..2c17701cf 100644 --- a/app/javascript/styles/material-v2-light/emoji-picker.scss +++ b/app/javascript/styles/material-v2-light/emoji-picker.scss @@ -46,7 +46,7 @@ } &-bar { - background-color: $tab-indicator-color; + background-color: $tab-indicator-active-color; } &:hover { @@ -63,7 +63,7 @@ background: $search-bar-color; color: $ui-text-color; border: 0; - border-radius: $bar-radius; + border-radius: $search-bar-radius; &:focus { @include shadow-2dp; @@ -82,7 +82,7 @@ background: $menu-background-color; } - &-emoji:hover:before { + &-emoji:hover::before { background-color: $icon-background-hover-color; } diff --git a/app/javascript/styles/material-v2-light/icons.scss b/app/javascript/styles/material-v2-light/icons.scss index 6778e3d2c..beca11a6f 100644 --- a/app/javascript/styles/material-v2-light/icons.scss +++ b/app/javascript/styles/material-v2-light/icons.scss @@ -15,16 +15,21 @@ } -.fa { vertical-align: sub } //マテリアルアイコンを文字の高さにそろえる +.fa { vertical-align: sub } // adjust material icon font baseline to other font .fa.fa-times, -.fa.fa-eraser { vertical-align: middle } //↑の例外 +.fa.fa-eraser, +.fa.fa-plus { vertical-align: middle } // adjustment exception + +.fa.fa-check { vertical-align: initial } .fa.fa-lock { text-transform: none } .fa-fw { width: 16px } -.fa.fa-chevron-left.column-back-button__icon.fa-fw { +// icon in tab settings +.fa.fa-chevron-left.column-back-button__icon.fa-fw, +.text-btn.column-header__setting-btn .fa.fa-eraser { font-size: 20px; margin-right: 16px; } @@ -34,4 +39,10 @@ border: none; padding: 2px 6px; border-radius: 12px; -} \ No newline at end of file +} + +// favorite icon color +.star-icon.active, +.star-icon.icon-button.active.active, +.notification__favourite-icon-wrapper .star-icon, +.status__action-bar-button.star-icon.icon-button.active { color: $favorite-icon-color } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/material-icons.scss b/app/javascript/styles/material-v2-light/material-icons.scss index 52b959485..e473dfe31 100644 --- a/app/javascript/styles/material-v2-light/material-icons.scss +++ b/app/javascript/styles/material-v2-light/material-icons.scss @@ -1,5 +1,6 @@ @charset "UTF-8"; @import 'config'; +@import 'functions'; .fa { @@ -31,6 +32,7 @@ &.fa-chevron-right, &.fa-reply, &.fa-reply-all, + &.fa-share-alt, &.fa-star, &.fa-bookmark, &.fa-ellipsis-h, @@ -46,51 +48,99 @@ &.fa-eye, &.fa-eye-slash, &.fa-pencil, - &.fa-trash { + &.fa-trash, + &.fa-play, + &.fa-external-link, + &.fa-retweet, + &.fa-link, + &.fa-pause, + &.fa-volume-up, + &.fa-volume-off, + &.fa-expand, + &.fa-download, + &.fa-arrows-alt, + &.fa-compress, + &.fa-user-times, + &.fa-check { font-family: "Material Icons"; } } .fa { - &.fa-bars:before, &.fa-navicon:before,&.fa-reorder:before { content: "menu" } - &.fa-globe:before { content: "public" } - &.fa-cog:before, &.fa-cogs:before, &.fa-gears:before { content: "settings" } - &.fa-sign-out:before { content: "exit_to_app" } - &.fa-search:before { content: "search" } - &.fa-times:before, &.fa-times-circle:before, &.fa-close:before, &.fa-remove:before { content: "close" } - &.fa-chevron-down:before, &.fa-ellipsis-v:before { content: "more_vert" } - &.fa-paperclip:before { content: "attach_file" } - &.fa-tasks:before { content: "poll" } - &.fa-plus:before { content: "add" } - &.fa-unlock:before { content: "lock_open" } - &.fa-lock:before { content: "lock" } - &.fa-envelope:before { content: "mail" } - &.fa-home:before { content: "home" } - &.fa-bullhorn:before { content: "announcement" } - &.fa-sliders:before { content: "tune" } - &.fa-chevron-left:before { content: "arrow_back" } - &.fa-chevron-right:before { content: "arrow_forward" } - &.fa-reply:before { content: "reply" } - &.fa-reply-all:before { content: "reply_all" } - &.fa-bookmark:before { content: "bookmark" } - &.fa-ellipsis-h:before { content: "more_horiz" } - &.fa-bell:before { content: "notifications" } - &.fa-eraser:before { content: "clear_all" } - &.fa-users:before { content: "people" } - &.fa-file-text:before { content: "web" } - &.fa-user-plus:before { content: "person_add" } - &.fa-address-book:before { content: "explore" } - &.fa-address-book-o:before { content: "explore" } - &.fa-list:before { content: "list" } - &.fa-list-ul:before { content: "list" } - &.fa-eye:before { content: "visibility" } - &.fa-eye-slash:before { content : "visibility_off" } - &.fa-pencil:before { content: "create" } - &.fa-trash:before { content: "delete" } + &.fa-bars::before, &.fa-navicon::before,&.fa-reorder::before { content: "menu" } + &.fa-globe::before { content: "public" } + &.fa-cog::before, &.fa-cogs::before, &.fa-gears::before { content: "settings" } + &.fa-sign-out::before { content: "exit_to_app" } + &.fa-search::before { content: "search" } + &.fa-times::before, &.fa-times-circle::before, &.fa-close::before, &.fa-remove::before { content: "close" } + &.fa-chevron-down::before, &.fa-ellipsis-v::before { content: "more_vert" } + &.fa-paperclip::before { content: "attach_file" } + &.fa-tasks::before { content: "poll" } + &.fa-plus::before { content: "add" } + &.fa-unlock::before { content: "lock_open" } + &.fa-lock::before { content: "lock" } + &.fa-envelope::before { content: "mail" } + &.fa-home::before { content: "home" } + &.fa-bullhorn::before { content: "announcement" } + &.fa-sliders::before { content: "tune" } + &.fa-chevron-left::before { content: "arrow_back" } + &.fa-chevron-right::before { content: "arrow_forward" } + &.fa-reply::before { content: "reply" } + &.fa-reply-all::before { content: "reply_all" } + &.fa-share-alt::before { content: "share" } + &.fa-star::before { content: $favorite-icon } + &.fa-bookmark::before { content: "bookmark" } + &.fa-ellipsis-h::before { content: "more_horiz" } + &.fa-bell::before { content: "notifications" } + &.fa-eraser::before { content: "clear_all" } + &.fa-users::before { content: "people" } + &.fa-file-text::before { content: "web" } + &.fa-user-plus::before { content: "person_add" } + &.fa-address-book::before { content: "explore" } + &.fa-address-book-o::before { content: "explore" } + &.fa-list::before { content: "list" } + &.fa-list-ul::before { content: "list" } + &.fa-eye::before { content: "visibility" } + &.fa-eye-slash::before { content : "visibility_off" } + &.fa-pencil::before { content: "create" } + &.fa-trash::before { content: "delete" } + &.fa-play::before { content: "play_arrow" } + &.fa-external-link::before { content: "open_in_new" } + &.fa-retweet::before { content: "repeat" } + &.fa-link::before { content: "link" } + &.fa-pause::before { content: "pause" } + &.fa-volume-up::before { content: "volume_up" } + &.fa-volume-off::before { content: "volume_off" } + &.fa-expand::before { content: "web_asset" } + &.fa-download::before { content: "file_download" } + &.fa-arrows-alt::before { content: "fullscreen" } + &.fa-compress::before { content: "fullscreen_exit" } + &.fa-user-times::before { content: "delete" } + &.fa-check::before { content: "check" } } +// bookmark icon .status__action-bar-button.icon-button, .bookmark-icon.icon-button { - .fa.fa-bookmark:before { content: "bookmark_border" } - &.active .fa.fa-bookmark:before { content: "bookmark" } + .fa.fa-bookmark::before { content: "bookmark_border" } + &.active .fa.fa-bookmark::before { content: "bookmark" } +} + +// favorite icon +.status__action-bar-button.star-icon.icon-button, +.star-icon.icon-button { + .fa.fa-star::before { content: $favorite-icon-border } + + &.active, + &.active.activate { + .fa.fa-star::before { content: $favorite-icon } + } +} + +// boost icon +.no-reduce-motion button.icon-button i.fa-retweet { + height: 18px; + width: 18px; + transition: background-position .3s steps(1); + background-image: url('data:image/svg+xml;utf8,'); } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/media.scss b/app/javascript/styles/material-v2-light/media.scss index 74dfd8dcc..64a69a129 100644 --- a/app/javascript/styles/material-v2-light/media.scss +++ b/app/javascript/styles/material-v2-light/media.scss @@ -26,13 +26,74 @@ } } -.icon-button.overlayed { - border-radius: 50%; - background: $media-icon-background-color; - color: $media-icon-color; - - &:hover { +.media-modal { + &__nav { background: $media-icon-background-color; - color: $media-icon-hover-color; + color: $media-icon-color; + height: 48px; + width: 48px; + margin: auto 16px; + padding: 8px; + border-radius: 50%; + + .fa { width: 32px } } + + &__button { + background-color: $media-page-indicator-color; + + &--active { background-color: $media-page-indicator-active-color } + } +} + +.video-player { + &__controls { + background: linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.2) 60%,transparent); + padding: 0 12px; + } + + &__seek { + &::before { + background: rgba(255,255,255,.2); + border-radius: 0; + } + + &__buffer { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__progress { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__volume { + &::before { + background: rgba(255,255,255,.4); + border-radius: 0; + } + + &__current { + background: $primary-color; + border-radius: 0; + } + + &__handle { + transition: opacity .25s cubic-bezier(0.0,0.0,0.2,1); + background-color: $primary-color; + box-shadow: none; + } + } + + &__time-current { margin-left: 68px } + + &__buttons button { font-size: 20px } } \ No newline at end of file diff --git a/app/javascript/styles/material-v2-light/mobile.scss b/app/javascript/styles/material-v2-light/mobile.scss index 448f80585..de6f4e94c 100644 --- a/app/javascript/styles/material-v2-light/mobile.scss +++ b/app/javascript/styles/material-v2-light/mobile.scss @@ -12,14 +12,17 @@ border-bottom: 4px solid transparent; &.active { - border-bottom: 4px solid $tab-indicator-color; - color: $tab-indicator-color; + border-bottom: 4px solid $tab-indicator-active-color; + color: $tab-indicator-active-color; } .fa { font-size: 20px } } - &__wrapper { @include shadow-4dp } + &__wrapper { + @include shadow-4dp; + background: transparent; + } } diff --git a/app/javascript/styles/material-v2-light/modal.scss b/app/javascript/styles/material-v2-light/modal.scss index 40710fe43..7734c8dfa 100644 --- a/app/javascript/styles/material-v2-light/modal.scss +++ b/app/javascript/styles/material-v2-light/modal.scss @@ -29,10 +29,25 @@ color: $ui-text-color; font-size: 16px; - &:hover { background: $card-background-hover-color } + &:hover { + background: $card-background-hover-color; + color: $ui-text-color; + } } .dropdown-menu__separator { border-bottom-color: $border-color } + + .status { + background: $card-background-color; + border-bottom-color: $border-color; + padding-top: 12px; + padding-bottom: 12px; + + &__avatar { + left: 12px; + top: 12px; + } + } } .report-modal { diff --git a/app/javascript/styles/material-v2-light/statuses.scss b/app/javascript/styles/material-v2-light/statuses.scss index c569b3b92..f60c2d859 100644 --- a/app/javascript/styles/material-v2-light/statuses.scss +++ b/app/javascript/styles/material-v2-light/statuses.scss @@ -73,6 +73,8 @@ } } + &__prepend { color: $secondary-text-color } + &.status-direct:not(.read) { background: transparent; border-bottom-color: $border-color; @@ -99,9 +101,25 @@ &__description { color: $secondary-text-color } + &__actions { + &>div { + background: $media-icon-background-color; + border-radius: $button-radius; + } + + button, + a { + color: $media-icon-color; + font-size: 20px; + } + + a { bottom: auto } + } + &.compact { border-color: $border-color; outline: none; + background: transparent; .status-card { &__content { padding: 12px } @@ -114,8 +132,16 @@ &:hover { background-color: $card-background-color } } +// Detailed status in mobile .status.light { - .display-name span { color: $info-text-color } + .status { + &__display-name { color: $primary-text-color } + &__relative-time { color: $info-text-color } + &__content { color: $primary-text-color } + } + + .display-name { color: $secondary-text-color } + .display-name strong { color: $primary-text-color } } .detailed-status { diff --git a/config/locales/en.yml b/config/locales/en.yml index 5c1abdbfc..5e42bce4a 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -1247,6 +1247,8 @@ en: material-v1-light: Material v1 (Light) material-v2-dark: Material v2 (Dark) material-v2-light: Material v2 (Light) + mastodon-material-dark: Mastodon Material (Dark) + mastodon-material-light: Mastodon Material (Light) time: formats: default: "%b %d, %Y, %H:%M" diff --git a/config/locales/ja.yml b/config/locales/ja.yml index e15a25b0f..17c44ab69 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -1229,6 +1229,8 @@ ja: material-v1-light: Material v1 (ライト) material-v2-dark: Material v2 (ダーク) material-v2-light: Material v2 (ライト) + mastodon-material-dark: Mastodon Material (ダーク) + mastodon-material-light: Mastodon Material (ライト) time: formats: default: "%Y年%m月%d日 %H:%M" diff --git a/config/themes.yml b/config/themes.yml index 015c9ddf7..cfd4d16fa 100644 --- a/config/themes.yml +++ b/config/themes.yml @@ -7,3 +7,5 @@ material-v1-dark: styles/material-v1-dark.scss material-v1-light: styles/material-v1-light.scss material-v2-dark: styles/material-v2-dark.scss material-v2-light: styles/material-v2-light.scss +mastodon-material-dark: styles/mastodon-material-dark.scss +mastodon-material-light: styles/mastodon-material-light.scss