From 3c9835537b2fdccab4c0f720a4d77a98ad8bba10 Mon Sep 17 00:00:00 2001 From: sandman Date: Wed, 23 Oct 2002 21:55:13 +0000 Subject: Fixed a translation bug regarding launcher applets, that got in when I merged with Qtopia 1.6 (TT bug). found by Héctor GarcíaÁlvarez , but I modified his patch, since running the applet widget constructor *before* the QTranslator gets installed seems like a bad idea. --- (limited to 'core') diff --git a/core/launcher/startmenu.cpp b/core/launcher/startmenu.cpp index 917f4c1..7373ea8 100644 --- a/core/launcher/startmenu.cpp +++ b/core/launcher/startmenu.cpp @@ -312,6 +312,7 @@ void StartMenu::loadApplets() cfg.write(); QStringList exclude = cfg.readListEntry( "ExcludeApplets", ',' ); + QString lang = getenv( "LANG" ); QString path = QPEApplication::qpeDir() + "/plugins/applets"; QDir dir( path, "lib*.so" ); QStringList list = dir.entryList(); @@ -328,6 +329,14 @@ void StartMenu::loadApplets() xapplets[napplets++] = applet; applet->library = lib; applet->iface = iface; + + QTranslator *trans = new QTranslator(qApp); + QString type = (*it).left( (*it).find(".") ); + QString tfn = QPEApplication::qpeDir()+"/i18n/"+lang+"/"+type+".qm"; + if ( trans->load( tfn )) + qApp->installTranslator( trans ); + else + delete trans; } else { exclude += *it; delete lib; @@ -342,14 +351,6 @@ void StartMenu::loadApplets() while (napplets--) { MenuApplet *applet = xapplets[napplets]; - QString lang = getenv( "LANG" ); - QTranslator * trans = new QTranslator(qApp); - QString type = (*it).left( (*it).find(".") ); - QString tfn = QPEApplication::qpeDir()+"/i18n/"+lang+"/"+type+".qm"; - if ( trans->load( tfn )) - qApp->installTranslator( trans ); - else - delete trans; applet-> popup = applet-> iface-> popup ( this ); diff --git a/core/launcher/systray.cpp b/core/launcher/systray.cpp index 406c662..4859e48 100644 --- a/core/launcher/systray.cpp +++ b/core/launcher/systray.cpp @@ -91,6 +91,7 @@ void SysTray::addApplets() cfg.write(); QStringList exclude = cfg.readListEntry( "ExcludeApplets", ',' ); + QString lang = getenv( "LANG" ); QString path = QPEApplication::qpeDir() + "/plugins/applets"; QDir dir( path, "lib*.so" ); QStringList list = dir.entryList(); @@ -107,6 +108,14 @@ void SysTray::addApplets() applets[napplets++] = applet; applet->library = lib; applet->iface = iface; + + QTranslator *trans = new QTranslator(qApp); + QString type = (*it).left( (*it).find(".") ); + QString tfn = QPEApplication::qpeDir()+"/i18n/"+lang+"/"+type+".qm"; + if ( trans->load( tfn )) + qApp->installTranslator( trans ); + else + delete trans; } else { exclude += *it; delete lib; @@ -118,14 +127,6 @@ void SysTray::addApplets() TaskbarApplet *applet = applets[napplets]; applet->applet = applet->iface->applet( this ); appletList.append(*applet); - QString lang = getenv( "LANG" ); - QTranslator * trans = new QTranslator(qApp); - QString type = (*it).left( (*it).find(".") ); - QString tfn = QPEApplication::qpeDir()+"/i18n/"+lang+"/"+type+".qm"; - if ( trans->load( tfn )) - qApp->installTranslator( trans ); - else - delete trans; } delete applets; #else -- cgit v0.9.0.2