node-mac-recorder 2.17.7 → 2.17.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-mac-recorder",
3
- "version": "2.17.7",
3
+ "version": "2.17.8",
4
4
  "description": "Native macOS screen recording package for Node.js applications",
5
5
  "main": "index.js",
6
6
  "keywords": [
@@ -112,7 +112,7 @@ NSString* getCursorType() {
112
112
  [elementRole isEqualToString:@"AXTooltip"]) {
113
113
  cursorType = @"help";
114
114
  }
115
- // RESIZE CURSORS
115
+ // RESIZE CURSORS - sadece AXSplitter için
116
116
  else if ([elementRole isEqualToString:@"AXSplitter"]) {
117
117
  // Get splitter orientation to determine resize direction
118
118
  CFStringRef orientation = NULL;
@@ -120,34 +120,23 @@ NSString* getCursorType() {
120
120
  if (error == kAXErrorSuccess && orientation) {
121
121
  NSString *orientationStr = (__bridge_transfer NSString*)orientation;
122
122
  if ([orientationStr isEqualToString:@"AXHorizontalOrientation"]) {
123
- cursorType = @"row-resize"; // vertical splitter -> row resize
123
+ cursorType = @"ns-resize"; // Yatay splitter -> dikey hareket (north-south)
124
+ } else if ([orientationStr isEqualToString:@"AXVerticalOrientation"]) {
125
+ cursorType = @"col-resize"; // Dikey splitter -> yatay hareket (east-west)
124
126
  } else {
125
- cursorType = @"col-resize"; // horizontal splitter -> col resize
127
+ cursorType = @"default"; // Bilinmeyen orientation
126
128
  }
127
129
  } else {
128
- cursorType = @"col-resize"; // default
130
+ cursorType = @"default"; // Orientation alınamazsa default
129
131
  }
130
132
  }
131
- // SCROLL CURSORS - sadece gerçek scroll kontrollerinde
133
+ // SCROLL CURSORS - hep default olsun, all-scroll görünmesin
132
134
  else if ([elementRole isEqualToString:@"AXScrollBar"]) {
133
- // Check orientation for scroll direction
134
- CFStringRef orientation = NULL;
135
- error = AXUIElementCopyAttributeValue(elementAtPosition, CFSTR("AXOrientation"), (CFTypeRef*)&orientation);
136
- if (error == kAXErrorSuccess && orientation) {
137
- NSString *orientationStr = (__bridge_transfer NSString*)orientation;
138
- if ([orientationStr isEqualToString:@"AXVerticalOrientation"]) {
139
- cursorType = @"ns-resize"; // vertical scrollbar
140
- } else {
141
- cursorType = @"col-resize"; // horizontal scrollbar
142
- }
143
- } else {
144
- cursorType = @"default"; // fallback to default
145
- }
135
+ cursorType = @"default"; // ScrollBar'lar için de default
146
136
  }
147
- // AXScrollArea için sadece belirli durumlarda all-scroll, çoğunlukla default
137
+ // AXScrollArea - hep default
148
138
  else if ([elementRole isEqualToString:@"AXScrollArea"]) {
149
- // ScrollArea genellikle default olmalı, sadece özel durumlar için all-scroll
150
- cursorType = @"default";
139
+ cursorType = @"default"; // ScrollArea her zaman default
151
140
  }
152
141
  // CROSSHAIR CURSORS (drawing/selection tools)
153
142
  else if ([elementRole isEqualToString:@"AXCanvas"] ||
@@ -196,22 +185,38 @@ NSString* getCursorType() {
196
185
  // Sadece çok kenar köşelerde resize cursor'ı göster
197
186
  BOOL isOnBorder = NO;
198
187
 
199
- // Corner resize detection - çok dar alanda
200
- if ((x <= edge && y <= edge) || (x >= w-edge && y >= h-edge)) {
201
- cursorType = @"nwse-resize";
188
+ // Corner resize detection - çok dar alanda, doğru açılar
189
+ if (x <= edge && y <= edge) {
190
+ cursorType = @"nwse-resize"; // Sol üst köşe - northwest-southeast
202
191
  isOnBorder = YES;
203
192
  }
204
- else if ((x >= w-edge && y <= edge) || (x <= edge && y >= h-edge)) {
205
- cursorType = @"nesw-resize";
193
+ else if (x >= w-edge && y <= edge) {
194
+ cursorType = @"nesw-resize"; // Sağ üst köşe - northeast-southwest
195
+ isOnBorder = YES;
196
+ }
197
+ else if (x <= edge && y >= h-edge) {
198
+ cursorType = @"nesw-resize"; // Sol alt köşe - southwest-northeast
199
+ isOnBorder = YES;
200
+ }
201
+ else if (x >= w-edge && y >= h-edge) {
202
+ cursorType = @"nwse-resize"; // Sağ alt köşe - southeast-northwest
206
203
  isOnBorder = YES;
207
204
  }
208
205
  // Edge resize detection - sadece çok kenarlarda
209
- else if ((x <= edge || x >= w-edge) && y > edge && y < h-edge) {
210
- cursorType = @"col-resize";
206
+ else if (x <= edge && y > edge && y < h-edge) {
207
+ cursorType = @"col-resize"; // Sol kenar - column resize (yatay)
208
+ isOnBorder = YES;
209
+ }
210
+ else if (x >= w-edge && y > edge && y < h-edge) {
211
+ cursorType = @"col-resize"; // Sağ kenar - column resize (yatay)
212
+ isOnBorder = YES;
213
+ }
214
+ else if (y <= edge && x > edge && x < w-edge) {
215
+ cursorType = @"ns-resize"; // Üst kenar - north-south resize (dikey)
211
216
  isOnBorder = YES;
212
217
  }
213
- else if ((y <= edge || y >= h-edge) && x > edge && x < w-edge) {
214
- cursorType = @"row-resize";
218
+ else if (y >= h-edge && x > edge && x < w-edge) {
219
+ cursorType = @"ns-resize"; // Alt kenar - north-south resize (dikey)
215
220
  isOnBorder = YES;
216
221
  }
217
222