[Mojo/Content] Define Immersive Playback Mojo and C++ interfaces [chromium/src : main]

0 views
Skip to first unread message

Frank Liberato (Gerrit)

unread,
Apr 2, 2026, 1:42:47 PMApr 2
to Oleh Desiatyrikov (xWF), Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Oleh Desiatyrikov (xWF)

Frank Liberato added 1 comment

File content/browser/web_contents/web_contents_impl.cc
Line 11445, Patchset 6: return delegate_ ? delegate_->EnterPictureInPicture(this)
Frank Liberato . unresolved

this is subtle. this has side-effects such as notifying the picture in picture window manager that pip has started. there can only be one pip window at a time, and since immersive is built on pip, i suspect that's the same limitation. i don't know for sure which of these things we want to trigger in immersive, but i'd not be surprised if 'all of them' were reasonable.

i'm really not sure though. just that it's subtle and needs some thought.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc;drc=702cda56c1ee1a82d800698dd6e863e45fe5da49;l=195

Open in Gerrit

Related details

Attention is currently required from:
  • Oleh Desiatyrikov (xWF)
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
Gerrit-Change-Number: 7717398
Gerrit-PatchSet: 6
Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
Gerrit-CC: Yizhi Zhao <yi...@google.com>
Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Comment-Date: Thu, 02 Apr 2026 17:42:40 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Oleh Desiatyrikov (xWF) (Gerrit)

unread,
Apr 2, 2026, 1:53:42 PMApr 2
to Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato

Oleh Desiatyrikov (xWF) added 1 comment

File content/browser/web_contents/web_contents_impl.cc
Line 11445, Patchset 6: return delegate_ ? delegate_->EnterPictureInPicture(this)
Frank Liberato . unresolved

this is subtle. this has side-effects such as notifying the picture in picture window manager that pip has started. there can only be one pip window at a time, and since immersive is built on pip, i suspect that's the same limitation. i don't know for sure which of these things we want to trigger in immersive, but i'd not be surprised if 'all of them' were reasonable.

i'm really not sure though. just that it's subtle and needs some thought.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc;drc=702cda56c1ee1a82d800698dd6e863e45fe5da49;l=195

Oleh Desiatyrikov (xWF)

This is where I finally implement it [1]. It will call the same `PictureInPictureWindowManager::GetInstance()->EnterVideoPictureInPicture(web_contents)` as the `EnterPictureInPicture`. The only difference is that it will check for the `IsImmersivePlaybackEnabled` before proceeding. In this case the PiP can stay disabled (or unsupported) and Immersive can still be enabled.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/7715888/3/chrome/browser/android/tab_web_contents_delegate_android.cc

Open in Gerrit

Related details

Attention is currently required from:
  • Frank Liberato
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
Gerrit-Change-Number: 7717398
Gerrit-PatchSet: 9
Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
Gerrit-CC: Yizhi Zhao <yi...@google.com>
Gerrit-Attention: Frank Liberato <libe...@chromium.org>
Gerrit-Comment-Date: Thu, 02 Apr 2026 17:53:36 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Frank Liberato <libe...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Oleh Desiatyrikov (xWF) (Gerrit)

unread,
Apr 2, 2026, 1:56:47 PMApr 2
to Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato

Oleh Desiatyrikov (xWF) added 4 comments

File content/browser/picture_in_picture/picture_in_picture_service_impl.h
Line 53, Patchset 2: void RequestImmersivePlayback(RequestImmersivePlaybackCallback) final;
Frank Liberato . resolved

this feels like it's simply an implementation convenience. it could be moved to another xr-specific service if there is one available. this is especially true once the xr options it returns are handed back to `StartSession()`.

it's also okay to keep it here, since it's convenient and doesn't really hurt anything. but, in case you already have such a service where it would fit better, the `StartSession()` changes now decouple it entirely from the pip service if you want.

Oleh Desiatyrikov (xWF)

Done

File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.h
Line 65, Patchset 2: void SetIsImmersive(bool is_immersive) override;
Frank Liberato . resolved

i don;t follow why this isn't a parameter to StartSession(). doesn't the renderer know at that point if it's requesting immersive or not?

Oleh Desiatyrikov (xWF)

I was trying to be as less intrusive as possible only adding the necessary things and not changing the existing interface. If you suggest moving this to the constructor - I have no objections. I'm also fine with using
`bool IsImmersive() const { return immersive_options.has_value(); }`.
Please let me know which way you prefer.

Frank Liberato

`StartSession()` should get the parameters. otherwise, one could end up in the position where the immersive flags are set, but nobody ever calls StartSession for whatever reason. this will break something, possibly the next call to StartSession().

to be honest, there is a lot of information in the window controller that should be in the session - existing stuff, i mean, not just these new xr flags. but conceptually, the session is roughly "this instance of the pip window" while the controller is... i'm not sure what.

storing the xr flags on the window controller is right (or at least consistent with what we're already, incorrectly, doing), to be clear.

Oleh Desiatyrikov (xWF)

Done

File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.cc
Line 665, Patchset 2: is_immersive_ = false;
immersive_stereo_mode_ = blink::mojom::ImmersiveStereoMode::kMono;
immersive_projection_type_ = blink::mojom::ImmersiveEntityShape::kQuad;
Frank Liberato . resolved

if these have to be held here, i suggest something like:

```
using ImmersiveOptions =- struct {mode, type};
std::optional<ImmersiveOptions> immersive_options_;
bool IsImmersive() const { return immersive_options.has_value(); }
```

Oleh Desiatyrikov (xWF)

Okay, no problem.

Oleh Desiatyrikov (xWF)

Done

File third_party/blink/public/mojom/picture_in_picture/picture_in_picture.mojom
Line 114, Patchset 2: RequestImmersivePlayback() => (ImmersivePlaybackResult result);
Frank Liberato . unresolved

unsure if this needs to be here. seems only tangentially related.

Oleh Desiatyrikov (xWF)

I was also thinking about moving this to a separate interface. I decided to keep it here for now and ask you opinion.

Oleh Desiatyrikov (xWF)

If it's okay to keep it here for now, I'd prefer to leave it as is. Currently, there is no AndroidXR related service where I could place it.

Gerrit-Comment-Date: Thu, 02 Apr 2026 17:56:39 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Comment-In-Reply-To: Frank Liberato <libe...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Oleh Desiatyrikov (xWF) (Gerrit)

unread,
Apr 2, 2026, 6:06:42 PMApr 2
to Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato

Oleh Desiatyrikov (xWF) added 1 comment

Patchset-level comments
File-level comment, Patchset 2:
Oleh Desiatyrikov (xWF) . resolved

I see a bunch of failed targets. Working to resolve them.

Oleh Desiatyrikov (xWF)

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Frank Liberato
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
Gerrit-Change-Number: 7717398
Gerrit-PatchSet: 10
Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
Gerrit-CC: Yizhi Zhao <yi...@google.com>
Gerrit-Attention: Frank Liberato <libe...@chromium.org>
Gerrit-Comment-Date: Thu, 02 Apr 2026 22:06:33 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

Frank Liberato (Gerrit)

unread,
Apr 7, 2026, 3:51:06 PMApr 7
to Oleh Desiatyrikov (xWF), Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Oleh Desiatyrikov (xWF)

Frank Liberato added 2 comments

File content/browser/web_contents/web_contents_impl.cc
Line 11445, Patchset 6: return delegate_ ? delegate_->EnterPictureInPicture(this)
Frank Liberato . unresolved

this is subtle. this has side-effects such as notifying the picture in picture window manager that pip has started. there can only be one pip window at a time, and since immersive is built on pip, i suspect that's the same limitation. i don't know for sure which of these things we want to trigger in immersive, but i'd not be surprised if 'all of them' were reasonable.

i'm really not sure though. just that it's subtle and needs some thought.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc;drc=702cda56c1ee1a82d800698dd6e863e45fe5da49;l=195

Oleh Desiatyrikov (xWF)

This is where I finally implement it [1]. It will call the same `PictureInPictureWindowManager::GetInstance()->EnterVideoPictureInPicture(web_contents)` as the `EnterPictureInPicture`. The only difference is that it will check for the `IsImmersivePlaybackEnabled` before proceeding. In this case the PiP can stay disabled (or unsupported) and Immersive can still be enabled.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/7715888/3/chrome/browser/android/tab_web_contents_delegate_android.cc

Frank Liberato

not sure i understand what you mean - i think i'm not getting why picture in picture has to be any different at this level than immersive mode. other than having some extra ImmersiveMode options that the controller knows about and instantiating a different overlay window type, what's the difference?

File third_party/blink/public/mojom/picture_in_picture/picture_in_picture.mojom
Line 114, Patchset 2: RequestImmersivePlayback() => (ImmersivePlaybackResult result);
Frank Liberato . unresolved

unsure if this needs to be here. seems only tangentially related.

Oleh Desiatyrikov (xWF)

I was also thinking about moving this to a separate interface. I decided to keep it here for now and ask you opinion.

Oleh Desiatyrikov (xWF)

If it's okay to keep it here for now, I'd prefer to leave it as is. Currently, there is no AndroidXR related service where I could place it.

Frank Liberato

sure just add a comment to that effect. else future me will wonder why it's here.

Open in Gerrit

Related details

Attention is currently required from:
  • Oleh Desiatyrikov (xWF)
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
Gerrit-Change-Number: 7717398
Gerrit-PatchSet: 15
Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
Gerrit-CC: Yizhi Zhao <yi...@google.com>
Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Comment-Date: Tue, 07 Apr 2026 19:50:57 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Comment-In-Reply-To: Frank Liberato <libe...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Oleh Desiatyrikov (xWF) (Gerrit)

unread,
Apr 7, 2026, 4:07:07 PMApr 7
to Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato

Oleh Desiatyrikov (xWF) added 1 comment

File content/browser/web_contents/web_contents_impl.cc
Line 11445, Patchset 6: return delegate_ ? delegate_->EnterPictureInPicture(this)
Frank Liberato . unresolved

this is subtle. this has side-effects such as notifying the picture in picture window manager that pip has started. there can only be one pip window at a time, and since immersive is built on pip, i suspect that's the same limitation. i don't know for sure which of these things we want to trigger in immersive, but i'd not be surprised if 'all of them' were reasonable.

i'm really not sure though. just that it's subtle and needs some thought.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc;drc=702cda56c1ee1a82d800698dd6e863e45fe5da49;l=195

Oleh Desiatyrikov (xWF)

This is where I finally implement it [1]. It will call the same `PictureInPictureWindowManager::GetInstance()->EnterVideoPictureInPicture(web_contents)` as the `EnterPictureInPicture`. The only difference is that it will check for the `IsImmersivePlaybackEnabled` before proceeding. In this case the PiP can stay disabled (or unsupported) and Immersive can still be enabled.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/7715888/3/chrome/browser/android/tab_web_contents_delegate_android.cc

Frank Liberato

not sure i understand what you mean - i think i'm not getting why picture in picture has to be any different at this level than immersive mode. other than having some extra ImmersiveMode options that the controller knows about and instantiating a different overlay window type, what's the difference?

Oleh Desiatyrikov (xWF)

When `WebContentsImpl::EnterPictureInPicture` calls `delegate_->EnterPictureInPicture(this)` we are handling this call at `TabWebContentsDelegateAndroid::EnterPictureInPicture`. There we check for `IsPictureInPictureEnabled()` [1].

In our case, `IsPictureInPictureEnabled()` returns false since PiP is disabled on Android XR. So, to be able to proceed with immersive XR session even though the PiP is disabled, I've introduced a separate `EnterImmersivePlayback/IsImmersivePlaybackEnabled` methods.

Otherwise, I could keep the same `EnterPictureInPicture` method and add `bool is_immersive` as a parameter.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/android/tab_web_contents_delegate_android.cc;drc=0d7ce0b12a73beb8d3a78b6d200824515386942c;l=460

Open in Gerrit

Related details

Attention is currently required from:
  • Frank Liberato
Gerrit-Attention: Frank Liberato <libe...@chromium.org>
Gerrit-Comment-Date: Tue, 07 Apr 2026 20:06:58 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

Oleh Desiatyrikov (xWF) (Gerrit)

unread,
Apr 7, 2026, 5:01:06 PMApr 7
to Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato

Oleh Desiatyrikov (xWF) added 1 comment

File third_party/blink/public/mojom/picture_in_picture/picture_in_picture.mojom
Line 114, Patchset 2: RequestImmersivePlayback() => (ImmersivePlaybackResult result);
Frank Liberato . resolved

unsure if this needs to be here. seems only tangentially related.

Oleh Desiatyrikov (xWF)

I was also thinking about moving this to a separate interface. I decided to keep it here for now and ask you opinion.

Oleh Desiatyrikov (xWF)

If it's okay to keep it here for now, I'd prefer to leave it as is. Currently, there is no AndroidXR related service where I could place it.

Frank Liberato

sure just add a comment to that effect. else future me will wonder why it's here.

Oleh Desiatyrikov (xWF)

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Frank Liberato
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
Gerrit-Change-Number: 7717398
Gerrit-PatchSet: 16
Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
Gerrit-CC: Yizhi Zhao <yi...@google.com>
Gerrit-Attention: Frank Liberato <libe...@chromium.org>
Gerrit-Comment-Date: Tue, 07 Apr 2026 21:00:55 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

Oleh Desiatyrikov (xWF) (Gerrit)

unread,
Apr 8, 2026, 3:26:33 PMApr 8
to Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato

Oleh Desiatyrikov (xWF) added 1 comment

File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.cc
Line 349, Patchset 2:void VideoPictureInPictureWindowControllerImpl::RequestImmersivePlayback(
Frank Liberato . resolved

i'm confused about the overall flow. is this the thing that asks the user for permission?

Oleh Desiatyrikov (xWF)

Yes, correct. We need to ask user confirmation for immersive playback. Here is a [document](go/chromxr-immersive-playback-pip) with all the details.

Oleh Desiatyrikov (xWF)

Done

Gerrit-Comment-Date: Wed, 08 Apr 2026 19:26:24 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

Frank Liberato (Gerrit)

unread,
Apr 8, 2026, 3:49:29 PMApr 8
to Oleh Desiatyrikov (xWF), Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Oleh Desiatyrikov (xWF) and Tommy Steimel

Frank Liberato added 2 comments

Patchset-level comments
File-level comment, Patchset 16 (Latest):
Frank Liberato . resolved

+cc:steimel@ for opinions.

thanks
-fl

File content/browser/web_contents/web_contents_impl.cc
Line 11445, Patchset 6: return delegate_ ? delegate_->EnterPictureInPicture(this)
Frank Liberato . unresolved

this is subtle. this has side-effects such as notifying the picture in picture window manager that pip has started. there can only be one pip window at a time, and since immersive is built on pip, i suspect that's the same limitation. i don't know for sure which of these things we want to trigger in immersive, but i'd not be surprised if 'all of them' were reasonable.

i'm really not sure though. just that it's subtle and needs some thought.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc;drc=702cda56c1ee1a82d800698dd6e863e45fe5da49;l=195

Oleh Desiatyrikov (xWF)

This is where I finally implement it [1]. It will call the same `PictureInPictureWindowManager::GetInstance()->EnterVideoPictureInPicture(web_contents)` as the `EnterPictureInPicture`. The only difference is that it will check for the `IsImmersivePlaybackEnabled` before proceeding. In this case the PiP can stay disabled (or unsupported) and Immersive can still be enabled.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/7715888/3/chrome/browser/android/tab_web_contents_delegate_android.cc

Frank Liberato

not sure i understand what you mean - i think i'm not getting why picture in picture has to be any different at this level than immersive mode. other than having some extra ImmersiveMode options that the controller knows about and instantiating a different overlay window type, what's the difference?

Oleh Desiatyrikov (xWF)

When `WebContentsImpl::EnterPictureInPicture` calls `delegate_->EnterPictureInPicture(this)` we are handling this call at `TabWebContentsDelegateAndroid::EnterPictureInPicture`. There we check for `IsPictureInPictureEnabled()` [1].

In our case, `IsPictureInPictureEnabled()` returns false since PiP is disabled on Android XR. So, to be able to proceed with immersive XR session even though the PiP is disabled, I've introduced a separate `EnterImmersivePlayback/IsImmersivePlaybackEnabled` methods.

Otherwise, I could keep the same `EnterPictureInPicture` method and add `bool is_immersive` as a parameter.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/android/tab_web_contents_delegate_android.cc;drc=0d7ce0b12a73beb8d3a78b6d200824515386942c;l=460

Frank Liberato

ah i see. definitely trying to merge the code paths a bit i think is a good idea. i'm picturing "immersive mode" as another type of pip - it's basically "pip with a different window type" but still, for practical purposes, just pip.

i'm not a big fan of `WebContentsImpl::EnterPictureInPicture(bool is_immersive)` though. maybe we should send in an VideoPictureInPictureSessionOptions struct into StartSession and also just pass that along to EnterPictureInPicture? that might be a lot cleaner. @ste...@chromium.org - WDYT?

TL;DR: PipService::StartSession => WebContentsImpl::Enter(Video)PictureInPicture(void) => WebContentsDelegate::EnterPictureInPIcture needs to know a boolean.

Open in Gerrit

Related details

Attention is currently required from:
  • Oleh Desiatyrikov (xWF)
  • Tommy Steimel
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
Gerrit-Change-Number: 7717398
Gerrit-PatchSet: 16
Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-CC: Tommy Steimel <ste...@chromium.org>
Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
Gerrit-CC: Yizhi Zhao <yi...@google.com>
Gerrit-Attention: Tommy Steimel <ste...@chromium.org>
Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Comment-Date: Wed, 08 Apr 2026 19:49:20 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

Oleh Desiatyrikov (xWF) (Gerrit)

unread,
Apr 9, 2026, 12:30:56 PMApr 9
to Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato and Tommy Steimel

Oleh Desiatyrikov (xWF) added 1 comment

File content/browser/web_contents/web_contents_impl.cc
Line 11445, Patchset 6: return delegate_ ? delegate_->EnterPictureInPicture(this)
Frank Liberato . unresolved

this is subtle. this has side-effects such as notifying the picture in picture window manager that pip has started. there can only be one pip window at a time, and since immersive is built on pip, i suspect that's the same limitation. i don't know for sure which of these things we want to trigger in immersive, but i'd not be surprised if 'all of them' were reasonable.

i'm really not sure though. just that it's subtle and needs some thought.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc;drc=702cda56c1ee1a82d800698dd6e863e45fe5da49;l=195

Oleh Desiatyrikov (xWF)

This is where I finally implement it [1]. It will call the same `PictureInPictureWindowManager::GetInstance()->EnterVideoPictureInPicture(web_contents)` as the `EnterPictureInPicture`. The only difference is that it will check for the `IsImmersivePlaybackEnabled` before proceeding. In this case the PiP can stay disabled (or unsupported) and Immersive can still be enabled.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/7715888/3/chrome/browser/android/tab_web_contents_delegate_android.cc

Frank Liberato

not sure i understand what you mean - i think i'm not getting why picture in picture has to be any different at this level than immersive mode. other than having some extra ImmersiveMode options that the controller knows about and instantiating a different overlay window type, what's the difference?

Oleh Desiatyrikov (xWF)

When `WebContentsImpl::EnterPictureInPicture` calls `delegate_->EnterPictureInPicture(this)` we are handling this call at `TabWebContentsDelegateAndroid::EnterPictureInPicture`. There we check for `IsPictureInPictureEnabled()` [1].

In our case, `IsPictureInPictureEnabled()` returns false since PiP is disabled on Android XR. So, to be able to proceed with immersive XR session even though the PiP is disabled, I've introduced a separate `EnterImmersivePlayback/IsImmersivePlaybackEnabled` methods.

Otherwise, I could keep the same `EnterPictureInPicture` method and add `bool is_immersive` as a parameter.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/android/tab_web_contents_delegate_android.cc;drc=0d7ce0b12a73beb8d3a78b6d200824515386942c;l=460

Frank Liberato

ah i see. definitely trying to merge the code paths a bit i think is a good idea. i'm picturing "immersive mode" as another type of pip - it's basically "pip with a different window type" but still, for practical purposes, just pip.

i'm not a big fan of `WebContentsImpl::EnterPictureInPicture(bool is_immersive)` though. maybe we should send in an VideoPictureInPictureSessionOptions struct into StartSession and also just pass that along to EnterPictureInPicture? that might be a lot cleaner. @ste...@chromium.org - WDYT?

TL;DR: PipService::StartSession => WebContentsImpl::Enter(Video)PictureInPicture(void) => WebContentsDelegate::EnterPictureInPIcture needs to know a boolean.

Oleh Desiatyrikov (xWF)

@libe...@chromium.org

How about we check for `IsPictureInPictureEnabled/IsImmersivePlaybackEnabled` in `VideoPictureInPictureWindowControllerImpl` instead of checking it in `TabWebContentsDelegateAndroid`. This will make the code neater and will remove the `EnterImmersivePlayback` path entirely.

```
PictureInPictureResult result = PictureInPictureResult::kNotSupported;
WebContentsDelegate* delegate = web_contents()->GetDelegate();
  if (delegate && (IsImmersive() ? delegate->IsImmersivePlaybackEnabled()
: delegate->IsPictureInPictureEnabled())) {
result = GetWebContentsImpl()->EnterPictureInPicture();
}

```

The check was added to the `TabWebContentsDelegateAndroid` just recently.
[1] https://chromium-review.googlesource.com/c/chromium/src/+/7565223

Open in Gerrit

Related details

Attention is currently required from:
  • Frank Liberato
  • Tommy Steimel
Gerrit-Attention: Frank Liberato <libe...@chromium.org>
Gerrit-Comment-Date: Thu, 09 Apr 2026 16:30:47 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

Tommy Steimel (Gerrit)

unread,
Apr 9, 2026, 2:24:34 PMApr 9
to Oleh Desiatyrikov (xWF), Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato and Oleh Desiatyrikov (xWF)

Tommy Steimel added 2 comments

File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.cc
Line 302, Patchset 16 (Latest): result = GetWebContentsImpl()->EnterImmersivePlayback();
Tommy Steimel . unresolved

Does this need to do any sort of check that we've gone through the `RequestImmersivePlaybackConfirmation()` process?

Line 327, Patchset 16 (Latest): if (!window_) {
Tommy Steimel . unresolved

IIUC this probably needs to also create a new window if the current `window_` is of the other type (i.e. we're going from pip to immersive or vice versa)

Open in Gerrit

Related details

Attention is currently required from:
  • Frank Liberato
  • Oleh Desiatyrikov (xWF)
Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Attention: Frank Liberato <libe...@chromium.org>
Gerrit-Comment-Date: Thu, 09 Apr 2026 18:24:22 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Frank Liberato (Gerrit)

unread,
Apr 9, 2026, 5:53:21 PMApr 9
to Oleh Desiatyrikov (xWF), Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, AyeAye, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Oleh Desiatyrikov (xWF)

Frank Liberato added 2 comments

File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.cc
Tommy Steimel . unresolved

IIUC this probably needs to also create a new window if the current `window_` is of the other type (i.e. we're going from pip to immersive or vice versa)

Frank Liberato

that's a very good point.

File content/browser/web_contents/web_contents_impl.cc
Frank Liberato

yeah i think that makes a lot of sense.

Open in Gerrit

Related details

Attention is currently required from:
  • Oleh Desiatyrikov (xWF)
Gerrit-Comment-Date: Thu, 09 Apr 2026 21:53:12 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Tommy Steimel <ste...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Oleh Desiatyrikov (xWF) (Gerrit)

unread,
Apr 10, 2026, 5:12:20 PMApr 10
to Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato and Tommy Steimel

Oleh Desiatyrikov (xWF) added 3 comments

File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.cc
Line 302, Patchset 16: result = GetWebContentsImpl()->EnterImmersivePlayback();
Tommy Steimel . resolved

Does this need to do any sort of check that we've gone through the `RequestImmersivePlaybackConfirmation()` process?

Oleh Desiatyrikov (xWF)

Not necessary. We might convert it to the WebAPI afterwards to let websites to control it.

Line 327, Patchset 16: if (!window_) {
Tommy Steimel . unresolved

IIUC this probably needs to also create a new window if the current `window_` is of the other type (i.e. we're going from pip to immersive or vice versa)

Frank Liberato

that's a very good point.

Oleh Desiatyrikov (xWF)

This path is currently unreachable. If it's okay, I would prefer to add a TODO and address it once everything else is done.

File content/browser/web_contents/web_contents_impl.cc
Line 11445, Patchset 6: return delegate_ ? delegate_->EnterPictureInPicture(this)
Frank Liberato . resolved
Oleh Desiatyrikov (xWF)

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Frank Liberato
  • Tommy Steimel
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
Gerrit-Change-Number: 7717398
Gerrit-PatchSet: 18
Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-CC: Tommy Steimel <ste...@chromium.org>
Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
Gerrit-CC: Yizhi Zhao <yi...@google.com>
Gerrit-Attention: Tommy Steimel <ste...@chromium.org>
Gerrit-Attention: Frank Liberato <libe...@chromium.org>
Gerrit-Comment-Date: Fri, 10 Apr 2026 21:12:10 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

Frank Liberato (Gerrit)

unread,
Apr 10, 2026, 5:35:17 PMApr 10
to Oleh Desiatyrikov (xWF), Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Oleh Desiatyrikov (xWF) and Tommy Steimel

Frank Liberato added 1 comment

File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.cc
Line 327, Patchset 16: if (!window_) {
Tommy Steimel . unresolved

IIUC this probably needs to also create a new window if the current `window_` is of the other type (i.e. we're going from pip to immersive or vice versa)

Frank Liberato

that's a very good point.

Oleh Desiatyrikov (xWF)

This path is currently unreachable. If it's okay, I would prefer to add a TODO and address it once everything else is done.

Frank Liberato

is it unreachable via any combination of pip and immersive? if so, please convert this to a CHECK. i didn't think this was unreachable though.

Open in Gerrit

Related details

Attention is currently required from:
  • Oleh Desiatyrikov (xWF)
  • Tommy Steimel
Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
Gerrit-Comment-Date: Fri, 10 Apr 2026 21:35:06 +0000
satisfied_requirement
unsatisfied_requirement
open
diffy

Oleh Desiatyrikov (xWF) (Gerrit)

unread,
Apr 15, 2026, 6:14:19 PMApr 15
to Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
Attention needed from Frank Liberato and Tommy Steimel

Oleh Desiatyrikov (xWF) added 2 comments

Patchset-level comments
Oleh Desiatyrikov (xWF) . resolved

@libe...@chromium.org is there anything else should I look at?

File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.cc
Line 327, Patchset 16: if (!window_) {
Tommy Steimel . resolved

IIUC this probably needs to also create a new window if the current `window_` is of the other type (i.e. we're going from pip to immersive or vice versa)

Frank Liberato

that's a very good point.

Oleh Desiatyrikov (xWF)

This path is currently unreachable. If it's okay, I would prefer to add a TODO and address it once everything else is done.

Frank Liberato

is it unreachable via any combination of pip and immersive? if so, please convert this to a CHECK. i didn't think this was unreachable though.

Oleh Desiatyrikov (xWF)

Immersive mode is currently only supported on Android XR, where Picture-in-Picture is disabled.

Added a CHECK with a comment.

Open in Gerrit

Related details

Attention is currently required from:
  • Frank Liberato
  • Tommy Steimel
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
    Gerrit-Change-Number: 7717398
    Gerrit-PatchSet: 23
    Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
    Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
    Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
    Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
    Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
    Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
    Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
    Gerrit-CC: Tommy Steimel <ste...@chromium.org>
    Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
    Gerrit-CC: Yizhi Zhao <yi...@google.com>
    Gerrit-Attention: Tommy Steimel <ste...@chromium.org>
    Gerrit-Attention: Frank Liberato <libe...@chromium.org>
    Gerrit-Comment-Date: Wed, 15 Apr 2026 22:14:11 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Frank Liberato (Gerrit)

    unread,
    Apr 16, 2026, 11:31:46 AM (14 days ago) Apr 16
    to Oleh Desiatyrikov (xWF), Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
    Attention needed from Oleh Desiatyrikov (xWF) and Tommy Steimel

    Frank Liberato added 5 comments

    Patchset-level comments
    File-level comment, Patchset 23 (Latest):
    Frank Liberato . resolved

    some other minor nits. please also add some comments around the immersive checks, since likely the folks who maintain this code have no idea what immersive mode is or why it's mixed in with pip.

    -fl

    File chrome/browser/ui/views/overlay/video_overlay_window_views.cc
    Line 2029, Patchset 23 (Latest): blink::mojom::ImmersiveOptionsPtr options) {}
    Frank Liberato . unresolved

    NOTREACHED

    File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.cc
    Line 344, Patchset 23 (Latest): window_->SetImmersiveVideoOptions(immersive_options_.Clone());
    Frank Liberato . unresolved

    not sure if you need to clone this or not.

    File content/public/browser/web_contents_delegate.h
    Line 949, Patchset 23 (Latest): virtual bool IsImmersivePlaybackEnabled();
    Frank Liberato . unresolved

    const?

    Line 946, Patchset 23 (Latest): virtual bool IsPictureInPictureEnabled();
    Frank Liberato . unresolved

    const?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Oleh Desiatyrikov (xWF)
    • Tommy Steimel
    Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement is not satisfiedCode-Review
      • requirement is not satisfiedNo-Unresolved-Comments
      • requirement is not satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
      Gerrit-Change-Number: 7717398
      Gerrit-PatchSet: 23
      Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
      Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
      Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
      Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
      Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
      Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
      Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
      Gerrit-CC: Tommy Steimel <ste...@chromium.org>
      Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
      Gerrit-CC: Yizhi Zhao <yi...@google.com>
      Gerrit-Attention: Tommy Steimel <ste...@chromium.org>
      Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
      Gerrit-Comment-Date: Thu, 16 Apr 2026 15:31:39 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Oleh Desiatyrikov (xWF) (Gerrit)

      unread,
      Apr 16, 2026, 3:22:33 PM (14 days ago) Apr 16
      to Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
      Attention needed from Frank Liberato and Tommy Steimel

      Oleh Desiatyrikov (xWF) added 4 comments

      File chrome/browser/ui/views/overlay/video_overlay_window_views.cc
      Line 2029, Patchset 23: blink::mojom::ImmersiveOptionsPtr options) {}
      Frank Liberato . resolved

      NOTREACHED

      Oleh Desiatyrikov (xWF)

      Done

      File content/browser/picture_in_picture/video_picture_in_picture_window_controller_impl.cc
      Line 344, Patchset 23: window_->SetImmersiveVideoOptions(immersive_options_.Clone());
      Frank Liberato . resolved

      not sure if you need to clone this or not.

      Oleh Desiatyrikov (xWF)

      It was required since I was storing the immersive options locally to do the `IsImmersive` check. However, this can be easily simplified by storing the `is_immersive_` bool instead.

      File content/public/browser/web_contents_delegate.h
      Line 949, Patchset 23: virtual bool IsImmersivePlaybackEnabled();
      Frank Liberato . resolved

      const?

      Oleh Desiatyrikov (xWF)

      Done

      Line 946, Patchset 23: virtual bool IsPictureInPictureEnabled();
      Frank Liberato . resolved

      const?

      Oleh Desiatyrikov (xWF)

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Frank Liberato
      • Tommy Steimel
      Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement is not satisfiedCode-Owners
        • requirement is not satisfiedCode-Review
        • requirement is not satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: chromium/src
        Gerrit-Branch: main
        Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
        Gerrit-Change-Number: 7717398
        Gerrit-PatchSet: 24
        Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
        Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
        Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
        Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
        Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
        Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
        Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
        Gerrit-CC: Tommy Steimel <ste...@chromium.org>
        Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
        Gerrit-CC: Yizhi Zhao <yi...@google.com>
        Gerrit-Attention: Tommy Steimel <ste...@chromium.org>
        Gerrit-Attention: Frank Liberato <libe...@chromium.org>
        Gerrit-Comment-Date: Thu, 16 Apr 2026 19:22:23 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: No
        Comment-In-Reply-To: Frank Liberato <libe...@chromium.org>
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Tommy Steimel (Gerrit)

        unread,
        Apr 16, 2026, 3:55:36 PM (14 days ago) Apr 16
        to Oleh Desiatyrikov (xWF), Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
        Attention needed from Frank Liberato and Oleh Desiatyrikov (xWF)

        Tommy Steimel added 2 comments

        Patchset-level comments
        File-level comment, Patchset 24 (Latest):
        Tommy Steimel . resolved

        Looks good in general % test question

        File content/browser/picture_in_picture/picture_in_picture_service_impl_unittest.cc
        Line 220, Patchset 24 (Latest):#define MAYBE_EnterImmersivePlayback DISABLED_EnterImmersivePlayback
        Tommy Steimel . unresolved

        It doesn't seem good that this new test is disabled on the only platform we care about it on. Is there something about Android test infra that prevents this from working properly?

        Open in Gerrit

        Related details

        Attention is currently required from:
        • Frank Liberato
        • Oleh Desiatyrikov (xWF)
        Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement is not satisfiedCode-Owners
          • requirement is not satisfiedCode-Review
          • requirement is not satisfiedNo-Unresolved-Comments
          • requirement is not satisfiedReview-Enforcement
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
          Gerrit-Change-Number: 7717398
          Gerrit-PatchSet: 24
          Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
          Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
          Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
          Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
          Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
          Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
          Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
          Gerrit-CC: Tommy Steimel <ste...@chromium.org>
          Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
          Gerrit-CC: Yizhi Zhao <yi...@google.com>
          Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
          Gerrit-Attention: Frank Liberato <libe...@chromium.org>
          Gerrit-Comment-Date: Thu, 16 Apr 2026 19:55:28 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: No
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Oleh Desiatyrikov (xWF) (Gerrit)

          unread,
          Apr 16, 2026, 5:46:20 PM (13 days ago) Apr 16
          to Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
          Attention needed from Frank Liberato and Tommy Steimel

          Oleh Desiatyrikov (xWF) added 1 comment

          File content/browser/picture_in_picture/picture_in_picture_service_impl_unittest.cc
          Line 220, Patchset 24 (Latest):#define MAYBE_EnterImmersivePlayback DISABLED_EnterImmersivePlayback
          Tommy Steimel . unresolved

          It doesn't seem good that this new test is disabled on the only platform we care about it on. Is there something about Android test infra that prevents this from working properly?

          Oleh Desiatyrikov (xWF)

          Yes, I agree. I didn't spend much time trying to figure out the actual reason why the PiP is flaky on Android. My reasoning is that it is a unit test that tests the APIs and not the platform specific implementation, so it should be sufficient to run it at least on one platform. I'll try to see why the PiP test is failing on Android in a first place but this can be done as a separate task.

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Frank Liberato
          • Tommy Steimel
          Gerrit-Attention: Tommy Steimel <ste...@chromium.org>
          Gerrit-Attention: Frank Liberato <libe...@chromium.org>
          Gerrit-Comment-Date: Thu, 16 Apr 2026 21:46:03 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: No
          Comment-In-Reply-To: Tommy Steimel <ste...@chromium.org>
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Oleh Desiatyrikov (xWF) (Gerrit)

          unread,
          Apr 16, 2026, 5:57:18 PM (13 days ago) Apr 16
          to Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
          Attention needed from Frank Liberato and Tommy Steimel

          Oleh Desiatyrikov (xWF) added 1 comment

          File content/browser/picture_in_picture/picture_in_picture_service_impl_unittest.cc
          Line 220, Patchset 24 (Latest):#define MAYBE_EnterImmersivePlayback DISABLED_EnterImmersivePlayback
          Tommy Steimel . unresolved

          It doesn't seem good that this new test is disabled on the only platform we care about it on. Is there something about Android test infra that prevents this from working properly?

          Oleh Desiatyrikov (xWF)

          Yes, I agree. I didn't spend much time trying to figure out the actual reason why the PiP is flaky on Android. My reasoning is that it is a unit test that tests the APIs and not the platform specific implementation, so it should be sufficient to run it at least on one platform. I'll try to see why the PiP test is failing on Android in a first place but this can be done as a separate task.

          Oleh Desiatyrikov (xWF)

          Furthermore, I do not have access to the https://crbug.com/970866.

          Gerrit-Comment-Date: Thu, 16 Apr 2026 21:57:09 +0000
          Gerrit-HasComments: Yes
          Gerrit-Has-Labels: No
          Comment-In-Reply-To: Tommy Steimel <ste...@chromium.org>
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Frank Liberato (Gerrit)

          unread,
          Apr 16, 2026, 8:09:39 PM (13 days ago) Apr 16
          to Oleh Desiatyrikov (xWF), Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
          Attention needed from Oleh Desiatyrikov (xWF) and Tommy Steimel

          Frank Liberato added 1 comment

          File content/browser/picture_in_picture/picture_in_picture_service_impl_unittest.cc
          Line 220, Patchset 24 (Latest):#define MAYBE_EnterImmersivePlayback DISABLED_EnterImmersivePlayback
          Tommy Steimel . unresolved

          It doesn't seem good that this new test is disabled on the only platform we care about it on. Is there something about Android test infra that prevents this from working properly?

          Oleh Desiatyrikov (xWF)

          Yes, I agree. I didn't spend much time trying to figure out the actual reason why the PiP is flaky on Android. My reasoning is that it is a unit test that tests the APIs and not the platform specific implementation, so it should be sufficient to run it at least on one platform. I'll try to see why the PiP test is failing on Android in a first place but this can be done as a separate task.

          Oleh Desiatyrikov (xWF)

          Furthermore, I do not have access to the https://crbug.com/970866.

          Frank Liberato

          i cc'd you on it, so you should have access now. TL;DR: it was from 2019 on kitkat, which was old in 2019. it's entirely possible these tests work now.

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Oleh Desiatyrikov (xWF)
          • Tommy Steimel
          Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
          Gerrit-Comment-Date: Fri, 17 Apr 2026 00:09:26 +0000
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Oleh Desiatyrikov (xWF) (Gerrit)

          unread,
          Apr 17, 2026, 2:02:24 PM (13 days ago) Apr 17
          to Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
          Attention needed from Frank Liberato and Tommy Steimel

          Oleh Desiatyrikov (xWF) added 1 comment

          File content/browser/picture_in_picture/picture_in_picture_service_impl_unittest.cc
          Line 220, Patchset 24:#define MAYBE_EnterImmersivePlayback DISABLED_EnterImmersivePlayback
          Tommy Steimel . resolved

          It doesn't seem good that this new test is disabled on the only platform we care about it on. Is there something about Android test infra that prevents this from working properly?

          Oleh Desiatyrikov (xWF)

          Yes, I agree. I didn't spend much time trying to figure out the actual reason why the PiP is flaky on Android. My reasoning is that it is a unit test that tests the APIs and not the platform specific implementation, so it should be sufficient to run it at least on one platform. I'll try to see why the PiP test is failing on Android in a first place but this can be done as a separate task.

          Oleh Desiatyrikov (xWF)

          Furthermore, I do not have access to the https://crbug.com/970866.

          Frank Liberato

          i cc'd you on it, so you should have access now. TL;DR: it was from 2019 on kitkat, which was old in 2019. it's entirely possible these tests work now.

          Oleh Desiatyrikov (xWF)

          It looks you are right. I run both PiP and Immersive tests locally on my Android device for 20 times in a row and they all passed. I also run a few android try bots and they all passed too. Let's assume these are not flaky anymore.

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Frank Liberato
          • Tommy Steimel
          Submit Requirements:
            • requirement satisfiedCode-Coverage
            • requirement is not satisfiedCode-Owners
            • requirement is not satisfiedCode-Review
            • requirement is not satisfiedReview-Enforcement
            Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
            Gerrit-MessageType: comment
            Gerrit-Project: chromium/src
            Gerrit-Branch: main
            Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
            Gerrit-Change-Number: 7717398
            Gerrit-PatchSet: 25
            Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
            Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
            Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
            Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
            Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
            Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
            Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
            Gerrit-CC: Tommy Steimel <ste...@chromium.org>
            Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
            Gerrit-CC: Yizhi Zhao <yi...@google.com>
            Gerrit-Attention: Tommy Steimel <ste...@chromium.org>
            Gerrit-Attention: Frank Liberato <libe...@chromium.org>
            Gerrit-Comment-Date: Fri, 17 Apr 2026 18:02:14 +0000
            Gerrit-HasComments: Yes
            Gerrit-Has-Labels: No
            Comment-In-Reply-To: Tommy Steimel <ste...@chromium.org>
            Comment-In-Reply-To: Oleh Desiatyrikov (xWF) <desiat...@google.com>
            Comment-In-Reply-To: Frank Liberato <libe...@chromium.org>
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Tommy Steimel (Gerrit)

            unread,
            Apr 17, 2026, 2:11:06 PM (13 days ago) Apr 17
            to Oleh Desiatyrikov (xWF), Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
            Attention needed from Frank Liberato and Oleh Desiatyrikov (xWF)

            Tommy Steimel voted Code-Review+1

            Code-Review+1
            Open in Gerrit

            Related details

            Attention is currently required from:
            • Frank Liberato
            • Oleh Desiatyrikov (xWF)
            Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement is not satisfiedCode-Review
              • requirement satisfiedReview-Enforcement
              Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
              Gerrit-MessageType: comment
              Gerrit-Project: chromium/src
              Gerrit-Branch: main
              Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
              Gerrit-Change-Number: 7717398
              Gerrit-PatchSet: 25
              Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
              Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
              Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
              Gerrit-Reviewer: Tommy Steimel <ste...@chromium.org>
              Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
              Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
              Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
              Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
              Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
              Gerrit-Attention: Frank Liberato <libe...@chromium.org>
              Gerrit-Comment-Date: Fri, 17 Apr 2026 18:10:51 +0000
              Gerrit-HasComments: No
              Gerrit-Has-Labels: Yes
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Frank Liberato (Gerrit)

              unread,
              Apr 17, 2026, 2:12:55 PM (13 days ago) Apr 17
              to Oleh Desiatyrikov (xWF), Tommy Steimel, Raphael Kubo da Costa, Wang, Wei4, Kenneth R Christiansen, Arnaud Mandy, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Gurmeet Kalra, Yizhi Zhao, chromium...@chromium.org, mattreyno...@chromium.org, blink-rev...@chromium.org, feature-me...@chromium.org, headless...@chromium.org, alexmo...@chromium.org, blink-re...@chromium.org, blink-...@chromium.org, creis...@chromium.org, kinuko...@chromium.org, navigation...@chromium.org
              Attention needed from Oleh Desiatyrikov (xWF)

              Frank Liberato voted Code-Review+1

              Code-Review+1
              Open in Gerrit

              Related details

              Attention is currently required from:
              • Oleh Desiatyrikov (xWF)
              Submit Requirements:
                • requirement satisfiedCode-Coverage
                • requirement is not satisfiedCode-Owners
                • requirement satisfiedCode-Review
                • requirement satisfiedReview-Enforcement
                Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                Gerrit-MessageType: comment
                Gerrit-Project: chromium/src
                Gerrit-Branch: main
                Gerrit-Change-Id: I0464e30e1a2ca3bd4267d0b23dd0cc251fce5b88
                Gerrit-Change-Number: 7717398
                Gerrit-PatchSet: 25
                Gerrit-Owner: Oleh Desiatyrikov (xWF) <desiat...@google.com>
                Gerrit-Reviewer: Frank Liberato <libe...@chromium.org>
                Gerrit-Reviewer: Oleh Desiatyrikov (xWF) <desiat...@google.com>
                Gerrit-Reviewer: Tommy Steimel <ste...@chromium.org>
                Gerrit-CC: Arnaud Mandy <arnaud...@intel.com>
                Gerrit-CC: Gurmeet Kalra <gurm...@google.com>
                Gerrit-CC: Kenneth R Christiansen <kenneth.r.c...@intel.com>
                Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                Gerrit-CC: Wang, Wei4 <wei4...@intel.com>
                Gerrit-CC: Yizhi Zhao <yi...@google.com>
                Gerrit-Attention: Oleh Desiatyrikov (xWF) <desiat...@google.com>
                Gerrit-Comment-Date: Fri, 17 Apr 2026 18:12:45 +0000
                Gerrit-HasComments: No
                Gerrit-Has-Labels: Yes
                satisfied_requirement
                unsatisfied_requirement
                open
                diffy
                Reply all
                Reply to author
                Forward
                0 new messages