Changed version checking code for native window and correctly support frameless on Windows 8 (#1829) (#1830)
(cherry picked from commit 047db6e6e8
)
Co-authored-by: Devin Binnie <52460000+devinbinnie@users.noreply.github.com>
This commit is contained in:
parent
0429bbac2a
commit
26ef7b56e1
|
@ -24,6 +24,7 @@ import {UPDATE_TEAMS, GET_CONFIGURATION, UPDATE_CONFIGURATION, GET_LOCAL_CONFIGU
|
||||||
|
|
||||||
import * as Validator from 'main/Validator';
|
import * as Validator from 'main/Validator';
|
||||||
import {getDefaultTeamWithTabsFromTeam} from 'common/tabs/TabView';
|
import {getDefaultTeamWithTabsFromTeam} from 'common/tabs/TabView';
|
||||||
|
import Utils from 'common/utils/util';
|
||||||
|
|
||||||
import defaultPreferences, {getDefaultDownloadLocation} from './defaultPreferences';
|
import defaultPreferences, {getDefaultDownloadLocation} from './defaultPreferences';
|
||||||
import upgradeConfigData from './upgradePreferences';
|
import upgradeConfigData from './upgradePreferences';
|
||||||
|
@ -57,7 +58,7 @@ export default class Config extends EventEmitter {
|
||||||
this.predefinedTeams.push(...buildConfig.defaultTeams.map((team) => getDefaultTeamWithTabsFromTeam(team)));
|
this.predefinedTeams.push(...buildConfig.defaultTeams.map((team) => getDefaultTeamWithTabsFromTeam(team)));
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
this.useNativeWindow = os.platform() === 'win32' && (parseInt(os.release().split('.')[0], 10) < 10);
|
this.useNativeWindow = os.platform() === 'win32' && !Utils.isVersionGreaterThanOrEqualTo(os.release(), '6.2');
|
||||||
} catch {
|
} catch {
|
||||||
this.useNativeWindow = false;
|
this.useNativeWindow = false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@ function shorten(string: string, max?: number) {
|
||||||
return string;
|
return string;
|
||||||
}
|
}
|
||||||
|
|
||||||
function isServerVersionGreaterThanOrEqualTo(currentVersion: string, compareVersion: string): boolean {
|
function isVersionGreaterThanOrEqualTo(currentVersion: string, compareVersion: string): boolean {
|
||||||
if (currentVersion === compareVersion) {
|
if (currentVersion === compareVersion) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -66,5 +66,5 @@ export default {
|
||||||
getDisplayBoundaries,
|
getDisplayBoundaries,
|
||||||
runMode,
|
runMode,
|
||||||
shorten,
|
shorten,
|
||||||
isServerVersionGreaterThanOrEqualTo,
|
isVersionGreaterThanOrEqualTo,
|
||||||
};
|
};
|
||||||
|
|
|
@ -830,7 +830,7 @@ function openExtraTabs(data: Array<RemoteInfo | string | undefined>, team: TeamW
|
||||||
const remoteInfo = data.find((info) => info && typeof info !== 'string' && info.name === team.name) as RemoteInfo;
|
const remoteInfo = data.find((info) => info && typeof info !== 'string' && info.name === team.name) as RemoteInfo;
|
||||||
if (remoteInfo) {
|
if (remoteInfo) {
|
||||||
team.tabs.forEach((tab) => {
|
team.tabs.forEach((tab) => {
|
||||||
if (tab.name !== TAB_MESSAGING && remoteInfo.serverVersion && Utils.isServerVersionGreaterThanOrEqualTo(remoteInfo.serverVersion, '6.0.0')) {
|
if (tab.name !== TAB_MESSAGING && remoteInfo.serverVersion && Utils.isVersionGreaterThanOrEqualTo(remoteInfo.serverVersion, '6.0.0')) {
|
||||||
if (tab.name === TAB_PLAYBOOKS && remoteInfo.hasPlaybooks && tab.isOpen !== false) {
|
if (tab.name === TAB_PLAYBOOKS && remoteInfo.hasPlaybooks && tab.isOpen !== false) {
|
||||||
log.info(`opening ${team.name}___${tab.name} on hasPlaybooks`);
|
log.info(`opening ${team.name}___${tab.name} on hasPlaybooks`);
|
||||||
tab.isOpen = true;
|
tab.isOpen = true;
|
||||||
|
|
|
@ -430,7 +430,7 @@ export class ViewManager {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (view.status === Status.READY && view.serverInfo.remoteInfo.serverVersion && Utils.isServerVersionGreaterThanOrEqualTo(view.serverInfo.remoteInfo.serverVersion, '6.0.0')) {
|
if (view.status === Status.READY && view.serverInfo.remoteInfo.serverVersion && Utils.isVersionGreaterThanOrEqualTo(view.serverInfo.remoteInfo.serverVersion, '6.0.0')) {
|
||||||
const pathName = `/${urlWithSchema.replace(view.tab.server.url.toString(), '')}`;
|
const pathName = `/${urlWithSchema.replace(view.tab.server.url.toString(), '')}`;
|
||||||
view.view.webContents.send(BROWSER_HISTORY_PUSH, pathName);
|
view.view.webContents.send(BROWSER_HISTORY_PUSH, pathName);
|
||||||
this.deeplinkSuccess(view.name);
|
this.deeplinkSuccess(view.name);
|
||||||
|
|
|
@ -14,6 +14,7 @@ import {SavedWindowState} from 'types/mainWindow';
|
||||||
|
|
||||||
import {SELECT_NEXT_TAB, SELECT_PREVIOUS_TAB, GET_FULL_SCREEN_STATUS, OPEN_TEAMS_DROPDOWN} from 'common/communication';
|
import {SELECT_NEXT_TAB, SELECT_PREVIOUS_TAB, GET_FULL_SCREEN_STATUS, OPEN_TEAMS_DROPDOWN} from 'common/communication';
|
||||||
import {DEFAULT_WINDOW_HEIGHT, DEFAULT_WINDOW_WIDTH, MINIMUM_WINDOW_HEIGHT, MINIMUM_WINDOW_WIDTH} from 'common/utils/constants';
|
import {DEFAULT_WINDOW_HEIGHT, DEFAULT_WINDOW_WIDTH, MINIMUM_WINDOW_HEIGHT, MINIMUM_WINDOW_WIDTH} from 'common/utils/constants';
|
||||||
|
import Utils from 'common/utils/util';
|
||||||
|
|
||||||
import * as Validator from '../Validator';
|
import * as Validator from '../Validator';
|
||||||
import ContextMenu from '../contextMenu';
|
import ContextMenu from '../contextMenu';
|
||||||
|
@ -38,7 +39,7 @@ function isInsideRectangle(container: Electron.Rectangle, rect: Electron.Rectang
|
||||||
}
|
}
|
||||||
|
|
||||||
function isFramelessWindow() {
|
function isFramelessWindow() {
|
||||||
return os.platform() === 'darwin' || (os.platform() === 'win32' && os.release().startsWith('10'));
|
return os.platform() === 'darwin' || (os.platform() === 'win32' && Utils.isVersionGreaterThanOrEqualTo(os.release(), '6.2'));
|
||||||
}
|
}
|
||||||
|
|
||||||
function createMainWindow(config: CombinedConfig, options: {linuxAppIcon: string}) {
|
function createMainWindow(config: CombinedConfig, options: {linuxAppIcon: string}) {
|
||||||
|
|
Loading…
Reference in a new issue