diff options
author | Patrick Luby <guibmacdev@gmail.com> | 2024-11-05 19:51:55 -0500 |
---|---|---|
committer | Michael Weghorn <m.weghorn@posteo.de> | 2024-11-11 13:26:32 +0100 |
commit | a684bf03e622f64729c885053969c3837dda7efd (patch) | |
tree | 3db446a78498aeff4b0a68c64a9f7c120d91baa5 /vcl/inc | |
parent | f761d098e9a0960554aa4fc02f84a711b50a1cff (diff) |
tdf#163764 Force pending timers to run after marked text changes
During native dictation, waiting for the next native event is
blocked while dictation runs in a loop within a native callback.
Because of this, LibreOffice's painting timers won't fire until
dictation is cancelled or the user pauses speaking. So, force
any pending timers to fire after the marked text changes.
Also, remove the fix for OpenOffice bug 106901 as causes any
key down events to cancel dictation and removing the fix does
not appear to cause the original crashing bug to reoccur.
Note: inserting a character from the system Character Viewer
window causes dictation to stop responding and the only way
I have found to restart dictation is by toggling dictation off
and then back on again. This same behavior occurs in Apple's
TextEdit application so this appears to be a macOS bug.
Change-Id: Iad2b54870ff1a315f2f71d72bef24af3cea808e6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176100
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
(cherry picked from commit 62baf23796132d6c0e17ae1ff37c3b9ee0556cf0)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176366
Diffstat (limited to 'vcl/inc')
-rw-r--r-- | vcl/inc/svdata.hxx | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/vcl/inc/svdata.hxx b/vcl/inc/svdata.hxx index 3619de00d25b..cf1e707f0e26 100644 --- a/vcl/inc/svdata.hxx +++ b/vcl/inc/svdata.hxx @@ -275,6 +275,7 @@ struct ImplSVWinData bool mbNoDeactivate = false; // true: do not execute Deactivate bool mbNoSaveFocus = false; // true: menus must not save/restore focus bool mbIsLiveResize = false; // true: skip waiting for events and low priority timers + bool mbIsWaitingForNativeEvent = false; // true: code is executing via a native callback while waiting for the next native event }; typedef std::vector< std::pair< OUString, FieldUnit > > FieldUnitStringList; |