nickguletskii / GLXOSD

GLXOSD is an extensible on-screen display (OSD)/overlay for OpenGL applications running on Linux with X11 which aims to provide similar functionality to MSI Afterburner/RivaTuner OSD. It can show FPS, frame timings, temperatures and more in OpenGL games and applications. It can also be used to benchmark games, much like voglperf.
https://glxosd.nickguletskii.com
MIT License
123 stars 20 forks source link

Implement main key modifier none #78

Closed licaon-kter closed 8 years ago

licaon-kter commented 8 years ago

I would like to use a plain key say F10, although the text/error says:

The field modifiers in OSD plugin configuration.toggle_key_combo didn't pass validation:
A key combo's modifier list must be an array that consists of zero or more of the following
strings: shift, alt, caps, control
stack traceback:
        /usr/share/glxosd///glxosd/util/util.lua:24: in function 'log_error'
        /usr/share/glxosd///glxosd/ConfigurationManager.lua:59: in function 'validation_error'
        /usr/share/glxosd///glxosd/ConfigurationManager.lua:102: in function 'check_schema'
        /usr/share/glxosd///glxosd/ConfigurationManager.lua:115: in function 'check_schema'
        /usr/share/glxosd///glxosd/plugins/OSD/OSD.lua:87: in function 'new'
        /usr/share/glxosd///glxosd/Context.lua:104: in function 'new'
        /usr/share/glxosd///glxosd/Main.lua:48: in function '__index'
        /usr/share/glxosd///glxosd/Main.lua:99: in function </usr/share/glxosd///glxosd/Main.lua:94>

Setting modifiers={"X"} where X is empty string or "none" or "nil" will crash glxosd.

The solution now is to have it as modifiers={} aka delete quotes too.

nickguletskii commented 8 years ago

This is the only logical notation for no modifiers because {} is an empty set.