bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

nverno


Calling `x-hide-tip` always returns nil (it is documented to
return t when the tooltip is active). I noticed this after
recently compiling with gtk3. I was using `x-hide-tip` in
a toggling function that stopped toggling. As an example
of what currently doesn't work:

(defun toggle-tip ()
    (interactive)
    (or (x-hide-tip)
      (pos-tip-show "hi")))


In GNU Emacs 25.1.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9)
of 2016-11-07 built on nverno-M51AC
Windowing system distributor 'The X.Org Foundation', version 11.0.11803000
System Description: Ubuntu 16.04.1 LTS

Configured using:
'configure --with-x-toolkit=gtk3 --with-modules --with-xwidgets'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 MODULES XWIDGETS

Important settings:
value of $LANG: en_US.UTF-8
value of $XMODIFIERS: @im=ibus
locale-coding-system: utf-8

Major mode: C/l

Minor modes in effect:
ede-minor-mode: t
global-semanticdb-minor-mode: t
global-semantic-idle-scheduler-mode: t
global-semantic-idle-summary-mode: t
semantic-idle-summary-mode: t
semantic-idle-scheduler-mode: t
semantic-stickyfunc-mode: t
global-semantic-stickyfunc-mode: t
semantic-mode: t
irony-mode: t
recentf-mode: t
shell-dirtrack-mode: t
diff-auto-refine-mode: t
linum-mode: t
ido-vertical-mode: t
ido-everywhere: t
company-statistics-mode: t
company-quickhelp-mode: t
global-company-mode: t
company-mode: t
yas-minor-mode: t
smartparens-global-mode: t
smartparens-mode: t
smooth-scrolling-mode: t
global-subword-mode: t
subword-mode: t
global-auto-revert-mode: t
winner-mode: t
delete-selection-mode: t
show-paren-mode: t
save-place-mode: t
savehist-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
global-prettify-symbols-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
column-number-mode: t
line-number-mode: t
transient-mark-mode: t
abbrev-mode: t

Recent messages:
user-error: At end of buffer
nil [2 times]
Parsing xfns.c (LL)...done
Idle Service Error semantic-idle-summary-idle-function: "#<buffer
xfns.c> - Wrong type argument: stringp, (((0) \"EMACS_INT\"))" [2 times]
Quit [3 times]
nil [4 times]
Saving file /home/nverno/.emacs.d/site-lisp/elisp-utils/el-pophelp.el...
Wrote /home/nverno/.emacs.d/site-lisp/elisp-utils/el-pophelp.el
Wrote /home/nverno/.emacs.d/site-lisp/elisp-utils/el-pophelp.elc
Wrote /home/nverno/.emacs.d/site-lisp/elisp-utils/el-pophelp.{el,elc}
Quit [2 times]

Load-path shadows:
/home/nverno/.emacs.d/elpa/define-word-20150709.1223/define-word hides
/home/nverno/.emacs.d/site-lisp/define-word
/home/nverno/.emacs.d/lisp/loaddefs hides
/home/nverno/.emacs.d/site-lisp/loaddefs
/home/nverno/.emacs.d/lisp/defuns/nvp-web hides
/home/nverno/.emacs.d/lisp/modes/nvp-web
/home/nverno/.emacs.d/lisp/custom hides
/usr/local/share/emacs/25.1/lisp/custom
/home/nverno/.emacs.d/lisp/loaddefs hides
/usr/local/share/emacs/25.1/lisp/loaddefs
/home/nverno/.emacs.d/git/org-mode/lisp/ob-mscgen hides
/usr/local/share/emacs/25.1/lisp/org/ob-mscgen
/home/nverno/.emacs.d/git/org-mode/lisp/org-compat hides
/usr/local/share/emacs/25.1/lisp/org/org-compat
/home/nverno/.emacs.d/git/org-mode/lisp/ob-haskell hides
/usr/local/share/emacs/25.1/lisp/org/ob-haskell
/home/nverno/.emacs.d/git/org-mode/lisp/org-mhe hides
/usr/local/share/emacs/25.1/lisp/org/org-mhe
/home/nverno/.emacs.d/git/org-mode/lisp/org-rmail hides
/usr/local/share/emacs/25.1/lisp/org/org-rmail
/home/nverno/.emacs.d/git/org-mode/lisp/org-crypt hides
/usr/local/share/emacs/25.1/lisp/org/org-crypt
/home/nverno/.emacs.d/git/org-mode/lisp/ob-tangle hides
/usr/local/share/emacs/25.1/lisp/org/ob-tangle
/home/nverno/.emacs.d/git/org-mode/lisp/org-macs hides
/usr/local/share/emacs/25.1/lisp/org/org-macs
/home/nverno/.emacs.d/git/org-mode/lisp/ox-man hides
/usr/local/share/emacs/25.1/lisp/org/ox-man
/home/nverno/.emacs.d/git/org-mode/lisp/ob-picolisp hides
/usr/local/share/emacs/25.1/lisp/org/ob-picolisp
/home/nverno/.emacs.d/git/org-mode/lisp/ob-io hides
/usr/local/share/emacs/25.1/lisp/org/ob-io
/home/nverno/.emacs.d/git/org-mode/lisp/org-datetree hides
/usr/local/share/emacs/25.1/lisp/org/org-datetree
/home/nverno/.emacs.d/git/org-mode/lisp/org-bibtex hides
/usr/local/share/emacs/25.1/lisp/org/org-bibtex
/home/nverno/.emacs.d/git/org-mode/lisp/org-attach hides
/usr/local/share/emacs/25.1/lisp/org/org-attach
/home/nverno/.emacs.d/git/org-mode/lisp/ob-fortran hides
/usr/local/share/emacs/25.1/lisp/org/ob-fortran
/home/nverno/.emacs.d/git/org-mode/lisp/org-bbdb hides
/usr/local/share/emacs/25.1/lisp/org/org-bbdb
/home/nverno/.emacs.d/git/org-mode/lisp/ob-sql hides
/usr/local/share/emacs/25.1/lisp/org/ob-sql
/home/nverno/.emacs.d/git/org-mode/lisp/ob-css hides
/usr/local/share/emacs/25.1/lisp/org/ob-css
/home/nverno/.emacs.d/git/org-mode/lisp/org-inlinetask hides
/usr/local/share/emacs/25.1/lisp/org/org-inlinetask
/home/nverno/.emacs.d/git/org-mode/lisp/org-id hides
/usr/local/share/emacs/25.1/lisp/org/org-id
/home/nverno/.emacs.d/git/org-mode/lisp/ob-lilypond hides
/usr/local/share/emacs/25.1/lisp/org/ob-lilypond
/home/nverno/.emacs.d/git/org-mode/lisp/ox-org hides
/usr/local/share/emacs/25.1/lisp/org/ox-org
/home/nverno/.emacs.d/git/org-mode/lisp/ob-js hides
/usr/local/share/emacs/25.1/lisp/org/ob-js
/home/nverno/.emacs.d/git/org-mode/lisp/ob-python hides
/usr/local/share/emacs/25.1/lisp/org/ob-python
/home/nverno/.emacs.d/git/org-mode/lisp/ob-calc hides
/usr/local/share/emacs/25.1/lisp/org/ob-calc
/home/nverno/.emacs.d/git/org-mode/lisp/ob-makefile hides
/usr/local/share/emacs/25.1/lisp/org/ob-makefile
/home/nverno/.emacs.d/git/org-mode/lisp/ob-shen hides
/usr/local/share/emacs/25.1/lisp/org/ob-shen
/home/nverno/.emacs.d/git/org-mode/lisp/ob-awk hides
/usr/local/share/emacs/25.1/lisp/org/ob-awk
/home/nverno/.emacs.d/git/org-mode/lisp/org-habit hides
/usr/local/share/emacs/25.1/lisp/org/org-habit
/home/nverno/.emacs.d/git/org-mode/lisp/org-feed hides
/usr/local/share/emacs/25.1/lisp/org/org-feed
/home/nverno/.emacs.d/git/org-mode/lisp/ob-lob hides
/usr/local/share/emacs/25.1/lisp/org/ob-lob
/home/nverno/.emacs.d/git/org-mode/lisp/ob-core hides
/usr/local/share/emacs/25.1/lisp/org/ob-core
/home/nverno/.emacs.d/git/org-mode/lisp/org-irc hides
/usr/local/share/emacs/25.1/lisp/org/org-irc
/home/nverno/.emacs.d/git/org-mode/lisp/org-gnus hides
/usr/local/share/emacs/25.1/lisp/org/org-gnus
/home/nverno/.emacs.d/git/org-mode/lisp/ob-comint hides
/usr/local/share/emacs/25.1/lisp/org/ob-comint
/home/nverno/.emacs.d/git/org-mode/lisp/ob-emacs-lisp hides
/usr/local/share/emacs/25.1/lisp/org/ob-emacs-lisp
/home/nverno/.emacs.d/git/org-mode/lisp/ob-latex hides
/usr/local/share/emacs/25.1/lisp/org/ob-latex
/home/nverno/.emacs.d/git/org-mode/lisp/ox hides
/usr/local/share/emacs/25.1/lisp/org/ox
/home/nverno/.emacs.d/git/org-mode/lisp/org-colview hides
/usr/local/share/emacs/25.1/lisp/org/org-colview
/home/nverno/.emacs.d/git/org-mode/lisp/ox-ascii hides
/usr/local/share/emacs/25.1/lisp/org/ox-ascii
/home/nverno/.emacs.d/git/org-mode/lisp/org-timer hides
/usr/local/share/emacs/25.1/lisp/org/org-timer
/home/nverno/.emacs.d/git/org-mode/lisp/ob-clojure hides
/usr/local/share/emacs/25.1/lisp/org/ob-clojure
/home/nverno/.emacs.d/git/org-mode/lisp/org-ctags hides
/usr/local/share/emacs/25.1/lisp/org/org-ctags
/home/nverno/.emacs.d/git/org-mode/lisp/ob-matlab hides
/usr/local/share/emacs/25.1/lisp/org/ob-matlab
/home/nverno/.emacs.d/git/org-mode/lisp/ob-ditaa hides
/usr/local/share/emacs/25.1/lisp/org/ob-ditaa
/home/nverno/.emacs.d/git/org-mode/lisp/org-install hides
/usr/local/share/emacs/25.1/lisp/org/org-install
/home/nverno/.emacs.d/git/org-mode/lisp/ob-ledger hides
/usr/local/share/emacs/25.1/lisp/org/ob-ledger
/home/nverno/.emacs.d/git/org-mode/lisp/ox-icalendar hides
/usr/local/share/emacs/25.1/lisp/org/ox-icalendar
/home/nverno/.emacs.d/git/org-mode/lisp/org-faces hides
/usr/local/share/emacs/25.1/lisp/org/org-faces
/home/nverno/.emacs.d/git/org-mode/lisp/ob-org hides
/usr/local/share/emacs/25.1/lisp/org/ob-org
/home/nverno/.emacs.d/git/org-mode/lisp/org-list hides
/usr/local/share/emacs/25.1/lisp/org/org-list
/home/nverno/.emacs.d/git/org-mode/lisp/ob-screen hides
/usr/local/share/emacs/25.1/lisp/org/ob-screen
/home/nverno/.emacs.d/git/org-mode/lisp/ob-asymptote hides
/usr/local/share/emacs/25.1/lisp/org/ob-asymptote
/home/nverno/.emacs.d/git/org-mode/lisp/ob-java hides
/usr/local/share/emacs/25.1/lisp/org/ob-java
/home/nverno/.emacs.d/git/org-mode/lisp/org hides
/usr/local/share/emacs/25.1/lisp/org/org
/home/nverno/.emacs.d/git/org-mode/lisp/ob-perl hides
/usr/local/share/emacs/25.1/lisp/org/ob-perl
/home/nverno/.emacs.d/git/org-mode/lisp/org-element hides
/usr/local/share/emacs/25.1/lisp/org/org-element
/home/nverno/.emacs.d/git/org-mode/lisp/org-src hides
/usr/local/share/emacs/25.1/lisp/org/org-src
/home/nverno/.emacs.d/git/org-mode/lisp/ob-dot hides
/usr/local/share/emacs/25.1/lisp/org/ob-dot
/home/nverno/.emacs.d/git/org-mode/lisp/org-table hides
/usr/local/share/emacs/25.1/lisp/org/org-table
/home/nverno/.emacs.d/git/org-mode/lisp/org-mouse hides
/usr/local/share/emacs/25.1/lisp/org/org-mouse
/home/nverno/.emacs.d/git/org-mode/lisp/ob hides
/usr/local/share/emacs/25.1/lisp/org/ob
/home/nverno/.emacs.d/git/org-mode/lisp/org-info hides
/usr/local/share/emacs/25.1/lisp/org/org-info
/home/nverno/.emacs.d/git/org-mode/lisp/ob-ref hides
/usr/local/share/emacs/25.1/lisp/org/ob-ref
/home/nverno/.emacs.d/git/org-mode/lisp/ob-eval hides
/usr/local/share/emacs/25.1/lisp/org/ob-eval
/home/nverno/.emacs.d/git/org-mode/lisp/org-w3m hides
/usr/local/share/emacs/25.1/lisp/org/org-w3m
/home/nverno/.emacs.d/git/org-mode/lisp/ob-ruby hides
/usr/local/share/emacs/25.1/lisp/org/ob-ruby
/home/nverno/.emacs.d/git/org-mode/lisp/ob-sqlite hides
/usr/local/share/emacs/25.1/lisp/org/ob-sqlite
/home/nverno/.emacs.d/git/org-mode/lisp/ox-md hides
/usr/local/share/emacs/25.1/lisp/org/ox-md
/home/nverno/.emacs.d/git/org-mode/lisp/org-indent hides
/usr/local/share/emacs/25.1/lisp/org/org-indent
/home/nverno/.emacs.d/git/org-mode/lisp/ob-scala hides
/usr/local/share/emacs/25.1/lisp/org/ob-scala
/home/nverno/.emacs.d/git/org-mode/lisp/ob-octave hides
/usr/local/share/emacs/25.1/lisp/org/ob-octave
/home/nverno/.emacs.d/git/org-mode/lisp/ob-R hides
/usr/local/share/emacs/25.1/lisp/org/ob-R
/home/nverno/.emacs.d/git/org-mode/lisp/org-version hides
/usr/local/share/emacs/25.1/lisp/org/org-version
/home/nverno/.emacs.d/git/org-mode/lisp/ob-scheme hides
/usr/local/share/emacs/25.1/lisp/org/ob-scheme
/home/nverno/.emacs.d/git/org-mode/lisp/org-loaddefs hides
/usr/local/share/emacs/25.1/lisp/org/org-loaddefs
/home/nverno/.emacs.d/git/org-mode/lisp/org-pcomplete hides
/usr/local/share/emacs/25.1/lisp/org/org-pcomplete
/home/nverno/.emacs.d/git/org-mode/lisp/org-entities hides
/usr/local/share/emacs/25.1/lisp/org/org-entities
/home/nverno/.emacs.d/git/org-mode/lisp/org-clock hides
/usr/local/share/emacs/25.1/lisp/org/org-clock
/home/nverno/.emacs.d/git/org-mode/lisp/org-plot hides
/usr/local/share/emacs/25.1/lisp/org/org-plot
/home/nverno/.emacs.d/git/org-mode/lisp/ob-ocaml hides
/usr/local/share/emacs/25.1/lisp/org/ob-ocaml
/home/nverno/.emacs.d/git/org-mode/lisp/ob-C hides
/usr/local/share/emacs/25.1/lisp/org/ob-C
/home/nverno/.emacs.d/git/org-mode/lisp/org-archive hides
/usr/local/share/emacs/25.1/lisp/org/org-archive
/home/nverno/.emacs.d/git/org-mode/lisp/org-footnote hides
/usr/local/share/emacs/25.1/lisp/org/org-footnote
/home/nverno/.emacs.d/git/org-mode/lisp/ox-publish hides
/usr/local/share/emacs/25.1/lisp/org/ox-publish
/home/nverno/.emacs.d/git/org-mode/lisp/org-agenda hides
/usr/local/share/emacs/25.1/lisp/org/org-agenda
/home/nverno/.emacs.d/git/org-mode/lisp/org-macro hides
/usr/local/share/emacs/25.1/lisp/org/org-macro
/home/nverno/.emacs.d/git/org-mode/lisp/ob-maxima hides
/usr/local/share/emacs/25.1/lisp/org/ob-maxima
/home/nverno/.emacs.d/git/org-mode/lisp/org-docview hides
/usr/local/share/emacs/25.1/lisp/org/org-docview
/home/nverno/.emacs.d/git/org-mode/lisp/ob-lisp hides
/usr/local/share/emacs/25.1/lisp/org/ob-lisp
/home/nverno/.emacs.d/git/org-mode/lisp/ob-plantuml hides
/usr/local/share/emacs/25.1/lisp/org/ob-plantuml
/home/nverno/.emacs.d/git/org-mode/lisp/ob-keys hides
/usr/local/share/emacs/25.1/lisp/org/ob-keys
/home/nverno/.emacs.d/git/org-mode/lisp/ox-beamer hides
/usr/local/share/emacs/25.1/lisp/org/ox-beamer
/home/nverno/.emacs.d/git/org-mode/lisp/ox-latex hides
/usr/local/share/emacs/25.1/lisp/org/ox-latex
/home/nverno/.emacs.d/git/org-mode/lisp/org-mobile hides
/usr/local/share/emacs/25.1/lisp/org/org-mobile
/home/nverno/.emacs.d/git/org-mode/lisp/ob-exp hides
/usr/local/share/emacs/25.1/lisp/org/ob-exp
/home/nverno/.emacs.d/git/org-mode/lisp/org-protocol hides
/usr/local/share/emacs/25.1/lisp/org/org-protocol
/home/nverno/.emacs.d/git/org-mode/lisp/ox-texinfo hides
/usr/local/share/emacs/25.1/lisp/org/ox-texinfo
/home/nverno/.emacs.d/git/org-mode/lisp/org-capture hides
/usr/local/share/emacs/25.1/lisp/org/org-capture
/home/nverno/.emacs.d/git/org-mode/lisp/ob-table hides
/usr/local/share/emacs/25.1/lisp/org/ob-table
/home/nverno/.emacs.d/git/org-mode/lisp/ob-gnuplot hides
/usr/local/share/emacs/25.1/lisp/org/ob-gnuplot
/home/nverno/.emacs.d/git/org-mode/lisp/ox-odt hides
/usr/local/share/emacs/25.1/lisp/org/ox-odt
/home/nverno/.emacs.d/git/org-mode/lisp/ox-html hides
/usr/local/share/emacs/25.1/lisp/org/ox-html
/home/nverno/.emacs.d/git/org-mode/lisp/ob-sass hides
/usr/local/share/emacs/25.1/lisp/org/ob-sass
/home/nverno/.emacs.d/git/org-mode/lisp/org-eshell hides
/usr/local/share/emacs/25.1/lisp/org/org-eshell

Features:
(shadow sort mail-extr emacsbug message rfc822 mml mml-sec epg mm-decode
mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader
sendmail rfc2047 rfc2045 ietf-drums mail-utils nvp-code-and-comments
misearch multi-isearch semantic/imenu semantic/sb idomenu imenu hl-line
make-it-so make-mode nvp-dired dired-x semantic/edit company-irony
semantic/ia semantic/senator semantic/db-typecache macrostep-c cmacexp
macrostep pp ede/locate ede/emacs ede/speedbar ede/files ede ede/detect
ede/base ede/auto ede/source eieio-speedbar eieio-custom nvp-cedet
warnings nvp-local nvp-install nvp-macros semantic/tag-file nvp-c++
semantic/db-file data-debug cedet-files semantic/bovine/c
semantic/decorate/include semantic/decorate/mode semantic/decorate pulse
hideif semantic/bovine/c-by semantic/lex-spp semantic/bovine/gcc
semantic/dep semantic/bovine semantic/analyze/refs semantic/db-find
semantic/db-ref semantic/analyze semantic/sort semantic/scope
semantic/analyze/fcn semantic/db-mode semantic/db eieio-base
semantic/idle semantic/format semantic/tag-ls semantic/find
semantic/ctxt semantic/util-modes semantic/util semantic semantic/tag
semantic/lex semantic/fw mode-local cedet irony-completion irony-snippet
irony google-c-style nvp-c el-pophelp nvp-sh sh-tools sh-script smie
nvp-compilation compile hippie-expand-auto hippie-exp eieio-opt speedbar
sb-image ezimage dframe nvp-help config-utils ace-window diary-lib
diary-loaddefs cal-iso solar cal-dst cal-move parse-time executable
nvp-general org-indent org-bullets nvp-outline org-rmail org-mhe org-irc
org-info org-gnus org-docview doc-view jka-compr nvp-image image-mode
dired org-bibtex bibtex org-bbdb org-w3m nvp-org ob-shell ob-J ob-latex
ob-scheme ob-C cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles
cc-align cc-engine cc-vars cc-defs ob-matlab ob-octave ob-css ob-dot
ob-ruby ob-python ob-clojure ob-scala ob-perl ob-js ob-sh ob-R
org-agenda org-element avl-tree org org-macro org-footnote org-pcomplete
org-list org-faces org-entities noutline outline org-version
ob-emacs-lisp ob ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp
ob-comint tramp tramp-compat auth-source gnus-util mm-util help-fns
mail-prsvr password-cache tramp-loaddefs trampver ucs-normalize ob-core
ob-eval org-compat org-macs org-loaddefs format-spec cal-menu calendar
cal-loaddefs recentf tree-widget company-shell subr-x nvp nvp-shell
bash-completion shell-tools expand shell pcomplete comint ansi-color
nvp-ext vc-git diff-mode easy-mmode nvp-files company-elisp find-func
auto-compile packed highlight-quoted nvp-emacs-lisp cl-lib-highlight
elisp-utils nvp-snippet nvp-paredit paredit linum nvp-init
nvp-mode-hooks ido-vertical-mode flx-ido flx ido-ubiquitous
ido-completing-read+ cus-edit cus-start cus-load wid-edit avy smex ido
company-statistics company-files company-keywords company-etags etags
xref project eieio eieio-core company-gtags company-template
company-dabbrev-code company-dabbrev company-capf company-quickhelp
pos-tip company yasnippet edmacro kmacro move-text cl-seq
smartparens-config smartparens thingatpt dash hydra lv diminish
moe-theme powerline powerline-separators color powerline-themes
gruvbox-theme cl-macs smooth-scrolling two-column server cap-words
superword subword autorevert filenotify winner ring delsel paren
saveplace savehist finder-inf info package epg-config seq byte-opt gv
bytecomp byte-compile cl-extra help-mode easymenu cconv cl-loaddefs
pcase cl-lib advice time-date mule-util tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment
elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan
thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian
slovak czech european ethiopic indian cyrillic chinese charscript
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote dbusbind inotify
dynamic-setting system-font-setting font-render-setting xwidget-internal
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 1242952 1728825)
(symbols 48 53851 285)
(miscs 40 2873 6433)
(strings 32 199328 343978)
(string-bytes 1 5363942)
(vectors 16 102940)
(vector-slots 8 1378077 291988)
(floats 8 1808 4966)
(intervals 56 12207 4383)
(buffers 976 53)
(heap 1024 186788 60313))




Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

martin rudalics
 > Calling `x-hide-tip` always returns nil (it is documented to
 > return t when the tooltip is active). I noticed this after
 > recently compiling with gtk3. I was using `x-hide-tip` in
 > a toggling function that stopped toggling. As an example
 > of what currently doesn't work:
 >
 > (defun toggle-tip ()
 >     (interactive)
 >     (or (x-hide-tip)
 >       (pos-tip-show "hi")))
 >
 >
 > In GNU Emacs 25.1.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9)
 > of 2016-11-07 built on nverno-M51AC
 > Windowing system distributor 'The X.Org Foundation', version 11.0.11803000
 > System Description: Ubuntu 16.04.1 LTS
 >
 > Configured using:
 > 'configure --with-x-toolkit=gtk3 --with-modules --with-xwidgets'

Thanks for the report.  I think that before investigating this further
we need another recipe.  Yours is based on ‘pos-tip-show’ which is not
part of Emacs.  Does ‘pos-tip-show’ use GTK+ tooltips or the native
Emacs ones - what is your value of ‘x-gtk-use-system-tooltips’?

Then we would have to decide how to retrieve a non-nil return value for
‘x-hide-tip’ in the first place.  Here the tooltip disappears
immediately when I type anything, so the return value is always nil by
force, presumably.  We'd probably need a timer to test your function.

Finally, we would have to check the results for the function you get
this way for both ‘x-gtk-use-system-tooltips’ nil/t settings and for at
least one other toolkit.

Can you please try doing all that?

Thanks again, martin




Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

Eli Zaretskii
> Date: Tue, 08 Nov 2016 08:23:08 +0100
> From: martin rudalics <[hidden email]>
>
> Thanks for the report.  I think that before investigating this further
> we need another recipe.  Yours is based on ‘pos-tip-show’ which is not
> part of Emacs.  Does ‘pos-tip-show’ use GTK+ tooltips or the native
> Emacs ones - what is your value of ‘x-gtk-use-system-tooltips’?
>
> Then we would have to decide how to retrieve a non-nil return value for
> ‘x-hide-tip’ in the first place.  Here the tooltip disappears
> immediately when I type anything, so the return value is always nil by
> force, presumably.  We'd probably need a timer to test your function.
>
> Finally, we would have to check the results for the function you get
> this way for both ‘x-gtk-use-system-tooltips’ nil/t settings and for at
> least one other toolkit.
>
> Can you please try doing all that?

Martin, did you try this on master or on the emacs-25 branch?  I think
there's an omission in the Emacs 25.1 code, which the OP is running,
that is already fixed on master.  For emacs-25, the following patch
should at least bring you closer to the solution, if not be the
solution:

diff --git a/src/xfns.c b/src/xfns.c
index 7c1bb1c..a6d8980 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -6120,7 +6120,10 @@ Value is t if tooltip was open, nil otherwise.  */)
        the tip is shown.  */
     struct frame *f = XFRAME (frame);
     if (FRAME_LIVE_P (f) && xg_hide_tooltip (f))
-      frame = Qnil;
+      {
+ frame = Qnil;
+ deleted = Qt;
+      }
   }
 #endif
 



Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

martin rudalics
 > Martin, did you try this on master or on the emacs-25 branch?

On master.  The OP's build time was more recent than mine ;-)

 > I think
 > there's an omission in the Emacs 25.1 code, which the OP is running,
 > that is already fixed on master.  For emacs-25, the following patch
 > should at least bring you closer to the solution,

Emacs-25?  This bug is more than six years old.

 > if not be the
 > solution:

It fixes the problem here.  nverno, can you please test whether it fixes
the problem for you too?  Then Eli will decide whether we can apply the
fix to Emacs 25.  If we can't, you'll have to check this out on master.

Thanks, martin



Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

Eli Zaretskii
> Date: Tue, 08 Nov 2016 17:41:19 +0100
> From: martin rudalics <[hidden email]>
> CC: [hidden email], [hidden email]
>
>  > Martin, did you try this on master or on the emacs-25 branch?
>
> On master.  The OP's build time was more recent than mine ;-)
>
>  > I think
>  > there's an omission in the Emacs 25.1 code, which the OP is running,
>  > that is already fixed on master.  For emacs-25, the following patch
>  > should at least bring you closer to the solution,
>
> Emacs-25?  This bug is more than six years old.

I meant the branch, not the release.  I'm not sure we should fix it in
25.2, given the age of the bug.

Thanks.



Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

nverno
I will try to give it a shot shortly and report back.  My value of 'x-gtk-use-system-tooltips’
was 't'.  Sorry I had focused on 'x-hide-tip' and forget 'pos-tip' wasn't part of emacs.

Thanks!

On Tue, Nov 8, 2016 at 11:47 AM, Eli Zaretskii <[hidden email]> wrote:
> Date: Tue, 08 Nov 2016 17:41:19 +0100
> From: martin rudalics <[hidden email]>
> CC: [hidden email], [hidden email]
>
>  > Martin, did you try this on master or on the emacs-25 branch?
>
> On master.  The OP's build time was more recent than mine ;-)
>
>  > I think
>  > there's an omission in the Emacs 25.1 code, which the OP is running,
>  > that is already fixed on master.  For emacs-25, the following patch
>  > should at least bring you closer to the solution,
>
> Emacs-25?  This bug is more than six years old.

I meant the branch, not the release.  I'm not sure we should fix it in
25.2, given the age of the bug.

Thanks.

Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

nverno
I can confirm that Eli's patch fixed the above problem on my end.  `x-hide-tip` now returns true when there is a tooltip active.

Thanks all

On Tue, Nov 8, 2016 at 1:33 PM, Noah Peart <[hidden email]> wrote:
I will try to give it a shot shortly and report back.  My value of 'x-gtk-use-system-tooltips’
was 't'.  Sorry I had focused on 'x-hide-tip' and forget 'pos-tip' wasn't part of emacs.

Thanks!

On Tue, Nov 8, 2016 at 11:47 AM, Eli Zaretskii <[hidden email]> wrote:
> Date: Tue, 08 Nov 2016 17:41:19 +0100
> From: martin rudalics <[hidden email]>
> CC: [hidden email], [hidden email]
>
>  > Martin, did you try this on master or on the emacs-25 branch?
>
> On master.  The OP's build time was more recent than mine ;-)
>
>  > I think
>  > there's an omission in the Emacs 25.1 code, which the OP is running,
>  > that is already fixed on master.  For emacs-25, the following patch
>  > should at least bring you closer to the solution,
>
> Emacs-25?  This bug is more than six years old.

I meant the branch, not the release.  I'm not sure we should fix it in
25.2, given the age of the bug.

Thanks.


Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

nverno
I think there might be another problem with the patch though.  There seems to be a problem when setting `x-gtk-use-system-tooltips` variable to nil. 

I think that `x-show-tip` respects this variable with

`if (x_gtk_use_system_tooltips)`

but `x-hide-tip` does not.  So, the tooltip is created but can't be destroyed.

Thanks

On Tue, Nov 8, 2016 at 2:13 PM, Noah Peart <[hidden email]> wrote:
I can confirm that Eli's patch fixed the above problem on my end.  `x-hide-tip` now returns true when there is a tooltip active.

Thanks all

On Tue, Nov 8, 2016 at 1:33 PM, Noah Peart <[hidden email]> wrote:
I will try to give it a shot shortly and report back.  My value of 'x-gtk-use-system-tooltips’
was 't'.  Sorry I had focused on 'x-hide-tip' and forget 'pos-tip' wasn't part of emacs.

Thanks!

On Tue, Nov 8, 2016 at 11:47 AM, Eli Zaretskii <[hidden email]> wrote:
> Date: Tue, 08 Nov 2016 17:41:19 +0100
> From: martin rudalics <[hidden email]>
> CC: [hidden email], [hidden email]
>
>  > Martin, did you try this on master or on the emacs-25 branch?
>
> On master.  The OP's build time was more recent than mine ;-)
>
>  > I think
>  > there's an omission in the Emacs 25.1 code, which the OP is running,
>  > that is already fixed on master.  For emacs-25, the following patch
>  > should at least bring you closer to the solution,
>
> Emacs-25?  This bug is more than six years old.

I meant the branch, not the release.  I'm not sure we should fix it in
25.2, given the age of the bug.

Thanks.



Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

martin rudalics
 > I think there might be another problem with the patch though.  There seems
 > to be a problem when setting `x-gtk-use-system-tooltips` variable to nil.
 >
 > I think that `x-show-tip` respects this variable with
 >
 > `if (x_gtk_use_system_tooltips)`
 >
 > but `x-hide-tip` does not.  So, the tooltip is created but can't be
 > destroyed.

The patch wouldn't change anything in this regard.  The tooltip will be
destroyed as with any other toolkit.  On Emacs-26 you can alternatively
hide it via ‘tooltip-reuse-hidden-frame’.

martin




Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

nverno
Ah, yes, I had left in the first `frame = Qnil;`.  Oops!  Sorry for the noise.
Thanks

On Wed, Nov 9, 2016 at 2:00 AM, martin rudalics <[hidden email]> wrote:
> I think there might be another problem with the patch though.  There seems
> to be a problem when setting `x-gtk-use-system-tooltips` variable to nil.
>
> I think that `x-show-tip` respects this variable with
>
> `if (x_gtk_use_system_tooltips)`
>
> but `x-hide-tip` does not.  So, the tooltip is created but can't be
> destroyed.

The patch wouldn't change anything in this regard.  The tooltip will be
destroyed as with any other toolkit.  On Emacs-26 you can alternatively
hide it via ‘tooltip-reuse-hidden-frame’.

martin


Reply | Threaded
Open this post in threaded view
|

bug#24899: 25.1; x-hide-tip always returns nil with USE_GTK

martin rudalics
In reply to this post by nverno
 > Calling `x-hide-tip` always returns nil (it is documented to
 > return t when the tooltip is active). I noticed this after
 > recently compiling with gtk3. I was using `x-hide-tip` in
 > a toggling function that stopped toggling. As an example
 > of what currently doesn't work:
 >
 > (defun toggle-tip ()
 >     (interactive)
 >     (or (x-hide-tip)
 >       (pos-tip-show "hi")))

This should work with Emacs 26 so I'm closing this bug.

Thanks, martin