Depends on
- [x] https://github.com/pop-os/iced/pull/377
- [x] https://github.com/pop-os/libcosmic/pull/1382
- [x] https://github.com/pop-os/libcosmic/pull/1387
- [x] https://github.com/pop-os/cosmic-files/pull/1815
This pulls the changes in Iced and libcosmic that removes "redraw on any
message", which means moving the cursor doesn't automatically call a
redraw, widgets need to ask for it. I have found all places that
previously was working normally because we were redrawing almost
unconditionally. But it is possible that a custom widget somewhere still
isn't asking for a redraw explicitly when its state changes. So, for QA
I'd keep an eye on that.
For example I found that moving the cursor to middle of a word and
pressing delete doesn't redraw, because we only redraw if the cursor
changes position. Or pressing ctrl+a and then backspace doesn't redraw
for the same reason. Or double-click to select a text wasn't drawing the
selection. I have fixed those, but just examples for the QA team to
check.
Demo:
https://github.com/user-attachments/assets/5e5940a8-fd89-498a-8670-85d540fcaa72
___
- [x] I have disclosed use of any AI generated code in my commit
messages.
- If you are using an LLM, and do not fully understand the changes it is
making to the code base, do not create a PR.
- In our experience, AI generated code often results in overly complex
code that lacks enough context for a proper fix or feature inclusion.
This results in considerably longer code reviews. Due to this, AI
authored or partially authored PRs may be closed without comment.
- [x] I understand these changes in full and will be able to respond to
review comments.
- [x] My change is accurately described in the commit message.
- [x] My contribution is tested and working as described.
- [x] I have read the [Developer Certificate of
Origin](https://developercertificate.org/) and certify my contribution
under its conditions.
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.
Key the local libcosmic fork as `cosmic` with `package =
"libcosmic-yoda"` rather than keying it by package name, so every repo
in the local stack declares it the same way. The extern name stays
`cosmic` either way, so no source change is needed; the feature strings
move with the key.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Mise à jour des path= absolus (window_clipboard, dnd, mime, cosmic-text)
après consolidation des forks cosmic-* sous ~/Projets/COSMIC/.
Leyoda 2026 – GPLv3
Propagates the [patch] blocks added in cosmic-yoterm v5 to keep the
whole yoda app family on a single Wayland-only stack. Without these,
iced_winit fails to select a window_clipboard version because our
fork exposes a `wayland` feature that upstream doesn't.
- window_clipboard → /home/lionel/Devels/window_clipboard (x11 gated
behind opt-in feature)
- cosmic-text → /home/lionel/Devels/cosmic-text (EAW terminal_cells +
upstream PR#503 applied)
Activates the [patch.'https://github.com/pop-os/libcosmic'] override
pointing at ../libcosmic, enabling local development against a
patched libcosmic checkout (e.g. to pick up
WindowControlsPosition / macOS-style window controls).
This branch is intentionally dev-local: do NOT merge upstream.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* Support CJK input method
* Fix the input method window occasionally jumps around
Use the previous caret(text cursor) position to place the input method
window when the position is not available
* refactor: Omit calling request_input_method() if doesn't focus
- iced UserInterface.update() starts with InputMethod::Disabled state,
and merges any input_method_request() which is InputMethod::Enabled in
widgets tree traversal.
- We don't enable the input method feature if the widget doesn't have
focus, we can safely omit request_input_method() call itself.