Commit graph

108 commits

Author SHA1 Message Date
Elias Nahum
334a07aabe
Performance improvements (#3911)
* Improve sidebar performance on first load

* Initial work for switch channel

* Revert android changes

* Split Sidebar per Platform

* Fix waitForHydration executing the callback more than once

* Fix custom emoji not showing on Android

* Finalize Channel Switch

* Enable Android Ram Bundles

* Select the right team for lastChannelForTeam

* Channel loading post indicator

* Fix main sidebar base intl provider

* Update mm-redux

* No need to request configAndLicense on launch

* Load channel member roles

* Rename closeChannelDrawer to closeMainSidebar

* do not throw errors when console is called while running tests

* constant for LOADING_POSTS_HEIGHT

* Remove show more if a long post is edited and no longer long

* Update mm-redux#batch-actions branch

* Code review

* Clear notifications if channel was switched

* Import Platform

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-02-17 21:18:09 -07:00
Miguel Alatzar
3c417838a4
Dispatch loadConfigAndLicense on launchApp (#3902) 2020-02-10 13:46:22 -03:00
Miguel Alatzar
d56965e4ce Call Linking.getInitialURL() in launchApp (#3843) 2020-01-22 15:06:56 -03:00
Elias Nahum
2951245d68
MM-21288 Fix attaching files on Android (#3805) 2020-01-13 22:46:27 -03:00
Miguel Alatzar
0b3ba08030
Pass callback to waitForHydration (#3667) 2019-12-06 12:07:11 -07:00
Elias Nahum
75e0854411 MM-20694 Fix race condition when the store has not rehydrated (#3610)
* MM-20694 Fix race condition when the store has not rehydrated

* Making waitForHydration re-usable
2019-11-27 08:03:50 -07:00
Miguel Alatzar
459801d10b
[MM-17560] Await dismissAllModals and popToRoot prior to calling showSearchModal (#3298)
* Patch react-native-navigation

* Make navigation actions regular functions

* Fix unhandled promise rejection warning

* Missing semicolons

* Mock navigation actions

* Add unit tests for navigation actions

* Place all patches in patches directory

* Fix channel_info snapshot test
2019-09-25 15:23:45 -07:00
Elias Nahum
a6a299352e
MM-18024 MM-18025 Fix race condition when push notification opens the app and credentials are not set (#3168) 2019-08-23 09:37:48 -04:00
Elias Nahum
e87858d7af Various fixes (#3078)
* MM-17588 Remove navigation component from stack

* MM-175986 Fix Clock Display Settings on iOS

* Fix markdown and team icon currentServerUrl

* Fix closing permalink logs out the user

* Fix file attachment document ref

* Fix applyTheme when changing a theme in the app

* Feedback review

* remove / when fetching the image on the markdown table on relative paths
2019-08-08 22:28:07 +08:00
Elias Nahum
d230bdac1e
MM-17424 Setting to enable/disable fixed sidebar (#3060) 2019-08-02 13:50:31 -04:00
Miguel Alatzar
59e948f06a Apply new theme to all navigation components (#3005) 2019-07-23 12:21:35 -04:00
Miguel Alatzar
8762bf05f9 Launch app without authentication if already started 2019-07-02 18:40:39 -07:00
Miguel Alatzar
51aac1e6e7 Merge branch 'master' into rnn-v2 2019-07-02 18:15:19 -07:00
Elias Nahum
89b96d51db MM-16430 refactor app entry point (#2924)
* MM-16430 refactor app entry point

* iOS Extensions to use session token from KeyChain

* Remove token from general credentials entity

* Fix mattermost-managed.ios to return the cachedConfig

* Migrate server based keychain for android push notifications

* remove unneeded async

* Remove unneeded android InitializationModule
2019-06-26 15:21:20 -04:00
Elias Nahum
c121f66526 MM-16463 Fix replying from push notification to a message in a thread (#2927) 2019-06-26 16:59:07 +08:00
Miguel Alatzar
150253d392
[MM-16012] [MM-16084] Update screens related to settings sidebar + update SearchResultPost screen and its children (#2913)
* Update screens

* Update login tests

* Remove done

* Fix failing tests

* Update screens and components

* Check styles fix

* Update tests

* Prevent setState call after component unmounts

* Add empty setButtons func to dummy navigator

* Remove platform check

* Remove Platform import

* Update react-native-navigation version

* Add separate showModalOverCurrentContext function

* check-style fixes

* Remove overriding of AppDelegate's window

* Fix modal over current context animation

* Add showSearchModal navigation action

* Check-style fix

* Address review comments

* Update SettingsSidebar and children

* Update EditProfile screen

* Update SettingsSidebar

* Keep track of latest componentId to appear

* Track componentId in state to use in navigation actions

* Update FlaggedPosts and children

* Update RecentMentions

* Update Settings

* Store componentIds in ephemeral store

* Update AttachmentButton

* Remove unnecessary dismissModal

* Fix typo

* Check-style fix

* Address review comments
2019-06-24 12:52:08 -07:00
Elias Nahum
3f925df9d9 MM-16392 Split view support & hide sidebar on tablets (#2898) 2019-06-21 14:10:30 -04:00
Miguel Alatzar
0f948f650d Merge branch 'master' into rnn-v2 2019-06-18 09:58:35 -07:00
Miguel Alatzar
2e423a9f64 Fix navigation top bar style (#2885) 2019-06-14 10:06:14 -04:00
Miguel Alatzar
cbe0c719ac [MM-15874] Add native code to support RNN v2 on Android (#2855)
* Remove fix for MM-9233

* MM-15774 Add native code to support RNN v2 on iOS

* Android changes for RNN v2 upgrade

The activity visibility handling of NotificationsLifecycleFacade
is no longer needed in RNN v2. I've moved the lifecycle callbacks
we use for handling managed config into
ManagedActivityLifecycleCallbacks.java and registered them in
MainApplication's onCreate. Also, I've moved and updated the
loading and getting of the managed config into MainApplication

* Update moduleNames and modulePaths

* Use TAG in restrictionsReceiver

* Set launch screen onCreate

* Comment out registerActivityLifecycleCallbacks for now

* Remove setSoftInputMode call as it's handled in the manifest

* Remove clearHostOnActivityDestroy as that fix is no longer needed

* Rename to canLaunchEntry

* Remove replacement of super.onBackPressed()

* Remove react-navigation from packager files
2019-06-12 15:26:03 -04:00
Harrison Healey
73792d5526 MM-16011 Update navigation through Login and Channel screens (#2870)
* Update navigation through Login and Channel screens

* Stop using static options and mergeOptions

* Update unit tests
2019-06-11 18:10:14 -04:00
Elias Nahum
457413196e
MM-15643 Fix race condition to prompt for passcode and (#2862)
detect if passcode has been removed while the app in the background
2019-06-05 11:08:01 -04:00
Harrison Healey
8e1a9e8322
MM-15774 Add native code to support RNN v2 on iOS (#2848)
* Remove fix for MM-9233

* MM-15774 Add native code to support RNN v2 on iOS
2019-06-03 16:44:28 -04:00
Harrison Healey
6e099d6a21 MM-15643 Send user to settings when passcode is required (#2836)
* MM-15643 Send user to settings when passcode is required

* Allow access to the managed config in the iOS extensions
2019-05-27 19:38:32 -04:00
Elias Nahum
f7f56e958b
MM-9494 & MM-13888 Tapping execute actions & interactive keyboard dismissal (#2799)
* MM-9494 & MM-13888 Tapping with the keyboard opened executes the action & iOS iteractive keyboard

* Fix tests

* feedback review

* add new line at the end of file

* feedback review and added todo list

* Track interactive dismiss keyboard and set scrollview bounds natively

* Fix snapshots

* Fastlane default to current branch when no BRANCH_TO_BUILD is set

* Set NODE_OPTIONS in ios build script

* Rebind scrollview when channel gets first set of posts

* Keep scrolling momentum on keyboard close

* Update react-native-keyboard-tracking-view

* Fix ScrollView offset with keyboard-tracking

* Fix offset while dragging the keyboard

* Allow action on channel drawer on tablets

* Fix typo

Co-Authored-By: Saturnino Abril <saturnino.abril@gmail.com>

* Fix indentation
2019-05-20 12:02:00 -04:00
Elias Nahum
2b4574885b
Keep the channel drawer opened on tablets (#2793)
* Keep the channel drawer opened on tablets

* update en.json after running mmjstool

* Set the channel drawer to width 220

* feedback review

* PM Review

* Fix snapshots
2019-05-16 20:40:32 -04:00
Saturnino Abril
e086d66ec2
[MM-13955] Add telemetry for Android (#2719)
* add markers for Android profiling

* update per comments

* Remove beta build flag

* update per comment, latest change on telemetry server and others

* rebase and fix merge conflicts, and update per comments

* update commit hash of mattermost-redux
2019-05-08 00:23:59 +08:00
Saturnino Abril
e3b4191af9
[MM-14619] Remove Client4.online and related setOnline function (#2718)
* remove Client4.online and related setOnline function

* update mattermost-redux commit to 16a39c671193db23006d848c7866adbb5cae6901
2019-04-24 00:34:34 +08:00
Elias Nahum
e960d37cdc
MM-14459 Ensure hydrationComplete is set to true when resetting the cache and logging out (#2664) 2019-03-23 11:07:43 -03:00
Elias Nahum
3feaa8e6bb
iOS Native Share Extension (Swift) (#2575)
* iOS Native Share Extension (Swift)

* Re-arrange files

* Fix .gitignore
2019-02-26 14:31:57 -03:00
Daniel Schalla
e82146d52f
[MM-10346] Set CSRF Token from Cookie after Login / on App load (#2534)
* Set CSRF Token from Cookie after Login / on App load

* Reset CSRF on Logout

* Simplify cookie value access

* Make Set CSRF Blocking
2019-02-20 17:06:03 +01:00
Elias Nahum
a0a1fa28ce
MM-13896 Sync channel as read between clients (including opening Push Notifications) (#2548)
* Update mattermost-redux to use latest WS changes

* Properly mark channel as read, keep the new message indicator, and fix push notification flow

* unneeded parameter in setCurrentUserStatusOffline

Co-Authored-By: enahum <nahumhbl@gmail.com>

* Feedback review

* Update mm-redux ref
2019-02-16 15:09:22 -03:00
Elias Nahum
a03016a9e3
Disconnect the websocket on logout and connect appropiately (#2375) 2018-11-23 14:54:43 -03:00
Elias Nahum
de812107b5
Disable segment for dev env (#2372) 2018-11-23 14:05:42 -03:00
Elias Nahum
c8777422ce
Fix network indicator layout and reconnect logic (#2351)
* Fix network indicator layout and reconnect logic

* Reconnection logic to cover more use cases

* Check for internet connectivity when bringing the app to the foreground
2018-11-22 10:25:08 -03:00
Harrison Healey
8a2049f2ab
Hide warnings caused by React Native (#2202) 2018-10-02 09:23:22 -04:00
Jesús Espino
8884293b18 Add t() translation mark to i18nable strings and update translations (#2026)
* Add t() translation mark to i18nable strings and update translations

* Small fixes

* Adding  to the packager

* Rebase fixes

* Added missed texts
2018-09-21 11:25:38 -03:00
Harrison Healey
34a37cef05 MM-11477 Ensure client calls are wrapped with error handling (#1976) 2018-08-07 13:11:48 -04:00
Chris Duarte
26950abb61 Add deep linking support (#1805) 2018-07-31 08:43:54 -04:00
Jesse Hallam
8372e95d4a add eslint-plugin-header, and --fix all (#1726) 2018-06-19 19:14:50 -04:00
Elias Nahum
63a6a9ee91
Replacing fetch with RNFetchBlob (#1782) 2018-06-19 14:44:10 -04:00
Elias Nahum
e07a738dcd Remove orientation dependency (#1698)
* Remove orientation dependency

* Update NOTICES
2018-05-23 10:39:23 -04:00
Elias Nahum
b8f6160f73 Update Android JavaScriptCore in release mode (#1697) 2018-05-23 10:39:09 -04:00
Elias Nahum
8e0d167f95 Fix push notification and emm race conditions (#1691)
* Fix push notification and emm race conditions

* feedback review

* Removed unnecesary code
2018-05-22 11:02:14 -04:00
Chris Duarte
e8712f9199 Cold startup js refactor (#1598)
* Switch to SingleDex and remove all locales

* WIP Mattermost Start Component for lazy loading modules

* Add files changed for native modules

* Add Entry component and app global object

* dispatch setStatusBarHeight for iOS

* Update screen imports

* Include Entry screen

* Refactor app to mattermost.android.js

* Override unnecessary java files

* Fix minor issues in changes

* Display empty state based on user credentials

Also, add proper background theme for empty loading screen

* Add native module constant cache support

* Fix startup theme regression

* Add Keychain support for credentials

* Fix Orientation regression

*  Fix SharedExtension regression

* Emit NATIVE_APP_LAUNCHED across bridge only once during cold start

* Add iOS Support

* Revert to previous implementation of i18n

* Fix styling issues

* Include listener for SERVER_VERSION_CHANGED

* Add SafeAreaView in Entry screen

* Register deviceToken early, in order to get iOS PN Support

* Include StartTimeModule

* Add ReplyFromPush support and remove NATIVE_APP_LAUNCHED listener

* Package native constants in StartTimeModule and avoid bridge calls

* Fix check-style errors

* Code cleanup

* Rename StartTimeModule to InitializationModule

* Remove NavigationApplication

* Documentation and minor changes

* Account for app opening after SharedExtension

* Refactor getIntl to getTranslations

* Move native module constants into it's own forked repos

* Include FetchBlob and DeviceInfo forked repos
2018-05-18 17:13:00 -04:00
Jesse Hallam
4f1e3590f8 MM-8604: handle SERVER_VERSION_CHANGED and CONFIG_CHANGED events (#1469)
* MM-8604: handle SERVER_VERSION_CHANGED and CONFIG_CHANGED events

This pairs up with the corresponding mattermost-redux changes to split
apart these events. For now, we still assume a configuration change when
detecting a server version change, given that the app may run with older
mattermost servers. In the future, we could fine-tine or remove this duplicate
config/license loading.

TODO: Depend on mattermost-redux changes in yarn.lock.

* Update mattermost-redux
2018-03-07 09:04:39 +00:00
Jesse Hallam
58b72302d6 update eslint's comma-dangle rule to always-multiline (#1457)
* update eslint's `comma-dangle` rule to `always-multiline`

* add check and fix scripts to package.json

* Invoke `yarn fix` to adopt the updated eslint rules. No other changes are included.
2018-02-23 09:06:02 -05:00
Harrison Healey
f75d35b66e RN-9379 Updated react-native-sentry to 0.34.0 (#1447)
* RN-9379 Updated react-native-sentry to 0.34.0

* Removed translations for sentry debugging options
2018-02-21 01:01:06 +08:00
Joram Wilander
84a2a0fab8
ABC-123 Add handling for loading custom emojis asynchronously (#1406)
* Add async handling of custom emoji to posts and channel info

* Add server request to emoji autocomplete

* Add custom emoji paging and server search to emoji picker

* Fix android

* Update mattermost-redux and revert temp change

* Backwards compatibility fixes

* Updates per feedback

* Set server version when user is not logged in

* Reset section index when search is cleared or cancelled

* Some small fixes and upgrade mattermost-redux

* Minor sorting changes
2018-02-15 17:38:45 -05:00
Elias Nahum
c4ad99d2b8
Merge branch 'release-1.6' 2018-02-02 19:23:48 -03:00