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:
@@ -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
|
||||||
|
|||||||
@@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -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();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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`].
|
||||||
|
|||||||
@@ -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)
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user