No description
Find a file
KobeBergmans 21adcf6085
Latex rendering with react-native-math-view (#5651)
* Added a Latex code window that displays the given code using katex

* Latex is now displayed without having to go to the next screen

* MathView test

* MathView WIP:
Displays math good, but in verry small font
View does not load if there is a syntax error and we are hard stuck in the app

* Math view now is rendered properly, few working points:
Text is not fixed size, it renders in a weird size
Multi Line subscript is not working

* Latex is now rendered properly

* Fixed Error message and moved helper function to utils

* Added some padding and vertical scroll on latex screen

* Updated config option to work on real phone too

* Removed unused code and fixed tests

* Added LatexInline and tried to modify parser, not yet finished though. InlineLatexOption is not yet coded for

* Bugfixes and better line break checking

* Few margin changes for ios, also updated pod files

* padding is now dependend on system

* Add platform import

* Reverted package-lock change

* Added tests

* Bugfixes, UI tweaks and added unit test for latex util

* Added enableLatex to markdown options instead getting the state and config

* Changed the rendering a little bit, it is better but still far from perfect

* Width and height is now correctely displayed. Still not clean enough though

* Inline latex is now rendered properly for most equations

* Inline latex is now working properly

* tests for escaping and unescaping functions

* Added inline latex setting support

* Added inline latex tests

* Delete unused comment

* Added extra regex rule: there must be no word character in front of the inline latex code

* Upgraded math-view package and deleted duplicate entry from gemfile.lock

* Inline error functions are now class functions

* Updated error color to theme error color

* Latex screen now extends the code screen

* Markdown changes:
Now uses dimensions instead of windowdimensions
Removed inline latex function
extracted latex rendering into separate function

* updated latex util test

* Hardcoded latex language in latex code block

* Added proptypes and cleaned up latex code block

* Bugfix latex split lines

* ÃDeleted language prop from latex code block

* Changed commonmark packages to personal repo's

* Latex rendering now goes by commonmark

* Deleted unused function and tests

* Commonmark packages back to normal versions with patch package

* Updated commonmark patch file to right file and changed package lock to point at right repo

* Updated patch files to latest version

* Updated commonmark patch

* Fixed linter errors

* Integrety of commonmark fix

* First fix of ios problems

* Updated snapshot

Co-authored-by: Kobe Bergmans <kobe.bergmans@student.kuleuven.be>
Co-authored-by: Administrator <admin@Macintosh-3.localdomain>
Co-authored-by: kobe bergmans <kobebergmans@kobes-MacBook-Pro.local>
2022-04-19 09:16:38 -04:00
.circleci Update dependencies (#5686) 2021-09-22 13:54:12 -03:00
.github MM-41988 Updated links to legacy domain about.mm.com (#5962) 2022-03-07 16:50:06 -03:00
.husky Update dependencies (#5266) 2021-04-06 11:12:31 -04:00
.storybook [MM-28845]: Add storybook to mobile repo (#4870) 2020-11-02 15:41:07 +05:30
android Bump app build number to 391 (#6159) 2022-04-11 14:21:15 -04:00
app Latex rendering with react-native-math-view (#5651) 2022-04-19 09:16:38 -04:00
assets Translated using Weblate (Spanish) 2022-04-19 10:39:03 +02:00
builds/nightlybeta jenkinsfile for weekly beta build (#1649) 2018-05-01 10:29:49 -03:00
detox Bump moment from 2.29.1 to 2.29.2 in /detox (#6152) 2022-04-10 08:03:48 -04:00
docs [MM-22959] Use Compass icons (#4847) 2020-10-15 15:34:24 -07:00
fastlane update fastlane 2022-04-12 09:14:20 -04:00
ios Latex rendering with react-native-math-view (#5651) 2022-04-19 09:16:38 -04:00
packager Add linter rules for import order and type member delimiters (#5514) 2021-07-23 11:06:04 +02:00
patches Markdown svg & image to respect size if available (#6030) 2022-03-07 15:20:07 -03:00
scripts Add check for empty translation source strings (#5044) 2021-01-04 16:05:10 +01:00
share_extension V1 dependencies and bump to RN 0.67.2 (#5908) 2022-02-02 15:28:57 -03:00
test [v1] Skip LoginOptions if only one SSO method is enabled (#6097) 2022-03-30 12:13:37 -03:00
types MM-42320: Calls - Fix for: iOS loses calls audio after leaving 1st call and entering next (#6143) 2022-04-11 12:03:44 -04:00
.buckconfig Initial commit 2016-10-04 14:10:44 -04:00
.editorconfig MM-11157 Switch ESLint to use eslint-config-mattermost (#2247) 2018-10-11 13:35:25 -04:00
.env Disable logbox when RUNNING_E2E=true (#5831) 2021-11-15 13:58:23 -08:00
.eslintrc.json Update dependencies (#5870) 2021-12-15 16:44:35 +02:00
.flowconfig V1 dependencies and bump to RN 0.67.2 (#5908) 2022-02-02 15:28:57 -03:00
.gitattributes Update dependencies (#5266) 2021-04-06 11:12:31 -04:00
.gitignore Added the functionality to create .aab file along with .apk file (#5884) 2022-02-01 08:50:53 -03:00
.npmrc Add functionality for fetching + selecting teams & channels (#17) 2016-10-17 15:47:47 -04:00
.watchmanconfig Initial commit 2016-10-04 14:10:44 -04:00
app.json Upgrade RN (#1102) 2017-11-07 13:34:39 -03:00
babel.config.js Voicechannels (#5753) 2021-11-11 11:32:39 +01:00
CHANGELOG.md Move mobile app changelog to admin docs (#4835) 2020-09-24 11:36:06 -07:00
CONTRIBUTING.md Remove outdated information from contributing file (#2759) 2019-05-02 08:25:41 -04:00
env.d.ts Update dependencies (#5870) 2021-12-15 16:44:35 +02:00
index.js Update dependencies (#5870) 2021-12-15 16:44:35 +02:00
ISSUE_TEMPLATE.md MM-41988 Updated links to legacy domain about.mm.com (#5962) 2022-03-07 16:50:06 -03:00
jest.config.js Latex rendering with react-native-math-view (#5651) 2022-04-19 09:16:38 -04:00
jsconfig.json Add recently used section (#1136) 2017-11-21 10:20:09 -05:00
LICENSE.txt Revert "Fix "{yyyy} {name of copyright owner}" in LICENSE.txt" (#2173) 2018-09-26 11:26:52 -03:00
metro.config.js Add linter rules for import order and type member delimiters (#5514) 2021-07-23 11:06:04 +02:00
NOTICE.txt Fix typo (#5981) 2022-02-17 10:29:12 -03:00
package-lock.json Latex rendering with react-native-math-view (#5651) 2022-04-19 09:16:38 -04:00
package.json Latex rendering with react-native-math-view (#5651) 2022-04-19 09:16:38 -04:00
PULL_REQUEST_TEMPLATE.md [MM-23520] Port mattermost-redux (#4088) 2020-03-31 11:09:26 -07:00
react-native.config.js Add eslint eol-last to require newline at end of files (#4985) 2020-11-30 21:46:05 -07:00
README.md Update README.md (#6104) 2022-03-30 12:28:23 -03:00
SECURITY.md MM-41988 Updated links to legacy domain about.mm.com (#5962) 2022-03-07 16:50:06 -03:00
tsconfig.json Voicechannels (#5753) 2021-11-11 11:32:39 +01:00
tsconfig.test.json Port WebSocket from mm-redux and batch actions (#4060) 2020-03-26 21:23:50 -03:00

Mattermost Mobile App

Mattermost

  • Minimum Server versions: Current ESR version (6.3.0)
  • Supported iOS versions: 12.1+
  • Supported Android versions: 7.0+

Mattermost is an open source platform for secure collaboration across the entire software development lifecycle. This repo is for the mobile app that runs on Android and iOS. You can download our apps from the App Store or Google Play Store, or build them yourself.

New features are released monthly - check the changelog for currently-supported features!

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.

Can I connect to multiple Mattermost servers using the mobile apps?

At the moment, we only support connecting to one server at a time. If you need to connect to multiple servers, please upvote the feature request so we can track demand for it.

As a work around, you can install both the released "Mattermost" app and sign up to be a tester for the "Mattermost Beta" app so you can connect to two servers at once.

Will there be second generation apps available for tablets?

We plan to add support for tablets in the future, but the timeline depends on how many people have a need for it. If you're looking for a tablet version, please help us out by upvoting the feature request!

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.