ngraham requested changes to this revision.
ngraham added a comment.
This revision now requires changes to proceed.


  In general the UI here is pretty good. I think we can polish it a bit. In 
particular, instead of having a header for a section and then a checkbox below 
it to enable that section with the same text as the header, here's an idea for 
an alternative: just use the checkbox itself as the header.  For example:
  
    [] Audible bell
        Custom Bell: [] Sound: [       ]
    
    [] Visual bell
             Duration: [99]
        Visual effect: (o) Flash color: [ color ]
                       ( ) Invert screen
  
  Another thing: you can save a lot of space by taking advantage of the 
properties of a FormLayout by splitting strings up a bit. For example, for Slow 
Keys, you can do the following:
  
    Show System Bell: [x] When a key is pressed
                      [ ] When a key is accepted
                      [ ] When a key is rejected
  
  Finally, I notice that the Apply button never gets enabled when a control is 
changed.

INLINE COMMENTS

> Bell.qml:35
> +        id: systemBell
> +        text: i18n("Use system bell")
> +        checked: kcm.bellSettings.systemBell

Instead of having a header and then a checkbox to enable it, with the same text 
as the header, let's just use the checkbox itself as the header. i.e.:

  [] Audible bell
      Custom Bell: [] Sound: [       ]
  
  [] Visual bell
           Duration: [99]
      Visual effect: (o) Flash color: [ color ]
                     ( ) Invert screen

> Bell.qml:47
> +    }
> +    QQC2.TextField {
> +        id: textEdit

Indent this by one GridUnit to show that its dependency on the checkbox above 
it, or place it on the same line

> Bell.qml:70
> +        text: i18n("Invert Screen")
> +        enabled: !kcm.bellSettings.isImmutable("InvertScreen") && 
> kcm.bellSettings.visibleBell
> +        checked: kcm.bellSettings.invertScreen

This radio button never gets enabled

> Bell.qml:81
> +            onCheckedChanged: kcm.bellSettings.invertScreen = !checked
> +            enabled: !kcm.bellSettings.isImmutable("InvertScreen")
> +        }

This radio button never gets enabled

> Bell.qml:94
> +        onValueChanged: kcm.bellSettings.visibleBellPause = value
> +        Kirigami.FormData.label: i18n("Duration")
> +    }

"Duration:"

> MouseNavigation.qml:38
> +        onCheckStateChanged: kcm.mouseSettings.mouseKeys = checked
> +        enabled: !kcm.keyboardSettings.isImmutable("MouseKeys")
> +    }

This checkbox never gets enabled

REPOSITORY
  R119 Plasma Desktop

REVISION DETAIL
  https://phabricator.kde.org/D25375

To: tcanabrava, ngraham
Cc: ognarb, mart, ngraham, plasma-devel, LeGast00n, The-Feren-OS-Dev, jraleigh, 
fbampaloukas, GB_2, ragreen, ZrenBot, alexeymin, himcesjf, lesliezhai, 
ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra

Reply via email to