Miniwindow minimize fix, resizeborder cursor fix
This commit is contained in:
parent
8d89d1194a
commit
868abf3ef6
|
@ -37,6 +37,7 @@ function UIMiniWindow:minimize(dontSave)
|
|||
self:getChildById('miniwindowScrollBar'):hide()
|
||||
self:getChildById('bottomResizeBorder'):hide()
|
||||
self:getChildById('minimizeButton'):setOn(true)
|
||||
self.maximizedHeight = self:getHeight()
|
||||
self:setHeight(self.minimizedHeight)
|
||||
|
||||
if not dontSave then
|
||||
|
@ -52,7 +53,7 @@ function UIMiniWindow:maximize(dontSave)
|
|||
self:getChildById('miniwindowScrollBar'):show()
|
||||
self:getChildById('bottomResizeBorder'):show()
|
||||
self:getChildById('minimizeButton'):setOn(false)
|
||||
self:setHeight(self:getSettings('height'))
|
||||
self:setHeight(self:getSettings('height') or self.maximizedHeight)
|
||||
|
||||
if not dontSave then
|
||||
self:setSettings({minimized = false})
|
||||
|
@ -103,8 +104,12 @@ function UIMiniWindow:setup()
|
|||
|
||||
if selfSettings.minimized then
|
||||
self:minimize(true)
|
||||
elseif selfSettings.height then
|
||||
self:setHeight(selfSettings.height)
|
||||
else
|
||||
if selfSettings.height and self:isResizeable() then
|
||||
self:setHeight(selfSettings.height)
|
||||
elseif selfSettings.height and not self:isResizeable() then
|
||||
self:eraseSettings({height = true})
|
||||
end
|
||||
end
|
||||
|
||||
if selfSettings.closed then
|
||||
|
@ -221,11 +226,14 @@ function UIMiniWindow:onFocusChange(focused)
|
|||
end
|
||||
|
||||
function UIMiniWindow:onHeightChange(height)
|
||||
self:setSettings({height = height})
|
||||
if not self:isOn() then
|
||||
self:setSettings({height = height})
|
||||
end
|
||||
self:fitOnParent()
|
||||
end
|
||||
|
||||
function UIMiniWindow:getSettings(name)
|
||||
if not self.save then return nil end
|
||||
local settings = g_settings.getNode('MiniWindows')
|
||||
if settings then
|
||||
local selfSettings = settings[self:getId()]
|
||||
|
@ -256,6 +264,26 @@ function UIMiniWindow:setSettings(data)
|
|||
g_settings.setNode('MiniWindows', settings)
|
||||
end
|
||||
|
||||
function UIMiniWindow:eraseSettings(data)
|
||||
if not self.save then return end
|
||||
|
||||
local settings = g_settings.getNode('MiniWindows')
|
||||
if not settings then
|
||||
settings = {}
|
||||
end
|
||||
|
||||
local id = self:getId()
|
||||
if not settings[id] then
|
||||
settings[id] = {}
|
||||
end
|
||||
|
||||
for key,value in pairs(data) do
|
||||
settings[id][key] = nil
|
||||
end
|
||||
|
||||
g_settings.setNode('MiniWindows', settings)
|
||||
end
|
||||
|
||||
function UIMiniWindow:saveParent(parent)
|
||||
local parent = self:getParent()
|
||||
if parent then
|
||||
|
|
|
@ -17,6 +17,12 @@ function UIResizeBorder:onSetup()
|
|||
end
|
||||
end
|
||||
|
||||
function UIResizeBorder:onDestroy()
|
||||
if self.hovering then
|
||||
g_mouse.restoreCursor()
|
||||
end
|
||||
end
|
||||
|
||||
function UIResizeBorder:onHoverChange(hovered)
|
||||
if hovered then
|
||||
if g_mouse.isCursorChanged() or g_mouse.isPressed() then return end
|
||||
|
|
Loading…
Reference in New Issue