Quantcast

-Updated skins for macro menu,trainers and some addon docks to adjust bad sizing/layering.

failcoder [12-25-15 - 00:36]
-Updated skins for macro menu,trainers and some addon docks to adjust bad sizing/layering.

-Adjusted size and anchors for auto-popup quest notifications in the quest tracker

-Fixed and adjusted raid/party/raidpet frame layout anchoring. They will no longer scatter when removing groups or showing labels

-Adjusted raid debuff appearances. Icons will properly hide name text when shown to keep the frames from being unreadably cluttered. Colored overlays are FAR less overpowering now and will properly color the frame border .

-Fixed several issues with tooltips when mousing over units that for one reason or another are not yet broadcasting their name/class/level etc... this was causing terrible errors.

-Fixed several token readouts in data texts (reports). Conquest for example will now properly display week max values.

-Adjusted the way that capture bars are handled and anchored. They were dancing around the screen before.

-Made many logical changes to dock functionality. (internal)
Filename
SVUI_!Core/SVUI_!Core.toc
SVUI_!Core/system/_docklets/misc.lua
SVUI_!Core/system/_reports/tokens.lua
SVUI_!Core/system/overrides.lua
SVUI_!Options/SVUI_!Options.toc
SVUI_ActionBars/SVUI_ActionBars.toc
SVUI_Auras/SVUI_Auras.toc
SVUI_Chat/SVUI_Chat.lua
SVUI_Chat/SVUI_Chat.toc
SVUI_Inventory/SVUI_Inventory.toc
SVUI_Maps/SVUI_Maps.toc
SVUI_NamePlates/SVUI_NamePlates.toc
SVUI_QuestTracker/SVUI_QuestTracker.toc
SVUI_QuestTracker/components/achievements.lua
SVUI_QuestTracker/components/active.lua
SVUI_QuestTracker/components/popups.lua
SVUI_QuestTracker/components/quests.lua
SVUI_Skins/SVUI_Skins.toc
SVUI_Skins/components/blizzard/macro.lua
SVUI_Skins/components/blizzard/trainer.lua
SVUI_Skins/components/docklet.lua
SVUI_Tooltip/SVUI_Tooltip.lua
SVUI_Tooltip/SVUI_Tooltip.toc
SVUI_UnitFrames/SVUI_UnitFrames.toc
SVUI_UnitFrames/elements/misc.lua
SVUI_UnitFrames/groups.lua
SVUI_UnitFrames/libs/Plugins/oUF_Afflicted/oUF_Afflicted.lua
SVUI_UnitFrames/libs/Plugins/oUF_RaidDebuffs/oUF_RaidDebuffs.lua
diff --git a/SVUI_!Core/SVUI_!Core.toc b/SVUI_!Core/SVUI_!Core.toc
index ba01ac7..cb2ff49 100644
--- a/SVUI_!Core/SVUI_!Core.toc
+++ b/SVUI_!Core/SVUI_!Core.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cff00FF00!Core|r
 ## Notes: SVUI [|cff9911FFCore Framework|r].
 ## SavedVariables: SVUI_Global, SVUI_Errors, SVUI_Filters, SVUI_Media, SVUI_Shared
diff --git a/SVUI_!Core/system/_docklets/misc.lua b/SVUI_!Core/system/_docklets/misc.lua
index 8186cf2..6cc80ef 100644
--- a/SVUI_!Core/system/_docklets/misc.lua
+++ b/SVUI_!Core/system/_docklets/misc.lua
@@ -288,8 +288,6 @@ local PowerButton_OnEnter = function(self)
 end

 local function LoadMiscTools()
-	if(MOD.MiscToolsLoaded) then return end
-
 	if(InCombatLockdown()) then
 		MOD.MiscNeedsUpdate = true;
 		MOD:RegisterEvent("PLAYER_REGEN_ENABLED");
@@ -299,7 +297,7 @@ local function LoadMiscTools()
 	-- HEARTH BUTTON
 	HEARTH_HEADER = GetHearthOption(6948);

-	if(SV.db.Dock.dockTools.hearth) then
+	if(SV.db.Dock.dockTools.hearth and (not SVUI_Hearth)) then
 		if(HEARTH_HEADER and type(HEARTH_HEADER) == "string") then
 			local hearth = SV.Dock:SetDockButton("BottomLeft", HEARTH_HEADER, "SVUI_Hearth", SV.media.dock.hearthIcon, Hearth_OnEnter, "SecureActionButtonTemplate")
 			hearth.Icon:SetTexCoord(0,0.5,0,1)
@@ -313,7 +311,7 @@ local function LoadMiscTools()
 	end

 	-- SPEC BUTTON
-	if(SV.db.Dock.dockTools.specswap) then
+	if(SV.db.Dock.dockTools.specswap and (not SVUI_SpecSwap)) then
 		local numSpecGroups = GetNumSpecGroups()
 		if(numSpecGroups and numSpecGroups == 2) then
 			local specSwap = SV.Dock:SetDockButton("BottomLeft", L["Spec Swap"], "SVUI_SpecSwap", SV.media.dock.specSwapIcon, SpecSwap_OnEnter)
@@ -322,7 +320,7 @@ local function LoadMiscTools()
 	end

 	-- POWER BUTTON
-	if(SV.db.Dock.dockTools.power) then
+	if(SV.db.Dock.dockTools.power and (not SVUI_PowerButton)) then
 		local power = SV.Dock:SetDockButton("BottomLeft", L["Power Button"], "SVUI_PowerButton", SV.media.dock.powerIcon, PowerButton_OnEnter)
 		power:SetClickCallbacks(PowerButton_OnLeftClick, PowerButton_OnRightClick);
 	end
@@ -335,7 +333,6 @@ BUILD/UPDATE
 ##########################################################
 ]]--
 function MOD:UpdateMiscTools()
-	if(self.MiscToolsLoaded) then return end
 	LoadMiscTools()
 end

diff --git a/SVUI_!Core/system/_reports/tokens.lua b/SVUI_!Core/system/_reports/tokens.lua
index 6dac58d..ffeb17f 100644
--- a/SVUI_!Core/system/_reports/tokens.lua
+++ b/SVUI_!Core/system/_reports/tokens.lua
@@ -118,6 +118,7 @@ local function CacheTokenData(self)
 end

 local function TokenInquiry(id, weekly, capped)
+  --name, amount, texturePath, earnedThisWeek, weeklyMax, totalMax, isDiscovered = GetCurrencyInfo(id)
   local name, amount, tex, week, weekmax, maxed, discovered = GetCurrencyInfo(id)
   local r, g, b = 1, 1, 1
   for i = 1, GetNumWatchedTokens() do
@@ -129,7 +130,8 @@ local function TokenInquiry(id, weekly, capped)
   if weekly then
     if discovered then
       if id == 390 then
-        altStr = ("Current: %d | Weekly: %d / %d"):format(amount, week, weekmax)
+        local pointsThisWeek, maxPointsThisWeek = GetPVPRewards();
+        altStr = ("Current: %d | Weekly: %d / %d"):format(amount, pointsThisWeek, maxPointsThisWeek)
       else
         altStr = ("Current: %d / %d | Weekly: %d / %d"):format(amount, maxed, week, weekmax)
       end
@@ -244,6 +246,9 @@ Report.OnEnter = function(self)
 end

 Report.OnInit = function(self)
+  if not IsAddOnLoaded("Blizzard_PVPUI") then
+    LoadAddOn("Blizzard_PVPUI")
+  end
   if(not self.InnerData) then
     self.InnerData = {}
   end
diff --git a/SVUI_!Core/system/overrides.lua b/SVUI_!Core/system/overrides.lua
index d36dc28..a3713a4 100644
--- a/SVUI_!Core/system/overrides.lua
+++ b/SVUI_!Core/system/overrides.lua
@@ -861,15 +861,16 @@ end

 local CaptureBarHandler = function()
 	local lastFrame = SVUI_WorldStateHolder
-	local offset = 0;
+	local offset = "TOP";
+
 	if(NUM_ALWAYS_UP_UI_FRAMES) then
 		for i=1, NUM_ALWAYS_UP_UI_FRAMES do
 			local frame = _G["AlwaysUpFrame"..i]
 			if(frame and frame:IsVisible()) then
 				frame:ClearAllPoints()
-				frame:SetPoint("TOP", lastFrame, "TOP", 0, offset)
+				frame:SetPoint("TOP", lastFrame, offset, 0, 0)
 				lastFrame = frame
-				offset = (-45 * i);
+				offset = "BOTTOM";
 			end
 		end
 	end
@@ -889,9 +890,9 @@ local CaptureBarHandler = function()
 				if(_G[name .. "IndicatorLeft"]) then _G[name .. "IndicatorLeft"]:SetTexture("Interface\\AddOns\\SVUI_!Core\\assets\\textures\\WorldState-CaptureBar") end
 				if(_G[name .. "IndicatorRight"]) then _G[name .. "IndicatorRight"]:SetTexture("Interface\\AddOns\\SVUI_!Core\\assets\\textures\\WorldState-CaptureBar") end
 				frame:ClearAllPoints()
-				frame:SetPoint("TOP", lastFrame, "TOP", 0, offset)
+				frame:SetPoint("TOP", lastFrame, offset, 0, 0)
 				lastFrame = frame
-				offset = (-45 * i);
+				offset = "BOTTOM";
 			end
 		end
 	end
@@ -1028,6 +1029,8 @@ local function SetOverrides()
 	SVUI_WorldStateHolder:SetSize(200, 45)
 	SV:NewAnchor(SVUI_WorldStateHolder, L["Capture Bars"])
 	NewHook("UIParent_ManageFramePositions", CaptureBarHandler)
+	WorldStateAlwaysUpFrame:ClearAllPoints()
+	WorldStateAlwaysUpFrame:SetPoint("TOP",SVUI_WorldStateHolder,"TOP",0,0)

 	SVUI_AltPowerBar:SetSize(128, 50)
 	PlayerPowerBarAlt:ClearAllPoints()
diff --git a/SVUI_!Options/SVUI_!Options.toc b/SVUI_!Options/SVUI_!Options.toc
index 7cabd12..3963851 100644
--- a/SVUI_!Options/SVUI_!Options.toc
+++ b/SVUI_!Options/SVUI_!Options.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cff00FF00!Options|r
 ## Notes: SVUI [|cff9911FFConfig Options|r]
 ## RequiredDeps: SVUI_!Core
diff --git a/SVUI_ActionBars/SVUI_ActionBars.toc b/SVUI_ActionBars/SVUI_ActionBars.toc
index 9912463..02de7a4 100644
--- a/SVUI_ActionBars/SVUI_ActionBars.toc
+++ b/SVUI_ActionBars/SVUI_ActionBars.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Action Bars|r
 ## Notes: Action Bar Plugin for [|cff9911FFSVUI|r].
 ## OptionalDeps: LibSharedMedia-3.0, LibActionButton-1.0
diff --git a/SVUI_Auras/SVUI_Auras.toc b/SVUI_Auras/SVUI_Auras.toc
index be30654..4e2c223 100644
--- a/SVUI_Auras/SVUI_Auras.toc
+++ b/SVUI_Auras/SVUI_Auras.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Auras|r
 ## Notes: Aura Plugin for [|cff9911FFSVUI|r].
 ## OptionalDeps: LibSharedMedia-3.0
diff --git a/SVUI_Chat/SVUI_Chat.lua b/SVUI_Chat/SVUI_Chat.lua
index 971f641..37d4689 100644
--- a/SVUI_Chat/SVUI_Chat.lua
+++ b/SVUI_Chat/SVUI_Chat.lua
@@ -807,6 +807,7 @@ do
 		--chat.Dock:FadeCallback(ChatDock_ResizeCallback, false, true);
 		-------------------------------------------
 		SV:FontManager(chat, "chatdialog", "LEFT")
+		SV:FontManager(editBox, "chatdialog", "LEFT", false, "NONE")
 		SV:FontManager(tabText, "chattab")

 		if(SV.media.shared.font.chatdialog.outline ~= 'NONE' ) then
@@ -1631,7 +1632,7 @@ do
 		NewHook('FCF_OpenNewWindow', _hook_FCF_OpenNewWindow)
 		NewHook('FCF_UnDockFrame', MOD.RefreshChatFrames)
 		NewHook('FCF_DockFrame', _hook_FCF_DockFrame)
-		--NewHook('FCF_OpenTemporaryWindow', _hook_FCF_OpenTemporaryWindow)
+		NewHook('FCF_OpenTemporaryWindow', _hook_FCF_OpenTemporaryWindow)
 		NewHook('ChatEdit_OnEnterPressed', _hook_ChatEditOnEnterKey)
 		NewHook('FCF_SetChatWindowFontSize', _hook_ChatFontUpdate)
 		NewHook(GeneralDockManager, 'SetPoint', _hook_GDMFrameSetPoint)
diff --git a/SVUI_Chat/SVUI_Chat.toc b/SVUI_Chat/SVUI_Chat.toc
index 826fed0..55b698c 100644
--- a/SVUI_Chat/SVUI_Chat.toc
+++ b/SVUI_Chat/SVUI_Chat.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Chat|r
 ## Notes: Chat Plugin for [|cff9911FFSVUI|r].
 ## SavedVariables: SVUI_Global_ChatCache
diff --git a/SVUI_Inventory/SVUI_Inventory.toc b/SVUI_Inventory/SVUI_Inventory.toc
index 7cd23da..186da93 100644
--- a/SVUI_Inventory/SVUI_Inventory.toc
+++ b/SVUI_Inventory/SVUI_Inventory.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Inventory|r
 ## Notes: Inventory Plugin for [|cff9911FFSVUI|r].
 ## SavedVariables: SVUI_LootCache
diff --git a/SVUI_Maps/SVUI_Maps.toc b/SVUI_Maps/SVUI_Maps.toc
index afed44d..34f78fa 100644
--- a/SVUI_Maps/SVUI_Maps.toc
+++ b/SVUI_Maps/SVUI_Maps.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Maps|r
 ## Notes: Maps Plugin for [|cff9911FFSVUI|r].
 ## OptionalDeps: LibSharedMedia-3.0
diff --git a/SVUI_NamePlates/SVUI_NamePlates.toc b/SVUI_NamePlates/SVUI_NamePlates.toc
index 83e7e5d..ac31af9 100644
--- a/SVUI_NamePlates/SVUI_NamePlates.toc
+++ b/SVUI_NamePlates/SVUI_NamePlates.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00NamePlates|r
 ## Notes: NamePlates Plugin for [|cff9911FFSVUI|r].
 ## OptionalDeps: LibSharedMedia-3.0
diff --git a/SVUI_QuestTracker/SVUI_QuestTracker.toc b/SVUI_QuestTracker/SVUI_QuestTracker.toc
index 182e0c3..19b074b 100644
--- a/SVUI_QuestTracker/SVUI_QuestTracker.toc
+++ b/SVUI_QuestTracker/SVUI_QuestTracker.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00QuestTracker|r
 ## Notes: QuestTracker Plugin for [|cff9911FFSVUI|r].
 ## OptionalDeps: LibSharedMedia-3.0
diff --git a/SVUI_QuestTracker/components/achievements.lua b/SVUI_QuestTracker/components/achievements.lua
index 4c2b417..8855f04 100644
--- a/SVUI_QuestTracker/components/achievements.lua
+++ b/SVUI_QuestTracker/components/achievements.lua
@@ -48,6 +48,7 @@ LOCALS
 ]]--
 local ROW_WIDTH = 300;
 local ROW_HEIGHT = 20;
+local QUEST_ROW_HEIGHT = ROW_HEIGHT + 2;
 local INNER_HEIGHT = ROW_HEIGHT - 4;
 local LARGE_ROW_HEIGHT = ROW_HEIGHT * 2;
 local LARGE_INNER_HEIGHT = LARGE_ROW_HEIGHT - 4;
@@ -143,27 +144,31 @@ local GetAchievementRow = function(self, index)
 	if(not self.Rows[index]) then
 		local previousFrame = self.Rows[#self.Rows]
 		local index = #self.Rows + 1;
+		local yOffset = -3;

 		local anchorFrame;
 		if(previousFrame and previousFrame.Objectives) then
 			anchorFrame = previousFrame.Objectives;
+			yOffset = -6;
 		else
 			anchorFrame = self.Header;
 		end

 		local row = CreateFrame("Frame", nil, self)
-		row:SetPoint("TOPLEFT", anchorFrame, "BOTTOMLEFT", 0, -2);
-		row:SetPoint("TOPRIGHT", anchorFrame, "BOTTOMRIGHT", 0, -2);
-		row:SetHeight(ROW_HEIGHT);
+		row:SetPoint("TOPLEFT", anchorFrame, "BOTTOMLEFT", 0, yOffset);
+		row:SetPoint("TOPRIGHT", anchorFrame, "BOTTOMRIGHT", 0, yOffset);
+		row:SetHeight(QUEST_ROW_HEIGHT);

 		row.Badge = CreateFrame("Frame", nil, row)
-		row.Badge:SetPoint("TOPLEFT", row, "TOPLEFT", 2, -2);
-		row.Badge:SetSize(INNER_HEIGHT, INNER_HEIGHT);
-		row.Badge:SetStyle("Frame", "Lite")
+		row.Badge:SetPoint("TOPLEFT", row, "TOPLEFT", 0, 0);
+		row.Badge:SetSize(QUEST_ROW_HEIGHT, QUEST_ROW_HEIGHT);
+		--row.Badge:SetStyle("Frame", "Lite");
+
 		row.Badge.Icon = row.Badge:CreateTexture(nil,"OVERLAY")
 		row.Badge.Icon:SetAllPoints(row.Badge);
 		row.Badge.Icon:SetTexture(LINE_ACHIEVEMENT_ICON)
 		row.Badge.Icon:SetTexCoord(unpack(_G.SVUI_ICON_COORDS))
+
 		row.Badge.Button = CreateFrame("Button", nil, row.Badge)
 		row.Badge.Button:SetAllPoints(row.Badge);
 		row.Badge.Button:SetStyle("LiteButton")
@@ -175,9 +180,10 @@ local GetAchievementRow = function(self, index)
 		row.Badge.Button:SetScript("OnLeave", RowButton_OnLeave)

 		row.Header = CreateFrame("Frame", nil, row)
-		row.Header:SetPoint("TOPLEFT", row.Badge, "TOPRIGHT", 2, 0);
+		row.Header:SetPoint("TOPLEFT", row, "TOPLEFT", (QUEST_ROW_HEIGHT + 6), 0);
 		row.Header:SetPoint("TOPRIGHT", row, "TOPRIGHT", -2, 0);
-		row.Header:SetHeight(INNER_HEIGHT);
+		row.Header:SetHeight(QUEST_ROW_HEIGHT);
+
 		row.Header.Text = row.Header:CreateFontString(nil,"OVERLAY")
 		row.Header.Text:SetFontObject(SVUI_Font_Quest);
 		row.Header.Text:SetJustifyH('LEFT')
@@ -186,8 +192,10 @@ local GetAchievementRow = function(self, index)
 		row.Header.Text:SetPoint("TOPLEFT", row.Header, "TOPLEFT", 4, 0);
 		row.Header.Text:SetPoint("BOTTOMRIGHT", row.Header, "BOTTOMRIGHT", 0, 0);

-		row.Button = CreateFrame("Button", nil, row.Header)
-		row.Button:SetAllPoints(row.Header);
+		row.Button = CreateFrame("Button", nil, row.Header);
+		row.Button:SetPoint("TOPLEFT", row, "TOPLEFT", (QUEST_ROW_HEIGHT + 6), 0);
+		row.Button:SetPoint("TOPRIGHT", row, "TOPRIGHT", -2, 0);
+		row.Button:SetHeight(INNER_HEIGHT + 2);
 		row.Button:SetStyle("LiteButton")
 		row.Button:SetID(0)
 		row.Button:RegisterForClicks("LeftButtonUp", "RightButtonUp")
@@ -334,6 +342,7 @@ end

 local function UpdateAchievementLocals(...)
 	ROW_WIDTH, ROW_HEIGHT, INNER_HEIGHT, LARGE_ROW_HEIGHT, LARGE_INNER_HEIGHT = ...;
+	QUEST_ROW_HEIGHT = ROW_HEIGHT + 2;
 end

 function MOD:InitializeAchievements()
@@ -342,7 +351,7 @@ function MOD:InitializeAchievements()
     local achievements = CreateFrame("Frame", nil, scrollChild)
     achievements:SetWidth(ROW_WIDTH);
 	achievements:SetHeight(ROW_HEIGHT);
-	achievements:SetPoint("TOPLEFT", self.Headers["Quests"], "BOTTOMLEFT", 0, -6);
+	achievements:SetPoint("TOPLEFT", self.Headers["Quests"], "BOTTOMLEFT", 0, -12);

 	achievements.Header = CreateFrame("Frame", nil, achievements)
 	achievements.Header:SetPoint("TOPLEFT", achievements, "TOPLEFT", 2, -2);
diff --git a/SVUI_QuestTracker/components/active.lua b/SVUI_QuestTracker/components/active.lua
index c8012fd..747e914 100644
--- a/SVUI_QuestTracker/components/active.lua
+++ b/SVUI_QuestTracker/components/active.lua
@@ -205,7 +205,8 @@ local SetActiveData = function(self, title, level, icon, questID, questLogIndex,
 		objective_block:FadeIn();
 	end
 	fill_height = fill_height + (LARGE_INNER_HEIGHT + 8);
-	block:SetHeight(fill_height);
+	local padding = block.Details:GetHeight()
+	block:SetHeight(fill_height + padding);

 	MOD.Docklet.ScrollFrame.ScrollBar:SetValue(0);

@@ -319,8 +320,8 @@ end

 function MOD:InitializeActive()
 	local active = CreateFrame("Frame", nil, self.Docklet)
-    active:SetPoint("TOPLEFT", self.Headers["Popups"] , "BOTTOMLEFT", 0, -6);
-    active:SetPoint("TOPRIGHT", self.Headers["Popups"] , "BOTTOMRIGHT", 0, -6);
+    active:SetPoint("TOPLEFT", self.Docklet, "TOPLEFT");
+    active:SetPoint("TOPRIGHT", self.Docklet, "TOPRIGHT");
     active:SetHeight(1);

 	local block = CreateFrame("Frame", nil, active)
diff --git a/SVUI_QuestTracker/components/popups.lua b/SVUI_QuestTracker/components/popups.lua
index 9da7d16..4bfded9 100644
--- a/SVUI_QuestTracker/components/popups.lua
+++ b/SVUI_QuestTracker/components/popups.lua
@@ -195,14 +195,6 @@ end
 CORE FUNCTIONS
 ##########################################################
 ]]--
--- /script TEST_AUTOPOPUPS()
-function TEST_AUTOPOPUPS()
-	local self = MOD.Headers["Popups"];
-	self:SetPopup(0, 'Testing', 'TEST', 1, 1);
-	PlaySound("UI_AutoQuestComplete");
-	self:SetHeight(22)
-	self:FadeIn();
-end

 function MOD:UpdatePopupQuests(event, ...)
 	local questID = ...;
@@ -215,8 +207,8 @@ end

 function MOD:InitializePopups()
 	local popups = CreateFrame("Frame", nil, self.Docklet)
-	popups:SetPoint("TOPLEFT", self.Docklet, "TOPLEFT");
-    popups:SetPoint("TOPRIGHT", self.Docklet, "TOPRIGHT");
+	popups:SetPoint("BOTTOMLEFT", self.Docklet, "TOPLEFT");
+    popups:SetPoint("BOTTOMRIGHT", self.Docklet, "TOPRIGHT");
     popups:SetHeight(1);
 	popups.Rows = {};

diff --git a/SVUI_QuestTracker/components/quests.lua b/SVUI_QuestTracker/components/quests.lua
index 52ca569..dd1e86f 100644
--- a/SVUI_QuestTracker/components/quests.lua
+++ b/SVUI_QuestTracker/components/quests.lua
@@ -1161,6 +1161,7 @@ local function ReAnchorItemBar()
 	local parentWindow = MOD.Docklet.Parent.Window;
 	ItemBar:ClearAllPoints();
 	ItemBar:SetSecurePoint(anchor1, parentWindow, anchor2, xOff, yOff);
+
 	if(isHorizontal) then
 		ItemBar:SetWidth(parentWindow:GetWidth());
 		ItemBar:SetHeight(32);
diff --git a/SVUI_Skins/SVUI_Skins.toc b/SVUI_Skins/SVUI_Skins.toc
index 546fcb0..ef099c9 100644
--- a/SVUI_Skins/SVUI_Skins.toc
+++ b/SVUI_Skins/SVUI_Skins.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch, Azilroka, Sortokk
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Skins|r
 ## Notes: SVUI [|cff9911FFSkins System and AddOn Frames|r].
 ## SavedVariables: SVUIUI_STYLE_GLOBAL
diff --git a/SVUI_Skins/components/blizzard/macro.lua b/SVUI_Skins/components/blizzard/macro.lua
index 5857212..9a0a8e9 100644
--- a/SVUI_Skins/components/blizzard/macro.lua
+++ b/SVUI_Skins/components/blizzard/macro.lua
@@ -75,7 +75,7 @@ local function MacroUIStyle()
 		end
 	end

-	MacroFrameText:SetFont(SV.media.font.default, 10, "OUTLINE")
+	MacroFrameText:SetFont(SV.media.font.default, 12, "NONE")
 	MacroFrameTextBackground:RemoveTextures()
 	MacroFrameTextBackground:SetStyle("Frame", 'Transparent')

diff --git a/SVUI_Skins/components/blizzard/trainer.lua b/SVUI_Skins/components/blizzard/trainer.lua
index fb8b3e1..105e8ff 100644
--- a/SVUI_Skins/components/blizzard/trainer.lua
+++ b/SVUI_Skins/components/blizzard/trainer.lua
@@ -46,14 +46,13 @@ local function TrainerStyle()
 	SV.API:Set("Window", ClassTrainerFrame)

 	for i=1, 8 do
-		_G["ClassTrainerScrollFrameButton"..i]:RemoveTextures()
-		_G["ClassTrainerScrollFrameButton"..i]:SetStyle("!_Frame")
-		--_G["ClassTrainerScrollFrameButton"..i]:SetStyle("Button")
-		_G["ClassTrainerScrollFrameButton"..i.."Icon"]:SetTexCoord(unpack(_G.SVUI_ICON_COORDS))
-		_G["ClassTrainerScrollFrameButton"..i].Panel:WrapPoints(_G["ClassTrainerScrollFrameButton"..i.."Icon"])
-		_G["ClassTrainerScrollFrameButton"..i.."Icon"]:SetParent(_G["ClassTrainerScrollFrameButton"..i].Panel)
-		_G["ClassTrainerScrollFrameButton"..i].selectedTex:SetTexture(1, 1, 1, 0.3)
-		_G["ClassTrainerScrollFrameButton"..i].selectedTex:InsetPoints()
+		local item = _G["ClassTrainerScrollFrameButton"..i];
+		if item then
+			SV.API:Set("ItemButton", item, nil, true)
+			_G["ClassTrainerScrollFrameButton"..i.."Icon"]:SetTexCoord(unpack(_G.SVUI_ICON_COORDS))
+			item.selectedTex:SetTexture(1, 1, 1, 0.3)
+			item.selectedTex:InsetPoints()
+		end
 	end

 	SV.API:Set("ScrollBar", ClassTrainerScrollFrameScrollBar, 5)
diff --git a/SVUI_Skins/components/docklet.lua b/SVUI_Skins/components/docklet.lua
index c4738ca..c59f942 100644
--- a/SVUI_Skins/components/docklet.lua
+++ b/SVUI_Skins/components/docklet.lua
@@ -49,6 +49,11 @@ local DOCK_LISTING = {};
 HELPERS
 ##########################################################
 ]]--
+local function SafeStringFind(request,value)
+	if((not request) or (type(request) == 'table') or (not request.find)) then return false end
+	return request:find(value);
+end
+
 local function RequestEmbedded(addon)
 	local embed1 = SV.private.Docks.Embed1 or "None";
 	local embed2 = SV.private.Docks.Embed2 or "None";
@@ -339,7 +344,7 @@ local DOCK_EmbedAddon = function(self, request)
 	if(not request) then return false end

 	for addon,fn in pairs(DOCK_EMBEDS) do
-		if(request:find(addon)) then
+		if(SafeStringFind(request,addon)) then
 			local activated = fn(self)
 			self.Embedded = addon
 			return activated, addon
@@ -357,12 +362,12 @@ end

 local PARENT_IsEmbedded = function(self, request)
 	if(self.Dock1.Embedded ~= "NONE") then
-		if(request:find(self.Dock1.Embedded)) then
+		if(SafeStringFind(request,self.Dock1.Embedded)) then
 			return true
 		end
 	end
 	if(self.Dock2.Embedded ~= "NONE") then
-		if(request:find(self.Dock2.Embedded)) then
+		if(SafeStringFind(request,self.Dock2.Embedded)) then
 			return true
 		end
 	end
@@ -497,11 +502,11 @@ function MOD:GetAddonDockMenu()
 	local allowed1, allowed2 = false,false;

 	for addon,_ in pairs(DOCK_EMBEDS) do
-		if(addon:find("Skada") and _G.Skada) then
+		if(SafeStringFind(addon,"Skada") and _G.Skada) then
 			for index,window in pairs(_G.Skada:GetWindows()) do
 				local keyName = window.db.name
 			    local key = "SkadaBarWindow" .. keyName
-			    if ((not test1:find(key)) and (not test2:find(key))) then
+			    if ((not SafeStringFind(test1,key)) and (not SafeStringFind(test2,key))) then
 				    local name = (keyName == "Skada") and "Skada - Main" or "Skada - " .. keyName;
 				    if(not allowed1) then
 				    	tinsert(t,{ title = "Set Primary", divider = true });
@@ -511,7 +516,7 @@ function MOD:GetAddonDockMenu()
 				end
 			end
 		else
-			if(IsAddOnLoaded(addon) and (not test1:find(addon)) and (not test2:find(addon))) then
+			if(IsAddOnLoaded(addon) and (not SafeStringFind(test1,addon)) and (not SafeStringFind(test2,addon))) then
 				if(not allowed1) then
 			    	tinsert(t,{ title = "Set Primary", divider = true });
 			    	allowed1 = true;
@@ -522,11 +527,11 @@ function MOD:GetAddonDockMenu()
 	end

 	for addon,_ in pairs(DOCK_EMBEDS) do
-		if(addon:find("Skada") and _G.Skada) then
+		if(SafeStringFind(addon,"Skada") and _G.Skada) then
 			for index,window in pairs(_G.Skada:GetWindows()) do
 				local keyName = window.db.name
 			    local key = "SkadaBarWindow" .. keyName;
-			    if ((not test1:find(key)) and (not test2:find(key))) then
+			    if ((not SafeStringFind(test1,key)) and (not SafeStringFind(test2,key))) then
 				    local name = (keyName == "Skada") and "Skada - Main" or "Skada - " .. keyName;
 				    if(not allowed2) then
 				    	tinsert(t,{ title = "Set Secondary", divider = true });
@@ -536,7 +541,7 @@ function MOD:GetAddonDockMenu()
 				end
 			end
 		else
-			if(IsAddOnLoaded(addon) and (not test1:find(addon)) and (not test2:find(addon))) then
+			if(IsAddOnLoaded(addon) and (not SafeStringFind(test1,addon)) and (not SafeStringFind(test2,addon))) then
 				if(not allowed2) then
 			    	tinsert(t,{ title = "Set Secondary", divider = true });
 			    	allowed2 = true;
diff --git a/SVUI_Tooltip/SVUI_Tooltip.lua b/SVUI_Tooltip/SVUI_Tooltip.lua
index d7e18fa..1124717 100644
--- a/SVUI_Tooltip/SVUI_Tooltip.lua
+++ b/SVUI_Tooltip/SVUI_Tooltip.lua
@@ -368,7 +368,7 @@ local _hook_GameTooltip_OnTooltipSetUnit = function(self)

 	tipcleaner(self)
 	local unitLevel = UnitLevel(unit)
-	local colors, burst, qColor, totColor;
+	local colors, qColor, totColor;
 	local lvlLine;
 	local lineIncrement = 2;
 	local isShiftKeyDown = IsShiftKeyDown()
@@ -380,8 +380,7 @@ local _hook_GameTooltip_OnTooltipSetUnit = function(self)
 		local gender = GENDER[UnitSex(unit)];
 		local realmRelation = UnitRealmRelationship(unit)
 		local nameString = "";
-		colors = RAID_CLASS_COLORS[classToken]
-		burst = CUSTOM_CLASS_COLORS[classToken]
+		colors = RAID_CLASS_COLORS[classToken] or CUSTOM_CLASS_COLORS[classToken] or RAID_CLASS_COLORS['ROGUE']

 		if(PLAYER_INFO) then
 			nameString = UnitPVPName(unit) or unitName
@@ -422,7 +421,7 @@ local _hook_GameTooltip_OnTooltipSetUnit = function(self)

 		lvlLine = tiplevel(self, lineIncrement)

-		if(lvlLine) then
+		if(lvlLine and className) then
 			qColor = GetQuestDifficultyColor(unitLevel)
 			local race, englishRace = UnitRace(unit)
 			local _, factionGroup = UnitFactionGroup(unit)
diff --git a/SVUI_Tooltip/SVUI_Tooltip.toc b/SVUI_Tooltip/SVUI_Tooltip.toc
index b45608d..d124e52 100644
--- a/SVUI_Tooltip/SVUI_Tooltip.toc
+++ b/SVUI_Tooltip/SVUI_Tooltip.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Tooltip|r
 ## Notes: Tooltip Plugin for [|cff9911FFSVUI|r].
 ## OptionalDeps: LibSharedMedia-3.0
diff --git a/SVUI_UnitFrames/SVUI_UnitFrames.toc b/SVUI_UnitFrames/SVUI_UnitFrames.toc
index 157ee00..4aad130 100644
--- a/SVUI_UnitFrames/SVUI_UnitFrames.toc
+++ b/SVUI_UnitFrames/SVUI_UnitFrames.toc
@@ -1,6 +1,6 @@
 ## Interface: 60200
 ## Author: Munglunch
-## Version: 1.2.6
+## Version: 1.2.7
 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00UnitFrames|r
 ## Notes: UnitFrames Plugin for [|cff9911FFSVUI|r].
 ## OptionalDeps: LibSharedMedia-3.0
diff --git a/SVUI_UnitFrames/elements/misc.lua b/SVUI_UnitFrames/elements/misc.lua
index 70393e1..3b898f8 100644
--- a/SVUI_UnitFrames/elements/misc.lua
+++ b/SVUI_UnitFrames/elements/misc.lua
@@ -90,28 +90,31 @@ function MOD:CreateRaidDebuffs(frame)
 	raidDebuff.icon:SetTexCoord(unpack(_G.SVUI_ICON_COORDS))
 	raidDebuff.icon:InsetPoints(raidDebuff)
 	raidDebuff.count = raidDebuff:CreateFontString(nil, "OVERLAY")
-	raidDebuff.count:SetFontObject(SVUI_Font_Aura)
+	raidDebuff.count:SetFontObject(SVUI_Font_UnitAura)
 	raidDebuff.count:SetPoint("BOTTOMRIGHT", 0, 2)
 	raidDebuff.count:SetTextColor(1, .9, 0)
 	raidDebuff.time = raidDebuff:CreateFontString(nil, "OVERLAY")
-	raidDebuff.time:SetFontObject(SVUI_Font_Aura)
+	raidDebuff.time:SetFontObject(SVUI_Font_UnitAura)
 	raidDebuff.time:SetPoint("CENTER")
 	raidDebuff.time:SetTextColor(1, .9, 0)
+	if (frame.TextGrip.Name) then
+		raidDebuff.nameText = frame.TextGrip.Name
+	end
 	return raidDebuff
 end

 function MOD:CreateAfflicted(frame)
 	local afflicted = CreateFrame("Frame", nil, frame.TextGrip)
 	afflicted:SetFrameLevel(30)
-	afflicted:SetPoint("TOPLEFT", frame.Health, "TOPLEFT", 0, 0)
-	afflicted:SetPoint("BOTTOMRIGHT", frame.Health, "BOTTOMRIGHT", 0, 0)
+	afflicted:SetPoint("TOPLEFT", frame.Health, "TOPLEFT", -1, 1)
+	afflicted:SetPoint("BOTTOMRIGHT", frame.Health, "BOTTOMRIGHT", 1, -1)
+	afflicted:SetStyle("!_Frame", "Icon")
 	afflicted.Texture = afflicted:CreateTexture(nil, "OVERLAY", nil, 7)
 	afflicted.Texture:SetAllPoints(afflicted)
 	afflicted.Texture:SetTexture(AFFLICTED_SKIN)
 	afflicted.Texture:SetVertexColor(0, 0, 0, 0)
 	afflicted.Texture:SetBlendMode("ADD")
 	afflicted.ClassFilter = true
-	afflicted.MaxAlpha = 0.8
 	return afflicted
 end
 --[[
diff --git a/SVUI_UnitFrames/groups.lua b/SVUI_UnitFrames/groups.lua
index 1344519..5ef5137 100644
--- a/SVUI_UnitFrames/groups.lua
+++ b/SVUI_UnitFrames/groups.lua
@@ -996,11 +996,15 @@ local GroupConfigure = function(self)
     local UNIT_WIDTH, UNIT_HEIGHT = MOD:GetActiveSize(settings)
     local sorting = settings.showBy
     local sortMethod = settings.sortMethod
-    local widthCalc, heightCalc, xCalc, yCalc = 0, 0, 0, 0;
+    local rows, cols, groupIncrement = 0, 1, 0;
+    local xLabelCalc, yLabelCalc = 0, 0;
     local point, anchorPoint, columnAnchor, horizontal, vertical, isHorizontal = unpack(sortMapping[sorting]);
     local tagPoint1, tagPoint2, mod = unpack(groupTagPoints[sorting]);

-    self.groupCount = groupCount
+    local groupWidth = (isHorizontal) and ((UNIT_WIDTH + settings.wrapXOffset) * 5) or (UNIT_WIDTH + settings.wrapXOffset);
+    local groupHeight = (isHorizontal) and (UNIT_HEIGHT + settings.wrapYOffset) or ((UNIT_HEIGHT + settings.wrapYOffset) * 5);
+
+    self.groupCount = groupCount;

     for i = 1, groupCount do
         local frame = self.groups[i]
@@ -1054,13 +1058,13 @@ local GroupConfigure = function(self)
             if(frame.GroupTag) then
                 if(settings.showGroupNumber) then
                     local x,y = 0,0;
-                    local size = settings.height * 0.65;
+                    local size = settings.height * 0.75;
                     if(isHorizontal) then
                         x,y = (10 * mod),0;
-                        widthCalc = size + 10
+                        xLabelCalc = size + 10
                     else
                         x,y = 0,(10 * mod);
-                        heightCalc = size + 10
+                        yLabelCalc = size + 10
                     end
                     frame.GroupTag:Show()
                     frame.GroupTag:SetSize(size, size)
@@ -1079,55 +1083,35 @@ local GroupConfigure = function(self)
         end

         if(frameEnabled) then
-            if (i - 1) % settings.gRowCol == 0 then
-                if isHorizontal then
-                    if(frame) then
-                        frame:SetPoint(anchorPoint, self, anchorPoint, 0, heightCalc * vertical)
-                    end
-
-                    heightCalc = heightCalc + UNIT_HEIGHT + settings.wrapYOffset;
-                    yCalc = yCalc + 1
-                else
-                    if(frame) then frame:SetPoint(anchorPoint, self, anchorPoint, widthCalc * horizontal, 0) end
-
-                    widthCalc = widthCalc + UNIT_WIDTH + settings.wrapXOffset;
-                    xCalc = xCalc + 1
-                end
+            local yIncrement,yIncrementOffset,xIncrement,xIncrementOffset = 0,0,0,0;
+            if(groupIncrement == 0) then
+                rows = rows + 1;
+                cols = 1;
+                xIncrementOffset = xLabelCalc;
+                yIncrementOffset = yLabelCalc;
+            elseif(groupIncrement % settings.gRowCol == 0) then
+                rows = rows + 1;
+                cols = 1;
+                xIncrement = (isHorizontal) and xLabelCalc or ((groupWidth + xLabelCalc) * cols);
+                yIncrement = (isHorizontal) and ((groupHeight + yLabelCalc) * (rows - 1)) or yLabelCalc;
+                xIncrementOffset = xIncrement;
+                yIncrementOffset = yIncrement;
             else
-                if isHorizontal then
-                    if yCalc == 1 then
-                        if(frame) then
-                            frame:SetPoint(anchorPoint, self, anchorPoint, widthCalc * horizontal, 0)
-                        end
-
-                        widthCalc = widthCalc + (UNIT_WIDTH + settings.wrapXOffset) * 5;
-                        xCalc = xCalc + 1
-                    elseif(frame) then
-                        frame:SetPoint(anchorPoint, self, anchorPoint, (((UNIT_WIDTH + settings.wrapXOffset) * 5) * ((i - 1) % settings.gRowCol)) * horizontal, ((UNIT_HEIGHT + settings.wrapYOffset) * (yCalc - 1)) * vertical)
-                    end
-                else
-                    if xCalc == 1 then
-                        if(frame) then
-                            frame:SetPoint(anchorPoint, self, anchorPoint, 0, heightCalc * vertical)
-                        end
-
-                        heightCalc = heightCalc + (UNIT_HEIGHT + settings.wrapYOffset) * 5;
-                        yCalc = yCalc + 1
-                    elseif(frame) then
-                        frame:SetPoint(anchorPoint, self, anchorPoint, ((UNIT_WIDTH + settings.wrapXOffset) * (xCalc - 1)) * horizontal, (((UNIT_HEIGHT + settings.wrapYOffset) * 5) * ((i - 1) % settings.gRowCol)) * vertical)
-                    end
-                end
+                xIncrementOffset = (groupWidth * cols) + (xLabelCalc * (cols + 1));
+                yIncrementOffset = (groupHeight * (rows - 1)) + (yLabelCalc * rows);
+                cols = cols + 1;
             end

-            if heightCalc == 0 then
-                heightCalc = heightCalc + (UNIT_HEIGHT + settings.wrapYOffset) * 5
-            elseif widthCalc == 0 then
-                widthCalc = widthCalc + (UNIT_WIDTH + settings.wrapXOffset) * 5
-            end
+            groupIncrement = groupIncrement + 1;
+            frame:ClearAllPoints()
+            frame:SetPoint(anchorPoint, self, anchorPoint, xIncrementOffset, yIncrementOffset);
         end
     end

-    self:SetSize(widthCalc - settings.wrapXOffset, heightCalc - settings.wrapYOffset)
+    local widthCalc = ((groupWidth + xLabelCalc) * settings.gRowCol) - settings.wrapXOffset;
+    local heightCalc = ((groupHeight + yLabelCalc) * rows) - settings.wrapYOffset;
+
+    self:SetSize(widthCalc, heightCalc)
 end

 function MOD:GetGroupFrame(token, layout)
@@ -1185,6 +1169,7 @@ function MOD:SetGroupFrame(token, forceUpdate)
         if(not groupFrame.groups[i]) then
             groupName = layout .. "Group" .. i;
             groupFrame.groups[i] = self:SetGroupHeader(groupFrame, i, layout, groupName, token, i)
+            --groupFrame.groups[i]:SetStyle("LiteButton")
             groupFrame.groups[i]:Show()
         end
     end
diff --git a/SVUI_UnitFrames/libs/Plugins/oUF_Afflicted/oUF_Afflicted.lua b/SVUI_UnitFrames/libs/Plugins/oUF_Afflicted/oUF_Afflicted.lua
index fe9ca5b..73a22df 100644
--- a/SVUI_UnitFrames/libs/Plugins/oUF_Afflicted/oUF_Afflicted.lua
+++ b/SVUI_UnitFrames/libs/Plugins/oUF_Afflicted/oUF_Afflicted.lua
@@ -34,7 +34,7 @@ local CanDispel = {
 local AfflictedColor = { };
 AfflictedColor["none"] = { r = 1, g = 0, b = 0 };
 AfflictedColor["Magic"]    = { r = 0, g = 0.4, b = 1 };
-AfflictedColor["Curse"]    = { r = 0.4, g = 0, b = 1 };
+AfflictedColor["Curse"]    = { r = 0.6, g = 0.1, b = 1 };
 AfflictedColor["Disease"]  = { r = 1, g = 0.4, b = 0 };
 AfflictedColor["Poison"]   = { r = 0.4, g = 1, b = 0 };
 AfflictedColor[""] = AfflictedColor["none"];
@@ -121,14 +121,17 @@ local function Update(self, event, unit)
 	local afflicted = self.Afflicted
 	if afflicted.forceShow then
 		local color = AfflictedColor[DEMO_COLORS[random(1,#DEMO_COLORS)]]
-		afflicted.Texture:SetVertexColor(color.r, color.g, color.b, afflicted.MaxAlpha)
+		afflicted.Texture:SetVertexColor(color.r, color.g, color.b, 0.2)
+		afflicted:SetBackdropBorderColor(color.r, color.g, color.b, 0.5)
 	else
 		local debuffType, texture  = GetDebuffType(unit, afflicted.ClassFilter)
 		if debuffType then
 			local color = AfflictedColor[debuffType]
-			afflicted.Texture:SetVertexColor(color.r, color.g, color.b, afflicted.MaxAlpha)
+			afflicted.Texture:SetVertexColor(color.r, color.g, color.b, 0.2)
+			afflicted:SetBackdropBorderColor(color.r, color.g, color.b, 0.5)
 		else
 			afflicted.Texture:SetVertexColor(0,0,0,0)
+			afflicted:SetBackdropBorderColor(0,0,0,0)
 		end
 	end
 end
@@ -138,15 +141,13 @@ local function Enable(self)
 	if(not afflicted) then return end
 	if(afflicted.ClassFilter and (not CanDispel[playerClass])) then return end

-	afflicted.MaxAlpha = afflicted.MaxAlpha or 0.7
-
-  self:RegisterEvent("UNIT_AURA", Update)
-  self:RegisterEvent("PLAYER_TALENT_UPDATE", UpdateTalentSpec)
-  self:RegisterEvent("CHARACTER_POINTS_CHANGED", UpdateTalentSpec)
+	self:RegisterEvent("UNIT_AURA", Update)
+	self:RegisterEvent("PLAYER_TALENT_UPDATE", UpdateTalentSpec)
+	self:RegisterEvent("CHARACTER_POINTS_CHANGED", UpdateTalentSpec)

 	UpdateTalentSpec(self)

-  self:RegisterUnitEvent("UNIT_AURA", self.unit)
+  	self:RegisterUnitEvent("UNIT_AURA", self.unit)

 	if playerClass == "DRUID" then
     self:RegisterEvent("SPELLS_CHANGED", CheckSymbiosis)
@@ -158,15 +159,15 @@ end
 local function Disable(self)
 	local afflicted = self.Afflicted
 	if(not afflicted) then return end
-  self:UnregisterEvent("UNIT_AURA", Update)
-  self:UnregisterEvent("PLAYER_TALENT_UPDATE", UpdateTalentSpec)
-  self:UnregisterEvent("CHARACTER_POINTS_CHANGED", UpdateTalentSpec)
+	self:UnregisterEvent("UNIT_AURA", Update)
+	self:UnregisterEvent("PLAYER_TALENT_UPDATE", UpdateTalentSpec)
+	self:UnregisterEvent("CHARACTER_POINTS_CHANGED", UpdateTalentSpec)

 	if playerClass == "DRUID" then
     self:UnregisterEvent("SPELLS_CHANGED", CheckSymbiosis)
 	end
-
 	afflicted.Texture:SetVertexColor(0,0,0,0)
+	afflicted:SetBackdropBorderColor(0,0,0,0)
 end

 oUF:AddElement('Afflicted', Update, Enable, Disable)
diff --git a/SVUI_UnitFrames/libs/Plugins/oUF_RaidDebuffs/oUF_RaidDebuffs.lua b/SVUI_UnitFrames/libs/Plugins/oUF_RaidDebuffs/oUF_RaidDebuffs.lua
index 04cc9db..592be97 100644
--- a/SVUI_UnitFrames/libs/Plugins/oUF_RaidDebuffs/oUF_RaidDebuffs.lua
+++ b/SVUI_UnitFrames/libs/Plugins/oUF_RaidDebuffs/oUF_RaidDebuffs.lua
@@ -81,7 +81,7 @@ end

 local DispellColor = {
 	['Magic']	= {.2, .6, 1},
-	['Curse']	= {.6, 0, 1},
+	['Curse']	= {.6, 0.1, 1},
 	['Disease']	= {.6, .4, 0},
 	['Poison']	= {0, .6, 0},
 	['none'] = { .23, .23, .23},
@@ -255,8 +255,10 @@ local function UpdateDebuff(self, name, icon, count, debuffType, duration, endTi
 		f:SetBackdropBorderColor(c[1], c[2], c[3])

 		f:Show()
+		if (f.nameText) then f.nameText:Hide(); end
 	else
 		f:Hide()
+		if (f.nameText) then f.nameText:Show(); end
 	end
 end