Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ivy-completion-in-region and overlays (hl-line-mode, flycheck) #1016

Open
Sarcasm opened this issue May 18, 2017 · 8 comments

Comments

@Sarcasm
Copy link
Contributor

commented May 18, 2017

Hello,

When using hl-line-mode (I have global-hl-line-mode enabled in my config), the rendering of the in buffer completions take the face of the current line, see:

image

In this screenshot, one can also see the flycheck error face also propagates through the results.

Is it a known issue with a known workaround?
I attempted to modify ivy-display-function without success.

@abo-abo

This comment has been minimized.

Copy link
Owner

commented May 18, 2017

Is it a known issue with a known workaround?

I've seen it from time to time, also with show-paren-mode, I think. I'll try to fix it, but can't say it will be soon.

@Sarcasm

This comment has been minimized.

Copy link
Contributor Author

commented May 18, 2017

Ok, no problem, I understand that this may be difficult to implement.
It's definitely nice to have, but I can live without.

@basil-conto

This comment has been minimized.

Copy link
Collaborator

commented Nov 27, 2018

Does you still see the issue after commit 7434a79?

basil-conto added a commit to basil-conto/swiper that referenced this issue Nov 27, 2018
ivy-overlay.el: Simplify overlay face overriding
This is a refactor of the following commit:

ivy-overlay.el (ivy-overlay-show-after): Don't inherit existing face
  2018-11-27 12:31:32 +0100 7434a79

(ivy--overlay-font-lock-hack): Remove.
(ivy-overlay-show-after): Specify default face of ivy-overlay-at to
avoid clashing with other overlays.

Re: abo-abo#1016, abo-abo#1488, abo-abo#1520, abo-abo#1547, abo-abo#1808
@Sarcasm

This comment has been minimized.

Copy link
Contributor Author

commented Nov 27, 2018

It looks better now, but I have the feeling that the global-hl-line-mode overlay is now at the bottom of the candidate list, instead of on the candidate line:

In the screenshot below, you can see the last line message-supersede has the line overlay, it should be the line with the cursor (mes|) that is highlighted.

image

@mookid

This comment has been minimized.

Copy link
Contributor

commented Dec 18, 2018

@Sarcasm can you still reproduce this?

I fail to do so on make plain with hl-line-mode activated.

@basil-conto

This comment has been minimized.

Copy link
Collaborator

commented Dec 18, 2018

  1. make plain
  2. M-xhl-line-modeRET
  3. C-o
  4. (mesC-M-i

hl-line-mode

Reproducible with at least Emacs versions 25-27.

@abo-abo

This comment has been minimized.

Copy link
Owner

commented Dec 18, 2018

@basil-conto Can't reproduce on 26.1 with make plain. The hl-line overlay simply goes away.

@basil-conto

This comment has been minimized.

Copy link
Collaborator

commented Dec 19, 2018

@abo-abo Are you sure you're typing C-o first so that the cimpletion is not performed at the end of the buffer? Here's what I mean:

  1. make emacs=emacs26 plain

  2. M-xhl-line-modeRET

    2

    Note the lack of an overlay because we are at EOB.

  3. (mes

    3

    Note the overlay does not extend past point because we are at EOB.

  4. C-M-i

    4

    Note the overlay disappears because we are at EOB.

  5. C-gC-o

    5

    Note the overlay extends past point because we are no longer at EOB.

  6. C-M-i

    6

    Note the overlay extends past the in-buffer completions because we are no longer at EOB.

Reproduced with the following Emacs versions:

In GNU Emacs 25.2.1 (x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2018-08-27, modified by Debian built on x86-csail-01
Windowing system distributor 'The X.Org Foundation', version 11.0.12003000
System Description:	Debian GNU/Linux buster/sid

In GNU Emacs 26.1.90 (build 2, x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2018-12-19 built on thunk
Repository revision: ab8ed418596da550c79913ccc42e8c3842bca315
Windowing system distributor 'The X.Org Foundation', version 11.0.12003000
System Description:	Debian GNU/Linux buster/sid

In GNU Emacs 27.0.50 (build 91, x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2018-12-17 built on thunk
Repository revision: 2f65525774b6e7edf119db678c9eb78cbb84de6a
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12003000
System Description: Debian GNU/Linux buster/sid
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants
You can’t perform that action at this time.