(************************************************************************) (* * The Coq Proof Assistant / The Coq Development Team *) (* v * INRIA, CNRS and contributors - Copyright 1999-2018 *) (* 0 && is_word_char c then ( ignore (it#nocopy#forward_char); step_to_end it ) else ( Minilib.log ("Word end at: "^(string_of_int it#offset)); it) in step_to_end it#copy let get_word_around (it:GText.iter) = let start = find_word_start it in let stop = find_word_end it in start,stop (** On double-click on a view, select the whole word. This is a workaround for a deficient word handling in TextView. *) let fix_double_click self = let callback ev = match GdkEvent.get_type ev with | `TWO_BUTTON_PRESS -> let iter = self#buffer#get_iter `INSERT in let start, stop = get_word_around iter in let () = self#buffer#move_mark `INSERT ~where:start in let () = self#buffer#move_mark `SEL_BOUND ~where:stop in true | _ -> false in ignore (self#event#connect#button_press ~callback)