1
0
mirror of https://github.com/emilk/egui.git synced 2026-06-26 14:49:06 -04:00

Use explicit Arc::clone to clarify when clones are cheap (#7784)

This commit is contained in:
Emil Ernerfeldt
2025-12-17 17:19:18 +01:00
committed by GitHub
parent 6157a35985
commit 986c2c0ffb
40 changed files with 80 additions and 71 deletions

View File

@@ -75,7 +75,7 @@ impl MyApp {
// Clone locals so we can move them into the paint callback:
let angle = self.angle;
let rotating_triangle = self.rotating_triangle.clone();
let rotating_triangle = Arc::clone(&self.rotating_triangle);
let callback = egui::PaintCallback {
rect,

View File

@@ -1,8 +1,10 @@
use eframe::{EframePumpStatus, UserEvent, egui};
use std::{cell::Cell, io, os::fd::AsRawFd as _, rc::Rc, time::Duration};
use tokio::task::LocalSet;
use winit::event_loop::{ControlFlow, EventLoop};
use eframe::{EframePumpStatus, UserEvent, egui};
pub fn run() -> io::Result<()> {
env_logger::init(); // Log to stderr (if you run with `RUST_LOG=debug`).
let options = eframe::NativeOptions {
@@ -85,7 +87,7 @@ impl eframe::App for MyApp {
self.value.set(self.value.get() + 1);
}
if ui.button("Increment Later").clicked() {
let value = self.value.clone();
let value = Rc::clone(&self.value);
let ctx = ui.ctx().clone();
tokio::task::spawn_local(async move {
tokio::time::sleep(Duration::from_secs(1)).await;

View File

@@ -86,7 +86,7 @@ impl eframe::App for MyApp {
}
if self.show_deferred_viewport.load(Ordering::Relaxed) {
let show_deferred_viewport = self.show_deferred_viewport.clone();
let show_deferred_viewport = Arc::clone(&self.show_deferred_viewport);
ui.ctx().show_viewport_deferred(
egui::ViewportId::from_hash_of("deferred_viewport"),
egui::ViewportBuilder::default()

View File

@@ -129,7 +129,7 @@ impl eframe::App for MyApp {
}
if self.show_deferred_viewport.load(Ordering::Relaxed) {
let show_deferred_viewport = self.show_deferred_viewport.clone();
let show_deferred_viewport = Arc::clone(&self.show_deferred_viewport);
ui.ctx().show_viewport_deferred(
egui::ViewportId::from_hash_of("deferred_viewport"),
egui::ViewportBuilder::default()

View File

@@ -92,7 +92,7 @@ impl eframe::App for MyApp {
.unwrap();
self.save_to_file = false;
}
self.screenshot = Some(image.clone());
self.screenshot = Some(Arc::clone(image));
}
}
});