void skypetab::SkypeTab::onSetContextMenu(QMenu *menu) { stage2Init(); if(_instance->_trayMenu!=0) return; _instance->_trayMenu=menu; connect(menu, SIGNAL(aboutToShow()),_instance, SLOT(onMenuShow())); _instance->onMenuShow(); }
void SkypeTab::onTrayMenuActivated(QSystemTrayIcon::ActivationReason reason) { stage2Init(); if(reason!=QSystemTrayIcon::Context) { onTrayIcon(); } else raiseTrayMenuActivated(reason); }
void SkypeTab::onTrayIcon() { stage2Init(); if((SkypeTab::winManager==Generic) && (mainWindow->isActiveWindow()||mainWindow->hasActiveTab())) { mainWindow->setWindowState(mainWindow->windowState() & ~Qt::WindowActive | Qt::WindowMinimized); } else { mainWindow->show(); mainWindow->activateWindow(); } }
bool SkypeTab::onWindowActivation(QWidget *widget) { stage2Init(); while(widget->parentWidget()) widget=widget->parentWidget(); QString cl=QString::fromLocal8Bit(widget->metaObject()->className()); if(_instance->mainWindow->activateTab(widget)) { QApplication::setActiveWindow(widget); X11::Flush(); X11::Sync(false); return false; } return true; }
void SkypeTab::onTrayMenuActivated(QSystemTrayIcon::ActivationReason reason) { stage2Init(); if(reason!=QSystemTrayIcon::Context) { onTrayIcon(); } else { raiseTrayMenuActivated(reason); if(_trayMenu==0) { if (_trayIcon==0) _trayIcon=qobject_cast<QSystemTrayIcon*>(sender()); _trayMenu=_trayIcon->contextMenu(); connect(_trayMenu, SIGNAL(aboutToShow()),this, SLOT(onMenuShow())); onMenuShow(); } } }
void SkypeTab::onTryShow(QWidget *widget) { if (_mainSkypeWindow) return; stage2Init(); //Walk on widget's hierarhy while (widget) { if(0==strcmp(widget->metaObject()->className(), "QWidget")) { QString title=widget->windowTitle(); if(title.contains("Skype")&&title.contains("Beta")) { _mainSkypeWindow=widget; _instance->mainWindow->SetMainWindow(widget); break; } } widget=widget->parentWidget(); } }
void SkypeTab::onTrayIcon() { stage2Init(); mainWindow->show(); mainWindow->activateWindow(); }