border-radii moved to variables, made rgbo colors use theme data, customizable

from settings screen.
This commit is contained in:
Henry Jameson 2018-04-01 22:07:25 +03:00
parent acdb5e5c7a
commit 33b1d85921
21 changed files with 309 additions and 188 deletions

View file

@ -52,7 +52,8 @@
border-style: solid;
border-width: 1px;
border-radius: 5px;
border-radius: $fallback--attachmentRadius;
border-radius: var(--attachmentRadius, $fallback--attachmentRadius);
overflow: hidden;
// fixes small gap below video
@ -109,7 +110,8 @@
flex: 1;
img {
border: 0px;
border-radius: 5px;
border-radius: $fallback--attachmentRadius;
border-radius: var(--attachmentRadius, $fallback--attachmentRadius);
height: 100%;
object-fit: cover;
}

View file

@ -29,30 +29,36 @@
<script src="./chat_panel.js"></script>
<style lang="scss">
.chat-window {
max-height: 200px;
overflow-y: auto;
overflow-x: hidden;
}
.chat-message {
padding: 0.2em 0.5em
}
.chat-avatar {
img {
height: 32px;
width: 32px;
border-radius: 5px;
margin-right: 0.5em;
}
}
.chat-input {
display: flex;
form {
flex: auto;
input {
margin: 0.5em;
width: fill-available;
}
}
}
@import '../../_variables.scss';
.chat-window {
max-height: 200px;
overflow-y: auto;
overflow-x: hidden;
}
.chat-message {
padding: 0.2em 0.5em
}
.chat-avatar {
img {
height: 32px;
width: 32px;
border-radius: $fallback--avatarRadius;
border-radius: var(--avatarRadius, $fallback--avatarRadius);
margin-right: 0.5em;
}
}
.chat-input {
display: flex;
form {
flex: auto;
input {
margin: 0.5em;
width: fill-available;
}
}
}
</style>

View file

@ -34,21 +34,17 @@
@import '../../_variables.scss';
.login-form {
input {
border-radius: 5px;
padding: 0.1em 0.2em 0.2em 0.2em;
}
.btn {
min-height: 28px;
width: 10em;
}
.error {
border-radius: 5px;
border-radius: $fallback--tooltipRadius;
border-radius: var(--tooltipRadius, $fallback--tooltipRadius);
text-align: center;
background-color: rgba(255, 48, 16, 0.65);
background-color: $fallback--cRed;
background-color: $fallback--cRed;
min-height: 28px;
line-height: 28px;
}

View file

@ -1,7 +1,7 @@
<template>
<div class="media-upload" @drop.prevent @dragover.prevent="fileDrag" @drop="fileDrop">
<label class="btn btn-default">
<i class="animate-spin" v-if="uploading"></i>
<i class="icon-spin4 animate-spin" v-if="uploading"></i>
<i class="icon-upload" v-if="!uploading"></i>
<input type=file style="position: fixed; top: -100em"></input>
</label>

View file

@ -120,6 +120,7 @@
margin-top: 0.3em;
width: 32px;
height: 32px;
border-radius: $fallback--avatarAltRadius;
border-radius: 50%;
overflow: hidden;
line-height: 0;
@ -141,7 +142,6 @@
&:last-child {
border-bottom: none;
border-radius: 0 0 10px 10px;
}
}

View file

@ -64,7 +64,8 @@
padding: 3px;
width: 16px;
height: 16px;
border-radius: 50%;
border-radius: $fallback--avatarAltRadius;
border-radius: var(--avatarAltRadius, $fallback--avatarAltRadius);
}
}
@ -86,7 +87,8 @@
}
.error {
border-radius: 5px;
border-radius: $fallback--tooltipRadius;
border-radius: var(--tooltipRadius, $fallback--tooltipRadius);
text-align: center;
background-color: rgba(255, 48, 16, 0.65);
background-color: $fallback--cRed;
@ -111,7 +113,8 @@
margin: 10px;
padding: 5px;
background: rgba(230,230,230,0.6);
border-radius: 5px;
border-radius: $fallback--attachmentRadius;
border-radius: var(--attachmentRadius, $fallback--attachmentRadius);
font-weight: bold;
}
}
@ -148,6 +151,7 @@
overflow: hidden;
transition: min-height 200ms;
min-height: 1px;
box-sizing: content-box;
}
form textarea:focus {
@ -169,7 +173,8 @@
.autocomplete-panel {
margin: 0 0.5em 0 0.5em;
border-radius: 5px;
border-radius: $fallback--tooltipRadius;
border-radius: var(--tooltipRadius, $fallback--tooltipRadius);
position: absolute;
z-index: 1;
box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.5);
@ -189,7 +194,8 @@
img {
width: 24px;
height: 24px;
border-radius: 2px;
border-radius: $fallback--avatarRadius;
border-radius: var(--avatarRadius, $fallback--avatarRadius);
object-fit: contain;
}

View file

@ -88,15 +88,10 @@
}
form textarea {
border-radius: 5px;
line-height:16px;
resize: vertical;
}
input {
border-radius: 5px;
}
.captcha {
max-width: 350px;
margin-bottom: 0.4em;
@ -110,7 +105,8 @@
}
.error {
border-radius: 5px;
border-radius: $fallback--tooltipRadius;
border-radius: var(--tooltipRadius, $fallback--tooltipRadius);
text-align: center;
margin: 0.5em 0.6em 0;
background-color: $fallback--cRed;

View file

@ -54,33 +54,40 @@
</script>
<style lang="scss">
.setting-item {
margin: 1em 1em 1.4em;
@import '../../_variables.scss';
textarea {
width: 100%;
height: 100px;
}
.setting-item {
margin: 1em 1em 1.4em;
.old-avatar {
width: 128px;
border-radius: 5px;
}
textarea {
width: 100%;
height: 100px;
}
.new-avatar {
object-fit: cover;
width: 128px;
height: 128px;
border-radius: 5px;
}
.old-avatar {
width: 128px;
border-radius: $fallback--avatarRadius;
border-radius: var(--avatarRadius, $fallback--avatarRadius);
}
.btn {
margin-top: 1em;
min-height: 28px;
width: 10em;
}
}
.setting-list {
list-style-type: none;
}
.new-avatar {
object-fit: cover;
width: 128px;
height: 128px;
border-radius: $fallback--avatarRadius;
border-radius: var(--avatarRadius, $fallback--avatarRadius);
}
.btn {
margin-top: 1em;
min-height: 28px;
width: 10em;
}
}
.setting-list {
list-style-type: none;
li {
margin-bottom: 0.5em;
}
}
</style>

View file

@ -145,7 +145,8 @@ status-text-container {
border-color: var(--border, $fallback--border);
border-style: solid;
border-width: 1px;
border-radius: 4px;
border-radius: $fallback--tooltipRadius;
border-radius: var(--tooltipRadius, $fallback--tooltipRadius);
box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.5);
margin-top: 0.5em;
margin-left: 1em;
@ -155,7 +156,8 @@ status-text-container {
flex-shrink: 0;
width: 32px;
height: 32px;
border-radius: 50%;
border-radius: $fallback--avatarAltRadius;
border-radius: var(--avatarAltRadius, $fallback--avatarAltRadius);
}
.text {
@ -287,7 +289,8 @@ status-text-container {
margin: 0.2em 0.3em 0 0;
.avatar {
float: right;
border-radius: 5px;
border-radius: $fallback--avatarRadius;
border-radius: var(--avatarRadius, $fallback--avatarRadius);
}
}
@ -409,7 +412,6 @@ status-text-container {
}
.timeline .panel.timeline {
border-radius: 10px;
overflow: hidden;
}

View file

@ -8,7 +8,11 @@ export default {
bgColorLocal: '',
fgColorLocal: '',
textColorLocal: '',
linkColorLocal: ''
linkColorLocal: '',
redColorLocal: '#ff0000',
blueColorLocal: '#0095ff',
greenColorLocal: '#0fa00f',
orangeColorLocal: '#E3FF00'
}
},
created () {
@ -25,6 +29,11 @@ export default {
this.fgColorLocal = rgbstr2hex(this.$store.state.config.colors.lightBg)
this.textColorLocal = rgbstr2hex(this.$store.state.config.colors.fg)
this.linkColorLocal = rgbstr2hex(this.$store.state.config.colors.link)
this.redColorLocal = rgbstr2hex(this.$store.state.config.colors.cRed || this.redColorLocal)
this.blueColorLocal = rgbstr2hex(this.$store.state.config.colors.cBlue || this.blueColorLocal)
this.greenColorLocal = rgbstr2hex(this.$store.state.config.colors.cGreen || this.greenColorLocal)
this.orangeColorLocal = rgbstr2hex(this.$store.state.config.colors.cOrange || this.orangeColorLocal)
},
methods: {
setCustomTheme () {
@ -43,6 +52,12 @@ export default {
const fgRgb = rgb(this.fgColorLocal)
const textRgb = rgb(this.textColorLocal)
const linkRgb = rgb(this.linkColorLocal)
const redRgb = rgb(this.redColorLocal)
const blueRgb = rgb(this.blueColorLocal)
const greenRgb = rgb(this.greenColorLocal)
const orangeRgb = rgb(this.orangeColorLocal)
if (bgRgb && fgRgb && linkRgb) {
this.$store.dispatch('setOption', {
name: 'customTheme',
@ -50,7 +65,11 @@ export default {
fg: fgRgb,
bg: bgRgb,
text: textRgb,
link: linkRgb
link: linkRgb,
cRed: redRgb,
cBlue: blueRgb,
cGreen: greenRgb,
cOrange: orangeRgb
}})
}
}
@ -61,6 +80,10 @@ export default {
this.fgColorLocal = this.selected[2]
this.textColorLocal = this.selected[3]
this.linkColorLocal = this.selected[4]
this.redColorLocal = this.selected[5]
this.blueColorLocal = this.selected[6]
this.greenColorLocal = this.selected[7]
this.orangeColorLocal = this.selected[8]
}
}
}

View file

@ -27,6 +27,28 @@
<input id="linkcolor-t" class="theme-color-in" type="text" v-model="linkColorLocal">
</div>
</div>
<div class="color-container additional colors">
<div class="color-item">
<label for="redcolor" class="theme-color-lb">{{$t('settings.cRed')}}</label>
<input id="redcolor" class="theme-color-cl" type="color" v-model="redColorLocal">
<input id="redcolor-t" class="theme-color-in" type="text" v-model="redColorLocal">
</div>
<div class="color-item">
<label for="bluecolor" class="theme-color-lb">{{$t('settings.cBlue')}}</label>
<input id="bluecolor" class="theme-color-cl" type="color" v-model="blueColorLocal">
<input id="bluecolor-t" class="theme-color-in" type="text" v-model="blueColorLocal">
</div>
<div class="color-item">
<label for="greencolor" class="theme-color-lb">{{$t('settings.cGreen')}}</label>
<input id="greencolor" class="theme-color-cl" type="color" v-model="greenColorLocal">
<input id="greencolor-t" class="theme-color-in" type="green" v-model="greenColorLocal">
</div>
<div class="color-item">
<label for="orangecolor" class="theme-color-lb">{{$t('settings.cOrange')}}</label>
<input id="orangecolor" class="theme-color-cl" type="color" v-model="orangeColorLocal">
<input id="orangecolor-t" class="theme-color-in" type="text" v-model="orangeColorLocal">
</div>
</div>
<div>
<div class="panel">
<div class="panel-heading" :style="{ 'background-color': fgColorLocal, 'color': textColorLocal }">Preview</div>
@ -79,7 +101,6 @@
.theme-color-cl,
.theme-color-in {
margin-left: 4px;
border-radius: 2px;
}
.theme-color-in {

View file

@ -82,7 +82,6 @@
right: 0.6em;
font-size: 14px;
min-width: 6em;
border-radius: 5px;
background-color: transparent;
color: $fallback--faint;
color: var(--faint, $fallback--faint);
@ -106,8 +105,6 @@
font-size: 1.1em;
border-width: 1px 0 0 0;
border-style: solid;
border-radius: 0 0 10px 10px;
border-color: $fallback--border;
border-color: var(--border, $fallback--border);
padding: 10px;
z-index: 1;

View file

@ -52,16 +52,19 @@
margin-top: 0.2em;
width:32px;
height: 32px;
border-radius: 50%;
border-radius: $fallback--avatarAltRadius;
border-radius: var(--avatarAltRadius, $fallback--avatarAltRadius);
}
}
.usercard {
width: fill-available;
margin: 0.2em 0 0.7em 0;
border-radius: 10px;
border-radius: $fallback--panelRadius;
border-radius: var(--panelRadius, $fallback--panelRadius);
border-style: solid;
border-color: inherit;
border-color: $fallback--border;
border-color: var(--border, $fallback--border);
border-width: 1px;
overflow: hidden;

View file

@ -100,7 +100,8 @@
.profile-panel-background {
background-size: cover;
border-radius: 10px;
border-radius: $fallback--panelRadius;
border-radius: var(--panelRadius, $fallback--panelRadius);
.panel-heading {
padding: 0.6em 0em;
@ -117,14 +118,9 @@
}
.user-info {
color: white;
padding: 0 16px 16px 16px;
margin-bottom: -4em;
.usersettings {
color: white;
opacity: 0.8;
}
padding: 0 16px 16px 16px;
margin-bottom: -4em;
.container{
padding: 16px 10px 4px 10px;
@ -186,51 +182,104 @@
flex-flow: row wrap;
justify-content: space-between;
div {
flex: 1;
}
margin-top: 0.7em;
margin-bottom: -1.0em;
.following {
color: white;
font-size: 14px;
flex: 0 0 100%;
margin: -0.7em 0.0em 0.3em 0.0em;
padding-left: 16px;
text-align: left;
.usersettings {
color: white;
opacity: 0.8;
}
.mute {
max-width: 220px;
min-height: 28px;
.container{
padding: 16px 10px 4px 10px;
display: flex;
flex-wrap: wrap;
flex-direction: column;
align-content: flex-start;
justify-content: center;
max-height: 56px;
overflow: hidden;
}
.remote-follow {
max-width: 220px;
min-height: 28px;
img {
border-radius: $fallback--avatarRadius;
border-radius: var(--avatarRadius, $fallback--avatarRadius);
flex: 1 0 100%;
width: 56px;
height: 56px;
box-shadow: 0px 1px 8px rgba(0,0,0,0.75);
object-fit: cover;
}
.follow {
max-width: 220px;
min-height: 28px;
text-shadow: 0px 1px 1.5px rgba(0, 0, 0, 1.0);
.name-and-screen-name {
display: block;
margin-left: 0.6em;
text-align: left;
text-overflow: ellipsis;
white-space: nowrap;
}
button {
width: 92%;
height: 100%;
.user-name{
color: white;
}
.remote-button {
height: 28px !important;
width: 92%;
.user-screen-name {
color: white;
font-weight: lighter;
font-size: 15px;
padding-right: 0.1em;
flex: 0 0 auto;
}
.pressed {
border-bottom-color: rgba(255, 255, 255, 0.2);
border-top-color: rgba(0, 0, 0, 0.2);
.user-interactions {
display: flex;
flex-flow: row wrap;
justify-content: space-between;
div {
flex: 1;
}
margin-top: 0.7em;
margin-bottom: -1.0em;
.following {
color: white;
font-size: 14px;
flex: 0 0 100%;
margin: -0.7em 0.0em 0.3em 0.0em;
padding-left: 16px;
text-align: left;
}
.mute {
max-width: 220px;
min-height: 28px;
}
.remote-follow {
max-width: 220px;
min-height: 28px;
}
.follow {
max-width: 220px;
min-height: 28px;
}
button {
width: 92%;
height: 100%;
}
.remote-button {
height: 28px !important;
width: 92%;
}
.pressed {
border-bottom-color: rgba(255, 255, 255, 0.2);
border-top-color: rgba(0, 0, 0, 0.2);
}
}
}
}
.user-counts {
@ -244,7 +293,8 @@
flex: 1;
h5 {
font-size:1em;
color: white;
font-size:1em;
font-weight: bolder;
margin: 0 0 0.25em;
}
@ -254,7 +304,7 @@
}
.dailyAvg {
font-size: 0.8em;
opacity: 0.5;
font-size: 0.8em;
opacity: 0.5;
}
</style>

View file

@ -24,7 +24,6 @@
}
.user-finder-input {
border-radius: 5px;
max-width: 80%;
padding: 0.1em 0.2em 0.2em 0.2em;
}
@ -32,7 +31,8 @@
.finder-error {
background-color: rgba(255, 48, 16, 0.65);
margin: 0.35em;
border-radius: 5px;
border-radius: $fallback--tooltipRadius;
border-radius: var(--tooltipRadius, $fallback--tooltipRadius);
padding: 0.25em;
color: $fallback--faint;
color: var(--faint, $fallback--faint);

View file

@ -13,9 +13,9 @@
<script src="./user_panel.js"></script>
<style lang="scss">
.user-panel {
.panel-heading {
background: transparent;
.user-panel {
.profile-panel-background .panel-heading {
background: transparent;
}
}
}
</style>

View file

@ -12,13 +12,12 @@
<style lang="scss">
.user-profile {
flex: 2;
flex-basis: 500px;
padding-bottom: 10px;
border-radius: 10px;
.panel-heading {
background: transparent;
}
flex: 2;
flex-basis: 500px;
padding-bottom: 10px;
.panel-heading {
background: transparent;
}
}
</style>

View file

@ -75,31 +75,21 @@
<style lang="scss">
.profile-edit {
.name-changer {
border-radius: 5px;
padding: 0.2em 0.2em 0.2em 0.2em;
}
.name-submit {
padding: 0.2em 0.5em 0.2em 0.5em;
}
.bio {
border-radius: 5px;
margin: 0;
}
.bio {
margin: 0;
}
input[type=file] {
padding: 5px;
border-radius: 5px;
}
input[type=file] {
padding: 5px;
}
.banner {
max-width: 400px;
border-radius: 5px;
}
.banner {
max-width: 400px;
}
.uploading {
font-size: 1.5em;
margin: 0.25em;
}
.uploading {
font-size: 1.5em;
margin: 0.25em;
}
}
</style>