Skip to content

[November 2019 or later] Describe new horizontal list appearances #125

Open
@lognaturel

Description

@lognaturel

New spec, as agreed upon after further discussion here and on the forum:

new appearance behavior old appearance
columns horizontal labels with buttons arranged in a number of columns determined by the screen width horizontal
columns no-buttons horizontal labels without buttons arranged in a number of columns determined by the screen width
columns-pack horizontal labels with buttons, packed in to fit horizontal space with minimal padding horizontal-compact
columns-pack no-buttons horizontal labels without buttons, packed in to fit horizontal space with minimal padding compact
columns-n horizontal labels with buttons arranged in n columns where n is an integer between 1 and 10 inclusive
columns-n no-buttons horizontal labels without buttons arranged in n columns where n is an integer between 1 and 10 inclusive compact-n

This is really three base appearances with no-buttons that can combine with them (in any order) but the table above lists all 6 possibilities so that old appearances can be listed.

As of May 2019, both Collect (1.22) and Enketo (1.77.0) support all of these combinations. Documentation should be updated in November 2019 at the earliest when users will almost all have updated clients.

Various notes from the original discussion ### ODK Forum thread https://forum.opendatakit.org/t/spec-proposal-harmonize-compact-compact-n-horizontal-horizontal-compact-appearances/15565

Tentative action to take

The following changes will be made to clients, maintaining backwards compatibility:
compact-n > compact columns-n
horizontal -> columns
horizontal-compact -> columns-flex

In roughly April 2019, once users have updated their clients, change the documentation in the following way:

  • compact-n, horizontal and horizontal-compact should be deprecated.
  • columns, columns-n and columns-flex should be introduced.
  • compact should be an optional modifier on those.

See forum.

Description

There are currently various appearances to make select options appear horizontally. Here is a test form illustrating these different appearances: https://docs.google.com/spreadsheets/d/1s79M4wsZ1QA5xwJWSEsTGoJCpjtrrdqP0NtpNeEmsPs/edit?usp=sharing

Here is how they currently behave:

appearance Collect behavior Enketo behavior
compact horizontal labels without select markers, packed in to fit horizontal space with minimal padding same as Collect
compact-n horizontal labels without select markers arranged in n columns same as Collect
horizontal none like compact-n but the number of columns is dynamically determined by the screen width and select markers are included
horizontal-compact none like compact but with select markers
list label takes up half the screen, half the screen is for options, option labels are above select markers none
label like list but labels only same as Collect
list-nolabel like list but options only same as Collect

I'm guessing these were added organically over time and it would be good to formalize them a little bit before they get broader support.

I think compact and compact-n make sense as they exist and are named appropriately.

I think list, label and list-nolabel are a bit odd but not too bad.

I'm not sure about horizontal -- @MartijnR what is its intended purpose in contrast to compact-n?

The behavior of horizontal-compact (horizontal options with minimal padding and select markers) seems useful but the naming doesn't make sense to me in the context of the other appearances. How about compact-markers or something like that?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions