[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#21732: 25.0.50; intermittent failure using windmove when in doc-view
From: |
martin rudalics |
Subject: |
bug#21732: 25.0.50; intermittent failure using windmove when in doc-view buffer |
Date: |
Mon, 09 Nov 2015 09:26:50 +0100 |
> To reproduce:
> 1. Start emacs from master with -Q.
> 2. (require 'windmove) and set `windmove-wrap-around' to t.
> 3. Split the window horizontally, then vertically.
> 4. Display a pdf with doc-view in the buffer at the bottom right.
> 4. Use `windmove-left' or `windmove-right' into the frame border.
What does "into the frame border" mean here?
> See the attached image to get an idea of what step #2 means (in this case, I'm
> running `windmove-right', which only produces an error after I follow the
above
> steps; normally, it works just fine). I'm running graphical emacs on arch
linux
> in X. The error only occurs for the affected doc-view buffer; it does not
affect
> other doc-view buffers.
At the time you invoke ‘windmove-right’ and it fails the doc-view window
is selected. Correct? What does
M-: (window-in-direction 'right nil nil nil t) RET
in the doc-view window give? And what do
M-: (window-in-direction 'right nil nil -1 t) RET
and
M-: (window-in-direction 'right nil nil 1 t) RET
give?
>> Alternatively, you could try to add the function ‘window-in-direction’ (in
>> window.el) temporarily to your .emacs.
>
> Added the revised version to .emacs and evaluated. The `when' clause was
always
> nil because `my-value' was always a positive number (this is on the window
> erroring out when running windmove-left/right), but here's the value
> `my-variable` it would have been set to if the `when' clause was true:
>
> ("window: #<window 4 on *Minibuf-1*> direction : above sign: nil wrap: nil
mini:
> nil posn-cons: (234 . 0)" "window: #<window 8 on project_guidelines.pdf>
> direction : right sign: nil wrap: t mini: t posn-cons: (965 . 1011)")
IIRC the problem is that we have to trace the case where ‘my-value’ is
negative. So these values are probably not useful.
martin