Skip to content

Conversation

@sanskarprasad
Copy link
Contributor

No description provided.

sanskarprasad and others added 16 commits April 28, 2025 16:57
…hanges:

`
Fix logging, scope mod to taskbar process, and optimize polling loop

- Fixed incorrect use of Wh_Log by embedding format specifiers directly in the first argument
- Restricted mod initialization to the explorer.exe process that owns the taskbar using EnumWindows and a proper CALLBACK
- Replaced lambda with a static BOOL CALLBACK function to match WNDENUMPROC signature
- Improved performance by:
  - Increasing polling interval to 100ms when idle
  - Skipping edge checks when mouse hasn't moved
`
@m417z
Copy link
Member

m417z commented May 2, 2025

This means it will stop working on setups like this:

image

Making it work perfectly can be tricky, but perhaps it can at least be an option for either per-monitor edges or global edges. What do you think?

@sanskarprasad
Copy link
Contributor Author

Is there a way to detect this orientation(setup) like this?
Then simple if-else would work
, or we have to consider giving the user an option (per-monitor or global)

@m417z
Copy link
Member

m417z commented May 2, 2025

I don't think there's an easy way to detect it. But even if it was, I can imagine that some users might prefer to have these areas only:

image

And some might prefer these (e.g. if they mostly use monitor 1):

image

The ideal is probably to have this, but it can be tricky to support any monitor arrangement this way:

image

@sanskarprasad
Copy link
Contributor Author

There can be three modes
Per‑monitor edges (what wehave today)

Global bounding‑rectangle edges (the leftmost/rightmost X of the entire virtual screen)

Outline edges (only those monitor‑edges that actually lie on the outside of the union of all monitors)

what do you think

@m417z
Copy link
Member

m417z commented May 2, 2025

I think outline edges is the preferable behavior in most case (my third screenshot), but you'll have to iterate over all monitors and understand which edge is outline and which isn't.

There can also be cases in which only part of an edge is outline:

image

@sanskarprasad
Copy link
Contributor Author

Yes and there can be a function for detecting if there's a change in the orientation of the monitors.

so no unnecessary triggers occus at the top and bottom edge.
@m417z
Copy link
Member

m417z commented Oct 5, 2025

I see that you pushed an update, let me know if it's ready for review/merge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants