https://bugs.documentfoundation.org/show_bug.cgi?id=173854

            Bug ID: 173854
           Summary: WRITER: Cursor movement latency causes out-of-order
                    text insertion in large documents under Qt6 VCL plugin
                    (SAL_USE_VCLPLUGIN=qt6) on KDE Plasma (X11 and
                    Wayland).
           Product: LibreOffice
           Version: 26.2.5.2 release
          Hardware: All
                OS: Linux (All)
            Status: UNCONFIRMED
          Severity: normal
          Priority: medium
         Component: Writer
          Assignee: [email protected]
          Reporter: [email protected]

Description:
When keyboard repetition or rapid cursor moves occur in large documents, the Qt
event queue accumulates input events faster than Writer's layout recalculation
thread can paint the cursor update. Because the layout engine blocks the main
UI thread during recalculation, queued typing events get processed against
stale cursor coordinates.

Steps to Reproduce:
1.Open a large document (>1 MB or multi-hundred-page .odt/.docx) in LibreOffice
Writer using the default Qt6 VCL backend (vclplug_qt6).
2. Move the text cursor using arrow keys (e.g., press or hold Left Arrow).
3. Immediately type several characters upon stopping the navigation.

Actual Results:
The cursor position update lags behind input generation due to layout
recalculation blocking the Qt UI event loop. Letters typed immediately
following cursor movement are inserted at the old or intermediate cursor
coordinate before the canvas repaints to the final cursor destination.

Expected Results:
Input events should be processed strictly in sequence relative to layout
updates, or layout repaints should be fast/asynchronous enough that characters
are never inserted at a pre-navigation cursor position.


Reproducible: Always


User Profile Reset: Yes

Additional Info:
Version: 25.2.5.2 (X86_64) / LibreOffice Community
Build ID: 520(Build:2)
CPU threads: 12; OS: Linux 6.4; UI render: default; VCL: kf6 (cairo+xcb)
Locale: de-DE (de_DE.UTF-8); UI: en-US
Calc: threaded

Technical Details / Backend Analysis (by Gemini):

    Reproducible across both X11 and Wayland display protocols, indicating the
issue is independent of the display server compositor.

    Points to an event-processing bottleneck in vclplug_qt6 where incoming
QKeyEvent processing is queued behind synchronous Writer (sw) layout/cursor
recalculations on the main thread.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to