aboutsummaryrefslogtreecommitdiff
path: root/src/components
diff options
context:
space:
mode:
Diffstat (limited to 'src/components')
-rw-r--r--src/components/notification/notification.js3
-rw-r--r--src/components/status/status.js6
-rw-r--r--src/components/user_card_content/user_card_content.js15
-rw-r--r--src/components/user_card_content/user_card_content.vue35
4 files changed, 39 insertions, 20 deletions
diff --git a/src/components/notification/notification.js b/src/components/notification/notification.js
index 33482891..c786f2cc 100644
--- a/src/components/notification/notification.js
+++ b/src/components/notification/notification.js
@@ -27,8 +27,7 @@ const Notification = {
userStyle () {
const highlight = this.$store.state.config.highlight
const user = this.notification.action.user
- const color = highlight[user.screen_name]
- return highlightStyle(color)
+ return highlightStyle(highlight[user.screen_name])
}
}
}
diff --git a/src/components/status/status.js b/src/components/status/status.js
index 2b5bcb55..3a9363ab 100644
--- a/src/components/status/status.js
+++ b/src/components/status/status.js
@@ -47,14 +47,12 @@ const Status = {
repeaterStyle () {
const user = this.statusoid.user
const highlight = this.$store.state.config.highlight
- const color = highlight[user.screen_name]
- return highlightStyle(color)
+ return highlightStyle(highlight[user.screen_name])
},
userStyle () {
const user = this.retweet ? (this.statusoid.retweeted_status.user) : this.statusoid.user
const highlight = this.$store.state.config.highlight
- const color = highlight[user.screen_name]
- return highlightStyle(color)
+ return highlightStyle(highlight[user.screen_name])
},
hideAttachments () {
return (this.$store.state.config.hideAttachments && !this.inConversation) ||
diff --git a/src/components/user_card_content/user_card_content.js b/src/components/user_card_content/user_card_content.js
index 48e0ea02..76a5577e 100644
--- a/src/components/user_card_content/user_card_content.js
+++ b/src/components/user_card_content/user_card_content.js
@@ -33,13 +33,15 @@ export default {
const days = Math.ceil((new Date() - new Date(this.user.created_at)) / (60 * 60 * 24 * 1000))
return Math.round(this.user.statuses_count / days)
},
- userHighlightEnabled: {
+ userHighlightType: {
get () {
- return this.$store.state.config.highlight[this.user.screen_name]
+ const data = this.$store.state.config.highlight[this.user.screen_name]
+ return data && data.type || 'disabled'
},
- set (enabled) {
- if (enabled) {
- this.$store.dispatch('setHighlight', { user: this.user.screen_name, color: '#FFFFFF' })
+ set (type) {
+ const data = this.$store.state.config.highlight[this.user.screen_name]
+ if (type !== 'disabled') {
+ this.$store.dispatch('setHighlight', { user: this.user.screen_name, color: data && data.color || '#FFFFFF', type })
} else {
this.$store.dispatch('setHighlight', { user: this.user.screen_name, color: undefined })
}
@@ -47,7 +49,8 @@ export default {
},
userHighlightColor: {
get () {
- return this.$store.state.config.highlight[this.user.screen_name]
+ const data = this.$store.state.config.highlight[this.user.screen_name]
+ return data && data.color
},
set (color) {
this.$store.dispatch('setHighlight', { user: this.user.screen_name, color })
diff --git a/src/components/user_card_content/user_card_content.vue b/src/components/user_card_content/user_card_content.vue
index d3238b09..abdf0dfe 100644
--- a/src/components/user_card_content/user_card_content.vue
+++ b/src/components/user_card_content/user_card_content.vue
@@ -26,10 +26,16 @@
</div>
<div class="floater" v-if="switcher || isOtherUser">
<!-- id's need to be unique, otherwise vue confuses which user-card checkbox belongs to -->
- <input class="userHighlightCl" type="color" :id="'userHighlightColor'+user.id" v-if="userHighlightEnabled" v-model="userHighlightColor"/>
- <input type="checkbox" class="userHighlightChk" :id="'userHighlightCheck'+user.id" v-model="userHighlightEnabled">
- <label :title="$t('settings.highlight')" :for="'userHighlightCheck'+user.id">
- <i class="icon-brush"></i>
+ <input class="userHighlightText" type="text" :id="'userHighlightColorTx'+user.id" v-if="userHighlightType !== 'disabled'" v-model="userHighlightColor"/>
+ <input class="userHighlightCl" type="color" :id="'userHighlightColor'+user.id" v-if="userHighlightType !== 'disabled'" v-model="userHighlightColor"/>
+ <label for="style-switcher" class='userHighlightSel select'>
+ <select class="userHighlightSel" :id="'userHighlightSel'+user.id" v-model="userHighlightType">
+ <option value="disabled">No highlight</option>
+ <option value="solid">Solid bg</option>
+ <option value="striped">Striped bg</option>
+ <option value="side">Side stripe</option>
+ </select>
+ <i class="icon-down-open"/>
</label>
</div>
</div>
@@ -307,12 +313,25 @@
.userHighlightCl {
padding: 2px 10px;
- height: 22px;
- vertical-align: top;
- margin-right: 0
+ }
+ .userHighlightSel,
+ .userHighlightSel.select {
+ padding-top: 0;
+ padding-bottom: 0;
+ }
+ .userHighlightSel.select i {
+ line-height: 22px;
+ }
+
+ .userHighlightText {
+ width: 70px;
}
- .userHighlightChk + label::before {
+ .userHighlightCl,
+ .userHighlightText,
+ .userHighlightSel,
+ .userHighlightSel.select {
+ height: 22px;
vertical-align: top;
margin-right: 0
}