electron/shell/browser/bluetooth/electron_bluetooth_delegate.h

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

106 lines
4.1 KiB
C
Raw Normal View History

// Copyright (c) 2020 Microsoft, Inc.
// Use of this source code is governed by the MIT license that can be
// found in the LICENSE file.
#ifndef ELECTRON_SHELL_BROWSER_BLUETOOTH_ELECTRON_BLUETOOTH_DELEGATE_H_
#define ELECTRON_SHELL_BROWSER_BLUETOOTH_ELECTRON_BLUETOOTH_DELEGATE_H_
#include <memory>
#include <optional>
#include <string>
#include <vector>
#include "base/memory/weak_ptr.h"
chore: remove more unused #include calls (#43000) * chore: in shell/renderer/renderer_client_base.h, remove include media/base/key_systems_support_registration.h last use removed in c670e38b (##41610) * chore: iwyu electron/fuses.h * chore: iwyu media/base/video_frame.h * chore: iwyu base/functional/callback.h * chore: iwyu base/task/cancelable_task_tracker.h * chore: iwyu shell/browser/draggable_region_provider.h * chore: iwyu shell/browser/ui/inspectable_web_contents_view.h * chore: iwyu ui/aura/window.h * chore: iwyu ui/base/win/shell.h * chore: iwyu ui/display/win/screen_win.h * chore: iwyu ui/gfx/geometry/insets.h * chore: iwyu ui/display/display.h * chore: iwyu ui/gfx/geometry/skia_conversions.h * chore: iwyu ui/gfx/geometry/rect_conversions.h * chore: iwyu ui/gfx/geometry/point.h * chore: iwyu ui/gfx/scoped_canvas.h * chore: iwyu ui/gfx/image/image.h * chore: iwyu ui/accessibility/ax_node_data.h * chore: iwyu ui/views/animation/ink_drop_highlight.h * chore: iwyu ui/gfx/font_list.h * chore: iwyu ui/linux/nav_button_provider.h * chore: iwyu shell/browser/ui/views/frameless_view.h * chore: iwyu services/metrics/public/cpp/ukm_source_id.h * chore: iwyu net/http/http_util.h * chore: iwyu net/base/mime_util.h * chore: iwyu content/public/common/content_client.h * chore: iwyu <list> * chore: iwyu <optional> * chore: iwyu <memory> * chore: iwyu base/files/file_path.h * chore: iwyu ui/base/cursor/cursor.h * chore: iwyu build/build_config.h * chore: iwyu content/public/browser/web_contents.h * chore: iwyu shell/browser/hid/hid_chooser_context.h * chore: iwyu shell/common/platform_util.h * chore: iwyu base/task/single_thread_task_runner.h * chore: iwyu content/browser/renderer_host/render_widget_host_impl.h * chore: iwyu content/public/browser/render_widget_host.h * chore: iwyu shell/browser/electron_browser_context.h * chore: iwyu content/public/browser/web_contents_observer.h * chore: iwyu content/public/browser/render_frame_host.h * chore: iwyu content/public/browser/media_stream_request.h * chore: iwyu chrome/common/chrome_paths.h * chore: iwyu chrome/browser/icon_manager.h * chore: iwyu printing/print_settings.h * chore: iwyu renderer/pepper_helper.h * chore: iwyu shell/browser/api/process_metric.h * chore: iwyu shell/browser/electron_browser_client.h * chore: iwyu shell/browser/electron_browser_context.h * chore: iwyu shell/browser/api/electron_api_session.h * chore: iwyu shell/browser/api/electron_api_app.h * chore: iwyu shell/browser/ui/views/client_frame_view_linux.h * chore: iwyu shell/browser/native_window_views.h * chore: iwyu base/win/windows_version.h * chore: iwyu shell/common/electron_paths.h * chore: iwyu content/public/common/content_switches.h * chore: iwyu third_party/skia/include/core/SkRRect.h * chore: iwyu third_party/skia/include/core/SkBitmap.h * chore: iwyu third_party/skia * chore: iwyu shell/browser/osr/osr_host_display_client.h * chore: iwyu shell/browser/login_handler.h * chore: iwyu shell/browser/javascript_environment.h * chore: iwyu shell/browser/event_emitter_mixin.h * fix: mac * fix: mac * chore: iwyu base/nix/xdg_util.h * fix: win * fix: win * fix: win * fix: win
2024-07-25 09:25:45 +00:00
#include "base/values.h"
#include "content/public/browser/bluetooth_delegate.h"
#include "third_party/blink/public/mojom/bluetooth/web_bluetooth.mojom-forward.h"
namespace blink {
class WebBluetoothDeviceId;
}
namespace content {
class RenderFrameHost;
}
namespace device {
class BluetoothDevice;
class BluetoothUUID;
} // namespace device
namespace electron {
// Provides an interface for managing device permissions for Web Bluetooth and
// Web Bluetooth Scanning API. This is the Electron-specific implementation of
// the BluetoothDelegate.
class ElectronBluetoothDelegate : public content::BluetoothDelegate {
public:
ElectronBluetoothDelegate();
~ElectronBluetoothDelegate() override;
// Move-only class.
ElectronBluetoothDelegate(const ElectronBluetoothDelegate&) = delete;
ElectronBluetoothDelegate& operator=(const ElectronBluetoothDelegate&) =
delete;
// BluetoothDelegate implementation:
std::unique_ptr<content::BluetoothChooser> RunBluetoothChooser(
content::RenderFrameHost* frame,
const content::BluetoothChooser::EventHandler& event_handler) override;
std::unique_ptr<content::BluetoothScanningPrompt> ShowBluetoothScanningPrompt(
content::RenderFrameHost* frame,
const content::BluetoothScanningPrompt::EventHandler& event_handler)
override;
chore: bump chromium to 105.0.5173.0 (main) (#34770) * chore: bump chromium in DEPS to 105.0.5147.0 * chore: update chromium/can_create_window.patch Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3642216 fix minor code shear in patch * chore: update chromium/port_autofill_colors_to_the_color_pipeline.patch Xref: chromium/port_autofill_colors_to_the_color_pipeline.patch fix minor code shear in patch * chore: remove chromium/posix_replace_doubleforkandexec_with_forkandspawn.patch Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3727368 Removing upstreamed patch * chore: update patches * chore: update patches * chore: add new enum kOffscreenDocument to switch statement Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3722498 * chore: add stub for new parent virtual method OnNewCropVersion() Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3717305 * chore: remove download_schedule arg from DownloadTargetCallback invocation Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3711096 Clean up DownloadLater flags and prefs * chore: add stub for new parent virtual method OnNewCropVersion() Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3717305 * chore: use base::List for extensions::Event Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3718366 Remove Event constructor overloads that take vector<base::Value> * refactor: replace ClearStorageDataOptions.origin with .storage_key Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3702946 Refactor ClearData to take StorageKey * chore: bump chromium in DEPS to 105.0.5149.0 * chore: update patches * refactor: migrate InspectableWebContents to base::Value::List Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3726326 Migrate DevToolsEmbedderMessageDispatcher to base::Value::List. * refactor: update electron_api_clipboard_mac Clipboard::ReadFindText() Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3721398 Mac: Remove unused FindPasteboard C++ interface * chore: bump chromium in DEPS to 105.0.5151.0 * chore: fix code shear in chromium/build_do_not_depend_on_packed_resource_integrity.patch Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3714995 Move Cart DB proto to //components/commerce * Revert "chore: fix code shear in chromium/build_do_not_depend_on_packed_resource_integrity.patch" This reverts commit f8de4605eb3d35152b186646fefd8e88d1df836b. * chore: fix code shear in chromium/build_do_not_depend_on_packed_resource_integrity.patch Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3714995 Move Cart DB proto to //components/commerce * chore: update patches * chore: update ElectronAccessibilityUIMessageHandler to use base::Value::List Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3733367 Convert /chrome/browser/accessibility away from WebUI::RegisterDeprecatedMessageCallback * chore: bump chromium in DEPS to 105.0.5153.0 * chore: bump chromium in DEPS to 105.0.5155.0 * chore: bump chromium in DEPS to 105.0.5157.0 * chore: bump chromium in DEPS to 105.0.5159.0 * chore: update patches * chore: update CL reference * Replace ContentMainDelegate::InvokedIn with a variant https://chromium-review.googlesource.com/c/chromium/src/+/3705957 * Switch devtools_frontend.mojom to mojom.DictValue. https://chromium-review.googlesource.com/c/chromium/src/+/3726425 * webhid: Bind HID service with service workers https://chromium-review.googlesource.com/c/chromium/src/+/3680562 * chore: fix lint * Don't fire load-complete AX notification on macOS for unfocused windows https://chromium-review.googlesource.com/c/chromium/src/+/3695403 * chore: update patches * chore: bump chromium in DEPS to 105.0.5165.0 * chore: update patches * chore: bump chromium in DEPS to 105.0.5167.0 * chore: bump chromium in DEPS to 105.0.5169.0 * chore: bump chromium in DEPS to 105.0.5171.0 * chore: update patches * chore: bump chromium in DEPS to 105.0.5173.0 * chore: update patches * 3743346: Stop generating unsupported policies on macOS https://chromium-review.googlesource.com/c/chromium/src/+/3743346 * 3727612: [Bluetooth][Win] Refactor pairing prompt code https://chromium-review.googlesource.com/c/chromium/src/+/3727612 * 3737325: system-extensions: Move IsEnabled() out of SystemExtensionsProvider. https://chromium-review.googlesource.com/c/chromium/src/+/3737325 * 3748635: Remove RenderView from the public API. https://chromium-review.googlesource.com/c/chromium/src/+/3748635 * fixup: 3743346: Stop generating unsupported policies on macOS 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: PatchUp <73610968+patchup[bot]@users.noreply.github.com> Co-authored-by: deepak1556 <hop2deep@gmail.com> Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2022-07-13 21:26:16 +00:00
void ShowDevicePairPrompt(content::RenderFrameHost* frame,
const std::u16string& device_identifier,
PairPromptCallback callback,
PairingKind pairing_kind,
const std::optional<std::u16string>& pin) override;
blink::WebBluetoothDeviceId GetWebBluetoothDeviceId(
content::RenderFrameHost* frame,
const std::string& device_address) override;
std::string GetDeviceAddress(
content::RenderFrameHost* frame,
const blink::WebBluetoothDeviceId& device_id) override;
blink::WebBluetoothDeviceId AddScannedDevice(
content::RenderFrameHost* frame,
const std::string& device_address) override;
blink::WebBluetoothDeviceId GrantServiceAccessPermission(
content::RenderFrameHost* frame,
const device::BluetoothDevice* device,
const blink::mojom::WebBluetoothRequestDeviceOptions* options) override;
bool HasDevicePermission(
content::RenderFrameHost* frame,
chore: bump chromium to 102.0.4961.0 (main) (#33091) * chore: bump chromium in DEPS to 101.0.4911.0 * chore: bump chromium in DEPS to 101.0.4913.0 * chore: bump chromium in DEPS to 101.0.4915.0 * chore: bump chromium in DEPS to 101.0.4917.0 * chore: bump chromium in DEPS to 101.0.4919.0 * chore: bump chromium in DEPS to 101.0.4921.0 * chore: bump chromium in DEPS to 101.0.4923.0 * chore: bump chromium in DEPS to 101.0.4925.0 * chore: bump chromium in DEPS to 101.0.4927.0 * chore: bump chromium in DEPS to 101.0.4929.0 * chore: update patches * chore: bump chromium in DEPS to 101.0.4931.0 * chore: update patches * 3475388: Remove mojo::InterfacePtr<T> and mojo::InterfacePtrInfo<T> Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3475388 Actual fixes in 1824792: Migrate DisplayClient to the new Mojo types | https://chromium-review.googlesource.com/c/chromium/src/+/1824792 * 3503874: Remove base::size(), base::empty(), and base::data(). Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3503874 * chore: reconcile patches with main rebase * chore: bump chromium in DEPS to 101.0.4933.0 * chore: update patches * 3329593: [Fenced Frame] Ensure to support external protocols in a fenced frame Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3329593 * 3503874: Remove base::size(), base::empty(), and base::data(). Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3503874 * 3446451: Use forward decl of ImageSkiaRep in //ui/gfx/image/image_skia.h Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3446451 * 3499818: partition_alloc: Rename AllocFlags to AllocWithFlags Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3499818 * chore: bump chromium in DEPS to 101.0.4935.0 * chore: update patches * 3463286: partition_alloc: Move PartitionAlloc into the own namespaces (15 of N) Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3463286 * 3506590: Reland "Support ChromeOS external protocol dialog for Fenced Frame navigations" Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3506590 * 3475388: Remove mojo::InterfacePtr<T> and mojo::InterfacePtrInfo<T> Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3475388 Actual fixes in 1880987: Convert URLLoaderReqeust from //content to new Mojo types | https://chromium-review.googlesource.com/c/chromium/src/+/1880987 The change in the roll started causing the legacy types to fail * chore: missing SkRegion include * 3499600: Introduce blink::WebCssOrigin Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3499600 * fixup!: 3503874: Remove base::size(), base::empty(), and base::data(). Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3503874 * chore: bump chromium in DEPS to 101.0.4937.0 * chore: update patches * 3500826: [locales] Refactor locales for ios Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3500826 * 3509531: Make some public Blink media files private Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3509531 * 3497377: bluetooth: Add BluetoothDevice.forget() Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3497377 * chore: bump chromium in DEPS to 101.0.4939.0 * chore: bump chromium in DEPS to 101.0.4941.0 * 3514804: Deprecate all existing uses of mojo_base.mojom.{Dictionary,List}Value. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3514804 * 3502592: Delete PPAPI init/shutdown code in //pdf. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3502592 * chore: update patches * fixup! 3502592: Delete PPAPI init/shutdown code in //pdf. * chore: bump chromium in DEPS to 101.0.4943.0 * chore: fix lint, remove unneeded headers * fixup! 3475388: Remove mojo::InterfacePtr<T> and mojo::InterfacePtrInfo<T> * update mojo calls in offscreen patch * update hunspell filenames * chore: bump chromium in DEPS to 101.0.4945.0 * chore: update patches * fix offscreen patch again * chore: bump chromium in DEPS to 101.0.4947.0 * chore: update patches * chore: bump chromium in DEPS to 101.0.4949.0 * support unseasoned pdf * update patches * chore: update patches * chore: [IWYU] include missing skia headers * chore: bump chromium in DEPS to 101.0.4951.0 * chore: update patches * 3457645: media: Remove IsKeySystemsUpdateNeeded() https://chromium-review.googlesource.com/c/chromium/src/+/3457645 * chore: bump chromium in DEPS to 102.0.4952.2 * chore: update patches * 3488672: Add documentId as a parameter in tabs.connect() and tabs.sendMessage(). Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3488672 * 3508375: Fix an issue dangerous dialog is not shown for some apk download Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3508375 * chore: bump chromium in DEPS to 102.0.4953.0 * chore: update patches * 3510189: Harden up drag and drop support across same-process boundaries. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3510189 * 3526815: Remove hardcoded colors from chrome/browser/ui/views/overlay/. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3526815 * chore: bump chromium in DEPS to 102.0.4955.0 * build: add af and ur locale to manifests 3498914 [locales] Add af and ur to desktop Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3498914 * fixup! build: add af and ur locale to manifests * chore: bump chromium in DEPS to 102.0.4957.0 * 3529090: gin: set JS flags before v8 initialization Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3529090 chore: fix code shear in chromium/gin_enable_disable_v8_platform.patch * chore: update patches * 3536433: [network] Rename data_path and http_cache_path from _path to _directory. Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3536433 * 3111565: Relocated Page.printToPDF implementation to //components Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3111565 refactor: inject E args to PrintRequestedPages() and ScriptedPrintCallback TODO: currently passes a placeholder for job_settings. We have other code paths that inject settings from electron_api_web_contents.cc. Should those be injected here as well? (CC @codebytere) * fixup! 3111565: Relocated Page.printToPDF implementation to //components * fixup! 3111565: Relocated Page.printToPDF implementation to //components * 3520025: Make "libcxx_abi_unstable" not a gn arg Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3520025 build: since it is no longer a gn arg, patch it in * chore: change usages of std::vector with const elements (#33373) * chore: bump chromium in DEPS to 102.0.4959.0 * chore: update patches * build: iwyu base/threading/platform_thread.h * 3525774: Add GPSForCurrentDocument() into PermissionControllerDelegate. Xref: https://chromium-review.googlesource.com/c/chromium/src/+/3525774 refactor: copy upstream impl of GetPermissionStatusForCurrentDocument into +ElectronPermissionManager * use gclient_gn_args_from instead of hand-copying * checkout mac on mac * chore: update patches * Revert "checkout mac on mac" This reverts commit fe9ccf49ec6139868ccf2272c2016cefa3f32769. * fixup! 3525774: Add GPSForCurrentDocument() into PermissionControllerDelegate. * fixup! 3457645: media: Remove IsKeySystemsUpdateNeeded() add nogncheck * fix: set .eslintrc.json to root to avoid cascade to chromium eslintrc * Xref: https://github.com/llvm/llvm-project/commit/6dfdf79b8c482c892a76406799d285baf5d71198 Xref: https://reviews.llvm.org/D101458 Upstream added a CMakeLists.txt in an include dir ¯\_(ツ)_/¯ and so it must be enumerated in filenames.libcxxabi.gni * 3511268: Remove unused headers from cxx17_backports.h https://chromium-review.googlesource.com/c/chromium/src/+/3511268 use std::size instead of base::size * iwyu: SkPaint 3488428: [includes] Fix transitive includes of SkImageEncoder * chore: [IWYU] include missing skia headers * fixup! 3511268: Remove unused headers from cxx17_backports.h * chore: bump chromium in DEPS to 102.0.4961.0 * chore: update patches * fixup! 3475388: Remove mojo::InterfacePtr<T> and mojo::InterfacePtrInfo<T> chore: remove unused #include * fixup! 3510189: Harden up drag and drop support across same-process boundaries. | https://chromium-review.googlesource.com/c/chromium/src/+/3510189 Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: Keeley Hammond <khammond@slack-corp.com> Co-authored-by: VerteDinde <vertedinde@electronjs.org> Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com> Co-authored-by: Jeremy Rose <nornagon@nornagon.net> Co-authored-by: VerteDinde <keeleymhammond@gmail.com> Co-authored-by: Charles Kerr <charles@charleskerr.com> Co-authored-by: David Sanders <dsanders11@ucsbalum.com> Co-authored-by: Jeremy Rose <jeremya@chromium.org>
2022-03-25 01:39:03 +00:00
const blink::WebBluetoothDeviceId& device_id) override;
void RevokeDevicePermissionWebInitiated(
content::RenderFrameHost* frame,
const blink::WebBluetoothDeviceId& device_id) override;
chore: bump chromium to 130.0.6723.6 (33-x-y) (#43453) * chore: bump chromium in DEPS to 130.0.6673.0 * chore: bump chromium in DEPS to 130.0.6675.0 * chore: bump chromium in DEPS to 130.0.6677.2 * chore: bump chromium in DEPS to 130.0.6679.1 * chore: bump chromium in DEPS to 130.0.6681.1 * chore: bump chromium in DEPS to 130.0.6683.2 * chore: bump chromium in DEPS to 130.0.6685.0 * chore: bump chromium in DEPS to 130.0.6687.0 * chore: bump chromium in DEPS to 130.0.6689.0 * chore: bump chromium in DEPS to 130.0.6691.1 * chore: bump chromium in DEPS to 130.0.6693.1 * chore: bump chromium in DEPS to 130.0.6695.1 * chore: bump chromium in DEPS to 130.0.6697.1 * chore: bump chromium in DEPS to 130.0.6699.1 * chore: bump chromium in DEPS to 130.0.6701.1 * chore: bump chromium in DEPS to 130.0.6703.1 * chore: bump chromium in DEPS to 130.0.6705.1 * chore: bump chromium in DEPS to 130.0.6707.1 * chore: bump chromium in DEPS to 130.0.6709.1 * chore: bump chromium in DEPS to 130.0.6711.1 * chore: bump chromium in DEPS to 130.0.6713.1 * chore: bump chromium in DEPS to 130.0.6715.2 * chore: bump chromium in DEPS to 130.0.6717.0 * chore: bump chromium in DEPS to 130.0.6719.1 * chore: bump chromium in DEPS to 130.0.6720.1 * chore: bump chromium in DEPS to 130.0.6723.1 * chore: bump chromium in DEPS to 130.0.6723.4 * chore: bump chromium in DEPS to 130.0.6723.6 * chore: bump chromium to 130.0.6695.0 (main) (#43454) * chore: bump chromium in DEPS to 130.0.6673.0 * chore: bump chromium in DEPS to 130.0.6675.0 * chore: bump chromium in DEPS to 130.0.6677.2 * chore: bump chromium in DEPS to 130.0.6679.0 * 5802981: [Partitioned Popins] UKM https://chromium-review.googlesource.com/c/chromium/src/+/5802981 * 5799275: ash: Create //chrome/browser/ui/ash/web_view https://chromium-review.googlesource.com/c/chromium/src/+/5799275 * 5791853: [PWA] Allow WebContentsImpl::CreateNewWindow() to use new web contents for loading url https://chromium-review.googlesource.com/c/chromium/src/+/5791853 * 5805208: Move third_party/jacoco to a cipd/ subdirectory. https://chromium-review.googlesource.com/c/chromium/src/+/5805208 * chore: fixup patch indices * 5771091: Introduce InputManager class for handling input in Viz. https://chromium-review.googlesource.com/c/chromium/src/+/5771091 * 5498921: [Permission] Remove SubscribeToPermissionStatusChange from PermissionManager https://chromium-review.googlesource.com/c/chromium/src/+/5498921 * 5791853: [PWA] Allow WebContentsImpl::CreateNewWindow() to use new web contents for loading url https://chromium-review.googlesource.com/c/chromium/src/+/5791853 * 5801311: Don't use int for bindings https://chromium-review.googlesource.com/c/chromium/src/+/5801311 * 5548827: [Web Install] Define the web-app-installation PermissionPolicy https://chromium-review.googlesource.com/c/chromium/src/+/5548827 * 5786325: Add Infrastructure for Hand tracking permission https://chromium-review.googlesource.com/c/chromium/src/+/5786325 * chore: fixup patch indices * chore: bump chromium in DEPS to 130.0.6681.0 * [Views AX] Move BrowserAccessibility* to //ui/accessibility/platform Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5520052 * chore: e patches all * Don't have default arguments on virtual functions in render_frame_host.h https://chromium-review.googlesource.com/c/chromium/src/+/5809399 * test: log if loadURL fails in base url test * chore: bump chromium in DEPS to 130.0.6683.2 * chore: fix support_mixed_sandbox_with_zygote.patch content: restore old DisableJit behavior https://chromium-review.googlesource.com/c/chromium/src/+/5804255 * chore: update patch indices * chore: bump chromium in DEPS to 130.0.6685.0 * Parallel process launching Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5015584 * chore: update feat_expose_documentloader_setdefersloading_on_webdocumentloader.patch No manual changes; patch applied with fuzz 1 * chore: e patches all * chore: bump chromium in DEPS to 130.0.6687.0 * chore: bump chromium in DEPS to 130.0.6689.0 * chore: bump chromium in DEPS to 130.0.6691.0 * chore: bump chromium in DEPS to 130.0.6693.0 * chore: update patches * chore: bump chromium in DEPS to 130.0.6695.0 * chore: free up macos disk space as soon as possible * 5824143: Use checked in source lists for third_party/boringssl https://chromium-review.googlesource.com/c/chromium/src/+/5824143 * chore: update patches * 5824122: Extensions: Add a new view type enum for developer tools contexts https://chromium-review.googlesource.com/c/chromium/src/+/5824122 * 5806109: Option for JavaScriptExecuteRequestForTests() to ignore content settings https://chromium-review.googlesource.com/c/chromium/src/+/5806109 * build: free up disk space on gn check too * 5799369: [Refactoring] Make allow_http1_for_streaming_upload flags false. https://chromium-review.googlesource.com/c/chromium/src/+/5799369 * fixup! 5015584: Parallel process launching | https://chromium-review.googlesource.com/c/chromium/src/+/5015584 * Disable failing test for short-term See: https://github.com/electron/electron/issues/43730 * oops --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com> Co-authored-by: Charles Kerr <charles@charleskerr.com> Co-authored-by: Keeley Hammond <khammond@slack-corp.com> Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org> Co-authored-by: clavin <clavin@electronjs.org> (cherry picked from commit 4bcbc955dd87df5f87137eee065c2e989a173537) * build: update appveyor image to latest version (#43772) Co-authored-by: electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.noreply.github.com> (cherry picked from commit 02fd8bbcc1f88317612cf88764a76254168aecb0) * chore: fixup patches * chore: fixup patch * chore: bump chromium in DEPS to 130.0.6723.6 * chore: update filenames.libcxx.gni * test: re-enable disabled test * 5844369: controlledframe: Disable Web Bluetooth for <webview> & <controlledframe> https://chromium-review.googlesource.com/c/chromium/src/+/5844369 (cherry picked from commit 0ac4852763f0dce3468d30907620211f34c4104b) * (multiple CLs): Use an opaque type for FrameTreeNode IDs 5807683: Use an opaque type for FrameTreeNode IDs, part 1 | https://chromium-review.googlesource.com/c/chromium/src/+/5807683 5829746: Use an opaque type for FrameTreeNode IDs, part 2 | https://chromium-review.googlesource.com/c/chromium/src/+/5829746 5836903: Use an opaque type for FrameTreeNode IDs, part 7 | https://chromium-review.googlesource.com/c/chromium/src/+/5836903 5837249: Use an opaque type for FrameTreeNode IDs, part 8 | https://chromium-review.googlesource.com/c/chromium/src/+/5837249 5836564: Use an opaque type for FrameTreeNode IDs, part 12 | https://chromium-review.googlesource.com/c/chromium/src/+/5836564 5837180: Use an opaque type for FrameTreeNode IDs, part 15 | https://chromium-review.googlesource.com/c/chromium/src/+/5837180 (cherry picked from commit 1dd67f5241a3a24ea5a20f11efefdd2afc520a26) * 5822889: [task] Make GetForegroundTaskRunner non-virtual https://chromium-review.googlesource.com/c/v8/v8/+/5822889 (cherry picked from commit ae1e7232a35260cce8c4303d5f9809aa166bf19b) * 5833297: Remove unused inner WebContents attach params https://chromium-review.googlesource.com/c/chromium/src/+/5833297 (cherry picked from commit 390bb42e39eba66cd86221461d2822bbd85012df) * 5806403: Shift PowerMonitor to non static https://chromium-review.googlesource.com/c/chromium/src/+/5806403 (cherry picked from commit 128e3826e13768e89c7f5117de451ebd2b3ec9a4) * 5666874: [3/N] Remove old OnPowerChange in PowerObserver https://chromium-review.googlesource.com/c/chromium/src/+/5666874 (cherry picked from commit 6ea6ea14ae23ced6465b94fd753f8c80ced4b13b) * 5829085: [v8] Differentiate between UserVisible and BestEffort task runners https://chromium-review.googlesource.com/c/chromium/src/+/5829085 (cherry picked from commit 1db28ee4a51fb2593e4c11bcaa538a6524abe48c) * 5791112: [webrtc] Use `c/b/permissions/system` for system permissions https://chromium-review.googlesource.com/c/chromium/src/+/5791112 (cherry picked from commit 50d4a71923ca99653bf5733145bdc6e21f783b2d) * fixup! (multiple CLs): Use an opaque type for FrameTreeNode IDs (cherry picked from commit 9271130e160d479b3d286d295045b9d4acd2005c) * fixup! 5791112: [webrtc] Use `c/b/permissions/system` for system permissions https://chromium-review.googlesource.com/c/chromium/src/+/5791112 (cherry picked from commit db2c8c69d0c7bdee881997847dfc3c8abf32197c) * 5825636: [Extensions] Create WebContentsObservers with ExtensionsBrowserClient https://chromium-review.googlesource.com/c/chromium/src/+/5825636 (cherry picked from commit f2c3d09ccd141dbe2f4b62957b72f98bf8a010ae) * 5854811: Use kNotAllowedError instead of kSecurityError for Web MIDI https://chromium-review.googlesource.com/c/chromium/src/+/5854811 * test: fix should support base url for data urls test Caused by https://chromium-review.googlesource.com/c/chromium/src/+/5802682 * test: fixup extensions can cancel http requests * chore: document custom protocol handling on Windows change due to Non-Special Scheme URLs shipping https://chromium-review.googlesource.com/c/chromium/src/+/5802682 --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: electron-appveyor-updater[bot] <161660339+electron-appveyor-updater[bot]@users.noreply.github.com> Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org> Co-authored-by: clavin <clavin@electronjs.org>
2024-09-26 09:12:12 +00:00
bool MayUseBluetooth(content::RenderFrameHost* frame) override;
bool IsAllowedToAccessService(content::RenderFrameHost* frame,
const blink::WebBluetoothDeviceId& device_id,
const device::BluetoothUUID& service) override;
bool IsAllowedToAccessAtLeastOneService(
content::RenderFrameHost* frame,
const blink::WebBluetoothDeviceId& device_id) override;
bool IsAllowedToAccessManufacturerData(
content::RenderFrameHost* frame,
const blink::WebBluetoothDeviceId& device_id,
uint16_t manufacturer_code) override;
std::vector<blink::mojom::WebBluetoothDevicePtr> GetPermittedDevices(
content::RenderFrameHost* frame) override;
void AddFramePermissionObserver(FramePermissionObserver* observer) override;
void RemoveFramePermissionObserver(
FramePermissionObserver* observer) override;
private:
void OnDevicePairPromptResponse(PairPromptCallback callback,
base::Value::Dict response);
base::WeakPtrFactory<ElectronBluetoothDelegate> weak_factory_{this};
};
} // namespace electron
#endif // ELECTRON_SHELL_BROWSER_BLUETOOTH_ELECTRON_BLUETOOTH_DELEGATE_H_