Skip to content

Commit

Permalink
Fixed a bug in Razer caching
Browse files Browse the repository at this point in the history
  • Loading branch information
latenitefilms committed Nov 3, 2021
1 parent b12de49 commit 987c89b
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 11 deletions.
18 changes: 13 additions & 5 deletions src/plugins/core/razer/manager/init.lua
Original file line number Diff line number Diff line change
Expand Up @@ -272,21 +272,30 @@ local function setStatusLights(device, orange, green, blue)
end
end

--- plugins.core.razer.manager.refresh() -> none
--- plugins.core.razer.manager.refresh(trashCache) -> none
--- Function
--- Refreshes the LEDs on a Razer device.
---
--- Parameters:
--- * None
--- * trashCache - an optional boolean to trash the LED cache
---
--- Returns:
--- * None
function mod.refresh()
function mod.refresh(trashCache)
for _, device in pairs(mod.devices) do
--------------------------------------------------------------------------------
-- Get settings from preferences:
-- Check if we should trash the cache:
--------------------------------------------------------------------------------
local deviceName = device:name()
if trashCache then
cachedStatusLights[deviceName] = {}
cachedCustomColors[deviceName] = {}
cachedLedMode[deviceName] = ""
end

--------------------------------------------------------------------------------
-- Get settings from preferences:
--------------------------------------------------------------------------------
local backlightsMode = mod.backlightsMode()
local currentMode = backlightsMode[deviceName]

Expand Down Expand Up @@ -686,7 +695,6 @@ local function deviceCallback(connected, device)
--------------------------------------------------------------------------------
cachedStatusLights[deviceName] = {}
cachedCustomColors[deviceName] = {}

cachedLedMode[deviceName] = ""

--------------------------------------------------------------------------------
Expand Down
12 changes: 6 additions & 6 deletions src/plugins/core/razer/prefs/init.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1367,7 +1367,7 @@ function plugin.init(deps, env)
local backlightsMode = mod._razerManager.backlightsMode()
backlightsMode[device] = params.value
mod._razerManager.backlightsMode(backlightsMode)
mod._razerManager.refresh()
mod._razerManager.refresh(true)
end,
}
)
Expand Down Expand Up @@ -1413,7 +1413,7 @@ function plugin.init(deps, env)
local backlightBrightness = mod._razerManager.backlightBrightness()
backlightBrightness[device] = params.value
mod._razerManager.backlightBrightness(backlightBrightness)
mod._razerManager.refresh()
mod._razerManager.refresh(true)
end,
}
)
Expand All @@ -1432,7 +1432,7 @@ function plugin.init(deps, env)
local backlightEffectColorA = mod._razerManager.backlightEffectColorA()
backlightEffectColorA[device] = params.value
mod._razerManager.backlightEffectColorA(backlightEffectColorA)
mod._razerManager.refresh()
mod._razerManager.refresh(true)
end,
}
)
Expand All @@ -1451,7 +1451,7 @@ function plugin.init(deps, env)
local backlightEffectColorB = mod._razerManager.backlightEffectColorB()
backlightEffectColorB[device] = params.value
mod._razerManager.backlightEffectColorB(backlightEffectColorB)
mod._razerManager.refresh()
mod._razerManager.refresh(true)
end,
}
)
Expand All @@ -1478,7 +1478,7 @@ function plugin.init(deps, env)
local backlightEffectDirection = mod._razerManager.backlightEffectDirection()
backlightEffectDirection[device] = params.value
mod._razerManager.backlightEffectDirection(backlightEffectDirection)
mod._razerManager.refresh()
mod._razerManager.refresh(true)
end,
}
)
Expand Down Expand Up @@ -1534,7 +1534,7 @@ function plugin.init(deps, env)
local backlightEffectSpeed = mod._razerManager.backlightEffectSpeed()
backlightEffectSpeed[device] = params.value
mod._razerManager.backlightEffectSpeed(backlightEffectSpeed)
mod._razerManager.refresh()
mod._razerManager.refresh(true)
end,
}
)
Expand Down

0 comments on commit 987c89b

Please sign in to comment.