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

Add OutputCommand::SetPointerPosition to set mouse position (#5776)

<!--
Please read the "Making a PR" section of
[`CONTRIBUTING.md`](https://github.com/emilk/egui/blob/master/CONTRIBUTING.md)
before opening a Pull Request!

* Keep your PR:s small and focused.
* The PR title is what ends up in the changelog, so make it descriptive!
* If applicable, add a screenshot or gif.
* If it is a non-trivial addition, consider adding a demo for it to
`egui_demo_lib`, or a new example.
* Do NOT open PR:s from your `master` branch, as that makes it hard for
maintainers to test and add commits to your PR.
* Remember to run `cargo fmt` and `cargo clippy`.
* Open the PR as a draft until you have self-reviewed it and run
`./scripts/check.sh`.
* When you have addressed a PR comment, mark it as resolved.

Please be patient! I will review your PR, but my time is limited!
-->

This is not supported on the web and not yet on Wayland.

~~I also had to update `ring` and add an exception for `paste` being
unmaintained.~~ Has since been updated on master.

* [x] I have followed the instructions in the PR template
This commit is contained in:
Sven Niederberger
2025-03-20 10:51:02 +01:00
committed by GitHub
parent 267485976b
commit b0bbca4e69
5 changed files with 22 additions and 0 deletions

View File

@@ -16,6 +16,14 @@ impl crate::Demo for CursorTest {
impl crate::View for CursorTest {
fn ui(&mut self, ui: &mut egui::Ui) {
if ui
.button("Center pointer in window")
.on_hover_text("The platform may not support this.")
.clicked()
{
let position = ui.ctx().available_rect().center();
ui.ctx().set_pointer_position(position);
}
ui.vertical_centered_justified(|ui| {
ui.heading("Hover to switch cursor icon:");
for &cursor_icon in &egui::CursorIcon::ALL {