let win_to_user_window (wr: win_ref) (b: b)
: user_window =
let w = win_assoc_valid wr b in
let u = (page_assoc_valid w.win_page b).page_location in
let has_url (_, w) =
(page_assoc_valid w.win_page b).page_location = u
in
let windows' = List.filter has_url b.browser_windows in
let rec find wr ws n =
begin match ws with
| (wr', _) :: _ when wr' = wr -> n
| _ :: ws' -> find wr ws' (succ n)
| _ -> assert false
end
in
User_window(u, find wr windows' 0)