Broken project to implement a cross-protocol browser in textual
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from textual.app import App, ComposeResult
from textual.widgets import Input, Button, Static
from textual.containers import Container
from rich.markdown import Markdown
from textual.binding import Binding


class Browset(App):
    CSS_PATH = "browset.css"
    BINDINGS = [
        Binding("ctrl+c,ctrl+q", "app.quit", "Quit", show=True),
    ]

    content = "## Hello\n* Bullet points\n*OH Yeah!"
    def compose(self) -> ComposeResult:
        yield Container(
            Button("🔙"), # ⏪
            Button("🔝"), # ⏫
            Button("🔜"), # ⏩
            Button("🔄"), # 🔁
            
            Input(placeholder="Enter URI"),
            id="toolbar"
        )
        yield Static(Markdown(self.content), id="content")
    async def on_input_submitted(self, message: Input.Submitted) -> None:
        self.content = "## new stuff\n"+message.value
        self.query_one("#content", Static).update(Markdown(self.content))

if __name__ == "__main__":
    app = Browset()
    app.run()