[Libreoffice-commits] core.git: svx/source

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Sun Sep 26 16:11:44 UTC 2021


 svx/source/dialog/frmsel.cxx |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit c92a29fd6ef341a1657f90759d20e4f052b45843
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Sun Sep 26 15:50:05 2021 +0100
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Sun Sep 26 18:11:10 2021 +0200

    tdf#144729 create FrameSelectorImpl before setting size request
    
    gtk wan't to update some a11y info when we set the new size request but
    we haven't created the requirements that a11y needs yet.
    
    Just move that creation to before the set_size_request
    
     #0  std::__cxx1998::vector<svx::FrameBorder*, std::allocator<svx::FrameBorder*> >::size() const (this=0x720) at /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_vector.h:919
     #1  0x00007fbd40f3fcc2 in svx::FrameSelector::GetEnabledBorderCount() const (this=0x91bafd0) at svx/source/dialog/frmsel.cxx:858
     #2  0x00007fbd40da76b8 in svx::a11y::AccFrameSelector::getAccessibleChildCount() (this=0x921b190) at svx/source/accessibility/AccessibleFrameSelector.cxx:63
     #3  0x00007fbd3184930e in AtkListener::updateChildList(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleContext> const&) (this=0x91e6200, pContext=
         uno::Reference to (svx::a11y::AccFrameSelector *) 0x921b1f0) at vcl/unx/gtk3/a11y/atklistener.cxx:149
     #4  0x00007fbd31849096 in AtkListener::AtkListener(AtkObjectWrapper*) (this=0x91e6200, pWrapper=0x91e60a0) at vcl/unx/gtk3/a11y/atklistener.cxx:56
     #5  0x00007fbd3186e9ab in atk_object_wrapper_new(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessible> const&, AtkObject*, AtkObject*)
         (rxAccessible=uno::Reference to (svx::a11y::AccFrameSelector *) 0x921b230, parent=0x9299a40, orig=0x90bedd0) at vcl/unx/gtk3/a11y/atkwrapper.cxx:875
     #6  0x00007fbd318b3ded in (anonymous namespace)::GtkInstanceDrawingArea::GetAtkObject(_AtkObject*) (this=0x91e5060, pDefaultAccessible=0x90bedd0) at vcl/unx/gtk3/gtkinst.cxx:16918
     #7  0x00007fbd318b3d21 in (anonymous namespace)::drawing_area_get_accessibity(_GtkWidget*) (pWidget=0x91206f0) at vcl/unx/gtk3/gtkinst.cxx:21555
     #8  0x00007fbd30fb0bc2 in  () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
     #9  0x00007fbd3764b65f in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
     #10 0x00007fbd3765d99b in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
     #11 0x00007fbd37663c6f in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
     #12 0x00007fbd376641df in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
     #13 0x00007fbd3764fcd4 in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
     #14 0x00007fbd3764f50e in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
     #15 0x00007fbd37651d4b in g_object_thaw_notify () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
     #16 0x00007fbd318b86d5 in (anonymous namespace)::GtkInstanceWidget::set_size_request(int, int) (this=0x91e5060, nWidth=137, nHeight=146) at vcl/unx/gtk3/gtkinst.cxx:3475
     #17 0x00007fbd40f3fa23 in svx::FrameSelector::SetDrawingArea(weld::DrawingArea*) (this=0x91bafd0, pDrawingArea=0x91e5328) at svx/source/dialog/frmsel.cxx:833
     #18 0x00007fbd3d16d46a in weld::CustomWeld::CustomWeld(weld::Builder&, rtl::OString const&, weld::CustomWidgetController&) (this=0x90e9fd0, rBuilder=..., rDrawingId="framesel", rWidgetController=...)
         at vcl/source/app/customweld.cxx:28
     #19 0x00007fbcf08f0c4e in SvxBorderTabPage::SvxBorderTabPage(weld::Container*, weld::DialogController*, SfxItemSet const&) (this=0x91baeb0, pPage=0x90fc550, pController=0x7a4d4b0, rCoreAttrs=
         SfxItemSet of pool 0x5aea070 with parent 0x5b25658 and Which ranges: [(1, 45), (63, 132), (153, 153), (1014, 1033), (10023, 10023), (10050, 10055), (10057, 10058), (10065, 10065), (10179, 10183), (10451, 10451), (10457, 10457), (10467, 10467), (10591, 10591), (10855, 10855), (11142, 11142), (12065, 12065), (21123, 21123), (21307, 21307), (22401, 22401)] = {...}) at cui/source/tabpages/border.cxx:291
     #20 0x00007fbcf08fc77f in std::make_unique<SvxBorderTabPage, weld::Container*&, weld::DialogController*&, SfxItemSet const&>(weld::Container*&, weld::DialogController*&, SfxItemSet const&)
         (__args=@0x7ffdac0324e0: 0x90fc550, __args=@0x7ffdac0324d8: 0x7a4d4b0, __args=SfxItemSet of pool 0x5aea070 with parent 0x5b25658 and Which ranges: [(1, 45), (63, 132), (153, 153), (1014, 1033), (10023, 10023), (10050, 10055), (10057, 10058), (10065, 10065), (10179, 10183), (10451, 10451), (10457, 10457), (10467, 10467), (10591, 10591), (10855, 10855), (11142, 11142), (12065, 12065), (21123, 21123), (21307, 21307), (22401, 22401)] = {...}) at /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/unique_ptr.h:962
     #21 0x00007fbcf08f514f in SvxBorderTabPage::Create(weld::Container*, weld::DialogController*, SfxItemSet const*) (pPage=0x90fc550, pController=0x7a4d4b0, rAttrSet=0x7dca0e0)
         at cui/source/tabpages/border.cxx:592
    
    Change-Id: I7325970bf0137602007e453e8b7fc43f1e6f36c5
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122631
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/svx/source/dialog/frmsel.cxx b/svx/source/dialog/frmsel.cxx
index 435cd489d482..7871ae95249a 100644
--- a/svx/source/dialog/frmsel.cxx
+++ b/svx/source/dialog/frmsel.cxx
@@ -829,9 +829,9 @@ FrameSelector::FrameSelector()
 void FrameSelector::SetDrawingArea(weld::DrawingArea* pDrawingArea)
 {
     CustomWidgetController::SetDrawingArea(pDrawingArea);
+    mxImpl.reset( new FrameSelectorImpl( *this ) );
     Size aPrefSize = pDrawingArea->get_ref_device().LogicToPixel(Size(61, 65), MapMode(MapUnit::MapAppFont));
     pDrawingArea->set_size_request(aPrefSize.Width(), aPrefSize.Height());
-    mxImpl.reset( new FrameSelectorImpl( *this ) );
     EnableRTL( false ); // #107808# don't mirror the mouse handling
 }
 


More information about the Libreoffice-commits mailing list