Commit graph

2212 commits

Author SHA1 Message Date
Elias Nahum
91ff9b7480
MM-30185 Fix bad permalink reference for saved posts screen (#4938) 2020-11-02 09:22:05 -07:00
Ashish Bhate
1914b770e5
[MM-28845]: Add storybook to mobile repo (#4870)
*Summary*
- This PR adds storybook into the mobile repo, and adds a sample story for the existing "loading" component.
- In the root of the repo run `npm run storybook`. This step automatically scans and loads all stories. A new browser tab will open with the storybook interface. You can configure the storybook host url by updating the .env file in the root of the repo. This might be required if you're using a real device. When running in an emulator, the code tries to use the default network values.
- Then run the usual `npm run android` (or `npm run ios`) and `npm run start` commands
- Storybook has been integrated into the react-native-dev-menu. When the app is running in the emulator press CTRL+M or CMD+M to open the dev menu and select "Storybook". If running on a real device, shaking the device will bring up the react-native dev menu. You can also press d in the terminal where you ran npm run start to get the app running.
- The storybook interface will open in the mobile app. The stories can be controlled either through the desktop browser storybook UI or the mobile browser storybook UI. Both will render the component on the device.

*Ticket Link*
https://mattermost.atlassian.net/browse/MM-28845

*Device Information*
This PR was tested on:
Iphone 11 emulator running ios 13.7
Pixel 3XL emulator running Android 10
2020-11-02 15:41:07 +05:30
Elias Nahum
9940aacad1
MM-29869 Replace radio button Material with Compass icons (#4928) 2020-10-29 07:38:31 -03:00
Elias Nahum
f73db6e51c
MM-29948 Display error msg when pasting files and uploads are disabled (#4927)
* MM-29948 Display error msg when pasting files and uploads are disabled

* Remove unnecessary ref and Animated.View

Co-authored-by: Miguel Alatzar <this.migbot@gmail.com>
2020-10-28 12:06:09 -03:00
Elias Nahum
2c0b67067f
MM-29252 Tapping on invalid permalink shows an error (#4926) 2020-10-28 11:54:47 -03:00
Ashish Bhate
1f6cd323f4
[MM-25349] centre failed network action component and improve responsiveness to device orientation (#4834) 2020-10-26 13:32:14 +05:30
Elias Nahum
cb4d875b13
MM-29620 Add props to post input to prevent autofill (#4916)
* MM-29620 Add props to post input to prevent autofill

* Set autoCompleteType to off instead of none
2020-10-23 15:13:59 -07:00
Elias Nahum
79d2d7b31d
MM-28968 Fix redux-persist serializer (#4918) 2020-10-23 15:12:06 -07:00
Elias Nahum
016a725732
MM-28105 do not crash when in-app notification shows (#4915)
* MM-28105 do not crash when in-app notification shows

* Use index.tsx to register the notification screen

* Fix notification e2e and some import cleanup

* Update iOS notification json

* e2e: Show the add reaction screen before receiving a notification

* Update snapshots

* Patch react-native-notifications to prevent iOS crash when opening

* Apply TM4J id

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>
2020-10-22 14:34:49 -03:00
Elias Nahum
8c8f93b589
MM-28688 Close sidebar when current channel is selected (#4897)
* MM-28688 Close sidebar when current channel is selected

* Update snapshot

* Apply suggestions from code review

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>

* Fix iOS select_channel e2e and feedback review

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>
2020-10-19 20:32:34 -07:00
Elias Nahum
aeb61cb162
MM-28336 Align hamburger menu badges (#4894)
* MM-28336 Align hamburger menu badges

* Fix Fastlane and CI artifacts for PR's

* Fastlane to post to QA build channel

* Fix plist.erb template

* Fix variable type
2020-10-19 21:48:37 -03:00
Elias Nahum
043b3a0e8e
Refactor Android Share extension (js) (#4893)
* Refactor Android Share extension (js)

* Feedback review
2020-10-19 21:39:59 -03:00
Ed Trist
cff81f168e
[MM-22366] Make user autocomplete also match on spaces (#4880)
* [MM-22366] Make user autocomplete also match on spaces

* Move template string to fullName variable

* Add Detox E2E tests for user autocomplete

* Add TM4J IDs

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>

* Add test for keyword not associated with user

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>
2020-10-19 10:15:18 -03:00
Elias Nahum
fbe2a9e575
MM-28539 Fix wrong participant count in GM info (#4887)
* Fix e2e flaky tests

* MM-28539 Fix wrong participant count in GM info

* Apply suggestions from code review

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>

* Apply suggestions from code review

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>
Co-authored-by: Saturnino Abril <saturnino.abril@gmail.com>

* Update detox/e2e/test/autocomplete/edit_post.e2e.js

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>
Co-authored-by: Saturnino Abril <saturnino.abril@gmail.com>
2020-10-19 10:13:30 -03:00
Elias Nahum
30d4aa2a3e
Build Improvements (#4884)
* Use AppGroupId from Info.plists instead of hardcoded constant

* Update script, ci & Makefile

* Update Cocoapods to 1.9.3

* Split android builds using ABI filters

* Update Fastlane deps & build scripts

* Update CI to use latests scripts

* Display app version & build number in select server screen

* Make generate scripts compatible with node < 12

* Build scripts

* add build script to package.json

* Update to use bundler 2.1.4 and CI with Xcode 12

* Fix script name for build:ios-unsigned

* Fix RN iOS scripts

* Update CI pods-dependencies step

* Add pipefail to android executor

* Update Fastlane

* Fix type in postinstall script

* update android executor and set TERM

* Fix S3 bucket name variable

* Apply suggestions from code review

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

* Fix master unit tests

* use requireActual in jest setup

* Jest setup to use react instead of React

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-10-15 22:09:36 -03:00
Miguel Alatzar
57d60649f8
[MM-22959] Use Compass icons (#4847)
* Use Compass icons

* Update ChannelInfo and AdvancedSettings

* Fix search modifiers

* Fix Autocomplete item

* Remove VectorIcon component

* Unlink react-native-vector-icons

* Revert ProgressiveImage changes

* Update Mark as Unread icon

* Apply review suggestion

* Replace extension icons

* Update video control button style

* Replace (un)flag with (un)save

* Replace (un)flag with (un)save - take 2

* Use bookmark-outline icon

Co-authored-by: Miguel Alatzar <miguel@Miguels-MacBook-Pro.local>
2020-10-15 15:34:24 -07:00
Hector
eb0f511bb7
MM-T3201 create public channel e2e test (#4867)
* MM-T3201 initial test purpose with detox

* MM-T3201 spaces and more comments

* MM_T3201 update snapshot tests to include test id

* MM-T3201 edit test ID to follow naming convention, PR fix

* MM-T3201 change comments to indicate if action or expect

* MM-T3201 add more testID to create buttons

* MM-T3201 adding trailing commas and testID

* MM-T3201 fix style

* MM-T3201 fix snaps test

* MM-T3201 fix conflicts with prior PR

* MM-T3201 using test dependent on platform to test button behaviour

* Update detox/e2e/test/channels/create_public_channel.e2e.js

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>
2020-10-15 10:13:41 -07:00
Ashish Bhate
3988e64d22
MM-29039: unit and e2e tests for #4821 (#4879)
* MM-29039: unit and e2e tests for #4821

* add e2e test

* Apply suggestions from code review

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>

* use suggested test libs

* move mock to test setup

* update snapshot for new mock

Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>
2020-10-15 09:27:28 -07:00
Andre Vasconcelos
c6c0d33f6a
MM-29046 Add unit and e2e tests for autocomplete popover (#4855)
* WIP: Adding autocomplete E2E tests

* Fixing search.e2e tests

* Updated testIDs, added 2 test suites, added comments

* Added comments to search E2E test

* Updating testIDs & reverting changes to common.js

* Updating snapshots

* Added TM4J ticket numbers

* Adding assertion commends to search E2E

* Updated testID values
2020-10-12 09:07:23 -03:00
Clare So
361349a4d4
MM-T3187 Unread channels sort at top (#4833)
* Automate MM-T3187

* Update the snapshots. Applied channel_item_display_name suggestion. Add verification for channels_list (to prove the testID works).

* Update testID. Move test to a new file under smoke test.

* Revert message_posting.e2e.js

* Applied suggestion from code review.

* Update detox/e2e/test/smoke_test/channels.e2e.js

Apply Saturnino's suggestion

Co-authored-by: Saturnino Abril <saturnino.abril@gmail.com>

Co-authored-by: Saturnino Abril <saturnino.abril@gmail.com>
2020-10-08 10:49:24 -03:00
Miguel Alatzar
ae43ba1187
Emit PASTE_FILES event only from last subscribed input (#4872) 2020-10-05 13:09:31 -07:00
Michael Kochell
a6779f4293
[MM-29275]: Remove first char of slash cmd autocomplete suggestion text, only if it is a top-level command (#4868)
* Remove first char of suggestion text, only if it is a slash

* Check if suggestion is for a top-level command
2020-10-05 12:08:57 -07:00
Jorge Vallecillo
40b650bcd9
Fix typo in 3 files: consecutive occurrences of 'the' (#4871) 2020-10-05 12:07:20 -07:00
Miguel Alatzar
a5cb92876c
[MM-29225] Linking fix (#4860)
* Catch openURL over checking canOpenURL

* Update en.json
2020-10-02 10:01:44 -07:00
Miguel Alatzar
85382e695a
[MM-29132] Update upload item styling (#4853)
* Update upload item styling

* Use font size 9
2020-10-01 11:19:30 -07:00
Andre Vasconcelos
59045e3bb0
MM-22968 Restyle mobile autocomplete (#4531)
* WIP: slash suggestion autocomplete

* WIP: patched styles a bit

* WIP: Adding styles

* Adding active state to autocomplete items

* Fixing style for channel mention item

* Fixing bugs + styling issues for Android

* Updating snapshot

* Fixing autocomplete to render on top of post draft

- Misc style fixes

* Renaming props, patching slash suggestion icon

* Fixing tests and lint errors

* Resolving post-merge issue with slash commands

* Fixing android positioning for autocomplete

* Fixing autocomplete not scrolling in edit_channel_info

* WIP: Fixing things according to UX Review

* UX Fixes to autocomplete

* Updating snapshots

* Updating snapshots, replacing slash-command icons

* Fixing android scrolling and positioning issues

* Fixing issues with date_suggestion not rendering

* Making use of the "ShowFullName" config in at_mention_item

* Removing top border on first autocomplete section

* Allowing autocomplete to be smaller than its maxWidth

* Fixing slash_suggestion padding

* removing "componentWillReceiveProps" from date_suggestion

* Changing edit_channel_info autocomplete offset

* Replacing toUpperCase() with textTransform: uppercase

* Fixing odd border issues + prop validation warning

* Restore section header background & add paddingBottom

* Patching up padding on channel mentions

- Reverting previous incorrect padding adjustments

* Removing inline 'completeSuggestion' function

* Removing brackets from style prop
2020-09-25 11:26:48 -07:00
Ashish Bhate
99f018faac
[MM-28706] revert ordering change for in: autosuggest search (#4818)
Summary:
Revert ordering change for in: auto-suggest search after user feedback. The ordering now is Public Channels, Private Channels, and finally DMs and GMs.
This PR only fixes ordering. Further search improvements are planned in https://mattermost.atlassian.net/browse/MM-26805

Ticket Link:
https://mattermost.atlassian.net/browse/MM-28706
The Jira ticket above reverts the changes in https://mattermost.atlassian.net/browse/MM-27540 (Parent: https://mattermost.atlassian.net/browse/MM-15477) which was implemented in #4704
2020-09-25 13:43:19 +05:30
Ashish Bhate
b6fbcf2e7c
[MM-23909] better error message if url is empty (#4821) 2020-09-24 20:22:28 -07:00
Ashish Bhate
7647367bcf
[MM-28100] fix reachability check and ensure channel membership before getting posts (#4810)
* [MM-28100] Reload state for newly fetched channels before checking reachability

* join selected channel if not already a member

* fix destructuring

* Revert joining channels in handleSelectChannel

* refactor channel joining

* use different server endpoint to work around requiring a server update
2020-09-24 11:59:46 -07:00
Miguel Alatzar
72313291a1
[MM-27615] Update RequiredServer (#4830)
* Update RequiredServer

* Take 2

* Update patch version

* Take 3

* Update version

* Update version
2020-09-24 11:02:13 -07:00
Miguel Alatzar
1d94fb6e16
Exclude NotificationPreference for DMs (#4831) 2020-09-24 10:56:35 -07:00
Miguel Alatzar
8a5c58b39a
[MM-28973] Prevent destructuring of undefined (#4832)
* Prevent destructuring of undefined

* Do the same for thread drafts
2020-09-24 10:50:42 -07:00
Miguel Alatzar
de1f38b839
Fix getPostThread import (#4819) 2020-09-18 20:53:38 -03:00
Soo Hwan Kim
e7302fa6cc
MM-11302 Add accessibility to channel header buttons (#4768)
* Add accessibility to channel header - search & more options buttons

* Add unit tests for channel_nav_bar accessibility

* Update snapshot for settings_drawer_button.js
2020-09-16 22:46:43 -07:00
Elisabeth Kulzer
ee26e051c6
Revert bulgarian. (#4814) 2020-09-16 16:44:14 +02:00
Elisabeth Kulzer
2d73b16cbe
[Weblate] Fix empty/unchanged translation strings in master. Add Bulgarian language. (#4759)
* Translated using Weblate (Russian)

Currently translated at 100.0% (633 of 633 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ru/

* Translated using Weblate (Japanese)

Currently translated at 100.0% (633 of 633 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ja/

* Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (633 of 633 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/pt_BR/

* Translated using Weblate (Italian)

Currently translated at 100.0% (633 of 633 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/it/

* Translated using Weblate (Turkish)

Currently translated at 100.0% (633 of 633 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/tr/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (635 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/nl/

Translated using Weblate (Chinese (Traditional))

Currently translated at 99.3% (631 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/zh_Hant/

Translated using Weblate (Chinese (Simplified))

Currently translated at 99.3% (631 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/zh_Hans/

Translated using Weblate (Ukrainian)

Currently translated at 97.9% (622 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/uk/

Translated using Weblate (Turkish)

Currently translated at 99.8% (634 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/tr/

Translated using Weblate (Russian)

Currently translated at 99.8% (634 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ru/

Translated using Weblate (Romanian)

Currently translated at 99.3% (631 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ro/

Translated using Weblate (Portuguese (Brazil))

Currently translated at 99.8% (634 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/pt_BR/

Translated using Weblate (Polish)

Currently translated at 97.7% (621 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/pl/

Translated using Weblate (Dutch)

Currently translated at 100.0% (635 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/nl/

Translated using Weblate (Korean)

Currently translated at 99.3% (631 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ko/

Translated using Weblate (Japanese)

Currently translated at 99.8% (634 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ja/

Translated using Weblate (Italian)

Currently translated at 99.8% (634 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/it/

Translated using Weblate (French)

Currently translated at 97.7% (621 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/fr/

Translated using Weblate (Spanish)

Currently translated at 99.5% (632 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/es/

Translated using Weblate (German)

Currently translated at 98.1% (623 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/de/

* Translated using Weblate (Dutch)

Currently translated at 100.0% (635 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/nl/

* Translated using Weblate (Korean)

Currently translated at 70.0% (445 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ko/

Translated using Weblate (Ukrainian)

Currently translated at 97.3% (618 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/uk/

Translated using Weblate (German)

Currently translated at 97.6% (620 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/de/

Translated using Weblate (French)

Currently translated at 96.6% (614 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/fr/

* Translated using Weblate (French)

Currently translated at 97.0% (616 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/fr/

Translated using Weblate (German)

Currently translated at 98.1% (623 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/de/

Translated using Weblate (Ukrainian)

Currently translated at 97.4% (619 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/uk/

Translated using Weblate (German)

Currently translated at 97.6% (620 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/de/

Translated using Weblate (German)

Currently translated at 97.6% (620 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/de/

Translated using Weblate (French)

Currently translated at 96.6% (614 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/fr/

* Translated using Weblate (Romanian)

Currently translated at 100.0% (635 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ro/

* Translated using Weblate (Russian)

Currently translated at 100.0% (635 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ru/

* Translated using Weblate (Ukrainian)

Currently translated at 88.8% (564 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/uk/

Translated using Weblate (Polish)

Currently translated at 95.7% (608 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/pl/

Translated using Weblate (French)

Currently translated at 96.5% (613 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/fr/

Translated using Weblate (German)

Currently translated at 97.6% (620 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/de/

* Translated using Weblate (Korean)

Currently translated at 70.0% (445 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ko/

* Added translation using Weblate (Bulgarian)

* Translated using Weblate (Bulgarian)

Currently translated at 0.0% (0 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/bg/

* Translated using Weblate (German)

Currently translated at 98.1% (623 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/de/

* Translated using Weblate (Korean)

Currently translated at 70.2% (446 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/ko/

* Translated using Weblate (German)

Currently translated at 98.5% (626 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/de/

* Translated using Weblate (Spanish)

Currently translated at 100.0% (635 of 635 strings)

Translation: mattermost-languages-shipped/mattermost-mobile_master
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile_master/es/

* Clean empty translations.

* Add bg language.

Co-authored-by: Alexey Napalkov <flynbit@gmail.com>
Co-authored-by: kaakaa <stooner.hoe@gmail.com>
Co-authored-by: rodrigocorsi <rodrigocorsi@gmail.com>
Co-authored-by: Zack-83 <giacomo.lanza@ptb.de>
Co-authored-by: Kaya Zeren <kayazeren@gmail.com>
Co-authored-by: Anonymous <noreply@weblate.org>
Co-authored-by: Tom De Moor <tom@controlaltdieliet.be>
Co-authored-by: Elisabeth Kulzer <elisabeth.kulzer@mattermost.com>
Co-authored-by: Mattermost Weblate Notify Bot <dev-ops@mattermost.com>
Co-authored-by: Viorel-Cosmin Miron <cosmin@uhlhost.net>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michal Čihař <michal@cihar.com>
Co-authored-by: Nikolai Zahariev <nikolaiz@yahoo.com>
Co-authored-by: Elias  Nahum <elias@mattermost.com>
2020-09-16 04:39:18 -03:00
Saturnino Abril
6e03ba8351
reintroduce @testing-library/react-native now with v7 (#4766) 2020-09-15 09:24:54 -07:00
Elias Nahum
52886e7631
MM-28602 Fix announcement banner crash if it includes a hashtag (#4808)
* MM-28602 Fix announcement banner with hashtag crash

* Fix expanded announcement banner layout

* Fix announcement banner animation
2020-09-15 10:03:40 -03:00
Jyoti Patel
b6920770f1
[GH-15185][MM-5973] Add Channel Settings > Notification Preferences. (#4730)
* Add Channel Settings > Notification Preferences.

Fixes #15185

* Make newly added strings mmjstool compatible.

mmjstool seems to be looking for specific patterns in AST like called with
`formatMessage` and `t()` [1]. Looks like `t()` is just for that purpose.

[1]: a83581379d/mmjstool/src/i18n_extract.js (L97):L100

* Pass only required props to NotificationPreference & ChannelNotificationPreference.

* Fix style issues/nits from code review.

* Use radio button for channel notifications on android, and checkmarks on iOS.

Also changes style according to figma spec.

* Fix missing prop error.

For some reason, `npm run fix` didn't catch this. But `npm run check` did during CircleCI.

* Fix missing i18n strings by passing strings through `t()`.

mmjstool really needs to be smarter to understand these types of cases.

* Address comments from UX code review.

* Remove remnant from merge conflict.

* Fix UI in iOS landscape mode.

* Use SafeArea view for ios landscape view

* Use paddingHorizontal for SafeArea view for iOS landscape mode
2020-09-12 00:53:29 -03:00
Elias Nahum
102445db66
Fix iOS AppSetting timeout (#4801) 2020-09-10 16:50:44 -03:00
Elias Nahum
bab1cc0601
AppConfig setting to control the default request timeout (#4797)
* AppConfig setting to control the default request timeout

* Set default timeout to 10s
2020-09-10 15:12:00 -03:00
Elias Nahum
96bf1db243
MM-28295 Do not remove the Channel screen from the stack tracking (#4793)
* Do not remove the Channel screen from the stack tracking

* Reset stack for select server & when no teams are present
2020-09-09 13:15:09 -03:00
Elias Nahum
b55e88d0fe
Save draft when post input unmounts (#4785) 2020-09-09 12:03:07 -03:00
Farhan Munshi
b8a002683f
MM-27132 Fix groups not actually being highlighted for self on mobile (#4776) 2020-09-09 01:20:41 -03:00
Elias Nahum
05f264554e
MM-28450 Fix crash when posting at-mention that does not belong to the channel (#4778) 2020-09-08 16:52:04 -03:00
Elias Nahum
e40d0e4c8a
MM-28295 Android fix opening sidebar after closing setting screen (#4777) 2020-09-08 16:34:30 -03:00
Elias Nahum
bd7afae6f0
Always load the thread & modify thread selector (#4771)
* Always load the thread & modify thread selector

* review feedback
2020-09-08 13:09:46 -03:00
Elias Nahum
c97b2be927
MM-28296 Fix Android @mention render (#4764)
* MM-28296 Fix Android @mention render

* Simplify mention style

* Update @mention snapshot

* @mention fix lint

* Address QA feedback

* QA Review
2020-09-08 13:09:34 -03:00
Elias Nahum
4ecccbbb16
MM-28307 Fix display name in convert channel to private alert (#4767) 2020-09-08 12:59:51 -03:00
Jyoti Patel
c9c22583d8
[GH-15305][MM-27677] Improve empty state for Recent Mentions. (#4715)
* Improve empty state for Recent Mentions.

* Change backgroud color of icon.

* Improve empty states for flagged and pinned posts.

* Update pinned posts' test snapshot.

* Change NoResult style as per figma specs.

* Change NoResults icons according to UX specs.

* Change style according to UX feedback.
2020-09-03 22:21:36 -04:00
Farhan Munshi
87802031f8
[MM-27274] Add and enforce convert public channel to private permission (#4756)
* Update permission check for convert public channel to private using new permission

* Better variable name
2020-09-03 13:41:25 -04:00
Miguel Alatzar
4f4be1b319
[MM-28245] Handle upload files only for top screen (#4761)
* Handle upload files only for top screen

* Return early in handlePasteFiles too
2020-09-01 12:36:51 -07:00
Elias Nahum
dce5675f05
Add word boundaries for (all | channel | here) (#4754)
* Add word boundaries for (all | channel | here)

* do not include underscore in channel wide mention highlight

* Regex suggested in code review

Co-authored-by: Harrison Healey <harrisonmhealey@gmail.com>

* Restyle at_mention suffix

Co-authored-by: Harrison Healey <harrisonmhealey@gmail.com>
2020-09-01 10:13:49 -07:00
Ashish Bhate
0210cc4761
[MM-15477][MM-27540][MM-27541]: fix search inconsistencies using in:@ / in: (#4704)
* [MM-15477] reorder search suggest results

* allow searching dms and gms with 'in:@'

* fix sort order for private before public

* faster than regex

* remove server minimum version prop and checks
2020-09-01 10:08:17 -07:00
Saturnino Abril
f05faaa949
E2E: Initial Detox setup for Mobile UI automation (#4535)
* initial Detox setup for mobile UI automation

* fix iOS allow permission on opening the app, add npm script to root folder, fix test when using longer site URL and add detox dependency to root for android build dependency

* remove detox proguardFile

* update packages and emulator

* change folder build on local and CI

* add test to post a message, ability to have test in isolation, server API commands, server config, dependency updates and update folder structure

* update snapshot

* update detox and do clean up

* update dependencies
2020-08-29 07:18:41 +08:00
Elias Nahum
1d0fc0510c
MM-25684 Highlight at-mention followed by a period (#4733)
* MM-25684 Highlight at-mention followed by a period

* Refactor at_mention to not highlight the period

* Do not add a link for invalid mentions

* Suggested review

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

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-08-28 12:59:01 -04:00
Elias Nahum
514ba57a8e
Show arrows in calendar (#4745)
* Show arrows in calendar

* Set calendar arrow size platform specific
2020-08-28 09:08:10 -07:00
Miguel Alatzar
288caf5e48
Store value before resetting text input (#4744) 2020-08-28 08:07:13 -04:00
Elias Nahum
7a0b5f982e
SSO: Rebuild the server url without query string and/or hash (#4731) 2020-08-27 08:36:57 -04:00
Farhan Munshi
c21b61bef2
[MM-27132] Handle group mention keys for group synced channels and teams (#4726)
* Handle group synced channel highlighting better

* Add tests

* Dont check if teamRoleFound if no teamId given for haveIChannelPermission

* Pass team id for channel mentions and group mentions checks

* Actually make a selector

* Check for falsey teamId instead of undefined

* Remove true &&

* Iterate over object values instead of for in
2020-08-26 10:00:32 -07:00
Miguel Alatzar
ffb5213b3a
Apply flex style only to empty results (#4728) 2020-08-25 15:31:47 -07:00
Elias Nahum
183eec0fad
Upgrade depdendencies (#4725)
* @react-navigation/*
* react-native-navigation
* react-native-calendars
* react-native-gesture-handler
* react-native-reanimated
* react-native-safe-area-context
* react-native-screens
* react-native-video
2020-08-25 15:34:18 -04:00
Hossein Ahmadian-Yazdi
2800de0922
oauth should not be able to edit full name (#4713) 2020-08-21 15:04:54 -04:00
Elias Nahum
ea4e21de93
Fix soft crash for edge emoji formatting (#4705) 2020-08-20 14:48:48 -04:00
Elias Nahum
3fce45f308
Upgrade react-native-fast-image, react-native-localize, react-native-vector-icons, react-native-video & dev dependencies (#4698) 2020-08-20 08:13:35 -07:00
Elias Nahum
c095d45330
MM-25832 Prevent permalink view from loading posts multiple times (#4696)
* Prevent permalink view from loading posts multiple times

* Android unhandled exception and initial loader indicator

* Fix permalink tests
2020-08-19 19:19:51 -04:00
Elias Nahum
55cfce9b89
MM-26329 Fix Channel info guests info in landscape (#4692)
* MM-26329 Fix Channel info guests info in landscape

* Channnel info refactor

* Rename canEditChannel to canEdit in connected component
2020-08-19 09:56:41 -04:00
Elias Nahum
033cdfc459
Allow swipe to close the sidebar after search is cancelled (#4688) 2020-08-18 14:00:00 -04:00
Martin Kraft
7f7e7e7554
MM-26436: Allows others' posts to be delete with just 'delete_others_posts' permission. (#4660) 2020-08-18 09:42:24 -04:00
Tsilavina Razafinirina
1bba361f89
MM-15323 autofill server Url when opening the app from deeplink (#10788) (#3852)
* MM-15323 autofill server Url when opening the app from deeplink (#10788)

* MM-15323 move autofill logic into select-server screen

* MM-15323 removes scheme on deeplink on select-server

* MM-15323 fix serverURL wrong prop name

* MM-15323: use getDerivedStateFromProps for setting state.url

* MM-15323 revert serverUrl and fix unchangeable deeplink

* MM-15323 fix props.serverUrl

* MM-15323 move props.serverUrl into getDerivedStateFromProps

* MM-15323 fix iOS deeplink issue

Co-authored-by: mattermod <mattermod@users.noreply.github.com>
2020-08-17 20:57:16 -04:00
Adrian Brown
169ed80243
[MM-22948] - Improve unread badge UI on the hamburger menu and team icons (#4635)
* updates to bage UI

* fixed spacing

* updated tests with npm test command

* fixed badge theme colors

* updated badge width to deal with larger mention counts

* updated tests

* fixed sizing issue

* fixed sizing issue & moved maxWidth to Badge layout

* added constants for badge maxWidth & adjusted badge position

* adjusted top position for badge on burger menu

* fixed last issue for max mentions positioning on burger menu badge
2020-08-17 12:46:49 -04:00
Elias Nahum
d1d7b7f9d6
MM-27711 Play YouTube video using expanded link (#4666) 2020-08-13 11:22:37 -07:00
Andre Vasconcelos
c57c2f4245
MM-23739 Empty search state for emoji picker (#4641)
* Returning a "no results for" default message

* Added styles & i18n text

* Updating icon to Octicons

* Replacing conditional render with ListEmptyComponent

* Running mmjstool sort

* Changing fontWeight, center layout, icon style
2020-08-13 09:11:49 -04:00
Rahim Rahman
18d1dcbc09
[MM-18765] remove lifecycle methods from settings (#4596) 2020-08-12 11:10:48 -04:00
Elias Nahum
b001c50fdc
MM-27607 Fix filter undefined when searching profiles (#4657) 2020-08-11 12:54:45 -04:00
Miguel Alatzar
304e3674c8
[MM-27139] Use file preview URL for images in post (#4656)
* Use file preview URL for images in post

* Use getFilePreviewUrl for gallery as well

* But use getFileUrl for GIFs in gallery
2020-08-11 12:34:38 -04:00
Kyle Watson
8b9ef0e849
[MM-12526] removed from channel alert (#4633)
* GH-13222: Shows an alert when you are removed from the channel that you are currently viewing

* GH-13222: Removed channel alert improved text

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2020-08-10 20:34:04 -07:00
Miguel Alatzar
6305fd597d
Check for undefined channel (#4650) 2020-08-07 10:28:19 -04:00
Farhan Munshi
581e6ba12a
Ignore pagination when loading group data (#4644) 2020-08-07 09:31:26 -04:00
Elias Nahum
48f1875cf1
MM-23090 MM-26078 && MM-26876 Refactor post draft component (#4621)
* Refactor post draft component
Re-styled ReadOnly channels
Remove filename from upload error

* Update canSubmit based on file attachment changes

* Fix error message for max file size

* Fix select autocomplete values on iOS

* Style readonly and refactor accessory view for iOS

* Make PostDraft scrollViewNativeID prop not required

* Update ReadOnly to have a background with 0.40 opacity

* Update max file size error message

* Fix shift+enter with HW keyboard
2020-08-06 19:39:25 -04:00
Miguel Alatzar
1084d38ecb
[MM-27483] Fetch channel and member when loading from push notification (#4648)
* Fetch channel and member

* Uncancel if unreadCount increased from 0
2020-08-06 14:18:50 -07:00
Elias Nahum
4c8e2e8ea4
Fix edit post input text selection (#4647) 2020-08-06 13:46:23 -07:00
Elias Nahum
bba139726d
Cleanup fetch error & add details to sso (#4642) 2020-08-04 12:16:53 -04:00
Miguel Alatzar
1324bfd0bf
[MM-27294] Allow returning to Channel screen without resetting the navigation root (#4619)
* Add popDismissToChannel

* Use popToRoot + dismissAllModals

* Just dismissAllModals and popToRoot

* Revert unnecessary changes

* Close permalink on popToRoot

* Emit after dismissAllModals and popToRoot
2020-07-30 12:50:37 -07:00
Shota Gvinepadze
9f98b943e7
Fix autocomplete after cache delete (#4623) 2020-07-30 14:05:14 -04:00
Miguel Alatzar
d6a02a7c29
Define registerTypingAnimation in Thread screen (#4617) 2020-07-27 16:38:31 -07:00
Elias Nahum
95720c358d
Show the unsupported alert if server version is available (#4608)
* Show the unsupported alert if server version is available

* Check for supported server version when channel screen updates
2020-07-27 11:03:57 -04:00
Miguel Alatzar
7c827fe319
[MM-26489] No need to decode file URI on Android (#4610)
* Encode lone % chars

* No need to decode on Android
2020-07-24 11:42:00 -07:00
Elias Nahum
baca7bcf87
Fix the display the error message if ssoLogin action fails (#4609)
* Fix the display the error message if ssoLogin action fails

* Fix typo

* Remove token parameter
2020-07-23 16:42:43 -04:00
Elias Nahum
ac2a3a143a
MM-24895 Load team member and roles in the WebSocket event (#4603)
* Load team member and roles in the WebSocket event

* Split WebSocket actions and events into multiple files
2020-07-23 10:19:54 -07:00
Shota Gvinepadze
5465133c87
Add analytics to the command autocomplete (#4597)
* Add analytics to the command autocomplete

* Refactor analytics

* Refactor reset method
2020-07-23 19:57:42 +04:00
Miguel Alatzar
a5319eb74c
Don't set state.inputValue in constructor (#4606) 2020-07-23 08:54:58 -07:00
Elias Nahum
e7e0ca0d5c
Update camera-roll dependency (#4595) 2020-07-21 10:08:07 -04:00
Elias Nahum
a99e938e9c
MM-26817 Upgrade to RN 0.63 (#4566)
* Upgrade to RN 0.63

* Bump to RN 0.63.1

* Fix RN patch

* Use JSC Intl version

* Update android/app/build.gradle

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

* Fix Android external storage permission

* Fix emoji imageUrl when no server url is present

* Patch react-native-image-picker

* Allow to post attachment only messages

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-07-20 18:08:11 -04:00
Elias Nahum
26fa5a5e8f
Allow to post attachment only messages (#4590) 2020-07-20 17:53:54 -04:00
Shota Gvinepadze
c1eff885e7
[MM-25749] Implement non-cached autocomplete for mobile (#4579)
* Implement non-cached autocomplete for mobile

* Add partial caching support

* Fix whitespace

* Implement suggestion fetching using actions
2020-07-20 16:32:47 -04:00
Hossein Ahmadian-Yazdi
2840a42a00
[MM-23160][MM-24633][MM-24697] Highlight Group Names 2 (#4551)
* Initial Commit for Group Highlights

* Fix some stuff

* Get my groups

* update channel.js

* Address PR comments

* Address PR comments

* Update app/actions/views/channel.js

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

* update selector stuff

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-07-20 10:19:18 -04:00
Alex Dovenmuehle
5e221252a2
Rename actual_user_id to user_actual_id to be more consistent with the rest of MM telemetry. (#4520)
Co-authored-by: Alex Dovenmuehle <alex.dovenmuehle@mattermost.com>
2020-07-17 14:32:27 -04:00
Alex Dovenmuehle
ce283b546d
We can allow events to RudderStack since we don't have any rate limit restrictions. (#4521)
Co-authored-by: Alex Dovenmuehle <alex.dovenmuehle@mattermost.com>
2020-07-17 14:32:05 -04:00
Hossein Ahmadian-Yazdi
22d77689f7
[MM 23785] Show confirmation dialogue when mention groups 2 (#4548)
* Show Confirmation Dialogue WIP First Commit

Show Confirmation Dialogue WIP Second Commit

refactoring according to comments

refactor code according to comments

Fix linting problems

add i18n strings

Update regex pattern

add test and make fixes

fix message not submitting

Fix linting

fix index.js

fix conflicts

address PR comments

address PR comments

single dispatch

Address PR comments

add test

* Show Confirmation Dialogue WIP First Commit

Show Confirmation Dialogue WIP Second Commit

refactoring according to comments

refactor code according to comments

Fix linting problems

add i18n strings

Update regex pattern

add test and make fixes

fix message not submitting

Fix linting

fix index.js

fix conflicts

address PR comments

address PR comments

single dispatch

Address PR comments

add test

* make some changes

* fix test failures

* Address PR comments

* Update app/mm-redux/types/channels.ts

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

* Update app/mm-redux/selectors/entities/channels.ts

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

* Update app/mm-redux/selectors/entities/channels.test.js

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

* Update app/constants/autocomplete.js

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

* Address PR comments

* make group mention mapping its own function

* Address PR comments

* Update app/components/post_draft/post_draft.js

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

* Merge branch 'master' of https://github.com/mattermost/mattermost-mobile into MM-23785-ShowConfirmationDialogue-2

* Merge branch 'master' into MM-23785-ShowConfirmationDialogue-2

* Address MM-26987

* Retrieve group information on mount  RN: Group Mention confirmation prompt not shown on default channel load

* Update Regex to fix MM-26976

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-07-17 12:15:01 -04:00
Miguel Alatzar
7c41c83196
[MM-26855] Ensure More Messages button works as expected when app is launched from a push notification (#4569)
* Fix more messages button with push notif

* Don't cancel in showMoreText
2020-07-16 11:25:40 -04:00
Miguel Alatzar
81dd01ba2c
[MM-21155] Fix typing animations (#4373)
* Fix typing animations

* Remove animations on unmount

* Remove obsolete rn-placeholder mocks

* Apply thread animation for Android

* No need to call scrollToInitialIndexIfNeeded

* Fix snapshot test

* Add context
2020-07-15 14:28:02 -07:00
Elias Nahum
cf8a67a7a5
MM-26946 Handle invalid YouTube links (#4571)
* Handle invalid YouTube links

* Fallback to default thumbnail
2020-07-15 15:20:47 -04:00
Elias Nahum
0ad62ced40
MM-26744 in-prompt for end users if server is unsupported (#4565) 2020-07-15 11:17:55 -04:00
Elias Nahum
7db9c76a3f
MM-22029 clear the text input as soon as possible (#4536)
* MM-22029 clear the text input as soon as possible

* Apply suggestions from code review

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

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-07-14 18:58:11 -04:00
Elias Nahum
934dbfde17
Fix unhandled exception when current user is not defined (#4567) 2020-07-14 08:43:40 -07:00
shred86
c2be31c644
MM-26827 Add ShowFullName property (#4106)
* Add ShowFullName property

* Add ShowFullName property to first and last name
2020-07-14 10:04:21 -04:00
Elias Nahum
f79baea68f
MM-26749 Fix race condition when open from PN (#4556)
* MM-26749 Fix race condition when open from PN

* setStartFromNotification earlier

* Fix Android race condition when closing the app with the back button
2020-07-10 16:24:09 -04:00
Miguel Alatzar
f79f9dc697
[MM-23761] [MM-25766] Add "More Messages" button (#4526)
* Add more messages button

* Update existing tests

* Various fixes:

* Use viewAreaCoveragePercentThreshold over itemVisiblePercentThreshold
* Remove currentUserId check when adding New Message line to postIds and
  instead update the channel last viewed time when an own post is received

* Update snapshots

* Add showMoreMessagesButton prop and default to false

* Android fixes

* Add tests

* Localize more messages text

* Use FormattedText

* i18 extract

* Style fixes

* Account for network indicator

* Fix for failing tests

* Various fixes:

* Set the unreadMessageCount when POST_UNREAD_SUCCESS is dispatched
  with a positive deltaMsgs
* Hide the more messages button when the unread count decreases or
  when the new message line is removed shortly after loading the
  channel

* No need for POST_UNREAD_SUCCESS if we manually call onViewableItemsChanged

* Reset unread count if current channel on channel mount

* Animate text opacity

* Compare indeces to determine when scrolling has ended

* Fix opacity animation trigger

* try with scrolling to the last rendered item

* Add onScrollEndIndex

* Improve animations

* Don't track moreCount in state

* Use moreText over prevNewMessageLineIndex to determine firstPage

* Update intl message format and call cancel in componentDidUpdate when needed

* Fix intl format

* Remove opacity animation and countText

* Fix pressed not being reset

* No need to separate intl func

* Return after resetting

* Fix accidental removal of setState call

* Reset pressed when newLineMessageIndex changes

* Use default windowSize and lower POST_CHUNK_SIZE and delays

* Queue a cancel timer that gets cleared only when the newMessageLineIndex changes

* Define uncancel func

* Increase cancelTimer delay

* Subtract read posts from unread count and account for retry indicator

* Add retry bar indicator tests

* Use props.unreadCount

* Fix handling of newMessageLineIndex change

* Fix handling of newMessageLineIndex change take 2

* Fix handling of newMessageLineIndex change take 3

* Use 'native' TouchableWithFeedback with dark overlay

* Fix handling of manually unread

* Update chunk and window sizes

* Fix hsl

* Update text only when newMessageLineIndex/endIndex is reached

* Don't delay cancel if when no more unreads

* Fixes for when opening the app

* No need to process viewableItems when unreadCount is 0

* Remove line

* Don't show if unreadCount is 0

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-07-09 13:30:30 -07:00
Andre Vasconcelos
aa9e074a4c
MM-25956 Use new mobile modal style on Other User Profile (#4507)
* Changing other user profiles to be shown as modals

- Removed unnecessary props
- Updated user_profile unit tests
- Removed useless Platform.select call on channel_base

* Changed at_mention, channel_intro, and reaction_row profiles to modal
2020-07-09 08:34:42 +09:00
sowmiyamuthuraman
e754e861a2
Show toast when pressing back button on channel screen (#4384)
* MM-24328: Show Press again to exit toast when back button on Channel screeen is pressed.

* Fix feedbacks.

* Handle back press only for the Channel screen.

* MM-24328: Add a back press handler to share activity.

* Update the toast message as Press back again to exit.
2020-07-08 18:01:13 -04:00
Elias Nahum
8816953e43
MM-26699 Track open modals (#4539) 2020-07-08 10:43:20 -07:00
Hossein Ahmadian-Yazdi
b6eb3b9349
[MM-23158] Group Mentions & Invites - Display group mentions in suggestions list in the main channel textbox (#4118)
* groups in group mention

* fix sorting issues

* address PR comments

* fix tests

* Update groups.ts

* fix nock

* fix translations

* Adding test

* fix linting

* update redux functions

* Add license check

* adddress PR comments

* remove lodash import

* fix lint problems

* revert package.json changes

* Address PR comments

* address PR comments

* fix naming

* address PR comments

* address PR comments

* Address comments found in second PR

* getAllGroups updated

* address PR comments

* Update app/mm-redux/utils/group_utils.ts

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

* revert change

* remove unneeded actions

* Use correct server version

* MM-26631: Fix order of group displaying

* MM-26633: Fix group mentions not showing up in group constrained team

* MM-26636: Group mentions not updating when role updates

* MM-26637: Group name not updating right away

* Address PR comments

* TRY AND catch

* address PR comments

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-07-08 07:31:58 -04:00
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
Jason Blais
bf3fbbc363
Fix typo in telemetry entry (#4134)
See contribution that fixes this in the Redux repo: https://github.com/mattermost/mattermost-redux/pull/1116
2020-04-20 09:37:11 +08:00
Miguel Alatzar
cd8c627dc3
Fix headers when preloading images (#4165) 2020-04-16 18:43:51 -07:00
Elias Nahum
0c7a2c6fa1
Correctly load file attachment images (#4160)
* Correctly load file attachment images

* Remove cache control from gallery
2020-04-16 16:24:28 -04:00
Elias Nahum
fda4948c8c
MM-23848 consolidate store, upgrade mmkv and fix logout (#4145)
* MM-23848 consolidate store, upgrade mmkv and fix logout

* Feedback review

* Add store.ts to modulesPath
2020-04-16 09:02:47 -04:00
Elias Nahum
aaa571db32
Upgrade to RN 0.62.2 (#4093)
* Upgrade to RN 0.62.0

* Update packager module paths

* Fix Android PasteableInput

* Fix regression on Android share extension credentials needed

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

* Reject commit if TSC check fails and Fix small eslint issues automatically

* Use super.getExportedCustomBubblingEventTypeConstants in RNPasteableTextInputManager

* Update to rn 0.62.2

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-04-14 16:39:51 -04:00
Elias Nahum
4ad4b3b103
Validate previous app version (#4151)
* Validate previous app version

* Update snapshot and fix typo in constant
2020-04-14 13:22:43 -04:00
Miguel Alatzar
8b2d9a10f5
Ensure postProps is not null/undefined (#4150) 2020-04-14 11:38:34 -04:00
Miguel Alatzar
22a13cfee0
[MM-24026] Set back button color (#4138)
* Set back button color

* Update unit test
2020-04-13 10:44:44 -07:00
Elias Nahum
6667962e1f
MM-24093 Fix crash when system message does not contain a username in post props (#4143) 2020-04-13 11:44:22 -04:00
Elias Nahum
f6defc8cc6
Fix isDateLine function to check for null and undefined (#4142)
* Fix isDateLine function to check for null and undefined

* use optional chaining instead

Co-Authored-By: Amit Uttam <changingrainbows@gmail.com>

Co-authored-by: Amit Uttam <changingrainbows@gmail.com>
2020-04-10 20:19:43 -04:00
Miguel Alatzar
514f6a68d7
Don't subtract from badge count (#4135) 2020-04-09 11:18:54 -07:00
Elias Nahum
1486a55aeb
MM-22041 Fix Keyboard flashing when entering keyboards screen (#4132)
* MM-22041 Fix Keyboard flashing when entering keyboards screen

* Update snapshots
2020-04-09 06:10:46 -04:00
Elias Nahum
9d0209fce6
MM-22043 Render Channel purpose message without markdown (#4131) 2020-04-09 06:08:15 -04:00
Elias Nahum
c64581ef16
MM-22683 use webhook override_username instead of webhook creator on commented on post header (#4130) 2020-04-09 06:07:46 -04:00
Elias Nahum
be6b1ff83f
MM-22198 Don't show commented on for post on the same thread after a date separator (#4129) 2020-04-09 06:07:14 -04:00
shred86
c07e8fb8d3
[MM-23584][MM-23675] Add first and last name to user profile view & language support (#4092)
* Add name to profile view

* Add first and last name fields

* Styling update

* Update snapshot

* Add language support and change ordering
2020-04-09 06:05:01 -04:00
Miguel Alatzar
7afa9aed01
[MM-23698] [MM-19559] Remove redux-offline and updated redux-persist (#4120)
* Remove redux-offline and configure redux-persist

* Fix typo

* Fix configure store

* Upgrade to redux-persist 6.0.0

* Add migration from redux-persist v4 to v6

* Replace AsyncStorage with MMKVStorage to boost storage speed

* Mock RNFastStorage

* Fix reactions test

* Fix clearing the store on logout

* Remove the need for LOGOUT_SUCCESS

* No need to pass persistConfig to middlewares()

* Remove unused imports

* Export connection

Accidentally removed this export.

* Add batch action name

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

* Add batch action name

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

* Add batch action name

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

* Add batch action name

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

* Fix delete post

* Fix leave channel

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-04-08 13:44:54 -07:00
Miguel Alatzar
8bb43ca4c2
[MM-22632] Set vertical padding for SlashSuggestionItemi (#4125)
* Set minHeight

* Replace minHeight with paddingVertical
2020-04-08 11:08:59 -04:00
Miguel Alatzar
7bee5c368a
Always show expand button (#4121) 2020-04-07 13:52:59 -03:00
Miguel Alatzar
4e3e557519
Dismiss keyboard on edit post close (#4110)
* Dismiss keyboard on edit post close

* Don't use edit post request

* Focus on error
2020-04-07 09:50:35 -07:00
shred86
717350adc6
[MM-23755] Add nickname as searchable property (#4099)
* Add nickname search functionality

* Add username property to test

* Fix parentheses out of place

* Add nickname property to additional tests

* Added ability to truncate long names

* Minor clean up

* More minor clean up
2020-04-06 17:48:06 -04:00
RAKESH PEELA
f4d5f4dcaf
Update more unreads button to new design (#4101)
* update `more unreads` button to new design

* update More Unreads button with UI suggestions

* fix lint issues
2020-04-02 18:42:49 -03:00
Miguel Alatzar
754d794dae
Don't pre-fetch posts for unread archived channels (#4113) 2020-04-02 18:40:18 -03:00
Elias Nahum
8522b70851
Tweak post list numbers (#4105) 2020-04-02 14:40:02 -03:00
Amit Uttam
605c90ce61
Remove duplicated websocket client & constants (#4111)
* Remove duplicated websocket client & constants

Defunct code originally maintained in mattermost-redux, but not used in mobile, in favour of https://github.com/mattermost/mattermost-mobile/blob/master/app/client/websocket.ts

* PR review: Remove redundant reference to constants

* Remove deleted files from modules list
2020-04-02 13:57:17 -03:00
Miguel Alatzar
1398a4ea0f
Correctly add additional actions (#4108) 2020-04-01 19:10:27 -07:00
Miguel Alatzar
5346c574e2
Fix mm-redux imports (#4109) 2020-04-01 20:04:39 -03:00
Andre Vasconcelos
d03d504d00
MM-14038 Access recent reactions from the long press menu (#4058)
* WIP: Implementing quick reaction functionality

* Making closing animations smoother

- Added haptic feedback + timeouts for a smooth flow

* Fixing clipping of post options on android

* updating snapshots

* Refactoring code & fixing styles

- Fixed paddings element sizes to comply with design specs
- Replaced reaction image to one with a higher resolution
- Made sizes of emojis to be conditional on deviceWidth

* Apply suggestions from code review

* Adding component to avoid extra re-renders

* Refactoring function call in reaction_button

Am ashamed i didn't catch this before pushing the rest

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-04-01 12:56:49 -07:00
Amit Uttam
725992941c
[MM-23490] Save state to file via async middleware vs store subscription (#4059)
* MM-23490 Save state to file via async middleware vs store subscription

Currently for iOS, a subset of store state is saved to an on-device file, so that the Share Extension can have access to information it needs (teams and channels) to function.

This file saving would happen via a store subscription which triggers a file save for every dispatched action. By moving this logic to a middleware function, when this function gets invoked is now limited to a configurable set of action dispatches. (e.g. `LOGIN`, `CONNECTION_CHANGED`, `WEBSOCKET_SUCCESS`), etc.

* MM-23493 Move app cache purge from store subscription to middleware (#4069)

* MM-23493 Move app cache purge from store subscription to middleware

This commit exposes persistence configuration as a static reference, so that cache purging can be invoked on demand anywhere else in the codebase.
While middleware still may not be the best spot for this singular "action", existing functionality (reacting to `OFFLINE_STORE_PURGE`) is maintained.

The change also removes the need for `state.views.root.purge` to exist in the state tree.

* PR feedback: Inject config dependency for purging app cache

Previously, `middleware` imported the config back from `store` (i.e. cyclic import).

* PR feedback: No need to export config, now that it's passed as argument

* Fix tests after refactoring middleware call from array -> function

* PR feedback: Let parent continue to pass down initial store state
2020-03-31 20:01:13 -07:00
Miguel Alatzar
1079498461
[MM-23708] Send HW key pressed event only when a HW keyboard is connected (#4100)
* Check if HW keyboard is connected

* Call super

* Fix double new line insert
2020-03-31 21:43:18 -03:00
Miguel Alatzar
ece9b6f1d9
[MM-22671] [MM-22935] Fetch posts for unread channels on loadChannelsForTeam (#4078)
* Fetch posts for unread channels on loadChannelsForTeam

* Add unit tests

* Remove unneeded setRetryFailed and getState

* Update getChannelSinceValue comment

* Move to post.js and pass in channels and channelMembers

* Exclude current channel

* Address PR review comments

* Fix import

* Fix mm-redux references
2020-03-31 18:41:11 -03:00
Miguel Alatzar
ee4b85edcf
[MM-23520] Port mattermost-redux (#4088)
* Remove mattermost-redux

* Move mm-redux files into app/redux

* Add @redux path to tsconfig.json

* Fix imports

* Install missing dependencies

* Fix tsc errors

* Fix i18n_utils test

* Fix more imports

* Remove redux websocket

* Fix tests

* Rename @redux

* Apply changes from mattermost-redux PR 1103

* Remove mattermost-redux mention in template

* Add missing imports

* Rename app/redux/ to app/mm-redux/

* Remove test file

* Fix fetching Sidebar GM profiles

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-03-31 11:09:26 -07:00
Elias Nahum
3c73e8ec89
Fix post in channel batching order (#4090)
* Fix post in channel batching order

* Preserve preferences on reset cache
2020-03-30 19:02:05 -03:00
Elias Nahum
fc34f34008
fetch statuses for users in DM/GM's (#4087) 2020-03-30 18:42:23 -03:00
Martin Kraft
9b553d3760
MM-23636: Default 'canPost' to true. (#4085) 2020-03-30 10:40:08 -03:00
Elias Nahum
950f5863fd
Revert "Use file URL over preview URL for GIFs (#3981)" (#4084)
This reverts commit cbc6ef185c.
2020-03-27 23:04:46 -03:00
Elias Nahum
7bb162b07a
MM-22292 Don't use redux to store username and password (#4072)
* MM-22292 Don't use redux to store username and password

* Set login and password MFA props
2020-03-26 23:57:58 -03:00