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.

43 lines
9.7 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!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 `xdg_surface` mod in crate `wayland_protocols`."><meta name="keywords" content="rust, rustlang, rust-lang, xdg_surface"><title>wayland_protocols::xdg_shell::client::xdg_surface - 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 mod"><!--[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'>Module xdg_surface</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#constants">Constants</a></li><li><a href="#traits">Traits</a></li></ul></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></p><script>window.sidebarCurrent = {name: 'xdg_surface', ty: 'mod', 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.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><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></span><span class='in-band'>Module <a href='../../../index.html'>wayland_protocols</a>::<wbr><a href='../../index.html'>xdg_shell</a>::<wbr><a href='../index.html'>client</a>::<wbr><a class="mod" href=''>xdg_surface</a></span></h1><div class='docblock'><p>desktop user interface surface base interface</p>
<p>An interface that may be implemented by a wl_surface, for
implementations that provide a desktop-style user interface.</p>
<p>It provides a base set of functionality required to construct user
interface elements requiring management by the compositor, such as
toplevel windows, menus, etc. The types of functionality are split into
xdg_surface roles.</p>
<p>Creating an xdg_surface does not set the role for a wl_surface. In order
to map an xdg_surface, the client must create a role-specific object
using, e.g., get_toplevel, get_popup. The wl_surface for any given
xdg_surface can have at most one role, and may not be assigned any role
not based on xdg_surface.</p>
<p>A role must be assigned before any other requests are made to the
xdg_surface object.</p>
<p>The client must call wl_surface.commit on the corresponding wl_surface
for the xdg_surface state to take effect.</p>
<p>Creating an xdg_surface from a wl_surface which has a buffer attached or
committed is a client error, and any attempts by a client to attach or
manipulate a buffer prior to the first xdg_surface.configure call must
also be treated as errors.</p>
<p>Mapping an xdg_surface-based role surface is defined as making it
possible for the surface to be shown by the compositor. Note that
a mapped surface is not guaranteed to be visible once it is mapped.</p>
<p>For an xdg_surface to be mapped by the compositor, the following
conditions must be met:
(1) the client has assigned an xdg_surface-based role to the surface
(2) the client has set and committed the xdg_surface state and the
role-dependent state to the surface
(3) the client has committed a buffer to the surface</p>
<p>A newly-unmapped surface is considered to have met condition (1) out
of the 3 required conditions for mapping a surface if its role surface
has not been destroyed.</p>
</div><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.XdgSurface.html" title='wayland_protocols::xdg_shell::client::xdg_surface::XdgSurface struct'>XdgSurface</a></td><td class='docblock-short'></td></tr></table><h2 id='enums' class='section-header'><a href="#enums">Enums</a></h2>
<table><tr class='module-item'><td><a class="enum" href="enum.Error.html" title='wayland_protocols::xdg_shell::client::xdg_surface::Error enum'>Error</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="enum" href="enum.Event.html" title='wayland_protocols::xdg_shell::client::xdg_surface::Event enum'>Event</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="enum" href="enum.Request.html" title='wayland_protocols::xdg_shell::client::xdg_surface::Request enum'>Request</a></td><td class='docblock-short'></td></tr></table><h2 id='constants' class='section-header'><a href="#constants">Constants</a></h2>
<table><tr class='module-item'><td><a class="constant" href="constant.EVT_CONFIGURE_SINCE.html" title='wayland_protocols::xdg_shell::client::xdg_surface::EVT_CONFIGURE_SINCE constant'>EVT_CONFIGURE_SINCE</a></td><td class='docblock-short'><p>The minimal object version supporting this event</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.REQ_ACK_CONFIGURE_SINCE.html" title='wayland_protocols::xdg_shell::client::xdg_surface::REQ_ACK_CONFIGURE_SINCE constant'>REQ_ACK_CONFIGURE_SINCE</a></td><td class='docblock-short'><p>The minimal object version supporting this request</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.REQ_DESTROY_SINCE.html" title='wayland_protocols::xdg_shell::client::xdg_surface::REQ_DESTROY_SINCE constant'>REQ_DESTROY_SINCE</a></td><td class='docblock-short'><p>The minimal object version supporting this request</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.REQ_GET_POPUP_SINCE.html" title='wayland_protocols::xdg_shell::client::xdg_surface::REQ_GET_POPUP_SINCE constant'>REQ_GET_POPUP_SINCE</a></td><td class='docblock-short'><p>The minimal object version supporting this request</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.REQ_GET_TOPLEVEL_SINCE.html" title='wayland_protocols::xdg_shell::client::xdg_surface::REQ_GET_TOPLEVEL_SINCE constant'>REQ_GET_TOPLEVEL_SINCE</a></td><td class='docblock-short'><p>The minimal object version supporting this request</p>
</td></tr><tr class='module-item'><td><a class="constant" href="constant.REQ_SET_WINDOW_GEOMETRY_SINCE.html" title='wayland_protocols::xdg_shell::client::xdg_surface::REQ_SET_WINDOW_GEOMETRY_SINCE constant'>REQ_SET_WINDOW_GEOMETRY_SINCE</a></td><td class='docblock-short'><p>The minimal object version supporting this request</p>
</td></tr></table><h2 id='traits' class='section-header'><a href="#traits">Traits</a></h2>
<table><tr class='module-item'><td><a class="trait" href="trait.RequestsTrait.html" title='wayland_protocols::xdg_shell::client::xdg_surface::RequestsTrait trait'>RequestsTrait</a></td><td class='docblock-short'></td></tr></table></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>