Skip to content

Commit 193d690

Browse files
Merge branch 'master' into feat/unified-share
Signed-off-by: Alper Öztürk <67455295+alperozturk96@users.noreply.github.com>
2 parents 243e415 + 6c4295e commit 193d690

8 files changed

Lines changed: 55 additions & 10 deletions

File tree

app/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,7 @@ dependencies {
376376

377377
// region UI
378378
implementation(libs.bundles.ui)
379+
implementation(libs.browser)
379380
// endregion
380381

381382
// region Worker

app/src/main/java/com/owncloud/android/authentication/AuthenticatorActivity.java

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@
6767
import com.nextcloud.operations.PostMethod;
6868
import com.nextcloud.utils.extensions.BundleExtensionsKt;
6969
import com.nextcloud.utils.mdm.MDMConfig;
70-
import com.owncloud.android.BuildConfig;
7170
import com.owncloud.android.MainApp;
7271
import com.owncloud.android.R;
7372
import com.owncloud.android.databinding.AccountSetupBinding;
@@ -128,6 +127,8 @@
128127
import androidx.annotation.Nullable;
129128
import androidx.annotation.VisibleForTesting;
130129
import androidx.appcompat.app.ActionBar;
130+
import androidx.browser.auth.AuthTabIntent;
131+
import androidx.core.content.ContextCompat;
131132
import androidx.core.graphics.Insets;
132133
import androidx.core.view.ViewCompat;
133134
import androidx.core.view.WindowInsetsCompat;
@@ -492,20 +493,30 @@ private void launchDefaultWebBrowser(String url) {
492493
return;
493494
}
494495

496+
Uri uri = Uri.parse(url);
497+
String loginScheme = getString(R.string.login_data_own_scheme);
498+
495499
try {
496-
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
497-
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
498-
PackageManager packageManager = getPackageManager();
500+
int toolbarColor = ContextCompat.getColor(this, R.color.primary);
501+
AuthTabIntent authTabIntent = new AuthTabIntent.Builder().setColorScheme(toolbarColor).build();
502+
authTabIntent.launch(authTabResultLauncher, uri, loginScheme);
503+
return;
504+
} catch (Exception e) {
505+
Log_OC.e(TAG, "Auth Tab login URL launch failed: " + e);
506+
}
499507

508+
try {
509+
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
510+
PackageManager packageManager = getPackageManager();
500511
if (intent.resolveActivity(packageManager) != null) {
501512
startActivity(intent);
502-
} else {
503-
DisplayUtils.showSnackMessage(this, R.string.authenticator_activity_no_web_browser_found);
513+
return;
504514
}
505515
} catch (Exception e) {
506-
Log_OC.e(TAG, "Exception launchDefaultWebBrowser: " + e);
507-
DisplayUtils.showSnackMessage(this, R.string.authenticator_activity_login_error);
516+
Log_OC.e(TAG, "External browser launch failed: " + e);
508517
}
518+
519+
DisplayUtils.showSnackMessage(this, R.string.authenticator_activity_no_web_browser_found);
509520
}
510521

511522
private Pair<String, String> extractPollUrlAndToken() {
@@ -1558,6 +1569,11 @@ private void startQRScanner() {
15581569
qrScanResultLauncher.launch(intent);
15591570
}
15601571

1572+
private final ActivityResultLauncher<Intent> authTabResultLauncher = AuthTabIntent.registerActivityResultLauncher(
1573+
this,
1574+
result -> Log_OC.d(TAG, "Auth Tab result code: " + result.resultCode)
1575+
);
1576+
15611577
private final ActivityResultLauncher<Intent> qrScanResultLauncher = registerForActivityResult(
15621578
new ActivityResultContracts.StartActivityForResult(),
15631579
result -> {

app/src/main/java/com/owncloud/android/operations/DownloadFileOperation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ protected RemoteOperationResult run(OwnCloudClient client) {
203203
downloadOperation = new DownloadFileRemoteOperation(file.getRemotePath(), tmpFolder);
204204

205205
if (downloadType == DownloadType.DOWNLOAD) {
206-
dataTransferListeners.forEach(downloadOperation::addDatatransferProgressListener);
206+
dataTransferListeners.forEach(downloadOperation::addProgressListener);
207207
}
208208

209209
NextcloudClient nextcloudClient = OwnCloudClientExtensionsKt.toNextcloudClient(client, operationContext);

app/src/main/res/values-et-rEE/strings.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@
132132
<string name="autoupload_hide_folder">Peida kaust</string>
133133
<string name="avatar">Avatar</string>
134134
<string name="away">Eemal</string>
135+
<string name="backup_list_adapter_local_contacts">Kohalikud kontaktid</string>
135136
<string name="backup_settings">Varunduse seadistused</string>
136137
<string name="backup_title">Kontaktide ja kalendri varundus</string>
137138
<string name="battery_optimization_close">Sulge</string>
@@ -500,6 +501,7 @@
500501
<string name="filedetails_download">Laadi alla</string>
501502
<string name="filedetails_export">Ekspordi</string>
502503
<string name="filedetails_renamed_in_upload_msg">Üleslaadimisel failinimi muutus: „%1$s“</string>
504+
<string name="filedetails_sync_all_files">Sünkrooni kõik</string>
503505
<string name="filedetails_sync_file">Sünkrooni</string>
504506
<string name="filedisplay_no_file_selected">Faile ei ole valitud</string>
505507
<string name="filename_empty">Failinimi ei tohi olla tühi</string>
@@ -992,6 +994,8 @@
992994
<string name="subtitle_videos_only">Vaid videod</string>
993995
<string name="suggest">Soovita</string>
994996
<string name="sync">Sünkrooni</string>
997+
<string name="sync_all_action_dialog_description">Kõik sisalduvad kaustad ja failid laaditakse alla. Selle jaoks võib kuluda märgatav kogus andmeruumi ja sõltuvalt sinu internetiühendusest aega/ribalaiust.</string>
998+
<string name="sync_all_action_dialog_title">Kas sünkroonid kogu kausta?</string>
995999
<string name="sync_anyway">Sünkrooni ikkagi</string>
9961000
<string name="sync_conflict_notification_action_title">Lahenda failikonfliktid</string>
9971001
<string name="sync_conflict_notification_description">Tuvastasin failide üleslaadimiskonflikte. Lahendamiseks ava üleslaadimiste vaade.</string>

app/src/main/res/values-lt-rLT/strings.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@
134134
<string name="autoupload_hide_folder">Slėpti aplanką</string>
135135
<string name="avatar">Avataras</string>
136136
<string name="away">Atsitraukęs</string>
137+
<string name="backup_list_adapter_local_contacts">Vietiniai kontaktai</string>
137138
<string name="backup_settings">Atsarginių kopijų nustatymai</string>
138139
<string name="backup_title">Kontaktų ir kalendoriaus atsarginė kopija</string>
139140
<string name="battery_optimization_close">Užverti</string>
@@ -502,6 +503,7 @@
502503
<string name="filedetails_download">Atsisiųsti</string>
503504
<string name="filedetails_export">Eksportuoti</string>
504505
<string name="filedetails_renamed_in_upload_msg">Failas pervadintas kaip %1$s įkėlimo metu</string>
506+
<string name="filedetails_sync_all_files">Sinchronizuoti viską</string>
505507
<string name="filedetails_sync_file">Sinchronizuoti</string>
506508
<string name="filedisplay_no_file_selected">Neįkeltas joks failas</string>
507509
<string name="filename_empty">Failo pavadinimas negali būti tuščias</string>
@@ -995,6 +997,8 @@
995997
<string name="subtitle_videos_only">Tik vaizdo įrašai</string>
996998
<string name="suggest">Siūlyti</string>
997999
<string name="sync">Sinchronizuoti</string>
1000+
<string name="sync_all_action_dialog_description">Bus atsisiųsti visi esantys failai ir aplankai. Tam gali prireikti daug vietos saugykloje ir tai gali užtrukti, priklausomai nuo jūsų ryšio.</string>
1001+
<string name="sync_all_action_dialog_title">Sinchronizuoti visą aplanką?</string>
9981002
<string name="sync_anyway">Vis tiek sinchronizuoti</string>
9991003
<string name="sync_conflict_notification_action_title">Išspręsti konfliktus</string>
10001004
<string name="sync_conflict_notification_description">Aptikti įkėlimo nesuderinamumai. Atidarykite įkėlimus, kad juos išspręstumėte.</string>

app/src/main/res/values-sl/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@
124124
<string name="common_loading">Poteka nalaganje …</string>
125125
<string name="common_next">Naprej </string>
126126
<string name="common_no">Ne</string>
127+
<string name="common_now">Zdaj</string>
127128
<string name="common_ok">V redu</string>
128129
<string name="common_pending">Na čakanju</string>
129130
<string name="common_remove">Izbriši</string>

gradle/libs.versions.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
androidCommonLibraryVersion = "38fffa4a03"
66
androidGifDrawableVersion = "1.2.31"
77
androidImageCropperVersion = "4.7.0"
8-
androidLibraryVersion ="dd85553abaea1c05dc514268a3cf4a976535bc2b"
8+
androidLibraryVersion ="1f476c0ab14fb280172be2aefd70db80e50bb17b"
99
androidOpensslVersion = "3.5.6"
1010
androidPluginVersion = "9.2.1"
1111
androidsvgVersion = "1.4"
@@ -86,6 +86,7 @@ stateless4jVersion = "2.6.0"
8686
webkitVersion = "1.16.0"
8787
workRuntime = "2.11.2"
8888
foundationVersion = "1.11.2"
89+
browserVersion = "1.10.0"
8990
material3Version = "1.4.0"
9091

9192
[libraries]
@@ -96,6 +97,7 @@ conscrypt-android = { module = "org.conscrypt:conscrypt-android", version.ref =
9697
bcpkix-jdk18on = { module = "org.bouncycastle:bcpkix-jdk18on", version.ref = "bcpkixJdk18onVersion" }
9798

9899
# UI
100+
browser = { module = "androidx.browser:browser", version.ref = "browserVersion" }
99101
appcompat = { module = "androidx.appcompat:appcompat", version.ref = "appCompatVersion" }
100102
cardview = { module = "androidx.cardview:cardview", version.ref = "cardviewVersion" }
101103
core-ktx = { module = "androidx.test:core-ktx", version.ref = "androidxTestVersion" }

gradle/verification-metadata.xml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
<trusted-key id="0CDE80149711EB46DFF17AE421A24B3F8B0F594A" group="org.apache" name="apache" version="16"/>
5050
<trusted-key id="0D35D3F60078655126908E8AF3D1600878E85A3D" group="io.netty"/>
5151
<trusted-key id="0E225917414670F4442C250DFD533C07C264648F">
52+
<trusting group="androidx.browser" name="browser" version="1.10.0"/>
5253
<trusting group="androidx.core"/>
5354
<trusting group="androidx.databinding"/>
5455
<trusting group="androidx.media3"/>
@@ -20784,6 +20785,14 @@
2078420785
<sha256 value="f5dbf2a98f6cbe6a1ab81364c15250bd5d5872fe1e524bd57c3d135e1e6143ee" origin="Generated by Gradle" reason="Artifact is not signed"/>
2078520786
</artifact>
2078620787
</component>
20788+
<component group="com.github.nextcloud" name="android-library" version="01adfc0a1f">
20789+
<artifact name="android-library-01adfc0a1f.aar">
20790+
<sha256 value="51b447988336ba10eca921d3f308da168313a16f352362cea5b7bd229bdaf2c6" origin="Generated by Gradle" reason="Artifact is not signed"/>
20791+
</artifact>
20792+
<artifact name="android-library-01adfc0a1f.module">
20793+
<sha256 value="9ee93f81089c2f4b3841a7efa5c77f845bf13811d5d6a340d35cb960537cfb10" origin="Generated by Gradle" reason="Artifact is not signed"/>
20794+
</artifact>
20795+
</component>
2078720796
<component group="com.github.nextcloud" name="android-library" version="0303be50f9">
2078820797
<artifact name="android-library-0303be50f9.aar">
2078920798
<sha256 value="d10959e216de68719efc582c5698b7e78385a53900672cb024ecc36111be6d2f" origin="Generated by Gradle" reason="Artifact is not signed"/>
@@ -20920,6 +20929,14 @@
2092020929
<sha256 value="e0c738e7c3648549631eda0f90d3ae028d6199ffe368324baf0503433535f33f" origin="Generated by Gradle" reason="Artifact is not signed"/>
2092120930
</artifact>
2092220931
</component>
20932+
<component group="com.github.nextcloud" name="android-library" version="1f476c0ab14fb280172be2aefd70db80e50bb17b">
20933+
<artifact name="android-library-1f476c0ab14fb280172be2aefd70db80e50bb17b.aar">
20934+
<sha256 value="716116b7ba65762dcca6f1a728022893dffdc3634efdf6f84296f444dfc65a39" origin="Generated by Gradle" reason="Artifact is not signed"/>
20935+
</artifact>
20936+
<artifact name="android-library-1f476c0ab14fb280172be2aefd70db80e50bb17b.module">
20937+
<sha256 value="2c42a082fd1b6185ccc0354a88c91e2a580016f9e8577ef102bd8351024cc9ab" origin="Generated by Gradle" reason="Artifact is not signed"/>
20938+
</artifact>
20939+
</component>
2092320940
<component group="com.github.nextcloud" name="android-library" version="2.22.2">
2092420941
<artifact name="android-library-2.22.2.aar">
2092520942
<sha256 value="d498cd9e68c7c4d1bfa3013372e3a575d692d9f6bb525df7e881fed0a718a246" origin="Generated by Gradle" reason="Artifact is not signed"/>

0 commit comments

Comments
 (0)