Phase 0: browser X11-overlay inventory + mpv reference cell + tooling installs
Source-level verdict: no browser in the matrix has a code path to hand NV12 to the X server for plane scanout. Chromium ozone-x11 wires StubOverlayManager (ozone_platform_x11.cc:262); Brave 147 + chromium-fourier 149 inherit unchanged. Firefox WindowSurfaceX11 is RGB-only. The campaign's load-bearing hypothesis is structurally weakened — what the X11 cells will measure for browsers is KWin's per-frame RGB-recomposite cost, not the original "force-GL-composite of NV12" framing. mpv --vo=xv becomes the matrix's only direct test of the operator-supplied mechanism. Matrix updated: 12 cells -> 16 cells (+8 mpv VO sub-points). revert.log entries 1-5 capture all package + per-user state mutations from this turn (measurement tools, openbox, XFCE + xfwm4-no-comp pre-seed, firefox + AUR xtrace, XFCE rotation + touchscreen mapping); single SSH-driveable revert chain returns ohm to its pre-campaign 1169-package state. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
// Copyright 2015 The Chromium Authors
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
#ifndef UI_OZONE_PUBLIC_OVERLAY_MANAGER_OZONE_H_
|
||||
#define UI_OZONE_PUBLIC_OVERLAY_MANAGER_OZONE_H_
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "ui/gfx/native_ui_types.h"
|
||||
|
||||
namespace ui {
|
||||
|
||||
class OverlayCandidatesOzone;
|
||||
|
||||
// Responsible for providing the oracles used to decide when overlays can be
|
||||
// used.
|
||||
class OverlayManagerOzone {
|
||||
public:
|
||||
virtual ~OverlayManagerOzone() {}
|
||||
|
||||
// Get the hal struct to check for overlay support.
|
||||
virtual std::unique_ptr<OverlayCandidatesOzone> CreateOverlayCandidates(
|
||||
gfx::AcceleratedWidget w) = 0;
|
||||
|
||||
bool allow_sync_and_real_buffer_page_flip_testing() const {
|
||||
return allow_sync_and_real_buffer_page_flip_testing_;
|
||||
}
|
||||
|
||||
// Tell the manager that the overlay delegation is enabled. This is only
|
||||
// useful for Wayland as checking for overlay support depends on
|
||||
// features::IsDelegatedCompositingEnabled, which cannot be accessed from
|
||||
// //ui/ozone.
|
||||
// TODO(msisov, petermcneeley): remove this once Wayland uses only delegated
|
||||
// context.
|
||||
virtual void SetContextDelegated() {}
|
||||
|
||||
protected:
|
||||
// TODO(fangzhoug): Some Chrome OS boards still use the legacy video decoder.
|
||||
// Remove this once ChromeOSVideoDecoder is on everywhere.
|
||||
bool allow_sync_and_real_buffer_page_flip_testing_ = false;
|
||||
};
|
||||
|
||||
} // namespace ui
|
||||
|
||||
#endif // UI_OZONE_PUBLIC_OVERLAY_MANAGER_OZONE_H_
|
||||
Reference in New Issue
Block a user