Work around elements not refreshing on url operations
This commit is contained in:
parent
70ad45d8f6
commit
38a21f34e6
3 changed files with 9 additions and 3 deletions
|
|
@ -2,6 +2,7 @@ import options, tables, sugar, httpcore
|
||||||
from dom import window, Location, document, decodeURI
|
from dom import window, Location, document, decodeURI
|
||||||
|
|
||||||
include karax/prelude
|
include karax/prelude
|
||||||
|
import karax/[kdom]
|
||||||
import jester/[patterns]
|
import jester/[patterns]
|
||||||
|
|
||||||
import threadlist, postlist, header, profile, newthread, error, about
|
import threadlist, postlist, header, profile, newthread, error, about
|
||||||
|
|
@ -56,6 +57,10 @@ proc onPopState(event: dom.Event) =
|
||||||
state = newState() # Reload the state to remove stale data.
|
state = newState() # Reload the state to remove stale data.
|
||||||
state.url = copyLocation(window.location)
|
state.url = copyLocation(window.location)
|
||||||
|
|
||||||
|
# For some reason this is needed so that the back/forward buttons reload
|
||||||
|
# the post list when different categories are selected
|
||||||
|
window.location.reload()
|
||||||
|
|
||||||
redraw()
|
redraw()
|
||||||
|
|
||||||
type Params = Table[string, string]
|
type Params = Table[string, string]
|
||||||
|
|
|
||||||
|
|
@ -39,15 +39,15 @@ when defined(js):
|
||||||
loading: false,
|
loading: false,
|
||||||
status: Http200,
|
status: Http200,
|
||||||
loginModal: newLoginModal(
|
loginModal: newLoginModal(
|
||||||
() => (state.lastUpdate = fromUnix(0); getStatus()),
|
() => (state.lastUpdate = fromUnix(0); getStatus(); window.location.reload()),
|
||||||
() => state.signupModal.show()
|
() => state.signupModal.show()
|
||||||
),
|
),
|
||||||
signupModal: newSignupModal(
|
signupModal: newSignupModal(
|
||||||
() => (state.lastUpdate = fromUnix(0); getStatus()),
|
() => (state.lastUpdate = fromUnix(0); getStatus(); window.location.reload()),
|
||||||
() => state.loginModal.show()
|
() => state.loginModal.show()
|
||||||
),
|
),
|
||||||
userMenu: newUserMenu(
|
userMenu: newUserMenu(
|
||||||
() => (state.lastUpdate = fromUnix(0); getStatus(logout=true))
|
() => (state.lastUpdate = fromUnix(0); getStatus(logout=true); window.location.reload())
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -97,6 +97,7 @@ when defined(js):
|
||||||
let url = n.getAttr("href")
|
let url = n.getAttr("href")
|
||||||
|
|
||||||
navigateTo(url)
|
navigateTo(url)
|
||||||
|
window.location.href = url
|
||||||
|
|
||||||
proc newFormData*(form: dom.Element): FormData
|
proc newFormData*(form: dom.Element): FormData
|
||||||
{.importcpp: "new FormData(@)", constructor.}
|
{.importcpp: "new FormData(@)", constructor.}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue