diff --git a/builds/rblxgui.rbxm b/builds/rblxgui.rbxm index b191fc4..4fd8836 100644 Binary files a/builds/rblxgui.rbxm and b/builds/rblxgui.rbxm differ diff --git a/src/rblxgui/lib/Managers/KeybindManager.lua b/src/rblxgui/lib/Managers/KeybindManager.lua index 71f5d7b..ca9cfc1 100644 --- a/src/rblxgui/lib/Managers/KeybindManager.lua +++ b/src/rblxgui/lib/Managers/KeybindManager.lua @@ -185,7 +185,7 @@ local function InputEnded(p) CompleteBind = false end elseif (not CompleteBind) or #CurrentKeys ~= 1 then - if m.FocusFunction.EditBind and not CompleteBind then m.FocusFunction.EditBind(util.CopyTable(CurrentKeys), true) end + if m.FocusFunction.EditBind and not CompleteBind then m.FocusFunction.EditBind(util.CopyTable(CurrentKeys), true)end CompleteBind = true table.remove(CurrentKeys, i - IndexShift) if #CurrentKeys == 0 then CompleteBind = false end diff --git a/src/rblxgui/lib/Objects/ColorInput.lua b/src/rblxgui/lib/Objects/ColorInput.lua index b541d68..744c560 100644 --- a/src/rblxgui/lib/Objects/ColorInput.lua +++ b/src/rblxgui/lib/Objects/ColorInput.lua @@ -44,6 +44,7 @@ end function ColorInput.new(Arguments, Parent) local self = GUIObject.new(Arguments, Parent) setmetatable(self,ColorInput) + self.IgnoreText = true self.Disabled = self.Arguments.Disabled self.ColorInputContainer = Instance.new("Frame", self.Parent) self.ColorInputContainer.BackgroundTransparency = 1 diff --git a/src/rblxgui/lib/Objects/InputField.lua b/src/rblxgui/lib/Objects/InputField.lua index 42d4fda..2e3e5cc 100644 --- a/src/rblxgui/lib/Objects/InputField.lua +++ b/src/rblxgui/lib/Objects/InputField.lua @@ -99,7 +99,7 @@ function InputField.GetItemInfo(Item) return ItemInfo end -function InputField:AddItem(Item) +function InputField:AddItem(Item, Action) local ItemInfo = self.GetItemInfo(Item) local ItemButton = Instance.new("TextButton", self.DropdownScroll.Content) ItemButton.Name = ItemInfo.Name @@ -136,6 +136,9 @@ function InputField:AddItem(Item) self.SelectedItem = true self.Value = ItemInfo.Value self.Input.Text = ItemInfo.Name + if Action then + Action() + end end) ItemButton.MouseEnter:Connect(function() task.wait(0) @@ -148,8 +151,8 @@ function InputField:AddItem(Item) end) end -function InputField:AddItems(Items) - for _, v in pairs(Items) do self:AddItem(v) end +function InputField:AddItems(Items, Action) + for _, v in pairs(Items) do self:AddItem(v, Action) end end function InputField:ClearItems() @@ -238,7 +241,7 @@ function InputField.new(Arguments, Parent) self.Input.Name = "Input" self.Input.Changed:Connect(function(p) if p == "Text" then - if not self.SelectedItem then + if not self.SelectedItem and not self.IgnoreText then self.Value = self.Input.Text end self.SelectedItem = false diff --git a/src/rblxgui/lib/Objects/InstanceInputField.lua b/src/rblxgui/lib/Objects/InstanceInputField.lua index 3214cec..dc6cb27 100644 --- a/src/rblxgui/lib/Objects/InstanceInputField.lua +++ b/src/rblxgui/lib/Objects/InstanceInputField.lua @@ -13,6 +13,7 @@ function InstanceInputField.new(Arguments, Parent) Arguments.DisableEditing = true local self = InputField.new(Arguments, Parent) setmetatable(self,InstanceInputField) + self.IgnoreText = true self.DefaultEmpty = {} self.Focusable = true self.TextEditable = true diff --git a/src/rblxgui/lib/Objects/KeybindInputField.lua b/src/rblxgui/lib/Objects/KeybindInputField.lua index f425737..3c2008d 100644 --- a/src/rblxgui/lib/Objects/KeybindInputField.lua +++ b/src/rblxgui/lib/Objects/KeybindInputField.lua @@ -39,7 +39,7 @@ end function KeybindInputField:AddBind(Bind) local BindInfo = self.GetItemInfo(Bind) if #BindInfo.Value[1]>0 and #BindInfo.Value[#BindInfo.Value]>0 then BindInfo.Value[#BindInfo.Value+1] = {} end - self:AddItem({Name = BindInfo.Name or KeybindManager.GenerateKeybindList(BindInfo.Value), Value = BindInfo.Value}) + self:AddItem({Name = BindInfo.Name or KeybindManager.GenerateKeybindList(BindInfo.Value), Value = BindInfo.Value}, function() self:UpdateBind(BindInfo.Value) end) end function KeybindInputField:AddBinds(Binds) @@ -96,6 +96,7 @@ function KeybindInputField.new(Arguments, Parent) Arguments.DisableEditing = true local self = InputField.new(Arguments, Parent) setmetatable(self,KeybindInputField) + self.IgnoreText = true self.Holdable = self.Arguments.Holdable self.Unrestricted = self.Arguments.Unrestricted if not self.Holdable then self.Holdable = false end @@ -116,12 +117,6 @@ function KeybindInputField.new(Arguments, Parent) end) if self.Arguments.Binds then self:AddBinds(self.Arguments.Binds) end self:SetBind(self.Arguments.Bind or self.Arguments.CurrentBind) - self.Input.Changed:Connect(function(p) - if p == "Text" then - task.wait(0) - --self:UpdateBind(self.Value) - end - end) return self end