From d8cb5dfd6f1a2ca52534c4a89d60ea1181fd70fe Mon Sep 17 00:00:00 2001 From: Diego Mello Date: Mon, 25 Jan 2021 14:14:45 -0300 Subject: [PATCH] Merge 4.14.0 into single-server (#2833) * [FIX] RoomItem using deprecated animated event signature (#2771) * [FIX] Server autocomplete text breaking line (#2774) * [FIX] ServerDropdown flashing bigger server icon (#2775) * [FIX] ServerDropdown flashing bigger server icon * Remove unused logo and update image path where needed * Minor tweak Co-authored-by: Diego Mello * [FIX] Rooms list not being updated on some cases (#2765) * Request subscriptions on RoomsListView.constructor * Removes opened rooms from last message persisting * Change server reducer * Prevent undefined ids causing query error * [FIX] Share Extension hitting memory limit on iOS (#2788) * [FIX] Disallow swipe to dismiss on share extension * Limit query to 20 and clean up props * Remove rn-extension-share branch pointer * Test new branch * Remove branch * [IMPROVEMENT] Threads layout tweaks (#2686) * improvement: Thread Details * fix: re-render Thread Messages Item * fix: update snapshots * improve: thread details component * fix: cast replies length * improvement: format date of threads * improvement: thread details styles * fix: wrap text * tests: update snapshot * improvement: use same date format for all dates * Icon size 24 * Remove date * Remove prop drill * Badge position * Badge container tweak * Fix inline style * Move ThreadDetails to containers * Update stories * Fix lint * Remove wrong prop Co-authored-by: Diego Mello * [CHORE] Remove some migrations (#2792) * Remove force rooms refresh * Remove MMKV migration * Bump version to 4.14.0 (#2797) * [FIX] Messagebox tracking lost on pop gesture navigation (#2799) * Use setTimeout instead of InteractionManager * Update tracking lib * [FIX] Back button closing activity when on root stack screen (#2804) * Make hardware back button to behave as home button on root screens * Remove unnecessary code * Remove handleBackPress from OnboardingView * Fix lint * [i18n] Add missing German strings (#2715) Co-authored-by: Diego Mello * [NEW] Encrypted Discussions (#2813) * I18n key fix * Add encrypted switch * Remove unused i18n keys * Add enabled to encryption reducer * Show encrypted option on CreateDiscussionView only when e2e encryption is properly set * Add localSearch and use it on search * Use encrypted from parent channel * Fix method calls as rest api with 2fa enabled * Fix logout after reset keys * Use encryption reducer instead of lib directly to check render * Check for room type logic to display encryption option on create discussion * Check toggle-room-e2e-encryption permission on RoomActionsView * Check for encryption status instead of setting on server * Fix * Disable switch instead of hide it * Fix spotlight for DMs * Fix server test * [FIX] Messagebox missing style for text color (#2786) * Changing auxilaryTintColor * Changed Placeholder color to BodyText color * added color prop * eslint changes * used array for styles Co-authored-by: Diego Mello * [I18N] Update arabic (#2696) * Update ar.js * Update ar.js Co-authored-by: Diego Mello * [FIX] Workspace input without i18n (#2689) * [FIX] Translation of strings in Login page * Strings are added for translation. fixes: #2620 * Add pt-BR Co-authored-by: Diego Mello * [FIX] Spotlight returning duplicated entries (#2805) * Update rocketchat.js * Updated search function * Minor improvements * Remove atIndex * Add remove logic to remove duplicate data from response Co-authored-by: Diego Mello * [CHORE] Refactor ServerItem (#2778) * Updated ServerDropdown and ServerItem * Added ServerItem stories * Update ServerDropdown.js * Updated ServerItem stories * Updated ServerItem stories and ServerItem component * Updated SelectServerView, ServerItem and ServerItem stories * Updated ServerItem stories * Updated ServerItem stories * Update tests Co-authored-by: Diego Mello * [DOCS] Updated Quick Start docs link in e2e/readme (#2802) Co-authored-by: Diego Mello * [I18N] Add Turkish (#2793) * Turkish language support added * Update tr.js Co-authored-by: Diego Mello * [FIX] Lint on #2793 (#2818) * [I18N] Add missing german strings (#2689) (#2820) * [I18N] Add missing italian strings (#2817) * [FIX] Server version becoming null on server change (#2821) * [FIX] Wrong styling on E2E encryption banner (#2767) * [FIX] Wrong styling on E2E encryption banner * [FIX] Wrong styling on E2E encryption banner * [FIX] Wrong styling on E2E encryption banner * [FIX] Wrong styling on E2E encryption banner (#2767) * Updated SortDropdown, ListHeader, ListItem and added stories for List.Item * Updated SortDropdown * Removed unused component * Updated List.Item and stories * Reverted unnecessary changes and updated ListItem stories * Fix minor indentation * Stop breaking Touch's default underlay color * Fix indentation * Remove falsy comparison from render * Fix left icon * Use List.Item on OmnichannelStatus * Add missing separator * Lint * Fix sort dropdown * Remove unnecessary styles * Fix detox Co-authored-by: Diego Mello * [FIX] App Store using Experimental's app id (#2826) * [FIX] Wrong username on push notifications (#2825) Co-authored-by: Gerzon Z Co-authored-by: Gerzon Z Co-authored-by: Djorkaeff Alexandre Co-authored-by: phriedrich Co-authored-by: yash-rajpal <58601732+yash-rajpal@users.noreply.github.com> Co-authored-by: Fazil Boudjelal Co-authored-by: Sumukha Hegde Co-authored-by: Hakan YILMAZ Co-authored-by: Vincenzo Esposito --- .../__snapshots__/Storyshots.test.js.snap | 8243 ++++++++++------- android/app/build.gradle | 2 +- android/app/src/main/AndroidManifest.xml | 2 +- .../chat/rocket/reactnative/MainActivity.java | 59 +- .../app/src/main/res/drawable-hdpi/logo.png | Bin 3649 -> 0 bytes .../app/src/main/res/drawable-mdpi/logo.png | Bin 2460 -> 0 bytes .../app/src/main/res/drawable-xhdpi/logo.png | Bin 5637 -> 0 bytes .../app/src/main/res/drawable-xxhdpi/logo.png | Bin 8033 -> 0 bytes .../src/main/res/drawable-xxxhdpi/logo.png | Bin 11155 -> 0 bytes .../reactnative/CustomPushNotification.java | 13 +- app/AppContainer.js | 4 +- app/actions/actionsTypes.js | 2 +- app/actions/app.js | 1 - app/actions/encryption.js | 8 + app/actions/server.js | 5 +- app/constants/colors.js | 3 + app/containers/List/ListItem.js | 19 +- app/containers/MessageBox/index.js | 12 +- app/containers/ThreadDetails.js | 103 + app/containers/message/Thread.js | 35 +- app/containers/message/styles.js | 4 + .../containers/OmnichannelStatus.js | 61 +- app/i18n/index.js | 4 + app/i18n/locales/ar.js | 12 +- app/i18n/locales/de.js | 32 +- app/i18n/locales/en.js | 8 +- app/i18n/locales/fr.js | 2 - app/i18n/locales/it.js | 55 +- app/i18n/locales/pt-BR.js | 6 +- app/i18n/locales/ru.js | 2 - app/i18n/locales/tr.js | 710 ++ app/i18n/locales/zh-CN.js | 2 - app/i18n/locales/zh-TW.js | 2 - app/lib/encryption/constants.js | 1 - app/lib/encryption/encryption.js | 4 - app/lib/rocketchat.js | 88 +- app/lib/userPreferences.js | 21 - app/presentation/RoomItem/Touchable.js | 2 +- app/presentation/ServerItem/index.js | 40 +- app/presentation/ServerItem/styles.js | 14 +- app/reducers/encryption.js | 7 + app/reducers/server.js | 12 +- app/sagas/encryption.js | 13 +- app/sagas/login.js | 30 +- app/sagas/rooms.js | 8 +- app/static/images/logo.png | Bin 16300 -> 42947 bytes app/utils/log/events.js | 1 + app/utils/touch.js | 7 +- app/views/CreateChannelView.js | 12 +- .../CreateDiscussionView/SelectChannel.js | 4 +- app/views/CreateDiscussionView/index.js | 51 +- app/views/E2EEncryptionSecurityView.js | 23 +- app/views/NewServerView/ServerInput/Item.js | 4 +- app/views/NewServerView/ServerInput/index.js | 5 +- app/views/OnboardingView/index.js | 40 +- app/views/OnboardingView/styles.js | 4 +- app/views/RoomActionsView/index.js | 46 +- app/views/RoomInfoEditView/index.js | 8 +- .../RoomsListView/ListHeader/Encryption.js | 49 - app/views/RoomsListView/ListHeader/Sort.js | 45 - app/views/RoomsListView/ListHeader/index.js | 69 +- app/views/RoomsListView/ServerDropdown.js | 54 +- app/views/RoomsListView/SortDropdown/Item.js | 46 - app/views/RoomsListView/SortDropdown/index.js | 105 +- app/views/RoomsListView/index.js | 58 +- app/views/RoomsListView/styles.js | 93 +- app/views/SelectServerView.js | 3 +- app/views/ShareListView/index.js | 4 +- app/views/ThreadMessagesView/Item.js | 84 +- app/views/ThreadMessagesView/index.js | 12 + e2e/README.md | 2 +- e2e/tests/assorted/05-joinpublicroom.spec.js | 4 +- .../assorted/08-joinprotectedroom.spec.js | 4 +- e2e/tests/onboarding/06-roomslist.spec.js | 2 +- e2e/tests/room/01-createroom.spec.js | 4 +- e2e/tests/room/03-roomactions.spec.js | 4 +- e2e/tests/room/04-roominfo.spec.js | 4 +- ios/Podfile.lock | 4 +- .../rn-extensions-share.podspec.json | 2 +- ios/Pods/Manifest.lock | 4 +- ios/RocketChatRN.xcodeproj/project.pbxproj | 4 +- ios/RocketChatRN/AppDelegate.m | 21 - .../logo.imageset/Contents.json | 23 - .../Images.xcassets/logo.imageset/icon.png | Bin 2558 -> 0 bytes .../Images.xcassets/logo.imageset/icon@2x.png | Bin 5636 -> 0 bytes .../Images.xcassets/logo.imageset/icon@3x.png | Bin 8037 -> 0 bytes ios/RocketChatRN/Info.plist | 2 +- ios/ShareRocketChatRN/Info.plist | 2 +- package.json | 10 +- storybook/stories/List.js | 11 +- storybook/stories/Message.js | 5 - storybook/stories/ServerItem.js | 73 + storybook/stories/index.js | 1 + yarn.lock | 13 +- 94 files changed, 6373 insertions(+), 4304 deletions(-) delete mode 100755 android/app/src/main/res/drawable-hdpi/logo.png delete mode 100755 android/app/src/main/res/drawable-mdpi/logo.png delete mode 100755 android/app/src/main/res/drawable-xhdpi/logo.png delete mode 100755 android/app/src/main/res/drawable-xxhdpi/logo.png delete mode 100755 android/app/src/main/res/drawable-xxxhdpi/logo.png create mode 100644 app/containers/ThreadDetails.js create mode 100644 app/i18n/locales/tr.js delete mode 100644 app/views/RoomsListView/ListHeader/Encryption.js delete mode 100644 app/views/RoomsListView/ListHeader/Sort.js delete mode 100644 app/views/RoomsListView/SortDropdown/Item.js delete mode 100644 ios/RocketChatRN/Images.xcassets/logo.imageset/Contents.json delete mode 100644 ios/RocketChatRN/Images.xcassets/logo.imageset/icon.png delete mode 100644 ios/RocketChatRN/Images.xcassets/logo.imageset/icon@2x.png delete mode 100644 ios/RocketChatRN/Images.xcassets/logo.imageset/icon@3x.png create mode 100644 storybook/stories/ServerItem.js diff --git a/__tests__/__snapshots__/Storyshots.test.js.snap b/__tests__/__snapshots__/Storyshots.test.js.snap index d2bba5818..b30a37fed 100644 --- a/__tests__/__snapshots__/Storyshots.test.js.snap +++ b/__tests__/__snapshots__/Storyshots.test.js.snap @@ -6796,7 +6796,7 @@ exports[`Storyshots List with black theme 1`] = ` `; -exports[`Storyshots List with custom color 1`] = ` +exports[`Storyshots List with custom colors 1`] = ` + + + + Press me! + + + + `; @@ -33112,33 +33171,6 @@ exports[`Storyshots Message list message 1`] = ` } testID="message-thread-button-How are you?" > - -  - - 1 reply + Reply - - November 10, 2017 - - - - -  - - - - - - - - - - - - - - - - - - - - - - - - diego.mello - - - - 10:00 AM - - - - - - How are you? - - - - - + + +  + + + 1 + + + + +  + + + 0 + + + + + + -  - - - +999 replies - - - - November 10, 2017 - - - - -  - + "opacity": 1, + } + } + > + +  + + + @@ -35583,33 +35342,6 @@ exports[`Storyshots Message list message 1`] = ` } testID="message-thread-button-How are you?" > - -  - - 1 reply + Reply - - November 10, 2017 - - - -  - + + +  + + + 1 + + + + +  + + + 0 + + + + + + + +  + + + @@ -61221,6 +61066,1157 @@ exports[`Storyshots RoomItem list roomitem 1`] = ` `; +exports[`Storyshots ServerItem content 1`] = ` +Array [ + + + + + + + + Rocket.Chat + + + https://open.rocket.chat/ + + + +  + + + , + + + + + + + + Super Long Server Name in Rocket.Chat + + + https://superlongservername.tologintoasuperlongservername/ + + + + , + + + + + + + + https://stable.rocket.chat/ + + + https://stable.rocket.chat/ + + + + , +] +`; + +exports[`Storyshots ServerItem themes 1`] = ` +Array [ + + + + + + + + Rocket.Chat + + + https://open.rocket.chat/ + + + +  + + + , + + + + + + + + Rocket.Chat + + + https://open.rocket.chat/ + + + +  + + + , + + + + + + + + Rocket.Chat + + + https://open.rocket.chat/ + + + +  + + + , +] +`; + +exports[`Storyshots ServerItem touchable 1`] = ` +Array [ + + + + + + + + Rocket.Chat + + + https://open.rocket.chat/ + + + + , + + + + + + + + Rocket.Chat + + + https://open.rocket.chat/ + + + + , + + + + + + + + Rocket.Chat + + + https://open.rocket.chat/ + + + + , +] +`; + exports[`Storyshots Thread Messages.Item badge 1`] = ` @@ -61238,144 +62234,85 @@ exports[`Storyshots Thread Messages.Item badge 1`] = ` } /> - - - - - - - rocket.cat - - - November 10, 2020 - - - - Message content - + + + + @@ -61384,80 +62321,29 @@ exports[`Storyshots Thread Messages.Item badge 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Message content + + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + - - - - - - - - - - rocket.cat - - - November 10, 2020 - - - - Message content - + + + + @@ -61715,80 +62686,29 @@ exports[`Storyshots Thread Messages.Item badge 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Message content + + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + - - - - - - - - - - rocket.cat - - - November 10, 2020 - - - - Message content - + + + + @@ -62046,80 +63051,29 @@ exports[`Storyshots Thread Messages.Item badge 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Message content + + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + - - - - - - - - - - rocket.cat - - - November 10, 2020 - - - - Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - + + + + @@ -62364,80 +63403,29 @@ exports[`Storyshots Thread Messages.Item badge 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. + + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + - - - - - - - - - - rocket.cat - - - November 10, 2020 - - - - Message content - + + + + @@ -62715,80 +63788,29 @@ exports[`Storyshots Thread Messages.Item content 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Message content + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + @@ -62877,144 +64050,85 @@ exports[`Storyshots Thread Messages.Item content 1`] = ` } /> - - - - - - - rocket.cat - - - November 10, 2020 - - - - Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - + + + + @@ -63023,80 +64137,29 @@ exports[`Storyshots Thread Messages.Item content 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + @@ -63185,144 +64399,85 @@ exports[`Storyshots Thread Messages.Item content 1`] = ` } /> - - - - - - - rocket.cat - - - November 10, 2020 - - - - Message content - + + + + @@ -63331,80 +64486,29 @@ exports[`Storyshots Thread Messages.Item content 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1000 - - - - -  + rocket.cat - 1000 - - - - -  - - + + + Message content + + + + + + +  + + + +999 + + + + +  + + + +999 + + + + + + +  + + + + @@ -63493,144 +64748,85 @@ exports[`Storyshots Thread Messages.Item content 1`] = ` } /> - - - - - - - rocket.cat - - - November 10, 2020 - - - - Attachment title - + + + + @@ -63639,80 +64835,29 @@ exports[`Storyshots Thread Messages.Item content 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Attachment title + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + @@ -63801,144 +65097,85 @@ exports[`Storyshots Thread Messages.Item content 1`] = ` } /> - - - - - - - Rocket Cat - - - November 10, 2020 - - - - Message content - + + + + @@ -63947,80 +65184,29 @@ exports[`Storyshots Thread Messages.Item content 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + Rocket Cat - 1 - - - - -  - - + + + Message content + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + @@ -64129,144 +65466,85 @@ exports[`Storyshots Thread Messages.Item themes 1`] = ` } /> - - - - - - - rocket.cat - - - November 10, 2020 - - - - Message content - + + + + @@ -64275,80 +65553,29 @@ exports[`Storyshots Thread Messages.Item themes 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Message content + + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + - - - - - - - - - - rocket.cat - - - November 10, 2020 - - - - Message content - + + + + @@ -64593,80 +65905,29 @@ exports[`Storyshots Thread Messages.Item themes 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Message content + + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + - - - - - - - - - - rocket.cat - - - November 10, 2020 - - - - Message content - + + + + @@ -64911,80 +66257,29 @@ exports[`Storyshots Thread Messages.Item themes 1`] = ` Object { "alignItems": "center", "flexDirection": "row", - "justifyContent": "center", - "marginRight": 8, + "marginBottom": 2, } } > -  - - - 1 - - - - -  + rocket.cat - 1 - - - - -  - - + + + Message content + + + + + + + +  + + + 1 + + + + +  + + + 1 + + + + + + +  + + + + - - - diff --git a/android/app/src/main/java/chat/rocket/reactnative/MainActivity.java b/android/app/src/main/java/chat/rocket/reactnative/MainActivity.java index 5eefab57a..e93eb3f96 100644 --- a/android/app/src/main/java/chat/rocket/reactnative/MainActivity.java +++ b/android/app/src/main/java/chat/rocket/reactnative/MainActivity.java @@ -14,7 +14,6 @@ import com.facebook.react.ReactFragmentActivity; import com.swmansion.gesturehandler.react.RNGestureHandlerEnabledRootView; import com.zoontek.rnbootsplash.RNBootSplash; -import com.tencent.mmkv.MMKV; import com.google.gson.Gson; class ThemePreferences { @@ -36,61 +35,11 @@ public class MainActivity extends ReactFragmentActivity { // https://github.com/software-mansion/react-native-screens/issues/17#issuecomment-424704067 super.onCreate(null); RNBootSplash.init(R.drawable.launch_screen, MainActivity.this); + } - MMKV.initialize(MainActivity.this); - - // Start the MMKV container - MMKV defaultMMKV = MMKV.defaultMMKV(); - boolean alreadyMigrated = defaultMMKV.decodeBool("alreadyMigrated"); - - if (!alreadyMigrated) { - // MMKV Instance that will be used by JS - MMKV mmkv = MMKV.mmkvWithID("default"); - - // SharedPreferences -> MMKV (Migration) - SharedPreferences sharedPreferences = getSharedPreferences("react-native", Context.MODE_PRIVATE); - mmkv.importFromSharedPreferences(sharedPreferences); - - // SharedPreferences only save strings, so we saved this value as a String and now we'll need to cast into a MMKV object - - // Theme preferences object - String THEME_PREFERENCES_KEY = "RC_THEME_PREFERENCES_KEY"; - String themeJson = sharedPreferences.getString(THEME_PREFERENCES_KEY, ""); - if (!themeJson.isEmpty()) { - ThemePreferences themePreferences = new Gson().fromJson(themeJson, ThemePreferences.class); - WritableMap themeMap = new Arguments().createMap(); - themeMap.putString("currentTheme", themePreferences.currentTheme); - themeMap.putString("darkLevel", themePreferences.darkLevel); - Bundle bundle = Arguments.toBundle(themeMap); - mmkv.encode(THEME_PREFERENCES_KEY, bundle); - } - - // Sort preferences object - String SORT_PREFS_KEY = "RC_SORT_PREFS_KEY"; - String sortJson = sharedPreferences.getString(SORT_PREFS_KEY, ""); - if (!sortJson.isEmpty()) { - SortPreferences sortPreferences = new Gson().fromJson(sortJson, SortPreferences.class); - WritableMap sortMap = new Arguments().createMap(); - sortMap.putString("sortBy", sortPreferences.sortBy); - if (sortPreferences.groupByType != null) { - sortMap.putBoolean("groupByType", sortPreferences.groupByType); - } - if (sortPreferences.showFavorites != null) { - sortMap.putBoolean("showFavorites", sortPreferences.showFavorites); - } - if (sortPreferences.showUnread != null) { - sortMap.putBoolean("showUnread", sortPreferences.showUnread); - } - Bundle bundle = Arguments.toBundle(sortMap); - mmkv.encode(SORT_PREFS_KEY, bundle); - } - - // Remove all our keys of SharedPreferences - sharedPreferences.edit().clear().commit(); - - // Mark migration complete - defaultMMKV.encode("alreadyMigrated", true); - } + @Override + public void invokeDefaultOnBackPressed() { + moveTaskToBack(true); } /** diff --git a/android/app/src/main/res/drawable-hdpi/logo.png b/android/app/src/main/res/drawable-hdpi/logo.png deleted file mode 100755 index b4d275593b6334b9bdb7e07f259c7237e7cc6ccd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3649 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 aj6VR_2*|g2`(`Qt0000By8Cs{ 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 diff --git a/android/app/src/main/res/drawable-xxhdpi/logo.png b/android/app/src/main/res/drawable-xxhdpi/logo.png deleted file mode 100755 index 86ef8a102673c82e066141c28b446a7308453030..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8033 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 { > <> - {root === ROOT_LOADING || root === ROOT_BACKGROUND ? ( + {root === ROOT_LOADING ? ( ( onPress(props.title)} - style={{ backgroundColor: themes[props.theme].backgroundColor }} + style={{ backgroundColor: backgroundColor || themes[props.theme].backgroundColor }} + underlayColor={underlayColor} enabled={!props.disabled} theme={props.theme} > @@ -99,7 +97,7 @@ const ListItem = React.memo(({ ...props }) => { return