Is ParameterInfoHandler a backend or frontend extension?

I’m debugging why my ParameterInfoHandler is not working in split-mode.

It’s currently implemented on the backend.
But I’m wondering if that’s correct. I’m not sure because it needs to fetch data from the backend and also updates UI (which would be frontend).

I’m seeing calls to com.intellij.lang.parameterInfo.ParameterInfoHandler#updateUI on the backend, but nothing shows up. I can’t debug the IDE’s frontend part of this because I don’t know how to attach a debugger to the frontend :frowning:

I’ve also added a workaround for the different threading, https://youtrack.jetbrains.com/issue/IJPL-244386/ParameterInfoHandler-in-split-mode-is-called-on-EDT
The extension is not listed on Frontend, Backend, and Shared APIs | IntelliJ Platform Plugin SDK

Must I implement this myself on the frontend with a custom RPC service or is the IDE supposed to handle this automatically?

Giving up on debugging for now.

The last I can see is a call to BackendParameterInfoController.showHint(requestFocus: false, singleParmaterInfo: false), which does not have sources available. After that nothing is shown and I’m unable to find out why.

The descriptors set to the controller are my own.

First of all, if you are struggling with debug, please see the Split Mode (Remote Development) | IntelliJ Platform Plugin SDK . TLDR convenient debug is available starting 2.14 gradle plugin version, kindly update and generate run configurations via a dedicated task.

as for the specific API, I see there is an existing bridge in the platform that assumes your implementation is on the backend, and it is transferred automatically. Yet it seems to be really dated. May I ask to file an issue in our youtrack for that please?

https://youtrack.jetbrains.com/newIssue?project=IJPL&c=Assignee+RemDev_Developer&c=QA+anastasia.shishkina&c=Development+Mode+Remote+Development&c=Subsystem+Code.+Highlighting

Thanks!

Reported at https://youtrack.jetbrains.com/issue/IJPL-244511/Custom-ParameterInfoHandler-not-working-in-split-mode, I’m not sure if the template link worked like it should have.