mirror of
https://github.com/emilk/egui.git
synced 2026-06-28 07:23:13 -04:00
@@ -309,16 +309,6 @@ impl EpiIntegration {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn handle_platform_output(
|
||||
&mut self,
|
||||
window: &winit::window::Window,
|
||||
viewport_id: ViewportId,
|
||||
platform_output: egui::PlatformOutput,
|
||||
egui_winit: &mut egui_winit::State,
|
||||
) {
|
||||
egui_winit.handle_platform_output(window, viewport_id, &self.egui_ctx, platform_output);
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Persistence stuff:
|
||||
|
||||
|
||||
@@ -506,7 +506,7 @@ impl GlowWinitRunning {
|
||||
let window = viewport.window.as_ref().unwrap();
|
||||
|
||||
let egui_winit = viewport.egui_winit.as_mut().unwrap();
|
||||
let mut raw_input = egui_winit.take_egui_input(window, viewport.ids);
|
||||
let mut raw_input = egui_winit.take_egui_input(window);
|
||||
let viewport_ui_cb = viewport.viewport_ui_cb.clone();
|
||||
|
||||
self.integration.pre_update();
|
||||
@@ -562,7 +562,7 @@ impl GlowWinitRunning {
|
||||
let egui_winit = viewport.egui_winit.as_mut().unwrap();
|
||||
|
||||
integration.post_update();
|
||||
integration.handle_platform_output(window, viewport_id, platform_output, egui_winit);
|
||||
egui_winit.handle_platform_output(window, &integration.egui_ctx, platform_output);
|
||||
|
||||
let clipped_primitives = integration.egui_ctx.tessellate(shapes, pixels_per_point);
|
||||
|
||||
@@ -1018,6 +1018,7 @@ impl GlutinWindowContext {
|
||||
|
||||
viewport.egui_winit.get_or_insert_with(|| {
|
||||
egui_winit::State::new(
|
||||
viewport_id,
|
||||
event_loop,
|
||||
Some(window.scale_factor() as f32),
|
||||
self.max_texture_side,
|
||||
@@ -1276,7 +1277,7 @@ fn render_immediate_viewport(
|
||||
return;
|
||||
};
|
||||
|
||||
let mut raw_input = winit_state.take_egui_input(window, ids);
|
||||
let mut raw_input = winit_state.take_egui_input(window);
|
||||
raw_input.viewports = glutin
|
||||
.viewports
|
||||
.iter()
|
||||
@@ -1360,7 +1361,7 @@ fn render_immediate_viewport(
|
||||
}
|
||||
}
|
||||
|
||||
winit_state.handle_platform_output(window, ids.this, egui_ctx, platform_output);
|
||||
winit_state.handle_platform_output(window, egui_ctx, platform_output);
|
||||
|
||||
glutin.handle_viewport_output(viewport_output);
|
||||
}
|
||||
|
||||
@@ -196,6 +196,7 @@ impl WgpuWinitApp {
|
||||
}
|
||||
|
||||
let mut egui_winit = egui_winit::State::new(
|
||||
ViewportId::ROOT,
|
||||
event_loop,
|
||||
Some(window.scale_factor() as f32),
|
||||
painter.max_texture_side(),
|
||||
@@ -504,7 +505,6 @@ impl WgpuWinitRunning {
|
||||
viewport.update_viewport_info();
|
||||
|
||||
let Viewport {
|
||||
ids,
|
||||
viewport_ui_cb,
|
||||
window,
|
||||
egui_winit,
|
||||
@@ -525,10 +525,7 @@ impl WgpuWinitRunning {
|
||||
}
|
||||
}
|
||||
|
||||
let mut raw_input = egui_winit.as_mut().unwrap().take_egui_input(
|
||||
window,
|
||||
ViewportIdPair::from_self_and_parent(viewport_id, ids.parent),
|
||||
);
|
||||
let mut raw_input = egui_winit.as_mut().unwrap().take_egui_input(window);
|
||||
|
||||
integration.pre_update();
|
||||
|
||||
@@ -581,7 +578,7 @@ impl WgpuWinitRunning {
|
||||
viewport_output,
|
||||
} = full_output;
|
||||
|
||||
integration.handle_platform_output(window, viewport_id, platform_output, egui_winit);
|
||||
egui_winit.handle_platform_output(window, &integration.egui_ctx, platform_output);
|
||||
|
||||
{
|
||||
let clipped_primitives = integration.egui_ctx.tessellate(shapes, pixels_per_point);
|
||||
@@ -778,6 +775,7 @@ impl Viewport {
|
||||
}
|
||||
|
||||
self.egui_winit = Some(egui_winit::State::new(
|
||||
viewport_id,
|
||||
event_loop,
|
||||
Some(window.scale_factor() as f32),
|
||||
painter.max_texture_side(),
|
||||
@@ -866,7 +864,7 @@ fn render_immediate_viewport(
|
||||
return;
|
||||
};
|
||||
|
||||
let mut input = winit_state.take_egui_input(window, ids);
|
||||
let mut input = winit_state.take_egui_input(window);
|
||||
input.viewports = viewports
|
||||
.iter()
|
||||
.map(|(id, viewport)| (*id, viewport.info.clone()))
|
||||
@@ -926,7 +924,7 @@ fn render_immediate_viewport(
|
||||
false,
|
||||
);
|
||||
|
||||
winit_state.handle_platform_output(window, ids.this, egui_ctx, platform_output);
|
||||
winit_state.handle_platform_output(window, egui_ctx, platform_output);
|
||||
|
||||
handle_viewport_output(viewport_output, viewports, *focused_viewport);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user