Skip to content

Implement User-Selectable Font Sizes with Overflow Mitigation  #9

@brylie

Description

@brylie

To enhance accessibility, we want to provide users with the ability to choose between small, medium, and large font sizes for button labels. However, directly increasing font sizes could reintroduce the overflow issue that was previously addressed. We need a robust solution that balances accessibility and layout.

Tasks:

  • Font size settings:
    • Implement a UI element (e.g., a settings menu or dropdown) that allows users to select their preferred font size (small, medium, large).
    • Persist the user's selection using local storage or other appropriate methods.
  • Dynamic layout adjustment:
    • Investigate layout strategies to accommodate different font sizes without causing button overflow. Consider these potential approaches:
      • Wrapping buttons with scrollable containers: Allow horizontal scrolling if buttons exceed screen width at larger font sizes.
      • Dynamic button resizing: Reduce button padding or use Expanded widgets to adjust button dimensions based on font size.
      • Conditional button display: In portrait mode, display a subset of buttons and allow navigation (swiping or similar) to access others if space is extremely limited.
  • Thorough testing:
    • Test the chosen layout solution thoroughly on a variety of devices and orientations, ensuring seamless usability across different font sizes.

Considerations:

  • Usability: Prioritize solutions that maintain smooth user experience at all font sizes, especially on smaller screens.
  • Performance: Be mindful of any performance implications of dynamic layout adjustments.
  • Trade-offs: Acknowledge potential trade-offs between maximizing the number of visible buttons and maintaining legibility at larger font sizes.
  • Visibility Ensure all buttons are visible on the screen when changing font sizes to avoid biasing the survey results.

Benefits:

  • Accessibility: Improves the user experience significantly for individuals who require larger text sizes.
  • User control: Empowers users to customize the application to their needs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions