Comments (7)
Besides, what good is it to know that any one of the multiple Terminal windows is focused?
For your use-case it's not, but this module was not made for your use-case either. The system has no knowledge of what processes you run inside Terminal.app. You could maybe combine this module with some AppleScript to solve your problem.
from active-win.
From the docs:
pid - Process ID of the app owning the window
from active-win.
@stevenvachon Check https://github.com/sindresorhus/active-win#result
It seems you are looking for:
id
- Window ID
not for:
pid
- Process ID of the app owning the window
from active-win.
Yes, I read the docs. I guess that I should have said that getting the app owning the window is useless (to me).
The id
property doesn't seem to align with anything that I can use either, such as process.pid
or require('posix').getppid()
.
Basically, I'm trying to figure out if the current Node.js process' terminal window is focused.
from active-win.
Well, the Node.js process is running in your Terminal app, isn't it?
from active-win.
const {sync:activeWindow} = require('active-win');
const {getppid:parentPID} = require('posix');
console.log(process.pid, parentPID(), activeWindow().id, activeWindow().pid);
//-> 77532 76549 95175 1581
Besides, what good is it to know that any one of the multiple Terminal windows is focused?
from active-win.
I'm not a macOS expert (I'm more on the Linux side) but I imagine that if you have different Terminal windows they will be created by different processes. And if they are created by the same process (same PID), still, they will have a specific window ID.
Here's what I think that could be happening. These are the IDs I think you are getting:
77532
: the current Node.js process. Not because it is what you are running it means that it is the owner / creator of the current window.95175
: the ID of the current window. If you have several Terminal windows open, this ID is the one that identifies the current window from the others.1581
: the process that created / owns the window, probablyTerminal.app
76549
: the parent process of the Node.js process, not necessarilyTerminal.app
, maybe a children ofTerminal.app
, it's probably the PID ofbash
.
from active-win.
Related Issues (20)
- active-win requires the screen recording permission error HOT 2
- Question about Firefox HOT 1
- On windows URL property is not showing HOT 1
- `getOpenWindows` does not return all windows HOT 6
- UnhandledPromiseRejectionWarning: SyntaxError: Unexpected number in JSON at position 10 HOT 8
- `getOpenWindows` does not return fullscreen windows HOT 2
- Error Running Simple Example on Electron Forge HOT 4
- activeWindow.getOpenWindows() z-index HOT 1
- Incorrect Y bounds with second monitor case HOT 2
- active-win not recording .flatpak apps in ubuntu
- Build and release process question HOT 3
- I am getting this error after I Forked repo and installed in my electron app HOT 1
- active-win 8.1.0 reports empty title strings on Adobe products on macOS despite correct permissions HOT 2
- UnhandledPromiseRejectionWarning: SyntaxError: Bad escaped character in JSON at position 12
- getOpenWindows() -> parseMac() -> JSON.parse issues
- I am not able to capture URLs in Firefox browser
- Active win package not working in MAC ventura 13.6.2 and fedora 39 with x11.
- Getting UNCAUGHT EXCEPTION while doing npm run build:windows
- crashes on latest version of ubuntu and fedora( linux based systems)
- App keeps askig for accessibilityPermission even if accessibilityPermission: false HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from active-win.