You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

282 lines
54 KiB

5 years ago
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Request` enum in crate `wayland_protocols`."><meta name="keywords" content="rust, rustlang, rust-lang, Request"><title>wayland_protocols::xdg_shell::client::xdg_toplevel::Request - Rust</title><link rel="stylesheet" type="text/css" href="../../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../../light.css" id="themeStyle"><script src="../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../../down-arrow.svg");}</style></head><body class="rustdoc enum"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../../wayland_protocols/index.html'><div class='logo-container'><img src='../../../../rust-logo.png' alt='logo'></div></a><p class='location'>Enum Request</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#variants">Variants</a><div class="sidebar-links"><a href="#variant.Destroy">Destroy</a><a href="#variant.SetParent">SetParent</a><a href="#variant.SetTitle">SetTitle</a><a href="#variant.SetAppId">SetAppId</a><a href="#variant.ShowWindowMenu">ShowWindowMenu</a><a href="#variant.Move">Move</a><a href="#variant.Resize">Resize</a><a href="#variant.SetMaxSize">SetMaxSize</a><a href="#variant.SetMinSize">SetMinSize</a><a href="#variant.SetMaximized">SetMaximized</a><a href="#variant.UnsetMaximized">UnsetMaximized</a><a href="#variant.SetFullscreen">SetFullscreen</a><a href="#variant.UnsetFullscreen">UnsetFullscreen</a><a href="#variant.SetMinimized">SetMinimized</a></div><a class="sidebar-title" href="#implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-MessageGroup">MessageGroup</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">!RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">!UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a></div></div><p class='location'><a href='../../../index.html'>wayland_protocols</a>::<wbr><a href='../../index.html'>xdg_shell</a>::<wbr><a href='../index.html'>client</a>::<wbr><a href='index.html'>xdg_toplevel</a></p><script>window.sidebarCurrent = {name: 'Request', ty: 'enum', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../../settings.html"><img src="../../../../wheel.sv
Destroy,
SetParent {
parent: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_protocols/xdg_shell/client/xdg_toplevel/struct.XdgToplevel.html" title="struct wayland_protocols::xdg_shell::client::xdg_toplevel::XdgToplevel">XdgToplevel</a>&gt;&gt;,
},
SetTitle {
title: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
},
SetAppId {
app_id: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
},
ShowWindowMenu {
seat: <a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_client/generated/c_api/wl_seat/struct.WlSeat.html" title="struct wayland_client::generated::c_api::wl_seat::WlSeat">WlSeat</a>&gt;,
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
y: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
},
Move {
seat: <a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_client/generated/c_api/wl_seat/struct.WlSeat.html" title="struct wayland_client::generated::c_api::wl_seat::WlSeat">WlSeat</a>&gt;,
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
},
Resize {
seat: <a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_client/generated/c_api/wl_seat/struct.WlSeat.html" title="struct wayland_client::generated::c_api::wl_seat::WlSeat">WlSeat</a>&gt;,
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
edges: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
},
SetMaxSize {
width: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
height: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
},
SetMinSize {
width: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
height: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>,
},
SetMaximized,
UnsetMaximized,
SetFullscreen {
output: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_client/generated/c_api/wl_output/struct.WlOutput.html" title="struct wayland_client::generated::c_api::wl_output::WlOutput">WlOutput</a>&gt;&gt;,
},
UnsetFullscreen,
SetMinimized,
}</pre></div><h2 id='variants' class='variants small-section-header'>
Variants<a href='#variants' class='anchor'></a></h2>
<div id="variant.Destroy" class="variant small-section-header"><a href="#variant.Destroy" class="anchor field"></a><code id='Destroy.v'>Destroy</code></div><div class='docblock'><p>destroy the xdg_toplevel</p>
<p>This request destroys the role surface and unmaps the surface;
see &quot;Unmapping&quot; behavior in interface section for details.</p>
<p>This is a destructor, once sent this object cannot be used any longer.</p>
</div><div id="variant.SetParent" class="variant small-section-header"><a href="#variant.SetParent" class="anchor field"></a><code id='SetParent.v'>SetParent</code></div><div class='docblock'><p>set the parent of this surface</p>
<p>Set the &quot;parent&quot; of this surface. This surface should be stacked
above the parent surface and all other ancestor surfaces.</p>
<p>Parent windows should be set on dialogs, toolboxes, or other
&quot;auxiliary&quot; surfaces, so that the parent is raised when the dialog
is raised.</p>
<p>Setting a null parent for a child window removes any parent-child
relationship for the child. Setting a null parent for a window which
currently has no parent is a no-op.</p>
<p>If the parent is unmapped then its children are managed as
though the parent of the now-unmapped parent has become the
parent of this surface. If no parent exists for the now-unmapped
parent then the children are managed as though they have no
parent surface.</p>
</div><div class='autohide sub-variant' id='variant.SetParent.fields'><h3>Fields of <b>SetParent</b></h3><div><span id="variant.SetParent.field.parent" class="variant small-section-header"><a href="#variant.SetParent.field.parent" class="anchor field"></a><code id='SetParent.v.parent.v'>parent:&nbsp;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_protocols/xdg_shell/client/xdg_toplevel/struct.XdgToplevel.html" title="struct wayland_protocols::xdg_shell::client::xdg_toplevel::XdgToplevel">XdgToplevel</a>&gt;&gt;</code></span></div></div><div id="variant.SetTitle" class="variant small-section-header"><a href="#variant.SetTitle" class="anchor field"></a><code id='SetTitle.v'>SetTitle</code></div><div class='docblock'><p>set surface title</p>
<p>Set a short title for the surface.</p>
<p>This string may be used to identify the surface in a task bar,
window list, or other user interface elements provided by the
compositor.</p>
<p>The string must be encoded in UTF-8.</p>
</div><div class='autohide sub-variant' id='variant.SetTitle.fields'><h3>Fields of <b>SetTitle</b></h3><div><span id="variant.SetTitle.field.title" class="variant small-section-header"><a href="#variant.SetTitle.field.title" class="anchor field"></a><code id='SetTitle.v.title.v'>title:&nbsp;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span></div></div><div id="variant.SetAppId" class="variant small-section-header"><a href="#variant.SetAppId" class="anchor field"></a><code id='SetAppId.v'>SetAppId</code></div><div class='docblock'><p>set application ID</p>
<p>Set an application identifier for the surface.</p>
<p>The app ID identifies the general class of applications to which
the surface belongs. The compositor can use this to group multiple
surfaces together, or to determine how to launch a new application.</p>
<p>For D-Bus activatable applications, the app ID is used as the D-Bus
service name.</p>
<p>The compositor shell will try to group application surfaces together
by their app ID. As a best practice, it is suggested to select app
ID's that match the basename of the application's .desktop file.
For example, &quot;org.freedesktop.FooViewer&quot; where the .desktop file is
&quot;org.freedesktop.FooViewer.desktop&quot;.</p>
<p>See the desktop-entry specification [0] for more details on
application identifiers and how they relate to well-known D-Bus
names and .desktop files.</p>
<p>[0] http://standards.freedesktop.org/desktop-entry-spec/</p>
</div><div class='autohide sub-variant' id='variant.SetAppId.fields'><h3>Fields of <b>SetAppId</b></h3><div><span id="variant.SetAppId.field.app_id" class="variant small-section-header"><a href="#variant.SetAppId.field.app_id" class="anchor field"></a><code id='SetAppId.v.app_id.v'>app_id:&nbsp;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span></div></div><div id="variant.ShowWindowMenu" class="variant small-section-header"><a href="#variant.ShowWindowMenu" class="anchor field"></a><code id='ShowWindowMenu.v'>ShowWindowMenu</code></div><div class='docblock'><p>show the window menu</p>
<p>Clients implementing client-side decorations might want to show
a context menu when right-clicking on the decorations, giving the
user a menu that they can use to maximize or minimize the window.</p>
<p>This request asks the compositor to pop up such a window menu at
the given position, relative to the local surface coordinates of
the parent surface. There are no guarantees as to what menu items
the window menu contains.</p>
<p>This request must be used in response to some sort of user action
like a button press, key press, or touch down event.</p>
</div><div class='autohide sub-variant' id='variant.ShowWindowMenu.fields'><h3>Fields of <b>ShowWindowMenu</b></h3><div><span id="variant.ShowWindowMenu.field.seat" class="variant small-section-header"><a href="#variant.ShowWindowMenu.field.seat" class="anchor field"></a><code id='ShowWindowMenu.v.seat.v'>seat:&nbsp;<a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_client/generated/c_api/wl_seat/struct.WlSeat.html" title="struct wayland_client::generated::c_api::wl_seat::WlSeat">WlSeat</a>&gt;</code></span><span id="variant.ShowWindowMenu.field.serial" class="variant small-section-header"><a href="#variant.ShowWindowMenu.field.serial" class="anchor field"></a><code id='ShowWindowMenu.v.serial.v'>serial:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.ShowWindowMenu.field.x" class="variant small-section-header"><a href="#variant.ShowWindowMenu.field.x" class="anchor field"></a><code id='ShowWindowMenu.v.x.v'>x:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><span id="variant.ShowWindowMenu.field.y" class="variant small-section-header"><a href="#variant.ShowWindowMenu.field.y" class="anchor field"></a><code id='ShowWindowMenu.v.y.v'>y:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span></div></div><div id="variant.Move" class="variant small-section-header"><a href="#variant.Move" class="anchor field"></a><code id='Move.v'>Move</code></div><div class='docblock'><p>start an interactive move</p>
<p>Start an interactive, user-driven move of the surface.</p>
<p>This request must be used in response to some sort of user action
like a button press, key press, or touch down event. The passed
serial is used to determine the type of interactive move (touch,
pointer, etc).</p>
<p>The server may ignore move requests depending on the state of
the surface (e.g. fullscreen or maximized), or if the passed serial
is no longer valid.</p>
<p>If triggered, the surface will lose the focus of the device
(wl_pointer, wl_touch, etc) used for the move. It is up to the
compositor to visually indicate that the move is taking place, such as
updating a pointer cursor, during the move. There is no guarantee
that the device focus will return when the move is completed.</p>
</div><div class='autohide sub-variant' id='variant.Move.fields'><h3>Fields of <b>Move</b></h3><div><span id="variant.Move.field.seat" class="variant small-section-header"><a href="#variant.Move.field.seat" class="anchor field"></a><code id='Move.v.seat.v'>seat:&nbsp;<a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_client/generated/c_api/wl_seat/struct.WlSeat.html" title="struct wayland_client::generated::c_api::wl_seat::WlSeat">WlSeat</a>&gt;</code></span><span id="variant.Move.field.serial" class="variant small-section-header"><a href="#variant.Move.field.serial" class="anchor field"></a><code id='Move.v.serial.v'>serial:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span></div></div><div id="variant.Resize" class="variant small-section-header"><a href="#variant.Resize" class="anchor field"></a><code id='Resize.v'>Resize</code></div><div class='docblock'><p>start an interactive resize</p>
<p>Start a user-driven, interactive resize of the surface.</p>
<p>This request must be used in response to some sort of user action
like a button press, key press, or touch down event. The passed
serial is used to determine the type of interactive resize (touch,
pointer, etc).</p>
<p>The server may ignore resize requests depending on the state of
the surface (e.g. fullscreen or maximized).</p>
<p>If triggered, the client will receive configure events with the
&quot;resize&quot; state enum value and the expected sizes. See the &quot;resize&quot;
enum value for more details about what is required. The client
must also acknowledge configure events using &quot;ack_configure&quot;. After
the resize is completed, the client will receive another &quot;configure&quot;
event without the resize state.</p>
<p>If triggered, the surface also will lose the focus of the device
(wl_pointer, wl_touch, etc) used for the resize. It is up to the
compositor to visually indicate that the resize is taking place,
such as updating a pointer cursor, during the resize. There is no
guarantee that the device focus will return when the resize is
completed.</p>
<p>The edges parameter specifies how the surface should be resized,
and is one of the values of the resize_edge enum. The compositor
may use this information to update the surface position for
example when dragging the top left corner. The compositor may also
use this information to adapt its behavior, e.g. choose an
appropriate cursor image.</p>
</div><div class='autohide sub-variant' id='variant.Resize.fields'><h3>Fields of <b>Resize</b></h3><div><span id="variant.Resize.field.seat" class="variant small-section-header"><a href="#variant.Resize.field.seat" class="anchor field"></a><code id='Resize.v.seat.v'>seat:&nbsp;<a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_client/generated/c_api/wl_seat/struct.WlSeat.html" title="struct wayland_client::generated::c_api::wl_seat::WlSeat">WlSeat</a>&gt;</code></span><span id="variant.Resize.field.serial" class="variant small-section-header"><a href="#variant.Resize.field.serial" class="anchor field"></a><code id='Resize.v.serial.v'>serial:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span><span id="variant.Resize.field.edges" class="variant small-section-header"><a href="#variant.Resize.field.edges" class="anchor field"></a><code id='Resize.v.edges.v'>edges:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code></span></div></div><div id="variant.SetMaxSize" class="variant small-section-header"><a href="#variant.SetMaxSize" class="anchor field"></a><code id='SetMaxSize.v'>SetMaxSize</code></div><div class='docblock'><p>set the maximum size</p>
<p>Set a maximum size for the window.</p>
<p>The client can specify a maximum size so that the compositor does
not try to configure the window beyond this size.</p>
<p>The width and height arguments are in window geometry coordinates.
See xdg_surface.set_window_geometry.</p>
<p>Values set in this way are double-buffered. They will get applied
on the next commit.</p>
<p>The compositor can use this information to allow or disallow
different states like maximize or fullscreen and draw accurate
animations.</p>
<p>Similarly, a tiling window manager may use this information to
place and resize client windows in a more effective way.</p>
<p>The client should not rely on the compositor to obey the maximum
size. The compositor may decide to ignore the values set by the
client and request a larger size.</p>
<p>If never set, or a value of zero in the request, means that the
client has no expected maximum size in the given dimension.
As a result, a client wishing to reset the maximum size
to an unspecified state can use zero for width and height in the
request.</p>
<p>Requesting a maximum size to be smaller than the minimum size of
a surface is illegal and will result in a protocol error.</p>
<p>The width and height must be greater than or equal to zero. Using
strictly negative values for width and height will result in a
protocol error.</p>
</div><div class='autohide sub-variant' id='variant.SetMaxSize.fields'><h3>Fields of <b>SetMaxSize</b></h3><div><span id="variant.SetMaxSize.field.width" class="variant small-section-header"><a href="#variant.SetMaxSize.field.width" class="anchor field"></a><code id='SetMaxSize.v.width.v'>width:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><span id="variant.SetMaxSize.field.height" class="variant small-section-header"><a href="#variant.SetMaxSize.field.height" class="anchor field"></a><code id='SetMaxSize.v.height.v'>height:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span></div></div><div id="variant.SetMinSize" class="variant small-section-header"><a href="#variant.SetMinSize" class="anchor field"></a><code id='SetMinSize.v'>SetMinSize</code></div><div class='docblock'><p>set the minimum size</p>
<p>Set a minimum size for the window.</p>
<p>The client can specify a minimum size so that the compositor does
not try to configure the window below this size.</p>
<p>The width and height arguments are in window geometry coordinates.
See xdg_surface.set_window_geometry.</p>
<p>Values set in this way are double-buffered. They will get applied
on the next commit.</p>
<p>The compositor can use this information to allow or disallow
different states like maximize or fullscreen and draw accurate
animations.</p>
<p>Similarly, a tiling window manager may use this information to
place and resize client windows in a more effective way.</p>
<p>The client should not rely on the compositor to obey the minimum
size. The compositor may decide to ignore the values set by the
client and request a smaller size.</p>
<p>If never set, or a value of zero in the request, means that the
client has no expected minimum size in the given dimension.
As a result, a client wishing to reset the minimum size
to an unspecified state can use zero for width and height in the
request.</p>
<p>Requesting a minimum size to be larger than the maximum size of
a surface is illegal and will result in a protocol error.</p>
<p>The width and height must be greater than or equal to zero. Using
strictly negative values for width and height will result in a
protocol error.</p>
</div><div class='autohide sub-variant' id='variant.SetMinSize.fields'><h3>Fields of <b>SetMinSize</b></h3><div><span id="variant.SetMinSize.field.width" class="variant small-section-header"><a href="#variant.SetMinSize.field.width" class="anchor field"></a><code id='SetMinSize.v.width.v'>width:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span><span id="variant.SetMinSize.field.height" class="variant small-section-header"><a href="#variant.SetMinSize.field.height" class="anchor field"></a><code id='SetMinSize.v.height.v'>height:&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code></span></div></div><div id="variant.SetMaximized" class="variant small-section-header"><a href="#variant.SetMaximized" class="anchor field"></a><code id='SetMaximized.v'>SetMaximized</code></div><div class='docblock'><p>maximize the window</p>
<p>Maximize the surface.</p>
<p>After requesting that the surface should be maximized, the compositor
will respond by emitting a configure event. Whether this configure
actually sets the window maximized is subject to compositor policies.
The client must then update its content, drawing in the configured
state. The client must also acknowledge the configure when committing
the new content (see ack_configure).</p>
<p>It is up to the compositor to decide how and where to maximize the
surface, for example which output and what region of the screen should
be used.</p>
<p>If the surface was already maximized, the compositor will still emit
a configure event with the &quot;maximized&quot; state.</p>
<p>If the surface is in a fullscreen state, this request has no direct
effect. It may alter the state the surface is returned to when
unmaximized unless overridden by the compositor.</p>
</div><div id="variant.UnsetMaximized" class="variant small-section-header"><a href="#variant.UnsetMaximized" class="anchor field"></a><code id='UnsetMaximized.v'>UnsetMaximized</code></div><div class='docblock'><p>unmaximize the window</p>
<p>Unmaximize the surface.</p>
<p>After requesting that the surface should be unmaximized, the compositor
will respond by emitting a configure event. Whether this actually
un-maximizes the window is subject to compositor policies.
If available and applicable, the compositor will include the window
geometry dimensions the window had prior to being maximized in the
configure event. The client must then update its content, drawing it in
the configured state. The client must also acknowledge the configure
when committing the new content (see ack_configure).</p>
<p>It is up to the compositor to position the surface after it was
unmaximized; usually the position the surface had before maximizing, if
applicable.</p>
<p>If the surface was already not maximized, the compositor will still
emit a configure event without the &quot;maximized&quot; state.</p>
<p>If the surface is in a fullscreen state, this request has no direct
effect. It may alter the state the surface is returned to when
unmaximized unless overridden by the compositor.</p>
</div><div id="variant.SetFullscreen" class="variant small-section-header"><a href="#variant.SetFullscreen" class="anchor field"></a><code id='SetFullscreen.v'>SetFullscreen</code></div><div class='docblock'><p>set the window as fullscreen on an output</p>
<p>Make the surface fullscreen.</p>
<p>After requesting that the surface should be fullscreened, the
compositor will respond by emitting a configure event. Whether the
client is actually put into a fullscreen state is subject to compositor
policies. The client must also acknowledge the configure when
committing the new content (see ack_configure).</p>
<p>The output passed by the request indicates the client's preference as
to which display it should be set fullscreen on. If this value is NULL,
it's up to the compositor to choose which display will be used to map
this surface.</p>
<p>If the surface doesn't cover the whole output, the compositor will
position the surface in the center of the output and compensate with
with border fill covering the rest of the output. The content of the
border fill is undefined, but should be assumed to be in some way that
attempts to blend into the surrounding area (e.g. solid black).</p>
<p>If the fullscreened surface is not opaque, the compositor must make
sure that other screen content not part of the same surface tree (made
up of subsurfaces, popups or similarly coupled surfaces) are not
visible below the fullscreened surface.</p>
</div><div class='autohide sub-variant' id='variant.SetFullscreen.fields'><h3>Fields of <b>SetFullscreen</b></h3><div><span id="variant.SetFullscreen.field.output" class="variant small-section-header"><a href="#variant.SetFullscreen.field.output" class="anchor field"></a><code id='SetFullscreen.v.output.v'>output:&nbsp;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../../../wayland_client/proxy/struct.Proxy.html" title="struct wayland_client::proxy::Proxy">Proxy</a>&lt;<a class="struct" href="../../../../wayland_client/generated/c_api/wl_output/struct.WlOutput.html" title="struct wayland_client::generated::c_api::wl_output::WlOutput">WlOutput</a>&gt;&gt;</code></span></div></div><div id="variant.UnsetFullscreen" class="variant small-section-header"><a href="#variant.UnsetFullscreen" class="anchor field"></a><code id='UnsetFullscreen.v'>UnsetFullscreen</code></div><div class='docblock'><p>unset the window as fullscreen</p>
<p>Make the surface no longer fullscreen.</p>
<p>After requesting that the surface should be unfullscreened, the
compositor will respond by emitting a configure event.
Whether this actually removes the fullscreen state of the client is
subject to compositor policies.</p>
<p>Making a surface unfullscreen sets states for the surface based on the following:</p>
<ul>
<li>the state(s) it may have had before becoming fullscreen</li>
<li>any state(s) decided by the compositor</li>
<li>any state(s) requested by the client while the surface was fullscreen</li>
</ul>
<p>The compositor may include the previous window geometry dimensions in
the configure event, if applicable.</p>
<p>The client must also acknowledge the configure when committing the new
content (see ack_configure).</p>
</div><div id="variant.SetMinimized" class="variant small-section-header"><a href="#variant.SetMinimized" class="anchor field"></a><code id='SetMinimized.v'>SetMinimized</code></div><div class='docblock'><p>set the window as minimized</p>
<p>Request that the compositor minimize your surface. There is no
way to know if the surface is currently minimized, nor is there
any way to unset minimization on this surface.</p>
<p>If you are looking to throttle redrawing when minimized, please
instead use the wl_surface.frame event for this, as this will
also work with live previews on windows in Alt-Tab, Expose or
similar compositor features.</p>
</div><h2 id='implementations' class='small-section-header'>Trait Implementations<a href='#implementations' class='anchor'></a></h2><div id='implementations-list'><h3 id='impl-MessageGroup' class='impl'><code class='in-band'>impl <a class="trait" href="../../../../wayland_commons/trait.MessageGroup.html" title="trait wayland_commons::MessageGroup">MessageGroup</a> for <a class="enum" href="../../../../wayland_protocols/xdg_shell/client/xdg_toplevel/enum.Request.html" title="enum wayland_protocols::xdg_shell::client::xdg_toplevel::Request">Request</a></code><a href='#impl-MessageGroup' class='anchor'></a><a class='srclink' href='../../../../src/wayland_protocols/home/mrh/source/Trac3r-rust/target/debug/build/wayland-protocols-1a9f4751ab847ca9/out/xdg-shell_c_client_api.rs.html#1' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedconstant.MESSAGES' class="associatedconstant hidden"><code id='MESSAGES.v'>const <a href='../../../../wayland_commons/trait.MessageGroup.html#associatedconstant.MESSAGES' class="constant"><b>MESSAGES</b></a>: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'static [</a><a class="struct" href="../../../../wayland_commons/wire/struct.MessageDesc.html" title="struct wayland_commons::wire::MessageDesc">MessageDesc</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../../../../src/wayland_protocols/home/mrh/source/Trac3r-rust/target/debug/build/wayland-protocols-1a9f4751ab847ca9/out/xdg-shell_c_client_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Wire representation of this MessageGroup</p>
</div><h4 id='associatedtype.Map' class="type"><code id='Map.t'>type <a href='../../../../wayland_commons/trait.MessageGroup.html#associatedtype.Map' class="type">Map</a> = <a class="enum" href="../../../../wayland_client/imp/enum.ProxyMap.html" title="enum wayland_client::imp::ProxyMap">ProxyMap</a></code></h4><div class='docblock'><p>The wrapper type for ObjectMap allowing the mapping of Object and NewId arguments to the object map during parsing. <a href="../../../../wayland_commons/trait.MessageGroup.html#associatedtype.Map">Read more</a></p>
</div><h4 id='method.is_destructor' class="method hidden"><code id='is_destructor.v'>fn <a href='../../../../wayland_commons/trait.MessageGroup.html#tymethod.is_destructor' class='fnname'>is_destructor</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../../../../src/wayland_protocols/home/mrh/source/Trac3r-rust/target/debug/build/wayland-protocols-1a9f4751ab847ca9/out/xdg-shell_c_client_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Whether this message is a destructor <a href="../../../../wayland_commons/trait.MessageGroup.html#tymethod.is_destructor">Read more</a></p>
</div><h4 id='method.opcode' class="method hidden"><code id='opcode.v'>fn <a href='../../../../wayland_commons/trait.MessageGroup.html#tymethod.opcode' class='fnname'>opcode</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></code><a class='srclink' href='../../../../src/wayland_protocols/home/mrh/source/Trac3r-rust/target/debug/build/wayland-protocols-1a9f4751ab847ca9/out/xdg-shell_c_client_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>The opcode of this message</p>
</div><h4 id='method.child' class="method hidden"><code id='child.v'>fn <a href='../../../../wayland_commons/trait.MessageGroup.html#tymethod.child' class='fnname'>child</a>&lt;Meta:&nbsp;<a class="trait" href="../../../../wayland_commons/map/trait.ObjectMetadata.html" title="trait wayland_commons::map::ObjectMetadata">ObjectMetadata</a>&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;opcode: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;version: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;meta: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Meta<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../../../../wayland_commons/map/struct.Object.html" title="struct wayland_commons::map::Object">Object</a>&lt;Meta&gt;&gt;</code><a class='srclink' href='../../../../src/wayland_protocols/home/mrh/source/Trac3r-rust/target/debug/build/wayland-protocols-1a9f4751ab847ca9/out/xdg-shell_c_client_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Retrieve the child <code>Object</code> associated with this message if any</p>
</div><h4 id='method.from_raw' class="method hidden"><code id='from_raw.v'>fn <a href='../../../../wayland_commons/trait.MessageGroup.html#tymethod.from_raw' class='fnname'>from_raw</a>(msg: <a class="struct" href="../../../../wayland_commons/wire/struct.Message.html" title="struct wayland_commons::wire::Message">Message</a>, map: &amp;mut Self::<a class="type" href="../../../../wayland_commons/trait.MessageGroup.html#associatedtype.Map" title="type wayland_commons::MessageGroup::Map">Map</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;</code><a class='srclink' href='../../../../src/wayland_protocols/home/mrh/source/Trac3r-rust/target/debug/build/wayland-protocols-1a9f4751ab847ca9/out/xdg-shell_c_client_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Construct a message from its raw representation</p>
</div><h4 id='method.into_raw' class="method hidden"><code id='into_raw.v'>fn <a href='../../../../wayland_commons/trait.MessageGroup.html#tymethod.into_raw' class='fnname'>into_raw</a>(self, sender_id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="struct" href="../../../../wayland_commons/wire/struct.Message.html" title="struct wayland_commons::wire::Message">Message</a></code><a class='srclink' href='../../../../src/wayland_protocols/home/mrh/source/Trac3r-rust/target/debug/build/wayland-protocols-1a9f4751ab847ca9/out/xdg-shell_c_client_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Turn this message into its raw representation</p>
</div><h4 id='method.from_raw_c' class="method hidden"><code id='from_raw_c.v'>unsafe fn <a href='../../../../wayland_commons/trait.MessageGroup.html#tymethod.from_raw_c' class='fnname'>from_raw_c</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;obj: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="enum" href="https://doc.rust-lang.org/nightly/core/ffi/enum.c_void.html" title="enum core::ffi::c_void">c_void</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;opcode: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;args: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*const </a><a class="union" href="../../../../wayland_sys/common/union.wl_argument.html" title="union wayland_sys::common::wl_argument">wl_argument</a><br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="../../../../wayland_protocols/xdg_shell/client/xdg_toplevel/enum.Request.html" title="enum wayland_protocols::xdg_shell::client::xdg_toplevel::Request">Request</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt;</code><a class='srclink' href='../../../../src/wayland_protocols/home/mrh/source/Trac3r-rust/target/debug/build/wayland-protocols-1a9f4751ab847ca9/out/xdg-shell_c_client_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Construct a message of this group from its C representation</p>
</div><h4 id='method.as_raw_c_in' class="method hidden"><code id='as_raw_c_in.v'>fn <a href='../../../../wayland_commons/trait.MessageGroup.html#tymethod.as_raw_c_in' class='fnname'>as_raw_c_in</a>&lt;F, T&gt;(self, f: F) -&gt; T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="union" href="../../../../wayland_sys/common/union.wl_argument.html" title="union wayland_sys::common::wl_argument">wl_argument</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -&gt; T,&nbsp;</span></code><a class='srclink' href='../../../../src/wayland_protocols/home/mrh/source/Trac3r-rust/target/debug/build/wayland-protocols-1a9f4751ab847ca9/out/xdg-shell_c_client_api.rs.html#1' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Build a C representation of this message <a href="../../../../wayland_commons/trait.MessageGroup.html#tymethod.as_raw_c_in">Read more</a></p>
</div></div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-Send' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="../../../../wayland_protocols/xdg_shell/client/xdg_toplevel/enum.Request.html" title="enum wayland_protocols::xdg_shell::client::xdg_toplevel::Request">Request</a></code><a href='#impl-Send' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="../../../../wayland_protocols/xdg_shell/client/xdg_toplevel/enum.Request.html" title="enum wayland_protocols::xdg_shell::client::xdg_toplevel::Request">Request</a></code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="../../../../wayland_protocols/xdg_shell/client/xdg_toplevel/enum.Request.html" title="enum wayland_protocols::xdg_shell::client::xdg_toplevel::Request">Request</a></code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl !<a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="enum" href="../../../../wayland_protocols/xdg_shell/client/xdg_toplevel/enum.Request.html" title="enum wayland_protocols::xdg_shell::client::xdg_toplevel::Request">Request</a></code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl !<a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="../../../../wayland_protocols/xdg_shell/client/xdg_toplevel/enum.Request.html" title="enum wayland_protocols::xdg_shell::client::xdg_toplevel::Request">Request</a></code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-Into%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-Into%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#544-549' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.into' class="method hidden"><code id='into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into' class='fnname'>into</a>(self) -&gt; U</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#546-548' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-From%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</code><a href='#impl-From%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#553-555' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from' class="method hidden"><code id='from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(t: T) -&gt; T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#554' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-TryFrom%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-TryFrom%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#572-578' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error' class="type"><code id='Error.t'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error' class="type">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id='method.try_from' class="method hidden"><code id='try_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from' class='fnname'>try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#575-577' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-TryInto%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-TryInto%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#560-567' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error-1' class="type"><code id='Error.t-1'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error' class="type">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id='method.try_into' class="method hidden"><code id='try_into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into' class='fnname'>try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#564-566' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-BorrowMut%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-BorrowMut%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#218-220' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow_mut' class="method hidden"><code id='borrow_mut.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut' class='fnname'>borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut </a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#219' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></div><h3 id='impl-Borrow%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-Borrow%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#213-215' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow' class="method hidden"><code id='borrow.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow' class='fnname'>borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></div><h3 id='impl-Any' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-Any' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#100-102' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.type_id' class="method hidden"><code id='type_id.v'>fn <a href='https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id' class='fnname'>type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#101' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../../";window.currentCrate = "wayland_protocols";</script><script src="../../../../aliases.js"></script><script src="../../../../main.js"></script><script defer src="../../../../search-index.js"></script></body></html>