• Jan D's avatar
    Use Gtk+ tooltips by default for Gtk+ Emacs. · aa1859f5
    Jan D authored
    * lisp/cus-start.el (x-gtk-use-system-tooltips): New variable.
    
    * src/gtkutil.c (hierarchy_ch_cb, qttip_cb, xg_prepare_tooltip)
    (xg_show_tooltip, xg_hide_tooltip, xg_free_frame_widgets): New
    functions.
    (xg_create_frame_widgets): Set ttip_* to 0.  Set a dummy tooltip
    text so qttip_cb is called.  Connect query-tooltip to qttip_cb.
    Remove code that is commented out.
    
    * src/gtkutil.h (xg_free_frame_widgets, xg_prepare_tooltip)
    (xg_show_tooltip, xg_hide_tooltip): Declare.
    
    * src/xfns.c (x_gtk_use_system_tooltips): New variable.
    (Fx_show_tip): If USE_GTK and x_gtk_use_system_tooltips, call
    new gtkutil tooltip functions to show the tooltip.
    (Fx_hide_tip): Call xg_hide_tooltip.
    (syms_of_xfns): Defvar x-gtk-use-system-tooltips.
    
    * src/xterm.c (x_clear_frame): Check FRAME_GTK_WIDGET (f) before
    calling gtk_widget_queue_draw.
    (x_free_frame_resources): Call xg_free_frame_widgets.
    
    * src/xterm.h (struct x_output): Add ttip_widget, ttip_window and
    ttip_lbl.
    aa1859f5
gtkutil.h 7.52 KB