Razor Chroma Support - Initial version (#1054)

* Razor Chroma Support - Initial version

* Address clang and lgtm findings

* Razer Fixes

* Merge branch 'master' into Razer_Chroma_Support

# Conflicts:
#	assets/webconfig/i18n/en.json
#	assets/webconfig/js/content_leds.js
#	libsrc/leddevice/dev_net/ProviderRestApi.cpp
#	libsrc/leddevice/dev_net/ProviderRestApi.h

* Corrections

* Set default config for Razer

* Simplify

* Razer - Support individual LEDs and have default layout per device type

* Differentiate between HWLEDCount and LayoutLEDCount

* Revert "Differentiate between HWLEDCount and LayoutLEDCount"

This reverts commit b147b215a5.

* Correct LGTM finding

* Disable verbose mode
This commit is contained in:
LordGrey
2021-11-17 19:34:49 +00:00
committed by GitHub
parent 25d79a9f3f
commit 67280b8566
9 changed files with 888 additions and 68 deletions

View File

@@ -1,4 +1,3 @@
var ledsCustomCfgInitialized = false;
var onLedLayoutTab = false;
var nonBlacklistLedArray = [];
var ledBlacklist = [];
@@ -13,7 +12,7 @@ var canvas_width;
var devRPiSPI = ['apa102', 'apa104', 'ws2801', 'lpd6803', 'lpd8806', 'p9813', 'sk6812spi', 'sk6822spi', 'sk9822', 'ws2812spi'];
var devRPiPWM = ['ws281x'];
var devRPiGPIO = ['piblaster'];
var devNET = ['atmoorb', 'cololight', 'fadecandy', 'philipshue', 'nanoleaf', 'tinkerforge', 'tpm2net', 'udpe131', 'udpartnet', 'udph801', 'udpraw', 'wled', 'yeelight'];
var devNET = ['atmoorb', 'cololight', 'fadecandy', 'philipshue', 'nanoleaf', 'razer', 'tinkerforge', 'tpm2net', 'udpe131', 'udpartnet', 'udph801', 'udpraw', 'wled', 'yeelight'];
var devSerial = ['adalight', 'dmx', 'atmo', 'sedu', 'tpm2', 'karate'];
var devHID = ['hyperionusbasp', 'lightpack', 'paintpack', 'rawhid'];
@@ -614,10 +613,7 @@ $(document).ready(function () {
var target = $(e.target).attr("href") // activated tab
if (target == "#menu_gencfg") {
onLedLayoutTab = true;
if (!ledsCustomCfgInitialized) {
$('#leds_custom_updsim').trigger('click');
ledsCustomCfgInitialized = true;
}
$('#leds_custom_updsim').trigger('click');
} else {
onLedLayoutTab = false;
}
@@ -777,6 +773,16 @@ $(document).ready(function () {
colorOrderDefault = "rgb";
break;
case "razer":
conf_editor.getEditor("root.generalOptions").disable();
hwLedCountDefault = 1;
colorOrderDefault = "bgr";
var subType = conf_editor.getEditor("root.specificOptions.subType").getValue();
let params = { subType: subType };
getProperties_device(ledType, subType, params);
break;
default:
}
@@ -1012,6 +1018,19 @@ $(document).ready(function () {
}
});
conf_editor.watch('root.specificOptions.subType', () => {
var subType = conf_editor.getEditor("root.specificOptions.subType").getValue();
let params = {};
switch (ledType) {
case "razer":
params = { subType: subType };
getProperties_device(ledType, subType, params);
break;
default:
}
});
conf_editor.watch('root.specificOptions.token', () => {
var token = conf_editor.getEditor("root.specificOptions.token").getValue();
@@ -1612,7 +1631,7 @@ function updateElements(ledType, key) {
var maxLedCount = ledProperties.maxLedCount
if (hardwareLedCount > maxLedCount)
{
showInfoDialog('warning', $.i18n("conf_leds_config_warning"), $.i18n('conf_leds_error_hwled_gt_maxled', hardwareLedCount, maxLedCount, maxLedCount));
showInfoDialog('warning', $.i18n("conf_leds_config_warning"), $.i18n('conf_leds_error_hwled_gt_maxled', hardwareLedCount, maxLedCount, maxLedCount));
hardwareLedCount = maxLedCount;
}
}
@@ -1665,6 +1684,18 @@ function updateElements(ledType, key) {
}
break;
case "razer":
var ledProperties = devicesProperties[ledType][key];
if (ledProperties) {
conf_editor.getEditor("root.generalOptions.hardwareLedCount").setValue(ledProperties.maxLedCount);
$("#ip_ma_ledshoriz").val(ledProperties.maxColumn);
$("#ip_ma_ledsvert").val(ledProperties.maxRow);
$("#ip_ma_cabling").val("parallel");
$("#ip_ma_start").val("top-left");
createMatrixLeds();
}
break;
default:
}
}