Anyway to keep bags seperate and move them yet?

Found addons to move it while combined, or to change them completely ect ect. Im just looking to move my bags over a little.

1 Like

YES PLEASE!
Need to shift all of my inventory bags while OPEN, and not in Combined Bags mode.
It no longer works using the standard WoW/Blizzard options (where it used to shift your bags to the left automatically as not to cover the action bars)
I have clicked, un-clicked, refreshed, logged in & out, pretty much everything I’ve read in the forums, reddit and all the places.
I’ve downloaded multiple addons including; DeModal, BlizzMove, EditModeExpanded, and none of them move the individual bags.
Anyone have any ideas?
Playing with my bags is like playing with my emotions!!!

Have you tried Bagnon?

1 Like

You can copy/paste the following to the website addon.bool.no to create/download an addon that will move the bags when you Shift-Click the title area of the Backpack:

local pos = {}
local bag = _G["ContainerFrame" .. BACKPACK_CONTAINER + 1]
bag.TitleContainer:EnableMouse(true)
bag.TitleContainer:SetScript("OnMouseDown", function(self, button, down)
	if IsShiftKeyDown() then
		self:GetParent():StartMoving()
	end
end)
bag.TitleContainer:SetScript("OnMouseUp", function(self)
	self:GetParent():StopMovingOrSizing()
	local x, y = self:GetParent():GetLeft(), -(UIParent:GetHeight() - self:GetParent():GetTop())
	pos[self:GetParent()] = { x, y } 
end)
hooksecurefunc(bag, "SetPoint", function(self)
	if pos[self] then
		self:ClearAllPoints()
		UIParent.SetPoint(self, "TOPLEFT", UIParent, "TOPLEFT", unpack(pos[self]))
	end
end)

Not extensively tested so… :face_with_monocle:

The code could be adapted for moving individual bags.

1 Like

Altered the above code to move individual bags (neither version saves the position between logins but once agan, they could be altered to do this). Again, Shift-Click on the title of the bags to move.

local pos

local function SavePos(self)
	pos = pos or {}
	local x, y = self:GetLeft(), -(UIParent:GetHeight() - self:GetTop())
	pos[self] = pos[self] or {}
	pos[self].x=x
	pos[self].y=y
end

local function SetPos(self)
	local offsets = pos and pos[self]
	if not offsets then
		return
	end
	self:ClearAllPoints()
	UIParent.SetPoint(self, "TOPLEFT", UIParent, "TOPLEFT", offsets.x, offsets.y)
end

for i = BACKPACK_CONTAINER, NUM_BAG_SLOTS + NUM_REAGENTBAG_SLOTS do
	local bag = _G["ContainerFrame" .. i + 1]
	bag.TitleContainer:EnableMouse(true)
	bag.TitleContainer:SetScript("OnMouseDown", function(self, button, down)
		if IsShiftKeyDown() then
			if not pos then
				for i = BACKPACK_CONTAINER, NUM_BAG_SLOTS + NUM_REAGENTBAG_SLOTS do
					local bag = _G["ContainerFrame" .. i+1]
					if bag and bag:GetLeft() then
						SavePos(bag)
						SetPos(bag)
					end
				end
			end
			self:GetParent():StartMoving()
		end
	end)
	bag.TitleContainer:SetScript("OnMouseUp", function(self)
		SavePos(self:GetParent())
		self:GetParent():StopMovingOrSizing()
	end)
	hooksecurefunc(bag, "SetPoint", function(self)
		if not pos or not pos[self] then
			return
		end
		for i = BACKPACK_CONTAINER, NUM_BAG_SLOTS + NUM_REAGENTBAG_SLOTS do
			local bag = _G["ContainerFrame" .. i + 1]
			SetPos(bag)
		end
	end)
end

Edit: Modified to be a bit more robust if you get errors from the original code,

1 Like

I have not, was always under the impression that it was an add-on to combine your bags. The Mister used to use it, but I’m neurotic about where things go, ha! I’ll check it out & see if I can contrive somethin’. TY :heart:

1 Like

Just a simple keystroke on each log-in to hopefully fix my bag woes, sounds o.k. to me! I’ll give this a shot! Thank you all for the replies and input :heart:

I can tell you how to make it save but it requires editing the addon files after downloading as the website not longer caters for Advanced Options.

Honestly just being able to move them so they don’t cover up my sidebar is quite nice, even if i had to do it each login.

I don’t suppose there’s a way to get the bags to not overlap?

What I mean is, using the second set of code, if I move the backpack, then the first bag opens on top of it, covering it up.

That becomes a bit of a game of cat and mouse that’s beyond the scope of a “quick little addon” to overcome deficiency in the base UI.

If you move the non-backpack bag you have to make sure it’s not overlapping any others and in doing that, make sure it’s not placed off-screen. That also applies to moving any of the other bags.

I use Toggle All Bags in single bag mode so it’s wasn’t an issue, there may ba a more full featured addon out there that does this also?

Thank you for this!
@ Blizz fix the problem please.