git-svn-id: svn://db.shs.com.ru/pip@253 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5
This commit is contained in:
@@ -29,17 +29,18 @@ Daemon::Remote::~Remote() {
|
||||
|
||||
void Daemon::Remote::shellOpen() {
|
||||
if (term) return;
|
||||
piCoutObj << "shell open";
|
||||
term = new PITerminal();
|
||||
term->initialize();
|
||||
term_timer.start(40);
|
||||
term_timer.start(50);
|
||||
}
|
||||
|
||||
|
||||
void Daemon::Remote::shellClose() {
|
||||
if (!term) return;
|
||||
//piCoutObj << "shellClose ...";
|
||||
piCoutObj << "shell close";
|
||||
term_timer.stop();
|
||||
term_timer.waitForFinish(100);
|
||||
term_timer.waitForFinish(1000);
|
||||
term->destroy();
|
||||
delete term;
|
||||
term = 0;
|
||||
@@ -62,8 +63,11 @@ void Daemon::Remote::shellKeySend(PIKbdListener::KeyEvent k) {
|
||||
void Daemon::Remote::termTimerTick() {
|
||||
if (!term) return;
|
||||
PIVector<PIVector<PIScreenTypes::Cell> > cells = term->content();
|
||||
if (pcells == cells) return;
|
||||
pcells = cells;
|
||||
PIByteArray ba;
|
||||
ba << int(ShellContent) << cells;
|
||||
//piCout << ba.size_s() << pcells.back().back().symbol.unicode16Code() << cells.back().back().symbol.unicode16Code();
|
||||
sendRequest(name(), ba);
|
||||
}
|
||||
|
||||
@@ -595,6 +599,7 @@ void Daemon::connectToDaemon(const PIString & dn) {
|
||||
|
||||
|
||||
void Daemon::disconnect() {
|
||||
screen->enableExitCapture(PIKbdListener::F10);
|
||||
conn_name.clear();
|
||||
mode = rmNone;
|
||||
showMainList();
|
||||
@@ -821,6 +826,7 @@ void Daemon::sendDirToRemote(Remote * r) {
|
||||
void Daemon::requestOpenShell() {
|
||||
Remote * r = remotes.value(conn_name, 0);
|
||||
if (!r) return;
|
||||
screen->disableExitCapture();
|
||||
PIByteArray ba;
|
||||
ba << int(ShellOpen);
|
||||
send(conn_name, ba);
|
||||
@@ -830,6 +836,7 @@ void Daemon::requestOpenShell() {
|
||||
void Daemon::requestCloseShell() {
|
||||
Remote * r = remotes.value(conn_name, 0);
|
||||
if (!r) return;
|
||||
screen->enableExitCapture(PIKbdListener::F10);
|
||||
PIByteArray ba;
|
||||
ba << int(ShellClose);
|
||||
send(conn_name, ba);
|
||||
|
||||
Reference in New Issue
Block a user