add buttons

This commit is contained in:
Sébastien Thuret 2021-10-08 18:36:24 +02:00
parent cb86d289d3
commit 0214d7bfd6
No known key found for this signature in database
GPG key ID: 4742E2D66933BB08
2 changed files with 34 additions and 11 deletions

View file

@ -96,7 +96,7 @@ h3.header {
}
.btn-delete-text:focus,
.btn-copy-translated:focus {
.btn-action:focus {
background: none !important;
}
@ -107,26 +107,28 @@ h3.header {
color: #777;
pointer-events: none;
}
.btn-copy-translated {
.actions {
position: absolute;
right: 2.75rem;
right: 1.25rem;
bottom: 1rem;
display: flex;
}
.btn-action {
display: flex;
align-items: center;
color: #777;
font-size: 0.85rem;
background: none;
border: none;
cursor: pointer;
margin-right: -1.5rem;
}
.btn-copy-translated span {
.btn-action span {
padding-right: 0.5rem;
}
.btn-copy-translated .material-icons {
.btn-action .material-icons {
font-size: 1.35rem;
}

View file

@ -149,9 +149,18 @@
Translated text
</label>
<textarea id="textarea2" v-model="translatedText" ref="translatedTextarea" dir="auto" readonly></textarea>
<button class="btn-copy-translated" @click="copyText">
<div class="actions">
<button v-if="inputText.length && !isSuggesting" class="btn-action" @click="suggestTranslation">
<i class="material-icons">edit</i>
</button>
<button v-if="inputText.length && isSuggesting" class="btn-action" @click="closeSuggestTranslation">
<i class="material-icons">close</i>
</button>
<button class="btn-action btn-copy-translated" @click="copyText">
<span>[[ copyTextLabel ]]</span> <i class="material-icons">content_copy</i>
</button>
</div>
<div class="position-relative">
<div class="progress translate" v-if="loadingTranslation">
<div class="indeterminate"></div>
@ -265,7 +274,9 @@
output: "",
charactersLimit: -1,
copyTextLabel: "Copy text"
copyTextLabel: "Copy text",
isSuggesting: false,
},
mounted: function(){
var self = this;
@ -474,6 +485,16 @@
}, 1500);
}
},
suggestTranslation: function(e) {
e.preventDefault();
this.isSuggesting = true;
},
closeSuggestTranslation: function(e) {
e.preventDefault();
this.isSuggesting = false;
},
deleteText: function(e){
e.preventDefault();
this.inputText = this.translatedText = this.output = "";