No description
Find a file
Mattermost Build 0f55d7e702
Mobile drafts (#8280) (#8473)
* refactor: started with draft, done until new tabs for draft

* refactor: change the query and added the screen for draft

* added condition for fetching draft for channel delete or not

* refactor: added draft screen

* linter fixes

* Added draft post component

* added avatar and header display name for the draft post list

* added channel info component

* channel info completed

* proper naming

* added image file markdown acknowledgement support

* draft actions

* Fix the draft receiver in drafts

* separated send message handler

* Done with send drafts

* done with delete drafts

* change save to send draft

* handle lengthy message with show more button

* done with persistent message edit, send and delete drafts

* added alert for sending message

* added update at time for the drafts

* en.json extract fix

* Updated dependencies for useCallback

* refactor: added drafts list to animated list

* added swipeable component and delete conformation for drafts

* done with rendering of images in markdown for drafts

* en.json issue fixed

* fix en.json issue

* refactor: en.json fix

* addressed review comments

* updated image metadata handling code

* linter fixes

* added the empty draft screen

* linter fix

* style fix

* back button an android takes to the channel list page

* en.json fix

* draft actions theme compatible

* CSS fix for draft channel_info and avatar component

* removed the badge icon and change font style drafts

* fix send alert sender name for GMs

* updated snapshot

* added testId to the drafts components

* updated send draft test id

* clicking on draft takes to the channel

* Added toptip for draft tours

* intl extract

* Rebase to main and reverted local testing changes

* Added tooltip for drafts

* addressed review comments

* reset navigation when click on a draft in draft tabs

* fix the theme issue and navigation issue

* reverted back the draft click navigation changes

* observing draft when hitting back button

* removed the unwanted animiation

* updated regex for parsing markdown

* removed unnecessary checks and change folder name

* removed react memo and merge unwanted observes function

* removed unnecessary comments

* changed the name for observing and querying draft function

* removed memo from component level

* Text to FormattedText component

* Text to formatted text, change image name

* added confirmation modal for deleting draft from bottomsheet

* using common send_handler for both draft and post

* removed magic number for tooltip and bottomsheet

* renamed channel_info to draft_post_header

* text to formattedText for Edit drafts

* removed unnecessary changes

* minor fixes

* mounting draft only when there is draft

* map to reduce

* renamed SwipeableDraft to DraftSwipeAction

* name fixes

* isValidUrl to isParsableUrl and added test

* added test and addressed minor review comments

* added inline component for the duplicate code

* inlt fixes

* clearDraft is not optional

* optimised categories_list.tsx component

* Swipeable to ReanimatedSwipeable, TouchableWithoutFeedback to Pressable and folder name changes

* Added comment and disabled eslint rule for showing warning

* fixed component file name

* minor'

* Removed deprecated Animated createAnimatedComponent flatlist

* added test for missing protocol check

* import change for SwipeableMethod

* active tab for tablet view

* Updated the drafts icons

* Updated compass-icon version to v0.1.48

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
(cherry picked from commit 84eded1bde)

Co-authored-by: Rajat Dabade <rajatdabade1997@gmail.com>
2025-01-13 15:15:42 +02:00
.github Fix: Env variabled to pick up right simulator device for tests (#8367) 2024-11-29 11:48:35 +05:30
.husky Push react native to 0.73.6 (#7863) 2024-04-22 12:44:39 +02:00
android Bump app build number to 592 (#8467) 2025-01-10 11:10:05 +02:00
app Mobile drafts (#8280) (#8473) 2025-01-13 15:15:42 +02:00
assets Mobile drafts (#8280) (#8473) 2025-01-13 15:15:42 +02:00
build/notice-file Ignore local deps in notice-file-generator config (#8041) 2024-06-26 11:29:26 +02:00
detox Fix: Android build for Detox e2e (#8362) 2024-12-09 23:20:05 +05:30
docs include EMM/MDM integration in the arch diagram (#8327) 2024-11-16 06:53:36 +08:00
eslint [Gekidou] update deps (#6667) 2022-10-13 08:41:18 -03:00
fastlane Update README.md (#8330) 2024-11-15 08:05:22 -05:00
ios Bump app build number to 592 (#8467) 2025-01-10 11:10:05 +02:00
libraries/@mattermost Extra keyboard (#8348) 2024-11-29 11:58:13 +08:00
patches Fix bottomSheet bottom insets (#8331) 2024-11-29 12:50:09 +08:00
scripts test: mitmproxy + low bandwidth + automated QA using detox (#8202) 2024-10-14 07:56:52 -06:00
share_extension Avoid registering wrong performance load logs (#8107) 2024-07-24 18:42:31 +02:00
test Extra keyboard (#8348) 2024-11-29 11:58:13 +08:00
types Network metrics (#8390) 2024-12-17 19:51:26 +08:00
.buckconfig Barebones code for v2 2020-11-17 14:20:58 -03:00
.editorconfig MM-35115 [Gekidou] Login flow - Email and Password (#5402) 2021-06-18 00:57:40 -04:00
.eslintrc.json chore: exhaustive-deps eslint rules from 'off' to 'warn' (#8272) 2024-10-21 09:06:28 -06:00
.flowconfig [Gekidou] Upgrade to RN 0.70 (#6690) 2022-10-20 10:18:25 -03:00
.gitattributes Update v2 dependencies (#5312) 2021-04-14 10:55:29 -04:00
.gitignore chore: add .aider* to gitignore (#8425) 2024-12-18 11:35:39 -07:00
.node-version Upgrade RN as well as update or replace other dependencies (#8011) 2024-06-19 09:33:45 +08:00
.npmrc MM-54535 Fixed hang when using the magic keyboard on iPadOS 17 (#7555) 2023-09-27 18:54:33 +03:00
.nvmrc Upgrade RN as well as update or replace other dependencies (#8011) 2024-06-19 09:33:45 +08:00
.ruby-version bump Ruby verison (#8315) 2024-11-07 12:34:24 -04:00
.solidarity bump Ruby verison (#8315) 2024-11-07 12:34:24 -04:00
.watchmanconfig Barebones code for v2 2020-11-17 14:20:58 -03:00
app.json Barebones code for v2 2020-11-17 14:20:58 -03:00
babel.config.js Remove app alias for imports (#8314) 2024-11-07 08:34:49 +08:00
CHANGELOG.md Barebones code for v2 2020-11-17 14:20:58 -03:00
CONTRIBUTING.md Barebones code for v2 2020-11-17 14:20:58 -03:00
env.d.ts Detox/E2E: Channel Info Unarchive e2e tests in Gekidou (#6515) 2022-07-28 10:47:34 -07:00
Gemfile Upgrade RN as well as update or replace other dependencies (#8011) 2024-06-19 09:33:45 +08:00
Gemfile.lock Bump rexml from 3.3.5 to 3.3.9 (#8295) 2024-10-29 08:22:11 +08:00
index.ts fix: use polyfill-force to improve startup time (#7904) 2024-04-22 09:54:52 +02:00
ISSUE_TEMPLATE.md Update ISSUE_TEMPLATE.md (#7080) 2023-02-03 08:55:40 -05:00
jest.config.js Update jest config to show coverage for correct folders (#8069) 2024-07-09 08:58:46 -04:00
jsconfig.json Barebones code for v2 2020-11-17 14:20:58 -03:00
LICENSE.txt Barebones code for v2 2020-11-17 14:20:58 -03:00
metro.config.js Upgrade RN as well as update or replace other dependencies (#8011) 2024-06-19 09:33:45 +08:00
NOTICE.txt chore: Update NOTICE.txt file with updated dependencies (#8328) 2024-11-11 08:28:13 -05:00
package-lock.json Mobile drafts (#8280) (#8473) 2025-01-13 15:15:42 +02:00
package.json Mobile drafts (#8280) (#8473) 2025-01-13 15:15:42 +02:00
PULL_REQUEST_TEMPLATE.md Barebones code for v2 2020-11-17 14:20:58 -03:00
react-native.config.js Update v2 dependencies (#5312) 2021-04-14 10:55:29 -04:00
README.md Update README.md (#8330) 2024-11-15 08:05:22 -05:00
SECURITY.md Barebones code for v2 2020-11-17 14:20:58 -03:00
tsconfig.json Remove app alias for imports (#8314) 2024-11-07 08:34:49 +08:00
tsconfig.test.json Barebones code for v2 2020-11-17 14:20:58 -03:00

Mattermost Mobile v2

  • Minimum Server versions: Current ESR version (9.11.0+)
  • Supported iOS versions: 13.4+
  • Supported Android versions: 7.0+

Mattermost is an open source Slack-alternative used by thousands of companies around the world in 21 languages. Learn more at https://mattermost.com.

You can download our apps from the App Store or Google Play Store, or build them yourself.

We plan on releasing monthly updates with new features - check the changelog for what features are currently supported!

Important: If you self-compile the Mattermost Mobile apps you also need to deploy your own Mattermost Push Notification Service.

How to Contribute

Testing

To help with testing app updates before they're released, you can:

  1. Sign up to be a beta tester
    • Android
    • iOS - Open this link from your iOS device
  2. Install the Mattermost Beta app. New updates in the Beta app are released periodically. You will receive a notification when the new updates are available.
  3. File any bugs you find by filing a GitHub issue with:
    • Device information
    • Repro steps
    • Observed behavior (including screenshot / video when possible)
    • Expected behavior
  4. (Optional) Sign up for our team site

You can leave the Beta testing program at any time:

  • On Android, click this link while logged in with your Google Play email address used to opt-in for the Beta program, then click Leave the program.
  • On iOS, access the Mattermost Beta app page in TestFlight and click Stop Testing.

Contribute Code

  1. Look in GitHub issues for issues marked as [Help Wanted]
  2. Comment to let people know youre working on it
  3. Follow these instructions to set up your developer environment
  4. Join the Native Mobile Apps channel on our team site to ask questions

Frequently Asked Questions

How is data handled on mobile devices after a user account is deactivated?

App data is wiped from the device when a user logs out of the app. If the user is logged in when the account is deactivated, then within one minute the system logs the user out, and as a result all app data is wiped from the device.

I need the code for the v1 version

You can still access it! We have moved the code from master to the v1 branch. Be aware that we will not be providing any more v1 versions or updates in the public stores.

Troubleshooting

I keep getting a message "Cannot connect to the server. Please check your server URL and internet connection."

This sometimes appears when there is an issue with the SSL certificate configuration.

To check that your SSL certificate is set up correctly, test the SSL certificate by visiting a site such as https://www.ssllabs.com/ssltest/index.html. If theres an error about the missing chain or certificate path, there is likely an intermediate certificate missing that needs to be included.

Please note that the apps cannot connect to servers with self-signed certificates, consider using Let's Encrypt instead.

I see a “Connecting…” bar that does not go away

If your app is working properly, you should see a grey “Connecting…” bar that clears or says “Connected” after the app reconnects.

If you are seeing this message all the time, and your internet connection seems fine:

Ask your server administrator if the server uses NGINX or another webserver as a reverse proxy. If so, they should check that it is configured correctly for supporting the websocket connection for APIv4 endpoints.