include/vcl/vcllayout.hxx    |    2 --
 vcl/inc/sallayout.hxx        |    1 -
 vcl/source/gdi/sallayout.cxx |   11 -----------
 vcl/source/outdev/font.cxx   |    1 -
 4 files changed, 15 deletions(-)

New commits:
commit 1ff0a84e4a6fa0139b553b74f4e7d69b15cb9a38
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Mon Aug 19 14:12:04 2024 +0100
Commit:     Caolán McNamara <caolan.mcnam...@collabora.com>
CommitDate: Mon Aug 19 16:23:10 2024 +0200

    SalLayout::InitFont doesn't do anything
    
    there is a MultiSalLayout::InitFont that overrides it, but only forwards
    InitFont to the first child sub SalLayout, which itself then doesn't do
    anything.
    
    This is possibly the case since:
    
    commit 6c436ba09cb35235ce6f4065cf74c9a6ff14a4bd
    Date:   Thu Dec 1 03:33:30 2016 +0200
    
        Kill old Windows layout engines
    
    Change-Id: Ic0d347843257d13ee6d6f695488bd053f5a931fe
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172040
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>

diff --git a/include/vcl/vcllayout.hxx b/include/vcl/vcllayout.hxx
index 9c84d7453a3c..aa80e815a843 100644
--- a/include/vcl/vcllayout.hxx
+++ b/include/vcl/vcllayout.hxx
@@ -46,7 +46,6 @@ class GlyphItem;
 // For instance, I *think* the important virtual functions in the
 // layout engines are called in this order:
 
-// * InitFont()
 // * LayoutText()
 // * AdjustLayout(), any number of times (but presumably
 // usually not at all or just once)
@@ -79,7 +78,6 @@ public:
 
     virtual bool    LayoutText( vcl::text::ImplLayoutArgs&, const 
SalLayoutGlyphsImpl* ) = 0;  // first step of layouting
     virtual void    AdjustLayout( vcl::text::ImplLayoutArgs& );    // 
adjusting after fallback etc.
-    virtual void    InitFont() const {}
     virtual void    DrawText( SalGraphics& ) const = 0;
 
     Degree10        GetOrientation() const                  { return 
mnOrientation; }
diff --git a/vcl/inc/sallayout.hxx b/vcl/inc/sallayout.hxx
index fdb5151bc2a5..6b299322441e 100644
--- a/vcl/inc/sallayout.hxx
+++ b/vcl/inc/sallayout.hxx
@@ -79,7 +79,6 @@ public:
     SAL_DLLPRIVATE std::unique_ptr<SalLayout>  ReleaseBaseLayout();
     SAL_DLLPRIVATE bool            LayoutText(vcl::text::ImplLayoutArgs&, 
const SalLayoutGlyphsImpl*) override;
     SAL_DLLPRIVATE void            AdjustLayout(vcl::text::ImplLayoutArgs&) 
override;
-    SAL_DLLPRIVATE void            InitFont() const override;
 
     SAL_DLLPRIVATE void SetIncomplete(bool bIncomplete);
 
diff --git a/vcl/source/gdi/sallayout.cxx b/vcl/source/gdi/sallayout.cxx
index 31e4b81f211f..9e2c0b66b9f9 100644
--- a/vcl/source/gdi/sallayout.cxx
+++ b/vcl/source/gdi/sallayout.cxx
@@ -1042,12 +1042,6 @@ void 
MultiSalLayout::ImplAdjustMultiLayout(vcl::text::ImplLayoutArgs& rArgs,
     mpLayouts[0]->Simplify( true );
 }
 
-void MultiSalLayout::InitFont() const
-{
-    if( mnLevel > 0 )
-        mpLayouts[0]->InitFont();
-}
-
 void MultiSalLayout::DrawText( SalGraphics& rGraphics ) const
 {
     for( int i = mnLevel; --i >= 0; )
@@ -1055,7 +1049,6 @@ void MultiSalLayout::DrawText( SalGraphics& rGraphics ) 
const
         SalLayout& rLayout = *mpLayouts[ i ];
         rLayout.DrawBase() += maDrawBase;
         rLayout.DrawOffset() += maDrawOffset;
-        rLayout.InitFont();
         rLayout.DrawText( rGraphics );
         rLayout.DrawOffset() -= maDrawOffset;
         rLayout.DrawBase() -= maDrawBase;
@@ -1223,7 +1216,6 @@ bool MultiSalLayout::GetNextGlyph(const GlyphItem** 
pGlyph,
     for(; nLevel < mnLevel; ++nLevel, nStart=0 )
     {
         GenericSalLayout& rLayout = *mpLayouts[ nLevel ];
-        rLayout.InitFont();
         if (rLayout.GetNextGlyph(pGlyph, rPos, nStart, ppGlyphFont))
         {
             int nFontTag = nLevel << GF_FONTSHIFT;
@@ -1234,8 +1226,6 @@ bool MultiSalLayout::GetNextGlyph(const GlyphItem** 
pGlyph,
         }
     }
 
-    // #111016# reset to base level font when done
-    mpLayouts[0]->InitFont();
     return false;
 }
 
@@ -1248,7 +1238,6 @@ bool 
MultiSalLayout::GetOutline(basegfx::B2DPolyPolygonVector& rPPV) const
         SalLayout& rLayout = *mpLayouts[ i ];
         rLayout.DrawBase() = maDrawBase;
         rLayout.DrawOffset() += maDrawOffset;
-        rLayout.InitFont();
         bRet |= rLayout.GetOutline(rPPV);
         rLayout.DrawOffset() -= maDrawOffset;
     }
diff --git a/vcl/source/outdev/font.cxx b/vcl/source/outdev/font.cxx
index b8a29adcfcc8..2412ac17f415 100644
--- a/vcl/source/outdev/font.cxx
+++ b/vcl/source/outdev/font.cxx
@@ -1150,7 +1150,6 @@ std::unique_ptr<SalLayout> 
OutputDevice::ImplGlyphFallbackLayout( std::unique_pt
     }
 
     // restore orig font settings
-    pSalLayout->InitFont();
     rLayoutArgs.maRuns = std::move(aLayoutRuns);
 
     return pSalLayout;

Reply via email to