From f58a4b1826e827542a6ec59f3b22f76748f692ac Mon Sep 17 00:00:00 2001 From: Devin Binnie <52460000+devinbinnie@users.noreply.github.com> Date: Thu, 25 Aug 2022 10:58:06 -0400 Subject: [PATCH] [MM-46533] Remove buildConfig item and add webpack flags for onboarding screens and GPU acceleration (#2241) * [MM-46533] Remove buildConfig item and add webpack flags for onboarding screens and GPU acceleration * REVERT ME * Use contexts instead * Revert "REVERT ME" This reverts commit 1e75779623f1c5eb2ce3a64e0c39cd4a8cf7ada7. --- .circleci/config.yml | 23 ++++++++++++++++------- package.json | 3 ++- src/common/config/buildConfig.ts | 1 - src/common/config/defaultPreferences.ts | 1 - src/common/config/index.ts | 4 ---- src/main/Validator.test.js | 1 - src/main/Validator.ts | 1 - src/main/app/initialize.ts | 5 ++++- src/main/app/intercom.ts | 5 ++++- src/types/config.ts | 2 -- webpack.config.base.js | 2 ++ 11 files changed, 28 insertions(+), 20 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 3be263e7..fd912495 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -715,14 +715,23 @@ workflows: - build-linux - msi_installer - mac_installer - - upload_to_s3_daily: - context: mattermost-desktop-daily-s3 - requires: - - build-linux - - msi_installer - - mac_installer - share_to_channel: context: desktop_browserview requires: - store_artifacts - + nightly_rainforest: + when: << pipeline.parameters.run_nightly >> + jobs: + - msi_installer: + context: + - windows-codesign + - desktop-rainforest-build + - mac_installer: + context: + - codesign-certificates + - desktop-rainforest-build + - upload_to_s3_daily: + context: mattermost-desktop-daily-s3 + requires: + - msi_installer + - mac_installer diff --git a/package.json b/package.json index 0cb38234..d102fcff 100644 --- a/package.json +++ b/package.json @@ -100,7 +100,8 @@ "__HASH_VERSION__": "5.0.0", "__CAN_UPGRADE__": false, "__IS_NIGHTLY_BUILD__": false, - "__IS_MAC_APP_STORE__": false + "__IS_MAC_APP_STORE__": false, + "__DISABLE_GPU__": false }, "setupFiles": [ "./src/jestSetup.js" diff --git a/src/common/config/buildConfig.ts b/src/common/config/buildConfig.ts index 6a9feec3..e6fc3204 100644 --- a/src/common/config/buildConfig.ts +++ b/src/common/config/buildConfig.ts @@ -37,7 +37,6 @@ const buildConfig: BuildConfig = { 'mailto', 'tel', ], - skipOnboardingScreens: false, }; export default buildConfig; diff --git a/src/common/config/defaultPreferences.ts b/src/common/config/defaultPreferences.ts index 336adce8..c8bf6cbb 100644 --- a/src/common/config/defaultPreferences.ts +++ b/src/common/config/defaultPreferences.ts @@ -43,7 +43,6 @@ const defaultPreferences: ConfigV3 = { lastActiveTeam: 0, downloadLocation: getDefaultDownloadLocation(), startInFullscreen: false, - skipOnboardingScreens: false, }; export default defaultPreferences; diff --git a/src/common/config/index.ts b/src/common/config/index.ts index 9e5fe430..80a86188 100644 --- a/src/common/config/index.ts +++ b/src/common/config/index.ts @@ -332,10 +332,6 @@ export class Config extends EventEmitter { return this.combinedData?.appLanguage; } - get skipOnboardingScreens() { - return this.combinedData?.skipOnboardingScreens ?? defaultPreferences.skipOnboardingScreens; - } - // initialization/processing methods /** diff --git a/src/main/Validator.test.js b/src/main/Validator.test.js index ecf12113..d0ab3972 100644 --- a/src/main/Validator.test.js +++ b/src/main/Validator.test.js @@ -150,7 +150,6 @@ describe('main/Validator', () => { ], trayIconTheme: 'use_system', useSpellChecker: true, - skipOnboardingScreens: false, version: 3, }; diff --git a/src/main/Validator.ts b/src/main/Validator.ts index ccaf5968..be411fb7 100644 --- a/src/main/Validator.ts +++ b/src/main/Validator.ts @@ -132,7 +132,6 @@ const configDataSchemaV3 = Joi.object({ alwaysClose: Joi.boolean(), logLevel: Joi.string().default('info'), appLanguage: Joi.string().allow(''), - skipOnboardingScreens: Joi.boolean().default(false), }); // eg. data['community.mattermost.com'] = { data: 'certificate data', issuerName: 'COMODO RSA Domain Validation Secure Server CA'}; diff --git a/src/main/app/initialize.ts b/src/main/app/initialize.ts index 34be5451..a8fcf4ec 100644 --- a/src/main/app/initialize.ts +++ b/src/main/app/initialize.ts @@ -161,7 +161,10 @@ async function initializeConfig() { handleConfigUpdate(configData); // can only call this before the app is ready - if (Config.enableHardwareAcceleration === false) { + // eslint-disable-next-line no-undef + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + if (Config.enableHardwareAcceleration === false || __DISABLE_GPU__) { app.disableHardwareAcceleration(); } diff --git a/src/main/app/intercom.ts b/src/main/app/intercom.ts index 42d53f24..3e899164 100644 --- a/src/main/app/intercom.ts +++ b/src/main/app/intercom.ts @@ -86,7 +86,10 @@ export function handleOpenTab(event: IpcMainEvent, serverName: string, tabName: } export function handleMainWindowIsShown() { - const showWelcomeScreen = !Config.skipOnboardingScreens && !Config.teams.length; + // eslint-disable-next-line no-undef + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + const showWelcomeScreen = !(Boolean(__SKIP_ONBOARDING_SCREENS__) || Config.teams.length); const mainWindow = WindowManager.getMainWindow(); if (mainWindow) { diff --git a/src/types/config.ts b/src/types/config.ts index 78cdeaef..2fe4daa5 100644 --- a/src/types/config.ts +++ b/src/types/config.ts @@ -46,7 +46,6 @@ export type ConfigV3 = { alwaysClose?: boolean; logLevel?: string; appLanguage?: string; - skipOnboardingScreens: boolean; } export type ConfigV2 = { @@ -107,7 +106,6 @@ export type BuildConfig = { enableAutoUpdater: boolean; managedResources: string[]; allowedProtocols: string[]; - skipOnboardingScreens: boolean; } export type RegistryConfig = { diff --git a/webpack.config.base.js b/webpack.config.base.js index 1f947f8a..23401c18 100644 --- a/webpack.config.base.js +++ b/webpack.config.base.js @@ -20,6 +20,8 @@ const codeDefinitions = { __CAN_UPGRADE__: JSON.stringify(process.env.CAN_UPGRADE === 'true'), __IS_NIGHTLY_BUILD__: JSON.stringify(process.env.CIRCLE_BRANCH === 'nightly'), __IS_MAC_APP_STORE__: JSON.stringify(process.env.IS_MAC_APP_STORE === 'true'), + __SKIP_ONBOARDING_SCREENS__: JSON.stringify(process.env.MM_DESKTOP_BUILD_SKIPONBOARDINGSCREENS === 'true'), + __DISABLE_GPU__: JSON.stringify(process.env.MM_DESKTOP_BUILD_DISABLEGPU === 'true'), }; codeDefinitions['process.env.NODE_ENV'] = JSON.stringify(process.env.NODE_ENV);