1
0
mirror of https://github.com/emilk/egui.git synced 2026-09-02 14:50:03 -04:00

Apply nightly clippy suggestions/fixes (#7794)

* Reduce the diff for https://github.com/emilk/egui/pull/7793
This commit is contained in:
Emil Ernerfeldt
2025-12-19 18:43:58 +01:00
committed by GitHub
parent f1e0b2e565
commit 011c59c2ad
10 changed files with 183 additions and 197 deletions

View File

@@ -251,7 +251,10 @@ web-sys = { workspace = true, features = [
] } ] }
# optional web: # optional web:
egui-wgpu = { workspace = true, optional = true, features = ["capture"] } # if wgpu is used, use it without (!) winit egui-wgpu = { workspace = true, optional = true, features = [
# if wgpu is used, use it without (!) winit:
"capture",
] }
wgpu = { workspace = true, optional = true } wgpu = { workspace = true, optional = true }
# Native dev dependencies for testing # Native dev dependencies for testing

View File

@@ -137,8 +137,8 @@ fn install_keydown(runner_ref: &WebRunner, target: &EventTarget) -> Result<(), J
&& !modifiers.command && !modifiers.command
// When text agent is focused, it is responsible for handling input events // When text agent is focused, it is responsible for handling input events
&& !runner.text_agent.has_focus() && !runner.text_agent.has_focus()
&& let Some(text) = text_from_keyboard_event(&event)
{ {
if let Some(text) = text_from_keyboard_event(&event) {
let egui_event = egui::Event::Text(text); let egui_event = egui::Event::Text(text);
let should_stop_propagation = let should_stop_propagation =
(runner.web_options.should_stop_propagation)(&egui_event); (runner.web_options.should_stop_propagation)(&egui_event);
@@ -157,7 +157,6 @@ fn install_keydown(runner_ref: &WebRunner, target: &EventTarget) -> Result<(), J
event.stop_propagation(); event.stop_propagation();
} }
} }
}
on_keydown(event, runner); on_keydown(event, runner);
}, },
@@ -321,18 +320,17 @@ fn install_copy_cut_paste(runner_ref: &WebRunner, target: &EventTarget) -> Resul
return; // The eframe app is not interested return; // The eframe app is not interested
} }
if let Some(data) = event.clipboard_data() { if let Some(data) = event.clipboard_data()
if let Ok(text) = data.get_data("text") { && let Ok(text) = data.get_data("text")
{
let text = text.replace("\r\n", "\n"); let text = text.replace("\r\n", "\n");
let mut should_stop_propagation = true; let mut should_stop_propagation = true;
let mut should_prevent_default = true; let mut should_prevent_default = true;
if !text.is_empty() { if !text.is_empty() {
let egui_event = egui::Event::Paste(text); let egui_event = egui::Event::Paste(text);
should_stop_propagation = should_stop_propagation = (runner.web_options.should_stop_propagation)(&egui_event);
(runner.web_options.should_stop_propagation)(&egui_event); should_prevent_default = (runner.web_options.should_prevent_default)(&egui_event);
should_prevent_default =
(runner.web_options.should_prevent_default)(&egui_event);
runner.input.raw.events.push(egui_event); runner.input.raw.events.push(egui_event);
runner.needs_repaint.repaint_asap(); runner.needs_repaint.repaint_asap();
} }
@@ -346,7 +344,6 @@ fn install_copy_cut_paste(runner_ref: &WebRunner, target: &EventTarget) -> Resul
event.prevent_default(); event.prevent_default();
} }
} }
}
})?; })?;
runner_ref.add_event_listener(target, "cut", |event: web_sys::ClipboardEvent, runner| { runner_ref.add_event_listener(target, "cut", |event: web_sys::ClipboardEvent, runner| {
@@ -562,8 +559,8 @@ fn install_pointerup(runner_ref: &WebRunner, target: &EventTarget) -> Result<(),
if is_interested_in_pointer_event( if is_interested_in_pointer_event(
runner, runner,
egui::pos2(event.client_x() as f32, event.client_y() as f32), egui::pos2(event.client_x() as f32, event.client_y() as f32),
) { ) && let Some(button) = button_from_mouse_event(&event)
if let Some(button) = button_from_mouse_event(&event) { {
let modifiers = runner.input.raw.modifiers; let modifiers = runner.input.raw.modifiers;
let egui_event = egui::Event::PointerButton { let egui_event = egui::Event::PointerButton {
pos, pos,
@@ -602,7 +599,6 @@ fn install_pointerup(runner_ref: &WebRunner, target: &EventTarget) -> Result<(),
event.stop_propagation(); event.stop_propagation();
} }
} }
}
}, },
) )
} }
@@ -713,16 +709,15 @@ fn install_touchstart(runner_ref: &WebRunner, target: &EventTarget) -> Result<()
fn install_touchmove(runner_ref: &WebRunner, target: &EventTarget) -> Result<(), JsValue> { fn install_touchmove(runner_ref: &WebRunner, target: &EventTarget) -> Result<(), JsValue> {
runner_ref.add_event_listener(target, "touchmove", |event: web_sys::TouchEvent, runner| { runner_ref.add_event_listener(target, "touchmove", |event: web_sys::TouchEvent, runner| {
if let Some((pos, touch)) = primary_touch_pos(runner, &event) { if let Some((pos, touch)) = primary_touch_pos(runner, &event)
if is_interested_in_pointer_event( && is_interested_in_pointer_event(
runner, runner,
egui::pos2(touch.client_x() as f32, touch.client_y() as f32), egui::pos2(touch.client_x() as f32, touch.client_y() as f32),
) { )
{
let egui_event = egui::Event::PointerMoved(pos); let egui_event = egui::Event::PointerMoved(pos);
let should_stop_propagation = let should_stop_propagation = (runner.web_options.should_stop_propagation)(&egui_event);
(runner.web_options.should_stop_propagation)(&egui_event); let should_prevent_default = (runner.web_options.should_prevent_default)(&egui_event);
let should_prevent_default =
(runner.web_options.should_prevent_default)(&egui_event);
runner.input.raw.events.push(egui_event); runner.input.raw.events.push(egui_event);
push_touches(runner, egui::TouchPhase::Move, &event); push_touches(runner, egui::TouchPhase::Move, &event);
@@ -737,17 +732,17 @@ fn install_touchmove(runner_ref: &WebRunner, target: &EventTarget) -> Result<(),
event.prevent_default(); event.prevent_default();
} }
} }
}
}) })
} }
fn install_touchend(runner_ref: &WebRunner, target: &EventTarget) -> Result<(), JsValue> { fn install_touchend(runner_ref: &WebRunner, target: &EventTarget) -> Result<(), JsValue> {
runner_ref.add_event_listener(target, "touchend", |event: web_sys::TouchEvent, runner| { runner_ref.add_event_listener(target, "touchend", |event: web_sys::TouchEvent, runner| {
if let Some((pos, touch)) = primary_touch_pos(runner, &event) { if let Some((pos, touch)) = primary_touch_pos(runner, &event)
if is_interested_in_pointer_event( && is_interested_in_pointer_event(
runner, runner,
egui::pos2(touch.client_x() as f32, touch.client_y() as f32), egui::pos2(touch.client_x() as f32, touch.client_y() as f32),
) { )
{
// First release mouse to click: // First release mouse to click:
let mut should_stop_propagation = true; let mut should_stop_propagation = true;
let mut should_prevent_default = true; let mut should_prevent_default = true;
@@ -757,8 +752,7 @@ fn install_touchend(runner_ref: &WebRunner, target: &EventTarget) -> Result<(),
pressed: false, pressed: false,
modifiers: runner.input.raw.modifiers, modifiers: runner.input.raw.modifiers,
}; };
should_stop_propagation &= should_stop_propagation &= (runner.web_options.should_stop_propagation)(&egui_event);
(runner.web_options.should_stop_propagation)(&egui_event);
should_prevent_default &= (runner.web_options.should_prevent_default)(&egui_event); should_prevent_default &= (runner.web_options.should_prevent_default)(&egui_event);
runner.input.raw.events.push(egui_event); runner.input.raw.events.push(egui_event);
// Then remove hover effect: // Then remove hover effect:
@@ -788,7 +782,6 @@ fn install_touchend(runner_ref: &WebRunner, target: &EventTarget) -> Result<(),
runner.text_agent.set_focus(true); runner.text_agent.set_focus(true);
} }
} }
}
}) })
} }

View File

@@ -145,8 +145,9 @@ fn canvas_content_rect(canvas: &web_sys::HtmlCanvasElement) -> egui::Rect {
); );
// We need to subtract padding and border: // We need to subtract padding and border:
if let Some(window) = web_sys::window() { if let Some(window) = web_sys::window()
if let Ok(Some(style)) = window.get_computed_style(canvas) { && let Ok(Some(style)) = window.get_computed_style(canvas)
{
let get_property = |name: &str| -> Option<f32> { let get_property = |name: &str| -> Option<f32> {
let property = style.get_property_value(name).ok()?; let property = style.get_property_value(name).ok()?;
property.trim_end_matches("px").parse::<f32>().ok() property.trim_end_matches("px").parse::<f32>().ok()
@@ -157,7 +158,6 @@ fn canvas_content_rect(canvas: &web_sys::HtmlCanvasElement) -> egui::Rect {
rect.max.x -= get_property("padding-right").unwrap_or_default(); rect.max.x -= get_property("padding-right").unwrap_or_default();
rect.max.y -= get_property("padding-bottom").unwrap_or_default(); rect.max.y -= get_property("padding-bottom").unwrap_or_default();
} }
}
rect rect
} }

View File

@@ -192,17 +192,13 @@ fn is_safari_and_webkit_gtk(gl: &web_sys::WebGlRenderingContext) -> bool {
.get_extension("WEBGL_debug_renderer_info") .get_extension("WEBGL_debug_renderer_info")
.unwrap() .unwrap()
.is_some() .is_some()
{ && let Ok(renderer) =
if let Ok(renderer) =
gl.get_parameter(web_sys::WebglDebugRendererInfo::UNMASKED_RENDERER_WEBGL) gl.get_parameter(web_sys::WebglDebugRendererInfo::UNMASKED_RENDERER_WEBGL)
&& let Some(renderer) = renderer.as_string()
&& renderer.contains("Apple")
{ {
if let Some(renderer) = renderer.as_string() { true
if renderer.contains("Apple") { } else {
return true;
}
}
}
}
false false
} }
}

View File

@@ -282,15 +282,13 @@ impl WebPainter for WebPainterWgpu {
let mut capture_buffer = None; let mut capture_buffer = None;
if capture { if capture && let Some(capture_state) = &mut self.screen_capture_state {
if let Some(capture_state) = &mut self.screen_capture_state {
capture_buffer = Some(capture_state.copy_textures( capture_buffer = Some(capture_state.copy_textures(
&render_state.device, &render_state.device,
&output_frame, &output_frame,
&mut encoder, &mut encoder,
)); ));
} }
}
Some((output_frame, capture_buffer)) Some((output_frame, capture_buffer))
}; };
@@ -301,8 +299,9 @@ impl WebPainter for WebPainterWgpu {
.submit(user_cmd_bufs.into_iter().chain([encoder.finish()])); .submit(user_cmd_bufs.into_iter().chain([encoder.finish()]));
if let Some((frame, capture_buffer)) = frame_and_capture_buffer { if let Some((frame, capture_buffer)) = frame_and_capture_buffer {
if let Some(capture_buffer) = capture_buffer { if let Some(capture_buffer) = capture_buffer
if let Some(capture_state) = &self.screen_capture_state { && let Some(capture_state) = &self.screen_capture_state
{
capture_state.read_screen_rgba( capture_state.read_screen_rgba(
self.ctx.clone(), self.ctx.clone(),
capture_buffer, capture_buffer,
@@ -311,7 +310,6 @@ impl WebPainter for WebPainterWgpu {
ViewportId::ROOT, ViewportId::ROOT,
); );
} }
}
frame.present(); frame.present();
} }

View File

@@ -255,9 +255,7 @@ impl<'a> PanelSizer<'a> {
let side = self.panel.side; let side = self.panel.side;
let size_range = self.panel.size_range; let size_range = self.panel.size_range;
if is_resizing && pointer.is_some() { if is_resizing && let Some(pointer) = pointer {
let pointer = pointer.unwrap();
match side { match side {
PanelSide::Vertical(side) => { PanelSide::Vertical(side) => {
self.size = (pointer.x - side.side_x(self.panel_rect)).abs(); self.size = (pointer.x - side.side_x(self.panel_rect)).abs();
@@ -811,9 +809,7 @@ impl Panel {
let resize_id = self.id.with("__resize"); let resize_id = self.id.with("__resize");
let resize_response = ui.ctx().read_response(resize_id); let resize_response = ui.ctx().read_response(resize_id);
if resize_response.is_some() { if let Some(resize_response) = resize_response {
let resize_response = resize_response.unwrap();
// NOTE(sharky98): The original code was initializing to // NOTE(sharky98): The original code was initializing to
// false first, but it doesn't seem necessary. // false first, but it doesn't seem necessary.
let is_resizing = resize_response.dragged(); let is_resizing = resize_response.dragged();

View File

@@ -631,8 +631,10 @@ impl InputState {
/// A positive Y-value indicates the content is being moved down, as when swiping down on a touch-screen or track-pad with natural scrolling. /// A positive Y-value indicates the content is being moved down, as when swiping down on a touch-screen or track-pad with natural scrolling.
#[inline(always)] #[inline(always)]
pub fn translation_delta(&self) -> Vec2 { pub fn translation_delta(&self) -> Vec2 {
self.multi_touch() self.multi_touch().map_or_else(
.map_or(self.smooth_scroll_delta(), |touch| touch.translation_delta) || self.smooth_scroll_delta(),
|touch| touch.translation_delta,
)
} }
/// True if there is an active scroll action that might scroll more when using [`Self::smooth_scroll_delta`]. /// True if there is an active scroll action that might scroll more when using [`Self::smooth_scroll_delta`].

View File

@@ -1325,7 +1325,7 @@ impl TableRow<'_, '_> {
*self.response = Some( *self.response = Some(
self.response self.response
.as_ref() .as_ref()
.map_or(response.clone(), |r| r.union(response.clone())), .map_or_else(|| response.clone(), |r| r.union(response.clone())),
); );
(used_rect, response) (used_rect, response)

View File

@@ -12,7 +12,6 @@ Ui testing library for egui, based on [kittest](https://github.com/rerun-io/kitt
use egui::accesskit::Toggled; use egui::accesskit::Toggled;
use egui_kittest::{Harness, kittest::{Queryable, NodeT}}; use egui_kittest::{Harness, kittest::{Queryable, NodeT}};
fn main() {
let mut checked = false; let mut checked = false;
let app = |ui: &mut egui::Ui| { let app = |ui: &mut egui::Ui| {
ui.checkbox(&mut checked, "Check me!"); ui.checkbox(&mut checked, "Check me!");
@@ -35,7 +34,6 @@ fn main() {
// You can even render the ui and do image snapshot tests // You can even render the ui and do image snapshot tests
#[cfg(all(feature = "wgpu", feature = "snapshot"))] #[cfg(all(feature = "wgpu", feature = "snapshot"))]
harness.snapshot("readme_example"); harness.snapshot("readme_example");
}
``` ```
## Configuration ## Configuration