Commit graph

1028 commits

Author SHA1 Message Date
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
Asaad Mahmood
19c99673f7 MM-20326 - Updating markdown table css (#3608)
* MM-20326 - Updating markdown table css

* Updating UI

* MM-20326 - Updating markdown table css
2019-11-28 03:02:40 +08:00
Miguel Alatzar
2393eb3283 [MM-20200] Fix autocomplete when editing channel header (#3595)
* Fix autocomplete when editing channel header

* Fix iOS scroll

* Use zIndex on header help text view

* No need to use innerRef

* Fix typos
2019-11-28 01:43:28 +08:00
CJ
9041e90276 MM-19834 Fixed direct mentions highlight color (#3572)
* MM-19834 Fixed direct mentions highlight color

Updated the AtMention to check if it will be highlighted before applying it's color. The highlight function was applying it's color before the AtMention color, so it was being overwritten.

* MM-19834 Start Unit Test

* MM-19834 Added Unit Tests

Added unit tests for the rendering of highlighted/non-highlighted displayname.
2019-11-27 09:08:05 +08:00
Miguel Alatzar
1d3379c32e [MM-20138] Slice markdown table (#3571)
* Preview markdown table as 5x5 max

* Make linter happy

* Determine max columns from device width

* Add snapshot test

* Use Dimensions and update unit tests

* Remove async
2019-11-20 03:27:55 +08:00
Matheus Cardoso
6c1c64f81d MM-17838 Wrap reactions when they exceed screen size (#3144)
* MM-17838 Wrap reactions when they exceed screen size

* Hide add reaction button after 40 reactions

* Hide add reaction button after 40 reactions

* Fix tests

* Fix crash when post has no reactions and convert to factory

* Create constant and use a separate prop for allowing more reactions
2019-11-18 22:10:38 -03:00
Elias Nahum
b2e657b159 MM-19991 Filtering search by channel should also show the channel name and not only its ID (#3561) 2019-11-18 23:56:01 +08:00
Elias Nahum
00874eb3ff MM-20007 Fix app crashes when previewing some gif files (#3563) 2019-11-18 10:31:29 -05:00
Valentijn Nieman
759d1ce86d MM-19337 Enable users to view archived channels (#3514)
* Archived channels dropdown in more channels modal

* Rename redux actions for archived channels

* Fixed tests and updated snapshots

* Unit test for search in more_channels

* Use translation for dropdown label

* Minimum server requirement for dropdown

* Use BottomSheet instead of Picker component

* loadPublicAndArchivedChannels action instead of separate channel get actions

* Add styles to StyleSheet

* Update mattermost-redux hash

* Update mattermost-redux hash

* Default case for switching channels dropdown

* Improve imports in more_channels.js component

* Fix typo in import

* Add padding to dropdown if landscape

* Update snapshot

* Page counter for public and archive channels

* Updated mattermost-redux commit hash

* Bottom sheet title for ios

* i18n-extract for new showArchived and showPublic strings

* Update mattermost-redux commit hash to latest master
2019-11-18 22:38:30 +08:00
Elias Nahum
17a7054ae6 MM-19993 Fix Channel spinner is black on dark theme (#3558) 2019-11-18 22:04:52 +08:00
CJ
0204722627
MM-19037 Updated Progressive Image Loader (#3414)
* MM-19037 Updated Progressive Image Loader

Set the return for the listener to return a null for hte loader images, stopping the component from thinking it had a loaded image on a failure.

Also enabled the thumbnail to make an additional attempt to load when it receives the null response.

* MM-19037 Updated Eslint

Eslint issue resolved

* MM-19037 Add Unit Tests

Added Unit tests

* empty commit
2019-11-17 23:35:44 -05:00
Kaiden Sin
a1c8a4691e [mm 15792] Fix massive app slowdown with many emojis (#3209)
* [MM-16593] [MM-17175] [MM-17164] [MM-17189] [MM-17181] Android - Upgrade to RN 0.60 (#3145)

* Upgrade to react-native 0.60

* Use @sentry/react-native

* Manually link @sentry/react-native

* Address review comments

* Jetify after install

* Call jetify from node_modules

* Run npm install react-native-fast-image --save

* Link react-native-fast-image for Android

* Link react-native-fast-image to iOS Pod

* Replace Image with FastImage in emoji.js and remove redundant caching

* Remove duplicate sentry gradle

* Feedback review

* Remove FastImage and Sentry from the Podfile
2019-11-17 23:34:39 -05:00
CJ
c7cdce01fa MM-18054 Checked for prev post comment line (#3523)
* MM-18054 Checked for prev post comment line

Added check for prev post to stop the "Commented on" line when in same thread.

* MM-18054 Added Unit Tests

Added Unit Tests

* MM-18054 Update props

Updated the prop for isFirstReply
2019-11-17 20:33:14 -08:00
Elias Nahum
c5cf784c76 MM-19600 Align Sidebar separator line between Teams and Channel view (#3559) 2019-11-17 15:02:04 -07:00
Amit Uttam
66a6e5c932 [MM-10813] Design update for Post attachments (#3511)
* [MM-10813] Design update for Post attachments

Fixes https://github.com/mattermost/mattermost-server/issues/12841

* Updated visual treatment for Post attachments (images, documents, videos)
* Grouped image attachments, expanding to fit Post width dimension
* Itemized listing of non-image attachments
* Special handling of "small" image attachments (<48 point width/height)

* Set attachment post width to max width of portrait orientation

Accounts for post display offset and extra spacing used for rendering post replies.

* Use available Post real estate: flex: 1 instead of width 100%

* Image spacing responsibility: AttachmentList -> AttachmentImage

* Fit download progress circle correctly over new attachment icons

* Layers progress circle over the icon, rather than under.
* Uses offset constant as far as possible, rather than fixed point spaces.

* Refactor props and 'more' counting for image file attachment(s)

* Implement conditional gutter between image attachments

Flex's `justifyContent: space-between` won't work in this case because of the use of `absoluteFill` and `paddingBottom: 100%` in the box placeholder for an image attachment to auto-fill *all* available flex space.

* Additional snapshots for Post file attachment scenarios

* Use new 'text' icon for text files (.txt, .rtf)

Depends on https://github.com/mattermost/mattermost-redux/pull/979

Even without the change to mattermost-redux above, text files will default to pre-existing "code" icon.

* Set file attachment icon background to theme

Default to transparent. Override if explicitly specified.

* Treat animated GIFs as images when auto-adjusting attachment width

* Fix images layout, progressive image margins, and gallery for images and videos

* fix on iPad (splitview, permanent sidebar) card types and image sizes

* Add all files back to the gallery
2019-11-15 22:41:09 -05:00
Elias Nahum
6610a51a3d Fix partially shown drawers when orientation change on iOS (#3555) 2019-11-14 20:21:17 -07:00
Christopher Speller
96b78adf45
Adding ability to disable attachment buttons and fields. (#3541)
* Adding ability to disable attachment buttons and fields.

* Revert package lock

* Use changeOpacity
2019-11-14 10:32:08 -08:00
CJ
42560ca047
MM-18934 Fix padding on image attachment border (#3466)
* MM-18934 Fix padding on image attachment border

Removed padding from image padding as it was pushing the images outside of the box.

* MM-18934 Add spacing between border and image

Added a margin to progressive image to allow for a spacing with the absolutefill

* MM-18934 Fixed eslint

Fixed eslint issues
2019-10-31 11:29:08 -04:00
Elias Nahum
c8ee8fc2dd MM-19733 fix posts getting behing post text box in thread screen (#3480)
* MM-19733 fix posts getting behing post text box in thread screen

* Update app/components/safe_area_view/safe_area_view.ios.js

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

* Update app/components/safe_area_view/safe_area_view.ios.js

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

* Small refactor

* Fix snapshot test after merge
2019-10-30 11:37:26 +01:00
Miguel Alatzar
2e12fad821 Fix failing snapshot tests (#3486) 2019-10-29 09:22:48 -04:00
Miguel Alatzar
1efb01deda
[MM-16593] Upgrade to RN 0.61.2 (#3455)
* [MM-16593] [MM-17175] [MM-17164] [MM-17189] [MM-17181] Android - Upgrade to RN 0.60 (#3145)

* Upgrade to react-native 0.60

* Use @sentry/react-native

* Manually link @sentry/react-native

* Address review comments

* Jetify after install

* Call jetify from node_modules

* [MM-17785] iOS - Upgrade to RN 0.60 (#3153)

* Upgrade to react-native 0.60

* Use @sentry/react-native

* Manually link @sentry/react-native

* Address review comments

* Jetify after install

* Call jetify from node_modules

* Get app building for iOS

* Revert react-native-image-picker upgrade

* Minor version upgrade of react-native-image-picker

* [MM-17142] Convert all string refs to callbacks (#3217)

* Replace string refs

* Fix tests

* Don't use inline functions

* Fix mattermost-redux reversion from master merge

* [MM-18336] Upload Sentry debug symbols only when SENTRY_ENABLED is true (#3227)

* Upgrade @sentry/react-native

* Run Sentry gradle tasks only when enabled

* Upgrade @sentry/react-native and remove extra Sentry build phase

* [MM-17144] Use Hermes (#3226)

* Replace string refs

* Fix tests

* Don't use inline functions

* Fix mattermost-redux reversion from master merge

* Use Hermes

* bundleCommand ram-bundle no longer needed

* Require harmony-reflect only for Android

* Fix failing test

* Path react-native's splitLayoutProps (#3337)

* [MM-18867] [MM-17186] [MM-18866] [MM-19447] [MM-18967] Upgrade to RN 0.61.2 (#3423)

* Upgrade to RN 0.61.2

* Update rn-fetch-blob commit hash

* Update react-native-keyboard-tracking-view commit hash

* Use react-native-youtube with AVPlayer fix

* Fix jest mocks

* Use updated document picker API

* Remove unnecessary linking

* Revert "MM-17759 Add code highlighting (#3072)"

This reverts commit 26b999e885.

* Fix share extension

* Revert "Revert "MM-17759 Add code highlighting (#3072)""

This reverts commit 52aca776b12dee3abe8646d0c90480f8528e86c1.

* Address PR reviews

* Rename patch to match version

* Update react-native-youtube patch

* Update dependencies

* Fix RNDocViewer reference

* Update tests and revert to redux-persist 4.10.2

* Revert "Revert "Revert "MM-17759 Add code highlighting (#3072)"""

This reverts commit 5ef383be2619b1be6167c23f128ecb4b4ad25df9.

* Android fixes after dep upgrades

* Use fresco 2.0.0

* Use mattermost forks

* Use React-Core in Mattermost.scheme instead of react

* Remove packager (#3452)

* Remove Pods from source control

* Fix unit tests

* Add new line before entering the keystore in gradle.properties

* set ios as working directory for cocoapods

* Cache cocoapods on circleCI builds

* set ios as working dir

* fix cocoapods cache key

* Unify fastlane and npm dependencies command

* Use package-lock.json checksum for npm cache

* Fix package.json and use the checksum as the cache key

* Fix package.json and use the checksum as the cache key

* changes to circleci.yaml fastlane and removing pods from git

* Fix Mattermost.xcodeproj

* Update coocoapods to 1.7.5 and fix xcode header search paths

* Update package-lock.json

* Remove unused tooltip component

* Fix incorrect ref

* Disable Hermes (#3460)

* Revert "Remove packager (#3452)"

This reverts commit b2a79e184b3242124dfdb91ae095f6ce3f4eb986.

* Disable Hermes :'(

* Update preloaded modules

* Fix packages moduleNames and modulePaths, update snapshots and update mm-redux (ts version)

* remove document picker from modulePaths

* Fix package-lock.json

* Add eslint disable rules
2019-10-28 15:04:24 -07:00
CJ
558f6ad280 MM-19308 Fixed date wrapping (#3445)
* MM-19308 Fixed date wrapping

Updated the displayName to check for the reply button and bot tag. If seen the displayName container is set from 60% to 55% to allow for the extra space.

* MM-19308 Updated logic and added tests

Updated logic based on feedback.
Added Jest/Snapshots

* MM-19308 Apply change to other sections

Applied the change to autoresponder/webhook section.
2019-10-28 18:22:50 +02:00