fix: request redraw when editor needs to redraw

chore: update libcosmic

fix: redraw when deleting text where cursor doesn't move

editor only redraws if the action causes the cursor to move.
ctrl+a+backspace or presseing delete doesn't move the cursor.
This commit is contained in:
Hojjat 2026-08-04 14:00:50 -06:00
parent 4ac0da3af9
commit aad6c21ab4
2 changed files with 24 additions and 18 deletions

36
Cargo.lock generated
View file

@ -815,7 +815,7 @@ dependencies = [
[[package]] [[package]]
name = "build_helpers" name = "build_helpers"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"cfg_aliases", "cfg_aliases",
] ]
@ -1350,7 +1350,7 @@ dependencies = [
[[package]] [[package]]
name = "cosmic-config" name = "cosmic-config"
version = "1.0.0" version = "1.0.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"atomicwrites", "atomicwrites",
"cosmic-config-derive", "cosmic-config-derive",
@ -1371,7 +1371,7 @@ dependencies = [
[[package]] [[package]]
name = "cosmic-config-derive" name = "cosmic-config-derive"
version = "1.0.0" version = "1.0.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"quote", "quote",
"syn 2.0.119", "syn 2.0.119",
@ -1546,7 +1546,7 @@ dependencies = [
[[package]] [[package]]
name = "cosmic-theme" name = "cosmic-theme"
version = "1.0.0" version = "1.0.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"almost", "almost",
"configparser", "configparser",
@ -3174,7 +3174,7 @@ dependencies = [
[[package]] [[package]]
name = "iced" name = "iced"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"build_helpers", "build_helpers",
"dnd", "dnd",
@ -3196,7 +3196,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_accessibility" name = "iced_accessibility"
version = "0.1.0" version = "0.1.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"accesskit", "accesskit",
"accesskit_winit", "accesskit_winit",
@ -3205,7 +3205,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_core" name = "iced_core"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"bitflags 2.13.1", "bitflags 2.13.1",
"build_helpers", "build_helpers",
@ -3231,7 +3231,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_debug" name = "iced_debug"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"iced_core", "iced_core",
"iced_futures", "iced_futures",
@ -3241,7 +3241,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_futures" name = "iced_futures"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"futures", "futures",
"iced_core", "iced_core",
@ -3255,7 +3255,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_graphics" name = "iced_graphics"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"bitflags 2.13.1", "bitflags 2.13.1",
"bytemuck", "bytemuck",
@ -3276,7 +3276,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_program" name = "iced_program"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"iced_graphics", "iced_graphics",
"iced_runtime", "iced_runtime",
@ -3285,7 +3285,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_renderer" name = "iced_renderer"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"iced_graphics", "iced_graphics",
"iced_tiny_skia", "iced_tiny_skia",
@ -3297,7 +3297,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_runtime" name = "iced_runtime"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"build_helpers", "build_helpers",
"bytes", "bytes",
@ -3313,7 +3313,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_tiny_skia" name = "iced_tiny_skia"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"bytemuck", "bytemuck",
"cosmic-text", "cosmic-text",
@ -3330,7 +3330,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_wgpu" name = "iced_wgpu"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"as-raw-xcb-connection", "as-raw-xcb-connection",
"bitflags 2.13.1", "bitflags 2.13.1",
@ -3362,7 +3362,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_widget" name = "iced_widget"
version = "0.14.2" version = "0.14.2"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"build_helpers", "build_helpers",
"cosmic-client-toolkit", "cosmic-client-toolkit",
@ -3381,7 +3381,7 @@ dependencies = [
[[package]] [[package]]
name = "iced_winit" name = "iced_winit"
version = "0.14.0" version = "0.14.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"build_helpers", "build_helpers",
"cosmic-client-toolkit", "cosmic-client-toolkit",
@ -4461,7 +4461,7 @@ checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
[[package]] [[package]]
name = "libcosmic" name = "libcosmic"
version = "1.0.0" version = "1.0.0"
source = "git+https://github.com/pop-os/libcosmic.git#0ca1b784c931c946517379795ce87328c6a902b8" source = "git+https://github.com/pop-os/libcosmic.git#633e6ab83fa019a75f7c7c94c55d04dc5650bd7b"
dependencies = [ dependencies = [
"apply", "apply",
"ashpd 0.12.3", "ashpd 0.12.3",

View file

@ -1089,11 +1089,13 @@ where
Named::Backspace => { Named::Backspace => {
delete_modifiers(&mut editor, Motion::LeftWord, *modifiers); delete_modifiers(&mut editor, Motion::LeftWord, *modifiers);
editor.action(Action::Backspace); editor.action(Action::Backspace);
editor.set_redraw(true);
shell.capture_event(); shell.capture_event();
} }
Named::Delete => { Named::Delete => {
delete_modifiers(&mut editor, Motion::RightWord, *modifiers); delete_modifiers(&mut editor, Motion::RightWord, *modifiers);
editor.action(Action::Delete); editor.action(Action::Delete);
editor.set_redraw(true);
shell.capture_event(); shell.capture_event();
} }
Named::Tab => { Named::Tab => {
@ -1412,6 +1414,10 @@ where
shell.publish(on_changed.clone()); shell.publish(on_changed.clone());
} }
} }
if editor.redraw() {
shell.request_redraw();
}
} }
} }