M quantum/via.c => quantum/via.c +1 -1
@@ 111,7 111,7 @@ void via_init(void) {
if (via_eeprom_is_valid()) {
} else {
// This resets the layout options
- via_set_layout_options(0);
+ via_set_layout_options(VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT);
// This resets the keymaps in EEPROM to what is in flash.
dynamic_keymap_reset();
// This resets the macros in EEPROM to nothing.
M quantum/via.h => quantum/via.h +8 -0
@@ 37,6 37,14 @@
# define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 1
#endif
+// Allow override of the layout options default value.
+// This requires advanced knowledge of how VIA stores layout options
+// and is only really useful for setting a boolean layout option
+// state to true by default.
+#ifndef VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT
+# define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x00000000
+#endif
+
// The end of the EEPROM memory used by VIA
// By default, dynamic keymaps will start at this if there is no
// custom config