-
Notifications
You must be signed in to change notification settings - Fork 584
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Description
I have encountered a issue in my web application. In a specific view, I have added a datepicker component, and when I try to open it, two datepickers appear on the screen. The first datepicker closes when I press OK or Cancel and then the second one appears and works as it should
Code example to reproduce the issue:
import datetime
import flet as ft
def main(page: ft.Page):
page.title = "Example DatePicker"
def change_date(e):
print(f"Date picker changed, value is {date_picker.value}")
def date_picker_dismissed(e):
print(f"Date picker dismissed, value is {date_picker.value}")
date_picker = ft.DatePicker(
on_change=change_date,
on_dismiss=date_picker_dismissed,
first_date=datetime.datetime(2023, 10, 1),
last_date=datetime.datetime(2024, 10, 1),
)
page.overlay.append(date_picker)
date_button = ft.ElevatedButton(
"Pick date",
icon=ft.icons.CALENDAR_MONTH,
on_click=lambda _: date_picker.pick_date(),
)
def route_change(route):
page.views.clear()
page.views.append(
ft.View(
"/",
[
ft.AppBar(title=ft.Text("Flet app"), bgcolor=ft.colors.SURFACE_VARIANT),
ft.ElevatedButton("Visit DatePicker", on_click=lambda _: page.go("/datePicker")),
],
)
)
if page.route == "/datePicker":
page.views.append(
ft.View(
"/datePicker",
[
ft.AppBar(title=ft.Text("Date Picker"), bgcolor=ft.colors.SURFACE_VARIANT),
date_button,
],
)
)
page.update()
def view_pop(view):
page.views.pop()
top_view = page.views[-1]
page.go(top_view.route)
page.on_route_change = route_change
page.on_view_pop = view_pop
page.go(page.route)
ft.app(target=main)
Describe the results you received:
Describe the results you expected:
Additional information you deem important (e.g. issue happens only occasionally):
Flet version (pip show flet
):
Name: flet
Version: 0.11.0
Summary: Flet for Python - easily build interactive multi-platform apps in Python
Home-page:
Author: Appveyor Systems Inc.
Author-email: hello@flet.dev
License: Apache-2.0
Location: c:\users\pstef\appdata\local\programs\python\python310\lib\site-packages
Requires: copier, flet-runtime, packaging, qrcode, watchdog, websocket-client, websockets
Required-by:
Operating system:
Windows
Additional environment details:
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working