diff --git a/kcms/fonts/fonts.h b/kcms/fonts/fonts.h --- a/kcms/fonts/fonts.h +++ b/kcms/fonts/fonts.h @@ -106,7 +106,9 @@ int m_dpi; int m_dpiOriginal; int m_subPixelCurrentIndex = 0; + int m_subPixelCurrentIndexOriginal; int m_hintingCurrentIndex = 0; + int m_hintingCurrentIndexOriginal; QStandardItemModel *m_subPixelOptionsModel; QStandardItemModel *m_hintingOptionsModel; bool m_exclude = false; diff --git a/kcms/fonts/fonts.cpp b/kcms/fonts/fonts.cpp --- a/kcms/fonts/fonts.cpp +++ b/kcms/fonts/fonts.cpp @@ -145,6 +145,7 @@ xft.getSubPixelType(spType); setSubPixelCurrentIndex(spType); + m_subPixelCurrentIndexOriginal = spType; KXftConfig::Hint::Style hStyle; @@ -159,6 +160,7 @@ } setHintingCurrentIndex(hStyle); + m_hintingCurrentIndexOriginal = hStyle; KConfig _cfgfonts("kcmfonts"); KConfigGroup cfgfonts(&_cfgfonts, "General"); @@ -291,6 +293,9 @@ m_excludeToOriginal = m_excludeTo; m_excludeFromOriginal = m_excludeFrom; + + m_subPixelCurrentIndexOriginal = m_subPixelCurrentIndex; + m_hintingCurrentIndexOriginal = m_hintingCurrentIndex; return mod; } @@ -415,7 +420,12 @@ bool FontAASettings::needsSave() const { - return m_excludeTo != m_excludeToOriginal || m_excludeFrom != m_excludeFromOriginal || m_antiAliasing != m_antiAliasingOriginal || m_dpi != m_dpiOriginal; + return m_excludeTo != m_excludeToOriginal + || m_excludeFrom != m_excludeFromOriginal + || m_antiAliasing != m_antiAliasingOriginal + || m_dpi != m_dpiOriginal + || m_subPixelCurrentIndex != m_subPixelCurrentIndexOriginal + || m_hintingCurrentIndex != m_hintingCurrentIndexOriginal; }