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

--- Comment #2 from Neil Roberts <[email protected]> ---
Thanks for checking that. Yeah, I can’t reproduce the bug on my Mac either, so
it must be a GTK3 problem.

Version: 26.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: a9fe7eaa6501e41a01158ae412d4051c6441595b
CPU threads: 4; OS: macOS 15.6.1; UI render: Skia/Metal; VCL: osx
Locale: fr-FR (fr_FR.UTF-8); UI: en-US
Calc: threaded

On the Mac the focus is lost before calling the destructor so everything works
correctly without ending up invoking a non-existant pure-virtual override. The
focus is lost because of this line in OTableController::suspend

    if ( getView() )
        static_cast<OTableDesignView*>(getView())->GrabFocus();

There’s no comment about what that is trying to achieve, but we can get some
information from the commit message. It was added in
568af9ac86c8eee3531ff9cb718aeba240f274be. That has a whole bunch of changes
bundled together but one of them is:

 r263362 : #i93383# grabFocus in suspend to get allmodified cells

So I think that line was explicitly added to try and get the controls to flush
their pending changes.

So I guess one way to fix it could be to figure out why that call doesn’t make
the control lose focus on GTK3. Or another way could be to replace that with a
more explicit function to make the controls flush their state.

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

Reply via email to