commit
3247768af1
35 changed files with 479 additions and 329 deletions
12
README.md
12
README.md
|
@ -3,20 +3,20 @@
|
|||
## About
|
||||
Tooter is Mastodon client for Sailfish OS. It is a free, open-source social network. A decentralized alternative to commercial platforms, it avoids the risks of a single company monopolizing your communication.
|
||||
|
||||
This fork is being used to further develop and maintain the Tooter app by dysko (https://github.com/dysk0/harbour-tooter). The development branch 'upstream' is being for merge requests with the original repository. Releases by dysko can be found on the Jolla store and on https://openrepos.net/content/dysko/tooter
|
||||
This fork is being used to further develop and maintain the Tooter app by dysko (https://github.com/dysk0/harbour-tooter). The development branch 'upstream' is being used for merge pull requests to the original repository. Releases by dysko can be found on the Jolla store and on https://openrepos.net/content/dysko/tooter
|
||||
|
||||
Releases from this forked repository (branch 'master') can be found here: https://openrepos.net/content/molan/tooter-fork.
|
||||
Releases from this forked repository (branch 'master') can be found here: https://openrepos.net/content/molan/tooter-v-fork.
|
||||
|
||||
## Build
|
||||
Clone / download this repository and import it in your SailfishOS IDE using the harbour-tooter.pro project file. No additional configuration needed.
|
||||
|
||||
## Repository branches:
|
||||
- master: default (Beta release version)
|
||||
- develop: commits WIP
|
||||
- upstream: commits for Tooter release
|
||||
- master: default (Beta release version, harbour-tooterb)
|
||||
- upstream: commits for Tooter release (harbour-tooter)
|
||||
|
||||
## Contributions
|
||||
Contributions to this project are very welcome, since I don't have the resources and time to implement and fix everything Tooter still misses or lacks. Thank you!
|
||||
Contributions to this project are very welcome, since there are still many things which can be done for Tooter.
|
||||
- please fork the upstream branch if you want to contribute to this project.
|
||||
|
||||
## Screenshots
|
||||
<img width="200" title="Page Home" src="https://telegra.ph/file/710bba46d9f818e0f88ab.png"> <img width="200" title="Page Profile" src="https://telegra.ph/file/c5b504f637c874861eeee.png"> <img width="200" title="Page Conversation" src="https://telegra.ph/file/c9584f8d68c89827c53e5.png">
|
||||
|
|
|
@ -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.tooterb.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,11 +76,13 @@ DISTFILES += qml/harbour-tooterb.qml \
|
|||
qml/images/notification.svg \
|
||||
qml/images/verified.svg \
|
||||
qml/images/boosted.svg \
|
||||
qml/images/tooterb.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 \
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorProject>
|
||||
<!-- Written by QtCreator 4.9.1, 2020-05-06T15:39:14. -->
|
||||
<!-- Written by QtCreator 4.9.1, 2020-05-11T10:29:25. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>EnvironmentId</variable>
|
||||
|
@ -54,19 +54,24 @@
|
|||
</data>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.PluginSettings</variable>
|
||||
<valuemap type="QVariantMap"/>
|
||||
<valuemap type="QVariantMap">
|
||||
<valuelist type="QVariantList" key="ClangCodeModel.CustomCommandLineKey">
|
||||
<value type="QString">-fno-delayed-template-parsing</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="ClangCodeModel.UseGlobalConfig">true</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.Target.0</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">SailfishOS-3.2.1.20-i486 (in Sailfish OS Build Engine)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">SailfishOS-3.2.1.20-i486 (in Sailfish OS Build Engine)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">SailfishOS-3.2.1.20-i486</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">SailfishOS-3.3.0.16-armv7hl (in Sailfish OS Build Engine)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">SailfishOS-3.3.0.16-armv7hl (in Sailfish OS Build Engine)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">SailfishOS-3.3.0.16-armv7hl</value>
|
||||
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">1</value>
|
||||
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">1</value>
|
||||
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/build-harbour-tooterb-SailfishOS_3_2_1_20_i486_in_Sailfish_OS_Build_Engine-Debug</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/Github-App/build-harbour-tooterb-SailfishOS_3_3_0_16_armv7hl_in_Sailfish_OS_Build_Engine-Debug</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -134,7 +139,7 @@
|
|||
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/build-harbour-tooterb-SailfishOS_3_2_1_20_i486_in_Sailfish_OS_Build_Engine-Release</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/Github-App/build-harbour-tooterb-SailfishOS_3_3_0_16_armv7hl_in_Sailfish_OS_Build_Engine-Release</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -202,7 +207,7 @@
|
|||
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/build-harbour-tooterb-SailfishOS_3_2_1_20_i486_in_Sailfish_OS_Build_Engine-Profile</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/Github-App/build-harbour-tooterb-SailfishOS_3_3_0_16_armv7hl_in_Sailfish_OS_Build_Engine-Profile</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -271,6 +276,30 @@
|
|||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">3</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Prepare Target</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerPrepareTargetStep</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">RPM</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRpmDeployStep</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy As RPM Package</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRpmDeployConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -294,7 +323,7 @@
|
|||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerMb2RpmBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.2">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -318,30 +347,6 @@
|
|||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRSyncDeployConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.2">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Prepare Target</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerPrepareTargetStep</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">RPM</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRpmDeployStep</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy As RPM Package</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRpmDeployConfiguration</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">3</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
|
||||
|
@ -394,7 +399,7 @@
|
|||
<value type="int">13</value>
|
||||
<value type="int">14</value>
|
||||
</valuelist>
|
||||
<value type="QString" key="MerRunConfiguration.QmlLiveBenchWorkspace">C:/Users/XPAM/Github/harbour-tooter-master</value>
|
||||
<value type="QString" key="MerRunConfiguration.QmlLiveBenchWorkspace">C:/Users/XPAM/Github/Github-App/harbour-tooter</value>
|
||||
<value type="bool" key="MerRunConfiguration.QmlLiveEnabled">false</value>
|
||||
<value type="int" key="MerRunConfiguration.QmlLiveIpcPort">-1</value>
|
||||
<value type="int" key="MerRunConfiguration.QmlLiveOptions">3</value>
|
||||
|
@ -402,8 +407,8 @@
|
|||
<value type="int" key="PE.EnvironmentAspect.Base">1</value>
|
||||
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">harbour-tooterb (on Sailfish OS Emulator 3.2.1.20)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRunConfiguration:C:/Users/XPAM/Github/harbour-tooter-master/harbour-tooterb.pro</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">harbour-tooterb (on Sailfish OS Emulator 3.3.0.16)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRunConfiguration:C:/Users/XPAM/Github/Github-App/harbour-tooter/harbour-tooterb.pro</value>
|
||||
<value type="int" key="RemoteLinux.EnvironmentAspect.Version">1</value>
|
||||
<value type="QString" key="RemoteLinux.RunConfig.AlternateRemoteExecutable"></value>
|
||||
<value type="bool" key="RemoteLinux.RunConfig.UseAlternateRemoteExecutable">false</value>
|
||||
|
@ -423,14 +428,14 @@
|
|||
<data>
|
||||
<variable>ProjectExplorer.Project.Target.1</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">SailfishOS-3.2.1.20-armv7hl (in Sailfish OS Build Engine)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">SailfishOS-3.2.1.20-armv7hl (in Sailfish OS Build Engine)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">SailfishOS-3.2.1.20-armv7hl</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">SailfishOS-3.3.0.16-i486 (in Sailfish OS Build Engine)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">SailfishOS-3.3.0.16-i486 (in Sailfish OS Build Engine)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">SailfishOS-3.3.0.16-i486</value>
|
||||
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">1</value>
|
||||
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
|
||||
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">2</value>
|
||||
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/build-harbour-tooterb-SailfishOS_3_2_1_20_armv7hl_in_Sailfish_OS_Build_Engine-Debug</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/Github-App/build-harbour-tooterb-SailfishOS_3_3_0_16_i486_in_Sailfish_OS_Build_Engine-Debug</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -498,7 +503,7 @@
|
|||
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/build-harbour-tooterb-SailfishOS_3_2_1_20_armv7hl_in_Sailfish_OS_Build_Engine-Release</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/Github-App/build-harbour-tooterb-SailfishOS_3_3_0_16_i486_in_Sailfish_OS_Build_Engine-Release</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -566,7 +571,7 @@
|
|||
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/build-harbour-tooterb-SailfishOS_3_2_1_20_armv7hl_in_Sailfish_OS_Build_Engine-Profile</value>
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/XPAM/Github/Github-App/build-harbour-tooterb-SailfishOS_3_3_0_16_i486_in_Sailfish_OS_Build_Engine-Profile</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -635,6 +640,30 @@
|
|||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">3</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Prepare Target</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerPrepareTargetStep</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">RPM</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRpmDeployStep</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy As RPM Package</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRpmDeployConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -658,7 +687,7 @@
|
|||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerMb2RpmBuildConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.1">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.2">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
|
@ -682,30 +711,6 @@
|
|||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRSyncDeployConfiguration</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.2">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Prepare Target</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerPrepareTargetStep</value>
|
||||
</valuemap>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
|
||||
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">RPM</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRpmDeployStep</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy As RPM Package</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRpmDeployConfiguration</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">3</value>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
|
||||
|
@ -758,7 +763,7 @@
|
|||
<value type="int">13</value>
|
||||
<value type="int">14</value>
|
||||
</valuelist>
|
||||
<value type="QString" key="MerRunConfiguration.QmlLiveBenchWorkspace">C:/Users/XPAM/Github/harbour-tooter-master</value>
|
||||
<value type="QString" key="MerRunConfiguration.QmlLiveBenchWorkspace">C:/Users/XPAM/Github/Github-App/harbour-tooter</value>
|
||||
<value type="bool" key="MerRunConfiguration.QmlLiveEnabled">false</value>
|
||||
<value type="int" key="MerRunConfiguration.QmlLiveIpcPort">-1</value>
|
||||
<value type="int" key="MerRunConfiguration.QmlLiveOptions">3</value>
|
||||
|
@ -766,8 +771,8 @@
|
|||
<value type="int" key="PE.EnvironmentAspect.Base">1</value>
|
||||
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">harbour-tooterb (on Sailfish OS Emulator 3.2.1.20)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRunConfiguration:C:/Users/XPAM/Github/harbour-tooter-master/harbour-tooterb.pro</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">harbour-tooterb (on Sailfish OS Emulator 3.3.0.16)</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QmakeProjectManager.MerRunConfiguration:C:/Users/XPAM/Github/Github-App/harbour-tooter/harbour-tooterb.pro</value>
|
||||
<value type="int" key="RemoteLinux.EnvironmentAspect.Version">1</value>
|
||||
<value type="QString" key="RemoteLinux.RunConfig.AlternateRemoteExecutable"></value>
|
||||
<value type="bool" key="RemoteLinux.RunConfig.UseAlternateRemoteExecutable">false</value>
|
||||
|
|
|
@ -1,33 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 18.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 227.9 240.1" enable-background="new 0 0 227.9 240.1" xml:space="preserve">
|
||||
<g>
|
||||
<path opacity="0.5" fill="#FFFFFF" d="M122.2,119.8c0,0,0,0.3-0.1,0.9c-0.1,0.6-0.2,1.5-0.3,2.7c-0.2,2.4-0.5,5.8-0.6,10
|
||||
c-0.2,8.3,0.1,19.5,2.5,30.2c0.6,2.7,1.4,5.3,2.3,7.8c0.9,2.5,2,4.9,3.2,7.1c0.6,1.1,1.2,2.2,2,3.2c0.7,1,1.4,1.9,2.2,2.8
|
||||
c1.5,1.8,3.2,3.2,4.8,4.5c1.7,1.2,3.4,2.2,5,2.8c1.5,0.8,3.1,1.1,4.3,1.5c2.5,0.5,3.9,0.8,3.9,0.8s-1.4,0.1-4.1,0.3
|
||||
c-1.3-0.1-2.9,0-4.7-0.4c-1.9-0.2-3.9-0.8-6.1-1.6c-2.2-0.9-4.5-2-6.8-3.6c-1.1-0.8-2.3-1.6-3.3-2.6c-1.1-0.9-2.2-1.9-3.2-3
|
||||
c-2.1-2.1-4-4.6-5.8-7.1c-1.7-2.6-3.4-5.3-4.9-8.1c-5.9-11.2-9.4-23.2-11.6-32.3c-1.1-4.6-1.8-8.4-2.2-11.2
|
||||
c-0.2-1.4-0.4-2.5-0.5-3.2c-0.1-0.8-0.2-1.2-0.2-1.2l0-0.4c-0.8-6.7,4-12.9,10.7-13.7c6.7-0.8,12.9,4,13.7,10.7
|
||||
C122.4,117.7,122.4,118.8,122.2,119.8z"/>
|
||||
<g opacity="0.2">
|
||||
<path fill="#FFFFFF" d="M43.7,12.5c3-1.1,6.1-2.1,9.2-3.1c-3.6-2-10.7-4.7-24.8-5.5C28.1,3.9,40.4,7.9,43.7,12.5z"/>
|
||||
<path fill="#FFFFFF" d="M151.5,156.8v-33.4c-3.7,0-7.3,0-9.7,0c6,0,8.5-5.5,9.5-11c-1.5-34.8-21.5-67.6-55.1-83.7
|
||||
c-6.9-3.3-14-5.7-21.2-7.3c12-5,26.5-7.4,26.5-7.4c-17.7-0.7-32.2,1.9-43.2,5.2c-0.6,0-1.2,0-1.8,0C67.8,10.9,87.2,5.4,87.2,5.4
|
||||
c-27.8,0-55.5,12.7-72.8,22c-0.7,0-1.4-0.1-2-0.1c-30.8,0-55.9,25-55.9,55.9c0,5.3,0.8,10.5,2.2,15.3c-0.4,2-0.6,4.1-0.9,6.1
|
||||
l-31.6,31.6V246H54.3h14h19.6h20v-93.7c0,0,4.6,77.8,32.3,77.8c4.3,0,8.4,0,11.5,0v-16.4c-3.7,0-7.3,0-9.7,0c6.3,0,8.7-6,9.7-11.8
|
||||
v-33.4c-3.7,0-7.3,0-9.7,0C148.1,168.5,150.6,162.5,151.5,156.8z"/>
|
||||
</g>
|
||||
<path opacity="0.2" d="M98.6,124.4c-0.2-1.4-0.4-2.5-0.5-3.2c-0.1-0.8-0.2-1.2-0.2-1.2l0-0.4c-0.8-6.7,4-12.9,10.7-13.7
|
||||
c6.7-0.8,12.9,4,13.7,10.7c0.1,1.1,0.1,2.2,0,3.3c0,0,0,0.3-0.1,0.9c-0.1,0.6-0.2,1.5-0.3,2.7c-0.1,1.1-0.2,2.5-0.3,4.1
|
||||
c2.1-2.6,3.4-5.8,3.4-9.4c0-8.2-6.6-14.8-14.8-14.8c-8.2,0-14.8,6.6-14.8,14.8c0,3.8,1.5,7.2,3.8,9.9
|
||||
C99,126.7,98.8,125.4,98.6,124.4z"/>
|
||||
<path opacity="0.2" d="M89.5,76.4c18.5,26.1-10.2,54.9-36.4,36.4c-0.7-0.5-1.4-1.2-1.9-1.9C32.7,84.7,61.5,56,87.6,74.5
|
||||
C88.4,75,89,75.7,89.5,76.4z"/>
|
||||
<circle opacity="0.5" fill="#FFFFFF" cx="74.7" cy="83.5" r="13.8"/>
|
||||
<circle opacity="0.5" cx="78" cy="83.5" r="6.4"/>
|
||||
<path opacity="0.2" d="M12.4,139c-30.8,0-55.9-25-55.9-55.9c0-1.2,0.1-2.3,0.2-3.5C-45,84.7-46,90-46,95.5
|
||||
c0,26.8,21.7,48.6,48.6,48.6c9.4,0,18.2-2.7,25.6-7.4C23.2,138.2,17.9,139,12.4,139z"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.7 KiB |
|
@ -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,15 +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 toot_url: ""
|
||||
property int tootMaxChar: 500;
|
||||
property ListModel mdl
|
||||
allowedOrientations: Orientation.All
|
||||
|
@ -40,6 +43,10 @@ Page {
|
|||
}
|
||||
}
|
||||
|
||||
InfoBanner {
|
||||
id: sentBanner
|
||||
}
|
||||
|
||||
ListModel {
|
||||
id: mediaModel
|
||||
onCountChanged: {
|
||||
|
@ -62,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 {
|
||||
|
@ -90,6 +97,18 @@ Page {
|
|||
}
|
||||
}
|
||||
}
|
||||
PullDownMenu {
|
||||
visible: type == "reply" && toot_url != ""
|
||||
/* MenuItem {
|
||||
text: qsTr("Open in Browser")
|
||||
onClicked: Qt.openUrlExternally(toot_url);
|
||||
} */
|
||||
// ! url isn't always fetched. Needs a solution.
|
||||
MenuItem {
|
||||
text: qsTr("Copy Link to Clipboard")
|
||||
onClicked: Clipboard.text = toot_url;
|
||||
}
|
||||
}
|
||||
}
|
||||
Rectangle {
|
||||
id: predictionList
|
||||
|
@ -104,7 +123,6 @@ Page {
|
|||
anchors.fill: parent
|
||||
model: suggestedModel
|
||||
clip: true
|
||||
|
||||
delegate: ItemUser {
|
||||
onClicked: {
|
||||
var start = toot.cursorPosition
|
||||
|
@ -208,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
|
||||
|
@ -304,7 +321,6 @@ Page {
|
|||
}
|
||||
}
|
||||
IconButton {
|
||||
|
||||
id: btnContentWarning
|
||||
anchors {
|
||||
top: toot.bottom
|
||||
|
@ -426,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"})
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -9,7 +9,6 @@ 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;
|
||||
|
@ -17,7 +16,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 +41,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/",
|
||||
|
@ -134,6 +134,7 @@ Page {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
MyList {
|
||||
id: list
|
||||
header: ProfileHeader {
|
||||
|
@ -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
|
||||
|
@ -249,6 +250,7 @@ Page {
|
|||
Text {
|
||||
x: Theme.horizontalPageMargin
|
||||
width: parent.width - ( 2 * Theme.horizontalPageMargin )
|
||||
id: txtnote
|
||||
text: note
|
||||
font.pixelSize: Theme.fontSizeExtraSmall
|
||||
color: Theme.secondaryColor
|
||||
|
@ -271,14 +273,15 @@ 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);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Column {
|
||||
spacing: Theme.paddingMedium
|
||||
|
|
|
@ -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;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -57,10 +76,10 @@ Page {
|
|||
console.log(playbackState)
|
||||
switch (playbackState){
|
||||
case MediaPlayer.PlayingState:
|
||||
playerIcon.icon.source = "image://theme/icon-m-play"
|
||||
playerIcon.icon.source = "image://theme/icon-m-pause"
|
||||
return;
|
||||
case MediaPlayer.PausedState:
|
||||
playerIcon.icon.source = "image://theme/icon-m-pause"
|
||||
playerIcon.icon.source = "image://theme/icon-m-play"
|
||||
return;
|
||||
case MediaPlayer.StoppedState:
|
||||
playerIcon.icon.source = "image://theme/icon-m-stop"
|
||||
|
@ -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 {}
|
||||
}
|
||||
|
|
|
@ -7,24 +7,25 @@ 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 {
|
||||
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
|
||||
|
@ -69,7 +70,7 @@ Item {
|
|||
}
|
||||
Label {
|
||||
height: description === "" ? 0 : contentHeight
|
||||
text: description
|
||||
text: "@"+description
|
||||
color: Theme.secondaryHighlightColor
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
font.family: Theme.fontFamilyHeading
|
||||
|
|
|
@ -170,7 +170,7 @@ BackgroundItem {
|
|||
|
||||
}
|
||||
text: content
|
||||
textFormat: Text.StyledText
|
||||
textFormat: Text.RichText
|
||||
linkColor : Theme.highlightColor
|
||||
wrapMode: Text.Wrap
|
||||
maximumLineCount: 6
|
||||
|
|
|
@ -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,15 +137,23 @@ 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
|
||||
textFormat: Text.StyledText
|
||||
font.pixelSize: Theme.fontSizeExtraSmall
|
||||
wrapMode: Text.Wrap
|
||||
textFormat: Text.RichText
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
color: (pressed ? Theme.highlightColor : (!highlight ? Theme.primaryColor : Theme.secondaryColor))
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
|
@ -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,15 +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,
|
||||
toot_url: status_url,
|
||||
title: account_display_name,
|
||||
description: '@'+account_acct,
|
||||
avatar: account_avatar,
|
||||
|
|
|
@ -1,5 +1,26 @@
|
|||
*Wed May 06 2020 molan <mol_an@sunrise.ch> 1.0.4-2
|
||||
- Beta release
|
||||
*Mon May 25 2020 molan <mol_an@sunrise.ch> 1.0.4-3
|
||||
- Show user profile background image (if available)
|
||||
- New Sailfish 3-styled image/video viewer page (WIP)
|
||||
- Added "Toot sent!" notification banner
|
||||
- Show Pulley Menu for copying Toot-link only if link is provided (WIP)
|
||||
- Distiction between "New Toot" and "Conversation" page
|
||||
- some small fixes
|
||||
|
||||
*Mon May 11 2020 molan <mol_an@sunrise.ch> 1.0.4-2
|
||||
- Beta release by molan
|
||||
- Login / Settings Page: Small changes in text wording
|
||||
- Login Page: Use of correct label coloring and text alignment
|
||||
- Login Page: Highlight login confirmation button + 'accept' icon on Sailfish keyboard
|
||||
- Media Page: Switched play / pause buttons during media playback
|
||||
- Conversation Page: Improved alignment of elements in 'New Toot' (no more overlapping)
|
||||
- Settings Page: Replaced icons in Settings page for consistency and clarity
|
||||
- Settings Page: Added missing language contributor
|
||||
- Translations: Completed and fixed German and French translations
|
||||
- Translations: Added complete Italian translation
|
||||
- Translations: Added missing/lost strings and updates to other translation files
|
||||
- Timeline: Better text formatting in toots (show paragraph breaks)
|
||||
- Timeline: Use shortend username if display_name isn't provided in ProfileHeader and MiniHeader
|
||||
- Timeline: Created new placeholder for profile avatars if instance doesn't provide valid image
|
||||
|
||||
* Thu Apr 16 2020 Dusko Angirevic <dysko@me.com> 1.0.4-1
|
||||
- Merge with molan code
|
||||
|
|
|
@ -14,7 +14,7 @@ Name: harbour-tooterb
|
|||
%{?qtc_builddir:%define _builddir %qtc_builddir}
|
||||
Summary: Tooter β
|
||||
Version: 1.0.4
|
||||
Release: 2
|
||||
Release: 3
|
||||
Group: Qt/Qt
|
||||
License: LICENSE
|
||||
URL: http://example.org/
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Name: harbour-tooterb
|
||||
Summary: Tooter β
|
||||
Version: 1.0.4
|
||||
Release: 2
|
||||
Release: 3
|
||||
# The contents of the Group field should be one of the groups listed here:
|
||||
# https://github.com/mer-tools/spectacle/blob/master/data/GROUPS
|
||||
Group: Qt/Qt
|
||||
|
|
|
@ -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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation>Was gibt's Neues?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation>Toot gesendet!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Σφάλμα φόρτωσης</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -318,7 +322,7 @@
|
|||
<name>VisualContainer</name>
|
||||
<message>
|
||||
<source>Unboost</source>
|
||||
<translation>Αναίρεση προώθησης</translation>
|
||||
<translation>Αναίρεση προώθηση</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Boost</source>
|
||||
|
|
|
@ -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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation>¿En qué estás pensando?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<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>
|
||||
|
@ -62,6 +58,14 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImageFullScreen</name>
|
||||
|
|
|
@ -22,10 +22,6 @@
|
|||
</context>
|
||||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<source>Conversation</source>
|
||||
<translation>Conversation</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Supprimer</translation>
|
||||
|
@ -40,7 +36,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Write your warning here</source>
|
||||
<translation>Avertissement du contenu</translation>
|
||||
<translation>Rédigez votre alerte ici</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Public</source>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation>Qu'avez-vous en tête?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation>Pouet envoyé !</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation>Copier le lien</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>Erreur de chargement</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -81,7 +85,7 @@
|
|||
<name>LoginPage</name>
|
||||
<message>
|
||||
<source>Login</source>
|
||||
<translation>Login</translation>
|
||||
<translation>Connexion</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Instance</source>
|
||||
|
@ -93,7 +97,7 @@
|
|||
</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>Mastodon est un réseau libre et open source. Il s’agit d'une alternative aux plateformes commerciales, pour éviter qu'une seule entreprise monopolise vos communications. Choisissez un serveur dans lequel vous avez confiance - quelque que soit votre choix vous pourrez interagir avec d’autres personnes. Tout le monde peut monter sa propre instance Mastodon et participer rendre le réseau plus robuste.</translation>
|
||||
<translation>Mastodon est un réseau libre et open source : une alternative décentralisée aux plateformes commerciales, afin d’éviter le contrôle monopolistique de vos communications par une entreprise. Choisissez un serveur dans lequel vous avez confiance - quelque que soit votre choix vous pourrez interagir avec tous les utilisateurs du réseau Mastodon. Tout le monde peut monter sa propre instance Mastodon et ainsi contribuer à la croissance du réseau.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Reload</source>
|
||||
|
@ -116,7 +120,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Search</source>
|
||||
<translation>Chercher</translation>
|
||||
<translation>Rechercher</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>@user or #term</source>
|
||||
|
@ -173,7 +177,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Follow request sent!</source>
|
||||
<translation>Demande de suivi envoyée !</translation>
|
||||
<translation>Demande d’abonnement envoyée !</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Following</source>
|
||||
|
@ -232,7 +236,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Remove Account</source>
|
||||
<translation>Enlever compte</translation>
|
||||
<translation>Déconnecter votre compte</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Add Account</source>
|
||||
|
@ -244,7 +248,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Authorize this app to access your Mastodon account</source>
|
||||
<translation>Autoriser cette application d'utiliser votre compte</translation>
|
||||
<translation>Autoriser l’accès à votre compte pour cette application</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Disable this option if you want to preserve your data connection</source>
|
||||
|
@ -280,7 +284,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Added README file</source>
|
||||
<translation>Ajouté fichier README</translation>
|
||||
<translation>Fichier README ajouté</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Load images in toots</source>
|
||||
|
@ -292,7 +296,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Use Transifex to help with app translation to your language</source>
|
||||
<translation>Utiliser Transifex pour aider avec les traductions de l'application</translation>
|
||||
<translation>Utiliser Transifex pour aider à traduire cette application</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Development and translations</source>
|
||||
|
@ -326,11 +330,11 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Unfavorite</source>
|
||||
<translation>Défavoriser</translation>
|
||||
<translation>Retirer des favoris</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Favorite</source>
|
||||
<translation>Ajouter au favoris</translation>
|
||||
<translation>Ajouter aux favoris</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
|
|
|
@ -28,52 +28,57 @@
|
|||
<context>
|
||||
<name>Conversation</name>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="65"/>
|
||||
<source>Conversation</source>
|
||||
<translation>Conversazione</translation>
|
||||
<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="182"/>
|
||||
<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="213"/>
|
||||
<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="276"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="293"/>
|
||||
<source>Delete</source>
|
||||
<translation>Elimina</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="376"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="392"/>
|
||||
<source>Public</source>
|
||||
<translation>Pubblico</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="379"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="395"/>
|
||||
<source>Unlisted</source>
|
||||
<translation>Non elencato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="382"/>
|
||||
<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="385"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="401"/>
|
||||
<source>Direct</source>
|
||||
<translation>Diretto</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Conversation.qml" line="499"/>
|
||||
<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="500"/>
|
||||
<location filename="../qml/pages/Conversation.qml" line="516"/>
|
||||
<source>Tap to insert</source>
|
||||
<translation>Tap per inserire</translation>
|
||||
</message>
|
||||
|
@ -81,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>
|
||||
|
@ -97,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>
|
||||
|
@ -125,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>
|
||||
|
@ -204,72 +209,72 @@
|
|||
<context>
|
||||
<name>Profile</name>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="170"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="171"/>
|
||||
<source>Summary</source>
|
||||
<translation>Sintesi</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="176"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="177"/>
|
||||
<source>Followers</source>
|
||||
<translation>Seguaci</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="181"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="182"/>
|
||||
<source>Following</source>
|
||||
<translation>Segue</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="186"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="187"/>
|
||||
<source>Statuses</source>
|
||||
<translation>Toots</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="191"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="192"/>
|
||||
<source>Favourites</source>
|
||||
<translation>Apprezzati</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="200"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="201"/>
|
||||
<source>Unfollow</source>
|
||||
<translation>Smetti di seguire</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="200"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="201"/>
|
||||
<source>Follow request sent!</source>
|
||||
<translation>Richiesta di seguito inviata!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="200"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="201"/>
|
||||
<source>Follow</source>
|
||||
<translation>Segui</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="213"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="214"/>
|
||||
<source>Unmute</source>
|
||||
<translation>Non silenziare</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="213"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="214"/>
|
||||
<source>Mute</source>
|
||||
<translation>Silenzia</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="226"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="227"/>
|
||||
<source>Unblock</source>
|
||||
<translation>Sblocca</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="226"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="227"/>
|
||||
<source>Block</source>
|
||||
<translation>Blocca</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="245"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="246"/>
|
||||
<source>Bio</source>
|
||||
<translation>Biografia</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../qml/pages/Profile.qml" line="287"/>
|
||||
<location filename="../qml/pages/Profile.qml" line="290"/>
|
||||
<source>Open Profile in Browser</source>
|
||||
<translation>Aprire profile nel browser</translation>
|
||||
</message>
|
||||
|
@ -388,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="207"/>
|
||||
<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="207"/>
|
||||
<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="244"/>
|
||||
<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="244"/>
|
||||
<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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation>有何想法?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation>复制链接到剪切板</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation>加载错误</translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -128,7 +132,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Federated</source>
|
||||
<translation>联合的</translation>
|
||||
<translation>联合</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
@ -292,18 +296,18 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Use Transifex to help with app translation to your language</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation>使用 Transifex 以帮助翻译软件为你的语言</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Development and translations</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation>开发及翻译</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Toot</name>
|
||||
<message>
|
||||
<source>boosted</source>
|
||||
<translation>推起的</translation>
|
||||
<translation>推起</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>favourited</source>
|
||||
|
@ -311,7 +315,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>followed you</source>
|
||||
<translation>关注你的</translation>
|
||||
<translation>关注你</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>
|
||||
|
@ -62,12 +58,20 @@
|
|||
<source>What's on your mind?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Toot sent!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy Link to Clipboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImageFullScreen</name>
|
||||
<message>
|
||||
<source>Error loading</source>
|
||||
<translation></translation>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
|
Loading…
Reference in a new issue