From 231f3495934755e9ea2bd772fe2384c2a31b2c08 Mon Sep 17 00:00:00 2001 From: Till Adam Date: Fri, 20 Jan 2006 20:45:19 +0000 Subject: [PATCH] Forward port of: SVN commit 500626 by tilladam: Make sure that latin1 is selected as a default if we find no matching locale for the fallback codec, and replace "iso " with "iso-" so we have a better chance of finding the locale. svn path=/trunk/KDE/kdepim/; revision=500663 --- configuredialog.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/configuredialog.cpp b/configuredialog.cpp index 90bd7217d..900e7c915 100644 --- a/configuredialog.cpp +++ b/configuredialog.cpp @@ -2286,17 +2286,27 @@ void AppearancePage::ReaderTab::readCurrentFallbackCodec() QStringList encodings = KMMsgBase::supportedEncodings( false ); QStringList::ConstIterator it( encodings.begin() ); QStringList::ConstIterator end( encodings.end() ); - const QString ¤tEncoding = GlobalSettings::self()->fallbackCharacterEncoding(); + QString currentEncoding = GlobalSettings::self()->fallbackCharacterEncoding(); + currentEncoding = currentEncoding.replace( "iso ", "iso-", false ); + ///kdDebug(5006) << "Looking for encoding: " << currentEncoding << endl; int i = 0; + int indexOfLatin1 = 0; + bool found = false; for( ; it != end; ++it) { - if( KGlobal::charsets()->encodingForName(*it) == currentEncoding ) + const QString encoding = KGlobal::charsets()->encodingForName(*it); + if ( encoding == "iso-8859-15" ) + indexOfLatin1 = i; + if( false && encoding == currentEncoding ) { mCharsetCombo->setCurrentItem( i ); + found = true; break; } i++; } + if ( !found ) // nothing matched, use latin1 + mCharsetCombo->setCurrentItem( indexOfLatin1 ); } void AppearancePage::ReaderTab::readCurrentOverrideCodec()