From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <yew-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
	by lore.proxmox.com (Postfix) with ESMTPS id CAD661FF162
	for <inbox@lore.proxmox.com>; Mon,  5 May 2025 10:14:01 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id 76936EB34;
	Mon,  5 May 2025 10:14:17 +0200 (CEST)
Date: Mon, 5 May 2025 10:13:44 +0200 (CEST)
From: Dietmar Maurer <dietmar@proxmox.com>
To: Yew framework devel list at Proxmox <yew-devel@lists.proxmox.com>,
 Dominik Csapak <d.csapak@proxmox.com>
Message-ID: <675478941.9677.1746432824405@webmail.proxmox.com>
In-Reply-To: <20250502124951.3886328-1-d.csapak@proxmox.com>
References: <20250502124951.3886328-1-d.csapak@proxmox.com>
MIME-Version: 1.0
X-Priority: 3
Importance: Normal
X-Mailer: Open-Xchange Mailer v7.10.6-Rev75
X-Originating-Client: open-xchange-appsuite
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.326 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DMARC_MISSING             0.1 Missing DMARC policy
 KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_PASS               -0.001 SPF: sender matches SPF record
Subject: Re: [yew-devel] [PATCH yew-widget-toolkit 1/2] dom: add convenience
 functions to get often used elements
X-BeenThere: yew-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Yew framework devel list at Proxmox <yew-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/yew-devel>, 
 <mailto:yew-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/yew-devel/>
List-Post: <mailto:yew-devel@lists.proxmox.com>
List-Help: <mailto:yew-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel>, 
 <mailto:yew-devel-request@lists.proxmox.com?subject=subscribe>
Reply-To: Yew framework devel list at Proxmox <yew-devel@lists.proxmox.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: yew-devel-bounces@lists.proxmox.com
Sender: "yew-devel" <yew-devel-bounces@lists.proxmox.com>

We can use gloo_utils instead?

> On 2.5.2025 14:49 CEST Dominik Csapak <d.csapak@proxmox.com> wrote:
> 
>  
> Namely window/document/body. We use them throughout our codebase with
> inline unwraps, instead we can use these helpers instead.
> 
> Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
> ---
>  src/dom/mod.rs | 20 +++++++++++++++++++-
>  1 file changed, 19 insertions(+), 1 deletion(-)
> 
> diff --git a/src/dom/mod.rs b/src/dom/mod.rs
> index f61dd21..679fab7 100644
> --- a/src/dom/mod.rs
> +++ b/src/dom/mod.rs
> @@ -13,7 +13,7 @@ pub use dom_size_observer::{DomSizeObserver, IntoSizeCallback, SizeCallback};
>  mod dom_visibility_observer;
>  pub use dom_visibility_observer::DomVisibilityObserver;
>  
> -use web_sys::Node;
> +use web_sys::{window, Document, HtmlElement, Node, Window};
>  use yew::prelude::*;
>  
>  /// A Trait to convert structs into HtmlElement when possible
> @@ -77,3 +77,21 @@ pub fn get_system_prefer_dark_mode() -> bool {
>          false
>      }
>  }
> +
> +/// Convenience function to get the [`Window`] object.
> +/// Panics if not in a browser context
> +pub fn get_window() -> Window {
> +    window().unwrap()
> +}
> +
> +/// Convenience function to get the [`Document`] object.
> +/// Panics if not in a browser context
> +pub fn get_document() -> Document {
> +    get_window().document().unwrap()
> +}
> +
> +/// Convenience function to get the a reference to the <body> tag as [`HtmlElement`].
> +/// Panics if not in a browser context
> +pub fn get_body() -> HtmlElement {
> +    get_document().body().unwrap()
> +}
> -- 
> 2.39.5
> 
> 
> 
> _______________________________________________
> yew-devel mailing list
> yew-devel@lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel


_______________________________________________
yew-devel mailing list
yew-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel