withfig / fig

Public issue tracker for Fig.
https://fig.io
MIT License
2.06k stars 63 forks source link

Autocomplete renders in the wrong place #2058

Open admapop opened 1 year ago

admapop commented 1 year ago

Checks

Operating system

macOS 12.3.1 (21E258)

Expected behaviour

When the autocomplete window appears it should be next to what I am typing

Actual behaviour

When the autocomplete window appears it is in a completely different place. Could be on the same screen but far away from where I'm typing, same screen but completely random or even on a completely different screen.

Where I'm typing image

Where it's showing, completely random on a different screen.

image

Steps to reproduce

Start up IntelliJ IDEA, open a terminal and start typing.

Environment

fig-details:
  - 2.7.9
hardware-info:
  - model: 
  - model-id: 
  - chip-id: Apple M1 Pro
  - cores: 10
  - mem: 16.00 GB
os-info:
  - macOS 12.3.1 (21E258)
environment:
  - shell: /bin/zsh
  - terminal: intellij
  - cwd: 
  - exe-path: /Users/admapop/.fig/bin/fig
  - install-method: unknown
  - env-vars:
    - FIGTERM_SESSION_ID: b85e4d02-3d2f-4475-862b-979d20b13b79
    - FIG_HOSTNAME: Adrians-MacBook-Pro.local
    - FIG_TERM: 2.7.9
    - PATH: 
    - SHELL: /bin/zsh
    - TERM: xterm-256color
    - FIG_PID: 99906
    - FIG_PARENT: b85e4d02-3d2f-4475-862b-979d20b13b79
    - FIG_SET_PARENT: b85e4d02-3d2f-4475-862b-979d20b13b79
mschrage commented 1 year ago

Hey @admapop, how did you install the JetBrains IDE you are using? This could be related to #2018.

admapop commented 1 year ago

Hey @mschrage I installed it via its own .dmg file, didn't use any Toolbox or installer.

One thing I can add is that it happens more often if I switch between fullscreen mode and windowed mode. Wildshot but I'm using magnet for window management.

richardcase commented 1 year ago

I am encountering this when using Kitty.

JasonTheAdams commented 1 year ago

I've also started having this issue on MacOS since the latest update. I have PhpStorm running on one monitor, and when I type in the terminal on that screen the Fig pop sometimes displays in the exact bottom-left corner of my main monitor.

JasonTheAdams commented 1 year ago

To be clear, for me this is an intermittent issue. I just opened PhpStorm back up and the popup is in the correct place. I didn't update anything. I just opened it back up for work today; it wasn't working yesterday, it is today. Gotta love these kinds of bugs. πŸ˜…

onkr0d commented 1 year ago

Having the same issue with fig 2.9.0, macOS 13.0.1 (22A400). Started happening after I installed Rectangle, which is similar to @admapop's Magnet.

Specifically, it happens only on my secondary monitor, not the main (laptop) one. Intellij installed from Toolbox, but that hasn't been an issue for me previously.

tomhendra commented 1 year ago

πŸ‘‹ Another Kitty user here experiencing the same issue.

squili commented 1 year ago

I'm no longer working at Fig, maybe @grant0417 can take a look

grant0417 commented 1 year ago

This should be resolved now in Fig 2.10, let me know if you continue to have any issues!

onkr0d commented 1 year ago

Nope, the issue still persists. It is probably related to #2109.

grant0417 commented 1 year ago

Can you make sure to restart both Fig and intellij

tomhendra commented 1 year ago

The issue persists with Fig v2.10.1 when using Kitty, after restarting both.

richardcase commented 1 year ago

This should be resolved now in Fig 2.10, let me know if you continue to have any issues!

I'm still getting this issue in kitty with 2.10.1

grant0417 commented 1 year ago

Did not realize this was an issue on Kitty, thought it was only Jetbrains.

If you are having this issue with Kitty can you share the output of the following:

tomhendra commented 1 year ago
~ 
❯ kitty --version           
kitty 0.26.5 created by Kovid Goyal
~ 
❯ echo $__CFBundleIdentifier
net.kovidgoyal.kitty
~ 
❯ fig debug input-method
Installed? true
TISInputSource {
    bundle_id: Some(
        "io.fig.cursor",
    ),
    input_source_id: Some(
        "io.fig.cursor",
    ),
    input_source_category: Some(
        "TISCategoryPaletteInputSource",
    ),
    input_source_is_enabled: Some(
        true,
    ),
    input_source_is_selected: Some(
        true,
    ),
    localized_name: Some(
        "FigInputMethod",
    ),
    input_mode_id: None,
    category_keyboard: None,
}
~ 
grant0417 commented 1 year ago

Hey @tomhendra can you also run fig doctor --verbose

tomhendra commented 1 year ago

Sure can, @grant0417. Here you go.

Let's check if you're logged in... βœ” Logged into Fig

Let's check your dotfiles... βœ” ~/.bashrc contains valid fig hooks βœ” ~/.profile contains valid fig hooks βœ” ~/.zshrc contains valid fig hooks βœ” ~/.zprofile contains valid fig hooks

Let's make sure Fig is setup correctly... βœ” Fig bin exists βœ” PATH contains ~/.local/bin βœ” PATH contains ~/.fig/bin βœ” Settings Corruption βœ” State Corruption βœ” Fig Integration βœ” SSH integration

Let's make sure Fig is running... βœ” Fig is running βœ” Fig socket exists βœ” Daemon ✘ Daemon diagnostics: Daemon websocket error Fig error: <!DOCTYPE html>

Error
Cannot GET /authenticate/ticket

(status: 404 Not Found)

Let's see if Fig is in a working state... βœ” Figterm βœ” Insertion lock does not exist βœ” Autocomplete dev mode βœ” Plugin dev mode βœ” Dashboard is loading from the correct URL βœ” Autocomplete is loading from the correct URL

Let's check if your system is compatible... βœ” OS is supported βœ” Fish is up to date βœ” Jetbrains Toolbox Check

Let's check fig diagnostic... βœ” Compatible shell βœ” Fig app installed in the right place βœ” Autocomplete is enabled βœ” Fig CLI path βœ” Accessibility enabled

Let's check your terminal integrations... βœ” Terminal support βœ” Input Method

mschrage commented 1 year ago

@tomhendra can you share a screen recording of the behavior? To confirm, the autocomplete window appears with the correct suggestions but it is simply located in the wrong place on the screen?

Does Fig autocomplete work as expected in other terminals, like iTerm or the native terminal app?

tomhendra commented 1 year ago

@mschrage the autocomplete window appears on my MBP screen, while the Kitty window I am using is on an external display. I have supplied two separate screen recordings as I can't seem to find a way to record both screens at the same time.

https://user-images.githubusercontent.com/32566274/208620118-1b48ccb2-6ab7-4be9-83a7-62538db1738d.mp4

It seems that the native terminal and iTerm2 work as expected.

https://user-images.githubusercontent.com/32566274/208620276-3e8707aa-e771-40d4-9c1b-3745e6cb99ac.mp4

Hope this helps.

grant0417 commented 1 year ago

That does help, seems that kitty might be reporting the coordinates relative to the local screen, could you try alacritty to see if it works in a similar manor?

@mschrage is this an error with our IME logic or kitty?

tomhendra commented 1 year ago

@grant0417 I can confirm the issue is present with alacritty.

mschrage commented 1 year ago

This could definitely be an issue with the IME (or how we process the cursor coordinates reported by the IME). If this is the case, it would explain the JetBrains bug reports as well.

I don't have a monitor that I can use to test this right now, but perhaps @chaynabors can try to reproduce in the office,

github-actions[bot] commented 1 year ago

This issue has been automatically closed because there has been no activity for 14 days.

tomhendra commented 1 year ago

Did you good folks manage to get any further with the Kitty issue? β€”Sorry to be a pest!

grant0417 commented 1 year ago

Do you use an external monitor/secondary @tomhendra? That might have been an issue with kitty.

tomhendra commented 1 year ago

Thanks for reopening this @grant0417. Yes that is exactly the problem I haveβ€”with the secondary monitor.

github-actions[bot] commented 1 year ago

This issue has been automatically closed because there has been no activity for 14 days.

grant0417 commented 1 year ago

@tomhendra that should be resolved in 2.11 which will be release in a week or two.

grant0417 commented 1 year ago

2.11 is live, please let me know if this version resolves your issues

richardcase commented 1 year ago

Hi @grant0417 - i have upgraded to 2.11 and i'm still encountering the issue with kitty.

tomhendra commented 1 year ago

Hello @grant0417, it works on my machine... Thank you!

If I can be of any more use with diagnostics or whatever to get things working for Richard, I'd be happy to help.

richardcase commented 1 year ago

ScreenFlow

I ran fig doctor --verbose:

➜ fig doctor --verbose
Let's check if you're logged in...
βœ” Logged into Fig

Let's check your dotfiles...
βœ” bash ~/.bashrc integration check
βœ” bash ~/.profile integration check
βœ” bash ~/.bash_profile integration check
βœ” zsh ~/.zshrc integration check
βœ” zsh ~/.zprofile integration check

Let's make sure Fig is setup correctly...
βœ” Fig bin exists
βœ” PATH contains ~/.local/bin
βœ” PATH contains ~/.fig/bin
βœ” Settings Corruption
βœ” State Corruption
βœ” Fig Integration
βœ” SSH integration

Let's make sure Fig is running...
βœ” Fig is running
βœ” Fig socket exists
βœ” Daemon
βœ” Daemon diagnostics

Let's see if Fig is in a working state...
βœ” Figterm
βœ” Insertion lock does not exist
βœ” Autocomplete dev mode
βœ” Plugin dev mode
βœ” Dashboard is loading from the correct URL
βœ” Autocomplete is loading from the correct URL

Let's check if your system is compatible...
βœ” OS is supported
βœ” Fish is up to date
βœ” Jetbrains Toolbox Check

Let's check fig diagnostic...
βœ” Compatible shell
βœ” Fig app installed in the right place
βœ” Autocomplete is enabled
βœ” Fig CLI path
βœ” Accessibility enabled

Let's check your terminal integrations...
βœ” Terminal support
βœ” Input Method
mschrage commented 1 year ago

@richardcase can you run echo $__CFBundleIdentifier inside of Kitty and share the output?

Also can you run fig debug logs in a separate terminal session and record both terminal windows as you type into kitty?

richardcase commented 1 year ago

Thanks @mschrage.

Here you go:

net.kovidgoyal.kitty

And the 2 terminals recording (kitty and the standard mac terminal):

2terminals

I saved the fig debug log to this gist: https://gist.github.com/richardcase/4c1a59a4b789ed9beeda93666060ead4

Let me know if there is anything i can do to help (i love ❀️ fig by the way)

mschrage commented 1 year ago

Hey @richardcase! Glad to hear you're liking Fig :)

Strange request: can you try quitting Microsoft Teams and seeing if this helps?

richardcase commented 1 year ago

@mschrage - i quit teams and it still does it.

I will run some tests to confirm, but I think I get the error when I do this:

And i think it works if i do this:

I will run some tests to see if ^^^^^ is true and confirm back.

admapop commented 1 year ago

I'm still encountering this issue with IntelliJ on the latest version.

EDIT: Actually a new day, and the issue seems to have disappeared with IntelliJ at least!

gcstr commented 1 year ago

Fig v2.12.0 and kitty 0.26.5 and the issue is present

freddygv commented 1 year ago

Also running into issues with Fig 2.14.2, kitty 0.27.1, and MacOS 12.6.3

If I use the built-in terminal the autocomplete shows up in the correct location, but with kitty it always shows up in the bottom left corner of my external monitor. Even if Kitty is in my laptop's screen.

~ 
❯ kitty --version
kitty 0.27.1 created by Kovid Goyal

~ 
❯ echo $__CFBundleIdentifier
net.kovidgoyal.kitty

~ 
❯ fig debug input-method
Installed? true
TISInputSource {
    bundle_id: Some(
        "io.fig.cursor",
    ),
    input_source_id: Some(
        "io.fig.cursor",
    ),
    input_source_category: Some(
        "TISCategoryPaletteInputSource",
    ),
    input_source_is_enabled: Some(
        true,
    ),
    input_source_is_selected: Some(
        true,
    ),
    localized_name: Some(
        "FigInputMethod",
    ),
    input_mode_id: None,
    category_keyboard: None,
}

~ 
❯ fig doctor --verbose
Let's check if you're logged in...
βœ” Logged into Fig

Let's check your dotfiles...
βœ” bash ~/.bashrc integration check
βœ” bash ~/.profile integration check
βœ” zsh ~/.zshrc integration check
βœ” zsh ~/.zprofile integration check

Let's make sure Fig is setup correctly...
βœ” Fig bin exists
βœ” PATH contains ~/.local/bin
βœ” PATH contains ~/.fig/bin
βœ” Settings Corruption
βœ” State Corruption
βœ” Fig Integration
βœ” SSH integration

Let's make sure Fig is running...
βœ” Fig is running
βœ” Fig socket exists
βœ” Daemon
βœ” Daemon diagnostics

Let's see if Fig is in a working state...
βœ” Figterm
βœ” Insertion lock does not exist
βœ” Autocomplete dev mode
βœ” Plugin dev mode
βœ” Dashboard is loading from the correct URL
βœ” Autocomplete is loading from the correct URL

Let's check if your system is compatible...
βœ” OS is supported
βœ” Fish is up to date
βœ” Jetbrains Toolbox Check

Let's check fig diagnostic...
βœ” Compatible shell
βœ” Fig app installed in the right place
βœ” Autocomplete is enabled
βœ” Fig CLI path
βœ” Accessibility enabled

Let's check your terminal integrations...
βœ” Terminal support
βœ” Input Method
nanonandi commented 1 year ago

Same as @freddygv for me, always in the bottom left corner Fig 2.14.2 Kitty 0.27.1

b4lk0n commented 11 months ago

I'm facing the same issue with kitty - autocomplete always appears in the bottom left corner of a display

> fig --version
fig_cli 2.17.0

> kitty --version
kitty 0.31.0 created by Kovid Goyal

> echo $__CFBundleIdentifier
net.kovidgoyal.kitty

> fig debug input-method
Installed? true
TISInputSource {
    bundle_id: Some(
        "io.fig.cursor",
    ),
    input_source_id: Some(
        "io.fig.cursor",
    ),
    input_source_category: Some(
        "TISCategoryPaletteInputSource",
    ),
    input_source_is_enabled: Some(
        true,
    ),
    input_source_is_selected: Some(
        true,
    ),
    localized_name: Some(
        "FigInputMethod",
    ),
    input_mode_id: None,
    category_keyboard: None,
}
krissh-the-dev commented 11 months ago

Facing the exact same issue mentioned by @b4lk0n with IntelliJ IDEA.

oilcake commented 8 months ago

I still have this issue with all terminal emulators besides iTerm2. MacOS Catalina.

carlitos081 commented 8 months ago

I have this issue too on mac with Intellij terminal