Commit graph

1949 commits

Author SHA1 Message Date
Elias Nahum
6c9dc8a917
MM-26490 Dismiss keyboard when closing more dms / channels / create channel (#4538) 2020-07-07 17:37:52 -04:00
Elias Nahum
320ec7029c
MM-26722 check for switchKeyboardForCodeBlocks only on iOS 12+ (#4537) 2020-07-07 13:01:48 -04:00
Elias Nahum
13da814860
Fix LHS team icon on team switch (#4534) 2020-07-07 11:38:01 -04:00
bill2004158
287ed47d61
Update settings.js (#4517)
fix prop type
2020-07-06 10:49:14 -07:00
Elias Nahum
4ff9cd024a
Wait for hydration before app launch (#4523) 2020-07-02 16:03:45 -04:00
Elias Nahum
c22d5e69f6
MM-26667 Set EMM username as the initial loginId (#4519) 2020-07-02 14:27:19 -04:00
Miguel Alatzar
2ccf2dc716
[MM-26077] Emoji autocomplete fixes (#4512)
* Use 0 height over null and move fuse

* Deconstruct props

* Update app/components/autocomplete/emoji_suggestion/emoji_suggestion.js

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>

* Update app/components/autocomplete/emoji_suggestion/emoji_suggestion.js

* Update snapshot

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-07-02 10:24:19 -07:00
Elias Nahum
92e7adc852
MM-26638 MM-26656 await when dismissing post options modal (#4518) 2020-07-02 11:59:14 -04:00
Miguel Alatzar
083deb9eab
Fix event typo (#4516) 2020-07-01 17:11:15 -07:00
Elias Nahum
3ee3f80345
MM-25967 Disable Shared Process Pool in WebView (#4511) 2020-07-01 16:06:59 -04:00
Elias Nahum
0f72bb34c2
MM-15719 Use metadata only to render post additional content (#4386)
* MM-15719 Use metadata only to render post additional content

* Default link to empty instead of undefined

* Feedback review
2020-06-29 11:28:07 -04:00
Elias Nahum
30cd64b38b
Revert updated dependecies for SSO (#4499)
* Revert updated dependecies for SSO

* Fix test setup
2020-06-26 21:50:53 -04:00
Elias Nahum
efe9466bba
Fix SSO login with subpaths (#4490) 2020-06-26 16:41:51 -04:00
Elias Nahum
cfbb7d4d55
Avoid throwing when purging (#4489)
* Avoid throwing when purging

* Update app/store/index.ts

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-06-26 16:14:03 -04:00
Elias Nahum
56c593d36c
MM-25946 prompt sys admins if they are running server versions below 5.19 (#4488)
* MM-25946 prompt sys admins if they are running server versions below 5.19

* Update alert message

* Change alert buttons
2020-06-26 15:58:37 -04:00
Miguel Alatzar
363810f708
Various fixes: (#4474)
* Fix map call on Set
* Ensure we don't destructure non-iterable values
* Include error message and stack in Alert
2020-06-23 16:39:49 -07:00
Martin Kraft
47863cae3e
MM-11713: Allows edit others posts to function without edit own posts. (#4406)
* MM-11713: Allows edit others posts to function without edit own posts.

* MM-11713: Switches branching statement to ternary.

* MM-11713: Default to false expclicitly.

* MM-11713: Uses old logic for server versions prior to v5.26.
2020-06-23 16:09:44 -04:00
Miguel Alatzar
73f5bc20eb
Various fixes: (#4465)
* Dispatch REHYDRATED if already hydrated after getStoredState call
* Empty/null prev version is valid
* Update iOS target to 11.0
2020-06-22 15:24:54 -07:00
Elias Nahum
6fe083672c
MM-25820 prevent double tap in post options (#4448)
* MM-25820 prevent double tap in post options

* Fix weird behavior on iOS when doble tapping on add reaction and edit in post options

* Callback after close
2020-06-20 12:28:26 -04:00
Miguel Alatzar
f6611f7093
[MM-26318] Improve cold start and channel switching times (#4452)
* Remove withEncryption

* Remove warm up

* Downgrade react-native-keychain
2020-06-19 16:12:15 -07:00
Elias Nahum
57e4b17ade
MM-25670 perform search when hitting Enter on HW keyboard (#4432) 2020-06-17 22:13:34 -04:00
Elias Nahum
b85766ec31
MM-25931 Handle incoming session expired push notification (#4417) 2020-06-17 21:30:19 -04:00
Amit Uttam
e23c9084b2
MM-25350 Hide 'Select Team' title on modal when error occurs (#4412) 2020-06-17 20:55:18 -04:00
Elias Nahum
0f9bf90211
Fix unhandled error when logging out from the select team screen (#4423) 2020-06-17 14:37:46 -07:00
Elias Nahum
023109e250
Fix SSO and clear cookies (#4422)
* Fix SSO and clear cookies

* Fix unit tests

* Removed unnecessary argument

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-06-15 14:00:13 -04:00
Rahim Rahman
e0d2fba243
[MM-18766] remove deprecated lifecycle methods from post components (#4270)
* [MM-18766] removed deprecated lifecycle methods from post components

* [MM-18766] update snapshot, seems like there was a bug

* [MM-18766] refactor getBestImageUrl -> getBestImageUrlAndDimensions

- refactor getBestImageUrl to take a single argument: props
- refactor getViewPostWidth to take a single argument: props

* [MM-18766] getDerivedStateFromProps was previously returning only first prop change

- fix issue if multiple props were modified at once.

* [MM-18766] removed FastImage.preload that was supposed to be removed in the last merge.

* [MM-18766] removed getDerivedStateFromProps

* [MM-18766] fix tests based on actual component being completely re-rendered rather than prop change.

* [MM-18766] cleaning up initial changes due to no longer using getDerivedStateFromProps method

- move back getBestImageUrl and getViewPostWidth from outside of components
- keep the renaming of getBestImageUrl
- remove the use of spread operator as it is also no longer needed

* [MM-18766] one of caller to getViewPostWidth is still passing this.props

- this is no longer needed
2020-06-15 10:11:21 -07:00
Miguel Alatzar
67978382e2
Wrap await calls in try/catch (#4418)
* Wrap await calls in try/catch

* Fix spacing
2020-06-12 13:08:22 -07:00
Elias Nahum
8c4ce94701
MM-25967 await until cookies are cleared (#4411) 2020-06-11 14:19:20 -04:00
Andre Vasconcelos
55acf06c6d
MM-22852 Improve mobile modal style (#4198)
* Opening screens as 'pageSheet' for iOS

* Added pagesheet on more screens

- Search
- Edit Profile
- Recent Mentions
- FlaggedPosts

* Close sidebar when tapping new channel `+` icon

* Update search modal test to expect `pageSheet`

* Fixing search screen

* Making sure padding fix only applies to iOS

* Adjusting padding & height values for searchbar

* Adjusting padding & height values for searchbar (2)

* Changed default iOS modal to be pageSheet

* Fix test that failed due to changes in modal behavior

* Removing useless params from openModal function
2020-06-10 15:34:08 -04:00
Amit Uttam
446f95ff6b
MM-21368 Notify user when editing message that's too long (#4371)
* MM-21368 Notify user when editing message that's too long

* Disable 'Save' button to prevent edits from being posted
* Display error message specific to the message size and allows max, instead of the current, default "Invalid Message" error.

* Split message length error into text (left justified) and counts (right justified)

UX guidance from PR review

* UX Review: Wrap for longer error text + spacing adjustment

* UX Review: Align split messages to top + add spacing in-between

* UX Review: Align error message box padding with content
2020-06-10 13:01:40 -03:00
Elias Nahum
36e6df2150
MM-25782 improve channel member reducer speed to sync memberships (#4400) 2020-06-09 13:55:57 -04:00
Maria A Nunez
6899bb9510
MM-25809 - Fixed rendering code blocks when starting with 4 spaces (#4397) 2020-06-08 19:58:48 -04:00
Elias Nahum
195011d678
Ensure previous state is cleared when logout (#4390) 2020-06-08 13:43:53 -04:00
Harshit Khetan
7b76aba233
clear cookies on again trying to login (#4387) 2020-06-08 13:43:22 -04:00
Amit Uttam
841a8e1df2
MM-25831 Fix timing issue with cancelPing (#4389)
With `getUrl` recently [becoming async](https://github.com/mattermost/mattermost-mobile/commit/293470ff#diff-60b06b1c4aab028b96d9b207e84000c6R316), the global definition of the cancelPing function wasn't being made available in time for use by other functions (e.g. `handleSslProblem` and `handleConnect`)
2020-06-08 14:16:44 -03:00
Amit Uttam
99ee105e17
MM-13076 Start with store results for at-mention/search autocomplete (#4385)
Currently, at-mention and search autocomplete do not render if there is a server request or network problem/outage, because the only data used to populate autocomplete results is a server request.

Now, these autocompletes will render initially with user data currently in store, and then re-rendered in place, once the server response completes.
2020-06-08 14:13:38 -03:00
Elias Nahum
68a9c45d88
MM-25695 Select channel when switching teams if available (#4375) 2020-06-03 08:53:32 -04:00
Elias Nahum
ebd31e0835
MM-25694 Disallow profile picture update is set by LDAP (#4377) 2020-06-02 12:04:28 -04:00
Elias Nahum
293470ff94
Handle SSO redirecting to a different URL than specified by the user (#4372)
* Handle SSO redirecting to a different URL than specified by the user

* Set Server URL based on the last redirect

* Improve last redirect condition
2020-06-01 14:06:37 -04:00
Miguel Alatzar
9b03f66e6e
[MM-24068] Animate top bar height/padding (#4370)
* Animate top bar height/padding

* Update import order
2020-06-01 10:03:58 -07:00
Amit Uttam
d869ddf8e5
MM-24029 Fix date re-selection on search bar (#4368)
Picking a new date string (tapping a date on the autocomplete calendar) to replace an already populated date string in the search bar, leaves the search text garbled. This was because of incorrect handling of the tap cursor position in the search box.
2020-05-29 13:29:25 -03:00
Miguel Alatzar
023432e2f4
Fix sidebar search bar (#4350) 2020-05-28 09:35:34 -07:00
Amit Uttam
73da13fa66
MM-24201 List joinable teams alphabetically (#4365)
Matches webapp behaviour.
2020-05-28 13:18:51 -03:00
Amit Uttam
3d1a647263
[MM-24501] Load all (including joinable) teams when resetting app state (#4362)
* MM-24501 Load all (joinable) teams when resetting app state

The subsequent `loadMe` only fetches a user's already-joined teams, which doesn't populate `state.entities.teams.teams` with the entire set of teams available, including potentially joinable teams.

Fixes https://github.com/mattermost/mattermost-mobile/issues/4209

* Add names to batched team action groups
2020-05-28 13:15:30 -03:00
Elias Nahum
81a4bb39ca
MM-21605 Remove border to login option buttons (#4354)
* Remove border to login option buttons

* Remove email login option color for O365
2020-05-28 11:58:35 -04:00
Elias Nahum
ee05367cae
MM-25562 Fix dismiss reaction list crash (#4353) 2020-05-27 12:45:35 -04:00
Elias Nahum
d100d646f2
Bump upload timeout to 1 min (#4345) 2020-05-27 12:42:56 -04:00
Elias Nahum
547ac860b7
Invalidate versions for iOS (#4349) 2020-05-27 10:49:33 -04:00
Elias Nahum
43f1e5113c
MM-25510 Increase post options long press delay to 200ms (#4346)
* MM-25510 Increase post options long press delay to 250ms

* Set delay to 200ms
2020-05-26 19:45:30 -04:00
Elias Nahum
1568e08055
MM-25470 Fix emoji autocomplete results (#4344)
* Fix emoji autocomplete results

* Rename selectors with "select" prefix
2020-05-26 16:03:11 -04:00
Miguel Alatzar
5d1520ab3c
Add calls to Client4.savePreferences (#4341) 2020-05-26 09:29:50 -07:00
Elias Nahum
cef36502c5
MM-24895 fetch roles if needed and add team member to the store when joining a new team (#4330) 2020-05-26 09:05:43 -04:00
Elias Nahum
3a3be0e40c
MM-24964 select server url correctly animate error with keyboard (#4333) 2020-05-22 15:42:24 -04:00
Elias Nahum
65205258d2
MM-24932 Bold LHS active channel manually marked as unread (#4332) 2020-05-22 15:39:15 -04:00
Elias Nahum
0b3c91dd81
MM-25434 Fix switch team badge cut off (#4331) 2020-05-22 10:47:35 -07:00
Miguel Alatzar
6053c7fe42
Apply background style for Android as well (#4326) 2020-05-22 11:35:37 -04:00
Miguel Alatzar
12a913b499
Update control icon style (#4325) 2020-05-22 11:35:21 -04:00
Miguel Alatzar
4178816350
Incrase redux-persist timeout to 1 min (#4322) 2020-05-21 14:04:08 -07:00
Elias Nahum
a91e257f55
Fix overflow of searchbar for iOS in Landscape (#4312) 2020-05-20 23:34:16 -04:00
Elias Nahum
a9763c7480
Do not preload images with FastImage (#4314) 2020-05-20 15:47:06 -04:00
Miguel Alatzar
93f519c8fc
Handle MFA error in MFA screen (#4308) 2020-05-20 08:28:14 -07:00
Harrison Healey
c7ef3fe1d3
MM-22155 ESLint configuration updates part 1 (#4311)
* MM-22155 Disable no-undefined

* MM-22155 Disable react-jsx-filename-extension

* MM-22155 Disable no-magic-numbers

* MM-22155 Re-enable camelcase

* MM-22155 Re-enable no-nested-ternary

* Update no-unused-vars to match other repos
2020-05-20 08:27:27 -07:00
Elias Nahum
81fb199feb
Allow interaction when the in-app notification is shown (#4295)
* Allow interaction when the in-app notification is shown

* Wrap in gesture HOC only for Android

* Set height and remove flex for android in-app notifications gesture hoc

Co-authored-by: Miguel Alatzar <this.migbot@gmail.com>
2020-05-19 15:54:47 -07:00
Elias Nahum
012eb08fde
Fix infinite skeleton in different use cases and do not scroll to messages already seen (#4304)
* Fix infinite skeleton in different use cases

* Apply suggestions from code review

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/utils/teams.js

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-05-19 18:54:34 -04:00
Elias Nahum
c04c1f26f7
Do not schedule session expiry notification for 5.24+ (#4291) 2020-05-19 12:15:45 -04:00
Miguel Alatzar
a819cce708
[MM-24642] Sidebar fixes (#4286)
* Fixes to height and padding

* Add underlayColor

* Rename to index

* Revert height change for overflow change

* Increase toValue

* Update Android offset
2020-05-18 16:31:11 -07:00
Elias Nahum
d3a6e166ad
MM-15758 Update dependencies including Fastlane (#4272)
* Update dependencies including Fastlane and disable Flipper on iOS

* Remove EventEmitter for previous doc-viewer

* Fix android crash when setting more channels buttons

* Downgrade fuse.js

* Upgrade deps to latest

* Update Podfile.lock

* Downgrade RNN to 6.4.0

* QA Review #2

* Upgrade fuse.js to 6.0.0
2020-05-18 11:24:47 -07:00
Andre Vasconcelos
a0841e0ef1
MM-24497 Ensuring quick reactions render within safe area (#4235)
* Ensuring quick reactions render within safe area

* Added modifier to align paddings

* Updating snapshots
2020-05-14 22:10:15 -04:00
Elias Nahum
c0a763e9e0
Set previous app version on persist store migration (#4294) 2020-05-13 19:24:44 -03:00
Elias Nahum
1ae5584cb1
MM-24115 Use Native + BuiltIn emojis instead of systemEmojis (#4274)
* MM-24115 Use BuiltInEmojis instead of systemEmojis

* Address QA found issues
2020-05-13 18:23:47 -04:00
Elias Nahum
36e55c95a2
MM-23570 Migrate from Segment to Rudder (#4293)
* Replace Segment with Rudder (ios not working)

* Update @assets reference and fix tests
2020-05-13 16:54:07 -04:00
Elias Nahum
e50fa1d85b
MM-24973 Prevent search input to take full screen on Android landscape (#4283) 2020-05-13 10:12:53 -04:00
Jesús Espino
6b6a685909
Using new getKnownUsers api to cleanup the users on leave channel (#4220)
* Using new getKnownUsers api to cleanup the users on leave channel

* Fixing tests

* Addressing PR comments

* Removing unnused variables

* Fixing proptypes annotation

* Addressing PR review comments

* Fixing minimun version check

* Changing the import to use

* Adding tests for version check

* Addressing PR review comments

* Small change to no change accidentaly the previous behavior

* Adding small fix proposed by Elias
2020-05-11 13:19:38 -03:00
Miguel Alatzar
94bdd8e430
Ensure currentChannel set (#4288) 2020-05-11 12:12:01 -03:00
Amit Uttam
ee5d336190
[MM-18642] Notify on server certificate trust problems when connecting (#4282)
* MM-18642 Notify user on server certificate trust problems

Presents a new alert specific to SSL connection/certificate trouble on the server, when pinging.

* Change Alert title (PR review)
2020-05-08 19:58:43 -07:00
Farhan Munshi
901f31ec4b
[MM-24891] [MM-24572] Add ability to specify default value when role not found for selector (#4277)
* MM-24891 Allow permissions to have defaults set in case where roles not in state

* MM-24891 Add tests for haveIPermission

* MM-24891 Apply the defaults to more channel permission checks
2020-05-08 14:19:33 -04:00
Miguel Alatzar
879e604bbf
Ensure receivedPosts runs first (#4281) 2020-05-08 08:08:22 -07:00
Amit Uttam
42f93769b1
Revert "MM-24113 Support 'leave' slash command (#4273)" (#4279)
This reverts commit fd450f9988.
2020-05-07 14:40:54 -03:00
Amit Uttam
fd450f9988
MM-24113 Support 'leave' slash command (#4273)
Fixes crash on Android when attempting to redirect back to a read-only channel (default channel) after using the `/leave` command.

Also, enables official support of `leave` slash command. Added as auto-complete suggestion.
2020-05-07 13:58:09 -03:00
Miguel Alatzar
65314fae47
[MM-24706] Use cache only for http URIs (#4257)
* Use cache only for http URIs

* Style fixes

* No need for cache prop

* Remove redundant absolute positioning

* Cap at two lines
2020-05-06 19:30:42 -07:00
Amit Uttam
67fa7aeb53
[MM-24061] Bring back channel sidebar hamburger icon for tablets (#4244)
* MM-24061 Bring back channel sidebar hamburger icon for tablets

* Remove channel sidebar icon for iPads

iPads run with a "persistent" sidebar already.

* Better conditional logic from PR review + tests

* Test tidying from PR review
2020-05-06 22:19:31 -03:00
Elias Nahum
1a605891fe
MM-22401 Refactor Post Draft (#4122)
* Babel TS and Eslint config

* Channel is archived component

* Move Typing component

* Move Uploads component

* Add PostInput component

* QuickActions components

* Add PostDraft component

* Remove old PostTextbox component

* Rename post_textbox constant

* Fix Autocomplete

* Rename blur post draft event

* Fix references

* Feedback review

* Fix autocomplete for iOS
2020-05-06 06:30:51 -04:00
Elias Nahum
597e03a6bc
MM-24852 ensure only one listener for in-app notification is registered (#4267) 2020-05-05 18:56:58 -04:00
Miguel Alatzar
86737a70c6
[MM-24639] Set rehydrated values to true on store cleanup. (#4258)
* Set rehydration values to true on clean up

* Remove extra line

* Update app/store/middlewares/helpers.js

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>

* Fix setting of views.root.hydrationComplete

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-05-05 18:16:49 -04:00
Amit Uttam
4d391c36a0
Serialize/Deserialize state as string in store, instead of map (#4253)
* Serialize/Deserialize state as string in store, instead of map

To see if this positively impacts performance lag issues (channel sidebar opening, etc.)

* Update app/store/mmkv_adapter.ts

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>

* Update app/store/mmkv_adapter.ts

* Typescript fixes

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Miguel Alatzar <this.migbot@gmail.com>
2020-04-30 11:17:58 -07:00
Miguel Alatzar
454973ecbd
Revert "Disable loadUnreadChannelPosts (#4245)" (#4251)
This reverts commit 8de77754ef.
2020-04-30 08:57:12 -07:00
Miguel Alatzar
8de77754ef
Disable loadUnreadChannelPosts (#4245) 2020-04-29 11:52:53 -07:00
Andre Vasconcelos
64a2de8243
Fixing improper padding of searchBar container (#4212)
* Fixing improper padding of searchBar container

* Ensures leftComponent is hidden after animation
2020-04-29 17:26:57 +08:00
Elias Nahum
9af108026e
MM-24285 Use FastImage instead of Image (#4218)
* Enable ESLint no-unused-vars

* Use FastImage instead of Image

* Update fast-image patch to support multiple cookies

* Fix ESLint errors

* Have jest run timers for post_textbox tests

* Feedback review

* Update snapshots
2020-04-28 23:23:39 +08:00
Amit Uttam
35bb4b6b28
[MM-24463] Run message retention cleanup off of pre-existing state (#4222)
* MM-24463 Run message retention cleanup off of pre-existing state

Instead of a reconstructed "zero" state.

Only posts in channels, searched posts and flag posts are recalculated (as per data retention policy, if applicable). The rest of state is cloned from existing state.

* Mark hydrationComplete only if _persist state is undefined

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-04-27 13:27:21 -03:00
Miguel Alatzar
fe2c6a4147
Wrap screen in gestureHandlerRootHOC (#4137)
* Wrap screen in gestureHandlerRootHOC

* Trigger ci
2020-04-27 13:25:30 -03:00
Andre Vasconcelos
31052a7d53
Fixing padding of searchbar in search screen (#4223) 2020-04-27 12:20:15 -03:00
Elias Nahum
798efbd57f
MM-22089 set default prevent double tap to 1s for ChannelInfo modal (#4133)
* MM-22089 set default prevent double tap to 1s

* Increase tap debounce delay for ChannelInfo modal action

Co-authored-by: Amit Uttam <changingrainbows@gmail.com>
2020-04-27 10:04:58 -04:00
Elias Nahum
f94c09d54e
MM-24451 Set prev app version to current on logout/reset cache (#4225)
* MM-24451 Set prev app version to current on logout/reset cache

* Fix unit tests for master
2020-04-24 11:07:08 -07:00
Elias Nahum
cc4abdde2f
MM-24446 Fix Crash on iOS with EMM enabled (#4203)
* Fix Crash on iOS with EMM enabled

* Fix Android Passcode authentication

* Fix Login screen header when EMM does not allow other servers
2020-04-23 06:03:10 -04:00
Elias Nahum
3a302eaae7
MM-24385 Fix ExperimentalStrictCSRFEnforcement (#4207) 2020-04-23 06:01:20 -04:00
Miguel Alatzar
135dc8c9bd
[MM-24426] [MM-24451] Set previous app version in redux store (#4197)
* Set previous app version in redux store

* Handle setting previousVersion on login and clearing data

* Set previous version on logout instead

* Remove action arg
2020-04-23 05:42:35 -04:00
Rahim Rahman
b5ef54527f
added isLandscape (#4188) 2020-04-22 18:48:51 -07:00
Mario de Frutos Dieguez
3de2b29570
Fix infinite loop retrieving post files (#4192)
* Fix infinite loop retrieving post files

Right now if all the attachments of a post are removed the component
update code enters into an infinite loop because the comparison between
arrays always return false.
2020-04-22 19:25:34 +02:00
Miguel Alatzar
9a97f91735
Check canPost permissions for v5.22+ (#4193) 2020-04-22 20:10:46 +08:00