mirror of
https://github.com/th-ch/youtube-music.git
synced 2026-01-10 10:11:46 +00:00
Merge pull request #1277 from th-ch/hotfix/1273
This commit is contained in:
46
index.ts
46
index.ts
@ -225,16 +225,26 @@ function createMainWindow() {
|
||||
});
|
||||
loadPlugins(win);
|
||||
|
||||
const scaleFactor = screen.getAllDisplays().length > 1 ? screen.getPrimaryDisplay().scaleFactor : 1;
|
||||
|
||||
if (windowSize) {
|
||||
const scaledSize = {
|
||||
width: windowSize.width / scaleFactor,
|
||||
height: windowSize.height / scaleFactor,
|
||||
};
|
||||
win.setSize(scaledSize.width, scaledSize.height);
|
||||
}
|
||||
|
||||
if (windowPosition) {
|
||||
const { x, y } = windowPosition;
|
||||
const { x: windowX, y: windowY } = windowPosition;
|
||||
const winSize = win.getSize();
|
||||
const displaySize
|
||||
= screen.getDisplayNearestPoint(windowPosition).bounds;
|
||||
if (
|
||||
x + winSize[0] < displaySize.x - 8
|
||||
|| x - winSize[0] > displaySize.x + displaySize.width
|
||||
|| y < displaySize.y - 8
|
||||
|| y > displaySize.y + displaySize.height
|
||||
windowX + winSize[0] < displaySize.x - 8
|
||||
|| windowX - winSize[0] > displaySize.x + displaySize.width
|
||||
|| windowY < displaySize.y - 8
|
||||
|| windowY > displaySize.y + displaySize.height
|
||||
) {
|
||||
// Window is offscreen
|
||||
if (is.dev()) {
|
||||
@ -243,7 +253,11 @@ function createMainWindow() {
|
||||
);
|
||||
}
|
||||
} else {
|
||||
win.setPosition(x, y);
|
||||
const scaledPosition = {
|
||||
x: windowX / scaleFactor,
|
||||
y: windowY / scaleFactor,
|
||||
};
|
||||
win.setPosition(scaledPosition.x, scaledPosition.y);
|
||||
}
|
||||
}
|
||||
|
||||
@ -261,26 +275,6 @@ function createMainWindow() {
|
||||
win.webContents.loadURL(urlToLoad);
|
||||
win.on('closed', onClosed);
|
||||
|
||||
const scaleFactor = screen.getAllDisplays().length > 1 ? screen.getPrimaryDisplay().scaleFactor : 1;
|
||||
const size = config.get('window-size');
|
||||
const position = config.get('window-position');
|
||||
|
||||
if (size && size.width && size.height) {
|
||||
const scaledSize = {
|
||||
width: size.width / scaleFactor,
|
||||
height: size.height / scaleFactor,
|
||||
};
|
||||
win.setSize(scaledSize.width, scaledSize.height);
|
||||
}
|
||||
|
||||
if (position && position.x && position.y) {
|
||||
const scaledPosition = {
|
||||
x: position.x / scaleFactor,
|
||||
y: position.y / scaleFactor,
|
||||
};
|
||||
win.setPosition(scaledPosition.x, scaledPosition.y);
|
||||
}
|
||||
|
||||
type PiPOptions = typeof config.defaultConfig.plugins['picture-in-picture'];
|
||||
const setPiPOptions = config.plugins.isEnabled('picture-in-picture')
|
||||
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||
|
||||
Reference in New Issue
Block a user