linebender / druid

A data-first Rust-native UI design toolkit.
https://linebender.org/druid/
Apache License 2.0
9.52k stars 568 forks source link

Add set_mouse_pass_through and is_foreground_window #2402

Open AlexKnauth opened 4 months ago

AlexKnauth commented 4 months ago
jaredoconnell commented 4 months ago

What is the intended use of these features? These types of features are not the easiest to test.

AlexKnauth commented 4 months ago

My intended use is for LiveSplit One, which is a speedrun timer meant to be used while playing a game. If a user is playing the game using their mouse, they will want their mouse events to pass through the timer window (which will be semi-transparent). They will not want to be able to accidentally click on the timer and have that pull focus away from their game.

(Edit: Similar to the "Ignore Mouse While Running and Not In Focus" setting in the Windows version of LiveSplit)

AlexKnauth commented 4 months ago

For testing these features, would it help more to add a new example to druid/examples, or to modify an existing example like input_region.rs?

jacksongoode commented 2 months ago

@linebender @cmyr Would it make sense to set someone as a maintainer of this project so new fixes and PR's can come in?

jaredoconnell commented 2 months ago

@linebender @cmyr Would it make sense to set someone as a maintainer of this project so new fixes and PR's can come in?

I believe the current intention is to archive the project once Xilem is a reasonable replacement of Druid. At that point, if someone would like to fork the project, that's the only path forward.