tooterb release

This commit is contained in:
molan-git 2020-05-04 09:26:41 +02:00
parent 5b5e6e39d9
commit bd87353166
45 changed files with 159 additions and 553 deletions

View file

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View file

@ -1,8 +1,8 @@
[Desktop Entry]
Type=Application
X-Nemo-Application-Type=silica-qt5
Icon=harbour-tooter-beta
Exec=harbour-tooter-beta
Icon=harbour-tooterb
Exec=harbour-tooterb
Name=Tooter β
# translation example:
# your app name in German locale (de)

View file

@ -10,7 +10,7 @@
# - translation filenames have to be changed
# The name of your application
TARGET = harbour-tooter-beta
TARGET = harbour-tooterb
CONFIG += sailfishapp
@ -24,23 +24,23 @@ DEFINES += "APPVERSION=\\\"$${SPECVERSION}\\\""
DEFINES += "APPNAME=\\\"$${TARGET}\\\""
!exists( src/dbusAdaptor.h ) {
system(qdbusxml2cpp config/ba.dysko.harbour.tooter.xml -i dbus.h -a src/dbusAdaptor)
system(qdbusxml2cpp config/ba.dysko.harbour.tooterb.xml -i dbus.h -a src/dbusAdaptor)
}
config.path = /usr/share/$${TARGET}/config/
config.files = config/icon-lock-harbour-tooter.png
notification_categories.path = /usr/share/lipstick/notificationcategories
notification_categories.files = config/x-harbour.tooter.activity.*
notification_categories.files = config/x-harbour.tooterb.activity.*
dbus_services.path = /usr/share/dbus-1/services/
dbus_services.files = config/ba.dysko.harbour.tooter.service
dbus_services.files = config/ba.dysko.harbour.tooterb.service
interfaces.path = /usr/share/dbus-1/interfaces/
interfaces.files = config/ba.dysko.harbour.tooter.xml
interfaces.files = config/ba.dysko.harbour.tooterb.xml
SOURCES += \
src/harbour-tooter-beta.cpp
src/harbour-tooterb.cpp
SOURCES += src/imageuploader.cpp
SOURCES += src/filedownloader.cpp
SOURCES += src/notifications.cpp
@ -53,8 +53,8 @@ HEADERS += src/notifications.h
HEADERS += src/dbusAdaptor.h
HEADERS += src/dbus.h
DISTFILES += qml/harbour-tooter-beta.qml \
config/icon-lock-harbour-tooter-beta.png \
DISTFILES += qml/harbour-tooterb.qml \
config/icon-lock-harbour-tooterb.png \
qml/pages/components/VisualContainer.qml \
qml/pages/components/MiniStatus.qml \
qml/pages/components/MiniHeader.qml \
@ -83,13 +83,13 @@ DISTFILES += qml/harbour-tooter-beta.qml \
qml/images/icon-l-profile.svg \
qml/lib/Mastodon.js \
qml/lib/Worker.js \
config/x-harbour.tooter.activity.conf \
rpm/harbour-tooter-beta.changes \
rpm/harbour-tooter-beta.changes.run.in \
rpm/harbour-tooter-beta.spec \
rpm/harbour-tooter-beta.yaml \
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-tooter-beta.desktop
harbour-tooterb.desktop \
SAILFISHAPP_ICONS = 86x86 108x108 128x128 172x172
@ -101,17 +101,17 @@ CONFIG += sailfishapp_i18n
# planning to localize your app, remember to comment out the
# following TRANSLATIONS line. And also do not forget to
# modify the localized app name in the the .desktop file.
TRANSLATIONS += translations/harbour-tooter-beta-de.ts
TRANSLATIONS += translations/harbour-tooter-beta-el.ts
TRANSLATIONS += translations/harbour-tooter-beta-es.ts
TRANSLATIONS += translations/harbour-tooter-beta-fi.ts
TRANSLATIONS += translations/harbour-tooter-beta-fr.ts
TRANSLATIONS += translations/harbour-tooter-beta-nl.ts
TRANSLATIONS += translations/harbour-tooter-beta-nl_BE.ts
TRANSLATIONS += translations/harbour-tooter-beta-oc.ts
TRANSLATIONS += translations/harbour-tooter-beta-pl.ts
TRANSLATIONS += translations/harbour-tooter-beta-ru.ts
TRANSLATIONS += translations/harbour-tooter-beta-sr.ts
TRANSLATIONS += translations/harbour-tooter-beta-sv.ts
TRANSLATIONS += translations/harbour-tooter-beta-zh_CN.ts
TRANSLATIONS += translations/harbour-tooter-beta-it.ts
TRANSLATIONS += translations/harbour-tooterb-de.ts
TRANSLATIONS += translations/harbour-tooterb-el.ts
TRANSLATIONS += translations/harbour-tooterb-es.ts
TRANSLATIONS += translations/harbour-tooterb-fi.ts
TRANSLATIONS += translations/harbour-tooterb-fr.ts
TRANSLATIONS += translations/harbour-tooterb-nl.ts
TRANSLATIONS += translations/harbour-tooterb-nl_BE.ts
TRANSLATIONS += translations/harbour-tooterb-oc.ts
TRANSLATIONS += translations/harbour-tooterb-pl.ts
TRANSLATIONS += translations/harbour-tooterb-ru.ts
TRANSLATIONS += translations/harbour-tooterb-sr.ts
TRANSLATIONS += translations/harbour-tooterb-sv.ts
TRANSLATIONS += translations/harbour-tooterb-zh_CN.ts
TRANSLATIONS += translations/harbour-tooterb-it.ts

View file

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View file

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View file

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View file

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

View file

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

View file

@ -1,7 +1,7 @@
.pragma library
.import QtQuick.LocalStorage 2.0 as LS
var db = LS.LocalStorage.openDatabaseSync("tooter", "", "harbour-tooter-beta", 100000);
var db = LS.LocalStorage.openDatabaseSync("tooterb", "", "harbour-tooterb", 100000);
var conf = {};
var mediator = (function(){
var subscribe = function(channel, fn){
@ -118,17 +118,17 @@ var notificationGenerator = function(item){
var notification;
switch (item.urgency){
case "normal":
notification = Qt.createQmlObject('import org.nemomobile.notifications 1.0; Notification { category: "x-harbour.tooter.activity"; appName: "Tooter"; itemCount: 1; remoteActions: [ { "name": "default", "displayName": "Do something", "icon": "icon-s-certificates", "service": "ba.dysko.harbour.tooter", "path": "/", "iface": "ba.dysko.harbour.tooter", "method": "openapp", "arguments": [ "'+item.service+'", "'+item.key+'" ] }]; urgency: Notification.Normal; }', Qt.application, 'InternalQmlObject');
notification = Qt.createQmlObject('import org.nemomobile.notifications 1.0; Notification { category: "x-harbour.tooterb.activity"; appName: "Tooter β"; itemCount: 1; remoteActions: [ { "name": "default", "displayName": "Do something", "icon": "icon-s-certificates", "service": "ba.dysko.harbour.tooterb", "path": "/", "iface": "ba.dysko.harbour.tooterb", "method": "openapp", "arguments": [ "'+item.service+'", "'+item.key+'" ] }]; urgency: Notification.Normal; }', Qt.application, 'InternalQmlObject');
break;
case "critical":
notification = Qt.createQmlObject('import org.nemomobile.notifications 1.0; Notification { appName: "Tooter"; itemCount: 1; remoteActions: [ { "name": "default", "displayName": "Do something", "icon": "icon-s-certificates", "service": "ba.dysko.harbour.tooter", "path": "/", "iface": "ba.dysko.harbour.tooter", "method": "openapp", "arguments": [ "'+item.service+'", "'+item.key+'" ] }]; urgency: Notification.Critical; }', Qt.application, 'InternalQmlObject');
notification = Qt.createQmlObject('import org.nemomobile.notifications 1.0; Notification { appName: "Tooter β"; itemCount: 1; remoteActions: [ { "name": "default", "displayName": "Do something", "icon": "icon-s-certificates", "service": "ba.dysko.harbour.tooterb", "path": "/", "iface": "ba.dysko.harbour.tooterb", "method": "openapp", "arguments": [ "'+item.service+'", "'+item.key+'" ] }]; urgency: Notification.Critical; }', Qt.application, 'InternalQmlObject');
break;
default:
notification = Qt.createQmlObject('import org.nemomobile.notifications 1.0; Notification { category: "x-harbour.tooter.activity"; appName: "Tooter"; itemCount: 1; remoteActions: [ { "name": "default", "displayName": "Do something", "icon": "icon-s-certificates", "service": "ba.dysko.harbour.tooter", "path": "/", "iface": "ba.dysko.harbour.tooter", "method": "openapp", "arguments": [ "'+item.service+'", "'+item.key+'" ] }]; urgency: Notification.Low; }', Qt.application, 'InternalQmlObject');
notification = Qt.createQmlObject('import org.nemomobile.notifications 1.0; Notification { category: "x-harbour.tooterb.activity"; appName: "Tooter β"; itemCount: 1; remoteActions: [ { "name": "default", "displayName": "Do something", "icon": "icon-s-certificates", "service": "ba.dysko.harbour.tooterb", "path": "/", "iface": "ba.dysko.harbour.tooterb", "method": "openapp", "arguments": [ "'+item.service+'", "'+item.key+'" ] }]; urgency: Notification.Low; }', Qt.application, 'InternalQmlObject');
}
console.log(JSON.stringify(notification.remoteActions[0].arguments))
//Notifications.notify("Tooter", "serverinfo.serverTitle", " new activity", false, "2015-10-15 00:00:00", "aaa")
//Notifications.notify("Tooter β", "serverinfo.serverTitle", " new activity", false, "2015-10-15 00:00:00", "aaa")
notification.timestamp = item.timestamp
notification.summary = item.summary

View file

@ -1,13 +1,13 @@
import QtQuick 2.0
import Sailfish.Silica 1.0
import harbour.tooter.Uploader 1.0
import harbour.tooterb.Uploader 1.0
import "../lib/API.js" as Logic
import "./components/"
Page {
id: conversationPage
property string type
property alias title: header.title
property alias title: header.title
property alias description: header.description
property alias avatar: header.image
property string suggestedUser: ""
@ -61,10 +61,10 @@ Page {
}
SilicaListView {
id: conversationList
header: PageHeader {
title: qsTr("Conversation")
header: PageHeader {
title: qsTr("Conversation")
}
clip: true
clip: true
anchors {
top: parent.top
bottom: panel.top
@ -157,7 +157,6 @@ Page {
Rectangle {
id: progressBar
width: toot.text.length ? panel.width * (toot.text.length / tootMaxChar) : 0
height: Theme.itemSizeSmall * 0.05
color: Theme.highlightBackgroundColor
opacity: 0.7
@ -211,6 +210,7 @@ Page {
//height: implicitHeight
horizontalAlignment: Text.AlignLeft
placeholderText: qsTr("What's on your mind?")
font.pixelSize: Theme.fontSizeSmall
EnterKey.onClicked: {
//tweet()
}
@ -606,7 +606,7 @@ Page {
Label {
anchors.centerIn: parent
color: (highlighted ? Theme.secondaryHighlightColor : Theme.secondaryColor)
font.pixelSize: Theme.fontSizeLarge
font.pixelSize: Theme.fontSizeLarge
text: glyph
}
onClicked: {

View file

@ -9,6 +9,7 @@ Page {
property string display_name : "";
property string username : "";
property string profileImage : "";
property string discoverable : "";
property int user_id;
property int statuses_count;
property int following_count;
@ -19,7 +20,6 @@ Page {
property string profile_background: "";
property string note: "";
property string url: "";
property bool locked : false;
property date created_at;
property bool following : false;
@ -134,14 +134,12 @@ Page {
}
}
MyList {
id: list
header: ProfileHeader {
id: header
title: display_name
description: '@'+username
description: username
image: profileImage
}
@ -251,7 +249,6 @@ Page {
Text {
x: Theme.horizontalPageMargin
width: parent.width - ( 2 * Theme.horizontalPageMargin )
id: txtnote
text: note
font.pixelSize: Theme.fontSizeExtraSmall
color: Theme.secondaryColor
@ -274,23 +271,19 @@ 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')
} else {
Qt.openUrlExternally(link);
}
}
}
Column {
spacing: Theme.paddingMedium
anchors.horizontalCenter: parent.horizontalCenter
Button {
id: btnUrl
text: qsTr("Open Profile in Browser")
onClicked: {
Qt.openUrlExternally(url);

View file

@ -1,6 +1,5 @@
import QtQuick 2.0
import Sailfish.Silica 1.0
import "../lib/API.js" as Logic
Page {

View file

@ -12,7 +12,11 @@ Item {
left: parent.left
leftMargin: Theme.paddingMedium
}
text: account_display_name
text:
if (account_display_name === "") {
account_username.split('@')[0]
}
else account_display_name
width: contentWidth > parent.width /2 ? parent.width /2 : contentWidth
truncationMode: TruncationMode.Fade
font.weight: Font.Bold

View file

@ -122,7 +122,6 @@ SilicaListView {
}
}
onContentYChanged: {
if (Math.abs(contentY - scrollOffset) > Theme.itemSizeMedium) {
openDrawer(contentY - scrollOffset > 0 ? false : true )
scrollOffset = contentY

View file

@ -7,7 +7,7 @@ Item {
property string title: "";
property string description: "";
property string image: "";
property string bg: "";
//property string bg: "";
width: parent.width
height: icon.height + Theme.paddingLarge*2
/*Image {
@ -54,9 +54,14 @@ Item {
}
Label {
id: ttl
text: title
//text: title
text:
if (title === "") {
description.split('@')[0]
}
else title
height: contentHeight
color: Theme.primaryColor
color: Theme.highlightColor
font.pixelSize: Theme.fontSizeLarge
font.family: Theme.fontFamilyHeading
horizontalAlignment: Text.AlignRight
@ -65,8 +70,8 @@ Item {
}
Label {
height: description === "" ? 0 : contentHeight
text: description
color: Theme.secondaryColor
text: "@"+description
color: Theme.secondaryHighlightColor
font.pixelSize: Theme.fontSizeSmall
font.family: Theme.fontFamilyHeading
horizontalAlignment: Text.AlignRight

View file

@ -133,11 +133,11 @@ BackgroundItem {
return check;
}));
send(link)
// temporary solution for access to user profiles via toots
} 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')
} else {
Qt.openUrlExternally(link);
}
@ -146,7 +146,7 @@ BackgroundItem {
linkColor : Theme.highlightColor
wrapMode: Text.WordWrap
textFormat: Text.StyledText
font.pixelSize: Theme.fontSizeSmall
font.pixelSize: Theme.fontSizeExtraSmall
color: (pressed ? Theme.highlightColor : (!highlight ? Theme.primaryColor : Theme.secondaryColor))
Rectangle {
anchors.fill: parent

View file

@ -3,7 +3,7 @@
# Generated by: spectacle version 0.27
#
Name: harbour-tooter-beta
Name: harbour-tooterb
# >> macros
# << macros
@ -12,14 +12,14 @@ Name: harbour-tooter-beta
%{!?qtc_qmake5:%define qtc_qmake5 %qmake5}
%{!?qtc_make:%define qtc_make make}
%{?qtc_builddir:%define _builddir %qtc_builddir}
Summary: Tooter
Summary: Tooter β
Version: 1.0.4
Release: 2
Group: Qt/Qt
License: LICENSE
URL: http://example.org/
Source0: %{name}-%{version}.tar.bz2
Source100: harbour-tooter-beta.yaml
Source100: harbour-tooterb.yaml
Requires: sailfishsilica-qt5 >= 0.10.9
BuildRequires: pkgconfig(sailfishapp) >= 1.0.2
BuildRequires: pkgconfig(Qt5Core)

View file

@ -1,5 +1,5 @@
Name: harbour-tooter-beta
Summary: Tooter
Name: harbour-tooterb
Summary: Tooter β
Version: 1.0.4
Release: 2
# The contents of the Group field should be one of the groups listed here:

View file

@ -7,7 +7,7 @@ Dbus::Dbus(QObject *parent) :
QObject(parent)
{
m_dbusRegistered = false;
new TooterAdaptor(this);
new TooterbAdaptor(this);
registerDBus();
}

View file

@ -18,30 +18,30 @@
#include <QtCore/QVariant>
/*
* Implementation of adaptor class TooterAdaptor
* Implementation of adaptor class TooterbAdaptor
*/
TooterAdaptor::TooterAdaptor(QObject *parent)
TooterbAdaptor::TooterbAdaptor(QObject *parent)
: QDBusAbstractAdaptor(parent)
{
// constructor
setAutoRelaySignals(true);
}
TooterAdaptor::~TooterAdaptor()
TooterbAdaptor::~TooterbAdaptor()
{
// destructor
}
void TooterAdaptor::openapp()
void TooterbAdaptor::openapp()
{
// handle method call ba.dysko.harbour.tooter.openapp
// handle method call ba.dysko.harbour.tooterb.openapp
QMetaObject::invokeMethod(parent(), "openapp");
}
void TooterAdaptor::showtoot(const QStringList &key)
void TooterbAdaptor::showtoot(const QStringList &key)
{
// handle method call ba.dysko.harbour.tooter.showtoot
// handle method call ba.dysko.harbour.tooterb.showtoot
QMetaObject::invokeMethod(parent(), "showtoot", Q_ARG(QStringList, key));
}

View file

@ -27,12 +27,12 @@ QT_END_NAMESPACE
/*
* Adaptor class for interface com.kimmoli.harbour.maira
*/
class TooterAdaptor: public QDBusAbstractAdaptor
class TooterbAdaptor: public QDBusAbstractAdaptor
{
Q_OBJECT
Q_CLASSINFO("D-Bus Interface", "ba.dysko.harbour.tooter")
Q_CLASSINFO("D-Bus Interface", "ba.dysko.harbour.tooterb")
Q_CLASSINFO("D-Bus Introspection", ""
" <interface name=\"ba.dysko.harbour.tooter\">\n"
" <interface name=\"ba.dysko.harbour.tooterb\">\n"
" <method name=\"showtoot\">\n"
" <annotation value=\"true\" name=\"org.freedesktop.DBus.Method.NoReply\"/>\n"
" <arg direction=\"in\" type=\"as\" name=\"key\"/>\n"
@ -41,8 +41,8 @@ class TooterAdaptor: public QDBusAbstractAdaptor
" </interface>\n"
"")
public:
TooterAdaptor(QObject *parent);
virtual ~TooterAdaptor();
TooterbAdaptor(QObject *parent);
virtual ~TooterbAdaptor();
public: // PROPERTIES
public Q_SLOTS: // METHODS

View file

@ -27,7 +27,7 @@ int main(int argc, char *argv[])
FileDownloader *fd = new FileDownloader(engine);
view->rootContext()->setContextProperty("FileDownloader", fd);
qmlRegisterType<ImageUploader>("harbour.tooter.Uploader", 1, 0, "ImageUploader");
qmlRegisterType<ImageUploader>("harbour.tooterb.Uploader", 1, 0, "ImageUploader");
Notifications *no = new Notifications();
view->rootContext()->setContextProperty("Notifications", no);
@ -36,7 +36,7 @@ int main(int argc, char *argv[])
Dbus *dbus = new Dbus();
view->rootContext()->setContextProperty("Dbus", dbus);
view->setSource(SailfishApp::pathTo("qml/harbour-tooter-beta.qml"));
view->setSource(SailfishApp::pathTo("qml/harbour-tooterb.qml"));
view->show();
return app->exec();
}

View file

@ -24,14 +24,14 @@ void Notifications::notify(QString appName, QString summary, QString body, bool
{
notif.setPreviewSummary(summary);
notif.setPreviewBody(body);
notif.setCategory("x-harbour.tooter.activity");
notif.setCategory("x-harbour.tooterb.activity");
if (issuekey.isEmpty())
{
remoteactions << Notification::remoteAction("default",
QString(),
"ba.dysko.habour.tooter",
"ba.dysko.habour.tooterb",
"/",
"ba.dysko.habour.tooter",
"ba.dysko.habour.tooterb",
"openapp",
QVariantList());
}
@ -42,12 +42,12 @@ void Notifications::notify(QString appName, QString summary, QString body, bool
notif.setSummary(summary);
notif.setBody(body);
notif.setItemCount(1);
notif.setCategory("x-harbour.tooter.activity");
notif.setCategory("x-harbour.tooterb.activity");
remoteactions << Notification::remoteAction("app",
QString(),
"ba.dysko.habour.tooter",
"ba.dysko.habour.tooterb",
"/",
"ba.dysko.habour.tooter",
"ba.dysko.habour.tooterb",
"openapp",
QVariantList());
}
@ -64,9 +64,9 @@ void Notifications::notify(QString appName, QString summary, QString body, bool
remoteactions << Notification::remoteAction("default",
QString(),
"ba.dysko.habour.tooter",
"ba.dysko.habour.tooterb",
"/",
"ba.dysko.habour.tooter",
"ba.dysko.habour.tooterb",
"showtoot",
args);
}

View file

@ -1,336 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1">
<context>
<name>API</name>
<message>
<source>favourited</source>
<translation>favourited</translation>
</message>
<message>
<source>followed you</source>
<translation>followed you</translation>
</message>
<message>
<source>boosted</source>
<translation>boosted</translation>
</message>
<message>
<source>said</source>
<translation>said</translation>
</message>
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Conversation</translation>
</message>
<message>
<source>Delete</source>
<translation>Delete</translation>
</message>
<message>
<source>Emojis</source>
<translation>Emojis</translation>
</message>
<message>
<source>Tap to insert</source>
<translation>Tap to insert</translation>
</message>
<message>
<source>Write your warning here</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Public</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Unlisted</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Followers-only</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Direct</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>What&apos;s on your mind?</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>ImageFullScreen</name>
<message>
<source>Error loading</source>
<translation></translation>
</message>
</context>
<context>
<name>ImageUploader</name>
<message>
<source>The file %1 does not exists</source>
<translation></translation>
</message>
</context>
<context>
<name>LoginPage</name>
<message>
<source>Login</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Instance</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Enter a valid Mastodon instance URL</source>
<translation type="unfinished"></translation>
</message>
<message>
<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 type="unfinished"></translation>
</message>
<message>
<source>Reload</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainPage</name>
<message>
<source>Home</source>
<translation></translation>
</message>
<message>
<source>Notifications</source>
<translation></translation>
</message>
<message>
<source>New Toot</source>
<translation></translation>
</message>
<message>
<source>Search</source>
<translation></translation>
</message>
<message>
<source>@user or #term</source>
<translation></translation>
</message>
<message>
<source>Local</source>
<translation></translation>
</message>
<message>
<source>Federated</source>
<translation></translation>
</message>
</context>
<context>
<name>MiniStatus</name>
<message>
<source>boosted</source>
<translation>boosted</translation>
</message>
<message>
<source>favourited</source>
<translation>favourited</translation>
</message>
<message>
<source>followed you</source>
<translation>followed you</translation>
</message>
</context>
<context>
<name>MyList</name>
<message>
<source>Load more</source>
<translation>Load more</translation>
</message>
<message>
<source>Settings</source>
<translation>Settings</translation>
</message>
<message>
<source>Loading</source>
<translation></translation>
</message>
<message>
<source>please wait...</source>
<translation></translation>
</message>
</context>
<context>
<name>Profile</name>
<message>
<source>Unfollow</source>
<translation>Unfollow</translation>
</message>
<message>
<source>Follow request sent!</source>
<translation>Follow request sent!</translation>
</message>
<message>
<source>Following</source>
<translation>Following</translation>
</message>
<message>
<source>Mute</source>
<translation>Mute</translation>
</message>
<message>
<source>Unmute</source>
<translation>Unmute</translation>
</message>
<message>
<source>Unblock</source>
<translation>Unblock</translation>
</message>
<message>
<source>Block</source>
<translation>Block</translation>
</message>
<message>
<source>Statuses</source>
<translation>Statuses</translation>
</message>
<message>
<source>Favourites</source>
<translation>Favourites</translation>
</message>
<message>
<source>Follow</source>
<translation>Follow</translation>
</message>
<message>
<source>Summary</source>
<translation>Summary</translation>
</message>
<message>
<source>Followers</source>
<translation>Followers</translation>
</message>
<message>
<source>Bio</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Open Profile in Browser</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Settings</name>
<message>
<source>Settings</source>
<translation type="unfinished">Settings</translation>
</message>
<message>
<source>Remove Account</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Add Account</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 access your Mastodon account</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>Credits</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>UI/UX design and development</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Visual identity</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Occitan &amp; French translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Dutch translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Spanish translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Added README file</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Chinese translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Load images in toots</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Translate</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Use Transifex to help with app translation to your language</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Development and translations</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Toot</name>
<message>
<source>boosted</source>
<translation>boosted</translation>
</message>
<message>
<source>favourited</source>
<translation>favourited</translation>
</message>
<message>
<source>followed you</source>
<translation>followed you</translation>
</message>
</context>
<context>
<name>VisualContainer</name>
<message>
<source>Unboost</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Boost</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Unfavorite</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Favorite</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

View file

@ -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>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Συνομιλία</translation>
</message>
<message>
<source>Delete</source>
<translation>Διαγραφή</translation>

View file

@ -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>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Conversation</translation>
</message>
<message>
<source>Delete</source>
<translation>Supprimer</translation>

View file

@ -28,17 +28,12 @@
<context>
<name>Conversation</name>
<message>
<location filename="../qml/pages/Conversation.qml" line="65"/>
<source>Conversation</source>
<translation>Conversazione</translation>
</message>
<message>
<location filename="../qml/pages/Conversation.qml" line="182"/>
<location filename="../qml/pages/Conversation.qml" line="181"/>
<source>Write your warning here</source>
<translation>Contenuto avviso</translation>
</message>
<message>
<location filename="../qml/pages/Conversation.qml" line="213"/>
<location filename="../qml/pages/Conversation.qml" line="212"/>
<source>What&apos;s on your mind?</source>
<translation>A cosa stai pensando?</translation>
</message>
@ -155,7 +150,7 @@
<translation>@utente o #termine</translation>
</message>
<message>
<location filename="../qml/pages/MainPage.qml" line="249"/>
<location filename="../qml/pages/MainPage.qml" line="250"/>
<source>New Toot</source>
<translation>Nuovo toot</translation>
</message>
@ -204,72 +199,72 @@
<context>
<name>Profile</name>
<message>
<location filename="../qml/pages/Profile.qml" line="172"/>
<location filename="../qml/pages/Profile.qml" line="170"/>
<source>Summary</source>
<translation>Sintesi</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="178"/>
<location filename="../qml/pages/Profile.qml" line="176"/>
<source>Followers</source>
<translation>Seguaci</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="183"/>
<location filename="../qml/pages/Profile.qml" line="181"/>
<source>Following</source>
<translation>Segue</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="188"/>
<location filename="../qml/pages/Profile.qml" line="186"/>
<source>Statuses</source>
<translation>Toots</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="193"/>
<location filename="../qml/pages/Profile.qml" line="191"/>
<source>Favourites</source>
<translation>Apprezzati</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="202"/>
<location filename="../qml/pages/Profile.qml" line="200"/>
<source>Unfollow</source>
<translation>Smetti di seguire</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="202"/>
<location filename="../qml/pages/Profile.qml" line="200"/>
<source>Follow request sent!</source>
<translation>Richiesta di seguito inviata!</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="202"/>
<location filename="../qml/pages/Profile.qml" line="200"/>
<source>Follow</source>
<translation>Segui</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="215"/>
<location filename="../qml/pages/Profile.qml" line="213"/>
<source>Unmute</source>
<translation>Non silenziare</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="215"/>
<location filename="../qml/pages/Profile.qml" line="213"/>
<source>Mute</source>
<translation>Silenzia</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="228"/>
<location filename="../qml/pages/Profile.qml" line="226"/>
<source>Unblock</source>
<translation>Sblocca</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="228"/>
<location filename="../qml/pages/Profile.qml" line="226"/>
<source>Block</source>
<translation>Blocca</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="247"/>
<location filename="../qml/pages/Profile.qml" line="245"/>
<source>Bio</source>
<translation>Biografia</translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="294"/>
<location filename="../qml/pages/Profile.qml" line="287"/>
<source>Open Profile in Browser</source>
<translation>Aprire profile nel browser</translation>
</message>
@ -277,92 +272,92 @@
<context>
<name>Settings</name>
<message>
<location filename="../qml/pages/Settings.qml" line="20"/>
<location filename="../qml/pages/Settings.qml" line="19"/>
<source>Settings</source>
<translation>Impostazione</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="27"/>
<location filename="../qml/pages/Settings.qml" line="26"/>
<source>Remove Account</source>
<translation>Rimozione del account</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="27"/>
<location filename="../qml/pages/Settings.qml" line="26"/>
<source>Add Account</source>
<translation>Aggiungi account</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="28"/>
<location filename="../qml/pages/Settings.qml" line="27"/>
<source>Deauthorize this app and remove your account</source>
<translation>Annullare l&apos;autorizzazione dell&apos;app e rimuovere l&apos;account</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="28"/>
<location filename="../qml/pages/Settings.qml" line="27"/>
<source>Authorize this app to access your Mastodon account</source>
<translation>Autorizzare l&apos;app all&apos;utilizzo del conto Mastodon</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="60"/>
<location filename="../qml/pages/Settings.qml" line="59"/>
<source>Load images in toots</source>
<translation>Caricare immagini nei toots</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="61"/>
<location filename="../qml/pages/Settings.qml" line="60"/>
<source>Disable this option if you want to preserve your data connection</source>
<translation>Disabilitare questa opzione per conservare connessione dati</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="68"/>
<location filename="../qml/pages/Settings.qml" line="67"/>
<source>Translate</source>
<translation>Tradurre</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="69"/>
<location filename="../qml/pages/Settings.qml" line="68"/>
<source>Use Transifex to help with app translation to your language</source>
<translation>Utilizzare Transifex per aiutare nella traduzione dell&apos;app</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="85"/>
<location filename="../qml/pages/Settings.qml" line="84"/>
<source>Credits</source>
<translation>Sviluppo</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="99"/>
<location filename="../qml/pages/Settings.qml" line="98"/>
<source>UI/UX design and development</source>
<translation>Design UI/UX e sviluppo</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="105"/>
<location filename="../qml/pages/Settings.qml" line="104"/>
<source>Visual identity</source>
<translation>Identità visiva</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="111"/>
<location filename="../qml/pages/Settings.qml" line="110"/>
<source>Development and translations</source>
<translation>Sviluppo e traduzioni</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="117"/>
<location filename="../qml/pages/Settings.qml" line="116"/>
<source>Occitan &amp; French translation</source>
<translation>Traduzione francese e occitanica</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="123"/>
<location filename="../qml/pages/Settings.qml" line="122"/>
<source>Chinese translation</source>
<translation>Traduzione cinese</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="129"/>
<location filename="../qml/pages/Settings.qml" line="128"/>
<source>Dutch translation</source>
<translation>Traduzione olandese</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="135"/>
<location filename="../qml/pages/Settings.qml" line="134"/>
<source>Spanish translation</source>
<translation>Traduzione spagnola</translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="141"/>
<location filename="../qml/pages/Settings.qml" line="140"/>
<source>Added README file</source>
<translation>Aggiunto file README</translation>
</message>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Gesprek</translation>
</message>
<message>
<source>Delete</source>
<translation>Verwijderen</translation>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Gesprek</translation>
</message>
<message>
<source>Delete</source>
<translation>Verwijderen</translation>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Discutida</translation>
</message>
<message>
<source>Delete</source>
<translation>Escafar</translation>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Konwersacja</translation>
</message>
<message>
<source>Delete</source>
<translation>Usuń</translation>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Беседа</translation>
</message>
<message>
<source>Delete</source>
<translation>Удалить</translation>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Разговор</translation>
</message>
<message>
<source>Delete</source>
<translation>Обриши</translation>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation>Konversation</translation>
</message>
<message>
<source>Delete</source>
<translation>Radera</translation>

View file

@ -22,10 +22,6 @@
</context>
<context>
<name>Conversation</name>
<message>
<source>Conversation</source>
<translation></translation>
</message>
<message>
<source>Delete</source>
<translation></translation>

View file

@ -28,17 +28,12 @@
<context>
<name>Conversation</name>
<message>
<location filename="../qml/pages/Conversation.qml" line="65"/>
<source>Conversation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Conversation.qml" line="182"/>
<location filename="../qml/pages/Conversation.qml" line="181"/>
<source>Write your warning here</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Conversation.qml" line="213"/>
<location filename="../qml/pages/Conversation.qml" line="212"/>
<source>What&apos;s on your mind?</source>
<translation type="unfinished"></translation>
</message>
@ -155,7 +150,7 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/MainPage.qml" line="249"/>
<location filename="../qml/pages/MainPage.qml" line="250"/>
<source>New Toot</source>
<translation type="unfinished"></translation>
</message>
@ -204,72 +199,72 @@
<context>
<name>Profile</name>
<message>
<location filename="../qml/pages/Profile.qml" line="172"/>
<location filename="../qml/pages/Profile.qml" line="170"/>
<source>Summary</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="178"/>
<location filename="../qml/pages/Profile.qml" line="176"/>
<source>Followers</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="183"/>
<location filename="../qml/pages/Profile.qml" line="181"/>
<source>Following</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="188"/>
<location filename="../qml/pages/Profile.qml" line="186"/>
<source>Statuses</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="193"/>
<location filename="../qml/pages/Profile.qml" line="191"/>
<source>Favourites</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="202"/>
<location filename="../qml/pages/Profile.qml" line="200"/>
<source>Unfollow</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="202"/>
<location filename="../qml/pages/Profile.qml" line="200"/>
<source>Follow request sent!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="202"/>
<location filename="../qml/pages/Profile.qml" line="200"/>
<source>Follow</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="215"/>
<location filename="../qml/pages/Profile.qml" line="213"/>
<source>Unmute</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="215"/>
<location filename="../qml/pages/Profile.qml" line="213"/>
<source>Mute</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="228"/>
<location filename="../qml/pages/Profile.qml" line="226"/>
<source>Unblock</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="228"/>
<location filename="../qml/pages/Profile.qml" line="226"/>
<source>Block</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="247"/>
<location filename="../qml/pages/Profile.qml" line="245"/>
<source>Bio</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Profile.qml" line="294"/>
<location filename="../qml/pages/Profile.qml" line="287"/>
<source>Open Profile in Browser</source>
<translation type="unfinished"></translation>
</message>
@ -277,92 +272,92 @@
<context>
<name>Settings</name>
<message>
<location filename="../qml/pages/Settings.qml" line="20"/>
<location filename="../qml/pages/Settings.qml" line="19"/>
<source>Settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="27"/>
<location filename="../qml/pages/Settings.qml" line="26"/>
<source>Remove Account</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="27"/>
<location filename="../qml/pages/Settings.qml" line="26"/>
<source>Add Account</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="28"/>
<location filename="../qml/pages/Settings.qml" line="27"/>
<source>Deauthorize this app and remove your account</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="28"/>
<location filename="../qml/pages/Settings.qml" line="27"/>
<source>Authorize this app to access your Mastodon account</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="60"/>
<location filename="../qml/pages/Settings.qml" line="59"/>
<source>Load images in toots</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="61"/>
<location filename="../qml/pages/Settings.qml" line="60"/>
<source>Disable this option if you want to preserve your data connection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="68"/>
<location filename="../qml/pages/Settings.qml" line="67"/>
<source>Translate</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="69"/>
<location filename="../qml/pages/Settings.qml" line="68"/>
<source>Use Transifex to help with app translation to your language</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="85"/>
<location filename="../qml/pages/Settings.qml" line="84"/>
<source>Credits</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="99"/>
<location filename="../qml/pages/Settings.qml" line="98"/>
<source>UI/UX design and development</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="105"/>
<location filename="../qml/pages/Settings.qml" line="104"/>
<source>Visual identity</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="111"/>
<location filename="../qml/pages/Settings.qml" line="110"/>
<source>Development and translations</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="117"/>
<location filename="../qml/pages/Settings.qml" line="116"/>
<source>Occitan &amp; French translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="123"/>
<location filename="../qml/pages/Settings.qml" line="122"/>
<source>Chinese translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="129"/>
<location filename="../qml/pages/Settings.qml" line="128"/>
<source>Dutch translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="135"/>
<location filename="../qml/pages/Settings.qml" line="134"/>
<source>Spanish translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/pages/Settings.qml" line="141"/>
<location filename="../qml/pages/Settings.qml" line="140"/>
<source>Added README file</source>
<translation type="unfinished"></translation>
</message>