mirror of
https://github.com/electron/electron.git
synced 2026-02-19 03:14:51 -05:00
* chore: bump chromium in DEPS to 147.0.7683.0 * fix(patch): constant moved to header Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7536483 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(patch): occlusion simplification upstream Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7563790 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: remove upstreamed patches Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: update patches (trivial only) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: bump chromium in DEPS to 147.0.7685.0 * fix(patch): V1 Keychain removal Upstream deleted the V1 Keychain API. Removed V1 hunks and adapted keychain_password_mac.mm to use KeychainV2 APIs. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7540447 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: update patches (trivial only) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * 7535923: Rename ozone buildflags Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7535923 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * 7528398: [LNA] Rename PNA-named files to LNA-named files Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7528398 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * 7534194: Convert some functions in ui::Clipboard to async Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7534194 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * 7544580: [DevTools] Add command to restart Chrome to DevTools UI bindings Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7544580 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: bump chromium in DEPS to 147.0.7687.0 * chore: update patches (trivial only) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: incorporate learnings into claude skill I asked Claude to reflect on our upgrade session, consider what it learned and should know in the future, and to update its skill documents. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: clavin <clavin@electronjs.org> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
93 lines
4.0 KiB
C++
93 lines
4.0 KiB
C++
// Copyright (c) 2024 Microsoft, GmbH
|
|
// Use of this source code is governed by the MIT license that can be
|
|
// found in the LICENSE file.
|
|
|
|
#ifndef ELECTRON_SHELL_BROWSER_NET_URL_LOADER_NETWORK_OBSERVER_H_
|
|
#define ELECTRON_SHELL_BROWSER_NET_URL_LOADER_NETWORK_OBSERVER_H_
|
|
|
|
#include "base/byte_size.h"
|
|
#include "base/memory/weak_ptr.h"
|
|
#include "base/process/process_handle.h"
|
|
#include "mojo/public/cpp/bindings/receiver_set.h"
|
|
#include "services/network/public/mojom/url_loader_network_service_observer.mojom.h"
|
|
|
|
namespace electron {
|
|
|
|
class URLLoaderNetworkObserver
|
|
: public network::mojom::URLLoaderNetworkServiceObserver {
|
|
public:
|
|
URLLoaderNetworkObserver();
|
|
~URLLoaderNetworkObserver() override;
|
|
|
|
URLLoaderNetworkObserver(const URLLoaderNetworkObserver&) = delete;
|
|
URLLoaderNetworkObserver& operator=(const URLLoaderNetworkObserver&) = delete;
|
|
|
|
mojo::PendingRemote<network::mojom::URLLoaderNetworkServiceObserver> Bind();
|
|
void set_process_id(base::ProcessId pid) { process_id_ = pid; }
|
|
|
|
private:
|
|
void OnAuthRequired(
|
|
const std::optional<base::UnguessableToken>& window_id,
|
|
int32_t request_id,
|
|
const GURL& url,
|
|
bool first_auth_attempt,
|
|
const net::AuthChallengeInfo& auth_info,
|
|
const scoped_refptr<net::HttpResponseHeaders>& head_headers,
|
|
mojo::PendingRemote<network::mojom::AuthChallengeResponder>
|
|
auth_challenge_responder) override;
|
|
void OnSSLCertificateError(const GURL& url,
|
|
int net_error,
|
|
const net::SSLInfo& ssl_info,
|
|
bool fatal,
|
|
OnSSLCertificateErrorCallback response) override;
|
|
void OnClearSiteData(
|
|
const GURL& url,
|
|
const std::string& header_value,
|
|
int32_t load_flags,
|
|
const std::optional<net::CookiePartitionKey>& cookie_partition_key,
|
|
bool partitioned_state_allowed_only,
|
|
OnClearSiteDataCallback callback) override;
|
|
void OnLoadingStateUpdate(network::mojom::LoadInfoPtr info,
|
|
OnLoadingStateUpdateCallback callback) override;
|
|
void OnSharedStorageHeaderReceived(
|
|
const url::Origin& request_origin,
|
|
std::vector<network::mojom::SharedStorageModifierMethodWithOptionsPtr>
|
|
methods,
|
|
const std::optional<std::string>& with_lock,
|
|
OnSharedStorageHeaderReceivedCallback callback) override;
|
|
void OnDataUseUpdate(int32_t network_traffic_annotation_id_hash,
|
|
base::ByteSize recv_bytes,
|
|
base::ByteSize sent_bytes) override {}
|
|
void OnWebSocketConnectedToLocalNetwork(
|
|
const GURL& request_url,
|
|
network::mojom::IPAddressSpace ip_address_space) override {}
|
|
void OnCertificateRequested(
|
|
const std::optional<base::UnguessableToken>& window_id,
|
|
const scoped_refptr<net::SSLCertRequestInfo>& cert_info,
|
|
mojo::PendingRemote<network::mojom::ClientCertificateResponder>
|
|
client_cert_responder) override {}
|
|
void OnLocalNetworkAccessPermissionRequired(
|
|
network::mojom::TransportType transport_type,
|
|
network::mojom::IPAddressSpace ip_address_space,
|
|
OnLocalNetworkAccessPermissionRequiredCallback callback) override {}
|
|
void OnUrlLoaderConnectedToLocalNetwork(
|
|
const GURL& request_url,
|
|
network::mojom::IPAddressSpace response_address_space,
|
|
network::mojom::IPAddressSpace client_address_space,
|
|
network::mojom::IPAddressSpace target_address_space) override {}
|
|
void OnAdAuctionEventRecordHeaderReceived(
|
|
network::AdAuctionEventRecord event_record,
|
|
const std::optional<url::Origin>& top_frame_origin) override {}
|
|
void Clone(
|
|
mojo::PendingReceiver<network::mojom::URLLoaderNetworkServiceObserver>
|
|
observer) override;
|
|
|
|
mojo::ReceiverSet<network::mojom::URLLoaderNetworkServiceObserver> receivers_;
|
|
base::ProcessId process_id_ = base::kNullProcessId;
|
|
base::WeakPtrFactory<URLLoaderNetworkObserver> weak_factory_{this};
|
|
};
|
|
|
|
} // namespace electron
|
|
|
|
#endif // ELECTRON_SHELL_BROWSER_NET_URL_LOADER_NETWORK_OBSERVER_H_
|