Label TabStop property defaulting to ON makes no sense

  1. 8 months ago

    Aaron H

    11 Feb 2019 Pre-Release Testers Europe (Germany)

    Every time I create a IU I have to go turn all the TabStop properties to OFF for every Label object. Why? What a waste of time! TabStop should default to OFF for Labels. Who has any reason for a TabStop on a label? If you need it, turn it on. It should not be on by default.

    @Aaron H Every time I create a IU I have to go turn all the TabStop properties to OFF for every Label object. Why? What a waste of time! TabStop should default to OFF for Labels. Who has any reason for a TabStop on a label? If you need it, turn it on. It should not be on by default.

    Defaulting to on makes sense since it makes sure your app properly responds when a user has "full keyboard access ON" on macOS. And it also behaves as expected on Windows by default.

    Turning tabstops off means that even if a person turns on full keyboard access on macOS things do not work as they should.

  2. Stefan A

    11 Feb 2019 Pre-Release Testers, Xojo Pro Austria, Tirol

    In the meantime you simply could create a subclass of label and turn off the TabStop property by code only once :-)?

  3. Sascha S

    11 Feb 2019 Pre-Release Testers, Xojo Pro Germany, Lower Saxonary
    Edited 8 months ago

    Or you place a Xojo Folder in your Users Documents Folder. And place there an Overrides Folder in which you create a Label.defaults File. In this File you write TabStop = 0. If im correct, all new Labels will have the TabStop = False Setting.

  4. @Aaron H — Why do you want to set TabStop to off? To my knowledge, it is not enforced by Xojo but by the OS so the end-user will not see the TabStop until he/she agreed to.

    On macOS, for example, there is no actual tab stop on Labels, whatever TabStop is set to. Also remember that some settings may be useful for people with a handicap, and depend on the system settings.

  5. Douglas H

    12 Feb 2019 Pre-Release Testers, Xojo Pro

    @Aaron H Who has any reason for a TabStop on a label? If you need it, turn it on. It should not be on by default.

    Some accessibility users, particularly vision impaired or blind people. For them, enabling an OS setting to have the system read the labels as they tab through controls can be helpful. Or even the only way they can use the computer at all.

    But note that to be helpful you MUST also properly set your "tab order" so that the label immediately precedes the associated text field. And your tab order of fields should be logical too.

    Having a logical tab order is helpful for keyboard centric users even with good vision, but for visually impaired if your labels are not properly sequenced to associated fields you will make life very difficult for those users. And to a lesser extent having the tab sequence jump all over the screen can make usage harder even when the labels' tab order precedes the data.

    Try navigating your program with your eyes closed and using the tab key and see what happens...

  6. Jason P

    12 Feb 2019 Xojo Inc Answer Texas

    @Aaron H Every time I create a IU I have to go turn all the TabStop properties to OFF for every Label object. Why? What a waste of time! TabStop should default to OFF for Labels. Who has any reason for a TabStop on a label? If you need it, turn it on. It should not be on by default.

    Defaulting to on makes sense since it makes sure your app properly responds when a user has "full keyboard access ON" on macOS. And it also behaves as expected on Windows by default.

    Turning tabstops off means that even if a person turns on full keyboard access on macOS things do not work as they should.

  7. Aaron H

    13 Feb 2019 Pre-Release Testers Europe (Germany)

    I love this forum. Thanks everyone. I feel a little less ignorant now :)

or Sign Up to reply!