Window occlusion state and event
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- cpp
- Domain
- desktop, operating-systems
Research direction
Start by reviewing the platform APIs named in the proposal: macOS NSWindow.occlusionState and NSWindowDidChangeOcclusionStateNotification, Windows DwmGetWindowAttribute with DWMWA_CLOAKED, and Linux X11 visibility-notify-event. Done means the project has a defined cross-platform occlusion state and event behavior, including the stated platform limitations.
Written by the indexing model from the issue text.
Description
Apps sometimes need to know whether their window is actually visible to the user, not just shown but covered by other windows, for example to pause rendering or video.
Proposal: an occlusion state and event. macOS has it natively (NSWindow.occlusionState / NSWindowDidChangeOcclusionStateNotification); on Windows it can be approximated (DwmGetWindowAttribute(DWMWA_CLOAKED) plus a z-order/visible-region check), and on Linux via visibility-notify-event on X11 only.
Background:
- leanflutter/window_manager#459: listen for the window being covered by another window
- Dominant language
- C++
- Stars
- 34
- Forks
- 7
- Avg merge
- 3d 1h
- Merged PRs (30d)
- 1
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from libnativeapi/nativeapi
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 45/100
libnativeapi/nativeapi#81 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 45/100
libnativeapi/nativeapi#80 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 35/100
libnativeapi/nativeapi#79 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 45/100
libnativeapi/nativeapi#78 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 45/100
libnativeapi/nativeapi#77 ·
All issues in libnativeapi/nativeapi
Similar issues
-
AuTest Bug Tests
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
apache/trafficserver#13714 ·
-
bug build
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
facebookincubator/velox#19143 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
tenstorrent/tt-metal#57393 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
objectionary/eo-graphs#74 ·