From a970f173f9040702fa66ab7112fcb6621ae69021 Mon Sep 17 00:00:00 2001 From: Saketh Date: Fri, 8 Aug 2025 16:30:06 -0700 Subject: [PATCH] Trigger Screenshot only on active window change not every 30s --- .../native-windows/macos/ScreenshotManager.mm | 10 ++-------- .../native-windows/macos/activeWindowObserver.mm | 4 ++++ 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/electron-app/src/native-modules/native-windows/macos/ScreenshotManager.mm b/electron-app/src/native-modules/native-windows/macos/ScreenshotManager.mm index cf325273..07930273 100644 --- a/electron-app/src/native-modules/native-windows/macos/ScreenshotManager.mm +++ b/electron-app/src/native-modules/native-windows/macos/ScreenshotManager.mm @@ -20,14 +20,8 @@ @implementation ScreenshotManager { - (void)startPeriodicScreenshotCapture { [self stopPeriodicScreenshotCapture]; - // Take screenshot every 30 seconds - screenshotTimer = [NSTimer scheduledTimerWithTimeInterval:30.0 - target:self - selector:@selector(takeScreenshot) - userInfo:nil - repeats:YES]; - [[NSRunLoop currentRunLoop] addTimer:screenshotTimer forMode:NSRunLoopCommonModes]; - MyLog(@"Screenshot timer started"); + // Remove the periodic timer logic + MyLog(@"Screenshot capture will be triggered by window changes"); } - (void)stopPeriodicScreenshotCapture { diff --git a/electron-app/src/native-modules/native-windows/macos/activeWindowObserver.mm b/electron-app/src/native-modules/native-windows/macos/activeWindowObserver.mm index 55aaf012..dd836dc5 100644 --- a/electron-app/src/native-modules/native-windows/macos/activeWindowObserver.mm +++ b/electron-app/src/native-modules/native-windows/macos/activeWindowObserver.mm @@ -65,6 +65,10 @@ void windowChangeCallback(AXObserverRef observer, AXUIElementRef element, CFStri } } } + // Trigger screenshot capture and OCR + ScreenshotManager *screenshotManager = [[ScreenshotManager alloc] init]; + [screenshotManager takeScreenshot]; + [screenshotManager release]; }); } }