https://bugs.kde.org/show_bug.cgi?id=358526
--- Comment #2 from Kevin Funk ---
Observations:
- When no editor tabs open: Color switch is almost instant
- With editor tabs open: Switch is indeed super slow, takes several seconds.
Printing a few stack traces during the freeze revealed:
#0 0x7fe84d3b9c05 in QFontEngineFT::stringToCMap (this=0x61e00010c880,
str=0x60b000511b88, len=5, glyphs=0x7ffc9a3ecac0, nglyphs=0x7ffc9a3eca88,
flags=...) at ../gui/text/qfontengine_f
t.cpp:1497
#1 0x7fe864022cda in QFontEngineMulti::stringToCMap (this=0x61100158d480,
str=0x60b000511b88, len=5, glyphs=0x7ffc9a3ecac0, nglyphs=0x7ffc9a3eca88,
flags=...) at text/qfontengine.cpp:1
796
#2 0x7fe8640440a0 in QTextEngine::shapeText
(this=this@entry=0x61121340, item=item@entry=0) at
text/qtextengine.cpp:1006
#3 0x7fe864044a7f in QTextEngine::shape (this=0x61121340,
item=item@entry=0) at text/qtextengine.cpp:1494
#4 0x7fe8640584c5 in QTextLine::layout_helper
(this=this@entry=0x7ffc9a3ece30, maxGlyphs=maxGlyphs@entry=2147483647) at
text/qtextlayout.cpp:1766
#5 0x7fe864058f99 in QTextLine::setLineWidth
(this=this@entry=0x7ffc9a3ece30, width=) at
text/qtextlayout.cpp:1531
#6 0x7fe8678e6641 in KateRenderer::layoutLine (this=0x607000acafc0,
lineLayout=..., maxwidth=944, cacheLayout=) at
../../src/render/katerenderer.cpp:1028
#7 0x7fe8678ec8b1 in KateLayoutCache::line
(this=this@entry=0x60600069b5a0, realLine=realLine@entry=35,
virtualLine=virtualLine@entry=10) at ../../src/render/katelayoutcache.cpp:334
#8 0x7fe8678ed281 in KateLayoutCache::updateViewCache
(this=0x60600069b5a0, startPos=..., newViewLineCount=,
newViewLineCount@entry=46, viewLinesScrolled=viewLinesScroll
ed@entry=0) at ../../src/render/katelayoutcache.cpp:282
#9 0x7fe86793a67f in KateViewInternal::doUpdateView (this=0x61600085e380,
changed=, viewLinesScrolled=0) at
../../src/view/kateviewinternal.cpp:575
Feels like Kate is busy re-layouting the views? I'm still wondering why it's so
slow, though (in my case I just had 4 tabs open)
--
You are receiving this mail because:
You are watching all bug changes.