Skip to content

Commit 4092f10

Browse files
committed
fix home_icon badge bug
1 parent 5d1c203 commit 4092f10

File tree

1 file changed

+25
-20
lines changed

1 file changed

+25
-20
lines changed

main.py

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -496,24 +496,33 @@ def navigate_view(e):
496496
current_view.controls = [print_wizard_view]
497497
page.update()
498498

499-
home_icon_badge_count = 0
500-
501-
def home_badge(e=None, increase=True, reset=False):
502-
nonlocal home_icon_badge_count
499+
def home_badge(e=None, reset=False):
503500
if reset:
504-
home_icon_badge_count = 0
505-
increase = False
506-
if increase:
507-
home_icon_badge_count += 1
508-
509-
if home_icon_badge_count == 0:
510-
home_icon.badge = None
501+
# I have to fully re-assign the icon control
502+
# to reset the badge to None. Simply
503+
# setting it = None doesn't work.
504+
home_icon.icon = ft.Icon(
505+
name="home_outlined",
506+
badge=None
507+
)
511508
else:
512-
home_icon.badge = str(home_icon_badge_count)
509+
home_icon.icon.badge = ft.Badge(small_size=10)
510+
511+
try:
512+
home_icon.icon.update()
513+
except AssertionError as e:
514+
# Control isn't added to page yet so ignore
515+
pass
513516

514-
home_icon = ft.Icon(
515-
name="home_outlined",
516-
badge = str(home_icon_badge_count)
517+
home_icon = ft.NavigationRailDestination(
518+
icon=ft.Icon(
519+
name="home_outlined",
520+
badge=None
521+
),
522+
selected_icon=ft.Icon(
523+
name="home"
524+
),
525+
label_content=ft.Text("Results")
517526
)
518527

519528
rail = ft.NavigationRail(
@@ -528,11 +537,7 @@ def home_badge(e=None, increase=True, reset=False):
528537
selected_icon="settings",
529538
label_content=ft.Text("Settings"),
530539
),
531-
ft.NavigationRailDestination(
532-
icon=home_icon,
533-
selected_icon="home",
534-
label_content=ft.Text("Results"),
535-
),
540+
home_icon,
536541
ft.NavigationRailDestination(
537542
icon="terminal_outlined",
538543
selected_icon="terminal",

0 commit comments

Comments
 (0)