Instead of just changing the helper window to show a
dependency, also navigate to it at the config and menu
widgets.

Signed-off-by: Mauro Carvalho Chehab <mchehab+hua...@kernel.org>
---
 scripts/kconfig/qconf.cc | 24 +++++-------------------
 1 file changed, 5 insertions(+), 19 deletions(-)

diff --git a/scripts/kconfig/qconf.cc b/scripts/kconfig/qconf.cc
index 6a327b69ff5f..f49fbac91995 100644
--- a/scripts/kconfig/qconf.cc
+++ b/scripts/kconfig/qconf.cc
@@ -1233,7 +1233,6 @@ void ConfigInfoView::clicked(const QUrl &url)
        char *data = new char[count + 1];
        struct symbol **result;
        struct menu *m = NULL;
-       char type;
 
        if (count < 1) {
                qInfo() << "Clicked link is empty";
@@ -1243,7 +1242,6 @@ void ConfigInfoView::clicked(const QUrl &url)
 
        memcpy(data, str.constData(), count);
        data[count] = '\0';
-       type = data[0];
 
        /* Seek for exact match */
        data[0] = '^';
@@ -1256,15 +1254,8 @@ void ConfigInfoView::clicked(const QUrl &url)
        }
 
        sym = *result;
-       if (type == 's') {
-               symbolInfo();
-               emit showDebugChanged(true);
-               free(result);
-               delete data;
-               return;
-       }
 
-       /* URL is a menu */
+       /* Seek for the menu which holds the symbol */
        for (struct property *prop = sym->prop; prop; prop = prop->next) {
                    if (prop->type != P_PROMPT && prop->type != P_MENU)
                            continue;
@@ -1272,17 +1263,11 @@ void ConfigInfoView::clicked(const QUrl &url)
                    break;
        }
 
-       if (!m) {
+       if (!m)
                qInfo() << "Clicked menu is invalid:" << data;
-               free(result);
-               delete data;
-               return;
-       }
+       else
+               emit menuSelected(m);
 
-       _menu = m;
-       menuInfo();
-
-       emit showDebugChanged(true);
        free(result);
        delete data;
 }
@@ -1731,6 +1716,7 @@ void ConfigMainWindow::setMenuLink(struct menu *menu)
                        list->setSelected(item, true);
                        list->scrollToItem(item);
                        list->setFocus();
+                       helpText->setInfo(menu);
                }
        }
 }
-- 
2.26.2

Reply via email to