aboutsummaryrefslogtreecommitdiffhomepage
path: root/ide/coqide.ml
diff options
context:
space:
mode:
authorGravatar Maxime Dénès <mail@maximedenes.fr>2018-01-22 09:41:25 +0100
committerGravatar Maxime Dénès <mail@maximedenes.fr>2018-01-22 09:41:25 +0100
commite0805eac59ee4c6c2eafae1d6b7f91530104f18f (patch)
treea36443b6a81e50986b9239f676aee2d5df5f1237 /ide/coqide.ml
parentc01b003ca1bc3bf04b538f03dadc59732d89aedc (diff)
parent2528533d7877ecf99d880650e1c81c78190ca25d (diff)
Merge PR #6625: Update location on tab switch, issue 6624
Diffstat (limited to 'ide/coqide.ml')
-rw-r--r--ide/coqide.ml11
1 files changed, 8 insertions, 3 deletions
diff --git a/ide/coqide.ml b/ide/coqide.ml
index 842d06859..3cc46b6aa 100644
--- a/ide/coqide.ml
+++ b/ide/coqide.ml
@@ -1221,9 +1221,14 @@ let build_ui () =
(* Emacs/PG mode *)
NanoPG.init w notebook all_menus;
- (* Reset on tab switch *)
- let _ = notebook#connect#switch_page ~callback:(fun _ ->
- if reset_on_tab_switch#get then Nav.restart ())
+ (* On tab switch, reset, update location *)
+ let _ = notebook#connect#switch_page ~callback:(fun n ->
+ let _ = if reset_on_tab_switch#get then Nav.restart () in
+ try
+ let session = notebook#get_nth_term n in
+ let ins = session.buffer#get_iter_at_mark `INSERT in
+ Ideutils.display_location ins
+ with _ -> ())
in
(* Vertical Separator between Scripts and Goals *)