Fixed bug from issue #16 (display scaling)
+ fixed bug regarding `Config_horizontalBarPos` (set to a positiv number)
This commit is contained in:
parent
76c4a21b30
commit
92b6b84e03
3 changed files with 25 additions and 9 deletions
16
src/Bar.ahk
16
src/Bar.ahk
|
@ -29,6 +29,13 @@ Bar_init(m)
|
||||||
}
|
}
|
||||||
Else
|
Else
|
||||||
wndWidth := Config_barWidth
|
wndWidth := Config_barWidth
|
||||||
|
|
||||||
|
wndWidth := Round(wndWidth * Config_scalingFactor)
|
||||||
|
If (Config_verticalBarPos = "tray" And m = Manager_taskBarMonitor) {
|
||||||
|
Bar_ctrlHeight := Round(Bar_ctrlHeight * Config_scalingFactor)
|
||||||
|
Bar_height := Round(Bar_height * Config_scalingFactor)
|
||||||
|
}
|
||||||
|
|
||||||
Monitor_#%m%_barWidth := wndWidth
|
Monitor_#%m%_barWidth := wndWidth
|
||||||
titleWidth := wndWidth
|
titleWidth := wndWidth
|
||||||
h1 := Bar_ctrlHeight
|
h1 := Bar_ctrlHeight
|
||||||
|
@ -140,15 +147,16 @@ Bar_init(m)
|
||||||
If (Config_horizontalBarPos = "left")
|
If (Config_horizontalBarPos = "left")
|
||||||
x1 := 0
|
x1 := 0
|
||||||
Else If (Config_horizontalBarPos = "right")
|
Else If (Config_horizontalBarPos = "right")
|
||||||
x1 := Monitor_#%m%_width - wndWidth
|
x1 := Monitor_#%m%_width - wndWidth / Config_scalingFactor
|
||||||
Else If (Config_horizontalBarPos = "center")
|
Else If (Config_horizontalBarPos = "center")
|
||||||
x1 := (Monitor_#%m%_width - wndWidth) / 2
|
x1 := (Monitor_#%m%_width - wndWidth / Config_scalingFactor) / 2
|
||||||
Else If (Config_horizontalBarPos => 0)
|
Else If (Config_horizontalBarPos >= 0)
|
||||||
x1 := Config_horizontalBarPos
|
x1 := Config_horizontalBarPos
|
||||||
Else If (Config_horizontalBarPos < 0)
|
Else If (Config_horizontalBarPos < 0)
|
||||||
x1 := Monitor_#%m%_width - wndWidth + Config_horizontalBarPos
|
x1 := Monitor_#%m%_width - wndWidth / Config_scalingFactor + Config_horizontalBarPos
|
||||||
If Not (Config_verticalBarPos = "tray" And m = Manager_taskBarMonitor)
|
If Not (Config_verticalBarPos = "tray" And m = Manager_taskBarMonitor)
|
||||||
x1 += Monitor_#%m%_x
|
x1 += Monitor_#%m%_x
|
||||||
|
x1 := Round(x1)
|
||||||
|
|
||||||
Bar_#%m%_titleWidth := titleWidth
|
Bar_#%m%_titleWidth := titleWidth
|
||||||
Monitor_#%m%_barX := x1
|
Monitor_#%m%_barX := x1
|
||||||
|
|
|
@ -55,6 +55,9 @@ Config_init()
|
||||||
Config_showTaskBar := False
|
Config_showTaskBar := False
|
||||||
Config_showBorder := True
|
Config_showBorder := True
|
||||||
Config_selBorderColor := ""
|
Config_selBorderColor := ""
|
||||||
|
Config_scalingFactor := 1 ;; Undocumented. The value is retrieved by `Config_getSystemSettings()` from the registry.
|
||||||
|
;; It should not be set manually by the user,
|
||||||
|
;; but is dependant on the setting in the `Display control panel` of Windows under `Appearance and Personalization`.
|
||||||
|
|
||||||
;; Window arrangement
|
;; Window arrangement
|
||||||
Config_viewNames := "1;2;3;4;5;6;7;8;9"
|
Config_viewNames := "1;2;3;4;5;6;7;8;9"
|
||||||
|
@ -156,7 +159,7 @@ Config_convertSystemColor(systemColor)
|
||||||
|
|
||||||
Config_getSystemSettings()
|
Config_getSystemSettings()
|
||||||
{
|
{
|
||||||
Global Config_fontName, Config_fontSize, Config_normBgColor, Config_normFgColor, Config_selBgColor, Config_selFgColor
|
Global Config_fontName, Config_fontSize, Config_normBgColor, Config_normFgColor, Config_selBgColor, Config_selFgColor, Config_scalingFactor
|
||||||
|
|
||||||
If Not Config_fontName
|
If Not Config_fontName
|
||||||
{
|
{
|
||||||
|
@ -218,6 +221,10 @@ Config_getSystemSettings()
|
||||||
Config_selFgColor .= ";" Config_convertSystemColor(DllCall("GetSysColor", "Int", 2)) ;; COLOR_ACTIVECAPTION
|
Config_selFgColor .= ";" Config_convertSystemColor(DllCall("GetSysColor", "Int", 2)) ;; COLOR_ACTIVECAPTION
|
||||||
}
|
}
|
||||||
SetFormat, Integer, d
|
SetFormat, Integer, d
|
||||||
|
|
||||||
|
RegRead, appliedDPI, HKEY_CURRENT_USER, Control Panel\Desktop\WindowMetrics, AppliedDPI
|
||||||
|
If (ErrorLevel = 0)
|
||||||
|
Config_scalingFactor := 96 / appliedDPI
|
||||||
}
|
}
|
||||||
|
|
||||||
Config_hotkeyLabel:
|
Config_hotkeyLabel:
|
||||||
|
|
|
@ -136,7 +136,7 @@ Monitor_get(x, y)
|
||||||
|
|
||||||
Monitor_getWorkArea(m)
|
Monitor_getWorkArea(m)
|
||||||
{
|
{
|
||||||
Local bTop, x, y
|
Local bHeight, bTop, x, y
|
||||||
Local monitor, monitorBottom, monitorLeft, monitorRight, monitorTop
|
Local monitor, monitorBottom, monitorLeft, monitorRight, monitorTop
|
||||||
Local wndClasses, wndHeight, wndId, wndWidth, wndX, wndY
|
Local wndClasses, wndHeight, wndId, wndWidth, wndX, wndY
|
||||||
|
|
||||||
|
@ -190,18 +190,19 @@ Monitor_getWorkArea(m)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
bHeight := Round(Bar_height / Config_scalingFactor)
|
||||||
bTop := 0
|
bTop := 0
|
||||||
If Monitor_#%m%_showBar
|
If Monitor_#%m%_showBar
|
||||||
{
|
{
|
||||||
If (Config_verticalBarPos = "top" Or (Config_verticalBarPos = "tray" And Not m = Manager_taskBarMonitor))
|
If (Config_verticalBarPos = "top" Or (Config_verticalBarPos = "tray" And Not m = Manager_taskBarMonitor))
|
||||||
{
|
{
|
||||||
bTop := monitorTop
|
bTop := monitorTop
|
||||||
monitorTop += Bar_height
|
monitorTop += bHeight
|
||||||
}
|
}
|
||||||
Else If (Config_verticalBarPos = "bottom")
|
Else If (Config_verticalBarPos = "bottom")
|
||||||
{
|
{
|
||||||
bTop := monitorBottom - Bar_height
|
bTop := monitorBottom - bHeight
|
||||||
monitorBottom -= Bar_height
|
monitorBottom -= bHeight
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue