android states handle
This commit is contained in:
parent
36917efbb1
commit
99e04b843e
|
@ -271,6 +271,7 @@ private slots:
|
|||
void installAndroidPackFinished(QString result);
|
||||
void mainMenuDialogTriggered(bool checked);
|
||||
void sendContextMenuEvent();
|
||||
void applicationStateChanged(Qt::ApplicationState state);
|
||||
private:
|
||||
Ui::MainWindow *ui;
|
||||
ParserWorker * parserWorker;
|
||||
|
@ -321,7 +322,9 @@ private:
|
|||
EditorTabs * editorTabsSplit;
|
||||
bool isSplitActive;
|
||||
QHash<QString,int> filesHistory;
|
||||
bool suspended;
|
||||
signals:
|
||||
void initWorker();
|
||||
void disableWorker();
|
||||
void parseLint(int tabIndex, QString path);
|
||||
void execPHP(int tabIndex, QString path);
|
||||
|
|
|
@ -84,6 +84,7 @@ signals:
|
|||
void updateProgressInfo(QString text);
|
||||
void installAndroidPackFinished(QString result);
|
||||
public slots:
|
||||
void init();
|
||||
void disable();
|
||||
void lint(int tabIndex, QString path);
|
||||
void execPHP(int tabIndex, QString path);
|
||||
|
|
|
@ -333,6 +333,7 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||
parserWorker = new ParserWorker();
|
||||
parserWorker->moveToThread(&parserThread);
|
||||
connect(&parserThread, &QThread::finished, parserWorker, &QObject::deleteLater);
|
||||
connect(this, SIGNAL(initWorker()), parserWorker, SLOT(init()));
|
||||
connect(this, SIGNAL(disableWorker()), parserWorker, SLOT(disable()));
|
||||
connect(this, SIGNAL(parseLint(int,QString)), parserWorker, SLOT(lint(int,QString)));
|
||||
connect(this, SIGNAL(execPHP(int,QString)), parserWorker, SLOT(execPHP(int,QString)));
|
||||
|
@ -661,6 +662,7 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||
QTimer::singleShot(CHECK_SCALE_FACTOR_DELAY, this, SLOT(checkScaleFactor()));
|
||||
}
|
||||
|
||||
suspended = false;
|
||||
// make sure that window is maximized in Android
|
||||
#if defined(Q_OS_ANDROID)
|
||||
setWindowState( windowState() | Qt::WindowMaximized);
|
||||
|
@ -670,6 +672,8 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||
mainMenuAction->setIcon(Icon::get("actionMenu", QIcon(":/icons/separator-double.png")));
|
||||
connect(mainMenuAction, SIGNAL(triggered(bool)), this, SLOT(mainMenuDialogTriggered(bool)));
|
||||
ui->mainToolBar->insertAction(ui->mainToolBar->actions().at(0), mainMenuAction);
|
||||
|
||||
connect(qApp, SIGNAL(applicationStateChanged(Qt::ApplicationState)), this, SLOT(applicationStateChanged(Qt::ApplicationState)));
|
||||
#endif
|
||||
|
||||
bool autoShowVirtualKeyboard = false;
|
||||
|
@ -3058,3 +3062,19 @@ void MainWindow::inputMethodVisibleChanged()
|
|||
updateTabsListButton();
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::applicationStateChanged(Qt::ApplicationState state)
|
||||
{
|
||||
if (state == Qt::ApplicationActive) {
|
||||
if (suspended) {
|
||||
emit initWorker();
|
||||
}
|
||||
suspended = false;
|
||||
} else if (state == Qt::ApplicationSuspended) {
|
||||
if (progressInfo->isVisible()) {
|
||||
emit progressInfo->cancelTriggered();
|
||||
}
|
||||
Settings::save();
|
||||
suspended = true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,13 +26,7 @@ const QString PHP_WEBSERVER_URI = "127.0.0.1:8000";
|
|||
|
||||
const QString ZIRA_DEV_PACK_PATH = "/data/data/com.github.ziracms.devpack/files/bin";
|
||||
|
||||
ParserWorker::ParserWorker(QObject *parent) : QObject(parent)
|
||||
{
|
||||
phpPath = "";
|
||||
gitPath = "";
|
||||
bashPath = "";
|
||||
sasscPath = "";
|
||||
phpcsPath = "";
|
||||
ParserWorker::ParserWorker(QObject *parent) : QObject(parent){
|
||||
phpcsStandard = QString::fromStdString(Settings::get("parser_phpcs_standard"));
|
||||
if (phpcsStandard.size() == 0) phpcsStandard = "PEAR";
|
||||
phpcsErrorSeverity = std::stoi(Settings::get("parser_phpcs_error_severity"));
|
||||
|
@ -49,6 +43,16 @@ ParserWorker::ParserWorker(QObject *parent) : QObject(parent)
|
|||
quickBreaked = false;
|
||||
wantStop = false;
|
||||
phpWebServerPid = 0;
|
||||
init();
|
||||
}
|
||||
|
||||
void ParserWorker::init()
|
||||
{
|
||||
phpPath = "";
|
||||
gitPath = "";
|
||||
bashPath = "";
|
||||
sasscPath = "";
|
||||
phpcsPath = "";
|
||||
|
||||
// android pack
|
||||
androidHomePath="";
|
||||
|
@ -60,6 +64,7 @@ ParserWorker::ParserWorker(QObject *parent) : QObject(parent)
|
|||
if (stddirs.size()>0) androidHomePath = stddirs.at(0);
|
||||
#endif
|
||||
|
||||
#if !defined(Q_OS_ANDROID)
|
||||
// php path
|
||||
QString phpPathStr = QString::fromStdString(Settings::get("parser_php_path"));
|
||||
if (phpPathStr.size() == 0) {
|
||||
|
@ -129,6 +134,7 @@ ParserWorker::ParserWorker(QObject *parent) : QObject(parent)
|
|||
if (phpcsPathStr.size() > 0 && Helper::fileOrFolderExists(phpcsPathStr)) {
|
||||
phpcsPath = phpcsPathStr;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(Q_OS_ANDROID)
|
||||
setAndroidBinPaths(); // use installed binaries if exists
|
||||
|
|
Loading…
Reference in a new issue