Commit graph

728 commits

Author SHA1 Message Date
Cheng Zhao
75ccec7996
docs: recommend setting e.returnValue (#33628) 2022-04-07 09:39:51 +02:00
David Sanders
0ac6d74536
docs: mark platform-specific functionality for BrowserWindow (#33512) 2022-04-04 18:00:45 +09:00
Calvin
f69b59effc
feat: add WCO title bar style setters (#33066)
* feat: add wco title bar style setters

* return after throwing
2022-03-24 20:02:45 -04:00
Charles Kerr
0af2b8de73
docs: mark skipTaskbar as unsupported on Linux (#33226)
Fixes #33124.
2022-03-22 15:12:20 +09:00
Shelley Vohr
db79734bfb
feat: support more color formats for backgroundColor (#31868) 2022-03-21 18:35:54 +01:00
CanadaHonk
37a904c299
docs: specify default for BrowserWindow's center option (#33264) 2022-03-15 10:48:25 -07:00
Makonede
12aa991df2
Fix a typo (#33042) 2022-03-07 17:17:12 -05:00
Tobias Nießen
2289a52fb3
docs: fix typo in BrowserWindow description (#32667) 2022-02-01 12:47:49 +01:00
Michaela Laurencin
2f0d5651a9
feat: add WCO height option (#31222)
* feat: add WCO height option

* add docs and mac functionality

* add macOS functionality and height lowerbound

* Update docs/api/browser-window.md

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>

* update macOS functionality

* add chromium related notes

* add test and fix pixel under button bug and fix typo

* revert changes to docs/api/frameless-window.md

* modify `useCustomHeight` calls

* update `useCustomHeight` and `getCurrentMargin`

* modify margin calculation

* fix minimum custom height on macOS

* Update window_buttons_proxy.mm

* fix specified traffic light positions

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2022-01-24 17:09:21 -05:00
David Sanders
fac61122d5
docs: fix anchors for broken relative links (#32478) 2022-01-17 16:36:19 +09:00
David Sanders
bd861e5079
docs: fix note for will-move event (#32362) 2022-01-10 11:02:16 +01:00
Jeremy Rose
d44a187d0b
feat: remove nativeWindowOpen option (#29405)
Co-authored-by: Cheng Zhao <zcbenz@gmail.com>
Co-authored-by: Milan Burda <milan.burda@gmail.com>
2022-01-06 09:28:03 -08:00
Milan Burda
e6b1d95a1c
docs: type names changed from wrapper to primitive (#31752) 2021-11-15 22:13:18 -06:00
Milan Burda
3332420886
docs: win.getParentWindow() returns BrowserWindow | null (#31548) 2021-10-25 11:10:33 -04:00
Erick Zhao
c3a8ad254a
docs: add window customization guide (#31054)
* docs: add window customization guide

* fixes

* Update docs/api/browser-window.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/api/browser-window.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/fiddles/windows/manage-windows/frameless-window/index.html

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/tutorial/window-customization.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* fix code fence

Co-authored-by: Mark Lee <malept@users.noreply.github.com>
2021-10-19 09:58:35 +09:00
Shelley Vohr
629d8913f6
fix: maximized state calculation for non-resizable windows (#30989) 2021-09-21 12:04:32 +02:00
Erick Zhao
54b44584fa
chore: correct hierarchy of BrowserWindow headings (#30905)
* chore: correct hierarchy of BrowserWindow headings

* Update docs/api/browser-window.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/api/browser-window.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

* Update docs/api/browser-window.md

Co-authored-by: Mark Lee <malept@users.noreply.github.com>

Co-authored-by: Mark Lee <malept@users.noreply.github.com>
2021-09-15 09:41:37 +09:00
Erick Zhao
6669abf38d
docs: clarify platform-specific usage of the acceptFirstMouse option (#30522) 2021-08-16 14:13:02 +02:00
Michaela Laurencin
41646d1168
feat: enable windows control overlay on Windows (#29600)
* rebase "feat: enable windows control overlay on Windows"

* correct compilation error

* fix linting errors

* modify includes and build file

* change `hidden` option to `overlay`

* add patch to fix visual layout

* add button background color parameter

* add button text color parameter

* modify `overlay` in docs and modify button hover/press transition color

* change `text` to `symbol`

* remove todo and fix `text` replacement

* add new titleBarOverlay property and remove titleBarStyle `overlay`

* update browser and frameless window docs

* remove chromium patches

* chore: update patches

* change button hover color, update trailing `_`, update test file

* add dchecks, update title bar drawing checks, update test file

* modify for mac and linux builds

* update docs with overlayColor and overlaySymbolColor

* add corner and side hit test info

* modify docs and copyright info

* modify `titlebar_overlay_` as boolean or object

* move `title_bar_style_ to `NativeWindow`

* update docs with boolean and object titlebar_overlay_

* add `IsEmpty` checks

* move get options for boolean and object checks

* fix linting error

* disable `use_lld` for macos

* Update docs/api/frameless-window.md

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>

* Update docs/api/frameless-window.md

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>

* Update docs/api/frameless-window.md

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>

* Apply docs suggestions from code review

Co-authored-by: Jeremy Rose <jeremya@chromium.org>

* modify `true` option description `titleBarOverlay`

* ci: cleanup keychain after tests on arm64 mac (#30472)

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
2021-08-11 14:07:36 -04:00
John Kleinschmidt
1f8a46c9c6
feat: enable window controls overlay on macOS (#29253)
* feat: enable windows control overlay on macOS

* address review feedback

* chore: address review feedback

* Address review feedback

* update doc per review

* only enable WCO when titleBarStyle is overlay

* Revert "only enable WCO when titleBarStyle is overlay"

This reverts commit 1b58b5b1fcb8f091880a4e5d1f8855399c44afad.

* Add new titleBarOverlay property to manage feature

* spelling fix

* Update docs/api/frameless-window.md

Co-authored-by: Samuel Attard <sam@electronjs.org>

* Update shell/browser/api/electron_api_browser_window.cc

Co-authored-by: Samuel Attard <sam@electronjs.org>

* update per review feedback

Co-authored-by: Samuel Attard <sam@electronjs.org>
2021-07-01 15:25:40 -04:00
Samuel Attard
8446ce1fc7
feat: add new imageAnimationPolicy webpref and webContents setter (#29095) 2021-06-08 11:00:22 +09:00
Samuel Maddock
f9d2a7077e
feat: include resize edge with will-resize event (#29199)
* feat: emit resize edge with will-resize event

fix: wparam type

fix: private member usage on mac

docs: will-resize event edge option

refactor: 'info' -> 'details' for better type gen

* Update docs/api/browser-window.md

Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>

* Update docs/api/browser-window.md

Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
2021-06-02 11:37:10 +09:00
Cheng Zhao
4073599f59
fix: remove background color hack in vibrancy (#29114) 2021-05-14 11:05:34 +02:00
Erick Zhao
8f8708680f
docs: rework sandbox guide (#28978)
* docs: rework sandbox guide

* update doc name

* add missing comment to code sample

* Update docs/tutorial/sandbox.md

Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>

* Update docs/tutorial/sandbox.md

Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>

* Update docs/tutorial/sandbox.md

Co-authored-by: Biru Mohanathas <birunthan@mohanathas.com>

* load https in the examples

* change `process` docs to Electron's

* remove bit on chrome://sandbox page

* Update docs/tutorial/sandbox.md

Co-authored-by: Jeremy Rose <nornagon@nornagon.net>

* Update docs/tutorial/sandbox.md

Co-authored-by: Jeremy Rose <nornagon@nornagon.net>

* clarify sandbox default posture

* clarify tasks sandboxed renderers need ipc for

* clarify polyfilled preload environment

* emphasize that --no-sandbox is bad

* clarify preload polyfill `require`

* format markdown references properly

Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
Co-authored-by: Biru Mohanathas <birunthan@mohanathas.com>
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
2021-05-06 20:53:55 +09:00
Rajdeep Chatterjee
dd80952877
docs: Added loadFile instead of loadURL in BrowserWindow documentation example (#28829)
* Added loadFile instead of loadURL in the example

For loading a local file the loadFile API is a better way to load any html file in the Renderer process.

Have changed it in the example.

* Changed backticks to single quote to correct for linting error

In order to correct the linting error reported by the bot, I have changed backticks to single quote in the example.
2021-05-03 13:56:33 -04:00
Jeremy Rose
583660a85a
docs: fix unintentional emoji in win.getMediaSourceId description (#28767) 2021-04-22 10:56:25 -07:00
Samuel Attard
79077f6df9
chore: remove app.allowRendererProcessReuse (#26874) 2021-04-21 13:59:11 -07:00
Shelley Vohr
11199d8824
feat: add BrowserWindow.isFocusable() (#28642) 2021-04-21 12:32:19 +02:00
Jeremy Rose
f8bdef5349
feat: enable nativeWindowOpen by default (#28552)
* feat: enable nativeWindowOpen by default

* set nativeWindowOpen: false on spec/ main window

* update snapshots

* fix tests

* fix test

* fix webview test missing allowpopups

* fix other test

* update default
2021-04-13 15:36:38 -04:00
Jeremy Rose
dba4df9326
feat: add more info in setWindowOpenHandler details (#28518)
* fix: invoke the window open handler for _blank links

* feat: add disposition to setWindowOpenHandler details

* fix: pass postData to new-window event

* postData can be heterogeneous

* fix type of postBody

* fix type of UploadFile and UploadRawData to be discriminated unions

* exclude the empty string from additionalFeatures

* add a test

* add postBody and referrer to setWindowOpenHandler args

* appease typescript

* Update api-browser-window-spec.ts

* update snapshots
2021-04-13 15:35:27 -04:00
Milan Burda
da8c35e3b2
chore: remove deprecated worldSafeExecuteJavaScript option (#28456) 2021-04-08 12:03:57 -04:00
Will Anderson
8c3165434a
docs: update Node global symbols example to use contextBridge (#28245)
* docs: update Node global symbols example to use contextBridge

* Trigger Build

* docs: change Node API example to show how to expose a crypto API

Co-authored-by: Jeremy Rose <nornagon@nornagon.net>

* docs: Fix lint warning for crypto code sample

* docs: update node API example description to emphasize APIs instead of symbols

Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
2021-03-22 11:01:12 +09:00
Samuel Attard
b045d42b0e
docs: document the parameter structure of hookWindowMessage (#28189)
Fixes #28178
2021-03-16 17:54:41 +09:00
Milan Burda
5b205731f6
chore: remove deprecated remote module (#25734)
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
2021-03-09 17:12:40 -08:00
Shelley Vohr
d9997c303f
fix: capturePage not resolving with hidden windows (#27883) 2021-03-09 05:51:44 -08:00
Erick Zhao
9ccb8f5910
docs: update WebPreferences default values for Electron 12 (#27984)
Updates the values for `contextIsolation` and `worldSafeExecuteJavaScript` for Electron 12.
2021-03-08 09:56:50 +09:00
Stewart Lord
5f5afaae27
feat: add win.setTopBrowserView() so that BrowserViews can be raised (#27007)
* feat: Raise a browser view via `BrowserWindow.setTopBrowserView()`.

This is similar to removing and re-adding a browser view, but avoids a visible flicker as the browser view is not removed from the window when using `setTopBrowserView`. Note: if the given browser view is not attached to the window, it will be added.

This commit contains the macOS implementation.

* feat: setTopBrowserView support for Windows and Linux

* docs: add info about setTopBrowserView

* docs: Clarify behavior when browserView is not yet attached.

* fix: throw en error when browserView is not attached to the window

* fix: build error

* fix: test

* fix: add test case

* fix: tests

* fix: reparenting

* fix: close second window in tests

Co-authored-by: sentialx <sentialx@gmail.com>
2021-02-10 16:23:35 +09:00
Cheng Zhao
af4a050a1b
feat: add roundedCorners option for BrowserWindow (#27572)
* feat: add roundedCorner option for BrowserWindow

* Make roundedCorner work with vibrancy views

* roundedCorner => roundedCorners
2021-02-09 08:38:35 -08:00
Cyrus Roshan
444ad26f89
feat: add option to not transform processes on win.SetVisibleOnAllWorkspaces (#27200)
* fix: optionally transform processes on win.SetVisibleOnAllWorkspaces on macOS, making it backwards-compatible with v9.2.1 (#27101)

* fix: optionally transform processes on win.SetVisibleOnAllWorkspaces on macOS, making it backwards-compatible with v9.2.1 (#27101)

Co-authored-by: Cyrus Roshan <cyrusroshan@users.noreply.github.com>
2021-02-02 21:24:04 +09:00
Cheng Zhao
8bf66f8974
fix: clean up implementations of titleBarStyle (#27489)
* Rewrite titleBarStyle impls with WindowButtonsView

* Remove fullscreenWindowTitle option

* Make buttons show correctly under RTL

* Fix docs about traffic lights position

* Fix test on fullscreen resizable

* Fix button states with closabe/minimizable/fullscreenable

* Fix typo

* Deprecate the fullscreenWindowTitle option
2021-01-30 17:15:10 -06:00
Cheng Zhao
c3091c3a70
fix: make SetWindowButtonVisibility work for customButtonsOnHover (#27073) 2021-01-19 19:12:09 +09:00
theLMGN
b531123b4d
docs: NSVisualEffectMaterialDark has been deprecated and removed as of macOS 10.15 (#27125)
* NSVisualEffectMaterialDark has been deprecated and removed as of macOS 10.15.

* Update browser-window.md
2021-01-05 13:39:07 -08:00
Cheng Zhao
5f99569b6c
feat: make win.setAspectRatio() work on Windows (#26941)
* feat: make win.setAspectRatio() work on Windows

* update patches

Co-authored-by: Electron Bot <electron@github.com>
2021-01-05 17:17:33 +09:00
Cheng Zhao
e01b1831d9
feat: make trafficLightPosition work for customButtonOnHover (#26789) 2020-12-16 14:30:39 +09:00
Milan Burda
19954126e0
chore: remove deprecated extension APIs (#26696) 2020-11-30 14:40:56 -08:00
Shiranka Miskin
ec85a91472
docs: update contextIsolation documentation on access to globals (#19732) 2020-11-18 15:24:00 +09:00
Samuel Maddock
83d30c5c2a
feat: add 'resized' event to BrowserWindow (#26216)
Also adds 'moved' event to BrowserWindow on Windows.
2020-11-11 19:27:24 -05:00
David Sanders
43dbd1bdf8
chore: cleanup whitespace in docs (#26356) 2020-11-05 14:12:43 -08:00
Samuel Maddock
10a209ecba
feat: add webPreferences.enablePreferredSizeMode (#25874)
* feat: add preferredSizeMode preference

* docs: webPreferences.preferredSizeMode and event

* docs: better explain preferred size

* docs: small improvement

* refactor: preferredSizeMode -> enablePreferredSizeMode
2020-10-21 15:44:19 -07:00
Ben Russert
bf68405a2f
feat: support exclude from capture on Windows (#24274)
* feat: support exclude from capture on Windows

Check for WDA_EXCLUDEFROMCAPTURE support, and fallback to WDA_MONITOR. Windows versions that support exclude from capture will exclude the window entirely when `setContentProtection` is enabled similar to how Mac behaves. Fall back to `WDA_MONITOR` for windows verisions that do not support.

This flag is mentioned at the very end of a Microsoft blog post here: https://blogs.windows.com/windowsdeveloper/2019/09/16/new-ways-to-do-screen-capture/
Use WDA_EXCLUDEFROMCAPTURE for content protection on windows

Starting with Windows 10, version 2004 this will exclude a window similar to the expected behavior on mac. It is safe to use WDA_EXCLUDEFROMCAPTURE on older Windows versions, as it will still behave as if WDA_MONITOR is applied.
https://github.com/microsoft/Windows.UI.Composition-Win32-Samples/issues/64#issuecomment-697074762

See the docs here: https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setwindowdisplayaffinity

* docs: update setContentProtection docs

Update `setContentProtection` docs with `WDA_EXCLUDEFROMCAPTURE` info. This is to support screen capture fully excluding a particular window instead of showing it as a black screen.
2020-10-16 20:02:49 +09:00