diff --git a/.github/workflows/update-documentation.yml b/.github/workflows/update-documentation.yml new file mode 100644 index 0000000000..77097e2fe6 --- /dev/null +++ b/.github/workflows/update-documentation.yml @@ -0,0 +1,19 @@ +name: Update documentation + +on: + push: + paths: + - docs/** + +jobs: + trigger: + runs-on: ubuntu-latest + name: Dispatch event to documentation repository + if: github.ref == 'refs/heads/main' + steps: + - uses: peter-evans/repository-dispatch@v2 + with: + token: ${{ secrets.DOCUMENTATION_REPO_ACCESS_TOKEN }} + repository: revanced/revanced-documentation + event-type: update-documentation + client-payload: '{"repo": "${{ github.event.repository.name }}", "ref": "${{ github.ref }}"}' diff --git a/android/app/build.gradle b/android/app/build.gradle index a56f574a27..d0da346d6c 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -71,7 +71,7 @@ dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" // ReVanced - implementation "app.revanced:revanced-patcher:9.0.0" + implementation "app.revanced:revanced-patcher:11.0.0" // Signing & aligning implementation("org.bouncycastle:bcpkix-jdk15on:1.70") diff --git a/android/app/src/main/kotlin/app/revanced/manager/flutter/MainActivity.kt b/android/app/src/main/kotlin/app/revanced/manager/flutter/MainActivity.kt index 7ff82900f1..9654a781e4 100644 --- a/android/app/src/main/kotlin/app/revanced/manager/flutter/MainActivity.kt +++ b/android/app/src/main/kotlin/app/revanced/manager/flutter/MainActivity.kt @@ -271,8 +271,8 @@ class MainActivity : FlutterActivity() { "update", mapOf( "progress" to -100.0, - "header" to "Aborting...", - "log" to "An error occurred! Aborting\nError:\n$stack" + "header" to "Aborted...", + "log" to "An error occurred! Aborted\nError:\n$stack" ) ) } diff --git a/assets/i18n/en_US.json b/assets/i18n/en_US.json index 03b28c54fd..ae4e5360df 100644 --- a/assets/i18n/en_US.json +++ b/assets/i18n/en_US.json @@ -4,6 +4,8 @@ "updateButton": "Update", "enabledLabel": "Enabled", "disabledLabel": "Disabled", + "installed":"Installed: {version}", + "suggested":"Suggested: {version}", "yesButton": "Yes", "noButton": "No", "warning": "Warning", diff --git a/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt index 9119678840..673becbca2 100644 --- a/fastlane/metadata/android/en-US/full_description.txt +++ b/fastlane/metadata/android/en-US/full_description.txt @@ -1 +1 @@ -The ReVanced Manager is an Android application that allows you to modify any Dalvik Android application to add, remove and/or modify existing functionality. It dissassembles the APK locally on your device, makes the required changes using ReVanced Patcher and then assembles it back into an APK again. \ No newline at end of file +ReVanced Manager is an Android application that uses ReVanced Patcher to add, remove, and modify existing functionalities in Android applications diff --git a/lib/ui/views/app_selector/app_selector_view.dart b/lib/ui/views/app_selector/app_selector_view.dart index 3404b08e63..42ff13e773 100644 --- a/lib/ui/views/app_selector/app_selector_view.dart +++ b/lib/ui/views/app_selector/app_selector_view.dart @@ -78,7 +78,7 @@ class _AppSelectorViewState extends State { child: model.noApps ? Center( child: I18nText( - 'appSelectorView.noAppsLabel', + 'appSelectorCard.noAppsLabel', child: Text( '', style: TextStyle( @@ -111,7 +111,9 @@ class _AppSelectorViewState extends State { model.getSuggestedVersion( app.packageName, ), - onTap: () => model.canSelectInstalled(context, app.packageName), + installedVersion: app.versionName!, + onTap: () => model.canSelectInstalled( + context, app.packageName), ), ) .toList(), diff --git a/lib/ui/views/home/home_viewmodel.dart b/lib/ui/views/home/home_viewmodel.dart index 090ac30e74..edcc357d9b 100644 --- a/lib/ui/views/home/home_viewmodel.dart +++ b/lib/ui/views/home/home_viewmodel.dart @@ -22,7 +22,6 @@ import 'package:revanced_manager/ui/views/navigation/navigation_viewmodel.dart'; import 'package:revanced_manager/ui/views/patcher/patcher_viewmodel.dart'; import 'package:revanced_manager/ui/widgets/homeView/update_confirmation_dialog.dart'; import 'package:revanced_manager/ui/widgets/shared/custom_material_button.dart'; -import 'package:revanced_manager/utils/about_info.dart'; import 'package:stacked/stacked.dart'; import 'package:stacked_services/stacked_services.dart'; @@ -113,6 +112,7 @@ class HomeViewModel extends BaseViewModel { Future hasManagerUpdates() async { String currentVersion = await _managerAPI.getCurrentManagerVersion(); + _latestManagerVersion = await _managerAPI.getLatestManagerVersion(); // add v to current version if (!currentVersion.startsWith('v')) { diff --git a/lib/ui/views/installer/installer_view.dart b/lib/ui/views/installer/installer_view.dart index 2ba73779da..7663a5bb01 100644 --- a/lib/ui/views/installer/installer_view.dart +++ b/lib/ui/views/installer/installer_view.dart @@ -157,7 +157,8 @@ class InstallerView extends StatelessWidget { SliverFillRemaining( hasScrollBody: false, child: SizedBox( - height: MediaQuery.of(context).viewPadding.bottom), + height: MediaQuery.of(context).viewPadding.bottom, + ), ), ], ), diff --git a/lib/ui/views/installer/installer_viewmodel.dart b/lib/ui/views/installer/installer_viewmodel.dart index c1523dabed..63631df0fb 100644 --- a/lib/ui/views/installer/installer_viewmodel.dart +++ b/lib/ui/views/installer/installer_viewmodel.dart @@ -135,15 +135,15 @@ class InstallerViewModel extends BaseViewModel { } on Exception catch (e) { update( -100.0, - 'Aborting...', - 'An error occurred! Aborting\nError:\n$e', + 'Aborted...', + 'An error occurred! Aborted\nError:\n$e', ); if (kDebugMode) { print(e); } } } else { - update(-100.0, 'Aborting...', 'No app or patches selected! Aborting'); + update(-100.0, 'Aborted...', 'No app or patches selected! Aborted'); } if (FlutterBackground.isBackgroundExecutionEnabled) { try { diff --git a/lib/ui/widgets/appSelectorView/installed_app_item.dart b/lib/ui/widgets/appSelectorView/installed_app_item.dart index 27bed6cdd6..59226e0579 100644 --- a/lib/ui/widgets/appSelectorView/installed_app_item.dart +++ b/lib/ui/widgets/appSelectorView/installed_app_item.dart @@ -1,5 +1,7 @@ import 'dart:typed_data'; + import 'package:flutter/material.dart'; +import 'package:flutter_i18n/flutter_i18n.dart'; import 'package:revanced_manager/ui/widgets/shared/custom_card.dart'; class InstalledAppItem extends StatefulWidget { @@ -10,6 +12,7 @@ class InstalledAppItem extends StatefulWidget { required this.icon, required this.patchesCount, required this.suggestedVersion, + required this.installedVersion, this.onTap, }) : super(key: key); final String name; @@ -17,6 +20,7 @@ class InstalledAppItem extends StatefulWidget { final Uint8List icon; final int patchesCount; final String suggestedVersion; + final String installedVersion; final Function()? onTap; @override @@ -48,23 +52,38 @@ class _InstalledAppItemState extends State { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Text( - widget.name, - maxLines: 2, - overflow: TextOverflow.visible, - style: const TextStyle( - fontSize: 16, - fontWeight: FontWeight.w500, - ), - ), - const SizedBox(height: 4), - Text(widget.pkgName), Row( children: [ Text( - widget.suggestedVersion.isEmpty + widget.name, + maxLines: 2, + overflow: TextOverflow.visible, + style: const TextStyle( + fontSize: 16, + fontWeight: FontWeight.w500, + ), + ), + const SizedBox(width: 4), + I18nText( + widget.installedVersion.isEmpty ? 'All versions' - : widget.suggestedVersion, + : 'v${widget.installedVersion}', + ), + ], + ), + Text(widget.pkgName), + Row( + children: [ + I18nText( + FlutterI18n.translate( + context, + 'suggested', + translationParams: { + 'version': widget.suggestedVersion.isEmpty + ? 'All versions' + : 'v${widget.suggestedVersion}' + }, + ), ), const SizedBox(width: 4), Text( diff --git a/lib/ui/widgets/appSelectorView/not_installed_app_item.dart b/lib/ui/widgets/appSelectorView/not_installed_app_item.dart index f6062af930..8c1ae1fcf0 100644 --- a/lib/ui/widgets/appSelectorView/not_installed_app_item.dart +++ b/lib/ui/widgets/appSelectorView/not_installed_app_item.dart @@ -59,9 +59,7 @@ class _NotInstalledAppItem extends State { Row( children: [ Text( - widget.suggestedVersion.isEmpty - ? 'All versions' - : widget.suggestedVersion, + 'Suggested: ${widget.suggestedVersion.isEmpty ? 'All versions' : 'v${widget.suggestedVersion}'}', ), const SizedBox(width: 4), Text(