1
0
mirror of https://github.com/emilk/egui.git synced 2026-08-30 05:10:03 -04:00

Simplify egui_winit::State (#3678)

By storing a clone of the egui context in it, we can be sure to always
use the correct `pixels_per_point`
This commit is contained in:
Emil Ernerfeldt
2023-12-05 11:45:25 +01:00
committed by GitHub
parent 80d7143b15
commit a4e389431d
6 changed files with 70 additions and 84 deletions

View File

@@ -517,7 +517,6 @@ impl GlowWinitRunning {
egui_winit::update_viewport_info(&mut viewport.info, &egui_ctx, window);
let egui_winit = viewport.egui_winit.as_mut().unwrap();
egui_winit.update_pixels_per_point(&egui_ctx, window);
let mut raw_input = egui_winit.take_egui_input(window);
let viewport_ui_cb = viewport.viewport_ui_cb.clone();
@@ -600,7 +599,7 @@ impl GlowWinitRunning {
let egui_winit = viewport.egui_winit.as_mut().unwrap();
integration.post_update();
egui_winit.handle_platform_output(window, &integration.egui_ctx, platform_output);
egui_winit.handle_platform_output(window, platform_output);
let clipped_primitives = integration.egui_ctx.tessellate(shapes, pixels_per_point);
@@ -1066,6 +1065,7 @@ impl GlutinWindowContext {
viewport.egui_winit.get_or_insert_with(|| {
egui_winit::State::new(
self.egui_ctx.clone(),
viewport_id,
event_loop,
Some(window.scale_factor() as f32),
@@ -1318,7 +1318,6 @@ fn render_immediate_viewport(
};
egui_winit::update_viewport_info(&mut viewport.info, egui_ctx, window);
egui_winit.update_pixels_per_point(egui_ctx, window);
let mut raw_input = egui_winit.take_egui_input(window);
raw_input.viewports = glutin
.viewports
@@ -1414,7 +1413,7 @@ fn render_immediate_viewport(
}
}
egui_winit.handle_platform_output(window, egui_ctx, platform_output);
egui_winit.handle_platform_output(window, platform_output);
glutin.handle_viewport_output(egui_ctx, viewport_output);
}