Quantcast

- Change for 9.5.1 - Getting an error on mouseover of Titan bar and plugins. Blizzard removed the backdrop from the GameTooltip frame.

urnati [10-26-21 - 04:47]
- Change for 9.5.1 - Getting an error on mouseover of Titan bar and plugins. Blizzard removed the backdrop from the GameTooltip frame.
- Change for 9.5.1 - A backdrop used by the UIDropdown lib was removed by Blizzard so a new one was copied and used.
Filename
Titan/TitanPanelTemplate.lua
Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua
diff --git a/Titan/TitanPanelTemplate.lua b/Titan/TitanPanelTemplate.lua
index 97b4da8..b2275cf 100644
--- a/Titan/TitanPanelTemplate.lua
+++ b/Titan/TitanPanelTemplate.lua
@@ -91,6 +91,21 @@ local function TitanTooltip_AddTooltipText(text)
 	end
 end

+local back_drop_info =
+	{
+		bgFile="Interface\\Tooltips\\UI-Tooltip-Background",
+		edgeFile="Interface\\Tooltips\\UI-Tooltip-Border",
+		tile = true,
+		insets = {
+			left = 6,
+			right = 6,
+			top = 3,
+			bottom = 3,
+		},
+		tileSize = 8,
+		edgeSize = 8,
+	}
+
 --[[ local
 NAME: TitanTooltip_SetOwnerPosition
 DESC: Set both the parent and the position of GameTooltip for the plugin tooltip.
@@ -107,15 +122,32 @@ local function TitanTooltip_SetOwnerPosition(parent, anchorPoint, relativeToFram
 	if not frame then
 		frame = _G["GameTooltip"]
 	end
+	-- Changes for 9.1.5. The background template was removed from the GameTooltip
+	local tip_name = frame:GetName()
+
+	local tip_back_name = tip_name.."Backdrop"
+	local tip_back_frame = _G[tip_back_name] or CreateFrame("Frame", tip_back_name, frame, BackdropTemplateMixin and "BackdropTemplate" or nil)
+	tip_back_frame:SetFrameLevel(frame:GetFrameLevel() - 1) -- By creating this after the parent, need to set it behind the parent
+
+	tip_back_frame:SetAllPoints()
+	tip_back_frame:SetBackdrop(back_drop_info)
+	-- set alpha (transparency) for the Game Tooltip
+	local tool_trans = TitanPanelGetVar("TooltipTrans")
+	tip_back_frame:SetBackdropBorderColor(TOOLTIP_DEFAULT_COLOR.r, TOOLTIP_DEFAULT_COLOR.g, TOOLTIP_DEFAULT_COLOR.b, tool_trans)
+	tip_back_frame:SetBackdropColor(TOOLTIP_DEFAULT_BACKGROUND_COLOR.r, TOOLTIP_DEFAULT_BACKGROUND_COLOR.g, TOOLTIP_DEFAULT_BACKGROUND_COLOR.b, tool_trans)
+	frame.MenuBackdrop = tip_back_frame
+
 	frame:SetOwner(parent, "ANCHOR_NONE");
 	frame:SetPoint(anchorPoint, relativeToFrame, relativePoint,
 		xOffset, yOffset);
+--[[
 	-- set alpha (transparency) for the Game Tooltip
-	local red, green, blue = frame:GetBackdropColor();
-	local red2, green2, blue2 = frame:GetBackdropBorderColor();
+	local red, green, blue = tip_back_frame:GetBackdropColor();
+	local red2, green2, blue2 = tip_back_frame:GetBackdropBorderColor();
 	local tool_trans = TitanPanelGetVar("TooltipTrans")
-	frame:SetBackdropColor(red,green,blue,tool_trans);
-	frame:SetBackdropBorderColor(red2,green2,blue2,tool_trans);
+	tip_back_frame:SetBackdropColor(red,green,blue,tool_trans);
+	tip_back_frame:SetBackdropBorderColor(red2,green2,blue2,tool_trans);
+--]]
 	-- set font size for the Game Tooltip
 	if not TitanPanelGetVar("DisableTooltipFont") then
 		if TitanTooltipScaleSet < 1 then
@@ -458,41 +490,6 @@ local function TitanPanelButton_OnDragStop(self, ChildButton)
 	end
 end

---[[ local
-NAME: TitanTooltip_SetOwnerPosition
-DESC: Set both the parent and the position of GameTooltip for the plugin tooltip.
-VAR: parent - reference to the frame to attach the tooltip to
-VAR: anchorPoint - tooltip anchor location (side or corner) to use
-VAR: relativeToFrame - string name name of the frame, usually the plugin), to attach the tooltip to
-VAR: relativePoint - parent anchor location (side or corner) to use
-VAR: xOffset - X offset from the anchor point
-VAR: yOffset - Y offset from the anchor point
-VAR: frame - reference to the tooltip
-OUT:  None
---]]
-local function TitanTooltip_SetOwnerPosition(parent, anchorPoint, relativeToFrame, relativePoint, xOffset, yOffset, frame)
-	if not frame then
-		frame = _G["GameTooltip"]
-	end
-	frame:SetOwner(parent, "ANCHOR_NONE");
-	frame:SetPoint(anchorPoint, relativeToFrame, relativePoint,
-		xOffset, yOffset);
-	-- set alpha (transparency) for the Game Tooltip
-	local red, green, blue = frame:GetBackdropColor();
-	local red2, green2, blue2 = frame:GetBackdropBorderColor();
-	local tool_trans = TitanPanelGetVar("TooltipTrans")
-	frame:SetBackdropColor(red,green,blue,tool_trans);
-	frame:SetBackdropBorderColor(red2,green2,blue2,tool_trans);
-	-- set font size for the Game Tooltip
-	if not TitanPanelGetVar("DisableTooltipFont") then
-		if TitanTooltipScaleSet < 1 then
-		TitanTooltipOrigScale = frame:GetScale();
-		TitanTooltipScaleSet = TitanTooltipScaleSet + 1;
-		end
-		frame:SetScale(TitanPanelGetVar("TooltipFont"));
-	end
-end
-
 --[[ API
 NAME: TitanOptionSlider_TooltipText
 DESC: Set the color of the tooltip text to normal (white) with the value in green.
diff --git a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua
index c2b18f2..a09ca9c 100755
--- a/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua
+++ b/Titan/libs/!LibUIDropDownMenu/LibUIDropDownMenu/LibUIDropDownMenu.lua
@@ -349,6 +349,17 @@ local BACKDROP_DIALOG_DARK = {
 		edgeSize = 32,
 		insets = { left = 11, right = 12, top = 12, bottom = 9, },
 }
+local back_drop_info =
+	{
+		bgFile="Interface\\Tooltips\\UI-Tooltip-Background",
+		edgeFile="Interface\\Tooltips\\UI-Tooltip-Border",
+		tile = true,
+		tileEdge = true,
+		insets = { left = 1, right = 1, top = 1, bottom = 1 },
+		tileSize = 8,
+		edgeSize = 8,
+	}
+
 local function creatre_DropDownList(name, parent)
 	local f = _G[name] or CreateFrame("Button", name)
 	f:SetParent(parent or nil)
@@ -365,7 +376,7 @@ local function creatre_DropDownList(name, parent)
 	--local fmb = _G[name.."MenuBackdrop"] or CreateFrame("Frame", name.."MenuBackdrop", f, BackdropTemplateMixin and "TooltipBackdropTemplate" or nil)
 	local fmb = _G[name.."MenuBackdrop"] or CreateFrame("Frame", name.."MenuBackdrop", f, BackdropTemplateMixin and "BackdropTemplate" or nil)
 	fmb:SetAllPoints()
-	fmb:SetBackdrop(BACKDROP_TOOLTIP_16_16_5555)
+	fmb:SetBackdrop(back_drop_info)
 	fmb:SetBackdropBorderColor(TOOLTIP_DEFAULT_COLOR.r, TOOLTIP_DEFAULT_COLOR.g, TOOLTIP_DEFAULT_COLOR.b)
 	fmb:SetBackdropColor(TOOLTIP_DEFAULT_BACKGROUND_COLOR.r, TOOLTIP_DEFAULT_BACKGROUND_COLOR.g, TOOLTIP_DEFAULT_BACKGROUND_COLOR.b)
 	f.MenuBackdrop = fmb