mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
chore: Rename CompositeTarget
enum (#35263)
* chore: Rename CompositeTarget enum Signed-off-by: DK Liao <dklassic@gmail.com> sync name in other documents Signed-off-by: DK Liao <dklassic@gmail.com> sync more name in other documents Signed-off-by: DK Liao <dklassic@gmail.com> * Fix Android/ohos Signed-off-by: DK Liao <dklassic@gmail.com> --------- Signed-off-by: DK Liao <dklassic@gmail.com>
This commit is contained in:
parent
24ead9c3a9
commit
4461380792
6 changed files with 18 additions and 15 deletions
|
@ -192,12 +192,12 @@ pub struct IOCompositor {
|
|||
|
||||
/// Offscreen framebuffer object to render our next frame to.
|
||||
/// We use this and `prev_offscreen_framebuffer` for double buffering when compositing to
|
||||
/// [`CompositeTarget::Fbo`].
|
||||
/// [`CompositeTarget::OffscreenFbo`].
|
||||
next_offscreen_framebuffer: OnceCell<gl::RenderTargetInfo>,
|
||||
|
||||
/// Offscreen framebuffer object for our most-recently-completed frame.
|
||||
/// We use this and `next_offscreen_framebuffer` for double buffering when compositing to
|
||||
/// [`CompositeTarget::Fbo`].
|
||||
/// [`CompositeTarget::OffscreenFbo`].
|
||||
prev_offscreen_framebuffer: Option<gl::RenderTargetInfo>,
|
||||
|
||||
/// Whether to invalidate `prev_offscreen_framebuffer` at the end of the next frame.
|
||||
|
@ -342,12 +342,13 @@ impl PipelineDetails {
|
|||
|
||||
#[derive(Clone, Debug, PartialEq)]
|
||||
pub enum CompositeTarget {
|
||||
/// Draw directly to a window.
|
||||
Window,
|
||||
/// Draw to a OpenGL framebuffer object that will then be used by the compositor to composite
|
||||
/// to [`RenderingContext::framebuffer_object`]
|
||||
ContextFbo,
|
||||
|
||||
/// Draw to an offscreen OpenGL framebuffer object, which can be retrieved once complete at
|
||||
/// [`IOCompositor::offscreen_framebuffer_id`].
|
||||
Fbo,
|
||||
OffscreenFbo,
|
||||
|
||||
/// Draw to an uncompressed image in shared memory.
|
||||
SharedMemory,
|
||||
|
@ -2016,7 +2017,9 @@ impl IOCompositor {
|
|||
) || self.exit_after_load;
|
||||
let use_offscreen_framebuffer = matches!(
|
||||
target,
|
||||
CompositeTarget::SharedMemory | CompositeTarget::PngFile(_) | CompositeTarget::Fbo
|
||||
CompositeTarget::SharedMemory |
|
||||
CompositeTarget::PngFile(_) |
|
||||
CompositeTarget::OffscreenFbo
|
||||
);
|
||||
|
||||
if wait_for_stable_image {
|
||||
|
@ -2089,8 +2092,8 @@ impl IOCompositor {
|
|||
};
|
||||
|
||||
let rv = match target {
|
||||
CompositeTarget::Window => None,
|
||||
CompositeTarget::Fbo => {
|
||||
CompositeTarget::ContextFbo => None,
|
||||
CompositeTarget::OffscreenFbo => {
|
||||
self.next_offscreen_framebuffer
|
||||
.get()
|
||||
.expect("Guaranteed by needs_fbo")
|
||||
|
@ -2244,7 +2247,7 @@ impl IOCompositor {
|
|||
}
|
||||
|
||||
/// Return the OpenGL framebuffer name of the most-recently-completed frame when compositing to
|
||||
/// [`CompositeTarget::Fbo`], or None otherwise.
|
||||
/// [`CompositeTarget::OffscreenFbo`], or None otherwise.
|
||||
pub fn offscreen_framebuffer_id(&self) -> Option<gleam::gl::GLuint> {
|
||||
self.prev_offscreen_framebuffer
|
||||
.as_ref()
|
||||
|
|
|
@ -100,7 +100,7 @@ impl ApplicationHandler<WakerEvent> for App {
|
|||
}),
|
||||
window_delegate.clone(),
|
||||
Default::default(),
|
||||
compositing::CompositeTarget::Window,
|
||||
compositing::CompositeTarget::ContextFbo,
|
||||
);
|
||||
servo.setup_logging();
|
||||
let webviews = vec![servo.new_webview(
|
||||
|
|
|
@ -1016,7 +1016,7 @@ impl Servo {
|
|||
}
|
||||
|
||||
/// Return the OpenGL framebuffer name of the most-recently-completed frame when compositing to
|
||||
/// [`CompositeTarget::Fbo`], or None otherwise.
|
||||
/// [`CompositeTarget::OffscreenFbo`], or None otherwise.
|
||||
pub fn offscreen_framebuffer_id(&self) -> Option<u32> {
|
||||
self.compositor.borrow().offscreen_framebuffer_id()
|
||||
}
|
||||
|
|
|
@ -209,9 +209,9 @@ impl App {
|
|||
let embedder = Box::new(EmbedderCallbacks::new(self.waker.clone(), xr_discovery));
|
||||
|
||||
let composite_target = if self.minibrowser.is_some() {
|
||||
CompositeTarget::Fbo
|
||||
CompositeTarget::OffscreenFbo
|
||||
} else {
|
||||
CompositeTarget::Window
|
||||
CompositeTarget::ContextFbo
|
||||
};
|
||||
let servo = Servo::new(
|
||||
self.opts.clone(),
|
||||
|
|
|
@ -113,7 +113,7 @@ pub fn init(
|
|||
embedder_callbacks,
|
||||
window_callbacks.clone(),
|
||||
None,
|
||||
CompositeTarget::Window,
|
||||
CompositeTarget::ContextFbo,
|
||||
);
|
||||
|
||||
SERVO.with(|s| {
|
||||
|
|
|
@ -114,7 +114,7 @@ pub fn init(
|
|||
embedder_callbacks,
|
||||
window_callbacks.clone(),
|
||||
None, /* user_agent */
|
||||
CompositeTarget::Window,
|
||||
CompositeTarget::ContextFbo,
|
||||
);
|
||||
|
||||
let servo_glue = ServoGlue::new(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue