diff --git a/android/app/src/main/assets/fonts/Roboto-Black.ttf b/android/app/src/main/assets/fonts/Roboto-Black.ttf new file mode 100755 index 0000000000..689fe5cb3c Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-Black.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-BlackItalic.ttf b/android/app/src/main/assets/fonts/Roboto-BlackItalic.ttf new file mode 100755 index 0000000000..0b4e0ee108 Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-BlackItalic.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-Bold.ttf b/android/app/src/main/assets/fonts/Roboto-Bold.ttf new file mode 100755 index 0000000000..d3f01ad245 Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-Bold.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-BoldItalic.ttf b/android/app/src/main/assets/fonts/Roboto-BoldItalic.ttf new file mode 100755 index 0000000000..41cc1e7531 Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-BoldItalic.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-Italic.ttf b/android/app/src/main/assets/fonts/Roboto-Italic.ttf new file mode 100755 index 0000000000..6a1cee5b29 Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-Italic.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-Light.ttf b/android/app/src/main/assets/fonts/Roboto-Light.ttf new file mode 100755 index 0000000000..219063a578 Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-Light.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-LightItalic.ttf b/android/app/src/main/assets/fonts/Roboto-LightItalic.ttf new file mode 100755 index 0000000000..0e81e876fc Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-LightItalic.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-Medium.ttf b/android/app/src/main/assets/fonts/Roboto-Medium.ttf new file mode 100755 index 0000000000..1a7f3b0bba Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-Medium.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-MediumItalic.ttf b/android/app/src/main/assets/fonts/Roboto-MediumItalic.ttf new file mode 100755 index 0000000000..003029527c Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-MediumItalic.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-Regular.ttf b/android/app/src/main/assets/fonts/Roboto-Regular.ttf new file mode 100755 index 0000000000..2c97eeadff Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-Regular.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-Thin.ttf b/android/app/src/main/assets/fonts/Roboto-Thin.ttf new file mode 100755 index 0000000000..b74a4fd1a2 Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-Thin.ttf differ diff --git a/android/app/src/main/assets/fonts/Roboto-ThinItalic.ttf b/android/app/src/main/assets/fonts/Roboto-ThinItalic.ttf new file mode 100755 index 0000000000..dd0ddb8526 Binary files /dev/null and b/android/app/src/main/assets/fonts/Roboto-ThinItalic.ttf differ diff --git a/app/app.js b/app/app.js index efde88acba..a6892cda59 100644 --- a/app/app.js +++ b/app/app.js @@ -2,7 +2,7 @@ // See LICENSE.txt for license information. /* eslint-disable global-require*/ -import {AsyncStorage, Linking, NativeModules, Platform} from 'react-native'; +import {AsyncStorage, Linking, NativeModules, Platform, Text} from 'react-native'; import {setGenericPassword, getGenericPassword, resetGenericPassword} from 'react-native-keychain'; import {loadMe} from 'mattermost-redux/actions/users'; @@ -62,10 +62,37 @@ export default class App { // Usage deeplinking Linking.addEventListener('url', this.handleDeepLink); + this.setFontFamily(); this.getStartupThemes(); this.getAppCredentials(); } + setFontFamily = () => { + // Set a global font for Android + if (Platform.OS === 'android') { + const defaultFontFamily = { + style: { + fontFamily: 'Roboto', + }, + }; + const TextRender = Text.render; + const initialDefaultProps = Text.defaultProps; + Text.defaultProps = { + ...initialDefaultProps, + ...defaultFontFamily, + }; + Text.render = function render(props, ...args) { + const oldProps = props; + let newProps = {...props, style: [defaultFontFamily.style, props.style]}; + try { + return Reflect.apply(TextRender, this, [newProps, ...args]); + } finally { + newProps = oldProps; + } + }; + } + }; + getTranslations = () => { if (this.translations) { return this.translations; diff --git a/assets/fonts/Roboto-Black.ttf b/assets/fonts/Roboto-Black.ttf new file mode 100755 index 0000000000..689fe5cb3c Binary files /dev/null and b/assets/fonts/Roboto-Black.ttf differ diff --git a/assets/fonts/Roboto-BlackItalic.ttf b/assets/fonts/Roboto-BlackItalic.ttf new file mode 100755 index 0000000000..0b4e0ee108 Binary files /dev/null and b/assets/fonts/Roboto-BlackItalic.ttf differ diff --git a/assets/fonts/Roboto-Bold.ttf b/assets/fonts/Roboto-Bold.ttf new file mode 100755 index 0000000000..d3f01ad245 Binary files /dev/null and b/assets/fonts/Roboto-Bold.ttf differ diff --git a/assets/fonts/Roboto-BoldItalic.ttf b/assets/fonts/Roboto-BoldItalic.ttf new file mode 100755 index 0000000000..41cc1e7531 Binary files /dev/null and b/assets/fonts/Roboto-BoldItalic.ttf differ diff --git a/assets/fonts/Roboto-Italic.ttf b/assets/fonts/Roboto-Italic.ttf new file mode 100755 index 0000000000..6a1cee5b29 Binary files /dev/null and b/assets/fonts/Roboto-Italic.ttf differ diff --git a/assets/fonts/Roboto-Light.ttf b/assets/fonts/Roboto-Light.ttf new file mode 100755 index 0000000000..219063a578 Binary files /dev/null and b/assets/fonts/Roboto-Light.ttf differ diff --git a/assets/fonts/Roboto-LightItalic.ttf b/assets/fonts/Roboto-LightItalic.ttf new file mode 100755 index 0000000000..0e81e876fc Binary files /dev/null and b/assets/fonts/Roboto-LightItalic.ttf differ diff --git a/assets/fonts/Roboto-Medium.ttf b/assets/fonts/Roboto-Medium.ttf new file mode 100755 index 0000000000..1a7f3b0bba Binary files /dev/null and b/assets/fonts/Roboto-Medium.ttf differ diff --git a/assets/fonts/Roboto-MediumItalic.ttf b/assets/fonts/Roboto-MediumItalic.ttf new file mode 100755 index 0000000000..003029527c Binary files /dev/null and b/assets/fonts/Roboto-MediumItalic.ttf differ diff --git a/assets/fonts/Roboto-Regular.ttf b/assets/fonts/Roboto-Regular.ttf new file mode 100755 index 0000000000..2c97eeadff Binary files /dev/null and b/assets/fonts/Roboto-Regular.ttf differ diff --git a/assets/fonts/Roboto-Thin.ttf b/assets/fonts/Roboto-Thin.ttf new file mode 100755 index 0000000000..b74a4fd1a2 Binary files /dev/null and b/assets/fonts/Roboto-Thin.ttf differ diff --git a/assets/fonts/Roboto-ThinItalic.ttf b/assets/fonts/Roboto-ThinItalic.ttf new file mode 100755 index 0000000000..dd0ddb8526 Binary files /dev/null and b/assets/fonts/Roboto-ThinItalic.ttf differ diff --git a/ios/Mattermost.xcodeproj/project.pbxproj b/ios/Mattermost.xcodeproj/project.pbxproj index 76ee4272ca..cc774b2a6e 100644 --- a/ios/Mattermost.xcodeproj/project.pbxproj +++ b/ios/Mattermost.xcodeproj/project.pbxproj @@ -5,7 +5,6 @@ }; objectVersion = 46; objects = { - /* Begin PBXBuildFile section */ 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */; }; 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */; }; @@ -111,6 +110,18 @@ F006936FC2884C24A1321FC0 /* MaterialIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 356C9186FA374641A00EB2EA /* MaterialIcons.ttf */; }; F083DB472349411A8E6E7AAD /* OpenSans-LightItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE17F630DB5D41FD93F32D22 /* OpenSans-LightItalic.ttf */; }; F23C99AA5FA10E457A76803A /* libPods-MattermostTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4246DC09024BB33A3E491E25 /* libPods-MattermostTests.a */; }; + DDE492F7425D451884DAA088 /* Roboto-Black.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6EFF13DD24CE4E26953E598A /* Roboto-Black.ttf */; }; + 71F30A436B5847DF9D319D15 /* Roboto-BlackItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7F54ABFAE6CE4A6DB11D1ED7 /* Roboto-BlackItalic.ttf */; }; + E052494CD6104A65840485E7 /* Roboto-Bold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 71E626D4980A4560B26F0E1C /* Roboto-Bold.ttf */; }; + 3D7B4E6EE6B948AAA6A1E4E6 /* Roboto-BoldItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C46342B0E5FD4D878AF3A129 /* Roboto-BoldItalic.ttf */; }; + 460A48EA5C6C4D8B8D9A2C75 /* Roboto-Italic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 031EF04FB2D14EEFAACBAA1A /* Roboto-Italic.ttf */; }; + ABF5F93B1D0A47BAACEAC376 /* Roboto-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 34B20A903038487E8D7DEA1E /* Roboto-Light.ttf */; }; + 552835DCC0C24FC691EE6CAB /* Roboto-LightItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 8F0B22D2C9924FAFA7FB681C /* Roboto-LightItalic.ttf */; }; + C99BB3F4E4564F01A531FBEA /* Roboto-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 09FA716C56874BDDA30FE8C4 /* Roboto-Medium.ttf */; }; + 3C0B333879CE4730843D8584 /* Roboto-MediumItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = D08F54E10DF14AE4BBF4E2B4 /* Roboto-MediumItalic.ttf */; }; + AA9605CFDA8E4E7CB8A041BF /* Roboto-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C5BD64DE829E455A997DCAD5 /* Roboto-Regular.ttf */; }; + DE863F2E1E194A45A5B58FFA /* Roboto-Thin.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A734E00E7E184582A877F2B3 /* Roboto-Thin.ttf */; }; + EC6AF34E03F647389D377064 /* Roboto-ThinItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 12D0B0E475FD46E29907305E /* Roboto-ThinItalic.ttf */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -762,6 +773,18 @@ EE671DF7637347CD8C069819 /* libRNDeviceInfo.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNDeviceInfo.a; sourceTree = ""; }; F1F071EE85494E269A50AE88 /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = SimpleLineIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = ""; }; FBBEC29EE2D3418D9AC33BD5 /* OpenSans-ExtraBoldItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-ExtraBoldItalic.ttf"; path = "../assets/fonts/OpenSans-ExtraBoldItalic.ttf"; sourceTree = ""; }; + 6EFF13DD24CE4E26953E598A /* Roboto-Black.ttf */ = {isa = PBXFileReference; name = "Roboto-Black.ttf"; path = "../assets/fonts/Roboto-Black.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + 7F54ABFAE6CE4A6DB11D1ED7 /* Roboto-BlackItalic.ttf */ = {isa = PBXFileReference; name = "Roboto-BlackItalic.ttf"; path = "../assets/fonts/Roboto-BlackItalic.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + 71E626D4980A4560B26F0E1C /* Roboto-Bold.ttf */ = {isa = PBXFileReference; name = "Roboto-Bold.ttf"; path = "../assets/fonts/Roboto-Bold.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + C46342B0E5FD4D878AF3A129 /* Roboto-BoldItalic.ttf */ = {isa = PBXFileReference; name = "Roboto-BoldItalic.ttf"; path = "../assets/fonts/Roboto-BoldItalic.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + 031EF04FB2D14EEFAACBAA1A /* Roboto-Italic.ttf */ = {isa = PBXFileReference; name = "Roboto-Italic.ttf"; path = "../assets/fonts/Roboto-Italic.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + 34B20A903038487E8D7DEA1E /* Roboto-Light.ttf */ = {isa = PBXFileReference; name = "Roboto-Light.ttf"; path = "../assets/fonts/Roboto-Light.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + 8F0B22D2C9924FAFA7FB681C /* Roboto-LightItalic.ttf */ = {isa = PBXFileReference; name = "Roboto-LightItalic.ttf"; path = "../assets/fonts/Roboto-LightItalic.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + 09FA716C56874BDDA30FE8C4 /* Roboto-Medium.ttf */ = {isa = PBXFileReference; name = "Roboto-Medium.ttf"; path = "../assets/fonts/Roboto-Medium.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + D08F54E10DF14AE4BBF4E2B4 /* Roboto-MediumItalic.ttf */ = {isa = PBXFileReference; name = "Roboto-MediumItalic.ttf"; path = "../assets/fonts/Roboto-MediumItalic.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + C5BD64DE829E455A997DCAD5 /* Roboto-Regular.ttf */ = {isa = PBXFileReference; name = "Roboto-Regular.ttf"; path = "../assets/fonts/Roboto-Regular.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + A734E00E7E184582A877F2B3 /* Roboto-Thin.ttf */ = {isa = PBXFileReference; name = "Roboto-Thin.ttf"; path = "../assets/fonts/Roboto-Thin.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; + 12D0B0E475FD46E29907305E /* Roboto-ThinItalic.ttf */ = {isa = PBXFileReference; name = "Roboto-ThinItalic.ttf"; path = "../assets/fonts/Roboto-ThinItalic.ttf"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = unknown; explicitFileType = undefined; includeInIndex = 0; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -930,6 +953,18 @@ C78A387124874496AD2C1466 /* OpenSans-Semibold.ttf */, 0E617BF0F36D4E738F51D169 /* OpenSans-SemiboldItalic.ttf */, 79CB6EBA24FE4ABFB0C155F0 /* YTPlayerView-iframe-player.html */, + 6EFF13DD24CE4E26953E598A /* Roboto-Black.ttf */, + 7F54ABFAE6CE4A6DB11D1ED7 /* Roboto-BlackItalic.ttf */, + 71E626D4980A4560B26F0E1C /* Roboto-Bold.ttf */, + C46342B0E5FD4D878AF3A129 /* Roboto-BoldItalic.ttf */, + 031EF04FB2D14EEFAACBAA1A /* Roboto-Italic.ttf */, + 34B20A903038487E8D7DEA1E /* Roboto-Light.ttf */, + 8F0B22D2C9924FAFA7FB681C /* Roboto-LightItalic.ttf */, + 09FA716C56874BDDA30FE8C4 /* Roboto-Medium.ttf */, + D08F54E10DF14AE4BBF4E2B4 /* Roboto-MediumItalic.ttf */, + C5BD64DE829E455A997DCAD5 /* Roboto-Regular.ttf */, + A734E00E7E184582A877F2B3 /* Roboto-Thin.ttf */, + 12D0B0E475FD46E29907305E /* Roboto-ThinItalic.ttf */, ); name = Resources; sourceTree = ""; @@ -2198,6 +2233,18 @@ 62A8448264674B4D95A5A7C2 /* OpenSans-Semibold.ttf in Resources */, 69AC753E496743BABB7A7124 /* OpenSans-SemiboldItalic.ttf in Resources */, 5CB86E9DFB94485CAA748DF3 /* YTPlayerView-iframe-player.html in Resources */, + DDE492F7425D451884DAA088 /* Roboto-Black.ttf in Resources */, + 71F30A436B5847DF9D319D15 /* Roboto-BlackItalic.ttf in Resources */, + E052494CD6104A65840485E7 /* Roboto-Bold.ttf in Resources */, + 3D7B4E6EE6B948AAA6A1E4E6 /* Roboto-BoldItalic.ttf in Resources */, + 460A48EA5C6C4D8B8D9A2C75 /* Roboto-Italic.ttf in Resources */, + ABF5F93B1D0A47BAACEAC376 /* Roboto-Light.ttf in Resources */, + 552835DCC0C24FC691EE6CAB /* Roboto-LightItalic.ttf in Resources */, + C99BB3F4E4564F01A531FBEA /* Roboto-Medium.ttf in Resources */, + 3C0B333879CE4730843D8584 /* Roboto-MediumItalic.ttf in Resources */, + AA9605CFDA8E4E7CB8A041BF /* Roboto-Regular.ttf in Resources */, + DE863F2E1E194A45A5B58FFA /* Roboto-Thin.ttf in Resources */, + EC6AF34E03F647389D377064 /* Roboto-ThinItalic.ttf in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/ios/Mattermost/Info.plist b/ios/Mattermost/Info.plist index e7d4c8320f..c7f0e5ef77 100644 --- a/ios/Mattermost/Info.plist +++ b/ios/Mattermost/Info.plist @@ -96,6 +96,18 @@ OpenSans-Regular.ttf OpenSans-Semibold.ttf OpenSans-SemiboldItalic.ttf + Roboto-Black.ttf + Roboto-BlackItalic.ttf + Roboto-Bold.ttf + Roboto-BoldItalic.ttf + Roboto-Italic.ttf + Roboto-Light.ttf + Roboto-LightItalic.ttf + Roboto-Medium.ttf + Roboto-MediumItalic.ttf + Roboto-Regular.ttf + Roboto-Thin.ttf + Roboto-ThinItalic.ttf UIBackgroundModes