]> git.lyx.org Git - features.git/commitdiff
fix Symbols dialog box grid size in case of broken QFontMetrics::maxWidth()
authorStephan Witt <switt@lyx.org>
Sat, 4 Jan 2014 19:14:06 +0000 (20:14 +0100)
committerStephan Witt <switt@lyx.org>
Sat, 4 Jan 2014 19:14:06 +0000 (20:14 +0100)
src/frontends/qt4/GuiSymbols.cpp

index 874f27587495f0af142ad555d88cf6d1451167ea..743cab70065e431c103dce2c4e74e4dca40c4536 100644 (file)
@@ -277,12 +277,16 @@ GuiSymbols::GuiSymbols(GuiView & lv)
 
        symbolsLW->setViewMode(QListView::IconMode);
        // increase the display size of the symbols a bit
-       QFont font= symbolsLW->font();
-       int size = font.pointSize() + 3;
+       QFont font = symbolsLW->font();
+       const int size = font.pointSize() + 3;
        font.setPointSize(size);
        symbolsLW->setFont(font);
        QFontMetrics fm(font);
-       symbolsLW->setGridSize(QSize(fm.maxWidth() + 2, fm.height() + 2));
+       const int cellHeight = fm.height() + 2;
+       // FIXME: using at least cellHeight because of
+       // QFontMetrics::maxWidth() is returning 0 with Qt/Cocoa on Mac OS
+       const int cellWidth = max(cellHeight, fm.maxWidth() + 2);
+       symbolsLW->setGridSize(QSize(cellWidth, cellHeight));
        symbolsLW->setModel(model_);
 }