Commit graph

1049 commits

Author SHA1 Message Date
Mattermost Build
942b088583
MM-22629 Center-align tall & thin image attachments (#3945)
Bug reported in community: https://community.mattermost.com/core/pl/yy39ajg1ajfm386dms6tdyjrtw
2020-02-18 15:51:20 -03:00
Miguel Alatzar
3383c93df8
Performance improvements (#3911) (#3941)
* 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>

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-02-17 21:23:39 -07:00
Mattermost Build
cbae026f8e
MM-20184 Remove ios drawer hack and Fix right drawer partially shown on landscape (#3933)
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-02-17 12:32:11 -07:00
Mattermost Build
62c244cd72
Automated cherry pick of #3898 (#3905)
* 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

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-02-10 11:53:25 -03:00
Mattermost Build
af715828b6
MM-22253 Reduce unnecessary re-renders in channel switching (#3901)
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.

Co-authored-by: Amit Uttam <changingrainbows@gmail.com>
2020-02-07 14:16:49 -07:00
Mattermost Build
b7970c3a34
Remove ChannelPeek (#3897)
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:46:09 -03:00
Mattermost Build
6806337b23
Automated cherry pick of #3892 (#3895)
* Check agains Permissions.RESULTS.GRANTED

* Fix file and image upload as well

* Fix permissions

* Make linter happy

* Use toHaveBeenCalledWith

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-02-06 12:14:44 -07:00
Mattermost Build
5f0df6eb49
MM-22165 Fix channel sidebar close gesture (#3882)
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-02-01 13:15:32 -03:00
Mattermost Build
c04d2e6040
Automated cherry pick of #3865 (#3870)
* 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

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-01-28 15:09:04 -07:00
Mattermost Build
1e0ead398f Automated cherry pick of #3860 (#3868)
* Fix iOS photo/camera denied permissions

* Add unit test and rename files

* Request for permission if returns denied

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-01-28 16:56:18 -03:00
Mattermost Build
1f3ffee26f iOS Slide open main sidebar from anywhere (#3866)
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-01-27 19:57:46 -07:00
Mattermost Build
8be5649ee6 MM-21961 Fix Incorrect Timestamp on Android Mobile App (#3864)
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-01-27 13:00:58 -07:00
Andre Vasconcelos
0b81a9b4e0
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:25:28 -03:00
Mattermost Build
e05207412f MM-21723 Handle deep link errors to inaccessible teams, channels & permalinks (#3840)
* Consolidated error handling for a user's reachable teams.
* Consolidated error handling for a user's reachable channels.
2020-01-21 14:47:10 -03:00
Mattermost Build
3b909101f2 MM-21892 Fix TypeError cause by mm-redux#1006 (#3839)
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-01-21 13:30:57 -03:00
Mattermost Build
9dd5a1c2ed Set default app scheme to mattermost (#3828)
Was originally set to `mattermost-beta` as per #3767 .
2020-01-20 16:18:55 -03:00
Elias Nahum
0c42c0d976
Deps update (#3806)
* Dependecy updates

* Update dependencies
2020-01-20 13:22:07 -03:00
Mattermost Build
e8398cb880 MM-21634 Fix keyboard glitch when returning to channel screen from the code screen (#3824)
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-01-20 12:53:34 -03: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
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
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
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
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
Chris Dobson
e1cf5ac960 MM-14622 Use post id when retrieving opengraph data from mattermost-redux (#3516)
* Use post id when retrieving opengraph data from mattermost-redux

* Updated package.json with the appropriate PR for mattermost-redux

* Switch mattermost-redux back to master
2019-12-18 09:51:31 -05:00
Elias Nahum
43f999ed8c
MM-21176 Preserve text on input if command fails (#3695)
* MM-21176 Preserve text on input if command fails

* Add unit test for execute command success
2019-12-13 09:17:50 -03:00
CJ
02780faa6c
MM-18054 Fix Comment Line showing (#3696)
* MM-18054 Fix Comment Line showing

Restructured the check for the previous post to make sure comment line does not appear for posts on same thread, but from different users.

* MM-18054 Updated after review

Updated the logic to be more bulletproof
2019-12-12 19:25:00 -05:00
Jesse Hallam
ae3d0107f8 MM-17519: do not stringify booleans (#3693)
Match the webapp behaviour so as to avoid stringifying booleans in the interactive dialog payloads.

Fixes: https://mattermost.atlassian.net/browse/MM-17519
2019-12-13 00:25:27 +08:00
Elias Nahum
525b0d5ad3
MM-19920 MM-19924 Fix mis-align post input field attach and send icons (#3631) 2019-12-10 17:49:51 -03:00
Harrison Healey
dc66b443a3 MM-20947 Don't mark channel as read when reconnecting to manually unread channel (#3685) 2019-12-11 03:07:14 +08:00
CJ
855c12d80e MM-21062 Added margin to custom Emoji (#3682)
Added margin to custom emoji style to match native emoji.
2019-12-10 13:32:57 -03:00
Nev Angelova
f6addb491b [GH-11437] Fix thumbs emoji sorting logic for mobile (#3633)
* [GH-11437] Fix thumbs emoji sorting logic for mobile

* Add unit tests

* Sort emojis in selector and handle string emojis

* Remove redundant serverVersion logic

* Fix typo in app/utils/emoji_utils.test.js

Co-Authored-By: Saturnino Abril <saturnino.abril@gmail.com>
2019-12-08 10:10:56 -03:00
Miguel Alatzar
2397224f8e Show autocomplete view only when there are children (#3665) 2019-12-06 13:36:07 -05:00
Elias Nahum
0909a30633
MM-20682 Unit test for dimissing the status modal before the sidebar (#3664) 2019-12-04 18:30:12 -03:00
Nick Brady
a0c5ad5c2b MM-18530 - Update Main Sidebar on iOS (#3622)
* initial working code

* minimum changes for main sidebar working

* add settings sidebar back in

* fix visual bug with sidebar showing underneath

* fix bug for android

* cleanups

* minor cleanups and update snapshot

* add basic test

* fix style errors

* review changes
2019-12-04 15:19:50 -03:00
Elias Nahum
4c4e1907cb
MM-20682 Android back button to dismiss status modal first (#3628) 2019-12-04 15:17:59 -03:00
CJ
da858797d3
MM-19837 Remove Opacity from AtMention Markdown (#3640)
* MM-19837 Remove Opacity from AtMention Markdown

Removed the opacity that was set on the base text style for the markdown on AtMention for system messages.

* MM-19837 Updated opacity for AtMention

The baseTextStyle being used to set the opacity is used across the entire text format, so for this change where an AtMention is used, I added a new opacity to overwrite the on applied by the baseTextStyle.
2019-12-03 13:07:34 -05:00
CJ
aa03f1cd1c Updated localization items (#3638)
Updated the i18n and default messages for the network failure and entire channel message alert.
2019-12-03 21:53:55 +08:00
Elias Nahum
4933cecd1d MM-20758 MM-20762 Fix archived channels in more channels screen (#3635)
* MM-20758 MM-20762 Fix archived channels in more channels screen

* Separate archived and public channels
2019-12-01 22:07:28 -05:00
Andre Vasconcelos
f7bed8dcdb MM-15635 - Making markdown tables more responsive (#3249)
* Making markdown tables more responsive

* Changing implementation of isTablet and isLandscape

* Fixing variable names & added more table styles

* Adding header backgrounds & iOS fixes

* Changing cell padding to 8

* Fixing positioning of expand table buttons

* Fixed android issues and flex render conditions

- Centered icon in expand button instead of using fixed paddings (icon was slightly off center)
- Fixed expand button rendering on android
- Separated full table view into ios / android to allow for separate styling

* Merging table back to single file

* Resolving conflicts & improving full table view

- Made the full table view scrollable through any part of the screen, as opposed to only the table area (only works on iOS)
- Resolved conflicts with PR that limits tables to 5 columns visible on channel view
- Made changes to keep behavior of tables consistent on table view
- Added logic to render "moreRight" element if table was cut in channel view
- Updated snapshot
2019-11-30 14:27:02 -03:00
CJ
a3c7b4707e MM-19708 Adjusted display name width to 80% for landscape (#3599)
* MM-19708 Adjusted display name width to 80% for landscape

Adjusted landscape maxWidth for both the base display of the name and the adjusted width with bot/reply buttons.

* Making less complex

* MM-19708 Reduced complexity of style code

Reduced complexity of style code

* MM-19708 Updated snapshots

* MM-19708 Updated for eslint
2019-11-29 13:16:38 -03:00