Commit graph

1708 commits

Author SHA1 Message Date
Elias Nahum
d35c05ce05
MM-22487 Fix race condition causing the user to logout (#3916) 2020-02-12 17:26:06 -03:00
Elias Nahum
696d6eef08
Re-enable ram-bundles (#3907) 2020-02-10 11:20:45 -07:00
Miguel Alatzar
3c417838a4
Dispatch loadConfigAndLicense on launchApp (#3902) 2020-02-10 13:46:22 -03:00
Miguel Alatzar
abaed71f47
[MM-22034] Tighten up post draft UI (#3898)
* Tighten up post draft UI

* Revert "MM-15307 Updated to use InteractionManager (#3666)"

This reverts commit e08155c81b.

* Address PR review comments

* Update snapshot test

* Don't return null if no files

* Fix progress text and padding issues

* Fixes per Matt's review

* Make linter happy
2020-02-10 11:46:00 -03:00
Amit Uttam
26df779330
MM-22253 Reduce unnecessary re-renders in channel switching (#3900)
Re-renders were occuring because of prop and state updates that created new object references, despite being of identical value. A key culprit was `postListHeight` in `PostList` which goes through a few calls to `handleContentSizeChange` when loading posts.

Also, "New Messages" divider line is a pure component now (via `memo`) to reduce unnecessary re-renders here too.
2020-02-07 14:13:44 -07:00
Miguel Alatzar
cadec1b793
Fix typo in error.message (#3891) 2020-02-07 09:50:20 -03:00
Amit Uttam
a17b534916
[MM-22344] Remove ChannelPeek (#3894)
Introduced large number of unnecessary re-renders when opening channels, and ideally should not be a part of the channel switching/opening code path. Although this was discovered while trying to investigate an [Android-specific issue](https://mattermost.atlassian.net/browse/MM-22253), this extra code path made it difficult to see what Android is potentially doing differently than iOS.

Functionality originally introduced in #1203.

Conversation for removal is [here](https://community.mattermost.com/core/pl/hfcogf6pr7rw8k3ryq14c69c7e)
2020-02-06 22:42:35 -03:00
Miguel Alatzar
a1474d9e89
[MM-22236] Check against Permissions.RESULTS.GRANTED (#3892)
* Check agains Permissions.RESULTS.GRANTED

* Fix file and image upload as well

* Fix permissions

* Make linter happy

* Use toHaveBeenCalledWith
2020-02-06 11:55:15 -07:00
Miguel Alatzar
2464780eca
[MM-22300] Use dismissModal to close ChannelInfo screen (#3890)
* Use dismissModal to close ChannelInfo screen

* Missing semicolon
2020-02-05 17:18:58 -07:00
Emilio Rodriguez
0b98d82bfa
Mm 10601 - Use Enter Key to send message on Hardware Keyboards (#3760)
* Reacting to shift-enter events on iOS

* moving keyEvent logic to handleHardwareEnterPress

* configured android to work with keyEvents

* using dispatchKeyEvent instead of onKeyUp

* using react-native-hw-keyboard-event

* cleanup

* updated package name

* update package name

* using react-native-hw-keyboard-event v0.0.2

* reverted cocoapods version change

* Documentation

* fix detection of Shift-Enter on android

* simplify dispatchKeyEvent()

* fix for stacked hardware keyboard events

* Update android/app/src/main/java/com/mattermost/rnbeta/MainActivity.java

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* simplify dispatchKeyEvent

* removed yarn.lock

* using react-native-hw-keyboard-event v0.0.4

* Using ACTION_UP instead of ACTION_DOWN

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-02-04 09:34:14 -07:00
Miguel Alatzar
e62c9b7a6d
[MM-21074] Handle iOS reply action on native side (#3884)
* Handle iOS reply action on native side

* Make linter happy

* Revert rn vector changes to .pbxproj
2020-02-04 08:49:26 -07:00
Elias Nahum
484e7068c3
MM-22165 Fix channel sidebar close gesture (#3879) 2020-02-01 13:12:05 -03:00
Miguel Alatzar
476fc19431
[MM-22159] Import from semver/preload (#3874)
* Import from semver/preload

* Add unit tests
2020-01-30 09:33:54 -03:00
Miguel Alatzar
a8f0314067
[MM-22078] [MM-22083] Sort emojis in EmojiPicker (#3865)
* Sort emojis in EmojiPicker

* Pass search term to compareEmojis

* Sort emojis that include search term first

* Fix sorting

* Handle compareEmojis without search term

* Return doDefaultComparison

* Check includes only if needed

* Make linter happy

* Use doDefaultComparison
2020-01-28 15:04:59 -07:00
Elias Nahum
ee25cf49eb
MM-22090 Fix iOS photo/camera denied permissions (#3860)
* Fix iOS photo/camera denied permissions

* Add unit test and rename files

* Request for permission if returns denied
2020-01-28 16:53:14 -03:00
Amit Uttam
99a551df6d
Handle links with no server URL provided (#3862)
Default to current server or site URL.

Example case: `<jump to convo>` links generated from autolink plugin have their server/site URL stripped, and it is assumed that generated links are relative to the current server.

Conversation: https://community.mattermost.com/core/pl/78j4a7ozupbci8qxwx1sczc1ua
2020-01-28 09:14:57 -03:00
Elias Nahum
2765d1b06b iOS Slide open main sidebar from anywhere (#3859) 2020-01-27 19:53:16 -07:00
Elias Nahum
ff13f3e612 MM-21961 Fix Incorrect Timestamp on Android Mobile App (#3861) 2020-01-27 12:57:22 -07:00
Ryan Wang
7e7c652828 MM-17649 - fix VoiceOver on server select & login (#3855) 2020-01-24 14:57:40 -03:00
Saturnino Abril
a76c0fbb9d update commit hash of mattermost-redux and cleaup initial state of requests.preferences (#3836) 2020-01-24 21:27:39 +07:00
Miguel Alatzar
d56965e4ce Call Linking.getInitialURL() in launchApp (#3843) 2020-01-22 15:06:56 -03:00
Andre Vasconcelos
b6e6d4c9e0 Fixing post draft style to comply with design specs (#3818)
* Polishing post draft to comply with design specs

* changed maxHeight in landscape mode, fixed icon sizes

- Refactored code so that post draft icon sizes are taken from same constant value

- Set maxHeight value in landscape mode to be smaller (tests pending)

- Removed repeated styles for button wrappers (passing them down as props to child components)

- Increased size of image attachment remote icon, and increased tappable area

* Removing repeated logic for file upload

* Fixing failed snapshot tests / style checks

* Fixing file upload remove icon to have 64% opacity

* post draft UX/UI improvements

* Fix input box extra spacing

* input box line height and attachment border

* Animate to original state even if error is showing

* Fix permissions

* Improve attachment error animation

* Fix iOS post input height

* Update snapshots
2020-01-21 15:20:19 -03:00
Amit Uttam
36c7cf4014 MM-21723 Handle deep link errors to inaccessible teams, channels & permalinks (#3815)
* Consolidated error handling for a user's reachable teams.
* Consolidated error handling for a user's reachable channels.
2020-01-21 14:43:24 -03:00
Elias Nahum
1e0095d465 MM-21892 Fix TypeError cause by mm-redux#1006 (#3837) 2020-01-21 08:53:01 -07:00
Amit Uttam
331cfcc372 Set default app scheme to mattermost (#3827)
Was originally set to `mattermost-beta` as per #3767 .
2020-01-20 16:14:19 -03:00
Elias Nahum
7c09334dc4
Deps update (#3806)
* Dependecy updates

* Update dependencies
2020-01-20 13:20:03 -03:00
Elias Nahum
08e748bcae MM-21634 Fix keyboard glitch when returning to channel screen from the code screen (#3813) 2020-01-20 08:50:32 -07:00
Miguel Alatzar
24820bd34d
[MM-21865] Dispatch loadConfigAndLicense on successful login (#3819)
* Dispatch loadConfigAndLicense on successful login

* Emit server version changed event

* Make linter happy
2020-01-20 08:25:42 -07:00
Jesse Hallam
e127951230 MM-21632: fix toggling interactive dialog boolean (#3793)
* MM-21632: fix toggling interactive dialog boolean

My fix for MM-17519 broke the /rendering/ of the boolean toggle, but not
the underlying interactive dialog state (and the thrust of the original
issue).

* MM-21683: fix handling of boolean defaults

* unit tests
2020-01-20 21:29:43 +08:00
Amit Uttam
ef0274cad8 [MM-16263] UI/UX Improvements to the mobile post draft area (#3807)
* Adding base button functionality

Moving file upload previews to be under textbox

* Ensuring textbox is scrollable when in landscape mode

* Updated image picker to use mixed camera option

* Added unit tests, fixed other tests affected by dependency update

* Updated patch for react-native-image-picker to 1.1.0

* Fixing incorrect import of DocumentPicker

* MM-20989: Ensuring keyboard doesn't dismiss while submitting post (#3758)

* Ensuring keyboard doesn't dismiss while submitting post

* Update snapshot

* Preventing the @ icon from being repeatedly tappable (#3777)

* Fix snapshot from merge

* MM-21736 Select/Take images and videos for Android

* MM-21737 Fix attachment error message position on iOS

* Remove FileUploadPreview from the iOS Thread screen

* Fix android camera permissions

* Fix post input box sizing and disable scrollview

* Fix iOS photo gallery videos

Co-authored-by: Andre Vasconcelos <andre.onogoro@gmail.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-01-16 22:17:03 -03:00
Miguel Alatzar
6879388d04
[MM-21184] Enabled Hermes (#3814)
* Enable Hermes

* Don't sort emojis in selector

* No need for transformer

* Remove unnecessary packager files
2020-01-16 12:56:44 -07:00
Amit Uttam
f6ee6b767e
MM-14470 Deep links launch when app is not currently open (#3802)
Previously, deep links would only work when the app was already open/previously launched.

Now, invoking a deep link launches the app if not already open, and opens the deep link destination.
2020-01-15 13:54:18 -03:00
Elias Nahum
92033f42ec MM-13953 Channel Info screen transition (#3812)
* MM-13953 Channel Info screen transition

* Fix unit test
2020-01-15 09:29:57 -07:00
Amit Uttam
f3b0e4aa28 MM-21068 Notify when attempting to enter private channel/group via explicit link (#3759) 2020-01-13 20:57:06 -07:00
Elias Nahum
2951245d68
MM-21288 Fix attaching files on Android (#3805) 2020-01-13 22:46:27 -03:00
Saturnino Abril
f8698d0293 MM-21342 Fix leading zero on post by using react-intl by default and fallback to moment-timezone for unsupported locale (#3797)
* used react-intl for post time as default and moment-timezone as fallback

* add @testing-library/react-native to better test component rendering
2020-01-13 20:12:51 -03:00
Amit Uttam
a5330bc08f
MM-21369 Require server/site URL for deep links (#3770)
**Old (only worked without serverURL or siteURL)**

Beta
* `mattermost-beta://<teamname>/channels/<channelname>`
* `mattermost-beta://<teamname>/pl/<permalinkID>`

Release
* `mattermost-mobile://<teamname>/channels/<channelname>`
* `mattermost-mobile://<teamname>/pl/<permalinkID>`

**New working deep link patterns**

Beta
* `mattermost-beta://<server-or-site-URL><teamname>/channels/<channelname>`
* `mattermost-beta://<server-or-site-URL><teamname>/pl/<permalinkID>`
* `mattermost-beta://https://<server-or-site-URL><teamname>/channels/<channelname>`
* `mattermost-beta://https://<server-or-site-URL><teamname>/pl/<permalinkID>`

Note: Transport protocol (http, https, etc.) is optional.

Release
* `mattermost-mobile://<server-or-site-URL><teamname>/channels/<channelname>`
* `mattermost-mobile://<server-or-site-URL><teamname>/pl/<permalinkID>`
* `mattermost-mobile://https://<server-or-site-URL><teamname>/channels/<channelname>`
* `mattermost-mobile://https://<server-or-site-URL><teamname>/pl/<permalinkID>`

Note: Transport protocol (http, https, etc.) is optional.
2020-01-13 16:28:14 -03:00
CJ
13866bdfce MM-20625 Unit Tests (#3787)
* MM-20625 Unit Tests

* Updated tests
2020-01-13 12:35:10 -03:00
CJ
ee15776a06 MM-21230 Added check for first post (#3786)
* MM-21230 Added check for first post

Added a check to see if there was an original postId to validate the moreMessages check.

* Added comment
2020-01-13 12:23:10 -03:00
CJ
28b585284a Removed Markdown from Purpose on Channel Info (#3796) 2020-01-12 06:48:22 -05:00
Vladimir Lebedev
64d9f7e7f7 MM-18900 - Remove search unused status flags (#3772)
* Remove search unused status flags

* fix lint, fix wrong variable usage

* remove comment

* add test, fix bug with wrong PropTypes

* make test cleaner
2020-01-12 08:37:15 -03:00
Elias Nahum
1e42a87826
Fix iOS Share extension alert message when file size is larger than allowed (#3792) 2020-01-10 07:41:48 -03:00
Amit Uttam
a17983c1e4
MM-12215 Make deep link URL prefix configurable for Release/Debug (#3767)
Default deep link URL prefix: `mattermost-beta`

To set to `mattermost-mobile` (or anything else, for that matter) in production releases, set fastlane ENV var `DEEPLINK_PREFIX` to `mattermost-mobile`
2020-01-09 16:00:20 -03:00
Vladimir Lebedev
422fc5ee4a MM-18767 Remove deprecated lifecycle methods from post textbox (#3697)
* MM-18767 Remove deprecated lifecycle methods from post textbox

* fix current issues

* change deep equal compare to just compare, fix test

* remove redundant state initialization

* restore state

* move state from constructor
2020-01-09 23:07:55 +08:00
Chris Dobson
ce53a7ac29 MM-18571: Include self user in autocomplete (#3761)
* Include current user in search

* Removed unused parameters

* Include new text in i18n

* Update autocomplete tests to include current user

* Use FormattedText

* Update app/selectors/autocomplete.test.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-01-09 19:47:40 +08:00
CJ
e08155c81b MM-15307 Updated to use InteractionManager (#3666)
* MM-15307 Updated to use InteractionManager

Replaced the setTimeout with InteractionManager to resolve the delay set.

* Updated to apply animation to the input height

* Updated to apply animation to the input height

* Fixed eslint issue

* Updates per review

* Updates from feedback
2020-01-09 18:02:02 +08:00
Miguel Alatzar
c988a3ea80 [MM-21270] Handle lower case headers (#3790)
* Handle lower case headers

* Change var name
2020-01-09 16:19:17 +08:00
CJ
907dce3cda
MM-20949 Updated verbiage for profile image error (#3768)
* MM-20949 Updated verbiage for profile image error

* Updated commit
2020-01-07 21:16:13 -05:00
Elias Nahum
5d743004b8 MM-17044 Load posts until no more are needed (#3656)
* MM-17044 Load posts until no more are needed

* Improving post list tests for componentDidUpdate

Co-authored-by: mattermod <mattermod@users.noreply.github.com>
2020-01-07 11:59:31 -07:00
Elias Nahum
a8e3b608ad Fix headers for ESR 5.9 (#3738)
* Fix headers for ESR 5.9

* check if reactions is defined to avoid a crash with servers without metadata
2019-12-19 21:33:28 -07:00