Merge branch 'ui-improvements'
This commit is contained in:
commit
7d5cf6f9d2
28 changed files with 256 additions and 235 deletions
|
@ -37,10 +37,9 @@ dbus_services.path = /usr/share/dbus-1/services/
|
|||
dbus_services.files = config/ba.dysko.harbour.tooterb.service
|
||||
|
||||
interfaces.path = /usr/share/dbus-1/interfaces/
|
||||
interfaces.files = config/ba.dysko.harbour.tooterb.xml
|
||||
interfaces.files = config/ba.dysko.harbourb.tooter.xml
|
||||
|
||||
SOURCES += \
|
||||
src/harbour-tooterb.cpp
|
||||
SOURCES += src/harbour-tooterb.cpp
|
||||
SOURCES += src/imageuploader.cpp
|
||||
SOURCES += src/filedownloader.cpp
|
||||
SOURCES += src/notifications.cpp
|
||||
|
@ -54,8 +53,7 @@ HEADERS += src/dbusAdaptor.h
|
|||
HEADERS += src/dbus.h
|
||||
|
||||
DISTFILES += qml/harbour-tooterb.qml \
|
||||
config/icon-lock-harbour-tooterb.png \
|
||||
qml/images/tooterb.svg \
|
||||
qml/pages/components/InfoBanner.qml \
|
||||
qml/pages/components/VisualContainer.qml \
|
||||
qml/pages/components/MiniStatus.qml \
|
||||
qml/pages/components/MiniHeader.qml \
|
||||
|
@ -78,18 +76,20 @@ DISTFILES += qml/harbour-tooterb.qml \
|
|||
qml/images/notification.svg \
|
||||
qml/images/verified.svg \
|
||||
qml/images/boosted.svg \
|
||||
qml/images/tooter.svg \
|
||||
qml/images/emojiselect.svg \
|
||||
qml/images/icon-m-profile.svg \
|
||||
qml/images/icon-l-profile.svg \
|
||||
qml/lib/Mastodon.js \
|
||||
qml/lib/Worker.js \
|
||||
config/icon-lock-harbour-tooterb.png \
|
||||
config/x-harbour.tooterb.activity.conf \
|
||||
rpm/harbour-tooterb.changes \
|
||||
rpm/harbour-tooterb.changes.run.in \
|
||||
rpm/harbour-tooterb.spec \
|
||||
rpm/harbour-tooterb.yaml \
|
||||
translations/*.ts \
|
||||
harbour-tooterb.desktop
|
||||
harbour-tooter.desktop
|
||||
|
||||
SAILFISHAPP_ICONS = 86x86 108x108 128x128 172x172
|
||||
|
||||
|
|
|
@ -132,11 +132,13 @@ function parseAccounts(collection, prefix, data){
|
|||
res[prefix + 'account_username'] = data["username"]
|
||||
res[prefix + 'account_acct'] = data["acct"]
|
||||
res[prefix + 'account_display_name'] = data["display_name"]
|
||||
res[prefix + 'account_discoverable'] = data["discoverable"]
|
||||
res[prefix + 'account_locked'] = data["locked"]
|
||||
res[prefix + 'account_created_at'] = data["created_at"]
|
||||
res[prefix + 'account_avatar'] = data["avatar"]
|
||||
res[prefix + 'account_header'] = data["header"]
|
||||
|
||||
// /console.log(JSON.stringify(res))
|
||||
// console.log(JSON.stringify(res))
|
||||
return (res);
|
||||
}
|
||||
|
||||
|
@ -226,6 +228,7 @@ function parseToot (data){
|
|||
item['highlight'] = false
|
||||
item['status_id'] = data["id"]
|
||||
item['status_uri'] = data["uri"]
|
||||
item['status_url'] = data["url"]
|
||||
item['status_in_reply_to_id'] = data["in_reply_to_id"]
|
||||
item['status_in_reply_to_account_id'] = data["in_reply_to_account_id"]
|
||||
item['status_reblog'] = data["reblog"] ? true : false
|
||||
|
@ -236,6 +239,7 @@ function parseToot (data){
|
|||
item['favourites_count'] = data["favourites_count"]
|
||||
item['reblogged'] = data["reblogged"]
|
||||
item['favourited'] = data["favourited"]
|
||||
item['bookmarked'] = data["bookmarked"]
|
||||
item['status_sensitive'] = data["sensitive"]
|
||||
item['status_spoiler_text'] = data["spoiler_text"]
|
||||
item['status_visibility'] = data["visibility"]
|
||||
|
|
|
@ -4,16 +4,18 @@ import harbour.tooterb.Uploader 1.0
|
|||
import "../lib/API.js" as Logic
|
||||
import "./components/"
|
||||
|
||||
|
||||
Page {
|
||||
id: conversationPage
|
||||
property string type
|
||||
property string headerTitle: ""
|
||||
property string type
|
||||
property alias title: header.title
|
||||
property alias description: header.description
|
||||
property alias avatar: header.image
|
||||
property string suggestedUser: ""
|
||||
property ListModel suggestedModel
|
||||
property string toot_id: ""
|
||||
property string uri: ""
|
||||
property string toot_id: ""
|
||||
property string toot_url: ""
|
||||
property int tootMaxChar: 500;
|
||||
property ListModel mdl
|
||||
allowedOrientations: Orientation.All
|
||||
|
@ -41,6 +43,10 @@ Page {
|
|||
}
|
||||
}
|
||||
|
||||
InfoBanner {
|
||||
id: sentBanner
|
||||
}
|
||||
|
||||
ListModel {
|
||||
id: mediaModel
|
||||
onCountChanged: {
|
||||
|
@ -63,7 +69,7 @@ Page {
|
|||
SilicaListView {
|
||||
id: conversationList
|
||||
header: PageHeader {
|
||||
title: qsTr("Conversation")
|
||||
title: headerTitle // pageTitle pushed from MainPage.qml or VisualContainer.qml
|
||||
}
|
||||
clip: true
|
||||
anchors {
|
||||
|
@ -92,13 +98,15 @@ Page {
|
|||
}
|
||||
}
|
||||
PullDownMenu {
|
||||
MenuItem {
|
||||
visible: type == "reply" && toot_url != ""
|
||||
/* MenuItem {
|
||||
text: qsTr("Open in Browser")
|
||||
onClicked: Qt.openUrlExternally(uri);
|
||||
}
|
||||
onClicked: Qt.openUrlExternally(toot_url);
|
||||
} */
|
||||
// ! url isn't always fetched. Needs a solution.
|
||||
MenuItem {
|
||||
text: qsTr("Copy URL to Clipboard")
|
||||
onClicked: Clipboard.text = uri;
|
||||
text: qsTr("Copy Link to Clipboard")
|
||||
onClicked: Clipboard.text = toot_url;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +123,6 @@ Page {
|
|||
anchors.fill: parent
|
||||
model: suggestedModel
|
||||
clip: true
|
||||
|
||||
delegate: ItemUser {
|
||||
onClicked: {
|
||||
var start = toot.cursorPosition
|
||||
|
@ -219,7 +226,6 @@ Page {
|
|||
|| description.charAt(
|
||||
0) == '#') ? description + ' ' : ''
|
||||
height: Math.max(270, Math.min(900, implicitHeight))
|
||||
//height: implicitHeight
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
placeholderText: qsTr("What's on your mind?")
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
|
@ -315,7 +321,6 @@ Page {
|
|||
}
|
||||
}
|
||||
IconButton {
|
||||
|
||||
id: btnContentWarning
|
||||
anchors {
|
||||
top: toot.bottom
|
||||
|
@ -437,11 +442,11 @@ Page {
|
|||
msg.params['spoiler_text'] = warningContent.text
|
||||
}
|
||||
|
||||
worker.sendMessage(msg)
|
||||
warningContent.text = ""
|
||||
toot.text = ""
|
||||
mediaModel.clear()
|
||||
pageStack.pop()
|
||||
worker.sendMessage(msg)
|
||||
warningContent.text = ""
|
||||
toot.text = ""
|
||||
mediaModel.clear();
|
||||
sentBanner.showText(qsTr("Toot sent!"))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -34,15 +34,11 @@ import Sailfish.Silica 1.0
|
|||
import "../lib/API.js" as Logic
|
||||
|
||||
|
||||
|
||||
Page {
|
||||
id: loginPage
|
||||
|
||||
// The effective value will be restricted by ApplicationWindow.allowedOrientations
|
||||
allowedOrientations: Orientation.All
|
||||
|
||||
|
||||
|
||||
SilicaFlickable {
|
||||
anchors.fill: parent
|
||||
contentHeight: column.height + Theme.paddingLarge
|
||||
|
@ -52,8 +48,9 @@ Page {
|
|||
Column {
|
||||
id: column
|
||||
width: parent.width
|
||||
|
||||
PageHeader { title: qsTr("Login") }
|
||||
PageHeader {
|
||||
title: qsTr("Login")
|
||||
}
|
||||
|
||||
SectionHeader {
|
||||
text: qsTr("Instance")
|
||||
|
@ -83,7 +80,6 @@ Page {
|
|||
conf.instance = instance.text;
|
||||
conf.login = false;
|
||||
|
||||
|
||||
/*conf['login'] = false;
|
||||
conf['mastodon_client_id'] = data['mastodon_client_id'];
|
||||
conf['mastodon_client_secret'] = data['mastodon_client_secret'];
|
||||
|
|
|
@ -57,6 +57,7 @@ Page {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
VisualItemModel {
|
||||
id: visualModel
|
||||
MyList{
|
||||
|
@ -188,7 +189,8 @@ Page {
|
|||
"display_name": model.account_display_name,
|
||||
"username": model.account_acct,
|
||||
"user_id": model.account_id,
|
||||
"profileImage": model.account_avatar
|
||||
"profileImage": model.account_avatar,
|
||||
"profileBackground": model.account_header
|
||||
})
|
||||
}
|
||||
}
|
||||
|
@ -246,7 +248,7 @@ Page {
|
|||
visible: !isPortrait ? true : !infoPanel.open
|
||||
icon.source: "image://theme/icon-l-add"
|
||||
onClicked: {
|
||||
pageStack.push(Qt.resolvedUrl("Conversation.qml"), {title: qsTr("New Toot"), type: "new"})
|
||||
pageStack.push(Qt.resolvedUrl("Conversation.qml"), {headerTitle: qsTr("New Toot"), type: "new"})
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ Page {
|
|||
property int favourites_count;
|
||||
property int reblogs_count;
|
||||
property int count_moments;
|
||||
property string profile_background: "";
|
||||
property string profileBackground: "";
|
||||
property string note: "";
|
||||
property string url: "";
|
||||
property bool locked : false;
|
||||
|
@ -42,6 +42,7 @@ Page {
|
|||
username = messageObject.data.acct
|
||||
display_name = messageObject.data.display_name
|
||||
profileImage = messageObject.data.avatar_static
|
||||
profileBackground = messageObject.data.header_static
|
||||
|
||||
var msg = {
|
||||
'action' : "accounts/relationships/",
|
||||
|
@ -141,6 +142,7 @@ Page {
|
|||
title: display_name
|
||||
description: username
|
||||
image: profileImage
|
||||
bg: profileBackground
|
||||
}
|
||||
|
||||
anchors {
|
||||
|
@ -157,7 +159,6 @@ Page {
|
|||
conf: Logic.conf
|
||||
}
|
||||
|
||||
|
||||
ExpandingSectionGroup {
|
||||
id: expander
|
||||
//currentIndex: 0
|
||||
|
@ -271,10 +272,10 @@ Page {
|
|||
return check;
|
||||
}));
|
||||
send(link)
|
||||
} else if (test.length === 4 && test[3][0] === "@" ) {
|
||||
tlSearch.search = decodeURIComponent("@"+test[3].substring(1)+"@"+test[2])
|
||||
slideshow.positionViewAtIndex(4, ListView.SnapToItem)
|
||||
navigation.navigateTo('search')
|
||||
|
||||
// function still missing for user accounts
|
||||
// } else if (test.length === 4 && test[3][0] === "@" ) {
|
||||
|
||||
} else {
|
||||
Qt.openUrlExternally(link);
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@ import QtQuick 2.0
|
|||
import Sailfish.Silica 1.0
|
||||
import QtMultimedia 5.0
|
||||
|
||||
Page {
|
||||
FullscreenContentPage {
|
||||
id: imagePage
|
||||
property string type: ""
|
||||
property string previewURL: ""
|
||||
|
@ -22,6 +22,26 @@ Page {
|
|||
videoFlickable.visible = true;
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
id: overlay
|
||||
z: 100
|
||||
property bool active: true
|
||||
enabled: active
|
||||
anchors.fill: parent
|
||||
opacity: active ? 1.0 : 0.0
|
||||
Behavior on opacity { FadeAnimator {}}
|
||||
IconButton {
|
||||
y: Theme.paddingLarge
|
||||
anchors {
|
||||
right: parent.right
|
||||
rightMargin: Theme.horizontalPageMargin
|
||||
}
|
||||
icon.source: "image://theme/icon-m-dismiss"
|
||||
onClicked: pageStack.pop()
|
||||
}
|
||||
}
|
||||
|
||||
Flickable {
|
||||
id: videoFlickable
|
||||
visible: false
|
||||
|
@ -49,7 +69,6 @@ Page {
|
|||
case MediaPlayer.EndOfMedia:
|
||||
console.log("EndOfMedia")
|
||||
return;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -68,7 +87,6 @@ Page {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
onPositionChanged: function(){
|
||||
//console.log(duration)
|
||||
//console.log(bufferProgress)
|
||||
|
@ -81,15 +99,17 @@ Page {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
onStopped: function(){
|
||||
play()
|
||||
}
|
||||
|
||||
IconButton {
|
||||
id: playerIcon
|
||||
anchors.left: parent.left
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.leftMargin: Theme.paddingLarge
|
||||
anchors.bottomMargin: Theme.paddingMedium
|
||||
anchors.bottomMargin: Theme.paddingLarge*1.5
|
||||
icon.source: "image://theme/icon-m-play"
|
||||
onClicked: function() {
|
||||
if (video.playbackState === MediaPlayer.PlayingState)
|
||||
|
@ -104,10 +124,9 @@ Page {
|
|||
id: playerProgress
|
||||
anchors.left: playerIcon.right
|
||||
anchors.right: videoDlBtn.left
|
||||
|
||||
anchors.verticalCenter: playerIcon.verticalCenter
|
||||
anchors.leftMargin: 0
|
||||
anchors.bottomMargin: Theme.paddingMedium
|
||||
anchors.bottomMargin: Theme.paddingLarge*1.5
|
||||
}
|
||||
IconButton {
|
||||
id: videoDlBtn
|
||||
|
@ -115,9 +134,9 @@ Page {
|
|||
anchors.right: parent.right
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.rightMargin: Theme.paddingLarge
|
||||
anchors.bottomMargin: Theme.paddingMedium
|
||||
//width: Theme.iconSizeMedium+Theme.paddingMedium*2
|
||||
icon.source: "image://theme/icon-m-cloud-download"
|
||||
anchors.bottomMargin: Theme.paddingLarge*1.5
|
||||
icon.source: "image://theme/icon-m-device-download"
|
||||
icon.opacity: 0.0
|
||||
onClicked: {
|
||||
var filename = mediaURL.split("/");
|
||||
FileDownloader.downloadFile(mediaURL, filename[filename.length-1]);
|
||||
|
@ -135,7 +154,7 @@ Page {
|
|||
anchors.centerIn: parent
|
||||
id: videoError
|
||||
width: parent.width - 2*Theme.paddingMedium
|
||||
wrapMode: Text.WordWrap
|
||||
wrapMode: Text.Wrap
|
||||
height: contentHeight
|
||||
visible: false;
|
||||
font.pixelSize: Theme.fontSizeSmall;
|
||||
|
@ -165,7 +184,6 @@ Page {
|
|||
clip: true
|
||||
onHeightChanged: if (imagePreview.status === Image.Ready) imagePreview.fitToScreen();
|
||||
|
||||
|
||||
Item {
|
||||
id: imageContainer
|
||||
width: Math.max(imagePreview.width * imagePreview.scale, imageFlickable.width)
|
||||
|
@ -173,22 +191,18 @@ Page {
|
|||
|
||||
Image {
|
||||
id: imagePreview
|
||||
|
||||
property real prevScale
|
||||
|
||||
function fitToScreen() {
|
||||
scale = Math.min(imageFlickable.width / width, imageFlickable.height / height, 1)
|
||||
pinchArea.minScale = scale
|
||||
prevScale = scale
|
||||
}
|
||||
|
||||
anchors.centerIn: parent
|
||||
fillMode: Image.PreserveAspectFit
|
||||
cache: true
|
||||
asynchronous: true
|
||||
sourceSize.height: 1000;
|
||||
smooth: false
|
||||
|
||||
onStatusChanged: {
|
||||
if (status == Image.Ready) {
|
||||
fitToScreen()
|
||||
|
@ -224,7 +238,6 @@ Page {
|
|||
opacity: 0.3
|
||||
property real minScale: 1.0
|
||||
property real maxScale: 3.0
|
||||
|
||||
anchors.fill: parent
|
||||
enabled: imagePreview.status === Image.Ready
|
||||
pinch.target: imagePreview
|
||||
|
@ -267,11 +280,9 @@ Page {
|
|||
|
||||
Component {
|
||||
id: loadingIndicator
|
||||
|
||||
Item {
|
||||
height: childrenRect.height
|
||||
width: imagePage.width
|
||||
|
||||
ProgressCircle {
|
||||
id: imageLoadingIndicator
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
@ -293,9 +304,8 @@ Page {
|
|||
anchors.right: parent.right
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.rightMargin: Theme.paddingLarge
|
||||
anchors.bottomMargin: Theme.paddingMedium
|
||||
//width: Theme.iconSizeMedium+Theme.paddingMedium*2
|
||||
icon.source: "image://theme/icon-m-cloud-download"
|
||||
anchors.bottomMargin: Theme.paddingLarge*1.5
|
||||
icon.source: "image://theme/icon-m-device-download"
|
||||
onClicked: {
|
||||
var filename = mediaURL.split("/");
|
||||
FileDownloader.downloadFile(mediaURL, filename[filename.length-1]);
|
||||
|
|
61
qml/pages/components/InfoBanner.qml
Normal file
61
qml/pages/components/InfoBanner.qml
Normal file
|
@ -0,0 +1,61 @@
|
|||
import QtQuick 2.0
|
||||
import Sailfish.Silica 1.0
|
||||
|
||||
|
||||
DockedPanel {
|
||||
id: root
|
||||
z: 100
|
||||
width: parent.width
|
||||
height: content.height
|
||||
dock: Dock.Top
|
||||
|
||||
Rectangle {
|
||||
id: content
|
||||
width: root.width
|
||||
height: infoLabel.height + 5*Theme.paddingMedium
|
||||
//anchors.topMargin: 20
|
||||
color: Theme.highlightBackgroundColor
|
||||
opacity: 1.0
|
||||
|
||||
Label {
|
||||
id: infoLabel
|
||||
text : ""
|
||||
color: Theme.primaryColor
|
||||
font.family: Theme.fontFamilyHeading
|
||||
font.pixelSize: Theme.fontSizeMedium
|
||||
//font.weight: Font.Bold
|
||||
width: parent.width
|
||||
wrapMode: Text.WrapAnywhere
|
||||
anchors {
|
||||
left: parent.left
|
||||
leftMargin: Theme.horizontalPageMargin*2
|
||||
right: parent.right
|
||||
rightMargin: Theme.horizontalPageMargin
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
}
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: {
|
||||
root.hide()
|
||||
autoClose.stop()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function showText(text) {
|
||||
infoLabel.text = text
|
||||
root.show()
|
||||
autoClose.start()
|
||||
}
|
||||
|
||||
Timer {
|
||||
id: autoClose
|
||||
interval: 6000
|
||||
running: false
|
||||
onTriggered: {
|
||||
root.hide()
|
||||
stop()
|
||||
}
|
||||
}
|
||||
}
|
|
@ -74,8 +74,6 @@ Item {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
MyImage {
|
||||
id: placeholder1
|
||||
width: 2
|
||||
|
|
|
@ -41,7 +41,6 @@ Item {
|
|||
: Theme.primaryColor)
|
||||
}
|
||||
|
||||
|
||||
Label {
|
||||
id: lblScreenName
|
||||
anchors {
|
||||
|
|
|
@ -169,7 +169,5 @@ SilicaGridView {
|
|||
|
||||
}
|
||||
|
||||
|
||||
|
||||
VerticalScrollDecorator {}
|
||||
}
|
||||
|
|
|
@ -10,21 +10,22 @@ Item {
|
|||
//property string bg: "";
|
||||
width: parent.width
|
||||
height: icon.height + Theme.paddingLarge*2
|
||||
/*Image {
|
||||
anchors.fill: parent
|
||||
asynchronous: true
|
||||
fillMode: Image.PreserveAspectCrop
|
||||
source: bg
|
||||
opacity: 0.3
|
||||
}*/
|
||||
|
||||
Rectangle {
|
||||
id: bgImage
|
||||
anchors.fill: parent
|
||||
opacity: 0.2
|
||||
gradient: Gradient {
|
||||
GradientStop { position: 0.0; color: Theme.highlightBackgroundColor }
|
||||
GradientStop { position: 1.0; color: Theme.highlightBackgroundColor }
|
||||
GradientStop { position: 1.0; color: Theme.highlightBackgroundColor }
|
||||
}
|
||||
Image {
|
||||
anchors.fill: bgImage
|
||||
asynchronous: true
|
||||
fillMode: Image.PreserveAspectCrop
|
||||
source: bg
|
||||
opacity: 0.8
|
||||
}
|
||||
|
||||
}
|
||||
Image {
|
||||
id: icon
|
||||
|
|
|
@ -3,7 +3,6 @@ import Sailfish.Silica 1.0
|
|||
import "../../lib/API.js" as Logic
|
||||
|
||||
BackgroundItem {
|
||||
|
||||
id: delegate
|
||||
signal send (string notice)
|
||||
signal navigateTo(string link)
|
||||
|
@ -28,6 +27,7 @@ BackgroundItem {
|
|||
topMargin: Theme.paddingMedium
|
||||
}
|
||||
}
|
||||
|
||||
Image {
|
||||
id: avatar
|
||||
anchors {
|
||||
|
@ -50,7 +50,6 @@ BackgroundItem {
|
|||
? Theme.highlightColor
|
||||
: Theme.primaryColor)
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: {
|
||||
|
@ -58,12 +57,12 @@ BackgroundItem {
|
|||
"display_name": model.account_display_name,
|
||||
"username": model.account_acct,
|
||||
"user_id": model.account_id,
|
||||
"profileImage": model.account_avatar
|
||||
"profileImage": model.account_avatar,
|
||||
"profileBackground": model.account_header
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Image {
|
||||
id: iconTR
|
||||
anchors {
|
||||
|
@ -138,13 +137,21 @@ BackgroundItem {
|
|||
tlSearch.search = decodeURIComponent("@"+test[3].substring(1)+"@"+test[2])
|
||||
slideshow.positionViewAtIndex(4, ListView.SnapToItem)
|
||||
navigation.navigateTo('search')
|
||||
|
||||
// Original component
|
||||
/* pageStack.push(Qt.resolvedUrl("../Profile.qml"), {
|
||||
"name": "",
|
||||
"username": test[3].substring(1)+"@"+test[2],
|
||||
"profileImage": ""
|
||||
}) */
|
||||
|
||||
} else {
|
||||
Qt.openUrlExternally(link);
|
||||
}
|
||||
}
|
||||
text: content.replace(new RegExp("<a ", 'g'), '<a style="text-decoration: none; color:'+(pressed ? Theme.secondaryColor : Theme.highlightColor)+'" ')
|
||||
linkColor : Theme.highlightColor
|
||||
wrapMode: Text.WordWrap
|
||||
wrapMode: Text.Wrap
|
||||
textFormat: Text.RichText
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
color: (pressed ? Theme.highlightColor : (!highlight ? Theme.primaryColor : Theme.secondaryColor))
|
||||
|
@ -169,7 +176,7 @@ BackgroundItem {
|
|||
width: parent.width
|
||||
truncationMode: TruncationMode.Fade
|
||||
color: Theme.highlightColor
|
||||
wrapMode: Text.WordWrap
|
||||
wrapMode: Text.Wrap
|
||||
text: model.status_spoiler_text
|
||||
}
|
||||
MouseArea {
|
||||
|
@ -179,6 +186,7 @@ BackgroundItem {
|
|||
|
||||
}
|
||||
}
|
||||
|
||||
MediaBlock {
|
||||
id: media
|
||||
anchors {
|
||||
|
@ -191,6 +199,7 @@ BackgroundItem {
|
|||
model: typeof attachments !== "undefined" ? attachments : Qt.createQmlObject('import QtQuick 2.0; ListModel { }', Qt.application, 'InternalQmlObject');
|
||||
height: 100
|
||||
}
|
||||
|
||||
ContextMenu {
|
||||
id: mnu
|
||||
MenuItem {
|
||||
|
@ -269,16 +278,14 @@ BackgroundItem {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
onClicked: {
|
||||
var m = Qt.createQmlObject('import QtQuick 2.0; ListModel { }', Qt.application, 'InternalQmlObject');
|
||||
if (typeof mdl !== "undefined")
|
||||
m.append(mdl.get(index))
|
||||
pageStack.push(Qt.resolvedUrl("../Conversation.qml"), {
|
||||
headerTitle: "Conversation",
|
||||
toot_id: status_id,
|
||||
uri: status_uri,
|
||||
toot_url: status_url,
|
||||
title: account_display_name,
|
||||
description: '@'+account_acct,
|
||||
avatar: account_avatar,
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Konversation</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Löschen</translation>
|
||||
|
@ -63,19 +59,19 @@
|
|||
<translation>Was gibt's Neues?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<translation>Im Browser öffnen</translation>
|
||||
<source>Toot sent!</source>
|
||||
<translation>Toot gesendet!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<translation>Link in Zwischenablage kopieren</translation>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation>Link kopieren</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Fehler beim Laden</translation>
|
||||
<translation>Ladefehler</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Συνομιλία</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Διαγραφή</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Σφάλμα φόρτωσης</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Conversación</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Borrar</translation>
|
||||
|
@ -63,19 +59,19 @@
|
|||
<translation>¿En qué estás pensando?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<translation>Abrir en el navegador</translation>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<translation>Copiar enlace</translation>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Error al cargar</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Conversation</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Supprimer</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation>Qu'avez-vous en tête?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<translation>Ouvrir dans le navigateur</translation>
|
||||
<source>Toot sent!</source>
|
||||
<translation>Pouet envoyé !</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation>Copier le lien</translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Erreur de chargement</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -28,62 +28,57 @@
|
|||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="66"/>
|
||||
<source>Conversation</source>
|
||||
<translation>Conversazione</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="96"/>
|
||||
<source>Open in Browser</source>
|
||||
<translation>Aprire nel browser</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="100"/>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<location filename="../qml/pages/Conversation.qml" line="108"/>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation>Copia link</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="193"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="200"/>
|
||||
<source>Write your warning here</source>
|
||||
<translation>Contenuto avviso</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="224"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="230"/>
|
||||
<source>What's on your mind?</source>
|
||||
<translation>A cosa stai pensando?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="287"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="293"/>
|
||||
<source>Delete</source>
|
||||
<translation>Elimina</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="387"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="392"/>
|
||||
<source>Public</source>
|
||||
<translation>Pubblico</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="390"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="395"/>
|
||||
<source>Unlisted</source>
|
||||
<translation>Non elencato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="393"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="398"/>
|
||||
<source>Followers-only</source>
|
||||
<translation>Solo ai seguaci</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="396"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="401"/>
|
||||
<source>Direct</source>
|
||||
<translation>Diretto</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="510"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="449"/>
|
||||
<source>Toot sent!</source>
|
||||
<translation>Toot è stato pubblicato!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="515"/>
|
||||
<source>Emojis</source>
|
||||
<translation>Emojis</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="511"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="516"/>
|
||||
<source>Tap to insert</source>
|
||||
<translation>Tap per inserire</translation>
|
||||
</message>
|
||||
|
@ -91,9 +86,9 @@
|
|||
<context>
|
||||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<location filename="../qml/pages/components/ImageFullScreen.qml" line="287"/>
|
||||
<location filename="../qml/pages/components/ImageFullScreen.qml" line="298"/>
|
||||
<source>Error loading</source>
|
||||
<translation>Errore caricamento</translation>
|
||||
<translation>Errore durante caricamento</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -107,27 +102,27 @@
|
|||
<context>
|
||||
<name>LoginPage</name>
|
||||
<message>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="56"/>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="52"/>
|
||||
<source>Login</source>
|
||||
<translation>Accesso</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="59"/>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="56"/>
|
||||
<source>Instance</source>
|
||||
<translation>Istanza</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="65"/>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="62"/>
|
||||
<source>Enter a valid Mastodon instance URL</source>
|
||||
<translation>Inserire URL di una istanza Mastodon valida</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="123"/>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="119"/>
|
||||
<source>Mastodon is a free, open-source social network. A decentralized alternative to commercial platforms, it avoids the risks of a single company monopolizing your communication. Pick a server that you trust — whichever you choose, you can interact with everyone else. Anyone can run their own Mastodon instance and participate in the social network seamlessly.</source>
|
||||
<translation>Mastodon è un servizio di rete sociale in software libero, costituito in una federazione d'istanze. Mastodon fa parte del più ampio Fediverso, permettendo ai suoi utenti di interagire anche con utenti su diverse piattaforme aperte che supportano lo stesso protocollo.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="194"/>
|
||||
<location filename="../qml/pages/LoginPage.qml" line="190"/>
|
||||
<source>Reload</source>
|
||||
<translation>Ricarica</translation>
|
||||
</message>
|
||||
|
@ -135,37 +130,37 @@
|
|||
<context>
|
||||
<name>MainPage</name>
|
||||
<message>
|
||||
<location filename="../qml/pages/MainPage.qml" line="64"/>
|
||||
<location filename="../qml/pages/MainPage.qml" line="65"/>
|
||||
<source>Home</source>
|
||||
<translation>Home</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/MainPage.qml" line="73"/>
|
||||
<location filename="../qml/pages/MainPage.qml" line="74"/>
|
||||
<source>Notifications</source>
|
||||
<translation>Notifiche</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/MainPage.qml" line="83"/>
|
||||
<location filename="../qml/pages/MainPage.qml" line="84"/>
|
||||
<source>Local</source>
|
||||
<translation>Locale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/MainPage.qml" line="93"/>
|
||||
<location filename="../qml/pages/MainPage.qml" line="94"/>
|
||||
<source>Federated</source>
|
||||
<translation>Federazione</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/MainPage.qml" line="120"/>
|
||||
<location filename="../qml/pages/MainPage.qml" line="121"/>
|
||||
<source>Search</source>
|
||||
<translation>Cerca</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/MainPage.qml" line="125"/>
|
||||
<location filename="../qml/pages/MainPage.qml" line="126"/>
|
||||
<source>@user or #term</source>
|
||||
<translation>@utente o #termine</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/MainPage.qml" line="249"/>
|
||||
<location filename="../qml/pages/MainPage.qml" line="251"/>
|
||||
<source>New Toot</source>
|
||||
<translation>Nuovo toot</translation>
|
||||
</message>
|
||||
|
@ -279,7 +274,7 @@
|
|||
<translation>Biografia</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="287"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="291"/>
|
||||
<source>Open Profile in Browser</source>
|
||||
<translation>Aprire profile nel browser</translation>
|
||||
</message>
|
||||
|
@ -398,22 +393,22 @@
|
|||
<context>
|
||||
<name>VisualContainer</name>
|
||||
<message>
|
||||
<location filename="../qml/pages/components/VisualContainer.qml" line="198"/>
|
||||
<location filename="../qml/pages/components/VisualContainer.qml" line="204"/>
|
||||
<source>Unboost</source>
|
||||
<translation>Annulla condivisione</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/components/VisualContainer.qml" line="198"/>
|
||||
<location filename="../qml/pages/components/VisualContainer.qml" line="204"/>
|
||||
<source>Boost</source>
|
||||
<translation>Condividi</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/components/VisualContainer.qml" line="235"/>
|
||||
<location filename="../qml/pages/components/VisualContainer.qml" line="241"/>
|
||||
<source>Unfavorite</source>
|
||||
<translation>Annulla apprezzamento</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/components/VisualContainer.qml" line="235"/>
|
||||
<location filename="../qml/pages/components/VisualContainer.qml" line="241"/>
|
||||
<source>Favorite</source>
|
||||
<translation>Apprezzato</translation>
|
||||
</message>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Gesprek</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Verwijderen</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Fout bij laden</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Gesprek</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Verwijderen</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Fout bij laden</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Discutida</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Escafar</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Error en cargar</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Konwersacja</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Usuń</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Błąd ładowania</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Беседа</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Удалить</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Ошибка при загрузке</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Разговор</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Обриши</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Greška u učitavanju</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Konversation</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Radera</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Problem att ladda</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>对话</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>删除</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation>有何想法?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<translation>在浏览器打开</translation>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation>复制链接到剪切板</translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>加载错误</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Conversation</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Delete</translation>
|
||||
|
@ -63,11 +59,11 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open in Browser</source>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL to Clipboard</source>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -75,7 +71,7 @@
|
|||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation></translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
Loading…
Reference in a new issue