Merge pull request #965 from ey6es/master

Fix for menu not showing up on Linux: don't parent the info view to the menu.
This commit is contained in:
Andrzej Kapolka 2013-09-19 17:59:34 -07:00
commit 96e6b45dad
4 changed files with 12 additions and 11 deletions

View file

@ -321,7 +321,7 @@ void Application::initializeGL() {
Menu::getInstance()->checkForUpdates();
#endif
InfoView::showFirstTime(Menu::getInstance());
InfoView::showFirstTime();
}
void Application::paintGL() {

View file

@ -17,8 +17,7 @@
#define SETTINGS_VERSION_KEY "info-version"
#define MAX_DIALOG_HEIGHT_RATIO 0.9
InfoView::InfoView(bool forced, QWidget* parent) :
QWebView(parent),
InfoView::InfoView(bool forced) :
_forced(forced) {
switchToResourcesParentIfRequired();
@ -29,12 +28,12 @@ InfoView::InfoView(bool forced, QWidget* parent) :
connect(this, SIGNAL(loadFinished(bool)), this, SLOT(loaded(bool)));
}
void InfoView::showFirstTime(QWidget* parent) {
new InfoView(false, parent);
void InfoView::showFirstTime() {
new InfoView(false);
}
void InfoView::forcedShow(QWidget* parent) {
new InfoView(true, parent);
void InfoView::forcedShow() {
new InfoView(true);
}
bool InfoView::shouldShow() {
@ -59,6 +58,7 @@ bool InfoView::shouldShow() {
void InfoView::loaded(bool ok) {
if (!ok || !shouldShow()) {
deleteLater();
return;
}
@ -72,5 +72,6 @@ void InfoView::loaded(bool ok) {
resize(mainFrame->contentsSize().width(), height);
move(desktop->screen()->rect().center() - rect().center());
setWindowTitle(title());
setAttribute(Qt::WA_DeleteOnClose);
show();
}

View file

@ -14,11 +14,11 @@
class InfoView : public QWebView {
Q_OBJECT
public:
static void showFirstTime(QWidget* parent);
static void forcedShow(QWidget* parent);
static void showFirstTime();
static void forcedShow();
private:
InfoView(bool forced, QWidget* parent);
InfoView(bool forced);
bool _forced;
bool shouldShow();

View file

@ -684,7 +684,7 @@ bool Menu::isVoxelModeActionChecked() {
}
void Menu::aboutApp() {
InfoView::forcedShow(this);
InfoView::forcedShow();
}
void updateDSHostname(const QString& domainServerHostname) {