mbrlabs / Lorien

Infinite canvas drawing/whiteboarding app for Windows, Linux and macOS. Made with Godot.
MIT License
5.55k stars 241 forks source link

The KeyBindingsList dialog tries to connect to non-existent signals #178

Closed mbrlabs closed 2 years ago

mbrlabs commented 2 years ago

Lorien version: main branch, b0172563905b9959a91992e11ca26772f357384e

OS/device including version: Windows 11

Issue description: Many errors (66) of this kind:

E 0:00:01.142   Object::connect: In Object of type 'Label': Attempt to connect nonexistent signal 'bind_new_key' to method 'Control._bind_new_key'.
  <C++ Error>   Condition "!signal_is_valid" is true. Returned: ERR_INVALID_PARAMETER
  <C++ Source>  core\object.cpp:1462 @ Object::connect()
  <Stack Trace> KeyBindingsList.gd:47 @ _new_keybinding_entry()
                KeyBindingsList.gd:29 @ _populate_input_list()
                KeyBindingsList.gd:12 @ _ready()

Which happens in here: https://github.com/mbrlabs/Lorien/blob/b0172563905b9959a91992e11ca26772f357384e/lorien/UI/Dialogs/KeyBindingsList.gd#L46-L47

It doesn't seem to have any negative effects though in a debug build. We should check if the child is the right type/node before trying to connect the signal. @MrApplejuice

Steps to reproduce: Just launch Lorien in the editor and observe the Debugger error tab