Maximus5 / ConEmu

Customizable Windows terminal with tabs, splits, quake-style, hotkeys and more
https://conemu.github.io/
BSD 3-Clause "New" or "Revised" License
8.53k stars 572 forks source link

Pad size (pixels) not used by Cygwin minTTY shells #2398

Open valentinbrasov opened 2 years ago

valentinbrasov commented 2 years ago

Problem description

The Pad size (pixels) is used by DOS shells, but not by Cygwin minTTY shells. As you can see in the attached image, the top and left margins Cygwin minTTY shell are eaten by the frame and increasing the Pad size (pixels) from 4 to 40 did not help (in fact it did not do anything).

image

My display resolution is 1920 x 1080, my display orientation is landscape and the text scalling is 100%. Operating system: Windows 10 64 bit.

Versions

ConEmu build: 210912 stable/x64 OS version: Windows 10/x64 version 20H2 Used shell version: cygwin 3.2.0(0.340/5/3)

SysInfo displayed by ConEmu: ConEmu 210912 [64] Startup Info OsVer: 10.0.19042.x64, Product: workstation, SP: 0.0, Suite: 0x100 Build: 2009, UBR: 1288, ReactOS: 0, Rsrv: 0, WINE: 0, PE: 0, R2: 0 DBCS: 0, IMM: 1, Remote: 0, ACP: 1252, OEMCP: 850, Admin: 0 StartTime: 2021-11-23 12:58:42.304 AppID: 3a69880b6f51bfe7ecf89786be91f272::169 Desktop: Winsta0\Default, SessionId: 1, ConsoleSessionId: 1, Theming: 1, DWM: 1 Title: C:\Users\HIDDEN\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\ConEmu (x64).lnk Size: {0,0},{0,0} Flags: 0x00000C01, ShowWindow: 1, ConHWnd: 0x00000000 char: 1, short: 2, int: 4, long: 4, u64: 8 Handles: 0x00000000, 0x00020001, 0x00000000 StdFlags: In=x0 (Mode=-1) Out=x0 (Mode=-1) Err=x0 (Mode=-1) Current PID: 16372, TID: 7868 Active HKL: 0x0000000008090809 GetKeyboardLayoutList: 0x00000000080908 CmdLine: "C:\dev\ConEmu\ConEmu64.exe" ExecMod: C:\dev\ConEmu\ConEmu64.exe WorkDir: C:\dev\ConEmu PathEnv: C:\Program Files\Python38\Scripts\;C:\Program Files\Python38\;C:\Programs\Python39\Scripts\;C:\Programs\Python39\;C:\Python39\Scripts\;C:\Python39\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Programs\Git\cmd;C:\Programs\nodejs\;C:\ProgramData\chocolatey\bin;C:\Program Files (x86)\Webex\Plugins;C:\Program Files\Amazon\AWSCLIV2\;C:\Programs\jdk\11.0.5\bin;C:\Program Files\PuTTY\;C:\Users\HIDDEN.poetry\bin;C:\Programs\bin;C:\Programs\jdk\11.0.5\bin;C:\Programs\apache-maven\3.6.2\bin;C:\Users\HIDDEN\AppData\Local\Microsoft\WindowsApps;C:\Users\VBO07\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\HIDDEN\AppData\Roaming\npm;C:\dev\gradle-6.8.2\bin;C:\Users\VBO07.poetry\bin; ConFont: 0 Lucida Console 00 Consolas CMD's AutoRuns: {not defined} Foreground: x00130D30 {3253,604}-{4493,1398} 'VirtualConsoleClass' - VBO07 MouseCursor: {4566,1060} MouseMonitor: 00020001 StartMonitor: 00020001 Display: bpp=32, planes=1, align=1, vrefr=60, shade=x00000000, rast=x00007E99, dpi=168x168, per-mon-dpi=1 Monitors (dpi: WholeDesktop, Effective, Angular, RAW): 000100C7: {0,0}-{3000,2000} (3000x2000), Working: {0,0}-{3000,1930} (3000x1930), dpi: {168,168};{168,168};{233,233};{267,267} \\.\DISPLAY1 <<== Primary 00020001: {3000,465}-{4920,1545} (1920x1080), Working: {3000,465}-{4920,1505} (1920x1040), dpi: {168,168};{96,96};{94,94};{95,95} \\.\DISPLAY6 000100C9: {4920,465}-{6840,1545} (1920x1080), Working: {4920,465}-{6840,1505} (1920x1040), dpi: {168,168};{96,96};{91,91};{92,92} \\.\DISPLAY4 Modules: 00007FF677590000-00007FF677843FFF 2B4000 C:\dev\ConEmu\ConEmu64.exe 00007FFC185F0000-00007FFC187E4FFF 1F5000 C:\WINDOWS\SYSTEM32\ntdll.dll 00007FFC16760000-00007FFC1681DFFF BE000 C:\WINDOWS\System32\KERNEL32.DLL 00007FFC15E60000-00007FFC16128FFF 2C9000 C:\WINDOWS\System32\KERNELBASE.dll 00007FFC17630000-00007FFC17684FFF 55000 C:\WINDOWS\System32\SHLWAPI.dll 00007FFBFE900000-00007FFBFEB99FFF 29A000 C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll 00007FFC16D10000-00007FFC16DADFFF 9E000 C:\WINDOWS\System32\msvcrt.dll 00007FFC18030000-00007FFC1805AFFF 2B000 C:\WINDOWS\System32\GDI32.dll 00007FFC16AA0000-00007FFC16C40FFF 1A1000 C:\WINDOWS\System32\USER32.dll 00007FFC15D10000-00007FFC15D31FFF 22000 C:\WINDOWS\System32\win32u.dll 00007FFC16530000-00007FFC1663AFFF 10B000 C:\WINDOWS\System32\gdi32full.dll 00007FFC17D50000-00007FFC17E29FFF DA000 C:\WINDOWS\System32\COMDLG32.dll 00007FFC07F40000-00007FFC07F66FFF 27000 C:\WINDOWS\SYSTEM32\WINMM.dll 00007FFC16130000-00007FFC161CCFFF 9D000 C:\WINDOWS\System32\msvcp_win.dll 00007FFC178C0000-00007FFC17C14FFF 355000 C:\WINDOWS\System32\combase.dll 00007FFC16380000-00007FFC1647FFFF 100000 C:\WINDOWS\System32\ucrtbase.dll 00007FFC0AC80000-00007FFC0AC97FFF 18000 C:\WINDOWS\SYSTEM32\NETAPI32.dll 00007FFC17F00000-00007FFC18029FFF 12A000 C:\WINDOWS\System32\RPCRT4.dll 00007FFC0D550000-00007FFC0D559FFF A000 C:\WINDOWS\SYSTEM32\VERSION.dll 00007FFC16950000-00007FFC169FCFFF AD000 C:\WINDOWS\System32\shcore.dll 00007FFC16DC0000-00007FFC174FEFFF 73F000 C:\WINDOWS\System32\SHELL32.dll 00007FFC17C20000-00007FFC17CCBFFF AC000 C:\WINDOWS\System32\ADVAPI32.dll 00007FFC16A00000-00007FFC16A9AFFF 9B000 C:\WINDOWS\System32\sechost.dll 00007FFC16820000-00007FFC16949FFF 12A000 C:\WINDOWS\System32\ole32.dll 00007FFC17E30000-00007FFC17EFCFFF CD000 C:\WINDOWS\System32\OLEAUT32.dll 00007FFC15160000-00007FFC1516BFFF C000 C:\WINDOWS\SYSTEM32\NETUTILS.DLL 00007FFC07360000-00007FFC07378FFF 19000 C:\WINDOWS\SYSTEM32\SAMCLI.DLL 00007FFC18060000-00007FFC1808FFFF 30000 C:\WINDOWS\System32\IMM32.DLL 0000025635C60000-0000025635C72FFF 13000 C:\WINDOWS\System32\umppc14003.dll 00007FFC11D40000-00007FFC11DDDFFF 9E000 C:\WINDOWS\system32\uxtheme.dll 00007FFC11EB0000-00007FFC11EDEFFF 2F000 C:\WINDOWS\SYSTEM32\dwmapi.dll 00007FFC13830000-00007FFC13FBFFFF 790000 C:\WINDOWS\SYSTEM32\windows.storage.dll 00007FFC15670000-00007FFC1569BFFF 2C000 C:\WINDOWS\SYSTEM32\Wldp.dll 00007FFC15C50000-00007FFC15C6EFFF 1F000 C:\WINDOWS\SYSTEM32\profapi.dll 00007FFBFECA0000-00007FFBFED4BFFF AC000 C:\WINDOWS\SYSTEM32\TextShaping.dll 0000000070FC0000-0000000070FCCFFF D000 C:\Program Files (x86)\WinSplit Revolution\WinSplitHook64.DLL 00007FFC16640000-00007FFC16754FFF 115000 C:\WINDOWS\System32\MSCTF.dll 000006F780000000-000006F7800CBFFF CC000 C:\dev\ConEmu\ConEmu\ConEmuCD64.dll 00007FFC14440000-00007FFC14451FFF 12000 C:\WINDOWS\SYSTEM32\kernel.appcore.dll 00007FFC15D40000-00007FFC15DC2FFF 83000 C:\WINDOWS\System32\bcryptPrimitives.dll 00007FFC05BB0000-00007FFC05CA8FFF F9000 C:\WINDOWS\SYSTEM32\textinputframework.dll 00007FFC110D0000-00007FFC1142DFFF 35E000 C:\WINDOWS\System32\CoreUIComponents.dll 00007FFC11890000-00007FFC11981FFF F2000 C:\WINDOWS\System32\CoreMessaging.dll 00007FFC175C0000-00007FFC1762AFFF 6B000 C:\WINDOWS\System32\WS2_32.dll 00007FFC14940000-00007FFC14972FFF 33000 C:\WINDOWS\SYSTEM32\ntmarta.dll 00007FFC10920000-00007FFC10A73FFF 154000 C:\WINDOWS\SYSTEM32\wintypes.dll 00007FFBFE890000-00007FFBFE8F5FFF 66000 C:\WINDOWS\system32\Oleacc.dll 00007FFC16C50000-00007FFC16CF8FFF A9000 C:\WINDOWS\System32\clbcatq.dll 00007FFBE2270000-00007FFBE248FFFF 220000 C:\WINDOWS\system32\explorerframe.dll 00007FFBE3900000-00007FFBE393DFFF 3E000 C:\WINDOWS\system32\dataexchange.dll 00007FFC12D80000-00007FFC12FE3FFF 264000 C:\WINDOWS\system32\d3d11.dll 00007FFC10EE0000-00007FFC110C4FFF 1E5000 C:\WINDOWS\system32\dcomp.dll 00007FFC144B0000-00007FFC145A3FFF F4000 C:\WINDOWS\system32\dxgi.dll 00007FFC0F850000-00007FFC0FA50FFF 201000 C:\WINDOWS\system32\twinapi.appcore.dll 00007FFBFDB20000-00007FFBFDB28FFF 9000 C:\WINDOWS\system32\IconCodecService.dll 00007FFC0FB20000-00007FFC0FCD3FFF 1B4000 C:\WINDOWS\SYSTEM32\WindowsCodecs.dll 00007FFC15E30000-00007FFC15E56FFF 27000 C:\WINDOWS\System32\bcrypt.dll

Maximus5 commented 2 years ago

That is by design. Neither of console options has effect on ChlildGui applications. That is just impossible. https://conemu.github.io/en/ChildGui.html

You have only two ways: don't use mintty and run proper console application or configure mintty itself.

valentinbrasov commented 2 years ago

@Maximus5 I figured out why and when the left and top edges of the Cygwin window are "eaten": if you have more than one monitor and they have DIFFERENT text scaling configured in Windows Display settings, your app always uses the scaling from the primary monitor, even if you start the ConEmu app on a secondary monitor. So, in this case with different resolutions and text scalling across monitors (like a laptop monitor and 1 external monitor), I always prefer to start and use ConEmu on the bigger external monitor, while having the laptop monitor set as primary one and I then run into the "edges eaten" problem for cygwin. Also, even if you think of starting the ConEmu on the primary screen and moving it to the secondary screen afterwards, it also does not cope well with that case either in case of screens with different resolutions and especially different text scaling. Can you change ConEmu to use the text scaling of the monitor on which it is started? If you can do that, then you will fix the "edges eaten" problem for screens with different text scaling.

Maximus5 commented 2 years ago

I will take a look