* 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.
* chore: bump chromium in DEPS to d5c9bf9e2a18fa508201a88e5803bec1d107b1ae
* chore: bump chromium in DEPS to 45f1316afae33e52c92480b34bf4f7fe4a7db898
* update patches
* WillCreateURLLoaderFactory now gets a ukm_source_id
Refs: 2346803
* ink_drop_visible_opacity -> GetInkDropVisibleOpacity
Refs: 2415368
* chore: bump chromium in DEPS to ddb5b6db5e35ab1a7b5adbd9f15373af6c35ea2a
* 2418471: PDF Viewer update: Add missing aria-labels to various buttons.
2418471
* update printing.patch given print settings mojoification
Refs: 2409467
* update patches
* content::BluetoothChooser::Event -> content::BluetoothChooserEvent
Refs: 2387901
* set_ink_drop_base_color -> SetInkDropBaseColor
Refs: 2419388
* chore: bump chromium in DEPS to ecf7c9ee830d4d85f300b461a2fa13aa40c79a4c
* update patches
* gfx::ConvertPointToPixel -> gfx::ConvertPointToPixels
Refs: 2418568
* remove ContentSettingsObserver::AllowStorage()
Refs: 2401847
* service_manager::kCrashDumpSignal -> kCrashDumpSignal
Refs: 2417073
* chore: bump chromium in DEPS to abdb7ebe5f8c8328b8f435283df90d0a3ecff7bd
* chore: bump chromium in DEPS to 2a7e138ab1066534ceb2622e8a9d2c8ebf574215
* chore: bump chromium in DEPS to ab1884e75ced904e4276851eb4e1ad89919ca93b
* chore: bump chromium in DEPS to a12413902380dcc2a73ac74d582328280a8af686
* Fixup printing patch
2428623
* Fixup OSR patch
2415128
* Make ExtensionURLLoaderFactory always owned by its |receivers_|.
2357523
* Add deprecated_default_sources_assignment_filter variable
2416496
* Fixup patch indices
* Remove several references to BrowserPlugin from content
2401031
* Remove SurfaceEmbeddingTime and LocalSurfaceIdAllocation
2415128
* Add DragOperation and AllowedDragOperations Mojo types
2196167
* chore: bump chromium in DEPS to 378450342cf6aa160663d0ce3a178a11b570c25a
* Fixup patch indices
* Remove SurfaceEmbeddingTime and LocalSurfaceIdAllocation
2415128
* Add DragOperation and AllowedDragOperations Mojo types
2196167
* 2426564: Remove global sources assignment filter value
2426564
* Fixup blink_local_frame.patch
* [XProto] Remove a subset of ui/gfx/x/x11.h
2430328
* Fixup patch indices
* Remove several references to BrowserPlugin from content
2401031
* Remove lossy ConvertSizeToPixel() methods
2419534
* serial: Use USB driver name to disambiguate ports
2413176
* Remove set_sources_filter import
* Fix ModMask usage
* [XProto] Remove usage of all Xlib headers
2392140
* [XProto] Remove usage of Xlib Visuals
2429933
* Skip Angle manifest file
2425197
* Add whole src\third_party\angle\.git directory
This directory is needed in order to properly generate gen/angle/angle_commit.h
* [libvpx] Fix HighBD config on Windows ARM64
2437745
* update patches
* fix: correct calling convention for Windows on Arm
2440717
* Add third_party/angle/.git to the archive before adding the rest of the source
* fixup source caching on Windows
* Fixup erroneous close paren
* fixup for goma issues
* This should work
* chore: bump chromium roll manually
2435142
This landed the day after we paused roller-bot and may resolve the
visibility test flakes that we're seeing. h/t to @jkleinsc for
finding this with me.
* chore: remove obsoleted cherry-pick fix for libvpx
2437745
* chore: remove obsoleted cherry-pick libvpx patch
2437745
* chore: re-export patches
* chore: add tracer comment to visibility-stat-spec.
The line numbers between the source and the CI runs don't seem to match
up, so this temp tracer is to help track the source of that difference.
* chore: bump chromium in DEPS to 7c2b8cc3b8638aee8abeb013042a6c1d15b2da6b
* update patches
* impl SortingLSH service
Refs: 2425327
* 2446525: [Flash] Remove some Flash APIs
2446525
* 2440974: Reland "Delete service_manager/embedder/switches.h"
2440974
* 2359402: Remove ContentBrowserClient::NonNetworkURLLoaderFactoryDeprecatedMap.
2359402
* 2250506: Implement tabs.removeCSS
2250506
* 2429143: Remove implicit-conversion-to-integer ConvertRectToPixel() methods.
2429143
* 2444430: Remove DataElementType::kBlob
2444430
* 2441964: Clean up WebView public API
2441964
* 2357523: Make ExtensionURLLoaderFactory always owned by its |receivers_|.
2357523
* 2461606: Use blink::mojom::PreferredColorScheme instead of blink::PreferredColorScheme
2461606
* 2461235: a11y inspect reorg: move PropertyFilter struct to a new location
2461235
* remove flash support
* fix frame_host_manager patch
* fix lint
* remove flash info from docs
* fix build
* fix osr
* chore: bump chromium in DEPS to 9269f9eb1d98d29564c2b2ab97f30c6e148c4e11
* fix visibilityState tests
* 2463049: Replace all uses of web_pref::AutoplayPolicy with mojom::AutoplayPolicy
2463049
* update patches
* fix tests harder
* 2414921: Add Group and Ungroup functions to Tabs extension API
2414921
* more test fix
* Remove all keyboard related usage of Xlib
Refs: 2436787
* fix linux build
* 2453807: [XProto] Remove usage of Xlib error handling
2453807
* lint
* fixup! 2453807: [XProto] Remove usage of Xlib error handling
* disable CalculateNativeWinOcclusion on win ci
* remove UploadBlob from docs
* Update appveyor.yml
Co-authored-by: Andy Locascio <andy@slack-corp.com>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
Co-authored-by: Electron Bot <anonymous@electronjs.org>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* feat: add worldSafe flag for executeJS results
* chore: do not log warning for webContents.executeJS
* Apply suggestions from code review
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* chore: apply PR feedback
* chore: split logic a bit
* chore: allow primitives through the world safe checl
* chore: clean up per PR feedback
* chore: flip boolean logic
* chore: update per PR feedback
* chore: fix typo
* chore: fix spec
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
Address incorrect typing for isEnabled. The root cause of this was due
to missing backticks which caused the docs parser to think that the
return type of the `isEnabled` function was null, where it was supposed
to be a boolean type.
The side effect of this was that the generated typescript typings were
incorrect for this function.
Fixes#24409
* docs: document what experimental means explicitly
* Apply suggestions from code review
Co-Authored-By: Jeremy Apthorp <jeremya@chromium.org>
* Update experimental.md
Co-authored-by: Jeremy Apthorp <jeremya@chromium.org>
* docs: fix minor grammar error 'punctuations'
* docs: fix minor grammar error pluralizing Chromium
* docs: fix typo 'updateCurrentActiviy'
* docs: use consistent spelling of 'behavior'
* docs: use 'macOS' instead of 'Mac OS' or 'OS X'.
* docs: use 'GTK' instead of 'GTK+'
https://mail.gnome.org/archives/gtk-devel-list/2019-February/msg00000.html
* docs: minor capitalization: use 'TCP' not 'tcp'
* Update docs/development/build-instructions-linux.md
Co-Authored-By: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
* feat: default gtk darkTheme option to nativeTheme.shouldUseDarkColors for better platform support
* chore: update syntax for PR feedback
* refactor: only define SetGTKDarkThemeEnabled when needed
Co-authored-by: Cheng Zhao <zcbenz@gmail.com>
* feat: set app.enableRendererProcessReuse to true by default
* chore: add context aware info to breaking changes doc
* spec: fix nodeIntegration in child windows test for rendererprocessreuse
* spec: fix remote listeners in destroyed renderers spec as the error is now async
* Update api-browser-window-spec.ts
* chore: deprecate affinity
* chore: fix docs
* spec: handle tests crashing without an exist code
* spec: update tests for new rendererprocessreuse default
* spec: with renderer process re-use we get to destroy less views
* feat: custom positioning for traffic light buttons
* remove NSLog and unnecessary call-site in IsVisible()
* no longer need to check if entering fullscreen
* change API to take a point object
Co-authored-by: tonyfwoo <55114329+tonyfwoo@users.noreply.github.com>
* chore: add code required to use chromes spellchecker
* chore: fix linting
* chore: manifests needs buildflags now
* chore: add dictionarySuggestions to the context menu event when the spellchecker is active
* chore: enable by default for windows builds
* chore: add patch to remove incognito usage in the spellchecker
* chore: add dependencies on spellcheck common and flags
* chore: conditionally include spell check panel impl
* chore: fix deps for spellcheck feature flags
* chore: add patch for electron resources
* chore: add dependency on //components/language/core/browser
* chore: patches to make hunspell work on windows
* build: collect hunspell dictionaries into a zip file and publish
* chore: clean up patches
* chore: add docs and set spell checker url method
* chore: fix error handling
* chore: fix hash logic
* build: update hunspell filename generator
* fix: default spellchecker list to the current system locale if we can
* docs: document the language getter
* chore: patch IDS_ resources for linux builds
* feat: add spellcheck webpref flag to disable the builtin spellchecker
* chore: fix docs typo
* chore: clean up spellchecker impl as per feedback
* remove unneeded deps
Sometimes it's necessary to convey more information about the window to screen reader users only (simply putting everything to the window title might be unnecessarily noisy).
For example, Chromium uses that technique to tell screen reader users that the window is in incognito mode (the incognito window looks differently and doesn't have «incognito» in the title, but for blind users the screen reader will announce that it's incognito).