Added Settings page
This commit is contained in:
parent
eadfbf6985
commit
9975b54630
17 changed files with 481 additions and 62 deletions
|
@ -63,7 +63,10 @@ DISTFILES += \
|
||||||
qml/images/tooter.svg \
|
qml/images/tooter.svg \
|
||||||
qml/lib/Mastodon.js \
|
qml/lib/Mastodon.js \
|
||||||
qml/lib/Worker.js \
|
qml/lib/Worker.js \
|
||||||
qml/images/boosted.svg
|
qml/images/boosted.svg \
|
||||||
|
qml/pages/Settings.qml \
|
||||||
|
qml/pages/components/MediaBlock.qml \
|
||||||
|
qml/pages/components/MyImage.qml
|
||||||
|
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
src/imageuploader.h
|
src/imageuploader.h
|
||||||
|
|
|
@ -51,6 +51,7 @@ ApplicationWindow
|
||||||
Logic.api = new Logic.MastodonAPI({ instance: Logic.conf['instance'], api_user_token: "" });
|
Logic.api = new Logic.MastodonAPI({ instance: Logic.conf['instance'], api_user_token: "" });
|
||||||
}
|
}
|
||||||
if (Logic.conf['login']) {
|
if (Logic.conf['login']) {
|
||||||
|
//Logic.conf['notificationLastID'] = 0
|
||||||
Logic.api.setConfig("api_user_token", Logic.conf['api_user_token'])
|
Logic.api.setConfig("api_user_token", Logic.conf['api_user_token'])
|
||||||
pageStack.push(Qt.resolvedUrl("./pages/MainPage.qml"), {})
|
pageStack.push(Qt.resolvedUrl("./pages/MainPage.qml"), {})
|
||||||
//pageStack.push(Qt.resolvedUrl("./pages/Conversation.qml"), {})
|
//pageStack.push(Qt.resolvedUrl("./pages/Conversation.qml"), {})
|
||||||
|
|
|
@ -162,7 +162,7 @@ var notifier = function(item){
|
||||||
msg = {
|
msg = {
|
||||||
urgency: "low",
|
urgency: "low",
|
||||||
timestamp: item.created_at,
|
timestamp: item.created_at,
|
||||||
summary: (item.account_display_name !== "" ? item.account_display_name : '@'+item.account_username) + ' ' + qsTr("boosted"),
|
summary: (item.reblog_account_display_name !== "" ? item.reblog_account_display_name : '@'+item.reblog_account_username) + ' ' + qsTr("boosted"),
|
||||||
body: item.content
|
body: item.content
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
Qt.include("Mastodon.js")
|
Qt.include("Mastodon.js")
|
||||||
|
var loadImages = true;
|
||||||
WorkerScript.onMessage = function(msg) {
|
WorkerScript.onMessage = function(msg) {
|
||||||
console.log("Action > " + msg.action)
|
console.log("Action > " + msg.action)
|
||||||
console.log("Model > " + msg.model)
|
console.log("Model > " + msg.model)
|
||||||
|
@ -18,6 +19,9 @@ WorkerScript.onMessage = function(msg) {
|
||||||
console.log("Not loggedin")
|
console.log("Not loggedin")
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (typeof msg.conf['loadImages'] !== "undefined")
|
||||||
|
loadImages = msg.conf['loadImages']
|
||||||
|
|
||||||
var API = MastodonAPI({ instance: msg.conf.instance, api_user_token: msg.conf.api_user_token});
|
var API = MastodonAPI({ instance: msg.conf.instance, api_user_token: msg.conf.api_user_token});
|
||||||
if (msg.method === "POST"){
|
if (msg.method === "POST"){
|
||||||
API.post(msg.action, msg.params, function(data) {
|
API.post(msg.action, msg.params, function(data) {
|
||||||
|
@ -246,6 +250,8 @@ function parseToot (data){
|
||||||
item['content'] = item['content'].replaceAll('#'+tag, '<a href="#'+tag+'">'+tag+'</a>')
|
item['content'] = item['content'].replaceAll('#'+tag, '<a href="#'+tag+'">'+tag+'</a>')
|
||||||
}*/
|
}*/
|
||||||
item['attachments'] = [];
|
item['attachments'] = [];
|
||||||
|
console.log("Image "+loadImages)
|
||||||
|
|
||||||
for(var i = 0; i < data['media_attachments'].length ; i++){
|
for(var i = 0; i < data['media_attachments'].length ; i++){
|
||||||
var attachments = data['media_attachments'][i];
|
var attachments = data['media_attachments'][i];
|
||||||
item['content'] = item['content'].replaceAll(attachments['text_url'], '')
|
item['content'] = item['content'].replaceAll(attachments['text_url'], '')
|
||||||
|
@ -254,7 +260,7 @@ function parseToot (data){
|
||||||
id: attachments['id'],
|
id: attachments['id'],
|
||||||
type: attachments['type'],
|
type: attachments['type'],
|
||||||
url: attachments['remote_url'] !=="" ? attachments['remote_url'] : attachments['url'] ,
|
url: attachments['remote_url'] !=="" ? attachments['remote_url'] : attachments['url'] ,
|
||||||
preview_url: attachments['preview_url']
|
preview_url: loadImages ? attachments['preview_url'] : ''
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
/*item['content'] = item['content'].split(" ")
|
/*item['content'] = item['content'].split(" ")
|
||||||
|
|
|
@ -12,6 +12,7 @@ Page {
|
||||||
property alias avatar: header.image
|
property alias avatar: header.image
|
||||||
property int toot_id
|
property int toot_id
|
||||||
property ListModel mdl;
|
property ListModel mdl;
|
||||||
|
allowedOrientations: Orientation.All
|
||||||
ListModel {
|
ListModel {
|
||||||
id: mediaModel
|
id: mediaModel
|
||||||
onCountChanged: {
|
onCountChanged: {
|
||||||
|
|
|
@ -37,6 +37,7 @@ import "./components/"
|
||||||
Page {
|
Page {
|
||||||
id: mainPage
|
id: mainPage
|
||||||
property bool isFirstPage: true
|
property bool isFirstPage: true
|
||||||
|
property bool isTablet: true; //Screen.sizeCategory >= Screen.Large
|
||||||
|
|
||||||
// The effective value will be restricted by ApplicationWindow.allowedOrientations
|
// The effective value will be restricted by ApplicationWindow.allowedOrientations
|
||||||
allowedOrientations: Orientation.All
|
allowedOrientations: Orientation.All
|
||||||
|
@ -63,8 +64,8 @@ Page {
|
||||||
title: qsTr("Home")
|
title: qsTr("Home")
|
||||||
type: "timelines/home"
|
type: "timelines/home"
|
||||||
mdl: Logic.modelTLhome
|
mdl: Logic.modelTLhome
|
||||||
width: parent.width
|
width: parent.itemWidth
|
||||||
height: parent.height
|
height: parent.itemHeight
|
||||||
onOpenDrawer: infoPanel.open = setDrawer
|
onOpenDrawer: infoPanel.open = setDrawer
|
||||||
}
|
}
|
||||||
MyList{
|
MyList{
|
||||||
|
@ -72,8 +73,8 @@ Page {
|
||||||
title: qsTr("Timeline")
|
title: qsTr("Timeline")
|
||||||
type: "timelines/public"
|
type: "timelines/public"
|
||||||
mdl: Logic.modelTLpublic
|
mdl: Logic.modelTLpublic
|
||||||
width: parent.width
|
width: parent.itemWidth
|
||||||
height: parent.height
|
height: parent.itemHeight
|
||||||
onOpenDrawer: infoPanel.open = setDrawer
|
onOpenDrawer: infoPanel.open = setDrawer
|
||||||
}
|
}
|
||||||
MyList{
|
MyList{
|
||||||
|
@ -82,8 +83,8 @@ Page {
|
||||||
type: "notifications"
|
type: "notifications"
|
||||||
notifier: true
|
notifier: true
|
||||||
mdl: Logic.modelTLnotifications
|
mdl: Logic.modelTLnotifications
|
||||||
width: parent.width
|
width: parent.itemWidth
|
||||||
height: parent.height
|
height: parent.itemHeight
|
||||||
onOpenDrawer: infoPanel.open = setDrawer
|
onOpenDrawer: infoPanel.open = setDrawer
|
||||||
}
|
}
|
||||||
MyList{
|
MyList{
|
||||||
|
@ -102,8 +103,8 @@ Page {
|
||||||
title: qsTr("Search")
|
title: qsTr("Search")
|
||||||
type: ""
|
type: ""
|
||||||
mdl: ListModel {}
|
mdl: ListModel {}
|
||||||
width: parent.width
|
width: parent.itemWidth
|
||||||
height: parent.height
|
height: parent.itemHeight
|
||||||
onOpenDrawer: infoPanel.open = setDrawer
|
onOpenDrawer: infoPanel.open = setDrawer
|
||||||
|
|
||||||
header: SearchField {
|
header: SearchField {
|
||||||
|
@ -130,7 +131,8 @@ Page {
|
||||||
id: slideshow
|
id: slideshow
|
||||||
width: parent.width
|
width: parent.width
|
||||||
height: parent.height
|
height: parent.height
|
||||||
itemWidth: parent.width
|
itemWidth: isTablet ? Math.round(parent.width) : parent.width
|
||||||
|
itemHeight: height
|
||||||
clip: true
|
clip: true
|
||||||
onCurrentIndexChanged: {
|
onCurrentIndexChanged: {
|
||||||
navigation.slideshowIndexChanged(currentIndex)
|
navigation.slideshowIndexChanged(currentIndex)
|
||||||
|
@ -148,6 +150,7 @@ Page {
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
IconButton {
|
IconButton {
|
||||||
anchors {
|
anchors {
|
||||||
right: (mainPage.isPortrait ? parent.right : infoPanel.left)
|
right: (mainPage.isPortrait ? parent.right : infoPanel.left)
|
||||||
|
|
160
qml/pages/Settings.qml
Normal file
160
qml/pages/Settings.qml
Normal file
|
@ -0,0 +1,160 @@
|
||||||
|
import QtQuick 2.0
|
||||||
|
import Sailfish.Silica 1.0
|
||||||
|
import "../lib/API.js" as Logic
|
||||||
|
|
||||||
|
Page {
|
||||||
|
SilicaFlickable {
|
||||||
|
anchors.fill: parent
|
||||||
|
contentHeight: column.height + Theme.paddingLarge
|
||||||
|
contentWidth: parent.width
|
||||||
|
|
||||||
|
VerticalScrollDecorator {}
|
||||||
|
Column {
|
||||||
|
id: column
|
||||||
|
spacing: Theme.paddingSmall
|
||||||
|
width: parent.width
|
||||||
|
PageHeader {
|
||||||
|
title: qsTr("Settings")
|
||||||
|
}
|
||||||
|
Column {
|
||||||
|
// No spacing in this column
|
||||||
|
width: parent.width
|
||||||
|
IconTextSwitch {
|
||||||
|
text: Logic.conf['login'] ? qsTr("Remove Account"): qsTr("Add Account")
|
||||||
|
description: Logic.conf['login'] ? qsTr("Deauthorize this app and remove your account") : qsTr("Authorize this app to use your Mastodon account in your behalf")
|
||||||
|
icon.source: Logic.conf['login'] ? "image://theme/icon-m-people" : "image://theme/icon-m-add"
|
||||||
|
onClicked: {
|
||||||
|
if (Logic.conf['login']) {
|
||||||
|
Logic.conf['login'] = false
|
||||||
|
Logic.conf['instance'] = null;
|
||||||
|
Logic.conf['api_user_token'] = null;
|
||||||
|
}
|
||||||
|
pageStack.push(Qt.resolvedUrl("LoginPage.qml"))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
IconTextSwitch {
|
||||||
|
//enabled: false
|
||||||
|
checked: typeof Logic.conf['loadImages'] !== "undefined" && Logic.conf['loadImages']
|
||||||
|
text: qsTr("Load images in toots")
|
||||||
|
description: qsTr("Disable this option if you want to preserve your data connection")
|
||||||
|
icon.source: "image://theme/icon-m-mobile-network"
|
||||||
|
onClicked: {
|
||||||
|
Logic.conf['loadImages'] = checked
|
||||||
|
}
|
||||||
|
}
|
||||||
|
IconTextSwitch {
|
||||||
|
text: qsTr("Translate")
|
||||||
|
description: qsTr("Use Transifex to help with app translation to your language")
|
||||||
|
icon.source: "image://theme/icon-m-presence"
|
||||||
|
onClicked: {
|
||||||
|
Qt.openUrlExternally("https://www.transifex.com/dysko/tooter/");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SectionHeader {
|
||||||
|
text: qsTr("Credits")
|
||||||
|
}
|
||||||
|
|
||||||
|
Column {
|
||||||
|
width: parent.width
|
||||||
|
anchors {
|
||||||
|
left: parent.left
|
||||||
|
right: parent.right
|
||||||
|
rightMargin: Theme.horizontalPageMargin
|
||||||
|
}
|
||||||
|
Repeater {
|
||||||
|
model: ListModel {
|
||||||
|
ListElement {
|
||||||
|
name: "Duško Angirević"
|
||||||
|
desc: qsTr("UI/UX design and development")
|
||||||
|
mastodon: "dysko@mastodon.social"
|
||||||
|
mail: ""
|
||||||
|
}
|
||||||
|
ListElement {
|
||||||
|
name: "Miodrag Nikolić"
|
||||||
|
desc: "visual identity"
|
||||||
|
mastodon: ""
|
||||||
|
mail: "micotakis@gmail.com"
|
||||||
|
}
|
||||||
|
ListElement {
|
||||||
|
name: "Quentin PAGÈS / Quenti ♏"
|
||||||
|
desc: "Occitan & French translation"
|
||||||
|
mastodon: "Quenti@framapiaf.org"
|
||||||
|
mail: ""
|
||||||
|
}
|
||||||
|
ListElement {
|
||||||
|
name: "André Koot"
|
||||||
|
desc: "Dutch translation"
|
||||||
|
mastodon: "meneer@mastodon.social"
|
||||||
|
mail: "https://twitter.com/meneer"
|
||||||
|
}
|
||||||
|
ListElement {
|
||||||
|
name: "Carlos Gonzalez / Caballlero"
|
||||||
|
desc: "Español translation"
|
||||||
|
mastodon: ""
|
||||||
|
mail: "carlosgonz@protonmail.com"
|
||||||
|
}
|
||||||
|
|
||||||
|
ListElement {
|
||||||
|
name: "Mohamed-Touhami MAHDI"
|
||||||
|
desc: "Added README file"
|
||||||
|
mastodon: "dragnucs@touha.me"
|
||||||
|
mail: "touhami@touha.me"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Item {
|
||||||
|
width: parent.width
|
||||||
|
height: Theme.itemSizeMedium
|
||||||
|
IconButton {
|
||||||
|
id: btn
|
||||||
|
anchors {
|
||||||
|
verticalCenter: parent.verticalCenter
|
||||||
|
right: parent.right
|
||||||
|
}
|
||||||
|
icon.source: "image://theme/" + (model.mastodon !== "" ? "icon-m-person" : "icon-m-mail") + "?" + (pressed
|
||||||
|
? Theme.highlightColor
|
||||||
|
: Theme.primaryColor)
|
||||||
|
onClicked: {
|
||||||
|
if (model.mastodon !== ""){
|
||||||
|
var m = Qt.createQmlObject('import QtQuick 2.0; ListModel { }', Qt.application, 'InternalQmlObject');
|
||||||
|
pageStack.push(Qt.resolvedUrl("Conversation.qml"), {
|
||||||
|
toot_id: 0,
|
||||||
|
title: model.name,
|
||||||
|
description: '@'+model.mastodon,
|
||||||
|
avatar: "",
|
||||||
|
mdl: m,
|
||||||
|
type: "reply"
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
Qt.openUrlExternally("mailto:"+model.mail);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Column {
|
||||||
|
anchors {
|
||||||
|
verticalCenter: parent.verticalCenter
|
||||||
|
left: parent.left
|
||||||
|
leftMargin: Theme.horizontalPageMargin
|
||||||
|
right: btn.left
|
||||||
|
rightMargin: Theme.paddingMedium
|
||||||
|
}
|
||||||
|
|
||||||
|
Label {
|
||||||
|
id: lblName
|
||||||
|
text: model.name
|
||||||
|
color: Theme.secondaryColor
|
||||||
|
font.pixelSize: Theme.fontSizeSmall
|
||||||
|
}
|
||||||
|
Label {
|
||||||
|
text: model.desc
|
||||||
|
color: Theme.secondaryHighlightColor
|
||||||
|
font.pixelSize: Theme.fontSizeExtraSmall
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -61,7 +61,7 @@ Item {
|
||||||
anchors {
|
anchors {
|
||||||
right: parent.right
|
right: parent.right
|
||||||
baseline: lblName.baseline
|
baseline: lblName.baseline
|
||||||
rightMargin: Theme.paddingLarge
|
rightMargin: Theme.horizontalPageMargin
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,16 @@ Item {
|
||||||
property string type : ""
|
property string type : ""
|
||||||
property string previewURL: ""
|
property string previewURL: ""
|
||||||
property string mediaURL: ""
|
property string mediaURL: ""
|
||||||
|
Rectangle {
|
||||||
|
opacity: 0.2
|
||||||
|
anchors.fill: parent
|
||||||
|
color: Theme.highlightDimmerColor
|
||||||
|
|
||||||
|
}
|
||||||
|
Image {
|
||||||
|
anchors.centerIn: parent
|
||||||
|
source: "image://theme/icon-m-image"
|
||||||
|
}
|
||||||
Image {
|
Image {
|
||||||
id: img
|
id: img
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
|
@ -46,4 +56,5 @@ Item {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,14 +58,9 @@ SilicaListView {
|
||||||
|
|
||||||
PullDownMenu {
|
PullDownMenu {
|
||||||
MenuItem {
|
MenuItem {
|
||||||
text: Logic.conf['login'] ? qsTr("Logout"): qsTr("Login")
|
text: qsTr("Settings")
|
||||||
onClicked: {
|
onClicked: {
|
||||||
if (Logic.conf['login']) {
|
pageStack.push(Qt.resolvedUrl("../Settings.qml"), {})
|
||||||
Logic.conf['login'] = false
|
|
||||||
Logic.conf['instance'] = null;
|
|
||||||
Logic.conf['api_user_token'] = null;
|
|
||||||
Logic.conf['dysko'] = null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,13 @@ BackgroundItem {
|
||||||
smooth: true
|
smooth: true
|
||||||
source: account_avatar
|
source: account_avatar
|
||||||
visible: true
|
visible: true
|
||||||
|
onStatusChanged: {
|
||||||
|
if (avatar.status === Image.Error)
|
||||||
|
source = "image://theme/icon-m-person?" + (pressed
|
||||||
|
? Theme.highlightColor
|
||||||
|
: Theme.primaryColor)
|
||||||
|
}
|
||||||
|
|
||||||
MouseArea {
|
MouseArea {
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
onClicked: {
|
onClicked: {
|
||||||
|
@ -101,7 +108,7 @@ BackgroundItem {
|
||||||
topMargin: Theme.paddingSmall
|
topMargin: Theme.paddingSmall
|
||||||
bottomMargin: Theme.paddingLarge
|
bottomMargin: Theme.paddingLarge
|
||||||
}
|
}
|
||||||
height: content.length ? paintedHeight : 0
|
height: content.length ? (contentWarningLabel.paintedHeight > paintedHeight ? contentWarningLabel.paintedHeight : paintedHeight) : 0
|
||||||
onLinkActivated: {
|
onLinkActivated: {
|
||||||
var test = link.split("/")
|
var test = link.split("/")
|
||||||
console.log(link)
|
console.log(link)
|
||||||
|
@ -138,11 +145,22 @@ BackgroundItem {
|
||||||
color: Theme.highlightDimmerColor
|
color: Theme.highlightDimmerColor
|
||||||
visible: status_spoiler_text.length > 0
|
visible: status_spoiler_text.length > 0
|
||||||
Label {
|
Label {
|
||||||
|
id: contentWarningLabel
|
||||||
font.pixelSize: Theme.fontSizeExtraSmall
|
font.pixelSize: Theme.fontSizeExtraSmall
|
||||||
horizontalAlignment: Text.AlignHCenter
|
horizontalAlignment: Text.AlignHCenter
|
||||||
|
anchors {
|
||||||
anchors.centerIn: parent
|
topMargin: Theme.paddingSmall
|
||||||
|
left: parent.left
|
||||||
|
leftMargin: Theme.paddingMedium
|
||||||
|
centerIn: parent
|
||||||
|
right: parent.right
|
||||||
|
rightMargin: Theme.paddingMedium
|
||||||
|
bottomMargin: Theme.paddingSmall
|
||||||
|
}
|
||||||
|
width: parent.width
|
||||||
|
truncationMode: TruncationMode.Fade
|
||||||
color: Theme.highlightColor
|
color: Theme.highlightColor
|
||||||
|
wrapMode: Text.WordWrap
|
||||||
text: model.status_spoiler_text
|
text: model.status_spoiler_text
|
||||||
}
|
}
|
||||||
MouseArea {
|
MouseArea {
|
||||||
|
|
|
@ -33,3 +33,9 @@
|
||||||
* Thu July 7 2017 Dusko Angirevic <dysko@me.com> 0.1.9-0
|
* Thu July 7 2017 Dusko Angirevic <dysko@me.com> 0.1.9-0
|
||||||
- Image Upload added [#9]
|
- Image Upload added [#9]
|
||||||
- Emoji pannel added
|
- Emoji pannel added
|
||||||
|
- ES lang update by Carlos Gonzales
|
||||||
|
|
||||||
|
* Thu July 20 2017 Dusko Angirevic <dysko@me.com> 0.2.0-0
|
||||||
|
- Better tablet displaying
|
||||||
|
- "boosted" notification bugfix
|
||||||
|
- ES lang update by Caballlero
|
||||||
|
|
|
@ -133,12 +133,8 @@
|
||||||
<translation>Cargar más</translation>
|
<translation>Cargar más</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Logout</source>
|
<source>Settings</source>
|
||||||
<translation>Cerrar sesión</translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>Login</source>
|
|
||||||
<translation>Iniciar sesión</translation>
|
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
|
@ -192,6 +188,53 @@
|
||||||
<translation>Seguidores</translation>
|
<translation>Seguidores</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>Settings</name>
|
||||||
|
<message>
|
||||||
|
<source>Settings</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Remove Account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Add Account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Load images in toots</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Credits</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>UI/UX design and development</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Translate</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Deauthorize this app and remove your account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Authorize this app to use your Mastodon account in your behalf</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Disable this option if you want to preserve your data connection</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Use Transifex to help with app translation to your language</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Toot</name>
|
<name>Toot</name>
|
||||||
<message>
|
<message>
|
||||||
|
|
|
@ -133,12 +133,8 @@
|
||||||
<translation>Charger plus</translation>
|
<translation>Charger plus</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Logout</source>
|
<source>Settings</source>
|
||||||
<translation>Déconnexion</translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>Login</source>
|
|
||||||
<translation>Connexion</translation>
|
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
|
@ -192,6 +188,53 @@
|
||||||
<translation>Abonnés</translation>
|
<translation>Abonnés</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>Settings</name>
|
||||||
|
<message>
|
||||||
|
<source>Settings</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Remove Account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Add Account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Load images in toots</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Credits</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>UI/UX design and development</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Translate</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Deauthorize this app and remove your account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Authorize this app to use your Mastodon account in your behalf</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Disable this option if you want to preserve your data connection</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Use Transifex to help with app translation to your language</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Toot</name>
|
<name>Toot</name>
|
||||||
<message>
|
<message>
|
||||||
|
|
|
@ -133,11 +133,7 @@
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Logout</source>
|
<source>Settings</source>
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>Login</source>
|
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
@ -192,6 +188,53 @@
|
||||||
<translation>Volgers</translation>
|
<translation>Volgers</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>Settings</name>
|
||||||
|
<message>
|
||||||
|
<source>Settings</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Remove Account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Add Account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Load images in toots</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Credits</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>UI/UX design and development</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Translate</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Deauthorize this app and remove your account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Authorize this app to use your Mastodon account in your behalf</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Disable this option if you want to preserve your data connection</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Use Transifex to help with app translation to your language</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Toot</name>
|
<name>Toot</name>
|
||||||
<message>
|
<message>
|
||||||
|
|
|
@ -133,12 +133,8 @@
|
||||||
<translation>Cargar mai</translation>
|
<translation>Cargar mai</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Logout</source>
|
<source>Settings</source>
|
||||||
<translation>Desconnexion</translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>Login</source>
|
|
||||||
<translation>Connexion</translation>
|
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
|
@ -192,6 +188,53 @@
|
||||||
<translation>Seguidors</translation>
|
<translation>Seguidors</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>Settings</name>
|
||||||
|
<message>
|
||||||
|
<source>Settings</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Remove Account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Add Account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Load images in toots</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Credits</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>UI/UX design and development</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Translate</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Deauthorize this app and remove your account</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Authorize this app to use your Mastodon account in your behalf</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Disable this option if you want to preserve your data connection</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Use Transifex to help with app translation to your language</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Toot</name>
|
<name>Toot</name>
|
||||||
<message>
|
<message>
|
||||||
|
|
|
@ -39,46 +39,46 @@
|
||||||
<name>Conversation</name>
|
<name>Conversation</name>
|
||||||
<message>
|
<message>
|
||||||
<source>Conversation</source>
|
<source>Conversation</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Conversation</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Content warning!</source>
|
<source>Content warning!</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Content warning!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>public</source>
|
<source>public</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>public</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>unlisted</source>
|
<source>unlisted</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>unlisted</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>followers only</source>
|
<source>followers only</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>followers only</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>direct</source>
|
<source>direct</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>direct</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Delete</source>
|
<source>Delete</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Delete</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Emojis</source>
|
<source>Emojis</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Emojis</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Tap to insert</source>
|
<source>Tap to insert</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation>Tap to insert</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>ImageUploader</name>
|
<name>ImageUploader</name>
|
||||||
<message>
|
<message>
|
||||||
<source>The file %1 does not exists</source>
|
<source>The file %1 does not exists</source>
|
||||||
<translation>The file %1 does not exists</translation>
|
<translation></translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
|
@ -133,12 +133,8 @@
|
||||||
<translation>Load more</translation>
|
<translation>Load more</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Logout</source>
|
<source>Settings</source>
|
||||||
<translation>Logout</translation>
|
<translation>Settings</translation>
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<source>Login</source>
|
|
||||||
<translation>Login</translation>
|
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
|
@ -192,6 +188,53 @@
|
||||||
<translation>Followers</translation>
|
<translation>Followers</translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>Settings</name>
|
||||||
|
<message>
|
||||||
|
<source>Settings</source>
|
||||||
|
<translation>Settings</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Remove Account</source>
|
||||||
|
<translation>Remove Account</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Add Account</source>
|
||||||
|
<translation>Add Account</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Authorize this app to use your Mastodon account in your behalf</source>
|
||||||
|
<translation>Authorize this app to use your Mastodon account in your behalf</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Load images in toots</source>
|
||||||
|
<translation>Load images in toots</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Deauthorize this app and remove your account</source>
|
||||||
|
<translation>Deauthorize this app and remove your account</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Credits</source>
|
||||||
|
<translation>Credits</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Translate</source>
|
||||||
|
<translation>Translate</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Use Transifex to help with app translation to your language</source>
|
||||||
|
<translation>Use Transifex to help with app translation to your language</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Disable this option if you want to preserve your data connection</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>UI/UX design and development</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Toot</name>
|
<name>Toot</name>
|
||||||
<message>
|
<message>
|
||||||
|
|
Loading…
Reference in a new issue