Репозитории ALT
5.1: | 3.5.10-alt20.M51.2 |
4.1: | 3.5.10-alt16.M41.1 |
4.0: | 3.5.9-alt1.M40.1 |
3.0: | 3.4.1-alt12 |
+updates: | 3.4.1-alt12.1.M30 |
+backports: | 3.5.6-alt7.0.M30 |
Группа :: Графические оболочки/KDE
Пакет: kdebase
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: kdebase-3.5.8-alt-kdesktop-lock-kkbswitch-support.patch
Скачать
Скачать
--- kdebase-3.5.8/kdesktop/lock/lockdlg.cc~ 2007-05-14 11:55:44 +0400
+++ kdebase-3.5.8/kdesktop/lock/lockdlg.cc 2007-11-26 16:42:25 +0300
@@ -140,6 +140,10 @@ PasswordDlg::PasswordDlg(LockProcess *pa
greet->start();
DCOPRef kxkb("kxkb", "kxkb");
+ if( kxkb.isNull() || !kxkb.call("getCurrentLayout").isValid() ) {
+ kxkb.clear();
+ kxkb.setRef("kkbswitch", "KBSwitchIntf");
+ }
if( !kxkb.isNull() ) {
layoutsList = kxkb.call("getLayoutsList");
QString currentLayout = kxkb.call("getCurrentLayout");
@@ -171,7 +175,17 @@ void PasswordDlg::layoutClicked()
currLayout = layoutsList.begin();
DCOPRef kxkb("kxkb", "kxkb");
- setLayoutText( kxkb.call("setLayout", *currLayout) ? *currLayout : "err" );
+ bool ok;
+ if( !kxkb.isNull() ) {
+ ok = kxkb.call("setLayout", *currLayout);
+ if( !ok )
+ {
+ kxkb.clear();
+ kxkb.setRef("kkbswitch", "KBSwitchIntf");
+ ok = kxkb.call("setLayout", *currLayout);
+ }
+ }
+ setLayoutText( ok ? *currLayout : "err" );
}