[X2Go-Commits] [x2goclient] 02/03: set mod map from client to server on Mac, hide keyboard settings on Mac
git-admin at x2go.org
git-admin at x2go.org
Fri Jan 24 12:18:19 CET 2014
This is an automated email from the git hooks/post-receive script.
x2go pushed a commit to branch release/4.0.1.x
in repository x2goclient.
commit 4954ff8b6269a7d6afb6feba8c1fbb48a09c4c40
Author: Oleksandr Shneyder <o.shneyder at phoca-gmbh.de>
Date: Thu Jan 23 17:52:41 2014 +0100
set mod map from client to server on Mac, hide keyboard settings on Mac
Conflicts (resolved by Mike Gabriel):
debian/changelog
---
debian/changelog | 1 +
onmainwindow.cpp | 28 ++++++++++++++++++++++++++++
onmainwindow.h | 6 ++++++
settingswidget.cpp | 1 +
4 files changed, 36 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index a60493f..0528af7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,7 @@ x2goclient (4.0.1.4-0x2go1) UNRELEASED; urgency=low
[ Oleksandr Shneyder ]
* New upstream version (4.0.1.4):
- Increase timeout in ssh_select.
+ - Set mod map from client to server on Mac, hide keyboard settings on Mac.
-- Mike Gabriel <mike.gabriel at das-netzwerkteam.de> Wed, 22 Jan 2014 09:17:39 +0100
diff --git a/onmainwindow.cpp b/onmainwindow.cpp
index 4efd91f..51e71fa 100644
--- a/onmainwindow.cpp
+++ b/onmainwindow.cpp
@@ -5468,6 +5468,24 @@ void ONMainWindow::slotSndTunnelFailed ( bool result, QString output,
}
+#ifdef Q_OS_DARWIN
+void ONMainWindow::slotSetModMap()
+{
+ if(!nxproxy)
+ {
+ return;
+ }
+ if(kbMap.length()<=0)
+ {
+ x2goDebug<<"get keyboard map";
+ QProcess pr(this);
+ pr.start("xmodmap -pke");
+ pr.waitForFinished();
+ kbMap=pr.readAllStandardOutput();
+ }
+ sshConnection->executeCommand("export DISPLAY=:"+resumingSession.display+"; echo \\\""+kbMap+"\\\" | xmodmap -");
+}
+#endif
void ONMainWindow::slotProxyError ( QProcess::ProcessError )
{
@@ -5479,6 +5497,10 @@ void ONMainWindow::slotProxyFinished ( int,QProcess::ExitStatus )
{
#ifdef Q_OS_DARWIN
+ disconnect(modMapTimer, SIGNAL(timeout()), this, SLOT(slotSetModMap()));
+ delete modMapTimer;
+ modMapTimer=0;
+ kbMap=QString::null;
//fixes bug, when mainwindow inputs not accepting focus under mac
setFocus();
#endif
@@ -5722,6 +5744,12 @@ void ONMainWindow::slotProxyStderr()
}
}
sbSusp->setToolTip ( tr ( "Suspend" ) );
+#ifdef Q_OS_DARWIN
+ modMapTimer=new QTimer(this);
+ connect(modMapTimer, SIGNAL(timeout()), this, SLOT (slotSetModMap()));
+ modMapTimer->start(30000);
+ slotSetModMap();
+#endif
if ( newSession )
{
runCommand();
diff --git a/onmainwindow.h b/onmainwindow.h
index d18fef1..5e0f6bc 100644
--- a/onmainwindow.h
+++ b/onmainwindow.h
@@ -1064,6 +1064,12 @@ private slots:
void slotReconnectSession();
void slotStartBroker();
void slotStartNewBrokerSession ();
+#ifdef Q_OS_DARWIN
+ void slotSetModMap();
+private:
+ QTimer* modMapTimer;
+ QString kbMap;
+#endif
private:
void resizeProxyWinOnDisplay(int display);
diff --git a/settingswidget.cpp b/settingswidget.cpp
index 5ffdd01..4add99c 100644
--- a/settingswidget.cpp
+++ b/settingswidget.cpp
@@ -236,6 +236,7 @@ SettingsWidget::SettingsWidget ( QString id, ONMainWindow * mw,
arts->hide();
pulse->hide();
esd->setChecked ( true );
+ kgb->hide();
#endif
#ifndef Q_WS_HILDON
setLay->addWidget ( dgb );
--
Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goclient.git
More information about the x2go-commits
mailing list