Closes #41533 Both of the issues in the release notes that are fixed in this PR, were caused by incorrect usage of the `window.use_state` API. The first issue was caused by calling `window.use_state` in a render helper, resulting in the element ID used to share state being the same across different pages, resulting in the state being re-used when it should have been re-created. The fix for this was to move the `window.state` (and rendering logic) into a `impl RenderOnce` component, so that the IDs are resolved during the render, avoiding the state conflicts. The second issue is caused by using a `move` closure in the `window.use_state` call, resulting in stale closure values when the window state is re-used. Release Notes: - settings_ui: Fixed an issue where some dropdown menus would show options from a different dropdown when clicked - settings_ui: Fixed an issue where attempting to change a setting in a dropdown back to it's original value after changing it would do nothing
12 lines
251 B
Rust
12 lines
251 B
Rust
mod dropdown;
|
|
mod font_picker;
|
|
mod icon_theme_picker;
|
|
mod input_field;
|
|
mod theme_picker;
|
|
|
|
pub use dropdown::*;
|
|
pub use font_picker::font_picker;
|
|
pub use icon_theme_picker::icon_theme_picker;
|
|
pub use input_field::*;
|
|
pub use theme_picker::theme_picker;
|