diff --git a/src/lib.rs b/src/lib.rs index f74b71da8801f7da17865334a8b91e20bb3ab720..60888a0afbf52fd86611667e3b9dd3234edd2737 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -297,6 +297,19 @@ impl Plugin for CosmicEditPlugin { fn build(&self, app: &mut App) { let font_system = create_cosmic_font_system(self.font_config.clone()); + let update_texts = (update_buffer_text, update_placeholder_text); + let main_unordered = ( + init_history, + input_kb, + undo_redo, + blink_cursor, + freeze_cursor_blink, + hide_inactive_or_readonly_cursor, + clear_inactive_selection, + render::update_handle_ui, + render::update_handle_sprite, + ); + app.add_systems( First, ( @@ -311,33 +324,26 @@ impl Plugin for CosmicEditPlugin { render::cosmic_sprite_to_canvas, ), ) - .add_systems(PreUpdate, (update_buffer_text, update_placeholder_text)) .add_systems( - Update, + PreUpdate, ( - ( - init_history, - input_kb, - undo_redo, - blink_cursor, - freeze_cursor_blink, - hide_inactive_or_readonly_cursor, - clear_inactive_selection, - render::update_handle_ui, - render::update_handle_sprite, - ) - .before(hide_password_text), + update_texts, + main_unordered, hide_password_text, - input_mouse.after(hide_password_text), - ), + input_mouse, + restore_password_text, + ) + .chain(), ) .add_systems( PostUpdate, ( - restore_password_text, + hide_password_text, cosmic_edit_redraw_buffer .after(TransformSystem::TransformPropagate) + .after(hide_password_text) .before(restore_password_text), + restore_password_text, ), ) .init_resource::<Focus>()