Merge branch 'master' into keep-screen-awake

This commit is contained in:
ashilkn 2022-10-01 15:22:04 +05:30
commit 0a77ebb8a8
24 changed files with 298 additions and 354 deletions

View file

@ -26,7 +26,7 @@ jobs:
- uses: subosito/flutter-action@v1
with:
channel: 'stable'
flutter-version: '3.0.0'
flutter-version: '3.3.0'
# Fetch sub modules
- run: git submodule update --init --recursive

1
.gitmodules vendored
View file

@ -9,6 +9,7 @@
[submodule "thirdparty/sentry-dart"]
path = thirdparty/sentry-dart
url = https://github.com/ente-io/sentry-dart.git
branch = sentry_flutter_ente
[submodule "thirdparty/extended_image"]
path = thirdparty/extended_image

View file

@ -4,10 +4,6 @@
**Used to read photos and videos from the device.**
> android.permission.READ_CONTACTS
**Used when a customer tries to pick a contact in the phonebook to share an album with. This is an optional permission, which users can deny if their android version allows granting granular permission.**
> android.permission.ACCESS_MEDIA_LOCATION
**Used to extract the coordinates a photo/video was captured in. This information is encrypted with the customer's key before being sent to our servers.**

View file

@ -1,26 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>App</string>
<key>CFBundleIdentifier</key>
<string>io.flutter.flutter.app</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>App</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>MinimumOSVersion</key>
<string>9.0</string>
</dict>
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>App</string>
<key>CFBundleIdentifier</key>
<string>io.flutter.flutter.app</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>App</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>MinimumOSVersion</key>
<string>12.0</string>
</dict>
</plist>

View file

@ -1,6 +1,7 @@
# Uncomment this line to define a global platform for your project
platform :ios, '12.0'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
@ -41,5 +42,6 @@ post_install do |installer|
config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64'
end
end
end

View file

@ -6,47 +6,50 @@ PODS:
- Reachability
- device_info (0.0.1):
- Flutter
- Firebase/CoreOnly (8.15.0):
- FirebaseCore (= 8.15.0)
- Firebase/Messaging (8.15.0):
- Firebase/CoreOnly (9.5.0):
- FirebaseCore (= 9.5.0)
- Firebase/Messaging (9.5.0):
- Firebase/CoreOnly
- FirebaseMessaging (~> 8.15.0)
- firebase_core (1.17.1):
- Firebase/CoreOnly (= 8.15.0)
- FirebaseMessaging (~> 9.5.0)
- firebase_core (1.23.0):
- Firebase/CoreOnly (= 9.5.0)
- Flutter
- firebase_messaging (11.4.1):
- Firebase/Messaging (= 8.15.0)
- firebase_messaging (11.4.4):
- Firebase/Messaging (= 9.5.0)
- firebase_core
- Flutter
- FirebaseCore (8.15.0):
- FirebaseCoreDiagnostics (~> 8.0)
- FirebaseCore (9.5.0):
- FirebaseCoreDiagnostics (~> 9.0)
- FirebaseCoreInternal (~> 9.0)
- GoogleUtilities/Environment (~> 7.7)
- GoogleUtilities/Logger (~> 7.7)
- FirebaseCoreDiagnostics (8.15.0):
- GoogleDataTransport (~> 9.1)
- FirebaseCoreDiagnostics (9.6.0):
- GoogleDataTransport (< 10.0.0, >= 9.1.4)
- GoogleUtilities/Environment (~> 7.7)
- GoogleUtilities/Logger (~> 7.7)
- nanopb (~> 2.30908.0)
- FirebaseInstallations (8.15.0):
- FirebaseCore (~> 8.0)
- nanopb (< 2.30910.0, >= 2.30908.0)
- FirebaseCoreInternal (9.6.0):
- "GoogleUtilities/NSData+zlib (~> 7.7)"
- FirebaseInstallations (9.6.0):
- FirebaseCore (~> 9.0)
- GoogleUtilities/Environment (~> 7.7)
- GoogleUtilities/UserDefaults (~> 7.7)
- PromisesObjC (< 3.0, >= 1.2)
- FirebaseMessaging (8.15.0):
- FirebaseCore (~> 8.0)
- FirebaseInstallations (~> 8.0)
- GoogleDataTransport (~> 9.1)
- PromisesObjC (~> 2.1)
- FirebaseMessaging (9.5.0):
- FirebaseCore (~> 9.0)
- FirebaseInstallations (~> 9.0)
- GoogleDataTransport (< 10.0.0, >= 9.1.4)
- GoogleUtilities/AppDelegateSwizzler (~> 7.7)
- GoogleUtilities/Environment (~> 7.7)
- GoogleUtilities/Reachability (~> 7.7)
- GoogleUtilities/UserDefaults (~> 7.7)
- nanopb (~> 2.30908.0)
- nanopb (< 2.30910.0, >= 2.30908.0)
- fk_user_agent (2.0.0):
- Flutter
- Flutter (1.0.0)
- flutter_email_sender (0.0.1):
- Flutter
- flutter_image_compress (0.0.1):
- flutter_image_compress (1.0.0):
- Flutter
- Mantle
- SDWebImage
@ -68,48 +71,46 @@ PODS:
- Flutter
- flutter_sodium (0.0.1):
- Flutter
- fluttercontactpicker (4.6.0):
- Flutter
- fluttertoast (0.0.2):
- Flutter
- Toast
- FMDB (2.7.5):
- FMDB/standard (= 2.7.5)
- FMDB/standard (2.7.5)
- GoogleDataTransport (9.1.4):
- GoogleDataTransport (9.2.0):
- GoogleUtilities/Environment (~> 7.7)
- nanopb (< 2.30910.0, >= 2.30908.0)
- PromisesObjC (< 3.0, >= 1.2)
- GoogleUtilities/AppDelegateSwizzler (7.7.0):
- GoogleUtilities/AppDelegateSwizzler (7.8.0):
- GoogleUtilities/Environment
- GoogleUtilities/Logger
- GoogleUtilities/Network
- GoogleUtilities/Environment (7.7.0):
- GoogleUtilities/Environment (7.8.0):
- PromisesObjC (< 3.0, >= 1.2)
- GoogleUtilities/Logger (7.7.0):
- GoogleUtilities/Logger (7.8.0):
- GoogleUtilities/Environment
- GoogleUtilities/Network (7.7.0):
- GoogleUtilities/Network (7.8.0):
- GoogleUtilities/Logger
- "GoogleUtilities/NSData+zlib"
- GoogleUtilities/Reachability
- "GoogleUtilities/NSData+zlib (7.7.0)"
- GoogleUtilities/Reachability (7.7.0):
- "GoogleUtilities/NSData+zlib (7.8.0)"
- GoogleUtilities/Reachability (7.8.0):
- GoogleUtilities/Logger
- GoogleUtilities/UserDefaults (7.7.0):
- GoogleUtilities/UserDefaults (7.8.0):
- GoogleUtilities/Logger
- image_editor (0.0.1):
- image_editor (1.0.0):
- Flutter
- in_app_purchase (0.0.1):
- Flutter
- libwebp (1.2.1):
- libwebp/demux (= 1.2.1)
- libwebp/mux (= 1.2.1)
- libwebp/webp (= 1.2.1)
- libwebp/demux (1.2.1):
- libwebp (1.2.3):
- libwebp/demux (= 1.2.3)
- libwebp/mux (= 1.2.3)
- libwebp/webp (= 1.2.3)
- libwebp/demux (1.2.3):
- libwebp/webp
- libwebp/mux (1.2.1):
- libwebp/mux (1.2.3):
- libwebp/demux
- libwebp/webp (1.2.1)
- libwebp/webp (1.2.3)
- local_auth (0.0.1):
- Flutter
- Mantle (2.2.0):
@ -119,11 +120,11 @@ PODS:
- Flutter
- move_to_background (0.0.1):
- Flutter
- nanopb (2.30908.0):
- nanopb/decode (= 2.30908.0)
- nanopb/encode (= 2.30908.0)
- nanopb/decode (2.30908.0)
- nanopb/encode (2.30908.0)
- nanopb (2.30909.0):
- nanopb/decode (= 2.30909.0)
- nanopb/encode (= 2.30909.0)
- nanopb/decode (2.30909.0)
- nanopb/encode (2.30909.0)
- open_mail_app (0.0.1):
- Flutter
- OrderedSet (5.0.0)
@ -134,23 +135,23 @@ PODS:
- photo_manager (2.0.0):
- Flutter
- FlutterMacOS
- PromisesObjC (2.1.0)
- PromisesObjC (2.1.1)
- Reachability (3.2)
- receive_sharing_intent (0.0.1):
- Flutter
- SDWebImage (5.12.5):
- SDWebImage/Core (= 5.12.5)
- SDWebImage/Core (5.12.5)
- SDWebImageWebPCoder (0.8.4):
- SDWebImage (5.13.4):
- SDWebImage/Core (= 5.13.4)
- SDWebImage/Core (5.13.4)
- SDWebImageWebPCoder (0.9.1):
- libwebp (~> 1.0)
- SDWebImage/Core (~> 5.10)
- Sentry (7.11.0):
- Sentry/Core (= 7.11.0)
- Sentry/Core (7.11.0)
- SDWebImage/Core (~> 5.13)
- Sentry (7.25.1):
- Sentry/Core (= 7.25.1)
- Sentry/Core (7.25.1)
- sentry_flutter (0.0.1):
- Flutter
- FlutterMacOS
- Sentry (~> 7.11.0)
- Sentry (~> 7.25.1)
- share_plus (0.0.1):
- Flutter
- shared_preferences_ios (0.0.1):
@ -187,7 +188,6 @@ DEPENDENCIES:
- flutter_native_splash (from `.symlinks/plugins/flutter_native_splash/ios`)
- flutter_secure_storage (from `.symlinks/plugins/flutter_secure_storage/ios`)
- flutter_sodium (from `.symlinks/plugins/flutter_sodium/ios`)
- fluttercontactpicker (from `.symlinks/plugins/fluttercontactpicker/ios`)
- fluttertoast (from `.symlinks/plugins/fluttertoast/ios`)
- image_editor (from `.symlinks/plugins/image_editor/ios`)
- in_app_purchase (from `.symlinks/plugins/in_app_purchase/ios`)
@ -214,6 +214,7 @@ SPEC REPOS:
- Firebase
- FirebaseCore
- FirebaseCoreDiagnostics
- FirebaseCoreInternal
- FirebaseInstallations
- FirebaseMessaging
- FMDB
@ -261,8 +262,6 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/flutter_secure_storage/ios"
flutter_sodium:
:path: ".symlinks/plugins/flutter_sodium/ios"
fluttercontactpicker:
:path: ".symlinks/plugins/fluttercontactpicker/ios"
fluttertoast:
:path: ".symlinks/plugins/fluttertoast/ios"
image_editor:
@ -308,48 +307,48 @@ SPEC CHECKSUMS:
background_fetch: 3795af8a49054dc526477cc2f60d2ed41de60587
connectivity: c4130b2985d4ef6fd26f9702e886bd5260681467
device_info: d7d233b645a32c40dfdc212de5cf646ca482f175
Firebase: 5f8193dff4b5b7c5d5ef72ae54bb76c08e2b841d
firebase_core: 318de541b0e61d3f24262982a3f0b54afe72439b
firebase_messaging: 943cfe65e0b3f457240489ce67655e40da1d270c
FirebaseCore: 5743c5785c074a794d35f2fff7ecc254a91e08b1
FirebaseCoreDiagnostics: 92e07a649aeb66352b319d43bdd2ee3942af84cb
FirebaseInstallations: 40bd9054049b2eae9a2c38ef1c3dd213df3605cd
FirebaseMessaging: 5e5118a2383b3531e730d974680954c679ca0a13
Firebase: 800f16f07af493d98d017446a315c27af0552f41
firebase_core: c266297725f66cacd7eac30745cd1a629d3b048b
firebase_messaging: 5180a2b828b1997ea70b7e7d14c0bcefa14938b7
FirebaseCore: 25c0400b670fd1e2f2104349cd3b5dcce8d9418f
FirebaseCoreDiagnostics: 99a495094b10a57eeb3ae8efa1665700ad0bdaa6
FirebaseCoreInternal: bca76517fe1ed381e989f5e7d8abb0da8d85bed3
FirebaseInstallations: 0a115432c4e223c5ab20b0dbbe4cbefa793a0e8e
FirebaseMessaging: 732623518591384f61c287e3d8f65294beb7ffb3
fk_user_agent: 1f47ec39291e8372b1d692b50084b0d54103c545
Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
flutter_email_sender: 02d7443217d8c41483223627972bfdc09f74276b
flutter_image_compress: fd2b476345226e1a10ea352fa306af95704642c1
flutter_image_compress: 5a5e9aee05b6553048b8df1c3bc456d0afaac433
flutter_inappwebview: bfd58618f49dc62f2676de690fc6dcda1d6c3721
flutter_keyboard_visibility: 0339d06371254c3eb25eeb90ba8d17dca8f9c069
flutter_local_notifications: 0c0b1ae97e741e1521e4c1629a459d04b9aec743
flutter_native_splash: 52501b97d1c0a5f898d687f1646226c1f93c56ef
flutter_secure_storage: 7953c38a04c3fdbb00571bcd87d8e3b5ceb9daec
flutter_sodium: c84426b4de738514b5b66cfdeb8a06634e72fe0b
fluttercontactpicker: d582836dea6b5d489f3d259f35d7817ae82ee5e6
fluttertoast: 16fbe6039d06a763f3533670197d01fc73459037
FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a
GoogleDataTransport: 5fffe35792f8b96ec8d6775f5eccd83c998d5a3b
GoogleUtilities: e0913149f6b0625b553d70dae12b49fc62914fd1
image_editor: c1d038630eedea60d2dee9c14f36aa66c7f9cfab
GoogleDataTransport: 1c8145da7117bd68bbbed00cf304edb6a24de00f
GoogleUtilities: 1d20a6ad97ef46f67bbdec158ce00563a671ebb7
image_editor: eab82a302a6623a866da5145b7c4c0ee8a4ffbb4
in_app_purchase: 3e2155afa9d03d4fa32d9e62d567885080ce97d6
libwebp: 98a37e597e40bfdb4c911fc98f2c53d0b12d05fc
libwebp: 60305b2e989864154bd9be3d772730f08fc6a59c
local_auth: 1740f55d7af0a2e2a8684ce225fe79d8931e808c
Mantle: c5aa8794a29a022dfbbfc9799af95f477a69b62d
motionphoto: d4a432b8c8f22fb3ad966258597c0103c9c5ff16
move_to_background: 39a5b79b26d577b0372cbe8a8c55e7aa9fcd3a2d
nanopb: a0ba3315591a9ae0a16a309ee504766e90db0c96
nanopb: b552cce312b6c8484180ef47159bc0f65a1f0431
open_mail_app: 794172f6a22cd16319d3ddaf45e945b2f74952b0
OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c
package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e
path_provider_ios: 14f3d2fd28c4fdb42f44e0f751d12861c43cee02
photo_manager: 4f6810b7dfc4feb03b461ac1a70dacf91fba7604
PromisesObjC: 99b6f43f9e1044bd87a95a60beff28c2c44ddb72
PromisesObjC: ab77feca74fa2823e7af4249b8326368e61014cb
Reachability: 33e18b67625424e47b6cde6d202dce689ad7af96
receive_sharing_intent: c0d87310754e74c0f9542947e7cbdf3a0335a3b1
SDWebImage: 0905f1b7760fc8ac4198cae0036600d67478751e
SDWebImageWebPCoder: f93010f3f6c031e2f8fb3081ca4ee6966c539815
Sentry: 0c5cd63d714187b4a39c331c1f0eb04ba7868341
sentry_flutter: efb3df2c203cd03aad255892a8d628a458656d14
SDWebImage: e5cc87bf736e60f49592f307bdf9e157189298a3
SDWebImageWebPCoder: 18503de6621dd2c420d680e33d46bf8e1d5169b0
Sentry: dd29c18c32b0af9269949f079cf631d581ca76ca
sentry_flutter: 544b23de27343d0cd12d8d16b0fac71dc884f0e6
share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68
shared_preferences_ios: 548a61f8053b9b8a49ac19c1ffbc8b92c50d68ad
sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904
@ -360,6 +359,6 @@ SPEC CHECKSUMS:
video_thumbnail: c4e2a3c539e247d4de13cd545344fd2d26ffafd1
wakelock: d0fc7c864128eac40eba1617cb5264d9c940b46f
PODFILE CHECKSUM: 44d44a69efc5f474c5f17ed621cb4a9375ab0d86
PODFILE CHECKSUM: c1a8f198a245ed1f10e40b617efdb129b021b225
COCOAPODS: 1.11.3

View file

@ -16,7 +16,7 @@
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
DA6BE5E826B3BC8600656280 /* (null) in Resources */ = {isa = PBXBuildFile; };
DA6BE5E826B3BC8600656280 /* BuildFile in Resources */ = {isa = PBXBuildFile; };
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
@ -213,7 +213,7 @@
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */,
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */,
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */,
DA6BE5E826B3BC8600656280 /* (null) in Resources */,
DA6BE5E826B3BC8600656280 /* BuildFile in Resources */,
277218A0270F596900FFE3CC /* GoogleService-Info.plist in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
@ -259,6 +259,7 @@
"${BUILT_PRODUCTS_DIR}/FMDB/FMDB.framework",
"${BUILT_PRODUCTS_DIR}/FirebaseCore/FirebaseCore.framework",
"${BUILT_PRODUCTS_DIR}/FirebaseCoreDiagnostics/FirebaseCoreDiagnostics.framework",
"${BUILT_PRODUCTS_DIR}/FirebaseCoreInternal/FirebaseCoreInternal.framework",
"${BUILT_PRODUCTS_DIR}/FirebaseInstallations/FirebaseInstallations.framework",
"${BUILT_PRODUCTS_DIR}/FirebaseMessaging/FirebaseMessaging.framework",
"${BUILT_PRODUCTS_DIR}/GoogleDataTransport/GoogleDataTransport.framework",
@ -283,7 +284,6 @@
"${BUILT_PRODUCTS_DIR}/flutter_native_splash/flutter_native_splash.framework",
"${BUILT_PRODUCTS_DIR}/flutter_secure_storage/flutter_secure_storage.framework",
"${BUILT_PRODUCTS_DIR}/flutter_sodium/flutter_sodium.framework",
"${BUILT_PRODUCTS_DIR}/fluttercontactpicker/fluttercontactpicker.framework",
"${BUILT_PRODUCTS_DIR}/fluttertoast/fluttertoast.framework",
"${BUILT_PRODUCTS_DIR}/image_editor/image_editor.framework",
"${BUILT_PRODUCTS_DIR}/in_app_purchase/in_app_purchase.framework",
@ -312,6 +312,7 @@
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FMDB.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseCore.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseCoreDiagnostics.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseCoreInternal.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseInstallations.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseMessaging.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleDataTransport.framework",
@ -336,7 +337,6 @@
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_native_splash.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_secure_storage.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_sodium.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/fluttercontactpicker.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/fluttertoast.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/image_editor.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/in_app_purchase.framework",
@ -497,7 +497,10 @@
"$(PROJECT_DIR)/Flutter",
);
INFOPLIST_FILE = Runner/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/Flutter",
@ -654,7 +657,10 @@
"$(PROJECT_DIR)/Flutter",
);
INFOPLIST_FILE = Runner/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/Flutter",
@ -688,7 +694,10 @@
"$(PROJECT_DIR)/Flutter",
);
INFOPLIST_FILE = Runner/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/Flutter",

View file

@ -22,6 +22,8 @@
<string>$(FLUTTER_BUILD_NAME)</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>MinimumOSVersion</key>
<string>12.0</string>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>googlegmail</string>

View file

@ -1,15 +0,0 @@
{
"hi": [
"sign_up",
"log_in",
"log_in_code_expired",
"incorrect_code_title",
"incorrect_code_msg",
"oops",
"start_backup",
"auth_session_expired",
"auth_login_again",
"auth_logging_out",
"email_already_claimed"
]
}

View file

@ -1,4 +1,3 @@
arb-dir: lib/l10n
template-arb-file: app_en.arb
output-localization-file: app_localizations.dart
untranslated-messages-file: l10n-missing-translation.json
output-localization-file: app_localizations.dart

View file

@ -8,10 +8,8 @@ import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter_easyloading/flutter_easyloading.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:logging/logging.dart';
import 'package:photos/ente_theme_data.dart';
import 'package:photos/l10n/l10n.dart';
import 'package:photos/services/app_lifecycle_service.dart';
import 'package:photos/services/sync_service.dart';
import 'package:photos/ui/home_widget.dart';
@ -58,13 +56,8 @@ class _EnteAppState extends State<EnteApp> with WidgetsBindingObserver {
home: EnteApp._homeWidget,
debugShowCheckedModeBanner: false,
builder: EasyLoading.init(),
supportedLocales: L10n.all,
localizationsDelegates: const [
AppLocalizations.delegate,
GlobalMaterialLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
],
supportedLocales: AppLocalizations.supportedLocales,
localizationsDelegates: AppLocalizations.localizationsDelegates,
),
);
} else {
@ -76,13 +69,8 @@ class _EnteAppState extends State<EnteApp> with WidgetsBindingObserver {
home: EnteApp._homeWidget,
debugShowCheckedModeBanner: false,
builder: EasyLoading.init(),
supportedLocales: L10n.all,
localizationsDelegates: const [
AppLocalizations.delegate,
GlobalMaterialLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
],
supportedLocales: AppLocalizations.supportedLocales,
localizationsDelegates: AppLocalizations.localizationsDelegates,
);
}
}

View file

@ -344,6 +344,8 @@ class FilesDB {
Future<void> clearTable() async {
final db = await instance.database;
await db.delete(filesTable);
await db.delete("device_files");
await db.delete("device_collections");
}
Future<void> deleteDB() async {

View file

@ -1,3 +0,0 @@
{
"ok": "ok"
}

View file

@ -1,10 +0,0 @@
import 'dart:ui';
class L10n {
static final all = [
const Locale('en'),
const Locale('hi'),
];
}

View file

@ -1,4 +1,5 @@
// @dart = 2.9
import 'dart:io';
import 'dart:math';
import 'package:computer/computer.dart';
@ -92,7 +93,7 @@ Future<List<LocalPathAsset>> getAllLocalAssets() async {
);
filterOptionGroup.createTimeCond = DateTimeCond.def().copyWith(ignore: true);
final assetPaths = await PhotoManager.getAssetPathList(
hasAll: true,
hasAll: !Platform.isAndroid,
type: RequestType.common,
filterOption: filterOptionGroup,
);
@ -235,7 +236,7 @@ Future<List<AssetPathEntity>> _getGalleryList({
}
filterOptionGroup.containsPathModified = containsModifiedPath;
final galleryList = await PhotoManager.getAssetPathList(
hasAll: true,
hasAll: !Platform.isAndroid,
type: RequestType.common,
filterOption: filterOptionGroup,
);

View file

@ -247,6 +247,7 @@ class RemoteSyncService {
Future<void> syncDeviceCollectionFilesForUpload() async {
final int ownerID = _config.getUserID();
final deviceCollections = await _db.getDeviceCollections();
deviceCollections.removeWhere((element) => !element.shouldBackup);
// Sort by count to ensure that photos in iOS are first inserted in
@ -256,6 +257,7 @@ class RemoteSyncService {
await _createCollectionsForDevicePath(deviceCollections);
final Map<String, Set<String>> pathIdToLocalIDs =
await _db.getDevicePathIDToLocalIDMap();
bool moreFilesMarkedForBackup = false;
for (final deviceCollection in deviceCollections) {
_logger.fine("processing ${deviceCollection.name}");
final Set<String> localIDsToSync =
@ -269,7 +271,7 @@ class RemoteSyncService {
if (localIDsToSync.isEmpty || deviceCollection.collectionID == -1) {
continue;
}
moreFilesMarkedForBackup = true;
await _db.setCollectionIDForUnMappedLocalFiles(
deviceCollection.collectionID,
localIDsToSync,
@ -322,6 +324,10 @@ class RemoteSyncService {
}
}
}
if (moreFilesMarkedForBackup && !_config.hasSelectedAllFoldersForBackup()) {
debugPrint("force reload due to display new files");
Bus.instance.fire(ForceReloadHomeGalleryEvent());
}
}
Future<void> updateDeviceFolderSyncStatus(
@ -347,18 +353,23 @@ class RemoteSyncService {
2) Delete files who localIDs is also present in other collections.
3) For Remaining files, set the collectionID as -1
*/
debugPrint("Removing files for collections $collectionIDs");
_logger.info("Removing files for collections $collectionIDs");
for (int collectionID in collectionIDs) {
final List<File> pendingUploads =
await _db.getPendingUploadForCollection(collectionID);
if (pendingUploads.isEmpty) {
continue;
} else {
_logger.info("RemovingFiles $collectionIDs: pendingUploads "
"${pendingUploads.length}");
}
final Set<String> localIDsInOtherFileEntries =
await _db.getLocalIDsPresentInEntries(
pendingUploads,
collectionID,
);
_logger.info("RemovingFiles $collectionIDs: filesInOtherCollection "
"${localIDsInOtherFileEntries.length}");
final List<File> entriesToUpdate = [];
final List<int> entriesToDelete = [];
for (File pendingUpload in pendingUploads) {
@ -371,6 +382,10 @@ class RemoteSyncService {
}
await _db.deleteMultipleByGeneratedIDs(entriesToDelete);
await _db.insertMultiple(entriesToUpdate);
_logger.info(
"RemovingFiles $collectionIDs: deleted "
"${entriesToDelete.length} and updated ${entriesToUpdate.length}",
);
}
}

View file

@ -17,6 +17,7 @@ import 'package:photos/models/file.dart';
import 'package:photos/services/remote_sync_service.dart';
import 'package:photos/ui/common/loading_widget.dart';
import 'package:photos/ui/viewer/file/thumbnail_widget.dart';
import 'package:photos/utils/dialog_util.dart';
class BackupFolderSelectionPage extends StatefulWidget {
final bool isOnboarding;
@ -175,23 +176,7 @@ class _BackupFolderSelectionPageState extends State<BackupFolderSelectionPage> {
onPressed: _selectedDevicePathIDs.isEmpty
? null
: () async {
final Map<String, bool> syncStatus = {};
for (String pathID in _allDevicePathIDs) {
syncStatus[pathID] =
_selectedDevicePathIDs.contains(pathID);
}
await Configuration.instance
.setHasSelectedAnyBackupFolder(
_selectedDevicePathIDs.isNotEmpty,
);
await RemoteSyncService.instance
.updateDeviceFolderSyncStatus(syncStatus);
await Configuration.instance
.setSelectAllFoldersForBackup(
_allDevicePathIDs.length ==
_selectedDevicePathIDs.length,
);
Navigator.of(context).pop();
await updateFolderSettings();
},
child: Text(widget.buttonText),
),
@ -223,6 +208,33 @@ class _BackupFolderSelectionPageState extends State<BackupFolderSelectionPage> {
);
}
Future<void> updateFolderSettings() async {
final dialog = createProgressDialog(
context,
"Updating folder selection...",
);
await dialog.show();
try {
final Map<String, bool> syncStatus = {};
for (String pathID in _allDevicePathIDs) {
syncStatus[pathID] = _selectedDevicePathIDs.contains(pathID);
}
await Configuration.instance.setHasSelectedAnyBackupFolder(
_selectedDevicePathIDs.isNotEmpty,
);
await Configuration.instance.setSelectAllFoldersForBackup(
_allDevicePathIDs.length == _selectedDevicePathIDs.length,
);
await RemoteSyncService.instance.updateDeviceFolderSyncStatus(syncStatus);
dialog.hide();
Navigator.of(context).pop();
} catch (e, s) {
_logger.severe("Failed to updated backup folder", e, s);
await dialog.hide();
showGenericErrorDialog(context);
}
}
Widget _getFolders() {
if (_deviceCollections == null) {
return const EnteLoadingWidget();

View file

@ -2,7 +2,6 @@
import 'package:flutter/material.dart';
import 'package:package_info_plus/package_info_plus.dart';
import 'package:photos/utils/dialog_util.dart';
class AppVersionWidget extends StatefulWidget {
const AppVersionWidget({
@ -30,13 +29,7 @@ class _AppVersionWidgetState extends State<AppVersionWidget> {
if (now - (_lastTap ?? now) < kConsecutiveTapTimeWindowInMilliseconds) {
_consecutiveTaps++;
if (_consecutiveTaps == kTapThresholdForInspector) {
final dialog =
createProgressDialog(context, "Starting network inspector...");
await dialog.show();
await Future.delayed(
const Duration(milliseconds: kDummyDelayDurationInMilliseconds),
);
await dialog.hide();
// Do nothing
}
} else {
_consecutiveTaps = 1;

View file

@ -6,7 +6,6 @@ import 'package:fast_base58/fast_base58.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_typeahead/flutter_typeahead.dart';
import 'package:fluttercontactpicker/fluttercontactpicker.dart';
import 'package:logging/logging.dart';
import 'package:photos/core/configuration.dart';
import 'package:photos/db/public_keys_db.dart';
@ -174,57 +173,46 @@ class _SharingDialogState extends State<SharingDialog> {
}
Widget _getEmailField() {
return Row(
children: [
Expanded(
child: TypeAheadField(
textFieldConfiguration: const TextFieldConfiguration(
keyboardType: TextInputType.emailAddress,
decoration: InputDecoration(
border: InputBorder.none,
hintText: "email@your-friend.com",
),
),
hideOnEmpty: true,
loadingBuilder: (context) {
return const EnteLoadingWidget();
},
suggestionsCallback: (pattern) async {
_email = pattern;
return PublicKeysDB.instance.searchByEmail(_email);
},
itemBuilder: (context, suggestion) {
return Container(
padding: const EdgeInsets.fromLTRB(12, 8, 12, 8),
child: Text(
suggestion.email,
overflow: TextOverflow.clip,
return Container(
padding: const EdgeInsets.fromLTRB(8, 0, 8, 0),
child: Row(
children: [
Expanded(
child: TypeAheadField(
textFieldConfiguration: const TextFieldConfiguration(
keyboardType: TextInputType.emailAddress,
decoration: InputDecoration(
border: InputBorder.none,
hintText: "email@your-friend.com",
),
);
},
onSuggestionSelected: (PublicKey suggestion) {
_addEmailToCollection(
suggestion.email,
publicKey: suggestion.publicKey,
);
},
),
hideOnEmpty: true,
loadingBuilder: (context) {
return const EnteLoadingWidget();
},
suggestionsCallback: (pattern) async {
_email = pattern;
return PublicKeysDB.instance.searchByEmail(_email);
},
itemBuilder: (context, suggestion) {
return Container(
padding: const EdgeInsets.fromLTRB(12, 8, 12, 8),
child: Text(
suggestion.email,
overflow: TextOverflow.clip,
),
);
},
onSuggestionSelected: (PublicKey suggestion) {
_addEmailToCollection(
suggestion.email,
publicKey: suggestion.publicKey,
);
},
),
),
),
const Padding(padding: EdgeInsets.all(8)),
IconButton(
icon: Icon(
Icons.contact_mail_outlined,
color:
Theme.of(context).colorScheme.greenAlternative.withOpacity(0.8),
),
onPressed: () async {
final emailContact = await FlutterContactPicker.pickEmailContact(
askForPermission: true,
);
_addEmailToCollection(emailContact.email.email);
},
),
],
],
),
);
}

View file

@ -186,6 +186,7 @@ class FileUploader {
for (final id in uploadsToBeRemoved) {
_queue.remove(id).completer.completeError(reason);
}
_logger.info('number of enteries removed from queue ${uploadsToBeRemoved.length}');
_totalCountInUploadSession -= uploadsToBeRemoved.length;
}

View file

@ -7,7 +7,7 @@ packages:
name: adaptive_theme
url: "https://pub.dartlang.org"
source: hosted
version: "3.1.0"
version: "3.1.1"
animate_do:
dependency: "direct main"
description:
@ -21,7 +21,7 @@ packages:
name: archive
url: "https://pub.dartlang.org"
source: hosted
version: "3.3.0"
version: "3.3.1"
args:
dependency: transitive
description:
@ -35,7 +35,7 @@ packages:
name: async
url: "https://pub.dartlang.org"
source: hosted
version: "2.8.2"
version: "2.9.0"
background_fetch:
dependency: "direct main"
description:
@ -63,35 +63,28 @@ packages:
name: cached_network_image
url: "https://pub.dartlang.org"
source: hosted
version: "3.2.1"
version: "3.2.2"
cached_network_image_platform_interface:
dependency: transitive
description:
name: cached_network_image_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
version: "2.0.0"
cached_network_image_web:
dependency: transitive
description:
name: cached_network_image_web
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.1"
version: "1.0.2"
characters:
dependency: transitive
description:
name: characters
url: "https://pub.dartlang.org"
source: hosted
version: "1.2.0"
charcode:
dependency: transitive
description:
name: charcode
url: "https://pub.dartlang.org"
source: hosted
version: "1.3.1"
version: "1.2.1"
chewie:
dependency: "direct main"
description:
@ -105,7 +98,7 @@ packages:
name: clock
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
version: "1.1.1"
collection:
dependency: "direct main"
description:
@ -155,27 +148,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.1"
contact_picker_platform_interface:
dependency: transitive
description:
name: contact_picker_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "4.7.0"
contact_picker_web:
dependency: transitive
description:
name: contact_picker_web
url: "https://pub.dartlang.org"
source: hosted
version: "4.7.0"
convert:
dependency: transitive
description:
name: convert
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.1"
version: "3.0.2"
crypto:
dependency: transitive
description:
@ -196,14 +175,14 @@ packages:
name: cupertino_icons
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.4"
version: "1.0.5"
dbus:
dependency: transitive
description:
name: dbus
url: "https://pub.dartlang.org"
source: hosted
version: "0.7.3"
version: "0.7.4"
device_info:
dependency: "direct main"
description:
@ -245,7 +224,7 @@ packages:
name: email_validator
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.1"
version: "2.1.17"
event_bus:
dependency: "direct main"
description:
@ -280,21 +259,21 @@ packages:
name: extended_image
url: "https://pub.dartlang.org"
source: hosted
version: "6.2.1"
version: "6.3.1"
extended_image_library:
dependency: transitive
description:
name: extended_image_library
url: "https://pub.dartlang.org"
source: hosted
version: "3.3.0"
version: "3.4.0"
fake_async:
dependency: transitive
description:
name: fake_async
url: "https://pub.dartlang.org"
source: hosted
version: "1.3.0"
version: "1.3.1"
fast_base58:
dependency: "direct main"
description:
@ -315,49 +294,49 @@ packages:
name: file
url: "https://pub.dartlang.org"
source: hosted
version: "6.1.2"
version: "6.1.4"
firebase_core:
dependency: "direct main"
description:
name: firebase_core
url: "https://pub.dartlang.org"
source: hosted
version: "1.17.1"
version: "1.23.0"
firebase_core_platform_interface:
dependency: transitive
description:
name: firebase_core_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "4.4.0"
version: "4.5.1"
firebase_core_web:
dependency: transitive
description:
name: firebase_core_web
url: "https://pub.dartlang.org"
source: hosted
version: "1.6.4"
version: "1.7.2"
firebase_messaging:
dependency: "direct main"
description:
name: firebase_messaging
url: "https://pub.dartlang.org"
source: hosted
version: "11.4.1"
version: "11.4.4"
firebase_messaging_platform_interface:
dependency: transitive
description:
name: firebase_messaging_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "3.5.1"
version: "3.5.4"
firebase_messaging_web:
dependency: transitive
description:
name: firebase_messaging_web
url: "https://pub.dartlang.org"
source: hosted
version: "2.4.1"
version: "2.4.4"
fk_user_agent:
dependency: "direct main"
description:
@ -411,7 +390,7 @@ packages:
name: flutter_image_compress
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
version: "1.1.3"
flutter_inappwebview:
dependency: "direct main"
description:
@ -425,7 +404,7 @@ packages:
name: flutter_keyboard_visibility
url: "https://pub.dartlang.org"
source: hosted
version: "5.2.0"
version: "5.3.0"
flutter_keyboard_visibility_platform_interface:
dependency: transitive
description:
@ -460,14 +439,14 @@ packages:
name: flutter_local_notifications
url: "https://pub.dartlang.org"
source: hosted
version: "9.5.3+1"
version: "9.9.1"
flutter_local_notifications_linux:
dependency: transitive
description:
name: flutter_local_notifications_linux
url: "https://pub.dartlang.org"
source: hosted
version: "0.4.2"
version: "0.5.1"
flutter_local_notifications_platform_interface:
dependency: transitive
description:
@ -486,7 +465,7 @@ packages:
name: flutter_native_splash
url: "https://pub.dartlang.org"
source: hosted
version: "2.2.0+1"
version: "2.2.10+1"
flutter_password_strength:
dependency: "direct main"
description:
@ -500,7 +479,7 @@ packages:
name: flutter_plugin_android_lifecycle
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.6"
version: "2.0.7"
flutter_secure_storage:
dependency: "direct main"
description:
@ -533,7 +512,7 @@ packages:
name: flutter_typeahead
url: "https://pub.dartlang.org"
source: hosted
version: "4.0.0"
version: "4.1.1"
flutter_web_plugins:
dependency: transitive
description: flutter
@ -546,13 +525,6 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "0.2.0"
fluttercontactpicker:
dependency: "direct main"
description:
name: fluttercontactpicker
url: "https://pub.dartlang.org"
source: hosted
version: "4.7.0"
fluttertoast:
dependency: "direct main"
description:
@ -587,14 +559,14 @@ packages:
name: http
url: "https://pub.dartlang.org"
source: hosted
version: "0.13.4"
version: "0.13.5"
http_client_helper:
dependency: transitive
description:
name: http_client_helper
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.2"
version: "2.0.3"
http_parser:
dependency: transitive
description:
@ -608,14 +580,14 @@ packages:
name: image
url: "https://pub.dartlang.org"
source: hosted
version: "3.1.3"
version: "3.2.0"
image_editor:
dependency: "direct main"
description:
name: image_editor
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.2"
version: "1.1.0"
implicitly_animated_reorderable_list:
dependency: "direct main"
description:
@ -650,21 +622,14 @@ packages:
name: json_annotation
url: "https://pub.dartlang.org"
source: hosted
version: "4.5.0"
version: "4.7.0"
like_button:
dependency: "direct main"
description:
name: like_button
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.4"
lint:
dependency: transitive
description:
name: lint
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.2"
version: "2.0.5"
lints:
dependency: transitive
description:
@ -699,28 +664,28 @@ packages:
name: lottie
url: "https://pub.dartlang.org"
source: hosted
version: "1.3.0"
version: "1.4.3"
matcher:
dependency: transitive
description:
name: matcher
url: "https://pub.dartlang.org"
source: hosted
version: "0.12.11"
version: "0.12.12"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
url: "https://pub.dartlang.org"
source: hosted
version: "0.1.4"
version: "0.1.5"
meta:
dependency: transitive
description:
name: meta
url: "https://pub.dartlang.org"
source: hosted
version: "1.7.0"
version: "1.8.0"
mime:
dependency: transitive
description:
@ -733,7 +698,7 @@ packages:
description:
path: "."
ref: HEAD
resolved-ref: "669388e102cfc832c06e2f3085a5b15d8620dde3"
resolved-ref: "18a50c3a7e7a36d61f09a93733ef7c4f0516392e"
url: "https://github.com/ente-io/motionphoto.git"
source: git
version: "0.0.1"
@ -813,7 +778,7 @@ packages:
name: page_transition
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.5"
version: "2.0.9"
password_strength:
dependency: "direct main"
description:
@ -827,49 +792,49 @@ packages:
name: path
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.1"
version: "1.8.2"
path_drawing:
dependency: transitive
description:
name: path_drawing
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
version: "1.0.1"
path_parsing:
dependency: transitive
description:
name: path_parsing
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
version: "1.0.1"
path_provider:
dependency: "direct main"
description:
name: path_provider
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.10"
version: "2.0.11"
path_provider_android:
dependency: transitive
description:
name: path_provider_android
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.14"
version: "2.0.20"
path_provider_ios:
dependency: transitive
description:
name: path_provider_ios
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.9"
version: "2.0.11"
path_provider_linux:
dependency: transitive
description:
name: path_provider_linux
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.6"
version: "2.1.7"
path_provider_macos:
dependency: transitive
description:
@ -883,14 +848,14 @@ packages:
name: path_provider_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.4"
version: "2.0.5"
path_provider_windows:
dependency: transitive
description:
name: path_provider_windows
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.6"
version: "2.0.7"
pedantic:
dependency: "direct main"
description:
@ -939,14 +904,14 @@ packages:
name: plugin_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.2"
version: "2.1.3"
pointycastle:
dependency: transitive
description:
name: pointycastle
url: "https://pub.dartlang.org"
source: hosted
version: "3.6.0"
version: "3.6.2"
process:
dependency: transitive
description:
@ -981,7 +946,7 @@ packages:
name: rxdart
url: "https://pub.dartlang.org"
source: hosted
version: "0.27.3"
version: "0.27.5"
scrollable_positioned_list:
dependency: "direct main"
description:
@ -1009,7 +974,7 @@ packages:
name: share_plus
url: "https://pub.dartlang.org"
source: hosted
version: "4.0.10"
version: "4.4.0"
share_plus_linux:
dependency: transitive
description:
@ -1023,28 +988,28 @@ packages:
name: share_plus_macos
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.0"
version: "3.0.1"
share_plus_platform_interface:
dependency: transitive
description:
name: share_plus_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.2"
version: "3.0.3"
share_plus_web:
dependency: transitive
description:
name: share_plus_web
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.0"
version: "3.0.1"
share_plus_windows:
dependency: transitive
description:
name: share_plus_windows
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.0"
version: "3.0.1"
shared_preferences:
dependency: "direct main"
description:
@ -1058,7 +1023,7 @@ packages:
name: shared_preferences_android
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.12"
version: "2.0.13"
shared_preferences_ios:
dependency: transitive
description:
@ -1086,7 +1051,7 @@ packages:
name: shared_preferences_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.0"
version: "2.1.0"
shared_preferences_web:
dependency: transitive
description:
@ -1112,28 +1077,28 @@ packages:
name: source_span
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.2"
version: "1.9.0"
sprintf:
dependency: transitive
description:
name: sprintf
url: "https://pub.dartlang.org"
source: hosted
version: "6.0.0"
version: "6.0.2"
sqflite:
dependency: "direct main"
description:
name: sqflite
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.2+1"
version: "2.1.0"
sqflite_common:
dependency: transitive
description:
name: sqflite_common
url: "https://pub.dartlang.org"
source: hosted
version: "2.2.1+1"
version: "2.3.0"
sqflite_migration:
dependency: "direct main"
description:
@ -1168,7 +1133,7 @@ packages:
name: string_scanner
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
version: "1.1.1"
syncfusion_flutter_core:
dependency: "direct main"
description:
@ -1189,21 +1154,21 @@ packages:
name: synchronized
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.0+2"
version: "3.0.0+3"
term_glyph:
dependency: transitive
description:
name: term_glyph
url: "https://pub.dartlang.org"
source: hosted
version: "1.2.0"
version: "1.2.1"
test_api:
dependency: transitive
description:
name: test_api
url: "https://pub.dartlang.org"
source: hosted
version: "0.4.9"
version: "0.4.12"
timezone:
dependency: transitive
description:
@ -1259,14 +1224,14 @@ packages:
name: url_launcher
url: "https://pub.dartlang.org"
source: hosted
version: "6.1.2"
version: "6.1.6"
url_launcher_android:
dependency: transitive
description:
name: url_launcher_android
url: "https://pub.dartlang.org"
source: hosted
version: "6.0.17"
version: "6.0.19"
url_launcher_ios:
dependency: transitive
description:
@ -1294,14 +1259,14 @@ packages:
name: url_launcher_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.5"
version: "2.1.1"
url_launcher_web:
dependency: transitive
description:
name: url_launcher_web
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.11"
version: "2.0.13"
url_launcher_windows:
dependency: transitive
description:
@ -1364,7 +1329,7 @@ packages:
name: wakelock
url: "https://pub.dartlang.org"
source: hosted
version: "0.6.1+2"
version: "0.6.2"
wakelock_macos:
dependency: transitive
description:
@ -1413,14 +1378,14 @@ packages:
name: xdg_directories
url: "https://pub.dartlang.org"
source: hosted
version: "0.2.0+1"
version: "0.2.0+2"
xml:
dependency: transitive
description:
name: xml
url: "https://pub.dartlang.org"
source: hosted
version: "5.4.1"
version: "6.1.0"
yaml:
dependency: transitive
description:
@ -1429,5 +1394,5 @@ packages:
source: hosted
version: "3.1.1"
sdks:
dart: ">=2.17.0 <3.0.0"
flutter: ">=3.0.0"
dart: ">=2.18.0 <3.0.0"
flutter: ">=3.3.0"

View file

@ -11,7 +11,7 @@ description: ente photos application
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 0.6.35+365
version: 0.6.39+369
environment:
sdk: '>=2.12.0 <3.0.0'
@ -62,7 +62,6 @@ dependencies:
flutter_sodium: ^0.2.0
flutter_typeahead: ^4.0.0
flutter_windowmanager: ^0.2.0
fluttercontactpicker: ^4.7.0
fluttertoast: ^8.0.6
google_nav_bar: ^5.0.5
http: ^0.13.4

@ -1 +1 @@
Subproject commit 112cc8be0c2f07129edd7575003a3f9ddb62ae3f
Subproject commit dc666694ffd763b5eb68c7a195097e471620dafc

@ -1 +1 @@
Subproject commit 1ba4085ad44496f37392ae9172393d741fe65b75
Subproject commit 2cd4193c7a938d734bcddce514cba36040ca6035