Hi (John?), Compared to xforms qt is slow in resizing. I don't know whether this is informative but I compiled both xforms and qt with profiling enabled. Then I opened and resized a doc.
Output for xforms: Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls us/call us/call name 9.47 0.09 0.09 583192 0.15 0.15 basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> >::replace(unsigned int, unsigned int, unsigned int, char) 8.42 0.17 0.08 204250 0.39 0.43 LyXFont::realize(LyXFont const &) 7.37 0.24 0.07 209041 0.33 0.49 Paragraph::getFontSettings(BufferParams const &, int) const 5.26 0.29 0.05 190101 0.26 1.55 LyXText::singleWidth(BufferView *, Paragraph *, int, char) const 3.16 0.32 0.03 281980 0.11 0.11 Paragraph::size(void) const 2.11 0.34 0.02 483132 0.04 0.04 Paragraph::Pimpl::getChar(int) const 2.11 0.36 0.02 273076 0.07 0.07 stringbuf::sync(void) 2.11 0.38 0.02 272392 0.07 0.07 basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> >::copy(char *, unsigned int, unsigned int) const 2.11 0.40 0.02 203968 0.10 1.06 LyXText::getFont(Buffer const *, Paragraph *, int) const 2.11 0.42 0.02 198146 0.10 0.15 font_metrics::width(char const *, unsigned int, LyXFont const &) 2.11 0.44 0.02 135326 0.15 0.15 basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> >::compare(basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> > const &, unsigned int, unsigned int) const 2.11 0.46 0.02 27391 0.73 1.00 InsetText::getLyXText(BufferView const *, bool) const 2.11 0.48 0.02 6800 2.94 2.94 LyXLex::Pimpl::nextToken(void) 2.11 0.50 0.02 3922 5.10 19.01 LyXText::setHeightOfRow(BufferView *, Row *) const 2.11 0.52 0.02 908 22.03 33.80 kb_keymap::defkey(kb_sequence *, int, unsigned int) Output for Qt: Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls us/call us/call name 6.50 0.08 0.08 208916 0.38 0.60 Paragraph::getFontSettings(BufferParams const &, int) const 5.69 0.15 0.07 582913 0.12 0.12 basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> >::replace(unsigned int, un signed int, unsigned int, char) 5.69 0.22 0.07 198032 0.35 0.59 font_metrics::width(char const *, unsigned int, LyXFont const &) 4.07 0.27 0.05 274079 0.18 0.18 BufferView::buffer(void) const 4.07 0.32 0.05 3921 12.75 20.00 LyXText::nextBreakPoint(BufferView *, Row const *, int) const 3.25 0.36 0.04 482823 0.08 0.08 Paragraph::Pimpl::getChar(int) const 3.25 0.40 0.04 296128 0.14 0.14 basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> >::compare(char const *, unsigned int, unsigned int) const 3.25 0.44 0.04 218047 0.18 0.18 LyXFont::LyXFont(void) 3.25 0.48 0.04 204125 0.20 0.24 LyXFont::realize(LyXFont const &) 2.44 0.51 0.03 429641 0.07 0.07 LyXFont::realShape(void) const 2.44 0.54 0.03 203843 0.15 1.04 LyXText::getFont(Buffer const *, Paragraph *, int) const 2.44 0.57 0.03 119904 0.25 0.25 basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> >::replace(unsigned int, unsigned int, char const *, unsigned int) 2.44 0.60 0.03 12998 2.31 3.75 Counters::reset(basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> > const &)