Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#12350 closed Bug report (rejected)

Debug level selector in Settings is broken

Reported by: php4fan Owned by:
Priority: high Component: FileZilla Client
Keywords: Cc:
Component version: 3.51.0 Operating system type: Linux
Operating system version: openSUSE Tumbleweed


Steps to reproduce:

  1. Go to Edit / Settings
  2. Go to Debug
  3. Change the value of "Debug Information in message log" to something other than "warning": e.g., "Debug"
  4. Save and exit Settings
  5. OPTIONALLY restart FileZilla (will reproduce either way)
  6. Go to Settings again and again to Debug

Expected: the selector for "Debug Information in message log" should show the current level. Saving without touching it should not change the setting

Observed: regardless of what the current level is (that is, if you followed the steps above, regardless of the level you configured at step 3), the selector shows "1. Warning". If you now save the settings without having touched the debug level setting, it will be actually changed to Warning.

This is broken in two ways: 1) it doesn't show the actual current level; 2) it causes you to unintentionally change a setting without having touched it (by only changing other unrelated settings and saving) if you don't notice.

Change History (3)

comment:1 by Tim Kosse, 3 years ago

Resolution: rejected
Status: newclosed

This is intentional, the debug settings are not intended to persist.

comment:2 by php4fan, 3 years ago

Nope, even if they are not meant to persist, the interface is broken.

Let's say you have set the debug level to something other than the default.

Now you go to Settings. You don't touch ANYTHING AT ALL (or you do change something but don't touch the Debug tab), and hit OK.
Boom! The debug level has changed!

I can understand not persisting across restarts. I may accept the setting reverting back when I do go to Settings/Debug IF YOU PUT A WARNING THERE so that I know.

But the fact that you can go to settings, don't touch the debug level or even nothing at all, and by merely exiting (because if you haven't touched any setting, hitting "ok" is expected to be the exact same as as "cancel") the debug level changes, cannot be ok in any way.

comment:3 by php4fan, 3 years ago

Also you have to make it so that the user KNOWS that this setting is not meant to persist, because that's not usual for any kind of settings, and there's nothing in the interface that allows you to know (except the selector changing back if you do look at it, which is confusing because one wonders if they forgot they had changed, or if it doesn't work like in my case). This is deeply wrong UI design.

Note: See TracTickets for help on using tickets.