移除扩展进程管理器中的原始SiteInstance基础设施

提交: 46af9203 | 2025-07-08 01:28:04+00:00

← 返回列表

移除扩展进程管理器中的原始SiteInstance基础设施

Minor
提交哈希: 46af92035a3247c822aa234d0f44ddd152a8139d
提交时间: 2025-07-08 01:28:04+00:00
影响等级: Minor
生成工具: webview2-upstream-sentry
上游审核链接: 查看上游审核 🔗

📋 摘要

本次提交移除了extensions::ProcessManager中用于管理所有扩展SiteInstance的单一"核心"SiteInstance基础设施,该特性通过kRemoveCoreSiteInstance特性标志控制,已于2024年11月(Chrome 133)默认启用超过7个月。此次变更移除了所有相关的旧代码基础设施,包括传递给ExtensionHost及相关类的SiteInstance参数(在实际使用中始终为null)。变更涉及20个文件,主要包括:移除ProcessManager::GetSiteInstanceForURL()方法、简化ExtensionHost、ExtensionViewHost、OffscreenDocumentHost等类的构造函数参数、移除相关的feature flag定义、以及更新相关测试代码和工厂方法。

🎯 影响分析

由于kRemoveCoreSiteInstance特性已默认启用超过7个月,此次变更应该不会对终端用户和开发者产生功能性影响。这是一次纯粹的代码清理工作,移除了已不再使用的代码路径。对终端用户而言,扩展的加载、运行和生命周期管理保持不变,不会影响扩展的功能性或性能表现。对开发者而言,这简化了扩展开发的底层架构,移除了复杂的SiteInstance管理逻辑,但不会影响扩展开发API的使用。唯一的潜在影响是,如果有开发者或第三方代码直接依赖ProcessManager::GetSiteInstanceForURL()方法或相关的内部API,可能需要适配代码,但这些都是内部API,不应被外部直接使用。整体而言,这次变更提高了代码的可维护性,减少了技术债务。

受影响的类:

ProcessManager ExtensionHost ExtensionViewHost OffscreenDocumentHost ExtensionWebContentsObserver MimeHandlerViewGuest OffscreenDocumentManager