Re: [PATCH 05/11] kconfig: qconf: show data column all the time

From: Masahiro Yamada
Date: Sun Aug 30 2020 - 06:00:34 EST


On Sun, Aug 30, 2020 at 1:54 PM Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote:
>
> On 8/29/20 1:14 AM, Masahiro Yamada wrote:
> > The next commit will allow users to edit "int", "hex", "string"
> > menus in-place from the data column.
> >
> > The data column should be always displayed.
> >
> > Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
> > ---
> >
> > scripts/kconfig/qconf.cc | 29 +----------------------------
> > scripts/kconfig/qconf.h | 5 +----
> > 2 files changed, 2 insertions(+), 32 deletions(-)
> >
>
> I am trying to edit LOG_BUF_SHIFT, which has a value of 17
> (this is x86_64).


My goal is to use Qt gadgets with least modification
and align with the standard behavior as much as possible.



> I want to change the 7 to 9, making it 19, so I double-click on the "17"
> (single-click won't give me an edit cursor).


Yes. You need to double-click the cell
to open up the editor.
Single-click is not enough.

It is the same for a simple example
program using QTreeWidgetItem.
So, it is the standard behavior of the Qt library.



> The edit cursor is
> immediately after the "17", so it's like
> 17|
> with the | cursor blinking.


Same for me.
And the "17" is highlighted.

> What I expect to be able to do is
> Backspace, enter 9, press Enter, and the new value is 19.
> But Backspace does nothing.

That is different from what I see on my machine
(matacity of Ubuntu).

After I double-clicked the cell, the entire "17" is high-lighted.
Backspace deleted "17" entirely for me.

The same behavior for a simple example,
and it makes sense since Backspace should delete the selected characters.

If Backspace does not work at all for you,
was it perhaps captured somewhere else on your machine?


> I just have to enter the complete new
> value: 19. So IMO it does not act like an edit box so much as a
> replacement box.

I am re-implementing a new way to edit values.
It does not need to act as before.


> Also, the new value that I enter is displayed/written over the old value,
> so I see 17 in white-on-blue and over that I see 19 in black until I
> press Enter, then I see only 19 in white-on-blue.

I do not see such a weirdness either on my machine.
I see only the new value I am entering.


I have no idea what makes it work differently
for you.



>
> BTW, if I edit DEFAULT_HOSTNAME, which begins as "(none)" and I change it
> to "xyz" and then change it to <empty string>, it becomes
> CONFIG_DEFAULT_HOSTNAME=""
> Should I have to enter "(none)" to get it back to (none)? I guess so.


It is a text string, "(none)",
which is not an empty string.

See init/Kconfig.


config DEFAULT_HOSTNAME
string "Default hostname"
default "(none)"


--
Best Regards
Masahiro Yamada