beeware / beeware/toga

Backfill Textual widgets

Open
#4,230 1 comment 0 reactions 0 assignees View on GitHub
enhancement textual
Dominant language
Python
Stars
5.4k
Forks
829
Avg merge
15h 39m
Merged PRs (30d)
40

Description

### What is the problem or limitation you are having?

The Textual backend is missing many widgets.

This is a meta-issue to keep track of all "Textual implementation" PRs into a single changenote number.

### Describe the solution you'd like

Implement and backfill those widgets/functionalities:

- [x] app
- [x] dialogs
- [ ] fonts
- [ ] icons
- [ ] Status Icons
- [ ] images
- [ ] keys
- [x] paths
- [x] window
- [ ] activityindicator
- [x] base
- [x] box
- [x] button
- [ ] canvas
- [ ] dateinput
- [ ] detailedlist
- [ ] divider
- [ ] imageview
- [x] label
- [ ] mapview
- [ ] multilinetextinput
- [ ] numberinput
- [ ] optioncontainer
- [ ] paswordinput
- [ ] progressbar
- [ ] scrollcontainer
- [ ] selection
- [ ] slider
- [ ] splitcontainer
- [x] switch (#4228)
- [ ] table
- [ ] textinput
- [ ] timeinput
- [ ] tree
- [ ] webview

### Describe alternatives you've considered

Deprecate and remove the Textual backend.

### Additional context

It would be preferable if this was accompanied by a testing harness for Textual. Textual has a [test mode](https://textual.textualize.io/guide/testing/); but we need to hook this up to the testbed. See #2663 for details.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the unchecked widgets in the Textual backend checklist and the existing Textual implementations marked complete. Read the testing-harness context in #2663 and Textual's linked test mode documentation. Done means the selected missing widget functionality is implemented and accompanied by appropriate testbed coverage.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.