Reland "[PEPC] Snapshot permission statuses at commit navigation"
This is a reland of commit 1924a27a Changes compared to original CL: - A null check for the frame (when we moved stuff from AttachLayout to InsertedInto) - Remove conditions CHECKs when calling UnregisterClient Original change's description: > [PEPC] Snapshot permission statuses at commit navigation > > When <permission> element is added to the DOM, we'll use IPC to check > the permission status and it'll update when the IPC callback is > triggered. This might cause a flicker if the status changes from ASK > to GRANTED. > > We propose to snapshot permission statuses and cache the statuses at > the execution context, outlined in: https://docs.google.com/document/d/1pfuiJ7BIdX0dxMzboYIOvPV1mFKQ3HE_11VQNeBJSCc/edit?resourcekey=0-9el74tCe5opJXh3CIPyPGA&tab=t.0#heading=h.8zmwced28dbp > > Bug: 368238224 > Change-Id: Ib319301d0b9bedb07502a09b4f030d3e40844ea2 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5905369 > Reviewed-by:Thomas Nguyen <tungnh@chromium.org> > Commit-Queue: Thomas Nguyen <tungnh@chromium.org> > Reviewed-by:
Dave Tapuska <dtapuska@chromium.org> > Reviewed-by:
Daniel Cheng <dcheng@chromium.org> > Reviewed-by:
Francois Pierre Doray <fdoray@chromium.org> > Auto-Submit: Thomas Nguyen <tungnh@chromium.org> > Cr-Commit-Position: refs/heads/main@{#1372969} Bug: 368238224 Change-Id: Idb09359fa342393a6fa0956d057955c45e68e723 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5972695 Reviewed-by:
Francois Pierre Doray <fdoray@chromium.org> Reviewed-by:
Daniel Cheng <dcheng@chromium.org> Commit-Queue: Thomas Nguyen <tungnh@chromium.org> Reviewed-by:
Andy Paicu <andypaicu@chromium.org> Reviewed-by:
Dave Tapuska <dtapuska@chromium.org> Cr-Commit-Position: refs/heads/main@{#1378977}
Showing
- components/performance_manager/performance_manager_tab_helper_unittest.cc 2 additions, 2 deletions...rmance_manager/performance_manager_tab_helper_unittest.cc
- content/browser/permissions/permission_controller_impl.h 3 additions, 7 deletionscontent/browser/permissions/permission_controller_impl.h
- content/browser/renderer_host/navigation_controller_impl.cc 4 additions, 1 deletioncontent/browser/renderer_host/navigation_controller_impl.cc
- content/browser/renderer_host/navigation_entry_impl.cc 2 additions, 1 deletioncontent/browser/renderer_host/navigation_entry_impl.cc
- content/browser/renderer_host/navigation_request.cc 5 additions, 2 deletionscontent/browser/renderer_host/navigation_request.cc
- content/browser/renderer_host/render_frame_host_impl.cc 36 additions, 0 deletionscontent/browser/renderer_host/render_frame_host_impl.cc
- content/browser/renderer_host/render_frame_host_impl.h 13 additions, 0 deletionscontent/browser/renderer_host/render_frame_host_impl.h
- content/public/browser/permission_controller.h 7 additions, 0 deletionscontent/public/browser/permission_controller.h
- content/public/test/mock_permission_controller.h 4 additions, 0 deletionscontent/public/test/mock_permission_controller.h
- content/renderer/render_frame_impl.cc 2 additions, 0 deletionscontent/renderer/render_frame_impl.cc
- third_party/blink/public/mojom/navigation/navigation_params.mojom 8 additions, 0 deletions...rty/blink/public/mojom/navigation/navigation_params.mojom
- third_party/blink/public/web/web_navigation_params.h 7 additions, 0 deletionsthird_party/blink/public/web/web_navigation_params.h
- third_party/blink/renderer/core/frame/build.gni 3 additions, 0 deletionsthird_party/blink/renderer/core/frame/build.gni
- third_party/blink/renderer/core/frame/cached_permission_status.cc 137 additions, 0 deletions...rty/blink/renderer/core/frame/cached_permission_status.cc
- third_party/blink/renderer/core/frame/cached_permission_status.h 149 additions, 0 deletions...arty/blink/renderer/core/frame/cached_permission_status.h
- third_party/blink/renderer/core/frame/cached_permission_status_test.cc 182 additions, 0 deletions...link/renderer/core/frame/cached_permission_status_test.cc
- third_party/blink/renderer/core/html/html_permission_element.cc 74 additions, 66 deletions...party/blink/renderer/core/html/html_permission_element.cc
- third_party/blink/renderer/core/html/html_permission_element.h 15 additions, 10 deletions..._party/blink/renderer/core/html/html_permission_element.h
- third_party/blink/renderer/core/html/html_permission_element_test.cc 109 additions, 51 deletions.../blink/renderer/core/html/html_permission_element_test.cc
- third_party/blink/renderer/core/loader/document_loader.cc 55 additions, 1 deletionthird_party/blink/renderer/core/loader/document_loader.cc
Loading
Please register or sign in to comment