feat: allow setting window shape (#13789)
This binds Widget::SetShape, an API that already exists in Chromium (for Windows and Linux). It's a more reliable method of having some parts of your window be "click-through" than the current `setIgnoreMouseEvents` API, which messes around with the `WS_EX_LAYERED` window style on Windows, causing strange bugs and incompatibility with hardware acceleration.
This commit is contained in:
parent
b22ac5f0a2
commit
3bdff2d238
4 changed files with 28 additions and 0 deletions
|
@ -928,6 +928,17 @@ describe('BrowserWindow module', () => {
|
|||
})
|
||||
})
|
||||
|
||||
describe('BrowserWindow.setShape(rects)', () => {
|
||||
it('allows setting shape', () => {
|
||||
assert.doesNotThrow(() => {
|
||||
w.setShape([])
|
||||
w.setShape([{x: 0, y: 0, width: 100, height: 100}])
|
||||
w.setShape([{x: 0, y: 0, width: 100, height: 100}, {x: 0, y: 200, width: 1000, height: 100}])
|
||||
w.setShape([])
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
describe('"useContentSize" option', () => {
|
||||
it('make window created with content size when used', () => {
|
||||
w.destroy()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue