mirror of
https://github.com/KDE/kdeconnect-android
synced 2025-08-31 14:15:14 +00:00
Compare commits
457 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
1d833841f5 | ||
|
90f7b190dd | ||
|
f08b0f0f1c | ||
|
0fbbf1d6ed | ||
|
66db45b39e | ||
|
c9bdcbbf9b | ||
|
ccaccee653 | ||
|
2ced849bd0 | ||
|
f0b879e830 | ||
|
e84568ffb5 | ||
|
6cc41ab890 | ||
|
038c96fe35 | ||
|
56e4b20d1f | ||
|
689ccff843 | ||
|
4e83693dc7 | ||
|
a0a6accc66 | ||
|
f6f7d1e970 | ||
|
ddda58e896 | ||
|
4f796446d6 | ||
|
04f5863f6a | ||
|
c0c5ba1024 | ||
|
a733433551 | ||
|
c362f16837 | ||
|
90ff6df189 | ||
|
388b6f5a20 | ||
|
b463adda73 | ||
|
6687a09d2e | ||
|
63776ac57a | ||
|
925f428873 | ||
|
9e4c53aa1c | ||
|
f5ff06a4d0 | ||
|
07064a5766 | ||
|
a77ac7ac47 | ||
|
7cd06cf581 | ||
|
30fbc14a80 | ||
|
431d087b88 | ||
|
5678100352 | ||
|
c6b3d1b100 | ||
|
c0a41034fa | ||
|
5bc41367ed | ||
|
17010e533f | ||
|
d5c47a1c4c | ||
|
08b1a9dce4 | ||
|
74146b83e2 | ||
|
938df620fa | ||
|
d4b8a07ee7 | ||
|
44aa7824f7 | ||
|
feae6b54a9 | ||
|
dbbce2aee1 | ||
|
ed1dcdab52 | ||
|
e3ccfb1b25 | ||
|
4ae04ae060 | ||
|
801367458e | ||
|
26c72fae89 | ||
|
b981f9234b | ||
|
7f07e4658f | ||
|
f182d27ebe | ||
|
3b9d6ac61e | ||
|
6f24ac8d25 | ||
|
2891ec2092 | ||
|
fc1424c67c | ||
|
83efd6b355 | ||
|
05e14bb81c | ||
|
1236cbe4e3 | ||
|
5f9159a13f | ||
|
fbd9f8f216 | ||
|
e32b6b67e0 | ||
|
63a849b80a | ||
|
170bb5e717 | ||
|
f121e4982e | ||
|
937289730d | ||
|
624a9302fd | ||
|
e6f4b69464 | ||
|
2190c9cdaa | ||
|
864d44cb5b | ||
|
72e958a891 | ||
|
d4ab2ca6cf | ||
|
fd51ec7c14 | ||
|
28070954a6 | ||
|
e10f2496de | ||
|
95b4c08605 | ||
|
51d4de34c4 | ||
|
de2001bbe1 | ||
|
9c80cb9a40 | ||
|
0b03a66c37 | ||
|
6d66d69820 | ||
|
c0fc19baaa | ||
|
03ea5eae4c | ||
|
b373c28cdd | ||
|
6c8d22b1ed | ||
|
69adfbfbc2 | ||
|
f80e29538a | ||
|
56dda889d1 | ||
|
0c48f388f4 | ||
|
3eda9d4ef9 | ||
|
5aa6fae03b | ||
|
228a504b90 | ||
|
34c2c311e2 | ||
|
08fcfc863a | ||
|
c550ef4445 | ||
|
ec40994d4c | ||
|
43d4f38765 | ||
|
fbff23a8c0 | ||
|
52ff931c4e | ||
|
0f628d4927 | ||
|
737c333a91 | ||
|
e9e406de88 | ||
|
9b2e4bcf56 | ||
|
d3daf20c27 | ||
|
7de2817274 | ||
|
6121fa04bc | ||
|
bec807fa63 | ||
|
fe97750e9a | ||
|
f8a2d2da03 | ||
|
68a0b73e9c | ||
|
7a4fb8b584 | ||
|
b4ee6e30b1 | ||
|
0560071cfb | ||
|
4343ad7e01 | ||
|
0738710747 | ||
|
9af8fe791b | ||
|
a9a99ea7bd | ||
|
03c2121d57 | ||
|
c0c38aab9a | ||
|
ab4a6a300b | ||
|
82c434273d | ||
|
0e1842964f | ||
|
0a82d303e4 | ||
|
c275e26e00 | ||
|
d951e3faad | ||
|
144d292948 | ||
|
32d293eb8d | ||
|
3e2c077674 | ||
|
49d36d57a6 | ||
|
8b6d789c02 | ||
|
de73362624 | ||
|
7bc90fbe85 | ||
|
818b99774d | ||
|
13b09ffae8 | ||
|
56c96b686d | ||
|
3b4f5f83b2 | ||
|
fc18d8a10f | ||
|
d73236ab96 | ||
|
ecd4bec109 | ||
|
bb152c4900 | ||
|
49a9cd5ea7 | ||
|
e363a5875a | ||
|
55d3fd630c | ||
|
a85e6f8057 | ||
|
125c9d54b3 | ||
|
5b937313ff | ||
|
2ad9f8eeb1 | ||
|
b3d84f31f4 | ||
|
5ca96fc378 | ||
|
05f1cbe136 | ||
|
d02e5aabb5 | ||
|
ae24cd6ca8 | ||
|
16414401c0 | ||
|
3f120fbea8 | ||
|
97806cf6b0 | ||
|
a923deee58 | ||
|
0923c8ecda | ||
|
172822239c | ||
|
6a58cc444e | ||
|
26667e4b78 | ||
|
086d366a1c | ||
|
84d380aee5 | ||
|
1ea956f5fb | ||
|
cfc7242db5 | ||
|
93b257d46c | ||
|
fa22722498 | ||
|
b0c9e46a31 | ||
|
53b49163d5 | ||
|
444f5725af | ||
|
1104baca8f | ||
|
c3af9b03f6 | ||
|
ecb38f2518 | ||
|
75ddac0bf0 | ||
|
553bae4a33 | ||
|
7d5f40a3a1 | ||
|
e8c74ec689 | ||
|
c7223a17dc | ||
|
2fddd7e24a | ||
|
7920a1a250 | ||
|
a1ce310f65 | ||
|
8fea00a843 | ||
|
7210fd8425 | ||
|
dcb817a805 | ||
|
b916d2c972 | ||
|
6b15348677 | ||
|
a899f06885 | ||
|
4a1a086e0f | ||
|
8853f1807f | ||
|
0a8bd2bf56 | ||
|
c5d1d4a9fa | ||
|
741e24c984 | ||
|
8b9b99275d | ||
|
cfe789fb7e | ||
|
7170bdb687 | ||
|
53f746cb6a | ||
|
35777b4b15 | ||
|
a1d0689d50 | ||
|
883eca5cf3 | ||
|
d91107329a | ||
|
b7f3a7d868 | ||
|
e613e7e09d | ||
|
cb44c70d17 | ||
|
056b569951 | ||
|
2d421e3eb6 | ||
|
5674ddd3e9 | ||
|
5bb996a6ac | ||
|
d89ab2bb20 | ||
|
e5661225a1 | ||
|
cc38149834 | ||
|
4805ea91b8 | ||
|
2553a7cebb | ||
|
526c3a9c4d | ||
|
333ad876aa | ||
|
588cc8dfcf | ||
|
48dd405201 | ||
|
1fad01e306 | ||
|
c78dd6f40d | ||
|
3084513778 | ||
|
e592b45a61 | ||
|
deee9cc2e2 | ||
|
a107796ec2 | ||
|
c32e00bb47 | ||
|
ba98e21d40 | ||
|
551b089d9a | ||
|
b9e9d66fa5 | ||
|
107611f8d2 | ||
|
d0fc68054f | ||
|
9f15d4b3aa | ||
|
a149100d74 | ||
|
7332b355a4 | ||
|
9cc8051d00 | ||
|
78050a158a | ||
|
a5057df1c8 | ||
|
b856bdbb0b | ||
|
8cb9a1809d | ||
|
0ffd9cd9dc | ||
|
725b3f1d6a | ||
|
63d1d15c4f | ||
|
592b8a74a7 | ||
|
38e713f489 | ||
|
bb8649d869 | ||
|
2e82673bbf | ||
|
7ee33de646 | ||
|
65a71696d5 | ||
|
e2aa79a252 | ||
|
1ffcaf076e | ||
|
854b2a1c9f | ||
|
8fb545d620 | ||
|
db615b82df | ||
|
ee7d4a1f05 | ||
|
409ef6b579 | ||
|
2c0a9d262e | ||
|
2f10f1d0f2 | ||
|
9f788da478 | ||
|
ec952b49d9 | ||
|
45da75f331 | ||
|
283956c107 | ||
|
d605977b91 | ||
|
80cf238354 | ||
|
8ee135b018 | ||
|
2343dbf144 | ||
|
3f53180b1d | ||
|
0f7af315f5 | ||
|
7ebac70d47 | ||
|
9037647281 | ||
|
9373587268 | ||
|
0771415d8f | ||
|
fb0e2cc01d | ||
|
584fb78bb7 | ||
|
ae12e3e6fc | ||
|
8be80cae3e | ||
|
d41ed4d911 | ||
|
6f783b54a5 | ||
|
1f6d1ea544 | ||
|
27737c46f2 | ||
|
6b99fe7e7c | ||
|
6e59a6241a | ||
|
7506d32cef | ||
|
c35dc4928c | ||
|
6070276489 | ||
|
9685f7e69a | ||
|
69495136da | ||
|
5f18cb571d | ||
|
ab1b1f7ecc | ||
|
3f8170eae8 | ||
|
eb6784b626 | ||
|
1beb8d4581 | ||
|
16067d7523 | ||
|
dea0bb4e1f | ||
|
c9fb81363d | ||
|
35e8ea0c4c | ||
|
7c5c7933c9 | ||
|
0dfa44aeac | ||
|
dd527f661c | ||
|
ed89fb43ed | ||
|
aed2b64416 | ||
|
4bdbb8f74a | ||
|
155ebf4fb2 | ||
|
46ad0c62ba | ||
|
df0f2d651c | ||
|
167e2c7176 | ||
|
906326f837 | ||
|
3c9c49fa87 | ||
|
24a6beb600 | ||
|
0775a45316 | ||
|
90dbdee282 | ||
|
7d28c52c35 | ||
|
7686e012c3 | ||
|
2cb9666678 | ||
|
0ab4e0d1d2 | ||
|
30cc95713f | ||
|
ae49aa6456 | ||
|
89454fcba9 | ||
|
5a6453729c | ||
|
0706ec1a0b | ||
|
405e828683 | ||
|
34a78e635e | ||
|
c327c15825 | ||
|
6d027ae810 | ||
|
104013c916 | ||
|
8df1f04141 | ||
|
beab3599bf | ||
|
819d3ea158 | ||
|
83fd2440ce | ||
|
e13451061f | ||
|
e82c0fea84 | ||
|
e391750e0e | ||
|
6513bb1320 | ||
|
0fb6e25682 | ||
|
7fbfc9df90 | ||
|
cd8237d773 | ||
|
aaa750bbc6 | ||
|
3d54da75cc | ||
|
358584ba6f | ||
|
adfab5f0f3 | ||
|
e37a519e3a | ||
|
6783f0a167 | ||
|
6d78fe749a | ||
|
2120c7967e | ||
|
de861ce781 | ||
|
e222937736 | ||
|
e289811097 | ||
|
067a000b2b | ||
|
f9d05824a7 | ||
|
d753f1eea4 | ||
|
3c81b527eb | ||
|
96147bf6df | ||
|
8b33ce64a4 | ||
|
73fdd4b47e | ||
|
680e404d05 | ||
|
aae6f1a7e9 | ||
|
5cda1ceb0c | ||
|
7ed4efedc3 | ||
|
96ecd620cf | ||
|
f344586fb6 | ||
|
d9755f8438 | ||
|
659ed25213 | ||
|
ca6ea5cb1a | ||
|
4e1e2931e2 | ||
|
711eef97e7 | ||
|
962dc50617 | ||
|
1ecd6b67c2 | ||
|
72ad997b53 | ||
|
8352091ffd | ||
|
1195cf5c4e | ||
|
f03c86c4ae | ||
|
4ae6e50020 | ||
|
66ea01ad29 | ||
|
9a8a99a5a7 | ||
|
5578f9172b | ||
|
860504fbbf | ||
|
6affee7f8d | ||
|
2cf0c354cd | ||
|
9689191847 | ||
|
ebe3cb4c4e | ||
|
afa832843f | ||
|
d92a8afdf4 | ||
|
56577bcc88 | ||
|
8283b8267f | ||
|
ca4a6eb06a | ||
|
8892750809 | ||
|
3378c5d428 | ||
|
2cfb506626 | ||
|
5e1b47db63 | ||
|
f29f056ef7 | ||
|
0d0672e59f | ||
|
efda9b95ab | ||
|
186236b93a | ||
|
f7ea30dd7d | ||
|
1bd5b12619 | ||
|
23701bc4ae | ||
|
5151ed3d96 | ||
|
4c0acbb71c | ||
|
440f1d4fa3 | ||
|
e8f7e86b35 | ||
|
343270c793 | ||
|
27075e89be | ||
|
768b02c173 | ||
|
ef760a3628 | ||
|
3e96d5ecd3 | ||
|
c6dbadce21 | ||
|
b985aeb18e | ||
|
dc2c2e71df | ||
|
e1a7b476d1 | ||
|
5dad852ece | ||
|
9ca1495dd3 | ||
|
eeeb5678c1 | ||
|
769f054355 | ||
|
235c67fd82 | ||
|
862bd43c63 | ||
|
a82b6bbae0 | ||
|
2803024046 | ||
|
01bc5490f2 | ||
|
994a71f7cd | ||
|
0eb79e0053 | ||
|
00387ca01d | ||
|
7dba06cbb6 | ||
|
ae60cbbf74 | ||
|
0d4951f152 | ||
|
5fb87d598e | ||
|
b65c1aae8f | ||
|
3d166e6d4b | ||
|
411bcc3960 | ||
|
eb5719d9a2 | ||
|
37246f8575 | ||
|
6728ca472c | ||
|
d19595fc3b | ||
|
f3c23c5b8e | ||
|
ce4f6ca9ef | ||
|
f21fe2eb1b | ||
|
105a733028 | ||
|
9df15bf9ca | ||
|
d53fcdd546 | ||
|
fa125ed0ac | ||
|
28ebd94517 | ||
|
d0efb70bcf | ||
|
5441b0b5d6 | ||
|
0a354695cc | ||
|
4bbe6c2e55 | ||
|
80106ccb81 | ||
|
fb327ae35e | ||
|
ffa0049c09 | ||
|
afb45416b1 | ||
|
295dc7b42a | ||
|
0de545773d | ||
|
7a0e38445b | ||
|
40b1cdabc8 | ||
|
28b1e7d96a | ||
|
2f922f282a | ||
|
6d431c5797 | ||
|
175ee9b011 | ||
|
8a9ac32882 |
19
.gitignore
vendored
19
.gitignore
vendored
@@ -1,14 +1,17 @@
|
||||
.attach_pid*
|
||||
local.properties
|
||||
.gradle/
|
||||
.idea/
|
||||
out/
|
||||
gen/
|
||||
bin/
|
||||
build/
|
||||
target/
|
||||
classes/
|
||||
/.gradle/
|
||||
/.idea/
|
||||
/out/
|
||||
/gen/
|
||||
/bin/
|
||||
/build/
|
||||
/target/
|
||||
/classes/
|
||||
*.iml
|
||||
*.keystore
|
||||
!debug.keystore
|
||||
.directory
|
||||
GPUCache/
|
||||
/release/
|
||||
/.kotlin/
|
||||
|
@@ -7,13 +7,26 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
-->
|
||||
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:versionCode="13001"
|
||||
android:versionName="1.30.1">
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<uses-feature
|
||||
android:name="android.hardware.telephony"
|
||||
android:required="false" />
|
||||
<uses-feature
|
||||
android:name="android.hardware.touchscreen"
|
||||
android:required="false" />
|
||||
<uses-feature
|
||||
android:name="android.software.leanback"
|
||||
android:required="false" />
|
||||
<uses-feature
|
||||
android:name="android.hardware.bluetooth"
|
||||
android:required="false" />
|
||||
<uses-feature
|
||||
android:name="android.hardware.location.gps"
|
||||
android:required="false" />
|
||||
<uses-feature
|
||||
android:name="android.hardware.microphone"
|
||||
android:required="false" />
|
||||
|
||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
@@ -56,13 +69,16 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:roundIcon="@mipmap/ic_launcher_round"
|
||||
android:label="@string/kde_connect"
|
||||
android:banner="@mipmap/ic_launcher_banner"
|
||||
android:supportsRtl="true"
|
||||
android:allowBackup="false"
|
||||
android:dataExtractionRules="@xml/data_extraction_rules"
|
||||
android:networkSecurityConfig="@xml/network_security_config"
|
||||
android:theme="@style/KdeConnectTheme.NoActionBar"
|
||||
android:name="org.kde.kdeconnect.KdeConnect"
|
||||
android:enableOnBackInvokedCallback="true">
|
||||
android:enableOnBackInvokedCallback="true"
|
||||
android:requestLegacyExternalStorage="true"> <!-- requestLegacyExternalStorage is only used in Android 10: https://developer.android.com/training/data-storage/use-cases#opt-out-in-production-app -->
|
||||
|
||||
|
||||
<receiver
|
||||
android:name="com.android.mms.transaction.PushReceiver"
|
||||
@@ -110,6 +126,12 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
<intent-filter>
|
||||
<action android:name="android.service.quicksettings.action.QS_TILE_PREFERENCES"/>
|
||||
</intent-filter>
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
</intent-filter>
|
||||
|
||||
<meta-data android:name="android.app.shortcuts"
|
||||
android:resource="@xml/shortcuts" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name="org.kde.kdeconnect.UserInterface.PluginSettingsActivity"
|
||||
@@ -276,6 +298,7 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.kde.kdeconnect.Plugins.MousePadPlugin.MousePadActivity" />
|
||||
</activity>
|
||||
<!-- TODO: Remove? This is only used by https://github.com/andOTP/andOTP, which is unmaintained since 2021. Do people use forks or can we remove this? -->
|
||||
<activity
|
||||
android:name="org.kde.kdeconnect.Plugins.MousePadPlugin.SendKeystrokesToHostActivity"
|
||||
android:label="@string/pref_plugin_mousepad_send_keystrokes"
|
||||
@@ -335,7 +358,7 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
|
||||
<provider
|
||||
android:name="androidx.core.content.FileProvider"
|
||||
android:authorities="org.kde.kdeconnect_tp.fileprovider"
|
||||
android:authorities="${applicationId}.fileprovider"
|
||||
android:exported="false"
|
||||
android:grantUriPermissions="true">
|
||||
<meta-data
|
||||
|
248
build.gradle.kts
248
build.gradle.kts
@@ -1,8 +1,15 @@
|
||||
import com.android.build.api.instrumentation.AsmClassVisitorFactory
|
||||
import com.android.build.api.instrumentation.ClassContext
|
||||
import com.android.build.api.instrumentation.ClassData
|
||||
import com.android.build.api.instrumentation.InstrumentationParameters
|
||||
import com.android.build.api.instrumentation.InstrumentationScope
|
||||
import com.github.jk1.license.LicenseReportExtension
|
||||
import com.github.jk1.license.render.ReportRenderer
|
||||
import com.github.jk1.license.render.TextReportRenderer
|
||||
import java.io.FileNotFoundException
|
||||
import java.util.Properties
|
||||
import org.objectweb.asm.ClassVisitor
|
||||
import org.objectweb.asm.MethodVisitor
|
||||
import org.objectweb.asm.Opcodes.CHECKCAST
|
||||
import org.objectweb.asm.Opcodes.INVOKESTATIC
|
||||
|
||||
buildscript {
|
||||
dependencies {
|
||||
@@ -11,40 +18,30 @@ buildscript {
|
||||
}
|
||||
}
|
||||
|
||||
@Suppress("DSL_SCOPE_VIOLATION") // TODO: remove once https://youtrack.jetbrains.com/issue/KTIJ-19369 is fixed
|
||||
plugins {
|
||||
alias(libs.plugins.android.application)
|
||||
alias(libs.plugins.kotlin.android)
|
||||
alias(libs.plugins.kotlin.kapt)
|
||||
alias(libs.plugins.ksp)
|
||||
alias(libs.plugins.dependencyLicenseReport)
|
||||
alias(libs.plugins.compose.compiler)
|
||||
}
|
||||
|
||||
val licenseResDir = File("$projectDir/build/dependency-license-res")
|
||||
|
||||
fun String.runCommand(
|
||||
workingDir: File = File("."),
|
||||
timeoutAmount: Long = 60,
|
||||
timeoutUnit: TimeUnit = TimeUnit.SECONDS
|
||||
): String = ProcessBuilder(split("\\s(?=(?:[^'\"`]*(['\"`])[^'\"`]*\\1)*[^'\"`]*$)".toRegex()))
|
||||
.directory(workingDir)
|
||||
.redirectOutput(ProcessBuilder.Redirect.PIPE)
|
||||
.redirectError(ProcessBuilder.Redirect.PIPE)
|
||||
.start()
|
||||
.apply { waitFor(timeoutAmount, timeoutUnit) }
|
||||
.run {
|
||||
val error = errorStream.bufferedReader().readText().trim()
|
||||
if (error.isNotEmpty()) {
|
||||
throw Exception(error)
|
||||
}
|
||||
inputStream.bufferedReader().readText().trim()
|
||||
}
|
||||
val hashProvider = project.providers.exec {
|
||||
workingDir = rootDir
|
||||
commandLine("git", "rev-parse", "--short", "HEAD")
|
||||
}.standardOutput.asText.map { it.trim() }
|
||||
|
||||
android {
|
||||
namespace = "org.kde.kdeconnect_tp"
|
||||
compileSdk = 34
|
||||
compileSdk = 35
|
||||
defaultConfig {
|
||||
applicationId = "org.kde.kdeconnect_tp"
|
||||
minSdk = 21
|
||||
targetSdk = 33
|
||||
targetSdk = 35
|
||||
versionCode = 13304
|
||||
versionName = "1.33.4"
|
||||
proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
|
||||
}
|
||||
buildFeatures {
|
||||
@@ -53,10 +50,6 @@ android {
|
||||
buildConfig = true
|
||||
}
|
||||
|
||||
composeOptions {
|
||||
kotlinCompilerExtensionVersion = libs.versions.compose.compiler.get()
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_9
|
||||
targetCompatibility = JavaVersion.VERSION_1_9
|
||||
@@ -71,16 +64,18 @@ android {
|
||||
androidResources {
|
||||
generateLocaleConfig = true
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
getByName("main") {
|
||||
manifest.srcFile("AndroidManifest.xml")
|
||||
java.setSrcDirs(listOf("src"))
|
||||
resources.setSrcDirs(listOf("resources"))
|
||||
res.setSrcDirs(listOf(licenseResDir, "res"))
|
||||
assets.setSrcDirs(listOf("assets"))
|
||||
setRoot(".") // By default AGP expects all directories under src/main/...
|
||||
java.srcDir("src") // by default is "java"
|
||||
res.setSrcDirs(listOf(licenseResDir, "res")) // add licenseResDir
|
||||
}
|
||||
getByName("debug") {
|
||||
res.srcDir("dbg-res")
|
||||
}
|
||||
getByName("test") {
|
||||
java.setSrcDirs(listOf("tests"))
|
||||
java.srcDir("tests")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -99,22 +94,12 @@ android {
|
||||
}
|
||||
buildTypes {
|
||||
getByName("debug") {
|
||||
// We minify by default even on debug builds. This has helped us catch issues where minification would remove files that were actually used (eg: via reflection).
|
||||
// If you want to locally disable this behavior to speed-up the build, add a line `disableMinifyDebug=true` to your `local.properties` file.
|
||||
val reader = try {
|
||||
rootProject.file("local.properties").reader()
|
||||
} catch (e: FileNotFoundException) {
|
||||
null
|
||||
}
|
||||
val properties = reader?.use { Properties().apply { load(it) } }
|
||||
val disableMinifyDebug = properties?.getProperty("disableMinifyDebug")?.toBoolean() ?: false
|
||||
|
||||
isMinifyEnabled = !disableMinifyDebug
|
||||
isShrinkResources = !disableMinifyDebug
|
||||
isMinifyEnabled = false
|
||||
isShrinkResources = false
|
||||
signingConfig = signingConfigs.getByName("debug")
|
||||
applicationIdSuffix = ".debug"
|
||||
versionNameSuffix = "-debug"
|
||||
}
|
||||
// keep minifyEnabled false above for faster builds; set to 'true'
|
||||
// when testing to make sure ProGuard/R8 is not deleting important stuff
|
||||
getByName("release") {
|
||||
isMinifyEnabled = true
|
||||
isShrinkResources = true
|
||||
@@ -125,19 +110,6 @@ android {
|
||||
checkReleaseBuilds = false
|
||||
}
|
||||
|
||||
testOptions {
|
||||
unitTests.all {
|
||||
it.jvmArgs = it.jvmArgs.orEmpty() + listOf(
|
||||
"--add-opens=java.base/java.lang=ALL-UNNAMED",
|
||||
"--add-opens=java.base/java.security=ALL-UNNAMED",
|
||||
"--add-opens=java.base/sun.security.rsa=ALL-UNNAMED",
|
||||
"--add-opens=java.base/sun.security.x509=ALL-UNNAMED",
|
||||
"--add-opens=java.base/java.util=ALL-UNNAMED",
|
||||
"--add-opens=java.base/java.lang.reflect=ALL-UNNAMED"
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
applicationVariants.all {
|
||||
val variant = this
|
||||
logger.quiet("Found a variant called ${variant.name}")
|
||||
@@ -149,9 +121,8 @@ android {
|
||||
// Default output filename is "${project.name}-${v.name}.apk". We want
|
||||
// the Git commit short-hash to be added onto that default filename.
|
||||
try {
|
||||
val hash = "git rev-parse --short HEAD".runCommand(workingDir = rootDir)
|
||||
val newName = "${project.name}-${variant.name}-${hash}.apk"
|
||||
logger.quiet(" Found an output file ${output.outputFile.name}, renaming to ${newName}")
|
||||
val newName = "${project.name}-${variant.name}-${hashProvider.get()}.apk"
|
||||
logger.quiet(" Found an output file ${output.outputFile.name}, renaming to $newName")
|
||||
output.outputFileName = newName
|
||||
} catch (ignored: Exception) {
|
||||
logger.warn("Could not make use of the 'git' command-line tool. Output filenames will not be customized.")
|
||||
@@ -162,8 +133,143 @@ android {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fix PosixFilePermission class type check issue.
|
||||
*
|
||||
* It fixed the class cast exception when lib desugar enabled and minSdk < 26.
|
||||
*/
|
||||
abstract class FixPosixFilePermissionClassVisitorFactory :
|
||||
AsmClassVisitorFactory<FixPosixFilePermissionClassVisitorFactory.Params> {
|
||||
|
||||
override fun createClassVisitor(
|
||||
classContext: ClassContext,
|
||||
nextClassVisitor: ClassVisitor
|
||||
): ClassVisitor {
|
||||
return object : ClassVisitor(instrumentationContext.apiVersion.get(), nextClassVisitor) {
|
||||
override fun visitMethod(
|
||||
access: Int,
|
||||
name: String?,
|
||||
descriptor: String?,
|
||||
signature: String?,
|
||||
exceptions: Array<out String>?
|
||||
): MethodVisitor {
|
||||
if (name == "attributesToPermissions") { // org.apache.sshd.sftp.common.SftpHelper.attributesToPermissions
|
||||
return object : MethodVisitor(
|
||||
instrumentationContext.apiVersion.get(),
|
||||
super.visitMethod(access, name, descriptor, signature, exceptions)
|
||||
) {
|
||||
override fun visitTypeInsn(opcode: Int, type: String?) {
|
||||
// We need to prevent Android Desugar modifying the `PosixFilePermission` classname.
|
||||
//
|
||||
// Android Desugar will replace `CHECKCAST java/nio/file/attribute/PosixFilePermission`
|
||||
// to `CHECKCAST j$/nio/file/attribute/PosixFilePermission`.
|
||||
// We need to replace it with `CHECKCAST java/lang/Enum` to prevent Android Desugar from modifying it.
|
||||
if (opcode == CHECKCAST && type == "java/nio/file/attribute/PosixFilePermission") {
|
||||
println("Bypass PosixFilePermission type check success.")
|
||||
// `Enum` is the superclass of `PosixFilePermission`.
|
||||
// Due to `Object` is not the superclass of `Enum`, we need to use `Enum` instead of `Object`.
|
||||
super.visitTypeInsn(opcode, "java/lang/Enum")
|
||||
} else {
|
||||
super.visitTypeInsn(opcode, type)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return super.visitMethod(access, name, descriptor, signature, exceptions)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun isInstrumentable(classData: ClassData): Boolean {
|
||||
return (classData.className == "org.apache.sshd.sftp.common.SftpHelper").also {
|
||||
if (it) println("SftpHelper Found! Instrumenting...")
|
||||
}
|
||||
}
|
||||
|
||||
interface Params : InstrumentationParameters
|
||||
}
|
||||
|
||||
/**
|
||||
* Collections.unmodifiableXXX is not exist when Android API level is lower than 26.
|
||||
* So we replace the call to Collections.unmodifiableXXX with the original collection by removing the call.
|
||||
*/
|
||||
abstract class FixCollectionsClassVisitorFactory :
|
||||
AsmClassVisitorFactory<FixCollectionsClassVisitorFactory.Params> {
|
||||
override fun createClassVisitor(
|
||||
classContext: ClassContext,
|
||||
nextClassVisitor: ClassVisitor
|
||||
): ClassVisitor {
|
||||
return object : ClassVisitor(instrumentationContext.apiVersion.get(), nextClassVisitor) {
|
||||
override fun visitMethod(
|
||||
access: Int,
|
||||
name: String?,
|
||||
descriptor: String?,
|
||||
signature: String?,
|
||||
exceptions: Array<out String>?
|
||||
): MethodVisitor {
|
||||
return object : MethodVisitor(
|
||||
instrumentationContext.apiVersion.get(),
|
||||
super.visitMethod(access, name, descriptor, signature, exceptions)
|
||||
) {
|
||||
override fun visitMethodInsn(
|
||||
opcode: Int,
|
||||
type: String?,
|
||||
name: String?,
|
||||
descriptor: String?,
|
||||
isInterface: Boolean
|
||||
) {
|
||||
val backportClass = "org/kde/kdeconnect/Helpers/CollectionsBackport"
|
||||
|
||||
if (opcode == INVOKESTATIC && type == "java/util/Collections") {
|
||||
val replaceRules = mapOf(
|
||||
"unmodifiableNavigableSet" to "(Ljava/util/NavigableSet;)Ljava/util/NavigableSet;",
|
||||
"unmodifiableSet" to "(Ljava/util/Set;)Ljava/util/Set;",
|
||||
"unmodifiableNavigableMap" to "(Ljava/util/NavigableMap;)Ljava/util/NavigableMap;",
|
||||
"emptyNavigableMap" to "()Ljava/util/NavigableMap;")
|
||||
if (name in replaceRules && descriptor == replaceRules[name]) {
|
||||
super.visitMethodInsn(opcode, backportClass, name, descriptor, isInterface)
|
||||
val calleeClass = classContext.currentClassData.className
|
||||
println("Replace Collections.$name call with CollectionsBackport.$name from $calleeClass success.")
|
||||
return
|
||||
}
|
||||
}
|
||||
super.visitMethodInsn(opcode, type, name, descriptor, isInterface)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun isInstrumentable(classData: ClassData): Boolean {
|
||||
return classData.className.startsWith("org.apache.sshd") // We only need to fix the Apache SSHD library
|
||||
}
|
||||
|
||||
interface Params : InstrumentationParameters
|
||||
}
|
||||
|
||||
ksp {
|
||||
arg("com.albertvaka.classindexksp.annotations", "org.kde.kdeconnect.Plugins.PluginFactory.LoadablePlugin")
|
||||
}
|
||||
|
||||
androidComponents {
|
||||
onVariants { variant ->
|
||||
variant.instrumentation.transformClassesWith(
|
||||
FixPosixFilePermissionClassVisitorFactory::class.java,
|
||||
InstrumentationScope.ALL
|
||||
) { }
|
||||
variant.instrumentation.transformClassesWith(
|
||||
FixCollectionsClassVisitorFactory::class.java,
|
||||
InstrumentationScope.ALL
|
||||
) { }
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
coreLibraryDesugaring(libs.android.desugarJdkLibs)
|
||||
// It has a bug that causes a crash when using PosixFilePermission and minSdk < 26.
|
||||
// It has been used in SSHD Core.
|
||||
// We have taken a workaround to fix it.
|
||||
// See `FixPosixFilePermissionClassVisitorFactory` for more details.
|
||||
coreLibraryDesugaring(libs.android.desugarJdkLibsNio)
|
||||
|
||||
implementation(libs.androidx.compose.material3)
|
||||
implementation(libs.androidx.compose.ui.tooling.preview)
|
||||
@@ -190,13 +296,14 @@ dependencies {
|
||||
implementation(libs.slf4j.handroid)
|
||||
|
||||
implementation(libs.apache.sshd.core)
|
||||
implementation(libs.apache.mina.core) //For some reason, makes sshd-core:0.14.0 work without NIO, which isn't available until Android 8 (api 26)
|
||||
implementation(libs.apache.sshd.sftp)
|
||||
implementation(libs.apache.sshd.scp)
|
||||
implementation(libs.apache.sshd.mina)
|
||||
implementation(libs.apache.mina.core)
|
||||
|
||||
//implementation("com.github.bright:slf4android:0.1.6") { transitive = true } // For org.apache.sshd debugging
|
||||
implementation(libs.bcpkix.jdk15on) //For SSL certificate generation
|
||||
|
||||
implementation(libs.classindex)
|
||||
kapt(libs.classindex)
|
||||
ksp(libs.classindexksp)
|
||||
|
||||
// The android-smsmms library is the only way I know to handle MMS in Android
|
||||
// (Shouldn't a phone OS make phone things easy?)
|
||||
@@ -219,10 +326,7 @@ dependencies {
|
||||
|
||||
// Testing
|
||||
testImplementation(libs.junit)
|
||||
testImplementation(libs.powermock.core)
|
||||
testImplementation(libs.powermock.module.junit4)
|
||||
testImplementation(libs.powermock.api.mockito2)
|
||||
testImplementation(libs.mockito.core) // powermock isn't compatible with mockito 4
|
||||
testImplementation(libs.mockito.core)
|
||||
testImplementation(libs.jsonassert)
|
||||
|
||||
// For device controls
|
||||
|
6
dbg-res/mipmap-anydpi-v26/ic_launcher.xml
Normal file
6
dbg-res/mipmap-anydpi-v26/ic_launcher.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- <background android:drawable="@drawable/ic_launcher_background"/>-->
|
||||
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
|
||||
</adaptive-icon>
|
5
dbg-res/mipmap-anydpi-v26/ic_launcher_banner.xml
Normal file
5
dbg-res/mipmap-anydpi-v26/ic_launcher_banner.xml
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- <background android:drawable="@drawable/ic_launcher_banner_background"/>-->
|
||||
<foreground android:drawable="@drawable/ic_launcher_banner_foreground"/>
|
||||
</adaptive-icon>
|
6
dbg-res/mipmap-anydpi-v26/ic_launcher_round.xml
Normal file
6
dbg-res/mipmap-anydpi-v26/ic_launcher_round.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- <background android:drawable="@drawable/ic_launcher_background"/>-->
|
||||
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
|
||||
</adaptive-icon>
|
5
dbg-res/values-en-rGB/strings.xml
Normal file
5
dbg-res/values-en-rGB/strings.xml
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<resources>
|
||||
<string name="kde_connect">Debug KDE Connect</string>
|
||||
</resources>
|
5
dbg-res/values/strings.xml
Normal file
5
dbg-res/values/strings.xml
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<resources>
|
||||
<string name="kde_connect">Debug KDE Connect</string>
|
||||
</resources>
|
21
fastlane/metadata/android/ar/full_description.txt
Normal file
21
fastlane/metadata/android/ar/full_description.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
يوفر جسر كِيدِي مجموعة من الميزات لدمج سير عملك عبر الأجهزة:
|
||||
|
||||
- نقل الملفات بين أجهزتك.
|
||||
- الوصول إلى الملفات الموجودة على هاتفك من حاسوبك، دون أسلاك.
|
||||
- الحافظة المشتركة: النسخ واللصق بين أجهزتك.
|
||||
- الحصول على إشعارات للمكالمات والرسائل الواردة على حاسوبك.
|
||||
- لوحة اللمس افتراضية: استخدم شاشة هاتفك كلوحة لمس لحاسوبك.
|
||||
- مزامنة الإشعارات: الوصول إلى إشعارات هاتفك من حاسوبك والرد على الرسائل.
|
||||
- التحكم عن بعد في الوسائط المتعددة: استخدم هاتفك كجهاز تحكم عن بعد لمشغلات الوسائط لينكس.
|
||||
- اتصال واي فاي: لا حاجة إلى سلك يو اس بي أو بلوتوث.
|
||||
- تعمية TLS من البداية إلى النهاية: معلوماتك آمنة.
|
||||
|
||||
يرجى ملاحظة أنك ستحتاج إلى تثبيت جسر كِيدِي على حاسوبك حتى يعمل هذا التطبيق، والحفاظ على تحديث إصدار سطح المكتب بإصدار أندوريد حتى تعمل أحدث الميزات.
|
||||
|
||||
معلومات الأذونات الحساسة:
|
||||
* إذن إمكانية الوصول: مطلوب لتلقي إدخال من جهاز آخر للتحكم في هاتف أندرويد خاص بك، إذا كنت تستخدم ميزة الإدخال عن بُعد.
|
||||
* إذن تحديد الموقع في الخلفية: مطلوب لمعرفة شبكة واي فاي التي تتصل بها، إذا كنت تستخدم ميزة الشبكات الموثوقة.
|
||||
|
||||
لا يرسل جسر كِيدِي أي معلومات إلى كيدي أو إلى أي طرف ثالث. يرسل جسر كِيدِي البيانات من جهاز إلى آخر مباشرةً باستخدام الشبكة المحلية، وليس عبر الإنترنت، وباستخدام التعمية من البداية إلى النهاية.
|
||||
|
||||
هذا التطبيق جزء من مشروع مفتوح المصدر وهو موجود بفضل جميع الأشخاص الذين ساهموا فيه. زر الموقع الإلكتروني للحصول على الشفرة المصدرية.
|
1
fastlane/metadata/android/ar/short_description.txt
Normal file
1
fastlane/metadata/android/ar/short_description.txt
Normal file
@@ -0,0 +1 @@
|
||||
يدمج جسر كِيدِي هاتفك الذكي مع حاسوبك
|
1
fastlane/metadata/android/ar/title.txt
Normal file
1
fastlane/metadata/android/ar/title.txt
Normal file
@@ -0,0 +1 @@
|
||||
KDE Connect
|
21
fastlane/metadata/android/bg/full_description.txt
Normal file
21
fastlane/metadata/android/bg/full_description.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
KDE Connect предоставя набор от функции за интегриране на вашия работен процес на различни устройства:
|
||||
|
||||
- Прехвърляйте файлове между вашите устройства.
|
||||
- Осъществявайте достъп до файлове на телефона си от компютъра си, без кабели.
|
||||
- Споделен клипборд: копирайте и поставяйте между вашите устройства.
|
||||
- Получавайте известия за входящи обаждания и съобщения на вашия компютър.
|
||||
- Виртуален тъчпад: Използвайте екрана на телефона си като тъчпад на компютъра.
|
||||
- Синхронизиране на известия: Достъп до известията на телефона ви от вашия компютър и отговаряне на съобщения.
|
||||
- Мултимедийно дистанционно управление: Използвайте телефона си като дистанционно за Linux медийни плейъри.
|
||||
- WiFi връзка: не е необходим USB кабел или bluetooth.
|
||||
- TLS криптиране от край до край: информацията ви е в безопасност.
|
||||
|
||||
Моля, имайте предвид, че ще трябва да инсталирате KDE Connect на вашия компютър, за да работи това приложение, и поддържайте версията за настолен компютър актуална с версията за Android, за да работят най-новите функции.
|
||||
|
||||
Поверителна информация за разрешения:
|
||||
* Разрешение за достъпност: Изисква се за получаване на вход от друго устройство за управление на вашия телефон с Android, ако използвате функцията за отдалечено въвеждане.
|
||||
* Разрешение за местоположение във фонов режим: Изисква се, за да знаете към коя WiFi мрежа сте свързани, ако използвате функцията Trusted Networks.
|
||||
|
||||
KDE Connect никога не изпраща никаква информация на KDE или на трета страна. KDE Connect изпраща данни от едно устройство на друго директно чрез локалната мрежа, никога през интернет, и чрез криптиране от край до край.
|
||||
|
||||
Това приложение е част от проект с отворен код и съществува благодарение на всички хора, които са допринесли за него. Посетете уебсайта, за да вземете изходния код.
|
1
fastlane/metadata/android/bg/short_description.txt
Normal file
1
fastlane/metadata/android/bg/short_description.txt
Normal file
@@ -0,0 +1 @@
|
||||
KDE Connect интегрира вашия смартфон и компютър
|
1
fastlane/metadata/android/bg/title.txt
Normal file
1
fastlane/metadata/android/bg/title.txt
Normal file
@@ -0,0 +1 @@
|
||||
KDE Connect
|
@@ -1,21 +1,21 @@
|
||||
KDE Connect provides a set of features to integrate your workflow across devices:
|
||||
KDE Connect bietet eine Reihe von Funktionen, um Ihre Arbeitsabläufe über verschiedene Geräte zu vereinigen:
|
||||
|
||||
- Transfer files between your devices.
|
||||
- Access files on your phone from your computer, without wires.
|
||||
- Shared clipboard: copy and paste between your devices.
|
||||
- Get notifications for incoming calls and messages on your computer.
|
||||
- Virtual touchpad: Use your phone screen as your computer's touchpad.
|
||||
- Notifications sync: Access your phone notifications from your computer and reply to messages.
|
||||
- Multimedia remote control: Use your phone as a remote for Linux media players.
|
||||
- WiFi connection: no USB wire or bluetooth needed.
|
||||
- End-to-end TLS encryption: your information is safe.
|
||||
- Daten zwischen Ihren Geräten übertragen.
|
||||
- Auf Daten auf Ihrem Telefon von Ihrem Computer aus zugreifen, ohne Kabel.
|
||||
- Geteilte Zwischenablage: Kopieren und Einfügen zwischen Ihren Geräten.
|
||||
- Erhalten Sie Benachrichtigungen über eingehende Anrufe und Nachrichten auf Ihren Computer.
|
||||
- Virtuelles Touchpad: Verwenden Sie den Bildschirm Ihres Telefons als Touchpad für Ihren Computer.
|
||||
- Abgleich der Benachrichtigungen: Greifen Sie über den Computer auf Ihre Telefonbenachrichtigungen zu und antworten Sie auf Nachrichten.
|
||||
- Multimedia-Fernbedienung: Verwenden Sie Ihr Telefon als Fernbedienung für Linux-Medienspieler.
|
||||
- WLAN-Verbindung: kein USB-Kabel oder Bluetooth erforderlich.
|
||||
- Ende-zu-Ende-TLS-Verschlüsselung: Ihre Informationen sind sicher.
|
||||
|
||||
Please note you will need to install KDE Connect on your computer for this app to work, and keep the desktop version up-to-date with the Android version for the latest features to work.
|
||||
Bitte beachten Sie, dass Sie KDE Connect auf Ihrem Computer installieren müssen, damit diese App funktioniert und halten Sie die Desktop-Version mit der Android-Version auf dem aktuellen Stand, um die neuesten Funktionen nutzen zu können.
|
||||
|
||||
Sensitive permissions information:
|
||||
* Accessibility permission: Required to receive input from another device to control your Android phone, if you use the Remote Input feature.
|
||||
* Background location permission: Required to know to which WiFi network you are connected to, if you use the Trusted Networks feature.
|
||||
Informationen zu sensiblen Berechtigungen:
|
||||
* Zugriffsberechtigung: Wird benötigt, um Eingaben zur Steuerung ihres Android-Telefons von einem anderen Gerät zu erhalten, wenn Sie die Ferneingabefunktion verwenden.
|
||||
* Berechtigung den Standort im Hintergrund zu nutzen: Wird benötigt, um festzustellen, mit welchem WLAN-Netzwerk Sie verbunden sind, wenn Sie die Funktion „Vertrauenswürdige Netzwerke” verwenden.
|
||||
|
||||
KDE Connect never sends any information to KDE nor to any third party. KDE Connect sends data from one device to the other directly using the local network, never through the internet, and using end to end encryption.
|
||||
KDE Connect sendet niemals irgendwelche Informationen an KDE oder an Dritte. KDE Connect sendet Daten, unter Verwendung einer Ende-zu-Ende-Verschlüsselung, über das lokale Netzwerk direkt von einem Gerät zum anderen, niemals über das Internet.
|
||||
|
||||
This app is part of an open source project and it exists thanks to all the people who contributed to it. Visit the website to grab the source code.
|
||||
Diese App ist Teil eines Open-Scource-Projekts und besteht Dank all der Menschen die dazu beigetragen haben. Besuchen Sie die Internetseite, um sich den Quelltext zu holen.
|
11
fastlane/metadata/android/en-US/changelogs/13101.txt
Normal file
11
fastlane/metadata/android/en-US/changelogs/13101.txt
Normal file
@@ -0,0 +1,11 @@
|
||||
1.31
|
||||
* Allow sharing URLs to disconnected devices, to be opened when they become available later
|
||||
* Show a notification to continue playing media on this device after stopping it on another device
|
||||
* Display a shortened version of the pairing verification key
|
||||
* Tweaks to the app theme
|
||||
|
||||
1.30
|
||||
* Added Bluetooth support (beta)
|
||||
* Improved device controls
|
||||
* Added scroll sensitivity option to remote input
|
||||
* Accessibility improvements
|
10
fastlane/metadata/android/en-US/changelogs/13200.txt
Normal file
10
fastlane/metadata/android/en-US/changelogs/13200.txt
Normal file
@@ -0,0 +1,10 @@
|
||||
1.32
|
||||
* Rewrite the remote file browsing
|
||||
* Add Direct Share targets
|
||||
* Send album art from phone to PC
|
||||
|
||||
1.31
|
||||
* Allow sharing URLs to disconnected devices, to be opened when they become available later
|
||||
* Show a notification to continue playing media on this device after stopping it on another device
|
||||
* Display a shortened version of the pairing verification key
|
||||
* Tweaks to the app theme
|
13
fastlane/metadata/android/en-US/changelogs/13201.txt
Normal file
13
fastlane/metadata/android/en-US/changelogs/13201.txt
Normal file
@@ -0,0 +1,13 @@
|
||||
1.32.1
|
||||
* Fixed a crash when opening the presentation remote
|
||||
|
||||
1.32
|
||||
* Rewrite the remote file browsing
|
||||
* Add Direct Share targets
|
||||
* Send album art from phone to PC
|
||||
|
||||
1.31
|
||||
* Allow sharing URLs to disconnected devices, to be opened when they become available later
|
||||
* Show a notification to continue playing media on this device after stopping it on another device
|
||||
* Display a shortened version of the pairing verification key
|
||||
* Tweaks to the app theme
|
11
fastlane/metadata/android/en-US/changelogs/13202.txt
Normal file
11
fastlane/metadata/android/en-US/changelogs/13202.txt
Normal file
@@ -0,0 +1,11 @@
|
||||
1.32.2
|
||||
* Handle expired certificates
|
||||
* Support doubletap drag in remote mouse
|
||||
|
||||
1.32.1
|
||||
* Fixed a crash when opening the presentation remote
|
||||
|
||||
1.32
|
||||
* Rewrite the remote file browsing
|
||||
* Add Direct Share targets
|
||||
* Send album art from phone to PC
|
14
fastlane/metadata/android/en-US/changelogs/13203.txt
Normal file
14
fastlane/metadata/android/en-US/changelogs/13203.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
1.32.3
|
||||
* Fix trusted devices list
|
||||
|
||||
1.32.2
|
||||
* Handle expired certificates
|
||||
* Support doubletap drag in remote mouse
|
||||
|
||||
1.32.1
|
||||
* Fixed a crash when opening the presentation remote
|
||||
|
||||
1.32
|
||||
* Rewrite the remote file browsing
|
||||
* Add Direct Share targets
|
||||
* Send album art from phone to PC
|
17
fastlane/metadata/android/en-US/changelogs/13205.txt
Normal file
17
fastlane/metadata/android/en-US/changelogs/13205.txt
Normal file
@@ -0,0 +1,17 @@
|
||||
1.32.5
|
||||
* Fixed crash in Android 14+
|
||||
|
||||
1.32.3
|
||||
* Fix trusted devices list
|
||||
|
||||
1.32.2
|
||||
* Handle expired certificates
|
||||
* Support doubletap drag in remote mouse
|
||||
|
||||
1.32.1
|
||||
* Fixed a crash when opening the presentation remote
|
||||
|
||||
1.32
|
||||
* Rewrite the remote file browsing
|
||||
* Add Direct Share targets
|
||||
* Send album art from phone to PC
|
16
fastlane/metadata/android/en-US/changelogs/13207.txt
Normal file
16
fastlane/metadata/android/en-US/changelogs/13207.txt
Normal file
@@ -0,0 +1,16 @@
|
||||
1.32.7
|
||||
* Fixed file transfers showing as failed when they succeeded
|
||||
* Fixed plugin list not updating after granting permissions
|
||||
|
||||
1.32.5
|
||||
* Fixed crash in Android 14+
|
||||
|
||||
1.32.3
|
||||
* Fix trusted devices list
|
||||
|
||||
1.32.2
|
||||
* Handle expired certificates
|
||||
* Support doubletap drag in remote mouse
|
||||
|
||||
1.32.1
|
||||
* Fixed a crash when opening the presentation remote
|
14
fastlane/metadata/android/en-US/changelogs/13210.txt
Normal file
14
fastlane/metadata/android/en-US/changelogs/13210.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
1.32.10
|
||||
* Fixed app showing behind the notifications bar in Android 15
|
||||
* Fixed file transfers showing as failed when they succeeded
|
||||
* Fixed plugin list not updating after granting permissions
|
||||
|
||||
1.32.3
|
||||
* Fix trusted devices list
|
||||
|
||||
1.32.2
|
||||
* Handle expired certificates
|
||||
* Support doubletap drag in remote mouse
|
||||
|
||||
1.32.1
|
||||
* Fixed a crash when opening the presentation remote
|
6
fastlane/metadata/android/en-US/changelogs/13300.txt
Normal file
6
fastlane/metadata/android/en-US/changelogs/13300.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
1.33.0
|
||||
* Add support for PeerTube links
|
||||
* Allow filtering notifications from work profile
|
||||
* Fix bug where devices would unpair without user interaction
|
||||
* Verification key now changes every second (only if both devices support it)
|
||||
* Fix crashes
|
9
fastlane/metadata/android/en-US/changelogs/13301.txt
Normal file
9
fastlane/metadata/android/en-US/changelogs/13301.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
1.33.1
|
||||
* Fix compatibility with GSConnect
|
||||
|
||||
1.33.0
|
||||
* Add support for PeerTube links
|
||||
* Allow filtering notifications from work profile
|
||||
* Fix bug where devices would unpair without user interaction
|
||||
* Verification key now changes every second (only if both devices support it)
|
||||
* Fix crashes
|
12
fastlane/metadata/android/en-US/changelogs/13302.txt
Normal file
12
fastlane/metadata/android/en-US/changelogs/13302.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
1.33.2
|
||||
* Fix connection issues on some devices
|
||||
|
||||
1.33.1
|
||||
* Fix compatibility with GSConnect
|
||||
|
||||
1.33.0
|
||||
* Add support for PeerTube links
|
||||
* Allow filtering notifications from work profile
|
||||
* Fix bug where devices would unpair without user interaction
|
||||
* Verification key now changes every second (only if both devices support it)
|
||||
* Fix crashes
|
16
fastlane/metadata/android/en-US/changelogs/13303.txt
Normal file
16
fastlane/metadata/android/en-US/changelogs/13303.txt
Normal file
@@ -0,0 +1,16 @@
|
||||
1.33.3
|
||||
* Fix more connection issues. Pairing again might be needed in some setups.
|
||||
* Add a setting to export the application logs.
|
||||
|
||||
1.33.2
|
||||
* Fix connection issues on some devices.
|
||||
|
||||
1.33.1
|
||||
* Fix compatibility with GSConnect.
|
||||
|
||||
1.33.0
|
||||
* Add support for PeerTube links.
|
||||
* Allow filtering notifications from work profile.
|
||||
* Fix bug where devices would unpair without user interaction.
|
||||
* Verification key now changes every second (only if both devices support it).
|
||||
* Fix crashes.
|
16
fastlane/metadata/android/en-US/changelogs/13304.txt
Normal file
16
fastlane/metadata/android/en-US/changelogs/13304.txt
Normal file
@@ -0,0 +1,16 @@
|
||||
1.33.4
|
||||
* Extend offline URL sharing behavior to direct share targets.
|
||||
* Improve paring screen.
|
||||
|
||||
1.33.3
|
||||
* Fix connection issues. Pairing again might be needed in some cases.
|
||||
* Add a setting to export the application logs.
|
||||
|
||||
1.33.1
|
||||
* Fix compatibility with GSConnect.
|
||||
|
||||
1.33.0
|
||||
* Add support for PeerTube links.
|
||||
* Allow filtering notifications from work profile.
|
||||
* Fix bug where devices would unpair without user interaction.
|
||||
* Verification key now changes every second (if both devices support it).
|
@@ -1,14 +1,21 @@
|
||||
KDE Connect provides a set of features to integrate your workflow across devices:
|
||||
|
||||
- Transfer files between your devices.
|
||||
- Access files on your phone from your computer, without wires.
|
||||
- Shared clipboard: copy and paste between your devices.
|
||||
- Share files and URLs to your computer from any app.
|
||||
- Get notifications for incoming calls and SMS messages on your PC.
|
||||
- Get notifications for incoming calls and messages on your computer.
|
||||
- Virtual touchpad: Use your phone screen as your computer's touchpad.
|
||||
- Notifications sync: Read your Android notifications from the desktop.
|
||||
- Notifications sync: Access your phone notifications from your computer and reply to messages.
|
||||
- Multimedia remote control: Use your phone as a remote for Linux media players.
|
||||
- WiFi connection: no USB wire or bluetooth needed.
|
||||
- End-to-end TLS encryption: your information is safe.
|
||||
|
||||
Please note you will need to install KDE Connect on your computer for this app to work, and keep the desktop version up-to-date with the Android version for the latest features to work.
|
||||
|
||||
Sensitive permissions information:
|
||||
* Accessibility permission: Required to receive input from another device to control your Android phone, if you use the Remote Input feature.
|
||||
* Background location permission: Required to know to which WiFi network you are connected to, if you use the Trusted Networks feature.
|
||||
|
||||
KDE Connect never sends any information to KDE nor to any third party. KDE Connect sends data from one device to the other directly using the local network, never through the internet, and using end to end encryption.
|
||||
|
||||
This app is part of an open source project and it exists thanks to all the people who contributed to it. Visit the website to grab the source code.
|
@@ -6,7 +6,7 @@ KDEConnect fournit un ensemble de fonctionnalités pour intégrer votre flux de
|
||||
- Apparition de notifications pour les appels et les messages entrants sur votre ordinateur.
|
||||
- Pavé tactile virtuel : utilisation de l'écran de votre téléphone comme pavé tactile pour votre ordinateur.
|
||||
- Synchronisation de vos notifications : accès à vos notifications téléphoniques depuis votre ordinateur et réponses aux messages.
|
||||
- Télé-commande multimédia : utilisation de votre téléphone comme télécommande pour les lecteurs de médias sous Linux.
|
||||
- Télé-commande multimédia : utilisation de votre téléphone comme télécommande pour les lecteurs de média sous Linux.
|
||||
- Connexion au Wifi : aucun connexion USB ou Bluetooth nécessaire.
|
||||
- Chiffrement « TLS » de bout en bout : vos informations sont en sécurité.
|
||||
|
||||
@@ -18,4 +18,4 @@ Informations sur les permissions sensibles :
|
||||
|
||||
KDEConnect n'envoie jamais d'informations à KDE ni à aucun tiers. KDEConnect envoie des données d'un périphérique à un autre à l'aide du réseau local, mais jamais par Internet et en utilisant le chiffrement de bout en bout.
|
||||
|
||||
Cette application fait partie d'un projet « Open source ». Il existe grâce à toutes les personnes qui y ont contribué.Visitez le site Internet pour accéder au code source.
|
||||
Cette application fait partie d'un projet « Open source ». Il existe grâce à toutes les personnes qui y ont contribué. Veuillez visiter le site Internet pour accéder au code source.
|
@@ -1 +1 @@
|
||||
KDE Connect intègre votre téléphone et votre ordinateur.
|
||||
KDEConnect intègre votre téléphone et votre ordinateur.
|
21
fastlane/metadata/android/no-NO/full_description.txt
Normal file
21
fastlane/metadata/android/no-NO/full_description.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
KDE Connect tilbyr eit sett funksjonar som lèt deg enkelt arbeida på tvers av einingar:
|
||||
|
||||
– Overfør filer mellom einingane
|
||||
– Få trådlaus tilgang til filer på telefonen frå datamaskina
|
||||
– Del utklippsbilete: kopier og lim inn mellom einingane
|
||||
– Vert varsla på datamaskina om innkommande samtalar og tekstmeldingar
|
||||
– Virtuell styreplate: bruk telefonskjermen som styreplate for datamaskina
|
||||
– Synkronisering av varslingar: få tilgang til telefonvarslingar frå datamaskina og svar på meldingar
|
||||
– Fjernkontroll av medieavspeling: bruk telefonen til å styra Linux-baserte mediespelarar
|
||||
– Wi-Fi-tilkopling: du treng ikkje USB- eller Bluetooth-tilkopling
|
||||
– Ende-til-ende-kryptering: informasjonen din er trygg
|
||||
|
||||
Merk at du må installera KDE Connect på datamaskina for å kunna bruka appen. Hugs å halda PC-versjonen oppdatert med Android-versjonen for tilgang til dei nyaste funksjonane.
|
||||
|
||||
Informasjon om sensitive løyve:
|
||||
– Tilgjenge-løyve: Trengst for å kunna ta imot tastetrykk frå PC for å styra Android-eininga om du brukar funksjonen «Fjernstyring»
|
||||
– Bakgrunnsløyve til å sjå geografiske posisjon: Trengst for å veta kva Wi-Fi-nettverk du er tilkopla om du brukar funksjonen «Tiltrudde nettverk»
|
||||
|
||||
KDE Connect sender aldri informasjon til KDE eller nokon tredjepart. Programmet sender data direkte mellom dei to einingane via lokalnettet, aldri via Internett og alltid med ende-til-ende-kryptering.
|
||||
|
||||
Appen er ein del av eit fri programvare-prosjekt og er blitt til takka vera mange bidragsytarar. Gå til heimesida for å sjå kjeldekoden.
|
1
fastlane/metadata/android/no-NO/short_description.txt
Normal file
1
fastlane/metadata/android/no-NO/short_description.txt
Normal file
@@ -0,0 +1 @@
|
||||
KDE Connect koplar telefonen din saman med datamaskina
|
1
fastlane/metadata/android/no-NO/title.txt
Normal file
1
fastlane/metadata/android/no-NO/title.txt
Normal file
@@ -0,0 +1 @@
|
||||
KDE Connect
|
@@ -1,20 +1,21 @@
|
||||
O KDE Connect fornece um conjunto de recursos para integrar seu fluxo de trabalho entre dispositivos:
|
||||
|
||||
- Transfira arquivos entre seus dispositivos.
|
||||
- Acesse arquivos do seu computador no seu telefone, sem fios.
|
||||
- Área de transferência compartilhada: copie e cole entre seus dispositivos.
|
||||
- Compartilhe arquivos e URLs em seu computador a partir de qualquer app.
|
||||
- Receba notificações de chamadas recebidas e mensagens SMS no seu PC.
|
||||
- Touchpad virtual: use a tela do telefone como touchpad do computador.
|
||||
- Sincronização de notificações: leia as notificações do seu Android na área de trabalho.
|
||||
- Controle remoto multimídia: use seu telefone como controle remoto para reprodutores de mídia Linux.
|
||||
- Sincronização de notificações: acesse as notificações do seu telefone no seu computador e responda as mensagens.
|
||||
- Controle remoto multimídia: use seu telefone como controle remoto para reprodutores de mídia no Linux.
|
||||
- Conexão Wi-Fi: sem necessidade de cabos USB ou bluetooth.
|
||||
- Criptografia TLS de ponta a ponta: suas informações estão seguras.
|
||||
|
||||
Observe que você precisará instalar o KDE Connect no seu computador para que este aplicativo funcione e mantenha a versão para desktop atualizada com a versão do Android para que os recursos mais recentes funcionem.
|
||||
|
||||
Informações a respeito de permissões especiais :
|
||||
Informações sobre permissões sensíveis:
|
||||
* Permissão de acessibilidade: necessária para receber entrada de outro dispositivo para controlar seu telefone Android, se você usar o recurso de entrada remota.
|
||||
* Permissão de localização em segundo plano: necessária para saber a qual rede Wi-Fi você está conectado, se você usar o recurso de redes confiáveis.
|
||||
|
||||
O KDE Connect nunca envia nenhuma informação ao KDE nem a terceiros. O KDE Connect envia dados de um dispositivo para outro diretamente usando a rede local, nunca pela Internet e usando criptografia de ponta a ponta.
|
||||
O KDE Connect nunca envia nenhuma informação ao KDE ou a terceiros. O KDE Connect envia dados de um dispositivo para outro diretamente usando a rede local, nunca pela Internet e usando criptografia de ponta a ponta.
|
||||
|
||||
Este aplicativo faz parte de um projeto de código aberto e existe graças a todas as pessoas que contribuíram para ele. Visite o site para obter o código-fonte.
|
20
fastlane/metadata/android/ru-RU/full_description.txt
Normal file
20
fastlane/metadata/android/ru-RU/full_description.txt
Normal file
@@ -0,0 +1,20 @@
|
||||
KDE Connect предоставляет набор функций для интеграции рабочего процесса между устройствами:
|
||||
- Передача файлов между устройствами.
|
||||
- Доступ к файлам на телефоне с компьютера без проводов.
|
||||
- Общий буфер обмена: копирование и вставка между устройствами.
|
||||
- Уведомления о входящих вызовах и сообщениях на компьютере.
|
||||
- Виртуальный тачпад: использование экрана телефона в качестве тачпада для компьютера.
|
||||
- Синхронизация уведомлений: доступ к уведомлениям телефона с компьютера и возможность отвечать на сообщения.
|
||||
- Дистанционное управление мультимедиа: использование телефона как пульта для медиаплееров в Linux.
|
||||
- Подключение по Wi-Fi: без проводов USB или Bluetooth.
|
||||
- Сквозное шифрование TLS: безопасность передаваемой информации.
|
||||
|
||||
Обратите внимание, что для работы приложения требуется установка KDE Connect на компьютере. Для поддержки всех функций, версия на компьютере должна быть актуальной и соответствовать версии на Android .
|
||||
|
||||
Информация о чувствительных разрешениях:
|
||||
|
||||
- Разрешение «Специальные возможности»: необходимо для получения ввода с другого устройства при использовании функции дистанционного ввода.
|
||||
- Разрешение «Фоновое определение местоположения»: необходимо для определения текущей Wi-Fi-сети при использовании функции «Доверенные сети».
|
||||
|
||||
KDE Connect никогда не отправляет данные ни в KDE, ни третьим лицам. Передача данных осуществляется напрямую между устройствами через локальную сеть, без использования интернета, с применением сквозного шифрования.
|
||||
Приложение является частью проекта с открытым исходным кодом и существует благодаря сообществу участников. Исходный код доступен на официальном сайте.
|
1
fastlane/metadata/android/ru-RU/short_description.txt
Normal file
1
fastlane/metadata/android/ru-RU/short_description.txt
Normal file
@@ -0,0 +1 @@
|
||||
KDE Connect позволяет соединить смартфон и компьютер
|
1
fastlane/metadata/android/ru-RU/title.txt
Normal file
1
fastlane/metadata/android/ru-RU/title.txt
Normal file
@@ -0,0 +1 @@
|
||||
KDE Connect
|
@@ -1,4 +1,4 @@
|
||||
KDE 連線提供許多功能讓您整合您跨裝置的作業流程:
|
||||
KDE Connect 提供許多功能讓您整合您跨裝置的作業流程:
|
||||
|
||||
- 在您的裝置之間傳輸檔案。
|
||||
- 從您的電腦無線存取您的手機上的檔案。
|
||||
@@ -10,12 +10,12 @@ KDE 連線提供許多功能讓您整合您跨裝置的作業流程:
|
||||
- WiFi 連線:不需要 USB 線或是藍牙連線。
|
||||
- 點對點 TLS 加密:您的資訊是安全的。
|
||||
|
||||
請注意,這個應用程式需要您在電腦上也安裝 KDE 連線才能正常運作;最新功能也會需要電腦的版本跟 Android 的版本一樣新才能正常運作。
|
||||
請注意,這個應用程式需要您在電腦上也安裝 KDE Connect 才能正常運作;最新功能也會需要電腦的版本跟 Android 的版本一樣新才能正常運作。
|
||||
|
||||
敏感權限資訊:
|
||||
* 協助工具權限:如果您使用「遠端輸入」功能,需要它來從另一個裝置接收輸入後控制您的 Android 裝置。
|
||||
* 背景位置權限:如果您使用「信任網路」功能,需要它來得知您目前連線的 WiFi 網路。
|
||||
|
||||
KDE 連線不會傳送任何資訊給 KDE 或任何第三方。KDE 連線利用本地網路直接從一個裝置傳送資料到另一個裝置,不會透過網際網路,並且同時使用點對點加密。
|
||||
KDE Connect 不會傳送任何資訊給 KDE 或任何第三方。KDE Connect 利用本地網路直接從一個裝置傳送資料到另一個裝置,不會透過網際網路,並且同時使用點對點加密。
|
||||
|
||||
這個應用程式是一個開源專案的一部分,它的存在歸功於所有貢獻者。可造訪網站取得原始碼。
|
@@ -1 +1 @@
|
||||
KDE 連線整合了您的智慧型手機與電腦
|
||||
KDE Connect 整合了您的智慧型手機與電腦
|
@@ -1,3 +1,7 @@
|
||||
android.enableJetifier=false
|
||||
android.useAndroidX=true
|
||||
org.gradle.jvmargs=-Xmx4096m
|
||||
org.gradle.caching=true
|
||||
org.gradle.parallel=true
|
||||
# License report doesn't allow us to enable configuration caching
|
||||
#org.gradle.configuration-cache=true
|
@@ -1,47 +1,45 @@
|
||||
[versions]
|
||||
activityCompose = "1.8.2"
|
||||
androidDesugarJdkLibs = "2.0.4"
|
||||
androidGradlePlugin = "8.3.1"
|
||||
activityCompose = "1.10.1"
|
||||
androidDesugarJdkLibs = "2.1.5"
|
||||
androidGradlePlugin = "8.11.0"
|
||||
androidSmsmms = "kdeconnect-1-21-0"
|
||||
appcompat = "1.6.1"
|
||||
appcompat = "1.7.1"
|
||||
bcpkixJdk15on = "1.70"
|
||||
classindex = "3.13"
|
||||
commonsCollections4 = "4.4"
|
||||
commonsIo = "2.16.0"
|
||||
commonsLang3 = "3.14.0"
|
||||
constraintlayoutCompose = "1.0.1"
|
||||
compose-compiler = "1.5.11"
|
||||
coreKtx = "1.12.0"
|
||||
classindexksp = "1.2"
|
||||
commonsCollections4 = "4.5.0"
|
||||
commonsIo = "2.19.0"
|
||||
commonsLang3 = "3.17.0"
|
||||
constraintlayoutCompose = "1.1.1"
|
||||
coreKtx = "1.16.0"
|
||||
dependencyLicenseReport = "2.9"
|
||||
disklrucache = "2.0.2"
|
||||
documentfile = "1.0.1"
|
||||
gradle = "8.3.1"
|
||||
gridlayout = "1.0.0"
|
||||
jsonassert = "1.5.1"
|
||||
documentfile = "1.1.0"
|
||||
gridlayout = "1.1.0"
|
||||
jsonassert = "1.5.3"
|
||||
junit = "4.13.2"
|
||||
dependencyLicenseReport = "1.16"
|
||||
kotlin = "1.9.23"
|
||||
kotlinxCoroutinesCore = "1.8.0"
|
||||
kotlin = "2.2.0"
|
||||
kspPlugin = "2.2.0-2.0.2"
|
||||
kotlinxCoroutinesCore = "1.10.2"
|
||||
lifecycleExtensions = "2.2.0"
|
||||
lifecycleRuntimeKtx = "2.7.0"
|
||||
lifecycleRuntimeKtx = "2.9.1"
|
||||
logger = "1.0.3"
|
||||
material = "1.11.0"
|
||||
material3 = "1.2.1"
|
||||
material = "1.12.0"
|
||||
material3 = "1.3.2"
|
||||
media = "1.7.0"
|
||||
minaCore = "2.0.19"
|
||||
mockitoCore = "3.12.4"
|
||||
powermockModuleJunit4 = "2.0.9"
|
||||
minaCore = "2.2.4"
|
||||
mockitoCore = "5.18.0"
|
||||
preferenceKtx = "1.2.1"
|
||||
reactiveStreams = "1.0.4"
|
||||
recyclerview = "1.3.2"
|
||||
recyclerview = "1.4.0"
|
||||
rxjava = "2.2.21"
|
||||
sshdCore = "0.14.0"
|
||||
sl4j = "2.0.13"
|
||||
sshdCore = "2.15.0"
|
||||
swiperefreshlayout = "1.1.0"
|
||||
uiToolingPreview = "1.6.5"
|
||||
uiToolingPreview = "1.8.3"
|
||||
univocityParsers = "2.9.1"
|
||||
sl4j = "2.0.4"
|
||||
|
||||
[libraries]
|
||||
android-desugarJdkLibs = { module = "com.android.tools:desugar_jdk_libs", version.ref = "androidDesugarJdkLibs" }
|
||||
android-desugarJdkLibsNio = { module = "com.android.tools:desugar_jdk_libs_nio", version.ref = "androidDesugarJdkLibs" }
|
||||
android-smsmms = { module = "org.kde.invent.sredman:android-smsmms", version.ref = "androidSmsmms" }
|
||||
androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "activityCompose" }
|
||||
androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "appcompat" }
|
||||
@@ -61,14 +59,14 @@ androidx-preference-ktx = { module = "androidx.preference:preference-ktx", versi
|
||||
androidx-recyclerview = { module = "androidx.recyclerview:recyclerview", version.ref = "recyclerview" }
|
||||
androidx-swiperefreshlayout = { module = "androidx.swiperefreshlayout:swiperefreshlayout", version.ref = "swiperefreshlayout" }
|
||||
bcpkix-jdk15on = { module = "org.bouncycastle:bcpkix-jdk15on", version.ref = "bcpkixJdk15on" }
|
||||
classindex = { module = "org.atteo.classindex:classindex", version.ref = "classindex" }
|
||||
classindexksp = { module = "com.github.albertvaka:classindexksp", version.ref = "classindexksp" }
|
||||
commons-collections4 = { module = "org.apache.commons:commons-collections4", version.ref = "commonsCollections4" }
|
||||
commons-io = { module = "commons-io:commons-io", version.ref = "commonsIo" }
|
||||
commons-lang3 = { module = "org.apache.commons:commons-lang3", version.ref = "commonsLang3" }
|
||||
disklrucache = { module = "com.jakewharton:disklrucache", version.ref = "disklrucache" }
|
||||
android-gradlePlugin = { module = "com.android.tools.build:gradle", version.ref = "gradle" }
|
||||
jsonassert = { module = "org.skyscreamer:jsonassert", version.ref = "jsonassert" }
|
||||
junit = { module = "junit:junit", version.ref = "junit" }
|
||||
android-gradlePlugin = { module = "com.android.tools.build:gradle", version.ref = "androidGradlePlugin" }
|
||||
kotlin-gradlePlugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
|
||||
kotlin-stdlib-jdk8 = { module = "org.jetbrains.kotlin:kotlin-stdlib-jdk8", version.ref = "kotlin" }
|
||||
kotlinx-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kotlinxCoroutinesCore" }
|
||||
@@ -77,10 +75,10 @@ logger = { module = "com.klinkerapps:logger", version.ref = "logger" }
|
||||
material = { module = "com.google.android.material:material", version.ref = "material" }
|
||||
apache-mina-core = { module = "org.apache.mina:mina-core", version.ref = "minaCore" }
|
||||
apache-sshd-core = { module = "org.apache.sshd:sshd-core", version.ref = "sshdCore" }
|
||||
apache-sshd-sftp = { module = "org.apache.sshd:sshd-sftp", version.ref = "sshdCore" }
|
||||
apache-sshd-scp = { module = "org.apache.sshd:sshd-scp", version.ref = "sshdCore" }
|
||||
apache-sshd-mina = { module = "org.apache.sshd:sshd-mina", version.ref = "sshdCore" }
|
||||
mockito-core = { module = "org.mockito:mockito-core", version.ref = "mockitoCore" }
|
||||
powermock-api-mockito2 = { module = "org.powermock:powermock-api-mockito2", version.ref = "powermockModuleJunit4" }
|
||||
powermock-core = { module = "org.powermock:powermock-core", version.ref = "powermockModuleJunit4" }
|
||||
powermock-module-junit4 = { module = "org.powermock:powermock-module-junit4", version.ref = "powermockModuleJunit4" }
|
||||
reactive-streams = { module = "org.reactivestreams:reactive-streams", version.ref = "reactiveStreams" }
|
||||
rxjava = { module = "io.reactivex.rxjava2:rxjava", version.ref = "rxjava" }
|
||||
univocity-parsers = { module = "com.univocity:univocity-parsers", version.ref = "univocityParsers" }
|
||||
@@ -88,6 +86,7 @@ slf4j-handroid = { group = "com.gitlab.mvysny.slf4j", name = "slf4j-handroid", v
|
||||
|
||||
[plugins]
|
||||
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
|
||||
kotlin-android = { id ="org.jetbrains.kotlin.android", version.ref = "kotlin" }
|
||||
kotlin-kapt = { id = "org.jetbrains.kotlin.kapt", version.ref = "kotlin" }
|
||||
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
|
||||
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
|
||||
ksp = { id = "com.google.devtools.ksp", version.ref = "kspPlugin" }
|
||||
dependencyLicenseReport = { id = "com.github.jk1.dependency-license-report", version.ref = "dependencyLicenseReport" }
|
||||
|
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
6
gradle/wrapper/gradle-wrapper.properties
vendored
6
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,6 +1,8 @@
|
||||
#Sat Mar 02 00:26:28 CET 2024
|
||||
#Sat Sep 28 01:39:16 AM EDT 2024
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.1-bin.zip
|
||||
networkTimeout=10000
|
||||
validateDistributionUrl=true
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
294
gradlew
vendored
294
gradlew
vendored
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env sh
|
||||
#!/bin/sh
|
||||
|
||||
#
|
||||
# Copyright 2015 the original author or authors.
|
||||
# Copyright © 2015-2021 the original authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
@@ -17,78 +17,111 @@
|
||||
#
|
||||
|
||||
##############################################################################
|
||||
##
|
||||
## Gradle start up script for UN*X
|
||||
##
|
||||
#
|
||||
# Gradle start up script for POSIX generated by Gradle.
|
||||
#
|
||||
# Important for running:
|
||||
#
|
||||
# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
|
||||
# noncompliant, but you have some other compliant shell such as ksh or
|
||||
# bash, then to run this script, type that shell name before the whole
|
||||
# command line, like:
|
||||
#
|
||||
# ksh Gradle
|
||||
#
|
||||
# Busybox and similar reduced shells will NOT work, because this script
|
||||
# requires all of these POSIX shell features:
|
||||
# * functions;
|
||||
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
|
||||
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
|
||||
# * compound commands having a testable exit status, especially «case»;
|
||||
# * various built-in commands including «command», «set», and «ulimit».
|
||||
#
|
||||
# Important for patching:
|
||||
#
|
||||
# (2) This script targets any POSIX shell, so it avoids extensions provided
|
||||
# by Bash, Ksh, etc; in particular arrays are avoided.
|
||||
#
|
||||
# The "traditional" practice of packing multiple parameters into a
|
||||
# space-separated string is a well documented source of bugs and security
|
||||
# problems, so this is (mostly) avoided, by progressively accumulating
|
||||
# options in "$@", and eventually passing that to Java.
|
||||
#
|
||||
# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
|
||||
# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
|
||||
# see the in-line comments for details.
|
||||
#
|
||||
# There are tweaks for specific operating systems such as AIX, CygWin,
|
||||
# Darwin, MinGW, and NonStop.
|
||||
#
|
||||
# (3) This script is generated from the Groovy template
|
||||
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# within the Gradle project.
|
||||
#
|
||||
# You can find Gradle at https://github.com/gradle/gradle/.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
# Attempt to set APP_HOME
|
||||
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
app_path=$0
|
||||
|
||||
# Need this for daisy-chained symlinks.
|
||||
while
|
||||
APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
|
||||
[ -h "$app_path" ]
|
||||
do
|
||||
ls=$( ls -ld "$app_path" )
|
||||
link=${ls#*' -> '}
|
||||
case $link in #(
|
||||
/*) app_path=$link ;; #(
|
||||
*) app_path=$APP_HOME$link ;;
|
||||
esac
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >/dev/null
|
||||
APP_HOME="`pwd -P`"
|
||||
cd "$SAVED" >/dev/null
|
||||
|
||||
APP_NAME="Gradle"
|
||||
APP_BASE_NAME=`basename "$0"`
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
# This is normally unused
|
||||
# shellcheck disable=SC2034
|
||||
APP_BASE_NAME=${0##*/}
|
||||
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
|
||||
APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD="maximum"
|
||||
MAX_FD=maximum
|
||||
|
||||
warn () {
|
||||
echo "$*"
|
||||
}
|
||||
} >&2
|
||||
|
||||
die () {
|
||||
echo
|
||||
echo "$*"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
} >&2
|
||||
|
||||
# OS specific support (must be 'true' or 'false').
|
||||
cygwin=false
|
||||
msys=false
|
||||
darwin=false
|
||||
nonstop=false
|
||||
case "`uname`" in
|
||||
CYGWIN* )
|
||||
cygwin=true
|
||||
;;
|
||||
Darwin* )
|
||||
darwin=true
|
||||
;;
|
||||
MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
NONSTOP* )
|
||||
nonstop=true
|
||||
;;
|
||||
case "$( uname )" in #(
|
||||
CYGWIN* ) cygwin=true ;; #(
|
||||
Darwin* ) darwin=true ;; #(
|
||||
MSYS* | MINGW* ) msys=true ;; #(
|
||||
NONSTOP* ) nonstop=true ;;
|
||||
esac
|
||||
|
||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||
|
||||
|
||||
# Determine the Java command to use to start the JVM.
|
||||
if [ -n "$JAVA_HOME" ] ; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
JAVACMD=$JAVA_HOME/jre/sh/java
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
JAVACMD=$JAVA_HOME/bin/java
|
||||
fi
|
||||
if [ ! -x "$JAVACMD" ] ; then
|
||||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
|
||||
@@ -97,87 +130,120 @@ Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
else
|
||||
JAVACMD="java"
|
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
JAVACMD=java
|
||||
if ! command -v java >/dev/null 2>&1
|
||||
then
|
||||
die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
|
||||
MAX_FD_LIMIT=`ulimit -H -n`
|
||||
if [ $? -eq 0 ] ; then
|
||||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
|
||||
MAX_FD="$MAX_FD_LIMIT"
|
||||
fi
|
||||
ulimit -n $MAX_FD
|
||||
if [ $? -ne 0 ] ; then
|
||||
warn "Could not set maximum file descriptor limit: $MAX_FD"
|
||||
fi
|
||||
else
|
||||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
|
||||
fi
|
||||
fi
|
||||
|
||||
# For Darwin, add options to specify how the application appears in the dock
|
||||
if $darwin; then
|
||||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
|
||||
fi
|
||||
|
||||
# For Cygwin or MSYS, switch paths to Windows format before running java
|
||||
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
|
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||
|
||||
# We build the pattern for arguments to be converted via cygpath
|
||||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
|
||||
SEP=""
|
||||
for dir in $ROOTDIRSRAW ; do
|
||||
ROOTDIRS="$ROOTDIRS$SEP$dir"
|
||||
SEP="|"
|
||||
done
|
||||
OURCYGPATTERN="(^($ROOTDIRS))"
|
||||
# Add a user-defined pattern to the cygpath arguments
|
||||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
|
||||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
|
||||
fi
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
i=0
|
||||
for arg in "$@" ; do
|
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
|
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
|
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
|
||||
else
|
||||
eval `echo args$i`="\"$arg\""
|
||||
fi
|
||||
i=`expr $i + 1`
|
||||
done
|
||||
case $i in
|
||||
0) set -- ;;
|
||||
1) set -- "$args0" ;;
|
||||
2) set -- "$args0" "$args1" ;;
|
||||
3) set -- "$args0" "$args1" "$args2" ;;
|
||||
4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
||||
case $MAX_FD in #(
|
||||
max*)
|
||||
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
|
||||
# shellcheck disable=SC2039,SC3045
|
||||
MAX_FD=$( ulimit -H -n ) ||
|
||||
warn "Could not query maximum file descriptor limit"
|
||||
esac
|
||||
case $MAX_FD in #(
|
||||
'' | soft) :;; #(
|
||||
*)
|
||||
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
|
||||
# shellcheck disable=SC2039,SC3045
|
||||
ulimit -n "$MAX_FD" ||
|
||||
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
||||
esac
|
||||
fi
|
||||
|
||||
# Escape application args
|
||||
save () {
|
||||
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
|
||||
echo " "
|
||||
}
|
||||
APP_ARGS=`save "$@"`
|
||||
# Collect all arguments for the java command, stacking in reverse order:
|
||||
# * args from the command line
|
||||
# * the main class name
|
||||
# * -classpath
|
||||
# * -D...appname settings
|
||||
# * --module-path (only if needed)
|
||||
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
|
||||
|
||||
# Collect all arguments for the java command, following the shell quoting and substitution rules
|
||||
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
|
||||
# For Cygwin or MSYS, switch paths to Windows format before running java
|
||||
if "$cygwin" || "$msys" ; then
|
||||
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
|
||||
CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
|
||||
|
||||
JAVACMD=$( cygpath --unix "$JAVACMD" )
|
||||
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
for arg do
|
||||
if
|
||||
case $arg in #(
|
||||
-*) false ;; # don't mess with options #(
|
||||
/?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
|
||||
[ -e "$t" ] ;; #(
|
||||
*) false ;;
|
||||
esac
|
||||
then
|
||||
arg=$( cygpath --path --ignore --mixed "$arg" )
|
||||
fi
|
||||
# Roll the args list around exactly as many times as the number of
|
||||
# args, so each arg winds up back in the position where it started, but
|
||||
# possibly modified.
|
||||
#
|
||||
# NB: a `for` loop captures its iteration list before it begins, so
|
||||
# changing the positional parameters here affects neither the number of
|
||||
# iterations, nor the values presented in `arg`.
|
||||
shift # remove old arg
|
||||
set -- "$@" "$arg" # push replacement arg
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
|
||||
# Collect all arguments for the java command:
|
||||
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
|
||||
# and any embedded shellness will be escaped.
|
||||
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
|
||||
# treated as '${Hostname}' itself on the command line.
|
||||
|
||||
set -- \
|
||||
"-Dorg.gradle.appname=$APP_BASE_NAME" \
|
||||
-classpath "$CLASSPATH" \
|
||||
org.gradle.wrapper.GradleWrapperMain \
|
||||
"$@"
|
||||
|
||||
# Stop when "xargs" is not available.
|
||||
if ! command -v xargs >/dev/null 2>&1
|
||||
then
|
||||
die "xargs is not available"
|
||||
fi
|
||||
|
||||
# Use "xargs" to parse quoted args.
|
||||
#
|
||||
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
|
||||
#
|
||||
# In Bash we could simply go:
|
||||
#
|
||||
# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
|
||||
# set -- "${ARGS[@]}" "$@"
|
||||
#
|
||||
# but POSIX shell has neither arrays nor command substitution, so instead we
|
||||
# post-process each arg (as a line of input to sed) to backslash-escape any
|
||||
# character that might be a shell metacharacter, then use eval to reverse
|
||||
# that process (while maintaining the separation between arguments), and wrap
|
||||
# the whole thing up as a single "set" statement.
|
||||
#
|
||||
# This will of course break if any of these variables contains a newline or
|
||||
# an unmatched quote.
|
||||
#
|
||||
|
||||
eval "set -- $(
|
||||
printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
|
||||
xargs -n1 |
|
||||
sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
|
||||
tr '\n' ' '
|
||||
)" '"$@"'
|
||||
|
||||
exec "$JAVACMD" "$@"
|
||||
|
55
gradlew.bat
vendored
55
gradlew.bat
vendored
@@ -14,7 +14,7 @@
|
||||
@rem limitations under the License.
|
||||
@rem
|
||||
|
||||
@if "%DEBUG%" == "" @echo off
|
||||
@if "%DEBUG%"=="" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
@@ -25,7 +25,8 @@
|
||||
if "%OS%"=="Windows_NT" setlocal
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
if "%DIRNAME%"=="" set DIRNAME=.
|
||||
@rem This is normally unused
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
@@ -40,13 +41,13 @@ if defined JAVA_HOME goto findJavaFromJavaHome
|
||||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if "%ERRORLEVEL%" == "0" goto init
|
||||
if %ERRORLEVEL% equ 0 goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
echo. 1>&2
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
|
||||
echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
|
||||
goto fail
|
||||
|
||||
@@ -54,48 +55,36 @@ goto fail
|
||||
set JAVA_HOME=%JAVA_HOME:"=%
|
||||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
||||
|
||||
if exist "%JAVA_EXE%" goto init
|
||||
if exist "%JAVA_EXE%" goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
echo. 1>&2
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
|
||||
echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
|
||||
goto fail
|
||||
|
||||
:init
|
||||
@rem Get command-line arguments, handling Windows variants
|
||||
|
||||
if not "%OS%" == "Windows_NT" goto win9xME_args
|
||||
|
||||
:win9xME_args
|
||||
@rem Slurp the command line arguments.
|
||||
set CMD_LINE_ARGS=
|
||||
set _SKIP=2
|
||||
|
||||
:win9xME_args_slurp
|
||||
if "x%~1" == "x" goto execute
|
||||
|
||||
set CMD_LINE_ARGS=%*
|
||||
|
||||
:execute
|
||||
@rem Setup the command line
|
||||
|
||||
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
||||
|
||||
|
||||
@rem Execute Gradle
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
|
||||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if "%ERRORLEVEL%"=="0" goto mainEnd
|
||||
if %ERRORLEVEL% equ 0 goto mainEnd
|
||||
|
||||
:fail
|
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||
rem the _cmd.exe /c_ return code!
|
||||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
|
||||
exit /b 1
|
||||
set EXIT_CODE=%ERRORLEVEL%
|
||||
if %EXIT_CODE% equ 0 set EXIT_CODE=1
|
||||
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
|
||||
exit /b %EXIT_CODE%
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
79
po/ar/kdeconnect-android-store-full.po
Normal file
79
po/ar/kdeconnect-android-store-full.po
Normal file
@@ -0,0 +1,79 @@
|
||||
# SPDX-FileCopyrightText: 2025 Zayed Al-Saidi <zayed.alsaidi@gmail.com>
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2025-08-20 21:20+0400\n"
|
||||
"Last-Translator: Zayed Al-Saidi <zayed.alsaidi@gmail.com>\n"
|
||||
"Language-Team: ar\n"
|
||||
"Language: ar\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
|
||||
"X-Generator: Lokalize 23.08.5\n"
|
||||
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
"devices:\n"
|
||||
"\n"
|
||||
"- Transfer files between your devices.\n"
|
||||
"- Access files on your phone from your computer, without wires.\n"
|
||||
"- Shared clipboard: copy and paste between your devices.\n"
|
||||
"- Get notifications for incoming calls and messages on your computer.\n"
|
||||
"- Virtual touchpad: Use your phone screen as your computer's touchpad.\n"
|
||||
"- Notifications sync: Access your phone notifications from your computer and "
|
||||
"reply to messages.\n"
|
||||
"- Multimedia remote control: Use your phone as a remote for Linux media "
|
||||
"players.\n"
|
||||
"- WiFi connection: no USB wire or bluetooth needed.\n"
|
||||
"- End-to-end TLS encryption: your information is safe.\n"
|
||||
"\n"
|
||||
"Please note you will need to install KDE Connect on your computer for this "
|
||||
"app to work, and keep the desktop version up-to-date with the Android "
|
||||
"version for the latest features to work.\n"
|
||||
"\n"
|
||||
"Sensitive permissions information:\n"
|
||||
"* Accessibility permission: Required to receive input from another device to "
|
||||
"control your Android phone, if you use the Remote Input feature.\n"
|
||||
"* Background location permission: Required to know to which WiFi network you "
|
||||
"are connected to, if you use the Trusted Networks feature.\n"
|
||||
"\n"
|
||||
"KDE Connect never sends any information to KDE nor to any third party. KDE "
|
||||
"Connect sends data from one device to the other directly using the local "
|
||||
"network, never through the internet, and using end to end encryption.\n"
|
||||
"\n"
|
||||
"This app is part of an open source project and it exists thanks to all the "
|
||||
"people who contributed to it. Visit the website to grab the source code.\n"
|
||||
msgstr ""
|
||||
"يوفر جسر كِيدِي مجموعة من الميزات لدمج سير عملك عبر الأجهزة:\n"
|
||||
"\n"
|
||||
"- نقل الملفات بين أجهزتك.\n"
|
||||
"- الوصول إلى الملفات الموجودة على هاتفك من حاسوبك، دون أسلاك.\n"
|
||||
"- الحافظة المشتركة: النسخ واللصق بين أجهزتك.\n"
|
||||
"- الحصول على إشعارات للمكالمات والرسائل الواردة على حاسوبك.\n"
|
||||
"- لوحة اللمس افتراضية: استخدم شاشة هاتفك كلوحة لمس لحاسوبك.\n"
|
||||
"- مزامنة الإشعارات: الوصول إلى إشعارات هاتفك من حاسوبك والرد على الرسائل.\n"
|
||||
"- التحكم عن بعد في الوسائط المتعددة: استخدم هاتفك كجهاز تحكم عن بعد لمشغلات "
|
||||
"الوسائط لينكس.\n"
|
||||
"- اتصال واي فاي: لا حاجة إلى سلك يو اس بي أو بلوتوث.\n"
|
||||
"- تعمية TLS من البداية إلى النهاية: معلوماتك آمنة.\n"
|
||||
"\n"
|
||||
"يرجى ملاحظة أنك ستحتاج إلى تثبيت جسر كِيدِي على حاسوبك حتى يعمل هذا التطبيق، "
|
||||
"والحفاظ على تحديث إصدار سطح المكتب بإصدار أندوريد حتى تعمل أحدث الميزات.\n"
|
||||
"\n"
|
||||
"معلومات الأذونات الحساسة:\n"
|
||||
"* إذن إمكانية الوصول: مطلوب لتلقي إدخال من جهاز آخر للتحكم في هاتف أندرويد "
|
||||
"خاص بك، إذا كنت تستخدم ميزة الإدخال عن بُعد.\n"
|
||||
"* إذن تحديد الموقع في الخلفية: مطلوب لمعرفة شبكة واي فاي التي تتصل بها، إذا "
|
||||
"كنت تستخدم ميزة الشبكات الموثوقة.\n"
|
||||
"\n"
|
||||
"لا يرسل جسر كِيدِي أي معلومات إلى كيدي أو إلى أي طرف ثالث. يرسل جسر كِيدِي "
|
||||
"البيانات من جهاز إلى آخر مباشرةً باستخدام الشبكة المحلية، وليس عبر الإنترنت، "
|
||||
"وباستخدام التعمية من البداية إلى النهاية.\n"
|
||||
"\n"
|
||||
"هذا التطبيق جزء من مشروع مفتوح المصدر وهو موجود بفضل جميع الأشخاص الذين "
|
||||
"ساهموا فيه. زر الموقع الإلكتروني للحصول على الشفرة المصدرية.\n"
|
20
po/ar/kdeconnect-android-store-short.po
Normal file
20
po/ar/kdeconnect-android-store-short.po
Normal file
@@ -0,0 +1,20 @@
|
||||
# SPDX-FileCopyrightText: 2025 Zayed Al-Saidi <zayed.alsaidi@gmail.com>
|
||||
#. extracted from ./metadata/android/en-US/short_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2025-05-31 17:30+0400\n"
|
||||
"Last-Translator: Zayed Al-Saidi <zayed.alsaidi@gmail.com>\n"
|
||||
"Language-Team: ar\n"
|
||||
"Language: ar\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
|
||||
"X-Generator: Lokalize 23.08.5\n"
|
||||
|
||||
msgid "KDE Connect integrates your smartphone and computer"
|
||||
msgstr "يدمج جسر كِيدِي هاتفك الذكي مع حاسوبك"
|
85
po/bg/kdeconnect-android-store-full.po
Normal file
85
po/bg/kdeconnect-android-store-full.po
Normal file
@@ -0,0 +1,85 @@
|
||||
# SPDX-FileCopyrightText: 2024 Mincho Kondarev <mkondarev@yahoo.de>
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-07-28 18:31+0200\n"
|
||||
"Last-Translator: Mincho Kondarev <mkondarev@yahoo.de>\n"
|
||||
"Language-Team: Bulgarian <kde-i18n-doc@kde.org>\n"
|
||||
"Language: bg\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 24.07.70\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
"devices:\n"
|
||||
"\n"
|
||||
"- Transfer files between your devices.\n"
|
||||
"- Access files on your phone from your computer, without wires.\n"
|
||||
"- Shared clipboard: copy and paste between your devices.\n"
|
||||
"- Get notifications for incoming calls and messages on your computer.\n"
|
||||
"- Virtual touchpad: Use your phone screen as your computer's touchpad.\n"
|
||||
"- Notifications sync: Access your phone notifications from your computer and "
|
||||
"reply to messages.\n"
|
||||
"- Multimedia remote control: Use your phone as a remote for Linux media "
|
||||
"players.\n"
|
||||
"- WiFi connection: no USB wire or bluetooth needed.\n"
|
||||
"- End-to-end TLS encryption: your information is safe.\n"
|
||||
"\n"
|
||||
"Please note you will need to install KDE Connect on your computer for this "
|
||||
"app to work, and keep the desktop version up-to-date with the Android "
|
||||
"version for the latest features to work.\n"
|
||||
"\n"
|
||||
"Sensitive permissions information:\n"
|
||||
"* Accessibility permission: Required to receive input from another device to "
|
||||
"control your Android phone, if you use the Remote Input feature.\n"
|
||||
"* Background location permission: Required to know to which WiFi network you "
|
||||
"are connected to, if you use the Trusted Networks feature.\n"
|
||||
"\n"
|
||||
"KDE Connect never sends any information to KDE nor to any third party. KDE "
|
||||
"Connect sends data from one device to the other directly using the local "
|
||||
"network, never through the internet, and using end to end encryption.\n"
|
||||
"\n"
|
||||
"This app is part of an open source project and it exists thanks to all the "
|
||||
"people who contributed to it. Visit the website to grab the source code.\n"
|
||||
msgstr ""
|
||||
"KDE Connect предоставя набор от функции за интегриране на вашия работен "
|
||||
"процес на различни устройства:\n"
|
||||
"\n"
|
||||
"- Прехвърляйте файлове между вашите устройства.\n"
|
||||
"- Осъществявайте достъп до файлове на телефона си от компютъра си, без "
|
||||
"кабели.\n"
|
||||
"- Споделен клипборд: копирайте и поставяйте между вашите устройства.\n"
|
||||
"- Получавайте известия за входящи обаждания и съобщения на вашия компютър.\n"
|
||||
"- Виртуален тъчпад: Използвайте екрана на телефона си като тъчпад на "
|
||||
"компютъра.\n"
|
||||
"- Синхронизиране на известия: Достъп до известията на телефона ви от вашия "
|
||||
"компютър и отговаряне на съобщения.\n"
|
||||
"- Мултимедийно дистанционно управление: Използвайте телефона си като "
|
||||
"дистанционно за Linux медийни плейъри.\n"
|
||||
"- WiFi връзка: не е необходим USB кабел или bluetooth.\n"
|
||||
"- TLS криптиране от край до край: информацията ви е в безопасност.\n"
|
||||
"\n"
|
||||
"Моля, имайте предвид, че ще трябва да инсталирате KDE Connect на вашия "
|
||||
"компютър, за да работи това приложение, и поддържайте версията за настолен "
|
||||
"компютър актуална с версията за Android, за да работят най-новите функции.\n"
|
||||
"\n"
|
||||
"Поверителна информация за разрешения:\n"
|
||||
"* Разрешение за достъпност: Изисква се за получаване на вход от друго "
|
||||
"устройство за управление на вашия телефон с Android, ако използвате "
|
||||
"функцията за отдалечено въвеждане.\n"
|
||||
"* Разрешение за местоположение във фонов режим: Изисква се, за да знаете към "
|
||||
"коя WiFi мрежа сте свързани, ако използвате функцията Trusted Networks.\n"
|
||||
"\n"
|
||||
"KDE Connect никога не изпраща никаква информация на KDE или на трета страна. "
|
||||
"KDE Connect изпраща данни от едно устройство на друго директно чрез "
|
||||
"локалната мрежа, никога през интернет, и чрез криптиране от край до край.\n"
|
||||
"\n"
|
||||
"Това приложение е част от проект с отворен код и съществува благодарение на "
|
||||
"всички хора, които са допринесли за него. Посетете уебсайта, за да вземете "
|
||||
"изходния код.\n"
|
19
po/bg/kdeconnect-android-store-short.po
Normal file
19
po/bg/kdeconnect-android-store-short.po
Normal file
@@ -0,0 +1,19 @@
|
||||
# SPDX-FileCopyrightText: 2024 Mincho Kondarev <mkondarev@yahoo.de>
|
||||
#. extracted from ./metadata/android/en-US/short_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-07-28 18:32+0200\n"
|
||||
"Last-Translator: Mincho Kondarev <mkondarev@yahoo.de>\n"
|
||||
"Language-Team: Bulgarian <kde-i18n-doc@kde.org>\n"
|
||||
"Language: bg\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 24.07.70\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
msgid "KDE Connect integrates your smartphone and computer"
|
||||
msgstr "KDE Connect интегрира вашия смартфон и компютър"
|
@@ -63,7 +63,7 @@ msgstr ""
|
||||
"- Obteniu les notificacions de tocades entrants i missatges a l'ordinador.\n"
|
||||
"- Ratolí tàctil virtual: utilitzeu la pantalla del telèfon com a ratolí "
|
||||
"tàctil de l'ordinador.\n"
|
||||
"- Sincronització de notificacions: accediu a les notificacions del telèfon "
|
||||
"- Sincronitzeu les notificacions: accediu a les notificacions del telèfon "
|
||||
"des de l'ordinador i contesteu els missatges.\n"
|
||||
"- Control remot multimèdia: utilitzeu el telèfon com a control remot dels "
|
||||
"reproductors multimèdia Linux.\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2024 Vit Pelcak <vpelcak@suse.cz>
|
||||
# SPDX-FileCopyrightText: 2024 Vit Pelcak <vit@pelcak.org>
|
||||
#. extracted from ./metadata/android/en-US/short_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
|
@@ -1,19 +1,20 @@
|
||||
# Frederik Schwarzer <schwarzer@kde.org>, 2023.
|
||||
# SPDX-FileCopyrightText: 2023 Frederik Schwarzer <schwarzer@kde.org>
|
||||
# SPDX-FileCopyrightText: 2024 tobi <onewayme001@posteo.de>
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Project-Id-Version: kdeconnect-android-store-full\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-06-07 19:50+0200\n"
|
||||
"Last-Translator: Frederik Schwarzer <schwarzer@kde.org>\n"
|
||||
"PO-Revision-Date: 2024-10-02 20:37+0200\n"
|
||||
"Last-Translator: tobi <onewayme001@posteo.de>\n"
|
||||
"Language-Team: German <kde-i18n-de@kde.org>\n"
|
||||
"Language: de\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 23.07.70\n"
|
||||
"X-Generator: Lokalize 21.12.3\n"
|
||||
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
@@ -48,3 +49,41 @@ msgid ""
|
||||
"This app is part of an open source project and it exists thanks to all the "
|
||||
"people who contributed to it. Visit the website to grab the source code.\n"
|
||||
msgstr ""
|
||||
"KDE Connect bietet eine Reihe von Funktionen, um Ihre Arbeitsabläufe über "
|
||||
"verschiedene Geräte zu vereinigen:\n"
|
||||
"\n"
|
||||
"- Daten zwischen Ihren Geräten übertragen.\n"
|
||||
"- Auf Daten auf Ihrem Telefon von Ihrem Computer aus zugreifen, ohne Kabel.\n"
|
||||
"- Geteilte Zwischenablage: Kopieren und Einfügen zwischen Ihren Geräten.\n"
|
||||
"- Erhalten Sie Benachrichtigungen über eingehende Anrufe und Nachrichten auf "
|
||||
"Ihren Computer.\n"
|
||||
"- Virtuelles Touchpad: Verwenden Sie den Bildschirm Ihres Telefons als "
|
||||
"Touchpad für Ihren Computer.\n"
|
||||
"- Abgleich der Benachrichtigungen: Greifen Sie über den Computer auf Ihre "
|
||||
"Telefonbenachrichtigungen zu und antworten Sie auf Nachrichten.\n"
|
||||
"- Multimedia-Fernbedienung: Verwenden Sie Ihr Telefon als Fernbedienung für "
|
||||
"Linux-Medienspieler.\n"
|
||||
"- WLAN-Verbindung: kein USB-Kabel oder Bluetooth erforderlich.\n"
|
||||
"- Ende-zu-Ende-TLS-Verschlüsselung: Ihre Informationen sind sicher.\n"
|
||||
"\n"
|
||||
"Bitte beachten Sie, dass Sie KDE Connect auf Ihrem Computer installieren "
|
||||
"müssen, damit diese App funktioniert und halten Sie die Desktop-Version mit "
|
||||
"der Android-Version auf dem aktuellen Stand, um die neuesten Funktionen "
|
||||
"nutzen zu können.\n"
|
||||
"\n"
|
||||
"Informationen zu sensiblen Berechtigungen:\n"
|
||||
"* Zugriffsberechtigung: Wird benötigt, um Eingaben zur Steuerung ihres "
|
||||
"Android-Telefons von einem anderen Gerät zu erhalten, wenn Sie die "
|
||||
"Ferneingabefunktion verwenden. \n"
|
||||
"* Berechtigung den Standort im Hintergrund zu nutzen: Wird benötigt, um "
|
||||
"festzustellen, mit welchem WLAN-Netzwerk Sie verbunden sind, wenn Sie die "
|
||||
"Funktion „Vertrauenswürdige Netzwerke” verwenden.\n"
|
||||
"\n"
|
||||
"KDE Connect sendet niemals irgendwelche Informationen an KDE oder an Dritte. "
|
||||
"KDE Connect sendet Daten, unter Verwendung einer Ende-zu-Ende-"
|
||||
"Verschlüsselung, über das lokale Netzwerk direkt von einem Gerät zum "
|
||||
"anderen, niemals über das Internet.\n"
|
||||
"\n"
|
||||
"Diese App ist Teil eines Open-Scource-Projekts und besteht Dank all der "
|
||||
"Menschen die dazu beigetragen haben. Besuchen Sie die Internetseite, um sich "
|
||||
"den Quelltext zu holen.\n"
|
||||
|
@@ -1,8 +1,8 @@
|
||||
# Frederik Schwarzer <schwarzer@kde.org>, 2023.
|
||||
# SPDX-FileCopyrightText: 2023 Frederik Schwarzer <schwarzer@kde.org>
|
||||
#. extracted from ./metadata/android/en-US/short_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Project-Id-Version: kdeconnect-android-store-short\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-06-07 19:50+0200\n"
|
||||
|
@@ -1,42 +1,20 @@
|
||||
# Steve Allewell <steve.allewell@gmail.com>, 2023.
|
||||
# SPDX-FileCopyrightText: 2023, 2024 Steve Allewell <steve.allewell@gmail.com>
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-06-17 12:11+0100\n"
|
||||
"PO-Revision-Date: 2024-05-24 19:25+0100\n"
|
||||
"Last-Translator: Steve Allewell <steve.allewell@gmail.com>\n"
|
||||
"Language-Team: British English\n"
|
||||
"Language: en_GB\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 23.03.70\n"
|
||||
"X-Generator: Lokalize 24.02.2\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "KDE Connect provides a set of features to integrate your workflow across "
|
||||
#| "devices:\n"
|
||||
#| "\n"
|
||||
#| "- Shared clipboard: copy and paste between your devices.\n"
|
||||
#| "- Share files and URLs to your computer from any app.\n"
|
||||
#| "- Get notifications for incoming calls and SMS messages on your PC.\n"
|
||||
#| "- Virtual touchpad: Use your phone screen as your computer's touchpad.\n"
|
||||
#| "- Notifications sync: Read your Android notifications from the desktop.\n"
|
||||
#| "- Multimedia remote control: Use your phone as a remote for Linux media "
|
||||
#| "players.\n"
|
||||
#| "- WiFi connection: no USB wire or bluetooth needed.\n"
|
||||
#| "- End-to-end TLS encryption: your information is safe.\n"
|
||||
#| "\n"
|
||||
#| "Please note you will need to install KDE Connect on your computer for "
|
||||
#| "this app to work, and keep the desktop version up-to-date with the "
|
||||
#| "Android version for the latest features to work.\n"
|
||||
#| "\n"
|
||||
#| "This app is part of an open source project and it exists thanks to all "
|
||||
#| "the people who contributed to it. Visit the website to grab the source "
|
||||
#| "code."
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
"devices:\n"
|
||||
@@ -73,11 +51,13 @@ msgstr ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
"devices:\n"
|
||||
"\n"
|
||||
"- Transfer files between your devices.\n"
|
||||
"- Access files on your phone from your computer, without wires.\n"
|
||||
"- Shared clipboard: copy and paste between your devices.\n"
|
||||
"- Share files and URLs to your computer from any app.\n"
|
||||
"- Get notifications for incoming calls and SMS messages on your PC.\n"
|
||||
"- Get notifications for incoming calls and messages on your computer.\n"
|
||||
"- Virtual touchpad: Use your phone screen as your computer's touchpad.\n"
|
||||
"- Notifications sync: Read your Android notifications from the desktop.\n"
|
||||
"- Notifications sync: Access your phone notifications from your computer and "
|
||||
"reply to messages.\n"
|
||||
"- Multimedia remote control: Use your phone as a remote for Linux media "
|
||||
"players.\n"
|
||||
"- WiFi connection: no USB wire or bluetooth needed.\n"
|
||||
@@ -87,5 +67,15 @@ msgstr ""
|
||||
"app to work, and keep the desktop version up-to-date with the Android "
|
||||
"version for the latest features to work.\n"
|
||||
"\n"
|
||||
"Sensitive permissions information:\n"
|
||||
"* Accessibility permission: Required to receive input from another device to "
|
||||
"control your Android phone, if you use the Remote Input feature.\n"
|
||||
"* Background location permission: Required to know to which WiFi network you "
|
||||
"are connected to, if you use the Trusted Networks feature.\n"
|
||||
"\n"
|
||||
"KDE Connect never sends any information to KDE nor to any third party. KDE "
|
||||
"Connect sends data from one device to the other directly using the local "
|
||||
"network, never through the internet, and using end to end encryption.\n"
|
||||
"\n"
|
||||
"This app is part of an open source project and it exists thanks to all the "
|
||||
"people who contributed to it. Visit the website to grab the source code."
|
||||
"people who contributed to it. Visit the website to grab the source code.\n"
|
||||
|
@@ -1,11 +1,15 @@
|
||||
# Víctor Rodrigo Córdoba <vrcordoba@gmail.com>, 2023.
|
||||
# Spanish translations for kdeconnect-android-store-full.po package.
|
||||
# Copyright (C) 2023-2025 This file is copyright:
|
||||
# This file is distributed under the same license as the kdeconnect-android package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2023, 2025 Víctor Rodrigo Córdoba <vrcordoba@gmail.com>
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: kdeconnect-android-store-full\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-09-30 18:49+0200\n"
|
||||
"PO-Revision-Date: 2025-06-09 02:36+0100\n"
|
||||
"Last-Translator: Víctor Rodrigo Córdoba <vrcordoba@gmail.com>\n"
|
||||
"Language-Team: Spanish <kde-l10n-es@kde.org>\n"
|
||||
"Language: es\n"
|
||||
|
@@ -1,11 +1,15 @@
|
||||
# Víctor Rodrigo Córdoba <vrcordoba@gmail.com>, 2023.
|
||||
# Spanish translations for kdeconnect-android-store-short.po package.
|
||||
# Copyright (C) 2023-2025 This file is copyright:
|
||||
# This file is distributed under the same license as the kdeconnect-android package.
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2023, 2025 Víctor Rodrigo Córdoba <vrcordoba@gmail.com>
|
||||
#. extracted from ./metadata/android/en-US/short_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Project-Id-Version: kdeconnect-android-store-short\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-06-10 17:26+0200\n"
|
||||
"PO-Revision-Date: 2025-06-09 02:36+0100\n"
|
||||
"Last-Translator: Víctor Rodrigo Córdoba <vrcordoba@gmail.com>\n"
|
||||
"Language-Team: Spanish <kde-l10n-es@kde.org>\n"
|
||||
"Language: es\n"
|
||||
|
@@ -13,7 +13,6 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 22.12.3\n"
|
||||
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
|
@@ -13,7 +13,6 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 22.12.3\n"
|
||||
|
||||
msgid "KDE Connect integrates your smartphone and computer"
|
||||
msgstr "KDE Connect eheyttää älypuhelimen ja tietokoneen"
|
||||
|
@@ -1,20 +1,20 @@
|
||||
#
|
||||
# SPDX-FileCopyrightText: 2023 Xavier Besnard <xavier.besnard@kde.org>
|
||||
# SPDX-FileCopyrightText: 2023, 2024 Xavier Besnard <xavier.besnard@kde.org>
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: kdeconnect-android-store-full\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-09-28 18:06+0200\n"
|
||||
"Last-Translator: Xavier BESNARD <xavier.besnard@neuf.fr>\n"
|
||||
"Language-Team: French <kde-francophone@kde.org>\n"
|
||||
"PO-Revision-Date: 2024-08-09 22:07+0200\n"
|
||||
"Last-Translator: Xavier Besnard <xavier.besnard@kde.org>\n"
|
||||
"Language-Team: French <French <kde-francophone@kde.org>>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"X-Generator: Lokalize 23.08.1\n"
|
||||
"X-Generator: Lokalize 23.08.5\n"
|
||||
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
@@ -62,7 +62,7 @@ msgstr ""
|
||||
"- Synchronisation de vos notifications : accès à vos notifications "
|
||||
"téléphoniques depuis votre ordinateur et réponses aux messages.\n"
|
||||
"- Télé-commande multimédia : utilisation de votre téléphone comme "
|
||||
"télécommande pour les lecteurs de médias sous Linux.\n"
|
||||
"télécommande pour les lecteurs de média sous Linux.\n"
|
||||
"- Connexion au Wifi : aucun connexion USB ou Bluetooth nécessaire.\n"
|
||||
"- Chiffrement « TLS » de bout en bout : vos informations sont en sécurité.\n"
|
||||
"\n"
|
||||
@@ -83,5 +83,5 @@ msgstr ""
|
||||
"mais jamais par Internet et en utilisant le chiffrement de bout en bout.\n"
|
||||
"\n"
|
||||
"Cette application fait partie d'un projet « Open source ». Il existe grâce à "
|
||||
"toutes les personnes qui y ont contribué.Visitez le site Internet pour "
|
||||
"accéder au code source.\n"
|
||||
"toutes les personnes qui y ont contribué. Veuillez visiter le site Internet "
|
||||
"pour accéder au code source.\n"
|
||||
|
@@ -1,19 +1,19 @@
|
||||
# Xavier Besnard <xavier.besnard@kde.org>, 2023.
|
||||
# SPDX-FileCopyrightText: 2023, 2024 Xavier Besnard <xavier.besnard@kde.org>
|
||||
#. extracted from ./metadata/android/en-US/short_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: kdeconnect-android-store-short\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-06-27 08:54+0200\n"
|
||||
"Last-Translator: Xavier BESNARD <xavier.besnard@neuf.fr>\n"
|
||||
"Language-Team: French <kde-francophone@kde.org>\n"
|
||||
"PO-Revision-Date: 2024-04-25 14:41+0200\n"
|
||||
"Last-Translator: Xavier Besnard <xavier.besnard@kde.org>\n"
|
||||
"Language-Team: French <French <kde-francophone@kde.org>>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"X-Generator: Lokalize 23.04.2\n"
|
||||
"X-Generator: Lokalize 23.08.5\n"
|
||||
|
||||
msgid "KDE Connect integrates your smartphone and computer"
|
||||
msgstr "KDE Connect intègre votre téléphone et votre ordinateur."
|
||||
msgstr "KDEConnect intègre votre téléphone et votre ordinateur."
|
||||
|
85
po/nn/kdeconnect-android-store-full.po
Normal file
85
po/nn/kdeconnect-android-store-full.po
Normal file
@@ -0,0 +1,85 @@
|
||||
# Translation of kdeconnect-android-store-full to Norwegian Nynorsk
|
||||
#
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-07-10 20:18+0200\n"
|
||||
"Last-Translator: Karl Ove Hufthammer <karl@huftis.org>\n"
|
||||
"Language-Team: Norwegian Nynorsk <l10n-no@lister.huftis.org>\n"
|
||||
"Language: nn\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Lokalize 24.05.1\n"
|
||||
"X-Environment: kde\n"
|
||||
"X-Accelerator-Marker: &\n"
|
||||
"X-Text-Markup: kde4\n"
|
||||
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
"devices:\n"
|
||||
"\n"
|
||||
"- Transfer files between your devices.\n"
|
||||
"- Access files on your phone from your computer, without wires.\n"
|
||||
"- Shared clipboard: copy and paste between your devices.\n"
|
||||
"- Get notifications for incoming calls and messages on your computer.\n"
|
||||
"- Virtual touchpad: Use your phone screen as your computer's touchpad.\n"
|
||||
"- Notifications sync: Access your phone notifications from your computer and "
|
||||
"reply to messages.\n"
|
||||
"- Multimedia remote control: Use your phone as a remote for Linux media "
|
||||
"players.\n"
|
||||
"- WiFi connection: no USB wire or bluetooth needed.\n"
|
||||
"- End-to-end TLS encryption: your information is safe.\n"
|
||||
"\n"
|
||||
"Please note you will need to install KDE Connect on your computer for this "
|
||||
"app to work, and keep the desktop version up-to-date with the Android "
|
||||
"version for the latest features to work.\n"
|
||||
"\n"
|
||||
"Sensitive permissions information:\n"
|
||||
"* Accessibility permission: Required to receive input from another device to "
|
||||
"control your Android phone, if you use the Remote Input feature.\n"
|
||||
"* Background location permission: Required to know to which WiFi network you "
|
||||
"are connected to, if you use the Trusted Networks feature.\n"
|
||||
"\n"
|
||||
"KDE Connect never sends any information to KDE nor to any third party. KDE "
|
||||
"Connect sends data from one device to the other directly using the local "
|
||||
"network, never through the internet, and using end to end encryption.\n"
|
||||
"\n"
|
||||
"This app is part of an open source project and it exists thanks to all the "
|
||||
"people who contributed to it. Visit the website to grab the source code.\n"
|
||||
msgstr ""
|
||||
"KDE Connect tilbyr eit sett funksjonar som lèt deg enkelt arbeida på tvers "
|
||||
"av einingar:\n"
|
||||
"\n"
|
||||
"– Overfør filer mellom einingane\n"
|
||||
"– Få trådlaus tilgang til filer på telefonen frå datamaskina\n"
|
||||
"– Del utklippsbilete: kopier og lim inn mellom einingane\n"
|
||||
"– Vert varsla på datamaskina om innkommande samtalar og tekstmeldingar\n"
|
||||
"– Virtuell styreplate: bruk telefonskjermen som styreplate for datamaskina\n"
|
||||
"– Synkronisering av varslingar: få tilgang til telefonvarslingar frå "
|
||||
"datamaskina og svar på meldingar\n"
|
||||
"– Fjernkontroll av medieavspeling: bruk telefonen til å styra Linux-baserte "
|
||||
"mediespelarar\n"
|
||||
"– Wi-Fi-tilkopling: du treng ikkje USB- eller Bluetooth-tilkopling\n"
|
||||
"– Ende-til-ende-kryptering: informasjonen din er trygg\n"
|
||||
"\n"
|
||||
"Merk at du må installera KDE Connect på datamaskina for å kunna bruka appen. "
|
||||
"Hugs å halda PC-versjonen oppdatert med Android-versjonen for tilgang til "
|
||||
"dei nyaste funksjonane.\n"
|
||||
"\n"
|
||||
"Informasjon om sensitive løyve:\n"
|
||||
"– Tilgjenge-løyve: Trengst for å kunna ta imot tastetrykk frå PC for å styra "
|
||||
"Android-eininga om du brukar funksjonen «Fjernstyring»\n"
|
||||
"– Bakgrunnsløyve til å sjå geografiske posisjon: Trengst for å veta kva Wi-"
|
||||
"Fi-nettverk du er tilkopla om du brukar funksjonen «Tiltrudde nettverk»\n"
|
||||
"\n"
|
||||
"KDE Connect sender aldri informasjon til KDE eller nokon tredjepart. "
|
||||
"Programmet sender data direkte mellom dei to einingane via lokalnettet, "
|
||||
"aldri via Internett og alltid med ende-til-ende-kryptering.\n"
|
||||
"\n"
|
||||
"Appen er ein del av eit fri programvare-prosjekt og er blitt til takka vera "
|
||||
"mange bidragsytarar. Gå til heimesida for å sjå kjeldekoden.\n"
|
@@ -12,7 +12,6 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 23.04.3\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
|
||||
"|| n%100>=20) ? 1 : 2);\n"
|
||||
|
||||
|
@@ -12,7 +12,6 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 23.04.3\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
|
||||
"|| n%100>=20) ? 1 : 2);\n"
|
||||
|
||||
|
@@ -1,53 +1,21 @@
|
||||
# Geraldo Simiao <geraldosimiao@fedoraproject.org>, 2023.
|
||||
# Frederico Goncalves Guimaraes <frederico@teia.bio.br>, 2024.
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-08-04 01:33-0300\n"
|
||||
"Last-Translator: Geraldo Simiao <geraldosimiao@fedoraproject.org>\n"
|
||||
"PO-Revision-Date: 2024-08-28 17:37-0300\n"
|
||||
"Last-Translator: Frederico Goncalves Guimaraes <frederico@teia.bio.br>\n"
|
||||
"Language-Team: Brazilian Portuguese <kde-i18n-pt_BR@kde.org>\n"
|
||||
"Language: pt_BR\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 23.04.3\n"
|
||||
"X-Generator: Lokalize 22.12.3\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
#, fuzzy
|
||||
#| msgid ""
|
||||
#| "KDE Connect provides a set of features to integrate your workflow across "
|
||||
#| "devices:\n"
|
||||
#| "\n"
|
||||
#| "- Shared clipboard: copy and paste between your devices.\n"
|
||||
#| "- Share files and URLs to your computer from any app.\n"
|
||||
#| "- Get notifications for incoming calls and SMS messages on your PC.\n"
|
||||
#| "- Virtual touchpad: Use your phone screen as your computer's touchpad.\n"
|
||||
#| "- Notifications sync: Read your Android notifications from the desktop.\n"
|
||||
#| "- Multimedia remote control: Use your phone as a remote for Linux media "
|
||||
#| "players.\n"
|
||||
#| "- WiFi connection: no USB wire or bluetooth needed.\n"
|
||||
#| "- End-to-end TLS encryption: your information is safe.\n"
|
||||
#| "\n"
|
||||
#| "Please note you will need to install KDE Connect on your computer for "
|
||||
#| "this app to work, and keep the desktop version up-to-date with the "
|
||||
#| "Android version for the latest features to work.\n"
|
||||
#| "\n"
|
||||
#| "Sensitive permissions information:\n"
|
||||
#| "* Accessibility permission: Required to receive input from another device "
|
||||
#| "to control your Android phone, if you use the Remote Input feature.\n"
|
||||
#| "* Background location permission: Required to know to which WiFi network "
|
||||
#| "you are connected to, if you use the Trusted Networks feature.\n"
|
||||
#| "\n"
|
||||
#| "KDE Connect never sends any information to KDE nor to any third party. "
|
||||
#| "KDE Connect sends data from one device to the other directly using the "
|
||||
#| "local network, never through the internet, and using end to end "
|
||||
#| "encryption.\n"
|
||||
#| "\n"
|
||||
#| "This app is part of an open source project and it exists thanks to all "
|
||||
#| "the people who contributed to it. Visit the website to grab the source "
|
||||
#| "code.\n"
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
"devices:\n"
|
||||
@@ -84,15 +52,16 @@ msgstr ""
|
||||
"O KDE Connect fornece um conjunto de recursos para integrar seu fluxo de "
|
||||
"trabalho entre dispositivos:\n"
|
||||
"\n"
|
||||
"- Transfira arquivos entre seus dispositivos.\n"
|
||||
"- Acesse arquivos do seu computador no seu telefone, sem fios.\n"
|
||||
"- Área de transferência compartilhada: copie e cole entre seus "
|
||||
"dispositivos.\n"
|
||||
"- Compartilhe arquivos e URLs em seu computador a partir de qualquer app.\n"
|
||||
"- Receba notificações de chamadas recebidas e mensagens SMS no seu PC.\n"
|
||||
"- Touchpad virtual: use a tela do telefone como touchpad do computador.\n"
|
||||
"- Sincronização de notificações: leia as notificações do seu Android na área "
|
||||
"de trabalho.\n"
|
||||
"- Sincronização de notificações: acesse as notificações do seu telefone no "
|
||||
"seu computador e responda as mensagens.\n"
|
||||
"- Controle remoto multimídia: use seu telefone como controle remoto para "
|
||||
"reprodutores de mídia Linux.\n"
|
||||
"reprodutores de mídia no Linux.\n"
|
||||
"- Conexão Wi-Fi: sem necessidade de cabos USB ou bluetooth.\n"
|
||||
"- Criptografia TLS de ponta a ponta: suas informações estão seguras.\n"
|
||||
"\n"
|
||||
@@ -100,14 +69,14 @@ msgstr ""
|
||||
"este aplicativo funcione e mantenha a versão para desktop atualizada com a "
|
||||
"versão do Android para que os recursos mais recentes funcionem.\n"
|
||||
"\n"
|
||||
"Informações a respeito de permissões especiais :\n"
|
||||
"Informações sobre permissões sensíveis:\n"
|
||||
"* Permissão de acessibilidade: necessária para receber entrada de outro "
|
||||
"dispositivo para controlar seu telefone Android, se você usar o recurso de "
|
||||
"entrada remota.\n"
|
||||
"* Permissão de localização em segundo plano: necessária para saber a qual "
|
||||
"rede Wi-Fi você está conectado, se você usar o recurso de redes confiáveis.\n"
|
||||
"\n"
|
||||
"O KDE Connect nunca envia nenhuma informação ao KDE nem a terceiros. O KDE "
|
||||
"O KDE Connect nunca envia nenhuma informação ao KDE ou a terceiros. O KDE "
|
||||
"Connect envia dados de um dispositivo para outro diretamente usando a rede "
|
||||
"local, nunca pela Internet e usando criptografia de ponta a ponta.\n"
|
||||
"\n"
|
||||
|
83
po/ru/kdeconnect-android-store-full.po
Normal file
83
po/ru/kdeconnect-android-store-full.po
Normal file
@@ -0,0 +1,83 @@
|
||||
# Alexander Yavorskiy <kekcuha@gmail.com>, 2025.
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2025-05-30 20:22+0200\n"
|
||||
"Last-Translator: Alexander Yavorskiy <kekcuha@gmail.com>\n"
|
||||
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
||||
"Language: ru\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 21.08.3\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
||||
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
"devices:\n"
|
||||
"\n"
|
||||
"- Transfer files between your devices.\n"
|
||||
"- Access files on your phone from your computer, without wires.\n"
|
||||
"- Shared clipboard: copy and paste between your devices.\n"
|
||||
"- Get notifications for incoming calls and messages on your computer.\n"
|
||||
"- Virtual touchpad: Use your phone screen as your computer's touchpad.\n"
|
||||
"- Notifications sync: Access your phone notifications from your computer and "
|
||||
"reply to messages.\n"
|
||||
"- Multimedia remote control: Use your phone as a remote for Linux media "
|
||||
"players.\n"
|
||||
"- WiFi connection: no USB wire or bluetooth needed.\n"
|
||||
"- End-to-end TLS encryption: your information is safe.\n"
|
||||
"\n"
|
||||
"Please note you will need to install KDE Connect on your computer for this "
|
||||
"app to work, and keep the desktop version up-to-date with the Android "
|
||||
"version for the latest features to work.\n"
|
||||
"\n"
|
||||
"Sensitive permissions information:\n"
|
||||
"* Accessibility permission: Required to receive input from another device to "
|
||||
"control your Android phone, if you use the Remote Input feature.\n"
|
||||
"* Background location permission: Required to know to which WiFi network you "
|
||||
"are connected to, if you use the Trusted Networks feature.\n"
|
||||
"\n"
|
||||
"KDE Connect never sends any information to KDE nor to any third party. KDE "
|
||||
"Connect sends data from one device to the other directly using the local "
|
||||
"network, never through the internet, and using end to end encryption.\n"
|
||||
"\n"
|
||||
"This app is part of an open source project and it exists thanks to all the "
|
||||
"people who contributed to it. Visit the website to grab the source code.\n"
|
||||
msgstr ""
|
||||
"KDE Connect предоставляет набор функций для интеграции рабочего процесса "
|
||||
"между устройствами:\n"
|
||||
"- Передача файлов между устройствами.\n"
|
||||
"- Доступ к файлам на телефоне с компьютера без проводов.\n"
|
||||
"- Общий буфер обмена: копирование и вставка между устройствами.\n"
|
||||
"- Уведомления о входящих вызовах и сообщениях на компьютере.\n"
|
||||
"- Виртуальный тачпад: использование экрана телефона в качестве тачпада для "
|
||||
"компьютера.\n"
|
||||
"- Синхронизация уведомлений: доступ к уведомлениям телефона с компьютера и "
|
||||
"возможность отвечать на сообщения.\n"
|
||||
"- Дистанционное управление мультимедиа: использование телефона как пульта "
|
||||
"для медиаплееров в Linux.\n"
|
||||
"- Подключение по Wi-Fi: без проводов USB или Bluetooth.\n"
|
||||
"- Сквозное шифрование TLS: безопасность передаваемой информации.\n"
|
||||
"\n"
|
||||
"Обратите внимание, что для работы приложения требуется установка KDE Connect "
|
||||
"на компьютере. Для поддержки всех функций, версия на компьютере должна быть "
|
||||
"актуальной и соответствовать версии на Android .\n"
|
||||
"\n"
|
||||
"Информация о чувствительных разрешениях:\n"
|
||||
"\n"
|
||||
"- Разрешение «Специальные возможности»: необходимо для получения ввода с "
|
||||
"другого устройства при использовании функции дистанционного ввода.\n"
|
||||
"- Разрешение «Фоновое определение местоположения»: необходимо для "
|
||||
"определения текущей Wi-Fi-сети при использовании функции «Доверенные сети».\n"
|
||||
"\n"
|
||||
"KDE Connect никогда не отправляет данные ни в KDE, ни третьим лицам. "
|
||||
"Передача данных осуществляется напрямую между устройствами через локальную "
|
||||
"сеть, без использования интернета, с применением сквозного шифрования.\n"
|
||||
"Приложение является частью проекта с открытым исходным кодом и существует "
|
||||
"благодаря сообществу участников. Исходный код доступен на официальном "
|
||||
"сайте.\n"
|
20
po/ru/kdeconnect-android-store-short.po
Normal file
20
po/ru/kdeconnect-android-store-short.po
Normal file
@@ -0,0 +1,20 @@
|
||||
# Alexander Yavorskiy <kekcuha@gmail.com>, 2025.
|
||||
#. extracted from ./metadata/android/en-US/short_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2025-05-30 20:17+0200\n"
|
||||
"Last-Translator: Alexander Yavorskiy <kekcuha@gmail.com>\n"
|
||||
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
||||
"Language: ru\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 21.08.3\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
||||
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
|
||||
msgid "KDE Connect integrates your smartphone and computer"
|
||||
msgstr "KDE Connect позволяет соединить смартфон и компьютер"
|
@@ -1,4 +1,4 @@
|
||||
# Stefan Asserhäll <stefan.asserhall@bredband.net>, 2023.
|
||||
# Stefan Asserhäll <stefan.asserhall@gmail.com>, 2023.
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
@@ -6,7 +6,7 @@ msgstr ""
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-09-29 22:08+0200\n"
|
||||
"Last-Translator: Stefan Asserhäll <stefan.asserhall@bredband.net>\n"
|
||||
"Last-Translator: Stefan Asserhäll <stefan.asserhall@gmail.com>\n"
|
||||
"Language-Team: Swedish <kde-i18n-doc@kde.org>\n"
|
||||
"Language: sv\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Stefan Asserhäll <stefan.asserhall@bredband.net>, 2023.
|
||||
# Stefan Asserhäll <stefan.asserhall@gmail.com>, 2023.
|
||||
#. extracted from ./metadata/android/en-US/short_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
@@ -6,7 +6,7 @@ msgstr ""
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-07-31 08:17+0200\n"
|
||||
"Last-Translator: Stefan Asserhäll <stefan.asserhall@bredband.net>\n"
|
||||
"Last-Translator: Stefan Asserhäll <stefan.asserhall@gmail.com>\n"
|
||||
"Language-Team: Swedish <kde-i18n-doc@kde.org>\n"
|
||||
"Language: sv\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@@ -4,7 +4,7 @@ msgstr ""
|
||||
"Project-Id-Version: kdeorg\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-04-10 19:56\n"
|
||||
"PO-Revision-Date: 2024-04-21 04:51\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Chinese Simplified\n"
|
||||
"Language: zh_CN\n"
|
||||
|
@@ -4,7 +4,7 @@ msgstr ""
|
||||
"Project-Id-Version: kdeorg\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2024-04-10 19:56\n"
|
||||
"PO-Revision-Date: 2024-04-21 04:51\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Chinese Simplified\n"
|
||||
"Language: zh_CN\n"
|
||||
|
@@ -1,19 +1,20 @@
|
||||
# Kisaragi Hiu <mail@kisaragi-hiu.com>, 2023.
|
||||
# taijuin <taijuin@gmail.com>, 2024.
|
||||
#. extracted from ./metadata/android/en-US/full_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-12-09 17:51+0900\n"
|
||||
"Last-Translator: Kisaragi Hiu <mail@kisaragi-hiu.com>\n"
|
||||
"PO-Revision-Date: 2024-11-12 19:04+0800\n"
|
||||
"Last-Translator: taijuin <taijuin@gmail.com>\n"
|
||||
"Language-Team: Traditional Chinese <zh-l10n@lists.slat.org>\n"
|
||||
"Language: zh_TW\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 24.01.80\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Poedit 3.5\n"
|
||||
|
||||
msgid ""
|
||||
"KDE Connect provides a set of features to integrate your workflow across "
|
||||
@@ -48,7 +49,7 @@ msgid ""
|
||||
"This app is part of an open source project and it exists thanks to all the "
|
||||
"people who contributed to it. Visit the website to grab the source code.\n"
|
||||
msgstr ""
|
||||
"KDE 連線提供許多功能讓您整合您跨裝置的作業流程:\n"
|
||||
"KDE Connect 提供許多功能讓您整合您跨裝置的作業流程:\n"
|
||||
"\n"
|
||||
"- 在您的裝置之間傳輸檔案。\n"
|
||||
"- 從您的電腦無線存取您的手機上的檔案。\n"
|
||||
@@ -60,8 +61,8 @@ msgstr ""
|
||||
"- WiFi 連線:不需要 USB 線或是藍牙連線。\n"
|
||||
"- 點對點 TLS 加密:您的資訊是安全的。\n"
|
||||
"\n"
|
||||
"請注意,這個應用程式需要您在電腦上也安裝 KDE 連線才能正常運作;最新功能也會需"
|
||||
"要電腦的版本跟 Android 的版本一樣新才能正常運作。\n"
|
||||
"請注意,這個應用程式需要您在電腦上也安裝 KDE Connect 才能正常運作;最新功能也"
|
||||
"會需要電腦的版本跟 Android 的版本一樣新才能正常運作。\n"
|
||||
"\n"
|
||||
"敏感權限資訊:\n"
|
||||
"* 協助工具權限:如果您使用「遠端輸入」功能,需要它來從另一個裝置接收輸入後控"
|
||||
@@ -69,8 +70,8 @@ msgstr ""
|
||||
"* 背景位置權限:如果您使用「信任網路」功能,需要它來得知您目前連線的 WiFi 網"
|
||||
"路。\n"
|
||||
"\n"
|
||||
"KDE 連線不會傳送任何資訊給 KDE 或任何第三方。KDE 連線利用本地網路直接從一個裝"
|
||||
"置傳送資料到另一個裝置,不會透過網際網路,並且同時使用點對點加密。 \n"
|
||||
"KDE Connect 不會傳送任何資訊給 KDE 或任何第三方。KDE Connect 利用本地網路直接"
|
||||
"從一個裝置傳送資料到另一個裝置,不會透過網際網路,並且同時使用點對點加密。 \n"
|
||||
"\n"
|
||||
"這個應用程式是一個開源專案的一部分,它的存在歸功於所有貢獻者。可造訪網站取得"
|
||||
"原始碼。\n"
|
||||
|
@@ -1,19 +1,20 @@
|
||||
# Kisaragi Hiu <mail@kisaragi-hiu.com>, 2023.
|
||||
# taijuin <taijuin@gmail.com>, 2024.
|
||||
#. extracted from ./metadata/android/en-US/short_description.txt
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-05 12:31+0000\n"
|
||||
"PO-Revision-Date: 2023-12-09 17:39+0900\n"
|
||||
"Last-Translator: Kisaragi Hiu <mail@kisaragi-hiu.com>\n"
|
||||
"PO-Revision-Date: 2024-11-12 19:00+0800\n"
|
||||
"Last-Translator: taijuin <taijuin@gmail.com>\n"
|
||||
"Language-Team: Traditional Chinese <zh-l10n@lists.slat.org>\n"
|
||||
"Language: zh_TW\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Lokalize 24.01.80\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Poedit 3.5\n"
|
||||
|
||||
msgid "KDE Connect integrates your smartphone and computer"
|
||||
msgstr "KDE 連線整合了您的智慧型手機與電腦"
|
||||
msgstr "KDE Connect 整合了您的智慧型手機與電腦"
|
||||
|
25
proguard-rules.pro
vendored
25
proguard-rules.pro
vendored
@@ -17,29 +17,10 @@
|
||||
#}
|
||||
|
||||
-dontobfuscate
|
||||
|
||||
-dontwarn org.spongycastle.**
|
||||
-dontwarn org.apache.sshd.**
|
||||
-dontwarn org.apache.mina.**
|
||||
-dontwarn org.slf4j.**
|
||||
-dontwarn io.netty.**
|
||||
|
||||
-keepattributes SourceFile,LineNumberTable,Signature,*Annotation*
|
||||
|
||||
-keep class org.spongycastle.** {*;}
|
||||
|
||||
# SSHd requires mina, and mina uses reflection so some classes would get deleted
|
||||
-keep class org.apache.mina.** {*;}
|
||||
-keep class org.apache.sshd.** {*;}
|
||||
|
||||
-keep class org.kde.kdeconnect.** {*;}
|
||||
|
||||
-dontwarn org.mockito.**
|
||||
-dontwarn sun.reflect.**
|
||||
-dontwarn android.test.**
|
||||
-dontwarn java.lang.management.**
|
||||
-dontwarn javax.**
|
||||
# SSHd requires mina, and mina uses reflection so some classes would get deleted
|
||||
-keep class org.apache.sshd.** {*;}
|
||||
-dontwarn org.apache.sshd.**
|
||||
|
||||
-dontwarn android.net.ConnectivityManager
|
||||
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
|
||||
-dontwarn android.net.LinkProperties
|
||||
|
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@color/primary" android:state_checked="true" />
|
||||
<item android:drawable="@color/darkStatusBarBackground" android:state_checked="false" />
|
||||
</selector>
|
@@ -6,21 +6,5 @@
|
||||
android:viewportHeight="108">
|
||||
<path
|
||||
android:pathData="m0,0h108v108h-108z"
|
||||
android:fillColor="@color/accent"/>
|
||||
<path
|
||||
android:pathData="m0,0h108v108h-108z"
|
||||
android:strokeAlpha="0.2"
|
||||
android:fillAlpha="0.2">
|
||||
<aapt:attr name="android:fillColor">
|
||||
<gradient
|
||||
android:startY="0"
|
||||
android:endY="108"
|
||||
android:startX="0"
|
||||
android:endX="0"
|
||||
android:type="linear">
|
||||
<item android:offset="0" android:color="#FFFFFFFF"/>
|
||||
<item android:offset="1" android:color="#00FFFFFF"/>
|
||||
</gradient>
|
||||
</aapt:attr>
|
||||
</path>
|
||||
android:fillColor="@color/launcher_background"/>
|
||||
</vector>
|
||||
|
10
res/drawable-v24/ic_launcher_banner_background.xml
Normal file
10
res/drawable-v24/ic_launcher_banner_background.xml
Normal file
@@ -0,0 +1,10 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:aapt="http://schemas.android.com/aapt"
|
||||
android:width="320dp"
|
||||
android:height="180dp"
|
||||
android:viewportWidth="108"
|
||||
android:viewportHeight="108">
|
||||
<path
|
||||
android:pathData="m0,0h320v108h-320z"
|
||||
android:fillColor="@color/launcher_background"/>
|
||||
</vector>
|
104
res/drawable-v24/ic_launcher_banner_foreground.xml
Normal file
104
res/drawable-v24/ic_launcher_banner_foreground.xml
Normal file
@@ -0,0 +1,104 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:aapt="http://schemas.android.com/aapt"
|
||||
android:width="320dp"
|
||||
android:height="180dp"
|
||||
android:viewportWidth="108"
|
||||
android:viewportHeight="108">
|
||||
<group android:scaleX="0.6666667"
|
||||
android:scaleY="0.6666667"
|
||||
android:translateX="18"
|
||||
android:translateY="18">
|
||||
<group android:scaleX="0.6525"
|
||||
android:scaleY="1.16"
|
||||
android:translateX="-10.395"
|
||||
android:translateY="-8.64">
|
||||
<group android:scaleX="0.8"
|
||||
android:scaleY="0.8"
|
||||
android:translateX="10.8"
|
||||
android:translateY="10.8">
|
||||
<path
|
||||
android:pathData="M40,27L68,27A2,2 0,0 1,70 29L70,79A2,2 0,0 1,68 81L40,81A2,2 0,0 1,38 79L38,29A2,2 0,0 1,40 27z"
|
||||
android:strokeWidth="1.73436">
|
||||
<aapt:attr name="android:fillColor">
|
||||
<gradient
|
||||
android:startY="27"
|
||||
android:startX="38"
|
||||
android:endY="81"
|
||||
android:endX="38"
|
||||
android:type="linear">
|
||||
<item android:offset="0" android:color="#FFF5F5F5"/>
|
||||
<item android:offset="1" android:color="#FFF0F0F0"/>
|
||||
</gradient>
|
||||
</aapt:attr>
|
||||
</path>
|
||||
<path
|
||||
android:pathData="m41,30h26v48h-26z"
|
||||
android:strokeWidth="1.00241"
|
||||
android:fillColor="#2d2d2d"/>
|
||||
<path
|
||||
android:pathData="M50.25,28.25L57.75,28.25A0.25,0.25 0,0 1,58 28.5L58,28.5A0.25,0.25 0,0 1,57.75 28.75L50.25,28.75A0.25,0.25 0,0 1,50 28.5L50,28.5A0.25,0.25 0,0 1,50.25 28.25z"
|
||||
android:strokeWidth=".632455"
|
||||
android:fillColor="#2d2d2d"/>
|
||||
<path
|
||||
android:pathData="m47.694,47.379c-0.04,0.004 -0.083,0.015 -0.113,0.045 0,0 -1.381,1.381 -1.381,1.381 -0.058,0.058 -0.065,0.147 -0.023,0.218 0,0 1.614,2.665 1.614,2.665 -0.287,0.482 -0.519,0.999 -0.683,1.547 0,0 -2.965,0.616 -2.965,0.616 -0.083,0.017 -0.143,0.096 -0.143,0.18v1.952c0,0.083 0.063,0.153 0.143,0.173 0,0 2.875,0.698 2.875,0.698 0.154,0.634 0.391,1.241 0.706,1.794 0,0 -1.667,2.538 -1.667,2.538 -0.046,0.071 -0.037,0.165 0.023,0.225 0,0 1.381,1.381 1.381,1.381 0.058,0.058 0.147,0.065 0.218,0.023 0,0 2.613,-1.584 2.613,-1.584 0.512,0.296 1.067,0.533 1.652,0.691 0,0 0.608,2.928 0.608,2.928 0.017,0.083 0.088,0.143 0.173,0.143h1.952c0.082,0 0.153,-0.055 0.173,-0.135 0,0 0.721,-2.943 0.721,-2.943 0.603,-0.163 1.171,-0.404 1.697,-0.713 0,0 2.575,1.689 2.575,1.689 0.071,0.046 0.165,0.037 0.225,-0.023 0,0 1.374,-1.381 1.374,-1.381 0.058,-0.058 0.073,-0.147 0.03,-0.218 0,0 -0.938,-1.547 -0.938,-1.547s-0.308,0.098 -0.308,0.098c-0.044,0.014 -0.094,-0.006 -0.12,-0.045 0,0 -0.593,-0.872 -1.366,-2.005 -0.925,1.81 -2.812,3.048 -4.985,3.048 -3.088,0 -5.593,-2.505 -5.593,-5.593 0,-2.271 1.358,-4.222 3.303,-5.098v-1.441c-0.354,0.124 -0.696,0.273 -1.021,0.45 -0.001,-0 0.001,-0.007 0,-0.007 0,0 -2.635,-1.727 -2.635,-1.727 -0.035,-0.023 -0.073,-0.027 -0.113,-0.023 0,0 0,0 0,-0zM55.659,43.85s-3.514,0.338 -3.514,0.338v14.475s3.476,-0.526 3.476,-0.526v-6.171s4.677,6.847 4.677,6.847 3.664,-1.164 3.664,-1.164 -4.79,-6.584 -4.79,-6.584 4.827,-6.209 4.827,-6.209 -3.739,-0.856 -3.739,-0.856 -4.64,6.209 -4.64,6.209 0.038,-6.359 0.038,-6.359z"
|
||||
android:fillColor="#f2f2f2"/>
|
||||
<path
|
||||
android:pathData="m41,30h22l-18,45h-4z"
|
||||
android:strokeAlpha="0.1"
|
||||
android:fillAlpha="0.1">
|
||||
<aapt:attr name="android:fillColor">
|
||||
<gradient
|
||||
android:startY="30"
|
||||
android:startX="41"
|
||||
android:endY="70"
|
||||
android:endX="60"
|
||||
android:type="linear">
|
||||
<item android:offset="0" android:color="#FFFFFFFD"/>
|
||||
<item android:offset="1" android:color="#00FFFFFD"/>
|
||||
</gradient>
|
||||
</aapt:attr>
|
||||
</path>
|
||||
<path
|
||||
android:fillColor="#FF000000"
|
||||
android:pathData="m38,78v1c0,1.108 0.892,2 2,2h28c1.108,0 2,-0.892 2,-2v-1c0,1.108 -0.892,2 -2,2h-28c-1.108,0 -2,-0.892 -2,-2z"
|
||||
android:strokeAlpha="0.1"
|
||||
android:strokeWidth="1.73436"
|
||||
android:fillAlpha="0.1"/>
|
||||
<path
|
||||
android:pathData="m70,30v-1c0,-1.108 -0.892,-2 -2,-2h-28c-1.108,0 -2,0.892 -2,2v1c0,-1.108 0.892,-2 2,-2h28c1.108,0 2,0.892 2,2z"
|
||||
android:strokeAlpha="0.5"
|
||||
android:strokeWidth="1.73436"
|
||||
android:fillColor="#fffff8"
|
||||
android:fillAlpha="0.5"/>
|
||||
</group>
|
||||
</group>
|
||||
|
||||
<group android:scaleX="0.075"
|
||||
android:scaleY="0.16"
|
||||
android:translateX="40"
|
||||
android:translateY="36">
|
||||
<group android:translateY="153.93605">
|
||||
<path android:pathData="M83.375,-0L58.03125,-0L39.453125,-40.609375L32.546875,-35.421875L32.546875,-0L9.796875,-0L9.796875,-102.8125L32.546875,-102.8125L32.546875,-56.734375Q33.546875,-59.765625,35.34375,-63Q37.15625,-66.234375,39.171875,-69.984375L58.75,-102.8125L83.375,-102.8125L55.734375,-56.875L83.375,-0Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
<path android:pathData="M165.9375,-53.28125Q165.9375,-27.359375,153.84375,-13.671875Q141.75,0,119.859375,0L92.796875,0L92.796875,-102.8125L121.734375,-102.8125Q142.76562,-102.8125,154.34375,-90.0625Q165.9375,-77.328125,165.9375,-53.28125ZM142.46875,-52.421875Q142.46875,-68.6875,137.20312,-76.09375Q131.95312,-83.515625,121.734375,-83.515625L115.546875,-83.515625L115.546875,-19.4375L120.15625,-19.4375Q131.67188,-19.4375,137.0625,-27.578125Q142.46875,-35.71875,142.46875,-52.421875Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
<path android:pathData="M234.34375,0L182.79688,0L182.79688,-102.8125L234.34375,-102.8125L234.34375,-83.8125L205.54688,-83.8125L205.54688,-62.78125L232.1875,-62.78125L232.1875,-43.78125L205.54688,-43.78125L205.54688,-19.296875L234.34375,-19.296875L234.34375,0Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
<path android:pathData="M318.67188,-84.953125Q309.59375,-84.953125,304.84375,-75.671875Q300.09375,-66.390625,300.09375,-51.125Q300.09375,-34.84375,304.98438,-26.421875Q309.89062,-18,319.6875,-18Q325.01562,-18,330.04688,-19.65625Q335.09375,-21.3125,340.26562,-23.90625L340.26562,-4.03125Q329.76562,1.4375,316.51562,1.4375Q296.78125,1.4375,286.625,-12.453125Q276.48438,-26.359375,276.48438,-51.265625Q276.48438,-66.8125,281.29688,-78.765625Q286.125,-90.71875,295.26562,-97.484375Q304.42188,-104.25,317.51562,-104.25Q331.34375,-104.25,343.73438,-97.34375L337.25,-78.90625Q332.78125,-81.5,328.25,-83.21875Q323.71875,-84.953125,318.67188,-84.953125Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
<path android:pathData="M420.14062,-39.75Q420.14062,-28.375,416.6875,-19Q413.23438,-9.640625,405.8125,-4.09375Q398.40625,1.4375,386.59375,1.4375Q375.79688,1.4375,368.375,-4.03125Q360.95312,-9.5,357.14062,-18.859375Q353.32812,-28.21875,353.32812,-39.75Q353.32812,-51.84375,357,-61.046875Q360.67188,-70.265625,368.07812,-75.453125Q375.5,-80.640625,387.03125,-80.640625Q401.85938,-80.640625,411,-70.046875Q420.14062,-59.46875,420.14062,-39.75ZM375.5,-39.59375Q375.5,-28.21875,378.15625,-22.3125Q380.82812,-16.421875,386.875,-16.421875Q392.78125,-16.421875,395.375,-22.25Q397.96875,-28.078125,397.96875,-39.75Q397.96875,-51.265625,395.375,-56.953125Q392.78125,-62.640625,386.73438,-62.640625Q380.82812,-62.640625,378.15625,-56.953125Q375.5,-51.265625,375.5,-39.59375Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
<path android:pathData="M474.95312,-80.640625Q485.76562,-80.640625,491.95312,-73.359375Q498.14062,-66.09375,498.14062,-51.84375L498.14062,0L476.25,0L476.25,-45.359375Q476.25,-53.421875,474.375,-57.59375Q472.51562,-61.78125,467.60938,-61.78125Q461.14062,-61.78125,458.76562,-55.9375Q456.39062,-50.109375,456.39062,-36.859375L456.39062,0L434.5,0L434.5,-79.203125L451.48438,-79.203125L454.07812,-69.125L455.23438,-69.125Q461.28125,-80.640625,474.95312,-80.640625Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
<path android:pathData="M555.9531,-80.640625Q566.7656,-80.640625,572.9531,-73.359375Q579.1406,-66.09375,579.1406,-51.84375L579.1406,0L557.25,0L557.25,-45.359375Q557.25,-53.421875,555.375,-57.59375Q553.5156,-61.78125,548.6094,-61.78125Q542.1406,-61.78125,539.7656,-55.9375Q537.3906,-50.109375,537.3906,-36.859375L537.3906,0L515.5,0L515.5,-79.203125L532.4844,-79.203125L535.0781,-69.125L536.2344,-69.125Q542.28125,-80.640625,555.9531,-80.640625Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
<path android:pathData="M625.4375,-80.5Q640.125,-80.5,648.2656,-71.0625Q656.40625,-61.625,656.40625,-44.5L656.40625,-33.265625L615.0781,-33.265625Q615.3594,-15.546875,630.625,-15.546875Q636.53125,-15.546875,641.6406,-16.984375Q646.75,-18.4375,652.375,-21.59375L652.375,-4.171875Q642.28125,1.4375,627.8906,1.4375Q610.75,1.4375,602.03125,-9Q593.3281,-19.4375,593.3281,-39.171875Q593.3281,-59.328125,601.6719,-69.90625Q610.03125,-80.5,625.4375,-80.5ZM626.0156,-64.078125Q621.40625,-64.078125,618.4531,-60.40625Q615.5,-56.734375,615.21875,-48.390625L636.2344,-48.390625Q636.2344,-55.875,633.5625,-59.96875Q630.90625,-64.078125,626.0156,-64.078125Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
<path android:pathData="M699.15625,1.4375Q683.03125,1.4375,674.6719,-8.421875Q666.3281,-18.28125,666.3281,-39.171875Q666.3281,-58.03125,674.8906,-69.328125Q683.46875,-80.640625,700.03125,-80.640625Q706.6406,-80.640625,712.0469,-79.125Q717.4531,-77.609375,722.0625,-75.03125L715.8594,-57.890625Q711.96875,-59.90625,708.375,-61.046875Q704.78125,-62.203125,701.1719,-62.203125Q695.125,-62.203125,691.8125,-56.375Q688.5,-50.546875,688.5,-39.3125Q688.5,-27.9375,691.875,-22.390625Q695.2656,-16.84375,701.46875,-16.84375Q710.96875,-16.84375,720.0469,-23.46875L720.0469,-5.046875Q711.40625,1.4375,699.15625,1.4375Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
<path android:pathData="M765.1719,-16.984375Q767.7656,-16.984375,770.34375,-17.625Q772.9375,-18.28125,775.8281,-19.578125L775.8281,-2.59375Q772.21875,-0.71875,767.8906,0.359375Q763.5781,1.4375,758.40625,1.4375Q747.4531,1.4375,741.9844,-4.75Q736.5156,-10.9375,736.5156,-24.90625L736.5156,-61.625L728.0156,-61.625L728.0156,-72.4375L738.2344,-78.625L743.71875,-95.46875L758.40625,-95.46875L758.40625,-79.203125L774.8125,-79.203125L774.8125,-61.625L758.40625,-61.625L758.40625,-25.484375Q758.40625,-16.984375,765.1719,-16.984375Z"
|
||||
android:fillColor="@android:color/primary_text_light"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
</vector>
|
@@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<solid android:color="@color/accent" />
|
||||
<solid android:color="?colorAccent" />
|
||||
<corners android:bottomRightRadius="2dip"
|
||||
android:bottomLeftRadius="2dip"
|
||||
android:topRightRadius="2dip"
|
||||
android:topLeftRadius="2dip"/>
|
||||
</shape>
|
||||
</shape>
|
||||
|
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:state_enabled="true" android:color="@color/primary" />
|
||||
<item android:state_enabled="false" android:color="@color/disabled_grey" />
|
||||
</selector>
|
@@ -4,6 +4,6 @@
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="#000000"
|
||||
android:fillColor="?colorControlNormal"
|
||||
android:pathData="M12,3v10.55c-0.59,-0.34 -1.27,-0.55 -2,-0.55 -2.21,0 -4,1.79 -4,4s1.79,4 4,4 4,-1.79 4,-4V7h4V3h-6z"/>
|
||||
</vector>
|
||||
|
13
res/drawable/ic_device_desktop_shortcut.xml
Normal file
13
res/drawable/ic_device_desktop_shortcut.xml
Normal file
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<group android:pivotX="12" android:pivotY="12" android:scaleX="0.66" android:scaleY="0.66">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M21,2L3,2c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h7v2L8,20v2h8v-2h-2v-2h7c1.1,0 2,-0.9 2,-2L23,4c0,-1.1 -0.9,-2 -2,-2zM21,16L3,16L3,4h18v12z" />
|
||||
</group>
|
||||
</vector>
|
17
res/drawable/ic_device_laptop_shortcut.xml
Normal file
17
res/drawable/ic_device_laptop_shortcut.xml
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<group
|
||||
android:pivotX="12"
|
||||
android:pivotY="12"
|
||||
android:scaleX="0.66"
|
||||
android:scaleY="0.66">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M20,18c1.1,0 2,-0.9 2,-2V6c0,-1.1 -0.9,-2 -2,-2H4C2.9,4 2,4.9 2,6v10c0,1.1 0.9,2 2,2H0v2h24v-2H20zM4,6h16v10H4V6z" />
|
||||
</group>
|
||||
</vector>
|
18
res/drawable/ic_device_phone_shortcut.xml
Normal file
18
res/drawable/ic_device_phone_shortcut.xml
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<group
|
||||
android:pivotX="12"
|
||||
android:pivotY="12"
|
||||
android:scaleX="0.66"
|
||||
android:scaleY="0.66">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M16,1L8,1C6.34,1 5,2.34 5,4v16c0,1.66 1.34,3 3,3h8c1.66,0 3,-1.34 3,-3L19,4c0,-1.66 -1.34,-3 -3,-3zM14,21h-4v-1h4v1zM17.25,18L6.75,18L6.75,4h10.5v14z" />
|
||||
|
||||
</group>
|
||||
</vector>
|
18
res/drawable/ic_device_tablet_shortcut.xml
Normal file
18
res/drawable/ic_device_tablet_shortcut.xml
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<group
|
||||
android:pivotX="12"
|
||||
android:pivotY="12"
|
||||
android:scaleX="0.66"
|
||||
android:scaleY="0.66">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M21,4L3,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h18c1.1,0 1.99,-0.9 1.99,-2L23,6c0,-1.1 -0.9,-2 -2,-2zM19,18L5,18L5,6h14v12z" />
|
||||
|
||||
</group>
|
||||
</vector>
|
17
res/drawable/ic_device_tv_shortcut.xml
Normal file
17
res/drawable/ic_device_tv_shortcut.xml
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<group
|
||||
android:pivotX="12"
|
||||
android:pivotY="12"
|
||||
android:scaleX="0.66"
|
||||
android:scaleY="0.66">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h5v2h8v-2h5c1.1,0 1.99,-0.9 1.99,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,17L3,17L3,5h18v12z" />
|
||||
</group>
|
||||
</vector>
|
@@ -1,4 +1,8 @@
|
||||
<vector android:height="24dp" android:viewportHeight="48"
|
||||
android:viewportWidth="48" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="#fcfcfc" android:pathData="m26.8172,6.058 l-5.9774,0.5722v24.6133l5.9142,-0.8904v-10.494l7.9499,11.6392 6.2324,-1.972 -8.1405,-11.1935 8.2042,-10.5576 -6.3594,-1.4621 -7.8865,10.5572zM13.2678,12.0558c-0.0675,0.0071 -0.1327,0.0369 -0.1834,0.0877l-2.346,2.3456c-0.0986,0.0989 -0.1172,0.2523 -0.0445,0.3721l2.7467,4.5238c-0.4872,0.819 -0.8776,1.7021 -1.1567,2.6336l-5.0426,1.0489c-0.1403,0.0291 -0.2414,0.1534 -0.2414,0.2973v3.3173c0,0.1403 0.096,0.2618 0.2312,0.2945l4.8943,1.1963c0.261,1.0789 0.6654,2.1016 1.2,3.0416l-2.833,4.32c-0.079,0.1208 -0.0625,0.2798 0.0396,0.3815l2.3452,2.3456c0.0986,0.0984 0.2526,0.1176 0.3729,0.0454l4.4393,-2.6961c0.872,0.5032 1.8124,0.8992 2.8063,1.1677l1.0358,4.98c0.0291,0.1412 0.1539,0.2414 0.2969,0.2414h3.3177c0.1395,0 0.2612,-0.0952 0.2945,-0.232l1.22,-4.9903c1.0246,-0.2765 1.9935,-0.6886 2.8869,-1.2147l4.3747,2.8684c0.1203,0.0792 0.2794,0.0633 0.3815,-0.0387l2.346,-2.3456c0.0992,-0.0992 0.117,-0.2526 0.0441,-0.3721l-1.597,-2.632 -0.5167,0.1634c-0.0753,0.0238 -0.1575,-0.0043 -0.2018,-0.0699 0,0 -1.0186,-1.4912 -2.3342,-3.4167 -1.5727,3.0779 -4.7723,5.1864 -8.4672,5.1864 -5.2496,0 -9.5055,-4.2561 -9.5055,-9.5059 0,-3.8619 2.3035,-7.1832 5.6102,-8.6711v-2.4523c-0.6018,0.2105 -1.1836,0.4644 -1.7362,0.7654 -0.0004,-0.0004 -0.0008,-0.0014 -0.0024,-0.0028l-4.4777,-2.9368c-0.0603,-0.0394 -0.1302,-0.0551 -0.1977,-0.0482z"/>
|
||||
android:viewportWidth="48" android:width="24dp"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="m26.8172,6.058 l-5.9774,0.5722v24.6133l5.9142,-0.8904v-10.494l7.9499,11.6392 6.2324,-1.972 -8.1405,-11.1935 8.2042,-10.5576 -6.3594,-1.4621 -7.8865,10.5572zM13.2678,12.0558c-0.0675,0.0071 -0.1327,0.0369 -0.1834,0.0877l-2.346,2.3456c-0.0986,0.0989 -0.1172,0.2523 -0.0445,0.3721l2.7467,4.5238c-0.4872,0.819 -0.8776,1.7021 -1.1567,2.6336l-5.0426,1.0489c-0.1403,0.0291 -0.2414,0.1534 -0.2414,0.2973v3.3173c0,0.1403 0.096,0.2618 0.2312,0.2945l4.8943,1.1963c0.261,1.0789 0.6654,2.1016 1.2,3.0416l-2.833,4.32c-0.079,0.1208 -0.0625,0.2798 0.0396,0.3815l2.3452,2.3456c0.0986,0.0984 0.2526,0.1176 0.3729,0.0454l4.4393,-2.6961c0.872,0.5032 1.8124,0.8992 2.8063,1.1677l1.0358,4.98c0.0291,0.1412 0.1539,0.2414 0.2969,0.2414h3.3177c0.1395,0 0.2612,-0.0952 0.2945,-0.232l1.22,-4.9903c1.0246,-0.2765 1.9935,-0.6886 2.8869,-1.2147l4.3747,2.8684c0.1203,0.0792 0.2794,0.0633 0.3815,-0.0387l2.346,-2.3456c0.0992,-0.0992 0.117,-0.2526 0.0441,-0.3721l-1.597,-2.632 -0.5167,0.1634c-0.0753,0.0238 -0.1575,-0.0043 -0.2018,-0.0699 0,0 -1.0186,-1.4912 -2.3342,-3.4167 -1.5727,3.0779 -4.7723,5.1864 -8.4672,5.1864 -5.2496,0 -9.5055,-4.2561 -9.5055,-9.5059 0,-3.8619 2.3035,-7.1832 5.6102,-8.6711v-2.4523c-0.6018,0.2105 -1.1836,0.4644 -1.7362,0.7654 -0.0004,-0.0004 -0.0008,-0.0014 -0.0024,-0.0028l-4.4777,-2.9368c-0.0603,-0.0394 -0.1302,-0.0551 -0.1977,-0.0482z"/>
|
||||
</vector>
|
||||
|
@@ -4,6 +4,6 @@
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="#FF000000"
|
||||
android:fillColor="?attr/colorControlNormal"
|
||||
android:pathData="M3,9v6h4l5,5L12,4L7,9L3,9zM16.5,12c0,-1.77 -1.02,-3.29 -2.5,-4.03v8.05c1.48,-0.73 2.5,-2.25 2.5,-4.02zM14,3.23v2.06c2.89,0.86 5,3.54 5,6.71s-2.11,5.85 -5,6.71v2.06c4.01,-0.91 7,-4.49 7,-8.77s-2.99,-7.86 -7,-8.77z"/>
|
||||
</vector>
|
@@ -6,8 +6,6 @@
|
||||
android:viewportHeight="24">
|
||||
|
||||
<path
|
||||
android:fillColor="#000000"
|
||||
android:fillColor="?attr/colorControlNormal"
|
||||
android:pathData="M7 9v6h4l5 5V4l-5 5H7z" />
|
||||
<path
|
||||
android:pathData="M0 0h24v24H0z" />
|
||||
</vector>
|
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@color/primary" android:state_checked="true" />
|
||||
<item android:drawable="@color/background_floating_material_light" android:state_checked="false" />
|
||||
</selector>
|
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@color/primary" android:state_checked="true" />
|
||||
<item android:drawable="@color/darkStatusBarBackground" android:state_checked="false" />
|
||||
</selector>
|
25
res/layout-v23/pairing_explanation_duplicate_names.xml
Normal file
25
res/layout-v23/pairing_explanation_duplicate_names.xml
Normal file
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2023 Albert Vaca Cintora <albertvaka@gmail.com>
|
||||
|
||||
SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
|
||||
-->
|
||||
|
||||
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?attr/selectableItemBackground"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:drawablePadding="8dp"
|
||||
android:paddingTop="16dp"
|
||||
android:paddingBottom="12dp"
|
||||
android:paddingLeft="16dp"
|
||||
android:paddingRight="16dp"
|
||||
android:text="@string/pairing_duplicate_names"
|
||||
app:drawableStartCompat="@drawable/ic_warning"
|
||||
app:drawableTint="?attr/colorControlNormal">
|
||||
|
||||
</TextView>
|
@@ -56,7 +56,6 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
android:contentDescription="@string/visit_contributors_homepage"
|
||||
android:src="@drawable/ic_baseline_web_24"
|
||||
android:visibility="gone"
|
||||
app:tint="@color/text_color"
|
||||
tools:visibility="visible" />
|
||||
|
||||
</LinearLayout>
|
||||
|
@@ -21,6 +21,8 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:fillViewport="true"
|
||||
android:clipToPadding="false"
|
||||
android:id="@+id/scroll_view"
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior">
|
||||
|
||||
<LinearLayout
|
||||
@@ -38,8 +40,7 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
android:text="@string/kde_be_free"
|
||||
android:textAppearance="?attr/textAppearanceHeadline6"
|
||||
app:drawableLeftCompat="@drawable/ic_kde_48dp"
|
||||
app:drawableStartCompat="@drawable/ic_kde_48dp"
|
||||
app:drawableTint="@color/text_color" />
|
||||
app:drawableStartCompat="@drawable/ic_kde_48dp"/>
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
xmlns:card_view="https://schemas.android.com/apk/res-auto"
|
||||
|
@@ -26,6 +26,7 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
android:id="@+id/recyclerView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:clipToPadding="false"
|
||||
tools:listitem="@layout/custom_device_item"/>
|
||||
|
||||
<TextView
|
||||
|
@@ -30,7 +30,8 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
android:id="@+id/device_view"
|
||||
android:descendantFocusability="afterDescendants"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
android:layout_height="match_parent"
|
||||
android:clipToPadding="false">
|
||||
|
||||
<!-- Shown when the device is paired and reachable -->
|
||||
<androidx.compose.ui.platform.ComposeView
|
||||
|
@@ -20,5 +20,6 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
android:id="@+id/licenses_text"
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent" />
|
||||
android:layout_height="match_parent"
|
||||
android:clipToPadding="false"/>
|
||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||
|
@@ -17,7 +17,8 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
<!-- Keep in sync with toolbar.xml, copied here because it needs the nested TabLayout -->
|
||||
<com.google.android.material.appbar.AppBarLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
android:layout_height="wrap_content"
|
||||
android:fitsSystemWindows="true">
|
||||
|
||||
<com.google.android.material.appbar.MaterialToolbar
|
||||
android:id="@+id/toolbar"
|
||||
|
@@ -57,6 +57,7 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
android:dividerHeight="0dp"
|
||||
android:orientation="vertical"
|
||||
android:paddingTop="8dp"
|
||||
android:clipToPadding="false"
|
||||
tools:context=".MainActivity" />
|
||||
</LinearLayout>
|
||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||
|
@@ -24,7 +24,7 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
app:drawableEndCompat="@drawable/ic_delete"
|
||||
app:drawableStartCompat="@drawable/ic_delete" />
|
||||
|
||||
<FrameLayout
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/swipeableView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
@@ -32,17 +32,30 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
|
||||
<TextView
|
||||
android:id="@+id/deviceNameOrIP"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:background="?android:selectableItemBackground"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="?android:attr/listPreferredItemHeightSmall"
|
||||
android:paddingEnd="?android:attr/listPreferredItemPaddingRight"
|
||||
android:paddingStart="?android:attr/listPreferredItemPaddingLeft"
|
||||
android:paddingEnd="?android:attr/listPreferredItemPaddingRight"
|
||||
android:textAppearance="?android:attr/textAppearanceListItemSmall"
|
||||
android:visibility="visible"
|
||||
tools:text="192.168.0.1"/>
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:text="192.168.0.1" />
|
||||
|
||||
</FrameLayout>
|
||||
<TextView
|
||||
android:id="@+id/connectionStatus"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="4dp"
|
||||
android:paddingStart="?android:attr/listPreferredItemPaddingLeft"
|
||||
android:paddingEnd="?android:attr/listPreferredItemPaddingRight"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</FrameLayout>
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user