Elias Nahum
c0eaeefbe0
Properly handle android system bars ( #9242 )
2025-10-29 09:11:11 +08:00
Elias Nahum
5eb3a1ab41
Refactor gallery gestures ( #8752 )
2025-07-22 14:00:57 +08:00
Elias Nahum
374f812b98
Update dependencies ( #8721 )
...
* update fastlane
* update dev dependencies
* update to eslint 9+
* update testing-library
* update react-intl
* update bottom-sheet
* update expo
* update reanimated
* upgrade msgpack
* upgrade datepicker
* upgrade react-navigation
* update sentry
* update FlasList
* update fuse.js moment-timezone node-html-parser and semver
* update gesture-handler
* update image-picker
* update react-native-keychain
* update react-native-localize
* update react-native-navigation
* update watermelonDB
* update react-native-permissions
* update react-native-safe-area-context and react-native-screens
* update react-native-share and react-native-svg
* update react-native-video and react-native-webrtc
* update @mattermost/rnutils
* update @mattermost/rnshare
* update @mattermost/hardware-keyboard
* fix isMainActivity
* update android dependencies
* fix upload file progress indicator
* fix entry update config & license
* revert to stable version of @sentry/react-native
* update react-intl again
* update moment-timezone
* upgrade @react-native-camera-roll/camera-roll
* update @react-native-clipboard/clipboard
* update @react-navigation again
* update @shopify/flash-list
* update eslint
* update expo again
* update html-entities
* update mime-db
* update react-native-permissions
* Revert "update react-intl again"
This reverts commit e8e6d5a60dfa56b82b810cbbd7cdffec7697ffc7.
* Revert "update react-intl"
This reverts commit c77f329bb38910aeeba03869b72d77a8b0e00ba1.
* update react-native-keychain
* update and patch react-intl
* mend
* feedback during review 1
2025-04-07 09:30:06 +08:00
Elias Nahum
4407ca06cf
2.25 fixes ( #8578 )
2025-02-11 17:21:26 +08:00
Elias Nahum
ee66890d32
MM-62915 and MM-62919 ( #8568 )
2025-02-08 07:17:15 +08:00
Elias Nahum
2f3dfbbbfa
Update dependencies and upgrade to RN 0.76.5 ( #8421 )
...
* update dev deps
* partial update dependencies
* update watermelondb
* update rn to 0.76.5, expo to 52.0.18 and others
* upgrade android firebase
* upgrade detox deps
* fix package-lock.json
* update emm and paste-input
* update turbo-log
* update network library
* fix tests
* review feedback
* fix Keyboard blocking signIn button
* Fall back to iphone 14 iOS 17.2 simulator as app crashes on iOS 17.4
* changes in deleteCredentialsForServer is causing a crash
* withOptions x2 clearly is wrong
* re-add cli-platform-apple fix
* fix: RN 0.76.5 issue with bottom sheet disappearing (#8478 )
* experiment, using view vs BottomSheetView
* revert previous & try disabling enableDynamicSizing
* revert an unintended removal
---------
Co-authored-by: yasserfaraazkhan <attitude3cena.yf@gmail.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Rahim Rahman <rahim.rahman@mattermost.com>
2025-01-16 07:11:32 -07:00
Daniel Espino García
640ff93e01
Android native logs ( #8384 )
...
* Android native logs
* Use latest version of the library
2024-12-17 18:16:11 +08:00
Daniel Espino García
de5e85d71f
Fix null reference error in notifications ( #8042 )
2024-06-27 09:47:57 +02:00
Elias Nahum
b8c088cc70
Upgrade RN as well as update or replace other dependencies ( #8011 )
...
* start upgrade to RN 74
* migrate react-native-fs to expo-file-system
* exclude expo-asset module
* fix database manager remove directory
* fix: android network helper
* include expo on android
* temporarily disable android dep lock
* replace react-native-create-thumbnail with expo-video-thumnails
* update patches file version
* fix android build on 74
* create local library to replace MattermostManaged, Notifications and SplitView modules with new arch support
* migrate app to use new mattermost-rnutils library
* remove unused flipper class for android unsigned
* fix mattermost-rnutils android foldedObserver lifecycle
* use mattermost-rnutils on Android
* use mattermost-rnutils on iOS
* path react-native-navigation to not crash when activity is not NavigationActivity
* create local library for android share extension with new arch support
* Replace ShareModule with @mattermost/rnshare library
* remove ShareModule from android native code
* update react-intl
* update nodejs to 20.x.x npm to 10.x.x and dev deps
* update @gorhom/bottom-sheet
* use MattermostShare conditionally based on the platform
* update @react-native-camera-roll/camera-roll
* remove unused react-native-calendars
* fix metro config
* fix terminate session race condition
* remove unused analytics
* replace react-native-device-info with expo-application and expo-device
* update @react-native-clipboard/clipboard
* update @react-native-community/datetimepicker
* update @react-native-community/netinfo
* update @sentry/react-native
* update react-native-document-picker
* update react-native-gesture-handler
* update react-native-share
* update react-native-svg and react-native-svg-transformer
* update react-native-vector-icons
* update babel
* update react-native-shadow-2
* update semver
* remove react-native-svg-transformer and convert svg files to svg components
* fix @mattermost/rnshare new-arch build on android
* remove react-native-create-thumbnail resolution in build.gradle
* create @mattermost/hardware-keyboard library to replace hw-keyboard-events
* fix hardware-keyboard library
* fix rnutils library
* create @mattermost/keyboard-tracker library
* replace react-native-keyboard-tracking-view with @mattermost/keyboard-tracker
* fix: rnutils to not crash on lateinit context
* fix: rnutils delete database
* revert changes to session_manager
* Removed react-native-webview and added expo-web-browser instead
With expo-web-browser we no longer need the webview for SSO login
the SSO login is now done by using "custom Chrome tabs" on Android
and ASWebAuthenticationSession on iOS
* remove patch for react-native-keyboard-tracking-view
* replace react-native-linear-gradient with expo-linear-gradient
* replace react-native-in-app-review with expo-store-review
* fix: shared group database directory on ios
* replace react-native-fast-image with expo-image
* remove unusued type def for react-native-keyboard-tracking-view
* replace react-native-elements and react-native-button with @rneui
* node version
* update sizzling methods
* fix tests using jest-expo
* replace jail-monkey with expo-device
* update babel deps
* update typescript eslint
* update rn and expo
* react-native-document-picker @react-native-camera-roll/camera-roll @react-native-community/datetimepicker react-native-reanimated react-native-safe-area-context
* update patches
* update @sentry/react-native
* upgrade react-native-navigation
* update expo & expo-image
* upgrade to working version of @sentry/react-native
* update node, cocoapods, bundler, fastlane versions
* @testing-library/react-native and eslint-plugin-jest
* fix: FloatingTextInput causing a crash with reanimated
* update sentry, localize, @types/lodash and uuid
* fix floating text input label
* update react-native-video
* fix: cannot calculate shadow efficiently on some components
* fix: reduce motion warning for bottomSheet
* fix: shadow on YouTube component
* update react-native-webrtc expo and @typescript-eslint
* audit fix
* fix swizzling bad merge
* temp use of github dependency for @mattermost libraries
* feedback review
* feedback review
* npm audit fix
* update bundle deps
* update @mattermost/react-native-turbo-log
* update deps
2024-06-19 09:33:45 +08:00
Elias Nahum
e5ce796770
fix android push notifications when app is closed ( #7989 )
2024-06-11 05:15:20 +08:00
Daniel Espino García
c5e6e34fea
Fix MM 56723 ( #7883 )
...
* Fix MM 56723 (iOS)
* Add android
* Android fixes and version checking
* Add version check to ios
* Address feedback
* Add all versions to android
* Check all versions on iOS
* Fix unhandled version case
* Add comments
* Add final version numbers
2024-04-24 17:12:56 +02:00
Daniel Espino García
9d1030a445
Push react native to 0.73.6 ( #7863 )
...
* Bump react native to 0.73.6
* iOS changes
* Fix gallery
* Fix test
* Add missing patch
* Unify react native navigation patch
* Update the rest of libraries
* iOS updates
* Update mattermost libraries
* Fix tests and final bumps
* iOS podfile update
* Update android locks
* Revert webrtc update because it was messing with the tests
* Update podfile for webrtc
2024-04-22 12:44:39 +02:00
Elias Nahum
de57c343f0
MM-55621 fix layout for tablets and foldables ( #7697 )
...
* MM-55621 fix layout for tablets and foldables
* feedback review
2023-12-05 11:08:43 +08:00
Elias Nahum
edef4ec4a3
Update libraries and dependencies ( #7678 )
...
* update js dependencies
* update react-native libraries
* update watermelonDB
* update RN to 0.72.7
* update fastlane
* fix remove_markdown/at_mention import
* update mattermost libraries
* update fastlane deps
* remove haptic-feedback patch
* update okhttp to 4.12.0 and patch netinfo to accurately identify VPN connections
* create ImaegStyles intersection type
2023-11-25 07:46:13 +08:00
Daniel Espino García
d74826064b
Remove keychain cache to avoid token invalidation problems ( #7479 )
2023-08-01 15:46:48 +02:00
Daniel Espino García
5ab2f86b66
Fix ios cache ( #7412 )
...
* Fix Keychain cache
* Fix
* Fix import
2023-07-05 14:01:51 -04:00
Elias Nahum
ee13679f38
Android refactor push notifications to store data or send to JS for processing ( #7127 )
...
* Android refactor push notifications to store data or send to JS for processing
* remove blank line
* rename variable
2023-02-15 17:07:27 +02:00
Elias Nahum
23cbf82353
Use LRU to cache the Avatar shown in push notifications ( #7124 )
...
* iOS switch from file cache to memory cache and use last_picture_update to update the avatar if needed
* Android switch from file cache to memory cache and use last_picture_update to update the avatar if needed, split function to multiple files and catch potential exceptions
2023-02-15 11:19:31 +02:00
Elias Nahum
265b8b2193
Request permissions for Android push notifications and refactor code to use network client ( #7059 )
2023-01-31 21:33:35 +02:00
Elias Nahum
9bae53b4ad
Fix crash when dismissing notification on android ( #7029 )
...
* Fix crash when dismissing notification on android
* ensure notification channels are created
2023-01-27 17:55:22 +02:00
Elias Nahum
c1fbaffd3e
Support for Android Tablets & Foldable ( #7025 )
...
* Add Support for Android tablets & foldables
* add tablet and book posture
* Regenerate disposed observable on WindowInfoTracker
2023-01-26 20:31:18 +02:00
Elias Nahum
7aa5bd0611
Update Dependencies and bug fixes ( #7000 )
...
* update dependencies
* update dependencies
* feedback review
* update @mattermost/react-native-turbo-mailer
2023-01-24 09:14:23 +02:00
Elias Nahum
ca1f6df1c6
Generate video thumb from file url instead of public url ( #6922 )
2023-01-05 13:49:04 +02:00
Elias Nahum
a058ca57ca
Android Fixes ( #6915 )
...
* Fix android back button handler
* Fix Android crash caused by react native screens
* Prevent Android crash and log stack trace when receiving a push notification
2023-01-02 12:53:08 +02:00
Elias Nahum
25fcb066a7
Fix Android crash when push notification is received and app not initialized ( #6817 )
2022-12-02 20:47:40 +04:00
Elias Nahum
6eadc527bb
Gekidou Android share extension ( #6803 )
...
* Refactor app database queries to not require the app database as argument
* Android Share Extension and fix notifications prompt
* feedback review
2022-11-30 23:18:56 +02:00
Elias Nahum
4c389a49fa
Gekidou session expired notification ( #6639 )
...
* Fix crash on Android when session expired notification is presented
* react-native-notification patch for schedule fix on android and open local notification on iOS
* Fix android scheduled session notification crash
* patch react-native-navigation to support blur/focus AppState on Android
* remove schedule session expired notification from login entry point
* schedule session expired notification actions
* add session manager
* Handle open session expired notification
2022-09-18 06:57:55 -04:00
Elias Nahum
c2f5092678
[Gekidou] refactor clean notifications ( #6566 )
2022-08-19 16:29:15 -04:00
Elias Nahum
dcc05956b6
Gekidou upgrade RN to 0.69.3 and dependencies ( #6537 )
...
* module dependencies
* update fastlane
* upgrade types dependencies
* update dev deps
* update react-native-notifications
* update react-native-keychain
* update sentry
* update detox
* Upgrade to RN 69.3
* increase MaxMetaspaceSize gradle opts
* feedback review
2022-08-08 09:06:20 -04:00
Anurag Shivarathri
306fbba3a7
[Gekidou MM-44135 MM-44134 MM-40088] Group & Clear channel and thread notifications when CRT is on ( #6429 )
...
* Android
* iOS changes
* client changes
* Misc
* Update CustomPushNotification.java
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-06-30 21:26:14 +05:30
Elias Nahum
e883186fde
[Gekidou] retry post ( #6293 )
...
* Add try again functionality to failed posts
* Fix attach files on Android
* feedback review
* Prevent android crash when uploading files for the first time
* Update the timestamp for updateAt when retrying to post
* Add POST TIME TO FAIL
* use function isPostFailed
2022-05-20 13:23:19 -04:00
Elias Nahum
08d80e6236
Replace lottie loading spinner for activity indicator ( #6266 )
2022-05-12 12:54:43 -04:00
Elias Nahum
f62dcd42f7
Open Find Channels with keyboard shortcut ( #6260 )
2022-05-11 12:33:21 -04:00
Elias Nahum
0c1e9a4812
Remove Share Extensions ( #6238 )
2022-05-06 08:32:04 -04:00
Elias Nahum
b530dbeb09
[Gekidou] upgrade to RN 68 (old arch) ( #6138 )
...
* upgrade to RN 68 (old arch)
* remove test setup unused & commented mock
* Android target set to 30
* Fix theme when opening app from push notification
* upgrade common mark
2022-04-08 12:40:44 -04:00
Elias Nahum
527bd04170
Update dependencies
2022-03-26 20:33:13 -03:00
Elias Nahum
5de54471b7
[Gekidou] Gallery ( #6008 )
...
* Gallery screen (ground work)
* Open the gallery from posts
* Open the gallery from post draft
* feedback review
* Feedback review 2
* do not remove dm channel names and localization fix
* update to the latest network-client
* do not override file width, height and imageThumbail if received file does not have it set
* bring back ScrollView wrapper for message component
* Remove Text wrapper for markdown paragraph
* Fix YouTube play icon placeholder
* Make video file play button container round
* Add gif image placeholder
* Save images & videos to camera roll
* Feedback review 3
* load video thumbnail when post is in viewport
* simplify prefix
2022-03-01 13:55:44 -03:00
Elias Nahum
3ea065b845
[Gekidou] Fix & small refactor to the app entry logic and WS reconnection ( #5937 )
...
* Fix & small refactor to the app entry logic and WS reconnection
* Remove not needed log in MainActivity
* Replace async forEach with for await
* extract getClient to its own block
* replace double filter with reduce
* fix select channel on WS reconnect and user no longer belongs to current team
* feedback review on WS users actions
* Add windowFocusChanged for Android only
* on WS reconnection set team & channel if not member of current team
* reduce suggestion
* feedback review
2022-02-09 12:49:37 -03:00
Daniel Espino García
55324127e1
[Gekidou] Post input ( #5844 )
...
* Initial commit post input
* Fix message posting, add create direct channel and minor fixes
* Fix "is typing" and "react to last post" behaviour
* Some reordering, better handling of upload error, properly clear draft on send message, and fix minor progress bar misbehavior
* Add keyboard listener for shift-enter, add selection between video or photo while attaching, add alert when trying to attach more than you are allowed, add paste functionality, minor fixes and reordering
* Add library patch
* Fix lint
* Address feedback
* Address feedback
* Add missing negation
* Check for group name and fix typo on draft comparisons
* Address feedback
* Address feedback
* Address feedback
* Address feedback
* Fix several bugs
* Remove @app imports
* Address feedback
* fix post list & post draft layout on iOS
* Fix post draft cursor position
* Fix file upload route
* Allow to pick multiple images using the image picker
* accurately get the channel member count
* remove android cursor workaround
* Remove local const INPUT_LINE_HEIGHT
* move getPlaceHolder out of the component
* use substring instead of legacy substr for hardward keyboard
* Move onAppStateChange above the effects
* Fix camera action bottom sheet
* no need to memo SendButton
* properly use memberCount in sender handler
* Refactor how to get memberCount
* Fix queryRecentPostsInThread
* Remove unused isDirectChannelVisible && isGroupChannelVisible util functions
* rename errorBadUser to errorUnkownUser
* extract localized strings
* use ClientErrorProps instead of ClientError
* Minor improvements
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2022-02-03 08:59:15 -03:00
Jason Frerich
520a28962b
[Gekidou] MM-39736 Login Flow ( #5799 )
2021-11-18 22:07:41 +01:00
Elias Nahum
880cfbb7ac
Upgrade unimodules with expo to use expo-file-system
2021-11-06 18:08:22 -03:00
Elias Nahum
790b1beb22
[Gekidou] push notifications ( #5779 )
...
* Push notifications entry point
* Process android notification natively only if RN is not initialized
* Database changes to store local channel viewed_at
* EphemeralStore wait until screen removed
* Move schedule session notification to utility
* Fix channel remote & local actions + added actions for markChannelAsViewed & fetchMyChannel
* Add fetchMyTeam remote action
* Add dismissAllModalsAndPopToScreen to navigation
* Improve post list component & add app state to re-trigger queries
* Improve WS implementation
* Handle push notification events
* Fix postsInChannel since handler
* Handle in-app notifications
* Post list to listen to column changes
* Track selected bottom tab in ephemeral store
* add useIsTablet hook
* in-app notifications on tablets
2021-10-27 17:53:11 -03:00
Elias Nahum
15cb53846b
Enable wdb-jsi on Android ( #5702 )
2021-09-29 13:22:52 -03:00
Miguel Alatzar
6c2e28afc2
[Gekidou] Android - Fetch and store data on push notification receipt ( #5662 )
...
* WIP
* Latest network client
* Init DatabaseHelper and Network
* Add request and query functions
* Fetch posts when push notification is received on Android
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2021-09-12 15:35:01 -03:00
Elias Nahum
5eb8ac6afd
Android clear notification preferences on version change
2021-09-04 11:28:49 -04:00
Elias Nahum
b5c5949b7d
[Gekidou] Update Splash Screen / App icons and Android snooze Push Notifications ( #5658 )
...
* Android push notification snooze
* Android splash & icons
* iOS splash & icons
* Update project assets
* Replace iOS assets using Fastlane
* Remove configure_telemetry_android from Fastlane script
* Update Fastlane with master branch
* Fix Android fastlane build
* replace reference for com.mattermost.rnbeta.* imports
* Set iOS ENTRY_FILE as index.ts
2021-08-31 14:58:09 -04:00
Avinash Lingaloo
e8ce78f39d
MM-36721 - [GEKIDOU] Porting Markdown components ( #5586 )
...
* Started with Channel Post List
* Added markdown hashtag
* Added TouchableWithFeedback component
* Added utils/bottom_sheet
* Removed BottomSheet in favor of future SlideUpPanel
* Added markdown_block_quote
* Added markdown_list_item
* Added markdown_list
* Added MarkDownTableCell component
* Markdown_table - in progress - need to verify TS
* Added markdown_table
* Update Podfile.lock
* Added deep_linking constant
* Added utils/draft
* Update config to include ExperimentalNormalizeMarkdownLinks
* Added markdown_link
* Added markdown_table_row
* Added ProgressiveImage and RetriableImage components and images utils
* Converted Retriable component to functional component
* Added type definition for commonmark
* Continuing with markdown TS
* Markdown - Typing props [ in progress ]
* Fix boolean flag with mardown block quote
* Adding observable config to markdown_link
* TS Fixes [ in progress ]
* TS fixes
* TS fixes - TextStyles
* Update markdown.tsx
* TS fixes on markdown
* TS Fixes - AtMention component
* AtMention [ IN PROGRESS ]
* Add markdown support
* Fix emoji and jumboEmoji on iOS
* Fix handleMyTeam operator
* Fix navigation style based on theme
* Fix iOS MattermostManaged deleteDatabse return error type
* wrap setNavigationStackStyles under a requestAnimationFrame
* Add preventDoubleTap to channel mention
* Increase double tap to 750ms
* Fix handleReceivedPostsInChannel chunk query
* Set initial navigation theme
* Swizzle FastImage on iOS
* fix preventDoubleTap test
Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2021-08-02 20:30:17 +04:00
Elias Nahum
8d2bd32897
[Gekidou] Update dependencies ( #5581 )
...
* Update detox deps
* Push notifications (android & launcher)
* Update dependencies
2021-08-01 21:09:19 -04:00
Elias Nahum
8cd127a223
[Gekidou] Typings & PostMetadata structure ( #5542 )
...
* Typings & PostMetadata structure
* comment out unused code
* Remove duplicate interface
* Fix getPreferenceAsBool defaultValue
2021-07-15 11:49:02 -04:00
Miguel Alatzar
134c4a49c5
Integrate react-native-network-client ( #5499 )
...
* fix: handle NSMutableData
* feat: integrate react-native-network-client
* fix: typos
* fix: semicolon
* fix: rename to urlVersion
* fix: add returnDataOnly arg
* fix: configure network client
* fix: headers
* fix: handling of serverVersion
* fix: rename requests to actions
* fix: action imports
* fix: no need to stringify body
* fix: sso flow
* fix: address PR feedback
* fix: invalidate client on logout
* fix: address PR feedback take 2
* fix: address PR feedback take 3
* fix: tsc issues
* fix: get csrf token during client creation
* fix: linter
* fix: invalidate client onLogout
* fix: event emitter
* fix: unit tests
* fix: apply linter fixes
* fix lint
* Modify actions to add / update database values
* Rename clien4.d.ts to client.d.ts
* fix empty & missing translations
* cleanup api client
* Cleanup init & squash some TODO's
* Emit certificate errors in NetworkManager
* cleanup user actions
* Fix NetworkManager invalidate client
* Invalidate client when server screen appears
* Update kotlin to 1.4.30 required by network-client
* patch react-native-keychain to remove cached credential
* update react-native-network-client
* Use app.db instead of default.db in native code
* fix use of rnnc on Android
* Init PushNotifications
* No need to reset serverVersion on logout
* fix logout action
* fix deleteServerDatabase
* fix schedule expired session notification
* use safeParseJSON for db json fields
* unsubscribe when database component unmounts
* cleanup init
* session type
* pass launchprops to entire login flow
* Properly remove third party cookies after SSO login
* recreate network client if sso with redirect fails
* add missing launch props from server screen
* use query prefix for database queries
* Add temporary logout function to channel screen
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2021-07-06 11:16:35 -04:00