node-mac-recorder 1.9.0 → 1.11.0
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/index.js +2 -3
- package/package.json +1 -1
- package/src/window_selector.mm +13 -0
package/index.js
CHANGED
|
@@ -167,9 +167,8 @@ class MacRecorder extends EventEmitter {
|
|
|
167
167
|
targetDisplayId = display.id; // Use actual display ID, not array index
|
|
168
168
|
// Koordinatları display'e göre normalize et
|
|
169
169
|
adjustedX = targetWindow.x - display.x;
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
adjustedY = targetWindow.y - display.y;
|
|
170
|
+
// Y koordinat düzeltmesi - window selector overlay ile sync için
|
|
171
|
+
adjustedY = Math.max(0, targetWindow.y - display.y - 22);
|
|
173
172
|
break;
|
|
174
173
|
}
|
|
175
174
|
}
|
package/package.json
CHANGED
package/src/window_selector.mm
CHANGED
|
@@ -990,11 +990,24 @@ Napi::Value GetSelectedWindowInfo(const Napi::CallbackInfo& info) {
|
|
|
990
990
|
result.Set("id", Napi::Number::New(env, [[g_selectedWindowInfo objectForKey:@"id"] intValue]));
|
|
991
991
|
result.Set("title", Napi::String::New(env, [[g_selectedWindowInfo objectForKey:@"title"] UTF8String]));
|
|
992
992
|
result.Set("appName", Napi::String::New(env, [[g_selectedWindowInfo objectForKey:@"appName"] UTF8String]));
|
|
993
|
+
// Original CGWindow coordinates
|
|
993
994
|
result.Set("x", Napi::Number::New(env, [[g_selectedWindowInfo objectForKey:@"x"] intValue]));
|
|
994
995
|
result.Set("y", Napi::Number::New(env, [[g_selectedWindowInfo objectForKey:@"y"] intValue]));
|
|
995
996
|
result.Set("width", Napi::Number::New(env, [[g_selectedWindowInfo objectForKey:@"width"] intValue]));
|
|
996
997
|
result.Set("height", Napi::Number::New(env, [[g_selectedWindowInfo objectForKey:@"height"] intValue]));
|
|
997
998
|
|
|
999
|
+
// Add overlay coordinates for direct use in recording
|
|
1000
|
+
// These are the exact coordinates used by the recording preview overlay
|
|
1001
|
+
int windowX = [[g_selectedWindowInfo objectForKey:@"x"] intValue];
|
|
1002
|
+
int windowY = [[g_selectedWindowInfo objectForKey:@"y"] intValue];
|
|
1003
|
+
int windowWidth = [[g_selectedWindowInfo objectForKey:@"width"] intValue];
|
|
1004
|
+
int windowHeight = [[g_selectedWindowInfo objectForKey:@"height"] intValue];
|
|
1005
|
+
|
|
1006
|
+
result.Set("overlayX", Napi::Number::New(env, windowX));
|
|
1007
|
+
result.Set("overlayY", Napi::Number::New(env, windowY));
|
|
1008
|
+
result.Set("overlayWidth", Napi::Number::New(env, windowWidth));
|
|
1009
|
+
result.Set("overlayHeight", Napi::Number::New(env, windowHeight));
|
|
1010
|
+
|
|
998
1011
|
// Determine which screen this window is on
|
|
999
1012
|
int x = [[g_selectedWindowInfo objectForKey:@"x"] intValue];
|
|
1000
1013
|
int y = [[g_selectedWindowInfo objectForKey:@"y"] intValue];
|