View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0017933 | Scribus | Text Frames / Story Editor | public | 2026-08-22 02:54 | 2026-09-02 06:00 |
| Reporter | qirat | Assigned To | |||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | new | Resolution | open | ||
| Platform | Linux | OS | Fedora Workstation | OS Version | 44 |
| Product Version | 1.7.4.svn | ||||
| Summary | 0017933: Text selection across linked text-frames clears on Ctrl (forward-only issue) | ||||
| Description | In linked frames, the Shift+Arrow text-selection goes to the next frame selecting the text fine, but as soon as you press Ctrl (to do Ctrl+C/X, or zoom in/out), the selection clears. Double-clicking a paragraph selects the paragraph across text-frames, but meets the same issue. (Note it is not the "Ctrl+C" that clears the selection but the very first Ctrl itself after that) What is interesting is that this only works when going forward, to next frame. Going to backward, to the previous frame does not has this issue; selection stays, and you can copy, cut etc. | ||||
| Steps To Reproduce | - have two linked text-frames: A and B, filled with text (start zoomed out to see better) - enter frame A, near the bottom, and Shift+RightArrow to select text so the selection enters frame B - Press Ctrl (aiming for Ctrl+C/X) -- Selection clears. Try the same backwards: from frame B to A, things go fine. | ||||
| Additional Information | It is an old issue btw, just resurfaced while I tried to fix another one. | ||||
| Tags | #please_test | ||||
| Patch | No | ||||
| related to | 0017863 | new | Extending text selection over the frame boundaries only works with all keys but the down arrow one |
|
|
Here is the patch and a report on it. fix-ctrl-clears-crossframe-selection-v1.0.patch (1,001 bytes)
Index: scribus/pageitem_textframe.cpp
===================================================================
--- scribus/pageitem_textframe.cpp (revision 27773)
+++ scribus/pageitem_textframe.cpp (working copy)
@@ -4670,7 +4670,11 @@
}
//check if cursor need to jump to next linked frame
//but not for notes frames can`t be updated as may disappear during update
- if ((itemText.cursorPosition() > lastInFrame() + 1) && (lastInFrame() < (itemText.length() - 2)) && m_nextBox != nullptr)
+ // Only relevant when this key actually inserted/deleted text (doUpdate) -
+ // a bare modifier key (e.g. Ctrl, on its way to Ctrl+C) reaches this same
+ // default: case with an unchanged cursor position and no edit at all, and
+ // must not clear an existing cross-frame selection or move focus away.
+ if (doUpdate && (itemText.cursorPosition() > lastInFrame() + 1) && (lastInFrame() < (itemText.length() - 2)) && m_nextBox != nullptr)
{
view->deselectItems(true);
m_nextBox->update();
|
|
|
0010977 seems related. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2026-08-22 02:54 | qirat | New Issue | |
| 2026-08-22 07:15 | ale | Relationship added | related to 0017863 |
| 2026-08-22 14:44 | qirat | Note Added: 0054283 | |
| 2026-08-22 14:44 | qirat | File Added: fix-ctrl-clears-crossframe-selection-report.pdf | |
| 2026-08-22 14:44 | qirat | File Added: fix-ctrl-clears-crossframe-selection-v1.0.patch | |
| 2026-08-22 14:45 | qirat | Tag Attached: #please_test | |
| 2026-09-02 06:00 | qirat | Note Added: 0054399 |