[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdebase/kxkb
From: Andy Rysin <arysin () yahoo ! com>
Date: 2004-10-10 23:35:52
Message-ID: 20041010233552.E4C0416BC5 () office ! kde ! org
[Download RAW message or body]
CVS commit by rysin:
- recompile layouts on errors (Bug #88882)
- lazy layouts compilation
M +21 -14 kxkb.cpp 1.75
--- kdebase/kxkb/kxkb.cpp #1.74:1.75
@@ -301,17 +301,24 @@ void KXKBApp::layoutApply()
bool KXKBApp::setLayout(const QString& layout)
{
- bool res;
+ bool res = false;
const char* baseGr = m_includes[layout];
m_group = m_rules->getGroup(layout, baseGr);
- if (m_compiledLayoutFileNames.contains(layout) && !m_forceSetXKBMap)
+ if ( m_compiledLayoutFileNames.contains(layout) && !m_forceSetXKBMap )
{
res = m_extension->setCompiledLayout(m_compiledLayoutFileNames[layout]);
+// kdDebug() << "setting compiled for " << layout << ": " << res << endl;
+ if( res )
m_extension->setGroup(m_group);
}
- else
+
+ if ( !res ) // try not compiled layout, store compiled if success
{
res = m_extension->setLayout(m_model, layout, m_variants[layout], m_group, baseGr);
+// kdDebug() << "setting non-compiled for " << layout << ": " << res << endl;
+ if( res )
+ m_extension->getCompiledLayout(m_compiledLayoutFileNames[layout]);
}
+
if( res )
m_layout = layout;
@@ -341,14 +348,14 @@ void KXKBApp::precompileLayouts()
{
QString layout(*it);
- const char* baseGr = m_includes[layout];
- int group = m_rules->getGroup(layout, baseGr);
- if( m_extension->setLayout(m_model, layout, m_variants[layout], group, baseGr) ) {
+// const char* baseGr = m_includes[layout];
+// int group = m_rules->getGroup(layout, baseGr);
+// if( m_extension->setLayout(m_model, layout, m_variants[layout], group, baseGr) ) {
QString compiledLayoutFileName = tempDir + layout + ".xkm";
- if( m_extension->getCompiledLayout(compiledLayoutFileName) )
+// if( m_extension->getCompiledLayout(compiledLayoutFileName) )
m_compiledLayoutFileNames[layout] = compiledLayoutFileName;
- }
- else {
- kdDebug() << "Error precompiling layout " << layout << endl;
- }
+// }
+// else {
+// kdDebug() << "Error precompiling layout " << layout << endl;
+// }
}
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic