0
Files
android_webview
apps
ash
base
build
build_overrides
buildtools
cc
chrome
chromecast
chromeos
clank
codelabs
components
content
app
app_shim_remote_cocoa
browser
accessibility
aggregation_service
ai
android
attribution_reporting
audio
background_fetch
background_sync
blob_storage
bluetooth
broadcast_channel
browser_plugin
browsing_data
browsing_topics
buckets
cache_storage
client_hints
closewatcher
cocoa
code_cache
compositor
compute_pressure
contacts
content_index
cookie_deprecation_label
cookie_insight_list
cookie_store
date_time_chooser
device
device_posture
device_sensors
devtools
direct_sockets
display_cutout
dom_storage
download
fenced_frame
file_system
file_system_access
first_party_sets
font_access
font_unique_name_lookup
generic_sensor
geolocation
gpu
handwriting
hid
hyphenation
idle
image_capture
indexed_db
installedapp
interest_group
keyboard_lock
loader
lock_screen
locks
manifest
media
media_session
memory
memory_pressure
metrics
navigation_transitions
network
notifications
origin_trials
payments
performance_manager
permissions
picture_in_picture
preloading
presentation
private_aggregation
process_internals
push_messaging
quota
reduce_accept_language
renderer_host
input
media
navigation_transitions
p2p
partitioned_popins
pepper
DEPS
DIR_METADATA
OWNERS
README.md
accessibility_object_lifetime_win_browsertest.cc
accessibility_tree_linkage_win_browsertest.cc
agent_scheduling_group_host.cc
agent_scheduling_group_host.h
agent_scheduling_group_host_factory.h
ancestor_throttle.cc
ancestor_throttle.h
ancestor_throttle_browsertest.cc
ancestor_throttle_unittest.cc
back_forward_cache_can_store_document_result.cc
back_forward_cache_can_store_document_result.h
back_forward_cache_commit_deferring_condition.cc
back_forward_cache_commit_deferring_condition.h
back_forward_cache_disable.cc
back_forward_cache_disable.h
back_forward_cache_impl.cc
back_forward_cache_impl.h
back_forward_cache_impl_unittest.cc
back_forward_cache_metrics.cc
back_forward_cache_metrics.h
back_forward_cache_metrics_browsertest.cc
back_forward_cache_metrics_unittest.cc
back_forward_cache_subframe_navigation_throttle.cc
back_forward_cache_subframe_navigation_throttle.h
back_forward_cache_subframe_navigation_throttle_unittest.cc
batched_proxy_ipc_sender.cc
batched_proxy_ipc_sender.h
blocked_scheme_navigation_browsertest.cc
blocked_scheme_navigation_throttle.cc
blocked_scheme_navigation_throttle.h
browser_compositor_ios.h
browser_compositor_ios.mm
browser_compositor_view_mac.h
browser_compositor_view_mac.mm
browsing_context_group_swap.cc
browsing_context_group_swap.h
browsing_context_group_swap_browsertest.cc
browsing_context_group_swap_unittest.cc
browsing_context_state.cc
browsing_context_state.h
clipboard_host_impl.cc
clipboard_host_impl.h
clipboard_host_impl_browsertest.cc
clipboard_host_impl_mac.mm
clipboard_host_impl_unittest.cc
code_cache_host_impl.cc
code_cache_host_impl.h
commit_deferring_condition_runner.cc
commit_deferring_condition_runner.h
commit_deferring_condition_runner_unittest.cc
compositor_dependencies_android.cc
compositor_dependencies_android.h
compositor_impl_android.cc
compositor_impl_android.h
compositor_impl_android_browsertest.cc
concurrent_navigations_commit_deferring_condition.cc
concurrent_navigations_commit_deferring_condition.h
cookie_browsertest.cc
cookie_utils.cc
cookie_utils.h
cross_process_frame_connector.cc
cross_process_frame_connector.h
cursor_manager_unittest.cc
data_transfer_util.cc
data_transfer_util.h
debug_urls.cc
debug_urls.h
delegated_frame_host.cc
delegated_frame_host.h
delegated_frame_host_client_android.cc
delegated_frame_host_client_android.h
delegated_frame_host_client_aura.cc
delegated_frame_host_client_aura.h
delegated_frame_host_client_ios.cc
delegated_frame_host_client_ios.h
dip_util.cc
dip_util.h
direct_manipulation_event_handler_win.cc
direct_manipulation_event_handler_win.h
direct_manipulation_helper_win.cc
direct_manipulation_helper_win.h
direct_manipulation_test_helper_win.cc
direct_manipulation_test_helper_win.h
direct_manipulation_win_browsertest.cc
direct_manipulation_win_unittest.cc
display_feature.cc
display_feature.h
display_feature_unittest.cc
document_associated_data.cc
document_associated_data.h
document_service_browsertest.cc
document_service_echo_impl.cc
document_service_echo_impl.h
document_service_unittest.cc
document_token_browsertest.cc
document_user_data_browsertest.cc
dwrite_font_file_util_win.cc
dwrite_font_file_util_win.h
dwrite_font_proxy_impl_win.cc
dwrite_font_proxy_impl_win.h
dwrite_font_proxy_impl_win_unittest.cc
embedded_frame_sink_impl.cc
embedded_frame_sink_impl.h
embedded_frame_sink_provider_impl.cc
embedded_frame_sink_provider_impl.h
embedded_frame_sink_provider_impl_unittest.cc
embedding_token_browsertest.cc
file_utilities_host_impl.cc
file_utilities_host_impl.h
frame_navigation_entry.cc
frame_navigation_entry.h
frame_token_message_queue.cc
frame_token_message_queue.h
frame_token_message_queue_unittest.cc
frame_tree.cc
frame_tree.h
frame_tree_browsertest.cc
frame_tree_node.cc
frame_tree_node.h
frame_tree_unittest.cc
global_routing_id.cc
global_routing_id_unittest.cc
http_error_navigation_throttle.cc
http_error_navigation_throttle.h
indexed_db_client_state_checker_factory.cc
indexed_db_client_state_checker_factory.h
indexed_db_client_state_checker_factory_unittest.cc
ipc_utils.cc
ipc_utils.h
isolated_web_app_throttle.cc
isolated_web_app_throttle.h
isolated_web_app_throttle_browsertest.cc
isolated_web_app_throttle_unittest.cc
jit_policy_browsertest.cc
keep_alive_handle_factory.cc
keep_alive_handle_factory.h
legacy_render_widget_host_win.cc
legacy_render_widget_host_win.h
loading_state.h
mixed_content_checker.cc
mixed_content_checker.h
mixed_content_checker_unittest.cc
mixed_content_navigation_throttle.cc
mixed_content_navigation_throttle.h
mixed_content_navigation_throttle_unittest.cc
mock_render_widget_host.cc
mock_render_widget_host.h
navigation_controller_android.cc
navigation_controller_android.h
navigation_controller_delegate.h
navigation_controller_history_intervention_browsertest.cc
navigation_controller_impl.cc
navigation_controller_impl.h
navigation_controller_impl_browsertest.cc
navigation_controller_impl_unittest.cc
navigation_entry_impl.cc
navigation_entry_impl.h
navigation_entry_impl_unittest.cc
navigation_entry_restore_context_impl.cc
navigation_entry_restore_context_impl.h
navigation_handle_user_data_browsertest.cc
navigation_metrics_utils.cc
navigation_metrics_utils.h
navigation_policy_container_builder.cc
navigation_policy_container_builder.h
navigation_policy_container_builder_browsertest.cc
navigation_policy_container_builder_unittest.cc
navigation_request.cc
navigation_request.h
navigation_request_browsertest.cc
navigation_request_info.cc
navigation_request_info.h
navigation_request_unittest.cc
navigation_state_keep_alive.cc
navigation_state_keep_alive.h
navigation_throttle_runner.cc
navigation_throttle_runner.h
navigation_throttle_runner_unittest.cc
navigation_type.h
navigator.cc
navigator.h
navigator_delegate.h
navigator_unittest.cc
origin_agent_cluster_browsertest.cc
origin_trial_state_host_impl.cc
origin_trial_state_host_impl.h
overscroll_configuration.cc
overscroll_controller.cc
overscroll_controller.h
overscroll_controller_delegate.cc
overscroll_controller_delegate.h
overscroll_controller_unittest.cc
page_delegate.h
page_factory.cc
page_factory.h
page_impl.cc
page_impl.h
page_impl_browsertest.cc
page_lifecycle_state_manager.cc
page_lifecycle_state_manager.h
page_lifecycle_state_manager_browsertest.cc
panel_rotation_browsertest.cc
plugin_registry_impl.cc
plugin_registry_impl.h
policy_container_host.cc
policy_container_host.h
policy_container_host_browsertest.cc
policy_container_host_unittest.cc
popup_menu_helper_ios.h
popup_menu_helper_ios.mm
popup_menu_helper_mac.h
popup_menu_helper_mac.mm
popup_menu_interaction_delegate.h
private_network_access_browsertest.cc
private_network_access_util.cc
private_network_access_util.h
private_network_access_util_unittest.cc
proactively_swap_browsing_instances_browsertest.cc
recently_destroyed_hosts.cc
recently_destroyed_hosts.h
recently_destroyed_hosts_unittest.cc
render_document_host_browsertest.cc
render_frame_host_android.cc
render_frame_host_android.h
render_frame_host_csp_context.cc
render_frame_host_csp_context.h
render_frame_host_csp_context_unittest.cc
render_frame_host_delegate.cc
render_frame_host_delegate.h
render_frame_host_factory.cc
render_frame_host_factory.h
render_frame_host_impl.cc
render_frame_host_impl.h
render_frame_host_impl_browsertest.cc
render_frame_host_impl_interface_binders.cc
render_frame_host_impl_mac_browsertest.mm
render_frame_host_impl_ppapi_support.cc
render_frame_host_impl_ppapi_support.h
render_frame_host_impl_unittest.cc
render_frame_host_manager.cc
render_frame_host_manager.h
render_frame_host_manager_browsertest.cc
render_frame_host_manager_browsertest.h
render_frame_host_manager_unittest.cc
render_frame_host_owner.h
render_frame_host_permissions_policy_unittest.cc
render_frame_metadata_provider_impl.cc
render_frame_metadata_provider_impl.h
render_frame_proxy_host.cc
render_frame_proxy_host.h
render_message_filter.cc
render_message_filter.h
render_process_host_browsertest.cc
render_process_host_creation_observer.cc
render_process_host_impl.cc
render_process_host_impl.h
render_process_host_impl_receiver_bindings.cc
render_process_host_internal_observer.cc
render_process_host_internal_observer.h
render_process_host_sandbox_policy_win_browsertest.cc
render_process_host_unittest.cc
render_view_host_browsertest.cc
render_view_host_delegate.cc
render_view_host_delegate.h
render_view_host_delegate_view.cc
render_view_host_delegate_view.h
render_view_host_enums.h
render_view_host_factory.cc
render_view_host_factory.h
render_view_host_impl.cc
render_view_host_impl.h
render_view_host_unittest.cc
render_widget_helper.cc
render_widget_helper.h
render_widget_host_browsertest.cc
render_widget_host_delegate.cc
render_widget_host_delegate.h
render_widget_host_factory.cc
render_widget_host_factory.h
render_widget_host_impl.cc
render_widget_host_impl.h
render_widget_host_input_event_router_unittest.cc
render_widget_host_owner_delegate.h
render_widget_host_unittest.cc
render_widget_host_view_android.cc
render_widget_host_view_android.h
render_widget_host_view_android_browsertest.cc
render_widget_host_view_android_unittest.cc
render_widget_host_view_aura.cc
render_widget_host_view_aura.h
render_widget_host_view_aura_browsertest.cc
render_widget_host_view_aura_unittest.cc
render_widget_host_view_aura_vk_browsertest.cc
render_widget_host_view_base.cc
render_widget_host_view_base.h
render_widget_host_view_base_unittest.cc
render_widget_host_view_browsertest.cc
render_widget_host_view_child_frame.cc
render_widget_host_view_child_frame.h
render_widget_host_view_child_frame_browsertest.cc
render_widget_host_view_child_frame_unittest.cc
render_widget_host_view_event_handler.cc
render_widget_host_view_event_handler.h
render_widget_host_view_ios.h
render_widget_host_view_ios.mm
render_widget_host_view_ios_uiview.h
render_widget_host_view_ios_uiview.mm
render_widget_host_view_ios_uiview_textinput.h
render_widget_host_view_ios_uiview_textinput.mm
render_widget_host_view_mac.h
render_widget_host_view_mac.mm
render_widget_host_view_mac_browsertest.mm
render_widget_host_view_mac_editcommand_helper.h
render_widget_host_view_mac_editcommand_helper.mm
render_widget_host_view_mac_editcommand_helper_unittest.mm
render_widget_host_view_mac_unittest.mm
renderer_cancellation_throttle.cc
renderer_cancellation_throttle.h
renderer_sandboxed_process_launcher_delegate.cc
renderer_sandboxed_process_launcher_delegate.h
renderer_sandboxed_process_launcher_delegate_unittest.cc
sandbox_flags.md
scoped_view_transition_resources.cc
scoped_view_transition_resources.h
screen_state.cc
screen_state.h
scroll_into_view_browsertest.cc
sec_fetch_browsertest.cc
should_swap_browsing_instance.h
spare_render_process_host_manager_browsertest.cc
spare_render_process_host_manager_impl.cc
spare_render_process_host_manager_impl.h
speculative_render_view_host_browsertest.cc
stored_page.cc
stored_page.h
subframe_history_navigation_throttle.cc
subframe_history_navigation_throttle.h
system_entropy_utils.h
test_render_widget_host_view_ios_factory.h
test_render_widget_host_view_ios_factory.mm
test_render_widget_host_view_mac_factory.h
test_render_widget_host_view_mac_factory.mm
text_input_client_mac.h
text_input_client_mac.mm
text_input_client_mac_unittest.mm
text_input_host_impl.h
text_input_host_impl.mm
text_input_manager.cc
text_input_manager.h
transient_allow_popup.cc
transient_allow_popup.h
transient_allow_popup_unittest.cc
transient_focus_source_user_activation.cc
transient_focus_source_user_activation.h
unassigned_site_instance_browsertest.cc
view_transition_browsertest.cc
view_transition_commit_deferring_condition.cc
view_transition_commit_deferring_condition.h
view_transition_opt_in_state.cc
view_transition_opt_in_state.h
virtual_keyboard_controller_win.cc
virtual_keyboard_controller_win.h
visible_time_request_trigger.cc
visible_time_request_trigger.h
visible_time_request_trigger_unittest.cc
web_menu_runner_ios.h
web_menu_runner_ios.mm
resources
scheduler
screen_details
screen_orientation
screenlock_monitor
security
serial
service_worker
shape_detection
shared_storage
smart_card
sms
speech
ssl
storage_access
system_dns_resolution
tracing
usb
wake_lock
web_contents
web_database
web_package
webauth
webid
webrtc
websockets
webtransport
webui
worker_host
xr
zygote_host
BACK_FORWARD_CACHE_OWNERS
BUILD.gn
CHILD_PROCESS_SECURITY_POLICY_OWNERS
DEPS
OWNERS
PRESUBMIT.py
README.md
about_url_loader_factory.cc
about_url_loader_factory.h
after_startup_task_utils.cc
after_startup_task_utils.h
agent_cluster_key.cc
agent_cluster_key.h
agent_cluster_key_unittest.cc
back_forward_cache_basics_browsertest.cc
back_forward_cache_browsertest.cc
back_forward_cache_browsertest.h
back_forward_cache_features_browsertest.cc
back_forward_cache_internal_browsertest.cc
back_forward_cache_network_request_browsertest.cc
back_forward_cache_no_store_browsertest.cc
back_forward_cache_not_restored_reasons_browsertest.cc
back_forward_cache_test_util.cc
back_forward_cache_test_util.h
bad_message.cc
bad_message.h
battery_monitor_browsertest.cc
bookmarklet_browsertest.cc
browser_child_process_host_impl.cc
browser_child_process_host_impl.h
browser_child_process_host_impl_receiver_bindings.cc
browser_child_process_observer_browsertest.cc
browser_context.cc
browser_context_impl.cc
browser_context_impl.h
browser_interface_binders.cc
browser_interface_binders.h
browser_interface_broker_impl.h
browser_main.cc
browser_main.h
browser_main_loop.cc
browser_main_loop.h
browser_main_loop_unittest.cc
browser_main_runner_impl.cc
browser_main_runner_impl.h
browser_process_io_thread.cc
browser_process_io_thread.h
browser_task_traits_nocompile.nc
browser_thread_browsertest.cc
browser_thread_impl.cc
browser_thread_impl.h
browser_thread_nocompile.nc
browser_thread_unittest.cc
browser_url_handler_impl.cc
browser_url_handler_impl.h
browser_url_handler_impl_unittest.cc
browsing_instance.cc
browsing_instance.h
byte_stream.cc
byte_stream.h
byte_stream_unittest.cc
can_commit_status.h
child_process_host_impl.cc
child_process_host_impl.h
child_process_launcher.cc
child_process_launcher.h
child_process_launcher_browsertest.cc
child_process_launcher_helper.cc
child_process_launcher_helper.h
child_process_launcher_helper_android.cc
child_process_launcher_helper_fuchsia.cc
child_process_launcher_helper_ios.mm
child_process_launcher_helper_linux.cc
child_process_launcher_helper_mac.cc
child_process_launcher_helper_posix.cc
child_process_launcher_helper_posix.h
child_process_launcher_helper_win.cc
child_process_security_policy_browsertest.cc
child_process_security_policy_impl.cc
child_process_security_policy_impl.h
child_process_security_policy_unittest.cc
child_process_task_port_provider_mac.cc
child_process_task_port_provider_mac.h
child_process_task_port_provider_mac_unittest.cc
child_thread_type_switcher_linux.cc
child_thread_type_switcher_linux.h
content_security_policy_browsertest.cc
context_factory.cc
cross_site_transfer_browsertest.cc
data_decoder_browsertest.cc
data_url_loader_factory.cc
data_url_loader_factory.h
database_browsertest.cc
do_not_track_browsertest.cc
eye_dropper_chooser_impl.cc
eye_dropper_chooser_impl.h
feature_observer.cc
feature_observer.h
field_trial_recorder.cc
field_trial_recorder.h
field_trial_synchronizer.cc
field_trial_synchronizer.h
find_in_page_client.cc
find_in_page_client.h
find_request_manager.cc
find_request_manager.h
find_request_manager_browsertest.cc
font_list_async.cc
font_preferences_browsertest.cc
font_service.cc
font_service.h
form_controls_browsertest.cc
framebusting_browsertest.cc
guest_page_holder_impl.cc
guest_page_holder_impl.h
host_zoom_level_context.cc
host_zoom_level_context.h
host_zoom_map_impl.cc
host_zoom_map_impl.h
host_zoom_map_impl_browsertest.cc
host_zoom_map_impl_unittest.cc
in_memory_federated_permission_context.cc
in_memory_federated_permission_context.h
isolated_origin_browsertest.cc
isolated_origin_util.cc
isolated_origin_util.h
isolation_context.cc
isolation_context.h
keyboard_lock_browsertest.cc
keyboard_lock_browsertest.h
keyboard_lock_browsertest_ios.mm
keyboard_lock_browsertest_mac.mm
largest_contentful_paint_browsertests.cc
launch_as_mojo_client_browsertest.cc
log_console_message.cc
log_console_message.h
message_port_close_event_browsertest.cc
message_port_provider.cc
message_port_provider_browsertest.cc
mime_registry_impl.cc
mime_registry_impl.h
mojo_binder_policy_applier.cc
mojo_binder_policy_applier.h
mojo_binder_policy_applier_unittest.cc
mojo_binder_policy_map_impl.cc
mojo_binder_policy_map_impl.h
mojo_binder_policy_map_impl_unittest.cc
mojo_sandbox_browsertest.cc
native_profiling.pdl
navigation_browsertest.cc
navigation_mhtml_browsertest.cc
navigation_or_document_handle.cc
navigation_or_document_handle.h
navigation_subresource_loader_params.cc
navigation_subresource_loader_params.h
net_info_browsertest.cc
network_context_client_base_impl.cc
network_context_client_base_impl.h
network_context_client_base_impl_unittest.cc
network_sandbox.cc
network_sandbox.h
network_sandbox_grant_result.h
network_service_browsertest.cc
network_service_client.cc
network_service_client.h
network_service_instance_impl.cc
network_service_instance_impl.h
network_service_instance_impl_unittest.cc
network_service_restart_browsertest.cc
origin_agent_cluster_isolation_state.cc
origin_agent_cluster_isolation_state.h
per_web_ui_browser_interface_broker.cc
performance_memory_browsertest.cc
performance_timeline_browsertest.cc
plugin_list.cc
plugin_list.h
plugin_list_unittest.cc
plugin_service_impl.cc
plugin_service_impl.h
plugin_service_impl_browsertest.cc
pointer_lock_browsertest.cc
pointer_lock_browsertest.h
pointer_lock_browsertest_ios.mm
pointer_lock_browsertest_mac.mm
posix_file_descriptor_info_impl.cc
posix_file_descriptor_info_impl.h
posix_file_descriptor_info_impl_unittest.cc
power_monitor_browsertest.cc
ppapi_plugin_process_host.cc
ppapi_plugin_process_host.h
ppapi_plugin_process_host_receiver_bindings.cc
ppapi_plugin_sandboxed_process_launcher_delegate.cc
ppapi_plugin_sandboxed_process_launcher_delegate.h
process_lock.cc
process_lock.h
process_reuse_policy.h
process_visibility_util.cc
profiling_utils.cc
resource_context_impl.cc
resource_context_impl.h
resource_coordinator_service.cc
resource_loading_browsertest.cc
sandbox_host_linux.cc
sandbox_host_linux.h
sandbox_ipc_linux.cc
sandbox_ipc_linux.h
sandbox_mac_unittest.mm
sandbox_parameters_mac.h
sandbox_parameters_mac.mm
sandbox_support_mac_impl.h
sandbox_support_mac_impl.mm
scoped_active_url.cc
scoped_active_url.h
security_exploit_browsertest.cc
service_process_host_browsertest.cc
service_process_host_impl.cc
session_history_browsertest.cc
shareable_file_reference_unittest.cc
site_info.cc
site_info.h
site_instance_group.cc
site_instance_group.h
site_instance_group_browsertest.cc
site_instance_group_manager.cc
site_instance_group_manager.h
site_instance_group_unittest.cc
site_instance_impl.cc
site_instance_impl.h
site_instance_impl_unittest.cc
site_isolation_policy_unittest.cc
site_per_process_browsertest.cc
site_per_process_browsertest.h
site_per_process_hit_test_browsertest.cc
site_per_process_layout_browsertest.cc
site_per_process_mac_browsertest.mm
site_per_process_mixed_content_browsertest.cc
site_per_process_oopsif_browsertest.cc
site_per_process_sad_frame_browsertest.cc
site_per_process_scroll_browsertest.cc
site_per_process_unload_browsertest.cc
snapshot_browsertest.cc
ssl_private_key_impl.cc
ssl_private_key_impl.h
startup_data_impl.cc
startup_data_impl.h
startup_helper.cc
startup_helper.h
startup_task_runner.cc
startup_task_runner.h
startup_task_runner_unittest.cc
storage_partition_config_unittest.cc
storage_partition_impl.cc
storage_partition_impl.h
storage_partition_impl_browsertest.cc
storage_partition_impl_map.cc
storage_partition_impl_map.h
storage_partition_impl_map_unittest.cc
storage_partition_impl_unittest.cc
storage_service_restart_browsertest.cc
storage_service_sandbox_browsertest.cc
synthetic_trial_syncer.cc
text_fragment_browsertest.cc
theme_helper.cc
theme_helper.h
theme_helper_mac.h
theme_helper_mac.mm
ukm_internals_ui.cc
ukm_internals_ui.h
url_info.cc
url_info.h
url_loader_factory_params_helper.cc
url_loader_factory_params_helper.h
utility_process_host.cc
utility_process_host.h
utility_process_host_browsertest.cc
utility_process_host_receiver_bindings.cc
utility_process_sandbox_browsertest.cc
utility_sandbox_delegate.cc
utility_sandbox_delegate.h
utility_sandbox_delegate_unittest.cc
utility_sandbox_delegate_win.cc
v8_snapshot_files.cc
v8_snapshot_files.h
vibration_browsertest.cc
video_capture_service_impl.cc
video_capture_service_impl.h
web_exposed_isolation_info.cc
web_exposed_isolation_info.h
web_exposed_isolation_info_nocompile.nc
web_exposed_isolation_info_unittest.cc
web_ui_browser_interface_broker_registry.cc
webkit_browsertest.cc
worker_network_isolation_key_browsertest.cc
zoom_browsertest.cc
child
common
gpu
ppapi_plugin
public
renderer
services
shell
test
utility
web_test
zygote
BUILD.gn
DEPS
DIR_METADATA
OWNERS
README.md
architecture.png
content_resources.grd
crypto
dbus
device
docs
extensions
fuchsia_web
gin
google_apis
gpu
headless
infra
internal
ios
ios_internal
ipc
media
mojo
native_client
native_client_sdk
net
pdf
ppapi
printing
remoting
rlz
sandbox
services
signing_keys
skia
sql
storage
styleguide
testing
third_party
tools
ui
url
v8
webkit
.clang-format
.clang-tidy
.clangd
.git-blame-ignore-revs
.gitallowed
.gitattributes
.gitignore
.gitmodules
.gn
.mailmap
.rustfmt.toml
.vpython3
.yapfignore
ATL_OWNERS
AUTHORS
BUILD.gn
CODE_OF_CONDUCT.md
CPPLINT.cfg
CRYPTO_OWNERS
DEPS
DIR_METADATA
LICENSE
LICENSE.chromium_os
OWNERS
PRESUBMIT.py
PRESUBMIT_test.py
PRESUBMIT_test_mocks.py
README.md
WATCHLISTS
codereview.settings
src/content/browser/renderer_host
Kartar Singh 9991d66683 Do state transfer from Browser to Viz on successful touch transfer.
In this change we are sending state from Browser after successful touch
transfer had occurred. In the state we currently include following:
- Touch down timestamp, to verify state we received is for the
  "correct" touch sequence.
- Raw y offset used for converting coordinates to account for
  top controls before sending events to renderer.
- Frame sink id of the root widget, widget based hit-testing is done
  on Viz.

WebContentsImpl stores the remote for the newly added interface on Browser
side, while InputManager serves as receiver on Viz side.

Bug: 370506271
Change-Id: I5f8137d60489d13c5800441afb92e7c902323e06
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6077503
Reviewed-by: Camille Lamy <clamy@chromium.org>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Reviewed-by: Aman Verma <amanvr@google.com>
Reviewed-by: Jonathan Ross <jonross@chromium.org>
Reviewed-by: Stephen Nusko <nuskos@chromium.org>
Commit-Queue: Kartar Singh <kartarsingh@google.com>
Cr-Commit-Position: refs/heads/main@{#1394880}
2024-12-11 08:46:24 -08:00
..
2024-11-20 15:49:39 +00:00

What is content/browser/renderer_host?

This directory contains code that can be loosely categorized as "handling the renderer," covering a wide range of topics (navigation, compositing, input, etc). Many of the classes represent a browser-side version of a renderer concept (e.g., RenderFrameHostImpl is the browser-side equivalent of RenderFrameImpl). Refer to the class-level comments on how each class relates to or interacts with the renderer.

Note that many of the key classes here are defined in content/public and exposed to //content embedders, with implementations living in content/browser/renderer_host.

Rough Categories

A non-exhaustive list of rough categories and descriptions for the code within renderer_host is below. When adding something that falls into the miscellaneous category, consider if it belongs in a separate directory, either under content/browser/ or under content/browser/renderer_host.

Allows the browser-side code to represent document and frame-tree related concepts, and communicate with the renderer-side.

Some important classes include:

  • FrameTree and FrameTreeNode: Represents the frames in the frame tree of a page.
  • RenderFrameHost: Roughly represents a document within a frame, although it does not (yet) change for every new document.
  • RenderFrameProxyHost: A placeholder for a frame in other SiteInstanceGroups and renderer processes.
  • RenderViewHost: Represents a page within a given SiteInstanceGroup.
  • RenderWidgetHost: A group of contiguous same-SiteInstanceGroup frames that can paint or handle input events as a single unit.

For diagrams and explanations of how those classes fit with each other, see also this documentation and docs/frame_trees.md.

Represents child processes (e.g., renderers, GPU, etc) and their connection to the browser process.

An important class in this category is RenderProcessHost, which represents the browser side of the browser <-> renderer communication channel. There will be one RenderProcessHost per renderer process.

Navigation

Navigation handling code, coordinating the browser & renderer from navigation start to finish. Also keeps track of the session history entries created by the committed navigations.

Some important classes include:

  • NavigationRequest: Represents a navigation attempt, and tracks information related to it.
  • NavigationController: Manages the joint session history for a frame tree.
  • NavigationEntry and FrameNavigationEntry: Represents joint session history items (for pages), made up of a tree of session history items (for frames).

See also docs/navigation.md and docs/session_history.md.

Compositing, input, display

Coordinates handling of input, display, and compositing between the browser, renderer, and GPU processes.

Some important classes include:

  • RenderWidgetHostView*: The browser owned object that mediates the blink::VisualProperties to be used by an embedded Renderer.
  • DelegatedFrameHost: Used by RenderWidgetHostView to control which viz::Surface of an embedded Renderer the GPU process will display EmbeddedFrameSinkImpl: The browser owned object that mediates between an embedded Renderer and the GPU process. Allowing for the creation of Renderer-GPU Mojo connections.
  • viz::HostFrameSinkManager: The browser owned object, accessed via GetHostFrameSinkManager, that controls the Browser-GPU Mojo connection. Used to establish future connections for Renderers, as well as to control what viz::Surfaces to display.

Misc features that heavily interact with the renderer

Examples: loading/networking, file/storage, plugins, UI, fonts, media, accessibility.

Layering restriction with WebContents

Code in this directory can't call up to the WebContents "layer," except through delegate interfaces (e.g. RenderFrameHostDelegate). This is to separate out code that deals with the renderer process and code that deals with the tab. This is enforced by the DEPS.