unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#44375: Always give a message when flashing the screen
@ 2020-11-01 19:32 積丹尼 Dan Jacobson
  2020-11-01 21:26 ` Stefan Kangas
  0 siblings, 1 reply; 7+ messages in thread
From: 積丹尼 Dan Jacobson @ 2020-11-01 19:32 UTC (permalink / raw)
  To: 44375

Always give a message when flashing the screen. See e.g., bug 44340
(Archived rather fast.)





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44375: Always give a message when flashing the screen
  2020-11-01 19:32 bug#44375: Always give a message when flashing the screen 積丹尼 Dan Jacobson
@ 2020-11-01 21:26 ` Stefan Kangas
  2020-11-01 21:48   ` 積丹尼 Dan Jacobson
  0 siblings, 1 reply; 7+ messages in thread
From: Stefan Kangas @ 2020-11-01 21:26 UTC (permalink / raw)
  To: 積丹尼 Dan Jacobson, 44375

積丹尼 Dan Jacobson <jidanni@jidanni.org> writes:

> Always give a message when flashing the screen. See e.g., bug 44340
> (Archived rather fast.)

I have no idea what any of the above means.

What is the bug?





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44375: Always give a message when flashing the screen
  2020-11-01 21:26 ` Stefan Kangas
@ 2020-11-01 21:48   ` 積丹尼 Dan Jacobson
  2020-11-02 16:01     ` Lars Ingebrigtsen
  0 siblings, 1 reply; 7+ messages in thread
From: 積丹尼 Dan Jacobson @ 2020-11-01 21:48 UTC (permalink / raw)
  To: Stefan Kangas; +Cc: 44375

In http://debbugs.gnu.org/cgi/bugreport.cgi?bug=44340 one can see how to
produce a [Show] button.

If the user just clicks it, the screen flashes.

Instead there should be a message printed at the bottom of the screen.

"Don't just click me. I need to be specially clicked: with the middle
button to work."

The above is a case of where flashing should be replaced by a message.

I think most of the cases where emacs just flashes like this, leaving
the user puzzled, have been found already. But there still may be others.





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44375: Always give a message when flashing the screen
  2020-11-01 21:48   ` 積丹尼 Dan Jacobson
@ 2020-11-02 16:01     ` Lars Ingebrigtsen
  2020-11-02 16:24       ` Lars Ingebrigtsen
  0 siblings, 1 reply; 7+ messages in thread
From: Lars Ingebrigtsen @ 2020-11-02 16:01 UTC (permalink / raw)
  To: 積丹尼 Dan Jacobson; +Cc: 44375, Stefan Kangas

積丹尼 Dan Jacobson <jidanni@jidanni.org> writes:

> In http://debbugs.gnu.org/cgi/bugreport.cgi?bug=44340 one can see how to
> produce a [Show] button.
>
> If the user just clicks it, the screen flashes.

I'm now sure what's this is about.  Clicking any links (with mouse-1) in
the *Help* buffer here dings my Emacs, and this is the backtrace I'm
getting if I instrument `ding':

Debugger entered--entering a function:
* ding()
  pop-mark()
  #f(compiled-function () #<bytecode 0xb41ff211354d205>)()
  #f(compiled-function () #<bytecode 0x1b178ae04d6865b2>)()
  clear-transient-map()

I don't have a recipe to reproduce it, though -- In this Emacs I can do
`M-x describe-face RET default RET' and then mouse-1 on the "faces.el"
button, and Emacs will ding me before taking me to the faces.el file.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44375: Always give a message when flashing the screen
  2020-11-02 16:01     ` Lars Ingebrigtsen
@ 2020-11-02 16:24       ` Lars Ingebrigtsen
  2020-11-02 16:26         ` Lars Ingebrigtsen
  0 siblings, 1 reply; 7+ messages in thread
From: Lars Ingebrigtsen @ 2020-11-02 16:24 UTC (permalink / raw)
  To: 積丹尼 Dan Jacobson; +Cc: 44375, Stefan Kangas

Lars Ingebrigtsen <larsi@gnus.org> writes:

> I don't have a recipe to reproduce it, though -- In this Emacs I can do
> `M-x describe-face RET default RET' and then mouse-1 on the "faces.el"
> button, and Emacs will ding me before taking me to the faces.el file.

I still don't have a recipe -- it seems to happen after having done an
unspecified number of actions in the *Help* buffer.  The thing that's
dinging is this, though:

(defun mouse-drag-track (start-event)

[...]

     t (lambda ()
         (setq track-mouse old-track-mouse)
         (setq auto-hscroll-mode auto-hscroll-mode-saved)
         (deactivate-mark)
         (pop-mark)))))

When the pop-mark is called (mark t) is non-nil.  pop-mark is just this:

(defun pop-mark ()
  "Pop off mark ring into the buffer's actual mark.
Does not set point.  Does nothing if mark ring is empty."
  (when mark-ring
    (setq mark-ring (nconc mark-ring (list (copy-marker (mark-marker)))))
    (set-marker (mark-marker) (car mark-ring))
    (set-marker (car mark-ring) nil)
    (unless (mark t) (ding))
    (pop mark-ring))
  (deactivate-mark))

(mark t) is nil here, so it dings.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44375: Always give a message when flashing the screen
  2020-11-02 16:24       ` Lars Ingebrigtsen
@ 2020-11-02 16:26         ` Lars Ingebrigtsen
  2021-09-08 10:22           ` Lars Ingebrigtsen
  0 siblings, 1 reply; 7+ messages in thread
From: Lars Ingebrigtsen @ 2020-11-02 16:26 UTC (permalink / raw)
  To: 積丹尼 Dan Jacobson; +Cc: 44375, Stefan Kangas

Lars Ingebrigtsen <larsi@gnus.org> writes:

> (defun pop-mark ()
>   "Pop off mark ring into the buffer's actual mark.
> Does not set point.  Does nothing if mark ring is empty."
>   (when mark-ring
>     (setq mark-ring (nconc mark-ring (list (copy-marker (mark-marker)))))
>     (set-marker (mark-marker) (car mark-ring))

And this is the bit that unsets the mark -- the first entry in mark-ring
is a mark that points to no buffer.

Is it obvious to anybody what's going wrong here?  :-)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44375: Always give a message when flashing the screen
  2020-11-02 16:26         ` Lars Ingebrigtsen
@ 2021-09-08 10:22           ` Lars Ingebrigtsen
  0 siblings, 0 replies; 7+ messages in thread
From: Lars Ingebrigtsen @ 2021-09-08 10:22 UTC (permalink / raw)
  To: 積丹尼 Dan Jacobson; +Cc: 44375, Stefan Kangas

Lars Ingebrigtsen <larsi@gnus.org> writes:

> Is it obvious to anybody what's going wrong here?  :-)

The `ding' in `pop-mark' has been there since the function was first
written, but there doesn't really seem to be a reason to ding at the
user in this case, so I've removed the ding.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-09-08 10:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-01 19:32 bug#44375: Always give a message when flashing the screen 積丹尼 Dan Jacobson
2020-11-01 21:26 ` Stefan Kangas
2020-11-01 21:48   ` 積丹尼 Dan Jacobson
2020-11-02 16:01     ` Lars Ingebrigtsen
2020-11-02 16:24       ` Lars Ingebrigtsen
2020-11-02 16:26         ` Lars Ingebrigtsen
2021-09-08 10:22           ` Lars Ingebrigtsen

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).