This commit is contained in:
wash2 2026-04-18 20:11:25 +00:00
commit 0fa87f2b35
16382 changed files with 734838 additions and 0 deletions

View file

@ -0,0 +1,25 @@
<!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="Shell abstractions"><title>cosmic::cctk::sctk::shell - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../static.files/rustdoc-aa0817cf.css"><meta name="rustdoc-vars" data-root-path="../../../../" data-static-root-path="../../../../static.files/" data-current-crate="cosmic" data-themes="" data-resource-suffix="" data-rustdoc-version="1.90.0-nightly (3048886e5 2025-07-30)" data-channel="nightly" data-search-js="search-fa3e91e5.js" data-settings-js="settings-5514c975.js" ><script src="../../../../static.files/storage-68b7e25d.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../../../static.files/main-eebb9057.js"></script><noscript><link rel="stylesheet" href="../../../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../cosmic/index.html">cosmic</a><span class="version">1.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module shell</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#shell-abstractions" title="Shell abstractions">Shell abstractions</a><ul><li><a href="#cross-desktop-group-xdg-shell" title="Cross desktop group (XDG) shell">Cross desktop group (XDG) shell</a></li><li><a href="#layer-shell" title="Layer shell">Layer shell</a></li></ul></li></ul><h3><a href="#modules">Module Items</a></h3><ul class="block"><li><a href="#modules" title="Modules">Modules</a></li><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#traits" title="Traits">Traits</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In cosmic::<wbr>cctk::<wbr>sctk</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../../index.html">cosmic</a>::<wbr><a href="../../index.html">cctk</a>::<wbr><a href="../index.html">sctk</a></div><h1>Module <span>shell</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>wayland</code> and Linux</strong> only.</div></span><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><h2 id="shell-abstractions"><a class="doc-anchor" href="#shell-abstractions">§</a>Shell abstractions</h2>
<p>A shell describes a set of wayland protocol extensions which define the capabilities of a surface and how
the surface is displayed.</p>
<h3 id="cross-desktop-group-xdg-shell"><a class="doc-anchor" href="#cross-desktop-group-xdg-shell">§</a>Cross desktop group (XDG) shell</h3>
<p>The XDG shell describes the semantics of desktop application windows.</p>
<p>The XDG shell defines two types of surfaces:</p>
<ul>
<li><a href="xdg/window/struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window"><code>Window</code></a> - An application window<sup id="fnref1"><a href="#fn1">1</a></sup>.</li>
<li><a href="xdg/popup/struct.Popup.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::Popup"><code>Popup</code></a> - A child surface positioned relative to a window.</li>
</ul>
<h4 id="why-use-the-xdg-shell"><a class="doc-anchor" href="#why-use-the-xdg-shell">§</a>Why use the XDG shell</h4>
<p>The XDG shell is the primary protocol through which application windows are created. You can be near
certain every desktop compositor will implement this shell so that applications may create windows.</p>
<p>See the <a href="xdg/index.html" title="mod cosmic::cctk::sctk::shell::xdg">XDG shell module documentation</a> for more information about creating application windows.</p>
<h3 id="layer-shell"><a class="doc-anchor" href="#layer-shell">§</a>Layer shell</h3>
<p>The layer shell is a protocol which allows the creation of “layers”. A layer refers to a surface rendered
at some specific z-depth relative to other layers. A layer may also be anchored to some edge and corner of
the screen.</p>
<p>The layer shell defines one type of surface: the <a href="wlr_layer/struct.LayerSurface.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurface"><code>wlr_layer::LayerSurface</code></a>.</p>
<p>There is no guarantee that the layer shell will be available in every compositor.</p>
<h4 id="why-use-the-layer-shell"><a class="doc-anchor" href="#why-use-the-layer-shell">§</a>Why use the layer shell</h4>
<p>The layer shell may be used to implement many desktop shell components, such as backgrounds, docks and
launchers.</p>
<div class="footnotes"><hr><ol><li id="fn1"><p>The XDG shell protocol actually refers to a window as a toplevel surface, but we use the more
familiar term “window” for the sake of clarity.&nbsp;<a href="#fnref1"></a></p></li></ol></div></div></details><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><dl class="item-table"><dt><a class="mod" href="wlr_layer/index.html" title="mod cosmic::cctk::sctk::shell::wlr_layer">wlr_<wbr>layer</a></dt><dt><a class="mod" href="xdg/index.html" title="mod cosmic::cctk::sctk::shell::xdg">xdg</a></dt><dd>Cross desktop group (XDG) shell</dd></dl><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Unsupported.html" title="struct cosmic::cctk::sctk::shell::Unsupported">Unsupported</a></dt><dd>An unsupported operation, often due to the version of the protocol.</dd></dl><h2 id="traits" class="section-header">Traits<a href="#traits" class="anchor">§</a></h2><dl class="item-table"><dt><a class="trait" href="trait.WaylandSurface.html" title="trait cosmic::cctk::sctk::shell::WaylandSurface">Wayland<wbr>Surface</a></dt><dd>Functionality shared by all <a href="../reexports/client/protocol/wl_surface/struct.WlSurface.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_surface::WlSurface"><code>wl_surface::WlSurface</code></a> backed shell role objects.</dd></dl></section></div></main></body></html>

View file

@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"mod":["wlr_layer","xdg"],"struct":["Unsupported"],"trait":["WaylandSurface"]};

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,30 @@
<!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="Functionality shared by all `wl_surface::WlSurface` backed shell role objects."><title>WaylandSurface in cosmic::cctk::sctk::shell - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../static.files/rustdoc-aa0817cf.css"><meta name="rustdoc-vars" data-root-path="../../../../" data-static-root-path="../../../../static.files/" data-current-crate="cosmic" data-themes="" data-resource-suffix="" data-rustdoc-version="1.90.0-nightly (3048886e5 2025-07-30)" data-channel="nightly" data-search-js="search-fa3e91e5.js" data-settings-js="settings-5514c975.js" ><script src="../../../../static.files/storage-68b7e25d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../../static.files/main-eebb9057.js"></script><noscript><link rel="stylesheet" href="../../../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../cosmic/index.html">cosmic</a><span class="version">1.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Wayland<wbr>Surface</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.wl_surface" title="wl_surface">wl_surface</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.attach" title="attach">attach</a></li><li><a href="#method.commit" title="commit">commit</a></li><li><a href="#method.offset" title="offset">offset</a></li><li><a href="#method.set_buffer_scale" title="set_buffer_scale">set_buffer_scale</a></li><li><a href="#method.set_buffer_transform" title="set_buffer_transform">set_buffer_transform</a></li><li><a href="#method.set_input_region" title="set_input_region">set_input_region</a></li><li><a href="#method.set_opaque_region" title="set_opaque_region">set_opaque_region</a></li></ul><h3><a href="#dyn-compatibility">Dyn Compatibility</a></h3><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In cosmic::<wbr>cctk::<wbr>sctk::<wbr>shell</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../../index.html">cosmic</a>::<wbr><a href="../../index.html">cctk</a>::<wbr><a href="../index.html">sctk</a>::<wbr><a href="index.html">shell</a></div><h1>Trait <span class="trait">WaylandSurface</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><pre class="rust item-decl"><code>pub trait WaylandSurface: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> {
// Required method
fn <a href="#tymethod.wl_surface" class="fn">wl_surface</a>(&amp;self) -&gt; &amp;<a class="struct" href="../reexports/client/protocol/wl_surface/struct.WlSurface.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_surface::WlSurface">WlSurface</a>;
// Provided methods
fn <a href="#method.attach" class="fn">attach</a>(&amp;self, buffer: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="../reexports/client/protocol/wl_buffer/struct.WlBuffer.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_buffer::WlBuffer">WlBuffer</a>&gt;, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, y: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) { ... }
<span class="item-spacer"></span> fn <a href="#method.set_opaque_region" class="fn">set_opaque_region</a>(&amp;self, region: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="../reexports/client/protocol/wl_region/struct.WlRegion.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_region::WlRegion">WlRegion</a>&gt;) { ... }
<span class="item-spacer"></span> fn <a href="#method.set_input_region" class="fn">set_input_region</a>(&amp;self, region: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="../reexports/client/protocol/wl_region/struct.WlRegion.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_region::WlRegion">WlRegion</a>&gt;) { ... }
<span class="item-spacer"></span> fn <a href="#method.set_buffer_transform" class="fn">set_buffer_transform</a>(
&amp;self,
transform: <a class="enum" href="../reexports/client/protocol/wl_output/enum.Transform.html" title="enum cosmic::cctk::sctk::reexports::client::protocol::wl_output::Transform">Transform</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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="struct.Unsupported.html" title="struct cosmic::cctk::sctk::shell::Unsupported">Unsupported</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.set_buffer_scale" class="fn">set_buffer_scale</a>(&amp;self, scale: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="struct.Unsupported.html" title="struct cosmic::cctk::sctk::shell::Unsupported">Unsupported</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.offset" class="fn">offset</a>(&amp;self, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, y: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="struct.Unsupported.html" title="struct cosmic::cctk::sctk::shell::Unsupported">Unsupported</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.commit" class="fn">commit</a>(&amp;self) { ... }
}</code></pre><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>wayland</code> and Linux</strong> only.</div></span><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Functionality shared by all <a href="../reexports/client/protocol/wl_surface/struct.WlSurface.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_surface::WlSurface"><code>wl_surface::WlSurface</code></a> backed shell role objects.</p>
</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.wl_surface" class="method"><h4 class="code-header">fn <a href="#tymethod.wl_surface" class="fn">wl_surface</a>(&amp;self) -&gt; &amp;<a class="struct" href="../reexports/client/protocol/wl_surface/struct.WlSurface.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_surface::WlSurface">WlSurface</a></h4></section></summary><div class="docblock"><p>The underlying <a href="../reexports/client/protocol/wl_surface/struct.WlSurface.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_surface::WlSurface"><code>WlSurface</code></a>.</p>
</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><section id="method.attach" class="method"><h4 class="code-header">fn <a href="#method.attach" class="fn">attach</a>(&amp;self, buffer: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="../reexports/client/protocol/wl_buffer/struct.WlBuffer.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_buffer::WlBuffer">WlBuffer</a>&gt;, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, y: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>)</h4></section><section id="method.set_opaque_region" class="method"><h4 class="code-header">fn <a href="#method.set_opaque_region" class="fn">set_opaque_region</a>(&amp;self, region: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="../reexports/client/protocol/wl_region/struct.WlRegion.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_region::WlRegion">WlRegion</a>&gt;)</h4></section><section id="method.set_input_region" class="method"><h4 class="code-header">fn <a href="#method.set_input_region" class="fn">set_input_region</a>(&amp;self, region: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="../reexports/client/protocol/wl_region/struct.WlRegion.html" title="struct cosmic::cctk::sctk::reexports::client::protocol::wl_region::WlRegion">WlRegion</a>&gt;)</h4></section><section id="method.set_buffer_transform" class="method"><h4 class="code-header">fn <a href="#method.set_buffer_transform" class="fn">set_buffer_transform</a>(&amp;self, transform: <a class="enum" href="../reexports/client/protocol/wl_output/enum.Transform.html" title="enum cosmic::cctk::sctk::reexports::client::protocol::wl_output::Transform">Transform</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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="struct.Unsupported.html" title="struct cosmic::cctk::sctk::shell::Unsupported">Unsupported</a>&gt;</h4></section><section id="method.set_buffer_scale" class="method"><h4 class="code-header">fn <a href="#method.set_buffer_scale" class="fn">set_buffer_scale</a>(&amp;self, scale: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="struct.Unsupported.html" title="struct cosmic::cctk::sctk::shell::Unsupported">Unsupported</a>&gt;</h4></section><section id="method.offset" class="method"><h4 class="code-header">fn <a href="#method.offset" class="fn">offset</a>(&amp;self, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, y: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</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;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="struct.Unsupported.html" title="struct cosmic::cctk::sctk::shell::Unsupported">Unsupported</a>&gt;</h4></section><details class="toggle method-toggle" open><summary><section id="method.commit" class="method"><h4 class="code-header">fn <a href="#method.commit" class="fn">commit</a>(&amp;self)</h4></section></summary><div class="docblock"><p>Commits pending surface state.</p>
<p>On commit, the pending double buffered state from the surface, including role dependent state is
applied.</p>
<h5 id="initial-commit"><a class="doc-anchor" href="#initial-commit">§</a>Initial commit</h5>
<p>In many protocol extensions, the concept of an initial commit is used. A initial commit provides the
initial state of a surface to the compositor. For example with the <a href="xdg/index.html" title="mod cosmic::cctk::sctk::shell::xdg">xdg shell</a>,
creating a window requires an initial commit.</p>
<h5 id="protocol-errors"><a class="doc-anchor" href="#protocol-errors">§</a>Protocol Errors</h5>
<p>If the commit is the initial commit, no buffers must have been attached to the surface. This rule
applies whether attaching the buffer was done using <a href="trait.WaylandSurface.html#method.attach" title="method cosmic::cctk::sctk::shell::WaylandSurface::attach"><code>WaylandSurface::attach</code></a> or under the hood in
via window system integration in graphics APIs such as Vulkan (using <code>vkQueuePresentKHR</code>) and EGL
(using <code>eglSwapBuffers</code>).</p>
</div></details></div><h2 id="dyn-compatibility" class="section-header">Dyn Compatibility<a href="#dyn-compatibility" class="anchor">§</a></h2><div class="dyn-compatibility-info"><p>This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#dyn-compatibility">dyn compatible</a>.</p><p><i>In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.</i></p></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-WaylandSurface-for-LayerSurface" class="impl"><a href="#impl-WaylandSurface-for-LayerSurface" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.WaylandSurface.html" title="trait cosmic::cctk::sctk::shell::WaylandSurface">WaylandSurface</a> for <a class="struct" href="wlr_layer/struct.LayerSurface.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurface">LayerSurface</a></h3></section><section id="impl-WaylandSurface-for-XdgShellSurface" class="impl"><a href="#impl-WaylandSurface-for-XdgShellSurface" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.WaylandSurface.html" title="trait cosmic::cctk::sctk::shell::WaylandSurface">WaylandSurface</a> for <a class="struct" href="xdg/struct.XdgShellSurface.html" title="struct cosmic::cctk::sctk::shell::xdg::XdgShellSurface">XdgShellSurface</a></h3></section><section id="impl-WaylandSurface-for-Window" class="impl"><a href="#impl-WaylandSurface-for-Window" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.WaylandSurface.html" title="trait cosmic::cctk::sctk::shell::WaylandSurface">WaylandSurface</a> for <a class="struct" href="xdg/window/struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window">Window</a></h3></section></div><script src="../../../../trait.impl/smithay_client_toolkit/shell/trait.WaylandSurface.js" data-ignore-extern-crates="smithay_client_toolkit" async></script></section></div></main></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["KeyboardInteractivity","Layer","SurfaceKind"],"struct":["Anchor","LayerShell","LayerSurface","LayerSurfaceConfigure","LayerSurfaceData","UnknownLayer"],"trait":["LayerShellHandler"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,35 @@
<!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="Handler for operations on a `LayerSurface`"><title>LayerShellHandler in cosmic::cctk::sctk::shell::wlr_layer - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../../static.files/rustdoc-aa0817cf.css"><meta name="rustdoc-vars" data-root-path="../../../../../" data-static-root-path="../../../../../static.files/" data-current-crate="cosmic" data-themes="" data-resource-suffix="" data-rustdoc-version="1.90.0-nightly (3048886e5 2025-07-30)" data-channel="nightly" data-search-js="search-fa3e91e5.js" data-settings-js="settings-5514c975.js" ><script src="../../../../../static.files/storage-68b7e25d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../../../static.files/main-eebb9057.js"></script><noscript><link rel="stylesheet" href="../../../../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../../cosmic/index.html">cosmic</a><span class="version">1.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Layer<wbr>Shell<wbr>Handler</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.closed" title="closed">closed</a></li><li><a href="#tymethod.configure" title="configure">configure</a></li></ul><h3><a href="#dyn-compatibility">Dyn Compatibility</a></h3><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In cosmic::<wbr>cctk::<wbr>sctk::<wbr>shell::<wbr>wlr_<wbr>layer</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../../../index.html">cosmic</a>::<wbr><a href="../../../index.html">cctk</a>::<wbr><a href="../../index.html">sctk</a>::<wbr><a href="../index.html">shell</a>::<wbr><a href="index.html">wlr_layer</a></div><h1>Trait <span class="trait">LayerShellHandler</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><pre class="rust item-decl"><code>pub trait LayerShellHandler: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> {
// Required methods
fn <a href="#tymethod.closed" class="fn">closed</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
layer: &amp;<a class="struct" href="struct.LayerSurface.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurface">LayerSurface</a>,
);
<span class="item-spacer"></span> fn <a href="#tymethod.configure" class="fn">configure</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
layer: &amp;<a class="struct" href="struct.LayerSurface.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurface">LayerSurface</a>,
configure: <a class="struct" href="struct.LayerSurfaceConfigure.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurfaceConfigure">LayerSurfaceConfigure</a>,
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
);
}</code></pre><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>wayland</code> and Linux</strong> only.</div></span><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Handler for operations on a <a href="struct.LayerSurface.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurface"><code>LayerSurface</code></a></p>
</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.closed" class="method"><h4 class="code-header">fn <a href="#tymethod.closed" class="fn">closed</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
layer: &amp;<a class="struct" href="struct.LayerSurface.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurface">LayerSurface</a>,
)</h4></section></summary><div class="docblock"><p>The layer surface has been closed.</p>
<p>When this requested is called, the layer surface is no longer shown and all handles of the <a href="struct.LayerSurface.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurface"><code>LayerSurface</code></a>
should be dropped.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.configure" class="method"><h4 class="code-header">fn <a href="#tymethod.configure" class="fn">configure</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
layer: &amp;<a class="struct" href="struct.LayerSurface.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurface">LayerSurface</a>,
configure: <a class="struct" href="struct.LayerSurfaceConfigure.html" title="struct cosmic::cctk::sctk::shell::wlr_layer::LayerSurfaceConfigure">LayerSurfaceConfigure</a>,
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
)</h4></section></summary><div class="docblock"><p>Apply a suggested surface change.</p>
<p>When this function is called, the compositor is requesting the layer surfacess size or state to change.</p>
</div></details></div><h2 id="dyn-compatibility" class="section-header">Dyn Compatibility<a href="#dyn-compatibility" class="anchor">§</a></h2><div class="dyn-compatibility-info"><p>This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#dyn-compatibility">dyn compatible</a>.</p><p><i>In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.</i></p></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../../../../../trait.impl/smithay_client_toolkit/shell/wlr_layer/trait.LayerShellHandler.js" async></script></section></div></main></body></html>

View file

@ -0,0 +1,2 @@
<!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="The default fallback frame which is intended to show some very basic derocations."><title>cosmic::cctk::sctk::shell::xdg::fallback_frame - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../../../static.files/rustdoc-aa0817cf.css"><meta name="rustdoc-vars" data-root-path="../../../../../../" data-static-root-path="../../../../../../static.files/" data-current-crate="cosmic" data-themes="" data-resource-suffix="" data-rustdoc-version="1.90.0-nightly (3048886e5 2025-07-30)" data-channel="nightly" data-search-js="search-fa3e91e5.js" data-settings-js="settings-5514c975.js" ><script src="../../../../../../static.files/storage-68b7e25d.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../../../../../static.files/main-eebb9057.js"></script><noscript><link rel="stylesheet" href="../../../../../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../../../cosmic/index.html">cosmic</a><span class="version">1.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module fallback_<wbr>frame</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In cosmic::<wbr>cctk::<wbr>sctk::<wbr>shell::<wbr>xdg</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../../../../index.html">cosmic</a>::<wbr><a href="../../../../index.html">cctk</a>::<wbr><a href="../../../index.html">sctk</a>::<wbr><a href="../../index.html">shell</a>::<wbr><a href="../index.html">xdg</a></div><h1>Module <span>fallback_frame</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>wayland</code> and Linux</strong> only.</div></span><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The default fallback frame which is intended to show some very basic derocations.</p>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.FallbackFrame.html" title="struct cosmic::cctk::sctk::shell::xdg::fallback_frame::FallbackFrame">Fallback<wbr>Frame</a></dt><dd>The default ugly frame.</dd></dl></section></div></main></body></html>

View file

@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"struct":["FallbackFrame"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
<!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 `popup` mod in crate `cosmic`."><title>cosmic::cctk::sctk::shell::xdg::popup - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../../../static.files/rustdoc-aa0817cf.css"><meta name="rustdoc-vars" data-root-path="../../../../../../" data-static-root-path="../../../../../../static.files/" data-current-crate="cosmic" data-themes="" data-resource-suffix="" data-rustdoc-version="1.90.0-nightly (3048886e5 2025-07-30)" data-channel="nightly" data-search-js="search-fa3e91e5.js" data-settings-js="settings-5514c975.js" ><script src="../../../../../../static.files/storage-68b7e25d.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../../../../../static.files/main-eebb9057.js"></script><noscript><link rel="stylesheet" href="../../../../../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../../../cosmic/index.html">cosmic</a><span class="version">1.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module popup</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#traits" title="Traits">Traits</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In cosmic::<wbr>cctk::<wbr>sctk::<wbr>shell::<wbr>xdg</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../../../../index.html">cosmic</a>::<wbr><a href="../../../../index.html">cctk</a>::<wbr><a href="../../../index.html">sctk</a>::<wbr><a href="../../index.html">shell</a>::<wbr><a href="../index.html">xdg</a></div><h1>Module <span>popup</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>wayland</code> and Linux</strong> only.</div></span><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Popup.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::Popup">Popup</a></dt><dt><a class="struct" href="struct.PopupConfigure.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::PopupConfigure">Popup<wbr>Configure</a></dt><dt><a class="struct" href="struct.PopupData.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::PopupData">Popup<wbr>Data</a></dt></dl><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><dl class="item-table"><dt><a class="enum" href="enum.ConfigureKind.html" title="enum cosmic::cctk::sctk::shell::xdg::popup::ConfigureKind">Configure<wbr>Kind</a></dt></dl><h2 id="traits" class="section-header">Traits<a href="#traits" class="anchor">§</a></h2><dl class="item-table"><dt><a class="trait" href="trait.PopupHandler.html" title="trait cosmic::cctk::sctk::shell::xdg::popup::PopupHandler">Popup<wbr>Handler</a></dt></dl></section></div></main></body></html>

View file

@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["ConfigureKind"],"struct":["Popup","PopupConfigure","PopupData"],"trait":["PopupHandler"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,19 @@
<!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 `PopupHandler` trait in crate `cosmic`."><title>PopupHandler in cosmic::cctk::sctk::shell::xdg::popup - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../../../static.files/rustdoc-aa0817cf.css"><meta name="rustdoc-vars" data-root-path="../../../../../../" data-static-root-path="../../../../../../static.files/" data-current-crate="cosmic" data-themes="" data-resource-suffix="" data-rustdoc-version="1.90.0-nightly (3048886e5 2025-07-30)" data-channel="nightly" data-search-js="search-fa3e91e5.js" data-settings-js="settings-5514c975.js" ><script src="../../../../../../static.files/storage-68b7e25d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../../../../static.files/main-eebb9057.js"></script><noscript><link rel="stylesheet" href="../../../../../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../../../cosmic/index.html">cosmic</a><span class="version">1.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Popup<wbr>Handler</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.configure" title="configure">configure</a></li><li><a href="#tymethod.done" title="done">done</a></li></ul><h3><a href="#dyn-compatibility">Dyn Compatibility</a></h3><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In cosmic::<wbr>cctk::<wbr>sctk::<wbr>shell::<wbr>xdg::<wbr>popup</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../../../../index.html">cosmic</a>::<wbr><a href="../../../../index.html">cctk</a>::<wbr><a href="../../../index.html">sctk</a>::<wbr><a href="../../index.html">shell</a>::<wbr><a href="../index.html">xdg</a>::<wbr><a href="index.html">popup</a></div><h1>Trait <span class="trait">PopupHandler</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><pre class="rust item-decl"><code>pub trait PopupHandler: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> {
// Required methods
fn <a href="#tymethod.configure" class="fn">configure</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
popup: &amp;<a class="struct" href="struct.Popup.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::Popup">Popup</a>,
config: <a class="struct" href="struct.PopupConfigure.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::PopupConfigure">PopupConfigure</a>,
);
<span class="item-spacer"></span> fn <a href="#tymethod.done" class="fn">done</a>(&amp;mut self, conn: &amp;<a class="struct" href="../../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>, qh: &amp;<a class="struct" href="../../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;, popup: &amp;<a class="struct" href="struct.Popup.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::Popup">Popup</a>);
}</code></pre><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>wayland</code> and Linux</strong> only.</div></span><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.configure" class="method"><h4 class="code-header">fn <a href="#tymethod.configure" class="fn">configure</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
popup: &amp;<a class="struct" href="struct.Popup.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::Popup">Popup</a>,
config: <a class="struct" href="struct.PopupConfigure.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::PopupConfigure">PopupConfigure</a>,
)</h4></section></summary><div class="docblock"><p>The popup has been configured.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.done" class="method"><h4 class="code-header">fn <a href="#tymethod.done" class="fn">done</a>(&amp;mut self, conn: &amp;<a class="struct" href="../../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>, qh: &amp;<a class="struct" href="../../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;, popup: &amp;<a class="struct" href="struct.Popup.html" title="struct cosmic::cctk::sctk::shell::xdg::popup::Popup">Popup</a>)</h4></section></summary><div class="docblock"><p>The popup was dismissed by the compositor and should be destroyed.</p>
</div></details></div><h2 id="dyn-compatibility" class="section-header">Dyn Compatibility<a href="#dyn-compatibility" class="anchor">§</a></h2><div class="dyn-compatibility-info"><p>This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#dyn-compatibility">dyn compatible</a>.</p><p><i>In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.</i></p></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../../../../../../trait.impl/smithay_client_toolkit/shell/xdg/popup/trait.PopupHandler.js" async></script></section></div></main></body></html>

View file

@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"mod":["fallback_frame","popup","window"],"struct":["XdgPositioner","XdgShell","XdgShellSurface"],"trait":["XdgSurface"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,8 @@
<!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 `XdgSurface` trait in crate `cosmic`."><title>XdgSurface in cosmic::cctk::sctk::shell::xdg - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../../static.files/rustdoc-aa0817cf.css"><meta name="rustdoc-vars" data-root-path="../../../../../" data-static-root-path="../../../../../static.files/" data-current-crate="cosmic" data-themes="" data-resource-suffix="" data-rustdoc-version="1.90.0-nightly (3048886e5 2025-07-30)" data-channel="nightly" data-search-js="search-fa3e91e5.js" data-settings-js="settings-5514c975.js" ><script src="../../../../../static.files/storage-68b7e25d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../../../static.files/main-eebb9057.js"></script><noscript><link rel="stylesheet" href="../../../../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../../cosmic/index.html">cosmic</a><span class="version">1.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">XdgSurface</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.xdg_surface" title="xdg_surface">xdg_surface</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.set_window_geometry" title="set_window_geometry">set_window_geometry</a></li></ul><h3><a href="#dyn-compatibility">Dyn Compatibility</a></h3><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In cosmic::<wbr>cctk::<wbr>sctk::<wbr>shell::<wbr>xdg</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../../../index.html">cosmic</a>::<wbr><a href="../../../index.html">cctk</a>::<wbr><a href="../../index.html">sctk</a>::<wbr><a href="../index.html">shell</a>::<wbr><a href="index.html">xdg</a></div><h1>Trait <span class="trait">XdgSurface</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><pre class="rust item-decl"><code>pub trait XdgSurface: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="../trait.WaylandSurface.html" title="trait cosmic::cctk::sctk::shell::WaylandSurface">WaylandSurface</a> {
// Required method
fn <a href="#tymethod.xdg_surface" class="fn">xdg_surface</a>(&amp;self) -&gt; &amp;<a class="struct" href="../../reexports/protocols/xdg/shell/client/xdg_surface/struct.XdgSurface.html" title="struct cosmic::cctk::sctk::reexports::protocols::xdg::shell::client::xdg_surface::XdgSurface">XdgSurface</a>;
// Provided method
fn <a href="#method.set_window_geometry" class="fn">set_window_geometry</a>(&amp;self, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, y: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, width: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, height: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) { ... }
}</code></pre><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>wayland</code> and Linux</strong> only.</div></span><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.xdg_surface" class="method"><h4 class="code-header">fn <a href="#tymethod.xdg_surface" class="fn">xdg_surface</a>(&amp;self) -&gt; &amp;<a class="struct" href="../../reexports/protocols/xdg/shell/client/xdg_surface/struct.XdgSurface.html" title="struct cosmic::cctk::sctk::reexports::protocols::xdg::shell::client::xdg_surface::XdgSurface">XdgSurface</a></h4></section></summary><div class="docblock"><p>The underlying <a href="../../reexports/protocols/xdg/shell/client/xdg_surface/struct.XdgSurface.html" title="struct cosmic::cctk::sctk::reexports::protocols::xdg::shell::client::xdg_surface::XdgSurface"><code>XdgSurface</code></a>.</p>
</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><section id="method.set_window_geometry" class="method"><h4 class="code-header">fn <a href="#method.set_window_geometry" class="fn">set_window_geometry</a>(&amp;self, x: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, y: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, width: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, height: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>)</h4></section></div><h2 id="dyn-compatibility" class="section-header">Dyn Compatibility<a href="#dyn-compatibility" class="anchor">§</a></h2><div class="dyn-compatibility-info"><p>This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#dyn-compatibility">dyn compatible</a>.</p><p><i>In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.</i></p></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-XdgSurface-for-XdgShellSurface" class="impl"><a href="#impl-XdgSurface-for-XdgShellSurface" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.XdgSurface.html" title="trait cosmic::cctk::sctk::shell::xdg::XdgSurface">XdgSurface</a> for <a class="struct" href="struct.XdgShellSurface.html" title="struct cosmic::cctk::sctk::shell::xdg::XdgShellSurface">XdgShellSurface</a></h3></section><section id="impl-XdgSurface-for-Window" class="impl"><a href="#impl-XdgSurface-for-Window" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.XdgSurface.html" title="trait cosmic::cctk::sctk::shell::xdg::XdgSurface">XdgSurface</a> for <a class="struct" href="window/struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window">Window</a></h3></section></div><script src="../../../../../trait.impl/smithay_client_toolkit/shell/xdg/trait.XdgSurface.js" data-ignore-extern-crates="smithay_client_toolkit" async></script></section></div></main></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,2 @@
<!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="XDG shell windows."><title>cosmic::cctk::sctk::shell::xdg::window - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../../../static.files/rustdoc-aa0817cf.css"><meta name="rustdoc-vars" data-root-path="../../../../../../" data-static-root-path="../../../../../../static.files/" data-current-crate="cosmic" data-themes="" data-resource-suffix="" data-rustdoc-version="1.90.0-nightly (3048886e5 2025-07-30)" data-channel="nightly" data-search-js="search-fa3e91e5.js" data-settings-js="settings-5514c975.js" ><script src="../../../../../../static.files/storage-68b7e25d.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../../../../../static.files/main-eebb9057.js"></script><noscript><link rel="stylesheet" href="../../../../../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../../../cosmic/index.html">cosmic</a><span class="version">1.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module window</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#traits" title="Traits">Traits</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In cosmic::<wbr>cctk::<wbr>sctk::<wbr>shell::<wbr>xdg</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../../../../index.html">cosmic</a>::<wbr><a href="../../../../index.html">cctk</a>::<wbr><a href="../../../index.html">sctk</a>::<wbr><a href="../../index.html">shell</a>::<wbr><a href="../index.html">xdg</a></div><h1>Module <span>window</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>wayland</code> and Linux</strong> only.</div></span><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>XDG shell windows.</p>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window">Window</a></dt><dt><a class="struct" href="struct.WindowConfigure.html" title="struct cosmic::cctk::sctk::shell::xdg::window::WindowConfigure">Window<wbr>Configure</a></dt><dd>A window configure.</dd><dt><a class="struct" href="struct.WindowData.html" title="struct cosmic::cctk::sctk::shell::xdg::window::WindowData">Window<wbr>Data</a></dt></dl><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><dl class="item-table"><dt><a class="enum" href="enum.DecorationMode.html" title="enum cosmic::cctk::sctk::shell::xdg::window::DecorationMode">Decoration<wbr>Mode</a></dt><dd>Decoration mode of a window.</dd><dt><a class="enum" href="enum.WindowDecorations.html" title="enum cosmic::cctk::sctk::shell::xdg::window::WindowDecorations">Window<wbr>Decorations</a></dt><dd>Decorations a window is created with.</dd></dl><h2 id="traits" class="section-header">Traits<a href="#traits" class="anchor">§</a></h2><dl class="item-table"><dt><a class="trait" href="trait.WindowHandler.html" title="trait cosmic::cctk::sctk::shell::xdg::window::WindowHandler">Window<wbr>Handler</a></dt><dd>Handler for toplevel operations on a <a href="struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window"><code>Window</code></a>.</dd></dl></section></div></main></body></html>

View file

@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["DecorationMode","WindowDecorations"],"struct":["Window","WindowConfigure","WindowData"],"trait":["WindowHandler"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,41 @@
<!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="Handler for toplevel operations on a `Window`."><title>WindowHandler in cosmic::cctk::sctk::shell::xdg::window - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../../../../static.files/rustdoc-aa0817cf.css"><meta name="rustdoc-vars" data-root-path="../../../../../../" data-static-root-path="../../../../../../static.files/" data-current-crate="cosmic" data-themes="" data-resource-suffix="" data-rustdoc-version="1.90.0-nightly (3048886e5 2025-07-30)" data-channel="nightly" data-search-js="search-fa3e91e5.js" data-settings-js="settings-5514c975.js" ><script src="../../../../../../static.files/storage-68b7e25d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../../../../static.files/main-eebb9057.js"></script><noscript><link rel="stylesheet" href="../../../../../../static.files/noscript-32bb7600.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../../../../../static.files/favicon-044be391.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../../../../cosmic/index.html">cosmic</a><span class="version">1.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Window<wbr>Handler</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.configure" title="configure">configure</a></li><li><a href="#tymethod.request_close" title="request_close">request_close</a></li></ul><h3><a href="#dyn-compatibility">Dyn Compatibility</a></h3><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In cosmic::<wbr>cctk::<wbr>sctk::<wbr>shell::<wbr>xdg::<wbr>window</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../../../../index.html">cosmic</a>::<wbr><a href="../../../../index.html">cctk</a>::<wbr><a href="../../../index.html">sctk</a>::<wbr><a href="../../index.html">shell</a>::<wbr><a href="../index.html">xdg</a>::<wbr><a href="index.html">window</a></div><h1>Trait <span class="trait">WindowHandler</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><pre class="rust item-decl"><code>pub trait WindowHandler: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> {
// Required methods
fn <a href="#tymethod.request_close" class="fn">request_close</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
window: &amp;<a class="struct" href="struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window">Window</a>,
);
<span class="item-spacer"></span> fn <a href="#tymethod.configure" class="fn">configure</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
window: &amp;<a class="struct" href="struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window">Window</a>,
configure: <a class="struct" href="struct.WindowConfigure.html" title="struct cosmic::cctk::sctk::shell::xdg::window::WindowConfigure">WindowConfigure</a>,
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
);
}</code></pre><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>wayland</code> and Linux</strong> only.</div></span><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Handler for toplevel operations on a <a href="struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window"><code>Window</code></a>.</p>
</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.request_close" class="method"><h4 class="code-header">fn <a href="#tymethod.request_close" class="fn">request_close</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
window: &amp;<a class="struct" href="struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window">Window</a>,
)</h4></section></summary><div class="docblock"><p>Request to close a window.</p>
<p>This request does not destroy the window. You must drop all <a href="struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window"><code>Window</code></a> handles to destroy the window.
This request may be sent either by the compositor or by some other mechanism (such as client side decorations).</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.configure" class="method"><h4 class="code-header">fn <a href="#tymethod.configure" class="fn">configure</a>(
&amp;mut self,
conn: &amp;<a class="struct" href="../../../reexports/client/struct.Connection.html" title="struct cosmic::cctk::sctk::reexports::client::Connection">Connection</a>,
qh: &amp;<a class="struct" href="../../../reexports/client/struct.QueueHandle.html" title="struct cosmic::cctk::sctk::reexports::client::QueueHandle">QueueHandle</a>&lt;Self&gt;,
window: &amp;<a class="struct" href="struct.Window.html" title="struct cosmic::cctk::sctk::shell::xdg::window::Window">Window</a>,
configure: <a class="struct" href="struct.WindowConfigure.html" title="struct cosmic::cctk::sctk::shell::xdg::window::WindowConfigure">WindowConfigure</a>,
serial: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>,
)</h4></section></summary><div class="docblock"><p>Apply a suggested surface change.</p>
<p>When this function is called, the compositor is requesting the windows size or state to change.</p>
<p>Internally this function is called when the underlying <code>xdg_surface</code> is configured. Any extension
protocols that interface with xdg-shell are able to be notified that the surfaces configure sequence
is complete by using this function.</p>
<h5 id="double-buffering"><a class="doc-anchor" href="#double-buffering">§</a>Double buffering</h5>
<p>Configure events in Wayland are considered to be double buffered and the state of the window does not
change until committed.</p>
</div></details></div><h2 id="dyn-compatibility" class="section-header">Dyn Compatibility<a href="#dyn-compatibility" class="anchor">§</a></h2><div class="dyn-compatibility-info"><p>This trait is <b>not</b> <a href="https://doc.rust-lang.org/nightly/reference/items/traits.html#dyn-compatibility">dyn compatible</a>.</p><p><i>In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.</i></p></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../../../../../../trait.impl/smithay_client_toolkit/shell/xdg/window/trait.WindowHandler.js" async></script></section></div></main></body></html>