kconfig: qconf: fix the content of the main widget
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Thu, 2 Apr 2020 09:28:00 +0000 (11:28 +0200)
committerMasahiro Yamada <masahiroy@kernel.org>
Wed, 8 Apr 2020 15:13:45 +0000 (00:13 +0900)
The port to Qt5 tried to preserve the same way as it used
to work with Qt3 and Qt4. However, at least with newer
versions of Qt5 (5.13), this doesn't work properly.

Change the schema by adding a vertical layout, in order
for it to start working properly again.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
scripts/kconfig/qconf.cc

index 0e66dc7..3f7bee7 100644 (file)
@@ -1360,21 +1360,32 @@ ConfigMainWindow::ConfigMainWindow(void)
        if ((x.isValid())&&(y.isValid()))
                move(x.toInt(), y.toInt());
 
-       split1 = new QSplitter(this);
+       QWidget *widget = new QWidget(this);
+       QVBoxLayout *layout = new QVBoxLayout(widget);
+       setCentralWidget(widget);
+
+       split1 = new QSplitter(widget);
        split1->setOrientation(Qt::Horizontal);
-       setCentralWidget(split1);
+       split1->setChildrenCollapsible(false);
 
-       menuView = new ConfigView(split1, "menu");
+       menuView = new ConfigView(widget, "menu");
        menuList = menuView->list;
 
-       split2 = new QSplitter(split1);
+       split2 = new QSplitter(widget);
+       split2->setChildrenCollapsible(false);
        split2->setOrientation(Qt::Vertical);
 
        // create config tree
-       configView = new ConfigView(split2, "config");
+       configView = new ConfigView(widget, "config");
        configList = configView->list;
 
-       helpText = new ConfigInfoView(split2, "help");
+       helpText = new ConfigInfoView(widget, "help");
+
+       layout->addWidget(split2);
+       split2->addWidget(split1);
+       split1->addWidget(configView);
+       split1->addWidget(menuView);
+       split2->addWidget(helpText);
 
        setTabOrder(configList, helpText);
        configList->setFocus();