electron-drag-plus 1.0.7 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -20,11 +20,14 @@ electron_1.ipcMain.on('electron-drag:start', (event, { x, y }) => {
20
20
  if (!win)
21
21
  return;
22
22
  const winBounds = win.getBounds();
23
+ const cursorScreenPoint = electron_1.screen.getCursorScreenPoint();
24
+ const display = electron_1.screen.getDisplayNearestPoint(cursorScreenPoint);
25
+ const scaleFactor = display.scaleFactor;
23
26
  currentWindow = win;
24
27
  dragData = {
25
28
  isDragging: true,
26
- startX: x,
27
- startY: y,
29
+ startX: x / scaleFactor,
30
+ startY: y / scaleFactor,
28
31
  windowStartX: winBounds.x,
29
32
  windowStartY: winBounds.y,
30
33
  originalResizable: win.isResizable(),
@@ -36,13 +39,18 @@ electron_1.ipcMain.on('electron-drag:drag', (event, { x, y }) => {
36
39
  if (!currentWindow || !dragData || !dragData.isDragging)
37
40
  return;
38
41
  try {
39
- const deltaX = x - dragData.startX;
40
- const deltaY = y - dragData.startY;
42
+ const cursorScreenPoint = electron_1.screen.getCursorScreenPoint();
43
+ const display = electron_1.screen.getDisplayNearestPoint(cursorScreenPoint);
44
+ const scaleFactor = display.scaleFactor;
45
+ const scaledX = x / scaleFactor;
46
+ const scaledY = y / scaleFactor;
47
+ const deltaX = scaledX - dragData.startX;
48
+ const deltaY = scaledY - dragData.startY;
41
49
  const newX = dragData.windowStartX + deltaX;
42
50
  const newY = dragData.windowStartY + deltaY;
43
51
  currentWindow.setBounds({
44
- x: newX,
45
- y: newY,
52
+ x: Math.round(newX),
53
+ y: Math.round(newY),
46
54
  width: dragData.originalSize[0],
47
55
  height: dragData.originalSize[1]
48
56
  }, true);
@@ -59,10 +67,10 @@ electron_1.ipcMain.on('electron-drag:stop', () => {
59
67
  const currentBounds = currentWindow.getBounds();
60
68
  try {
61
69
  currentWindow.setBounds({
62
- x: currentBounds.x,
63
- y: currentBounds.y,
64
- width: dragData.originalSize[0],
65
- height: dragData.originalSize[1]
70
+ x: Math.round(currentBounds.x),
71
+ y: Math.round(currentBounds.y),
72
+ width: Math.round(dragData.originalSize[0]),
73
+ height: Math.round(dragData.originalSize[1])
66
74
  }, true);
67
75
  if (dragData.originalResizable !== undefined) {
68
76
  currentWindow.setResizable(dragData.originalResizable);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "electron-drag-plus",
3
- "version": "1.0.7",
3
+ "version": "1.0.8",
4
4
  "description": "简单高效的Electron窗口拖拽库,支持自定义拖拽区域和交互元素,适用于无边框窗口应用",
5
5
  "main": "dist/index.js",
6
6
  "browser": "dist/renderer.js",