Update window.rs PresentMode docs to clarify which PresentMode will panic and which will fallback (#6160)
# Objective - Fixes contradictory docs in Window::PresentMode partaining to PresentMode fallback behavior. Fix based on commit history showing the most recent update didn't remove old references to the gracefal fallback for Immediate and Mailbox. - Fixes #5831 ## Solution - Updated the docs for Window::PresentMode itself and for each individual enum variant to clarify which will fallback and which will panic. Co-authored-by: Noah <noahshomette@gmail.com>
This commit is contained in:
		
							parent
							
								
									2a6b544a0a
								
							
						
					
					
						commit
						26c299bd2a
					
				@ -19,10 +19,12 @@ pub struct WindowId(Uuid);
 | 
			
		||||
/// may be observed with `Immediate` mode, but will not be observed with `Mailbox` or
 | 
			
		||||
/// `Fifo`.
 | 
			
		||||
///
 | 
			
		||||
/// `Immediate` or `Mailbox` will gracefully fallback to `Fifo` when unavailable.
 | 
			
		||||
/// `AutoVsync` or `AutoNoVsync` will gracefully fallback to `Fifo` when unavailable.
 | 
			
		||||
///
 | 
			
		||||
/// The presentation mode may be declared in the [`WindowDescriptor`](WindowDescriptor::present_mode)
 | 
			
		||||
/// or updated on a [`Window`](Window::set_present_mode).
 | 
			
		||||
/// `Immediate` or `Mailbox` will panic if not supported by the platform.
 | 
			
		||||
///
 | 
			
		||||
/// The presentation mode may be declared in the [`WindowDescriptor`](WindowDescriptor) using [`WindowDescriptor::present_mode`](WindowDescriptor::present_mode)
 | 
			
		||||
/// or updated on a [`Window`](Window) using [`set_present_mode`](Window::set_present_mode).
 | 
			
		||||
#[repr(C)]
 | 
			
		||||
#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash)]
 | 
			
		||||
#[cfg_attr(feature = "serialize", derive(serde::Serialize, serde::Deserialize))]
 | 
			
		||||
@ -38,16 +40,14 @@ pub enum PresentMode {
 | 
			
		||||
    AutoNoVsync = 1,
 | 
			
		||||
    /// The presentation engine does **not** wait for a vertical blanking period and
 | 
			
		||||
    /// the request is presented immediately. This is a low-latency presentation mode,
 | 
			
		||||
    /// but visible tearing may be observed. Will fallback to `Fifo` if unavailable on the
 | 
			
		||||
    /// selected platform and backend. Not optimal for mobile.
 | 
			
		||||
    /// but visible tearing may be observed. Not optimal for mobile.
 | 
			
		||||
    ///
 | 
			
		||||
    /// Selecting this variant will panic if not supported, it is preferred to use
 | 
			
		||||
    /// [`PresentMode::AutoNoVsync`].
 | 
			
		||||
    Immediate = 2,
 | 
			
		||||
    /// The presentation engine waits for the next vertical blanking period to update
 | 
			
		||||
    /// the current image, but frames may be submitted without delay. This is a low-latency
 | 
			
		||||
    /// presentation mode and visible tearing will **not** be observed. Will fallback to `Fifo`
 | 
			
		||||
    /// if unavailable on the selected platform and backend. Not optimal for mobile.
 | 
			
		||||
    /// presentation mode and visible tearing will **not** be observed. Not optimal for mobile.
 | 
			
		||||
    ///
 | 
			
		||||
    /// Selecting this variant will panic if not supported, it is preferred to use
 | 
			
		||||
    /// [`PresentMode::AutoNoVsync`].
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user