optimization: don't create page if it won't be navigated to
This commit is contained in:
@@ -209,7 +209,10 @@ func (b *BrowsingPane) Reload() {
|
||||
}
|
||||
}
|
||||
|
||||
func (b *BrowsingPane) CurPage() controller.Route {
|
||||
func (b *BrowsingPane) CurrentPage() controller.Route {
|
||||
if b.curPage == nil {
|
||||
return controller.Route{Page: controller.Blank}
|
||||
}
|
||||
return b.curPage.Route()
|
||||
}
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ import (
|
||||
|
||||
type NavigationHandler interface {
|
||||
SetPage(Page)
|
||||
CurrentPage() controller.Route
|
||||
}
|
||||
|
||||
type Router struct {
|
||||
@@ -53,5 +54,7 @@ func (r Router) CreatePage(rte controller.Route) Page {
|
||||
}
|
||||
|
||||
func (r Router) NavigateTo(rte controller.Route) {
|
||||
r.Nav.SetPage(r.CreatePage(rte))
|
||||
if rte != r.Nav.CurrentPage() {
|
||||
r.Nav.SetPage(r.CreatePage(rte))
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user