From 9cb78ede183571984e8b47ac912f7121fb83c975 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Mon, 5 May 2014 14:10:56 +0200 Subject: Fix layout, give proper name to bug report button, disable button as long as it's not doing anything, add --fullscreen option --- src/main.cpp | 45 +++++++++++++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 16 deletions(-) (limited to 'src/main.cpp') diff --git a/src/main.cpp b/src/main.cpp index 87f30b9..30e30f3 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -145,26 +145,32 @@ int main(int argc, char *argv[]) { } QString size; - if (cmdOptions.contains("size")) { + int width, height; + if (cmdOptions.contains("fullscreen")) { + size = "fullscreen"; + } else if (settings.contains("fullscreen")) { + size = "fullscreen"; + } else if (cmdOptions.contains("size")) { size = cmdOptions.value("size"); } else if (settings.contains("size")) { size = settings.value("size").toString(); } - int width, height; - QRegExp rx("^(\\d+)x(\\d+)$"); - if (rx.indexIn(size) != -1) { - QStringList list = rx.capturedTexts(); - width = list.value(1).toInt(); - height = list.value(2).toInt(); - } else if (!size.isEmpty()) { - std::cerr - << a.translate("Console", "vmchooser: invalid size argument").toUtf8().data() - << std::endl; - return EXIT_FAILURE; - } else { - width = VMCHOOSER_DEFAULT_WIDTH; - height = VMCHOOSER_DEFAULT_HEIGHT; + if (size != "fullscreen") { + QRegExp rx("^(\\d+)x(\\d+)$"); + if (rx.indexIn(size) != -1) { + QStringList list = rx.capturedTexts(); + width = list.value(1).toInt(); + height = list.value(2).toInt(); + } else if (!size.isEmpty()) { + std::cerr + << a.translate("Console", "vmchooser: invalid size argument").toUtf8().data() + << std::endl; + return EXIT_FAILURE; + } else { + width = VMCHOOSER_DEFAULT_WIDTH; + height = VMCHOOSER_DEFAULT_HEIGHT; + } } if (cmdOptions.contains("pool")) { @@ -187,6 +193,8 @@ int main(int argc, char *argv[]) { basePath = cmdOptions.value("base"); } else if (settings.contains("base")) { basePath = settings.value("base").toString(); + } else if (settings.contains("path")) { // Compatibility to v1.0 + basePath = settings.value("path").toString(); } /* read session files */ @@ -225,6 +233,12 @@ int main(int argc, char *argv[]) { if (pvsEnabled) w.showSettingsPVS(); + QRect desktopRect = QApplication::desktop()->availableGeometry(&w); + if (size == "fullscreen") { + width = desktopRect.width(); + height = desktopRect.height(); + } + w.resize(width, height); if (xsessions.size()) { @@ -241,7 +255,6 @@ int main(int argc, char *argv[]) { w.show(); // center dialog on primary screen - QRect desktopRect = QApplication::desktop()->availableGeometry(&w); QPoint center = desktopRect.center(); w.move(center.x() - w.width() * 0.5, center.y() - w.height() * 0.5); a.setActiveWindow(&w); -- cgit v1.2.3-55-g7522