Skip to content

editor.hover.delay setting not used by new windows #571

Closed
@per1234

Description

@per1234

Describe the problem

When the mouse pointer is hovered over a code item, a pop up called the "editor hover" appears that provides information supplied by the language server about that item:

image

The "editor hover" appears after a delay. The timing of this delay is critical to the user experience of the IDE. Too short of a delay will result in distracting unintentional appearances of the hover caused by the mouse pointer passing over random bits of code. Too long of a delay will make the hover annoyingly unresponsive. The appropriate delay duration is subjective and the default 300 ms will not be to the liking of some users. This can be adjusted according to their preference via the editor.hover.delay setting in the IDE's advanced settings.

🐛 The editor.hover.delay configuration setting is not used to determine hover delay duration after opening a new IDE window.

To reproduce

  1. Start the Arduino IDE.
  2. Set a custom editor.hover.delay value in ~/.arduinoIDE/settings.json and save the file. For example, to set the delay to 5000 ms:
    {
     "editor.hover.delay": 5000
    }
  3. Select a board supported by the Arduino Language Server from the Tools > Board menu (e.g., Arduino Uno).
  4. Open a sketch that contains code that will produce a hover:
    void setup() {}
    void loop() {}
  5. Wait for the building and indexing processes (indicated at the bottom right corner of the Arduino IDE window) to finish.
  6. Hover the mouse pointer over the relevant code (e.g., the setup in the demo sketch above) and wait for the hover UI element to appear.
    🙂 The delay between the start of hovering the mouse pointer over the code and the appearance of the hover UI element matches the custom editor.hover.delay setting.
  7. Select File > New from the Arduino IDE menus.
    Note: the issue is not specific to File > New. It occurs any time a new window is opened, including when opening existing sketches or restarting the IDE.
  8. Repeat steps 3-6.
    🐛 This time the hover delay is the default 300 ms rather than the expected custom duration.

Expected behavior

Hover delay duration is always according by the editor.hover.delay setting.

Arduino IDE version

Original report

2.0.0-beta.12-nightly.20211021

Last verified with

2.0.1-snapshot-96cf09d

Operating system

Windows, Linux

Operating system version

Windows 10, Ubuntu 20.04

Additional context

The same bug also occurs with the editor.scrollbar.scrollByPage and editor.find.addExtraSpaceOnTop settings.

The bug does not occur with the editor.autoClosingBrackets and editor.dragAndDrop settings.

I did not do a comprehensive survey, but I note the keys of affected settings have three levels while the unaffected have two levels.


I can reproduce the bug in Theia Blueprint 1.25.0 (the version of Theia currently used by Arduino IDE) and 1.29.0 (the latest version).

I can not reproduce the bug in VS Code.


Originally reported at https://forum.arduino.cc/t/issues-with-pop-up-info/698527/6

Issue checklist

  • I searched for previous requests in the issue tracker
  • I verified the feature was still missing when using the latest nightly build
  • My request contains all necessary details

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions