* refactor: move uv_setup_args() calls to startup
* refactor: call base::CommandLine::Init() before ContentMain()
* feat: add ElectronCommandLine::AsUtf8()
* refactor: call base::CommandLine::Init() before NodeMain()
* refactor: use ElectronCommandLine::AsUtf8() in NodeMain()
* fix: -Wunsafe-buffer-usage warning in ElectronCommandLine::Init()
* chore: add a DCHECK to confirm ElectronCommandLine was initialized before AsUtf8() is called
* chore: const correctness in ElectronCommandLine::Init() args
* chore: add ElectronCommandLine to macOS Electron Helper app
* chore: move argc, argvc setup into electron_library_main on macOS
* chore: revert BUILD.gn changes
* fix: WideToUTF8() call in ElectronCommandLine::AsUtf8()
* build: add uv to the include paths for app/electron_main_linux
* build: add uv to the include paths for app/electron_library_main.mm
* chore: revert unrelated changes
these were intended for another branch
* refactor: BaseWindow::OnExecuteAppCommand() now takes a std::string_view
* refactor: NativeWindow::NotifyWindowExecuteAppCommand() takes a std::string_view
* refactor: AppCommandToString() returns a std::string_view, is now constexpr
* refactor: make kBrowserBackward, kBrowserForward inline constexpr std::string_view
Xref: https://abseil.io/tips/140https://groups.google.com/a/chromium.org/g/chromium-dev/c/jROTxMo_m2Q/m/HgciN2KsAgAJ
* refactor: use inline constexpr string_view for kDevice*Key constants
Xref: https://abseil.io/tips/140https://groups.google.com/a/chromium.org/g/chromium-dev/c/jROTxMo_m2Q/m/HgciN2KsAgAJ
* refactor: IsEnvSet now takes a base::cstring_view
* refactor: use inline constexpr cstring_view for kRunAsNode
* refactor: use inline constexpr string_view for kPDF*PluginName
* refactor: use base::FilePath::FromASCII() since "internal-pdf-viewer" is ascii
* chore: remove unused shell/common/electron_constants.cc
* fixup! refactor: IsEnvSet now takes a base::cstring_view
* perf: prefer NewFromUtf8Literal() over NewFromUtf8() for string literals
the string length is known at compile time and no need to call ToLocalChecked()
* perf: string length is known when calling NewFromUtf8(), so use it
* perf: remove unnecessary calls to c_str()
these just force the code being called to have to recalculate the string length
* chore: move as_byte_span() to new shell/common/mac_util.h
this way it can be used by multiple mm files
* fix: -Wunsafe-buffer-usage warnings in UNNotificationResponseToNSDictionary
* refactor: use base::HexEncode() instead of rolling our own
* fixup! chore: move as_byte_span() to new shell/common/mac_util.h
* fixup! chore: move as_byte_span() to new shell/common/mac_util.h
fix: move mac_util to the right place in filenames.gni
* chore: bump chromium in DEPS to 131.0.6756.0
* chore: update disable_hidden.patch
no code changes; just handling upstream context shear
https://chromium-review.googlesource.com/c/chromium/src/+/5887019
* chore: update feat_expose_raw_response_headers_from_urlloader.patch
Factor out URLLoader's URLRequest configuration into a helper
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5902254
* chore: update fix_disabling_background_throttling_in_compositor.patch
no manual changes; patch applied with fuzz 1
* chore: e patches all
* 5882129: Fix basic auth issues for sub frame and sub resources | https://chromium-review.googlesource.com/c/chromium/src/+/5882129
- Add `is_request_for_navigation` param to
ElectronBrowserClient::CreateLoginDelegate().
- Propagate the flag as another undocumented property
in the app.login Event's authenticationResponseDetails object
- Side cleanup: also in CreateLoginDelegate(), use upstream's name
for the `is_request_for_main_frame` param, renamed back in
https://chromium-review.googlesource.com/c/chromium/src/+/3256171
* 5875189: [FSA] Check for DANGEROUS extension types when creating a new file. | https://chromium-review.googlesource.com/c/chromium/src/+/5875189
* chore: node ./script/gen-libc++-filenames.js
* chore: bump chromium in DEPS to 131.0.6758.0
* chore: bump chromium in DEPS to 131.0.6760.0
* chore: update patches
* [A11y] Remove Accessibility Object Model (AOM)
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5896593
* chore: bump chromium in DEPS to 131.0.6762.0
* [heap] Remove deprecated V8 flag
Refs https://chromium-review.googlesource.com/c/v8/v8/+/5904046
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
* refactor: const correctness
* refactor: extract-method AsarFileValidator::EnsureHashExists()
* refactor: replace use of deprecated crypto API
https://crbug.com/364687923
* refactor: use span API in AsarFileValidator::OnRead()
* refactor: replace use of deprecated crypto API
https://crbug.com/364687923
* fixup! refactor: use span API in AsarFileValidator::OnRead()
fix: electron-ia32-testing FTBFS
perf: use ArrayBuffer::Data() API
Replace our `GetBackingStore()->Data()` calls with this instead.
Explained by the V8 docs, ArrayBuffer.Data() is
> More efficient shortcut for GetBackingStore()->Data(). The
> returned pointer is valid as long as the ArrayBuffer is alive.
fix: -Wunsafe-buffer-usage warnings in ElectronComponentExtensionResourceManager::AddComponentResourceEntries()
just replace pointer-and-length args with a span
* fix: do not build electron_plugin_info_host_impl.cc when plugins are disabled
it fails to build from source with this error:
../../content/public/browser/plugin_service.h:17:2: error: "Plugins should be enabled"
17 | #error "Plugins should be enabled"
* fix: FTBFS in printing_utils.cc when ENABLE_PDF is false
* fixup! fix: do not build electron_plugin_info_host_impl.cc when plugins are disabled
fix BUILD.gn linting
* feat: add error event for utility process
* chore: use public report api
* chore: fix lint
* doc: mark error event as experimental
---------
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
* fix: -Wunsafe-buffer-usage warnings in GdkPixbufFromSkBitmap()
* refactor: don't change previous behavior for 0-height images
Is a 0x0 image even a thing? I'm not sure; but just in case, let's
treat it the same way the previous implementation did.
test: expect a `sender-pid` hint in Linux notifications.
This PR ensures that the `sender-pid` hint is set for new notifications.
It also updates the spec to confirm that DBus receives the hint and that
it has the correct value.
This fixes a spec failure when running libnotify >= 0.7.12 (2022-05-05).
Starting with that version, libnotify started injecting `sender-pid` if
not provided by the client. So our tests received a slightly different
DBus payload depending on what version of libnotify was installed,
causing our deep-equals tests to fail.
By always providing and testing the `sender-pid` hint, our behavior and
tests should be consistent across distros.
Right now DelayedNativeViewHost attaches its underlying native view
when it's being attached to a widget but it doesn't detach it when
it's being detached. It may lead to use-after-free and crash.
Add a `base::WeakPtr<WebContents>` field to SerialChooserController and
stop subclassing from WebContentsObserver. This follows the Observer docs:
> don't create a `WebContentsObserver` just to be able to check
> for a null `WebContentsObserver::web_contents()`.
> Use a `base::WeakPtr<WebContents>` instead.