SetIgnoreMouseEvents: implement on Linux and support forwarding mouse moves
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, linux, macos
- Domain
- desktop, operating-systems
Research direction
Start with Window::SetIgnoreMouseEvents() in src/platform/linux/window_linux.cpp and inspect the existing SetInputShape() implementation. Read leanflutter/window_manager#94 and #96 for the Linux and forwarding context. Done means the Linux stub is implemented and the requested forward behavior is addressed across the supported platforms, with the scope and platform approach resolved.
Written by the indexing model from the issue text.
Description
Window::SetIgnoreMouseEvents():
- is a stub on Linux (
src/platform/linux/window_linux.cpp); an input shape (gdk_window_input_shape_combine_regionwith an empty region) would do it - has no
forwardoption. Electron'ssetIgnoreMouseEvents(true, {forward: true})still delivers mouse-move events while clicks pass through, so an overlay can detect hovering over its interactive parts and turn click-through off there. On macOS that's a tracking area or a global mouse monitor; on Windows,WS_EX_TRANSPARENTplus a low-level mouse hook or polling.
SetInputShape() (Linux-only so far) covers the "only these regions are clickable" case, and could be a better answer on macOS/Windows too.
Background:
- leanflutter/window_manager#96: the forward parameter does nothing
- leanflutter/window_manager#94: implement setIgnoreMouseEvents on Linux
- 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 ·