René's URL Explorer Experiment


Title: Fix the Win32 paint/message pipeline and implement GDI/USER/common-control APIs for MFC apps by ohuet · Pull Request #49 · lqs/retrotick · GitHub

Open Graph Title: Fix the Win32 paint/message pipeline and implement GDI/USER/common-control APIs for MFC apps by ohuet · Pull Request #49 · lqs/retrotick

X Title: Fix the Win32 paint/message pipeline and implement GDI/USER/common-control APIs for MFC apps by ohuet · Pull Request #49 · lqs/retrotick

Description: 💾 Run .exe in browser — x86/ARM emulator with reimplemented Win32/WinCE/Win16/DOS APIs in pure TypeScript - Fix the Win32 paint/message pipeline and implement GDI/USER/common-control APIs for MFC apps by ohuet · Pull Request #49 · lqs/retrotick

Open Graph Description: Summary A large batch of Win32 correctness work, driven by getting real MFC applications (PabloDraw and similar) to render and behave like they do on Windows. The changes fall into the paint/messag...

X Description: Summary A large batch of Win32 correctness work, driven by getting real MFC applications (PabloDraw and similar) to render and behave like they do on Windows. The changes fall into the paint/messag...

Opengraph URL: https://github.com/lqs/retrotick/pull/49

X: @github

direct link

Domain: github.com

route-pattern/_view_fragments/voltron/pull_requests/show/:user_id/:repository/:id/pull_request_layout(.:format)
route-controllervoltron_pull_requests_fragments
route-actionpull_request_layout
fetch-noncev2:2027f1ad-7b9f-6d92-66b4-4e0ee451ad79
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-id9A6A:CFB7D:17F927:22A178:6A4BBFBE
html-safe-nonced348e43e9fea64f1c4a45d558195f6d50baf11f306b30e6faf7947688d33a3d3
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5QTZBOkNGQjdEOjE3RjkyNzoyMkExNzg6NkE0QkJGQkUiLCJ2aXNpdG9yX2lkIjoiNDU1OTQyMzU5NTQzMjYyNDA2MiIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmace5b6fba0228252bf80f9f303b57eb926b3c317126c28cdec45d90a91ecfb57fe
hovercard-subject-tagpull_request:3854005393
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/pull_requests_fragments/pull_request_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/voltron/pull_requests/show/lqs/retrotick/49/pull_request_layout
twitter:imagehttps://opengraph.githubassets.com/cddce5b3973ccb7718dfacb294da1a313729e783724bf305263db6ef99724762/lqs/retrotick/pull/49
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/cddce5b3973ccb7718dfacb294da1a313729e783724bf305263db6ef99724762/lqs/retrotick/pull/49
og:image:altSummary A large batch of Win32 correctness work, driven by getting real MFC applications (PabloDraw and similar) to render and behave like they do on Windows. The changes fall into the paint/messag...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernameohuet
hostnamegithub.com
expected-hostnamegithub.com
Noneae1c14875555a1dd92bdef45baa6dd9aa796df891e4e471989f7117fe3139fc1
turbo-cache-controlno-cache
go-importgithub.com/lqs/retrotick git https://github.com/lqs/retrotick.git
octolytics-dimension-user_id501269
octolytics-dimension-user_loginlqs
octolytics-dimension-repository_id1167498232
octolytics-dimension-repository_nwolqs/retrotick
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1167498232
octolytics-dimension-repository_network_root_nwolqs/retrotick
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releaseb15c57117aeff522995a9578e1185f6c45d6c562
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/lqs/retrotick/pull/49#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Flqs%2Fretrotick%2Fpull%2F49
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Flqs%2Fretrotick%2Fpull%2F49
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fpull_requests_fragments%2Fpull_request_layout&source=header-repo&source_repo=lqs%2Fretrotick
Reloadhttps://github.com/lqs/retrotick/pull/49
Reloadhttps://github.com/lqs/retrotick/pull/49
Reloadhttps://github.com/lqs/retrotick/pull/49
lqs https://github.com/lqs
retrotickhttps://github.com/lqs/retrotick
Notifications https://github.com/login?return_to=%2Flqs%2Fretrotick
Fork 23 https://github.com/login?return_to=%2Flqs%2Fretrotick
Star 266 https://github.com/login?return_to=%2Flqs%2Fretrotick
Code https://github.com/lqs/retrotick
Issues 9 https://github.com/lqs/retrotick/issues
Pull requests 1 https://github.com/lqs/retrotick/pulls
Actions https://github.com/lqs/retrotick/actions
Security and quality 0 https://github.com/lqs/retrotick/security
Insights https://github.com/lqs/retrotick/pulse
Code https://github.com/lqs/retrotick
Issues https://github.com/lqs/retrotick/issues
Pull requests https://github.com/lqs/retrotick/pulls
Actions https://github.com/lqs/retrotick/actions
Security and quality https://github.com/lqs/retrotick/security
Insights https://github.com/lqs/retrotick/pulse
ohuethttps://github.com/ohuet
lqs:mainhttps://github.com/lqs/retrotick/tree/main
ohuet:win32-fixshttps://github.com/ohuet/retrotick/tree/win32-fixs
Conversationhttps://github.com/lqs/retrotick/pull/49
Commits69 (69)https://github.com/lqs/retrotick/pull/49/commits
Checkshttps://github.com/lqs/retrotick/pull/49/checks
Files changedhttps://github.com/lqs/retrotick/pull/49/files
Fix the Win32 paint/message pipeline and implement GDI/USER/common-control APIs for MFC appshttps://github.com/lqs/retrotick/pull/49#top
ohuethttps://github.com/ohuet
lqs:mainhttps://github.com/lqs/retrotick/tree/main
ohuet:win32-fixshttps://github.com/ohuet/retrotick/tree/win32-fixs
https://github.com/ohuet
ohuethttps://github.com/ohuet
Jun 12, 2026https://github.com/lqs/retrotick/pull/49#issue-4648490776
Please reload this pagehttps://github.com/lqs/retrotick/pull/49
Please reload this pagehttps://github.com/lqs/retrotick/pull/49
ohuethttps://github.com/ohuet
May 6, 2026 16:46https://github.com/lqs/retrotick/pull/49#commits-pushed-714be51
https://github.com/ohuet
Support Android virtual keyboard input for DOS programshttps://github.com/lqs/retrotick/pull/49/commits/714be51a8afc6369081251ce1be6080276f59746
714be51https://github.com/lqs/retrotick/pull/49/commits/714be51a8afc6369081251ce1be6080276f59746
https://github.com/ohuet
https://github.com/claude
Support UPX-packed PEs and per-DLL ordinal resolution at runtimehttps://github.com/lqs/retrotick/pull/49/commits/445302d167ffc72792fd69f6c9ea3e5b27a500c4
445302dhttps://github.com/lqs/retrotick/pull/49/commits/445302d167ffc72792fd69f6c9ea3e5b27a500c4
https://github.com/ohuet
https://github.com/claude
Add OLEAUT32 BSTR conversions, SafeArrayDestroy and OleTranslateColor…https://github.com/lqs/retrotick/pull/49/commits/ff22b4792e8b0ee76015e3643866e908d8ead7c8
ff22b47https://github.com/lqs/retrotick/pull/49/commits/ff22b4792e8b0ee76015e3643866e908d8ead7c8
https://github.com/ohuet
https://github.com/claude
Fix CBT hook stack imbalance corrupting CreateWindowExA retAddrhttps://github.com/lqs/retrotick/pull/49/commits/56083011cb456ccb01c25154b4c2f9fb1f000f29
5608301https://github.com/lqs/retrotick/pull/49/commits/56083011cb456ccb01c25154b4c2f9fb1f000f29
https://github.com/ohuet
https://github.com/claude
Add ToolbarWindow32 (TB_*) message stubs in built-in handlerhttps://github.com/lqs/retrotick/pull/49/commits/5a9854a96d32b781dc1ff5a6b13ada75884a9b06
5a9854ahttps://github.com/lqs/retrotick/pull/49/commits/5a9854a96d32b781dc1ff5a6b13ada75884a9b06
https://github.com/ohuet
https://github.com/claude
Route DefWindowProc through built-in control handler + COMCTL32 DllGe…https://github.com/lqs/retrotick/pull/49/commits/3cbefe057fd4d01139334ac998fae36c1a23efe9
3cbefe0https://github.com/lqs/retrotick/pull/49/commits/3cbefe057fd4d01139334ac998fae36c1a23efe9
https://github.com/ohuet
https://github.com/claude
Coalesce identical SetTimer re-arms (matches Win32 semantics)https://github.com/lqs/retrotick/pull/49/commits/2958954da8d71b3f9f5e4c44218058356e41ba7c
2958954https://github.com/lqs/retrotick/pull/49/commits/2958954da8d71b3f9f5e4c44218058356e41ba7c
https://github.com/ohuet
https://github.com/claude
Yield to browser mid-wndProc when DispatchMessage runs long handlershttps://github.com/lqs/retrotick/pull/49/commits/d600664bb5bf452d0dc736e1b543ad1af1a8be0f
d600664https://github.com/lqs/retrotick/pull/49/commits/d600664bb5bf452d0dc736e1b543ad1af1a8be0f
https://github.com/ohuet
Bridge runtime-built menus to the React MenuBar via onSetMenuhttps://github.com/lqs/retrotick/pull/49/commits/8c3abfee75754cf1acd7c9d43b838e66e0b3fbbc
8c3abfehttps://github.com/lqs/retrotick/pull/49/commits/8c3abfee75754cf1acd7c9d43b838e66e0b3fbbc
https://github.com/ohuet
Use a real CW_USEDEFAULT size for top-level windowshttps://github.com/lqs/retrotick/pull/49/commits/b090243ad6c708b3546f0f47bcf42aaf23c5c126
b090243https://github.com/lqs/retrotick/pull/49/commits/b090243ad6c708b3546f0f47bcf42aaf23c5c126
https://github.com/ohuet
Seed builtin-control sizes via WM_NCCREATE during CreateWindowExhttps://github.com/lqs/retrotick/pull/49/commits/8ccbe4158c58d4801c2768e93cb5359ea968f4d5
8ccbe41https://github.com/lqs/retrotick/pull/49/commits/8ccbe4158c58d4801c2768e93cb5359ea968f4d5
https://github.com/ohuet
Add PabloDraw window-tree and menu inspection helpershttps://github.com/lqs/retrotick/pull/49/commits/f9b78068a427a486ebf62594cb24efd323eb708e
f9b7806https://github.com/lqs/retrotick/pull/49/commits/f9b78068a427a486ebf62594cb24efd323eb708e
https://github.com/ohuet
Paint ToolbarWindow32 buttons from the toolbar bitmaphttps://github.com/lqs/retrotick/pull/49/commits/50b924abbeda6aac3c504a10edab191df05eca36
50b924ahttps://github.com/lqs/retrotick/pull/49/commits/50b924abbeda6aac3c504a10edab191df05eca36
https://github.com/ohuet
Add headless PabloDraw resize testhttps://github.com/lqs/retrotick/pull/49/commits/a43b9dbccd01d455d60d5eecffd05701429d6e06
a43b9dbhttps://github.com/lqs/retrotick/pull/49/commits/a43b9dbccd01d455d60d5eecffd05701429d6e06
https://github.com/ohuet
Extend pablo-tree inspector with toolbar state dumphttps://github.com/lqs/retrotick/pull/49/commits/ef004c53d90d34f15b66eb766fba5644006ebc89
ef004c5https://github.com/lqs/retrotick/pull/49/commits/ef004c53d90d34f15b66eb766fba5644006ebc89
https://github.com/ohuet
Mark MainFrame for repaint when ToolbarWindow32 gets WM_PAINThttps://github.com/lqs/retrotick/pull/49/commits/172b28816f72222496e147b6dcff908989bd1cdc
172b288https://github.com/lqs/retrotick/pull/49/commits/172b28816f72222496e147b6dcff908989bd1cdc
https://github.com/ohuet
Run toolbar canvas paint AFTER MFC subclass WM_PAINThttps://github.com/lqs/retrotick/pull/49/commits/702ce58d237edbc6a9de65d62171846738477726
702ce58https://github.com/lqs/retrotick/pull/49/commits/702ce58d237edbc6a9de65d62171846738477726
https://github.com/ohuet
Reset canvas state before toolbar paint to clear stale MFC clippinghttps://github.com/lqs/retrotick/pull/49/commits/105be7b8b0fcb580025262b706037d71910c75ad
105be7bhttps://github.com/lqs/retrotick/pull/49/commits/105be7b8b0fcb580025262b706037d71910c75ad
https://github.com/ohuet
Verify renderToolbar paint via mock canvas in pablo-tree inspectorhttps://github.com/lqs/retrotick/pull/49/commits/eecd50c02c923bc3157b9c1172a4edf86c18bc8b
eecd50chttps://github.com/lqs/retrotick/pull/49/commits/eecd50c02c923bc3157b9c1172a4edf86c18bc8b
https://github.com/ohuet
Inspector reveals toolbar bitmap loses imageData via compat-bitmap pathhttps://github.com/lqs/retrotick/pull/49/commits/cf4ae0fec724ada9bb5614cefa51a66e0979766d
cf4ae0fhttps://github.com/lqs/retrotick/pull/49/commits/cf4ae0fec724ada9bb5614cefa51a66e0979766d
https://github.com/ohuet
https://github.com/claude
Implement StretchDIBits — fixes MFC CToolBar bitmap renderinghttps://github.com/lqs/retrotick/pull/49/commits/a10bba1a26a5fb786fa3d219da61f4a9ecebf730
a10bba1https://github.com/lqs/retrotick/pull/49/commits/a10bba1a26a5fb786fa3d219da61f4a9ecebf730
https://github.com/ohuet
https://github.com/claude
Add SB_SETTEXTA status bar handler + notify overlays on text changeshttps://github.com/lqs/retrotick/pull/49/commits/35582b17b0b2dc7d9ee62de0ca4b67806054d378
35582b1https://github.com/lqs/retrotick/pull/49/commits/35582b17b0b2dc7d9ee62de0ca4b67806054d378
https://github.com/ohuet
https://github.com/claude
Implement GetDIBits + GetObjectType, fix GetDIBits arg counthttps://github.com/lqs/retrotick/pull/49/commits/63a8e812c97e016759ecb1e6207d5abb33c34c58
63a8e81https://github.com/lqs/retrotick/pull/49/commits/63a8e812c97e016759ecb1e6207d5abb33c34c58
https://github.com/ohuet
https://github.com/claude
Implement GetClassLong/SetClassLong + WindowFromDChttps://github.com/lqs/retrotick/pull/49/commits/1bf2f77ef019f4feab9c44bba09257193dc4746c
1bf2f77https://github.com/lqs/retrotick/pull/49/commits/1bf2f77ef019f4feab9c44bba09257193dc4746c
https://github.com/ohuet
https://github.com/claude
Implement FindWindow A/W and FindWindowEx A/Whttps://github.com/lqs/retrotick/pull/49/commits/a7a3a2e50c7cf697e16e67f2e56cf360c8d0cef9
a7a3a2ehttps://github.com/lqs/retrotick/pull/49/commits/a7a3a2e50c7cf697e16e67f2e56cf360c8d0cef9
https://github.com/ohuet
https://github.com/claude
Implement EnumChildWindows (was stub returning 1 without enumerating)https://github.com/lqs/retrotick/pull/49/commits/837b0eb6f0e5760b11977cb74a817f0b3c6da325
837b0ebhttps://github.com/lqs/retrotick/pull/49/commits/837b0eb6f0e5760b11977cb74a817f0b3c6da325
https://github.com/ohuet
https://github.com/claude
Fix IsWindow / IsWindowVisible — actually check the handle statehttps://github.com/lqs/retrotick/pull/49/commits/7716dc4f5b9907e7c664cb9c991111d3cba1ff00
7716dc4https://github.com/lqs/retrotick/pull/49/commits/7716dc4f5b9907e7c664cb9c991111d3cba1ff00
https://github.com/ohuet
https://github.com/claude
Implement TextOutW + LPtoDP/DPtoLP (were stubs returning 1 without ef…https://github.com/lqs/retrotick/pull/49/commits/2488769fb146c8f888141519ac7124cd35ab52d7
2488769https://github.com/lqs/retrotick/pull/49/commits/2488769fb146c8f888141519ac7124cd35ab52d7
https://github.com/ohuet
https://github.com/claude
Implement DrawFocusRect — dotted focus indicator (was no-op stub)https://github.com/lqs/retrotick/pull/49/commits/022dcc59247edcaf044c32bcd6ad9391dc5ae1af
022dcc5https://github.com/lqs/retrotick/pull/49/commits/022dcc59247edcaf044c32bcd6ad9391dc5ae1af
https://github.com/ohuet
https://github.com/claude
Track cursor position — GetCursorPos / GetMessagePos / SetCursorPoshttps://github.com/lqs/retrotick/pull/49/commits/fabbfbf0bf49d9f79673ada0d4ac857b913484fe
fabbfbfhttps://github.com/lqs/retrotick/pull/49/commits/fabbfbf0bf49d9f79673ada0d4ac857b913484fe
ohuethttps://github.com/ohuet
June 7, 2026 12:49https://github.com/lqs/retrotick/pull/49#commits-pushed-0cd5001
https://github.com/ohuet
https://github.com/claude
Render dashed/dotted pens (PS_DASH..PS_DASHDOTDOT) in LineTohttps://github.com/lqs/retrotick/pull/49/commits/0cd5001356d8a0b022455886d6f06ca56403e3f8
0cd5001https://github.com/lqs/retrotick/pull/49/commits/0cd5001356d8a0b022455886d6f06ca56403e3f8
https://github.com/ohuet
https://github.com/claude
Render non-client scroll bars from the scroll rangehttps://github.com/lqs/retrotick/pull/49/commits/a9870eeebab5c44333e597fa9634c431f6b0bd57
a9870eehttps://github.com/lqs/retrotick/pull/49/commits/a9870eeebab5c44333e597fa9634c431f6b0bd57
https://github.com/ohuet
https://github.com/claude
Draw the gripper caption (title + close X) of a docked sizing panehttps://github.com/lqs/retrotick/pull/49/commits/f4fd393b76a7cf1bc76f5c832f7729db94f8df3f
f4fd393https://github.com/lqs/retrotick/pull/49/commits/f4fd393b76a7cf1bc76f5c832f7729db94f8df3f
https://github.com/ohuet
https://github.com/claude
Open CW_USEDEFAULT windows at a usable minimum sizehttps://github.com/lqs/retrotick/pull/49/commits/003908deed70defe330b32b07f42d71438967c5d
003908dhttps://github.com/lqs/retrotick/pull/49/commits/003908deed70defe330b32b07f42d71438967c5d
https://github.com/ohuet
https://github.com/claude
Add PabloDraw diagnostic test harnesseshttps://github.com/lqs/retrotick/pull/49/commits/623f63a57df2353ae7b46deb2fde28e9006d77d6
623f63ahttps://github.com/lqs/retrotick/pull/49/commits/623f63a57df2353ae7b46deb2fde28e9006d77d6
https://github.com/ohuet
https://github.com/claude
Dispatch WM_ERASEBKGND from BeginPaint so custom OnEraseBkgnd runshttps://github.com/lqs/retrotick/pull/49/commits/2a55b0f949a3df2fb0638b1c55475078ed7820e1
2a55b0fhttps://github.com/lqs/retrotick/pull/49/commits/2a55b0f949a3df2fb0638b1c55475078ed7820e1
https://github.com/ohuet
https://github.com/claude
Deliver a real WM_PAINT to nested custom child views so they painthttps://github.com/lqs/retrotick/pull/49/commits/140b2bbb200f254778ab042e71ae16fa654c5939
140b2bbhttps://github.com/lqs/retrotick/pull/49/commits/140b2bbb200f254778ab042e71ae16fa654c5939
https://github.com/ohuet
https://github.com/claude
Make the status bar render with garbage/transient SB_SETPARTS, add AF…https://github.com/lqs/retrotick/pull/49/commits/4ba6937e9339f72d5170db2c17de9c0e1c32971e
4ba6937https://github.com/lqs/retrotick/pull/49/commits/4ba6937e9339f72d5170db2c17de9c0e1c32971e
https://github.com/ohuet
https://github.com/claude
Erase only the invalidated region in BeginPaint; coalesce queued mous…https://github.com/lqs/retrotick/pull/49/commits/c8321f8c8062ebb9151e19548279c05291f3b7af
c8321f8https://github.com/lqs/retrotick/pull/49/commits/c8321f8c8062ebb9151e19548279c05291f3b7af
https://github.com/ohuet
https://github.com/claude
Clip child-window DCs against upper z-order siblings on the shared ca…https://github.com/lqs/retrotick/pull/49/commits/b017dadbbc5cc03947d91ed0c575649ca278f714
b017dadhttps://github.com/lqs/retrotick/pull/49/commits/b017dadbbc5cc03947d91ed0c575649ca278f714
https://github.com/ohuet
https://github.com/claude
Deliver WM_PAINT with real pending semantics; stop queue-synthesizing…https://github.com/lqs/retrotick/pull/49/commits/258bc5479e4ecbad3580c67182e3d09e863ac55e
258bc54https://github.com/lqs/retrotick/pull/49/commits/258bc5479e4ecbad3580c67182e3d09e863ac55e
b017dadhttps://github.com/ohuet/retrotick/commit/b017dadbbc5cc03947d91ed0c575649ca278f714
2a55b0fhttps://github.com/ohuet/retrotick/commit/2a55b0f949a3df2fb0638b1c55475078ed7820e1
https://github.com/ohuet
https://github.com/claude
Route keyboard focus like Windows; fix overlapping-rect z-order clip …https://github.com/lqs/retrotick/pull/49/commits/c1037eec9c0f0c3b53d9b7a03e3a4a23539bdc28
c1037eehttps://github.com/lqs/retrotick/pull/49/commits/c1037eec9c0f0c3b53d9b7a03e3a4a23539bdc28
https://github.com/ohuet
https://github.com/claude
Apply WS_CLIPCHILDREN to every window, not just the main windowhttps://github.com/lqs/retrotick/pull/49/commits/37b45d10c663ec385b685168bf0f005c8d231398
37b45d1https://github.com/lqs/retrotick/pull/49/commits/37b45d10c663ec385b685168bf0f005c8d231398
c1037eehttps://github.com/ohuet/retrotick/commit/c1037eec9c0f0c3b53d9b7a03e3a4a23539bdc28
https://github.com/ohuet
https://github.com/claude
Honor GetMessage/PeekMessage filters; stop UpdateWindow leaking an er…https://github.com/lqs/retrotick/pull/49/commits/7c14d1e70e8614c695416de3c487538318901fd8
7c14d1ehttps://github.com/lqs/retrotick/pull/49/commits/7c14d1e70e8614c695416de3c487538318901fd8
258bc54https://github.com/ohuet/retrotick/commit/258bc5479e4ecbad3580c67182e3d09e863ac55e
258bc54https://github.com/ohuet/retrotick/commit/258bc5479e4ecbad3580c67182e3d09e863ac55e
https://github.com/ohuet
https://github.com/claude
Hold DOM focus on the focused emulator window so keys stop reaching t…https://github.com/lqs/retrotick/pull/49/commits/67204058f6b25dc627c6a7036a778e37d35bbf3b
6720405https://github.com/lqs/retrotick/pull/49/commits/67204058f6b25dc627c6a7036a778e37d35bbf3b
https://github.com/ohuet
https://github.com/claude
Return real toolbar button rects from TB_GETITEMRECT/TB_GETRECT/TB_HI…https://github.com/lqs/retrotick/pull/49/commits/fe652b181eb279acc47fa49020c63e2179d8f972
fe652b1https://github.com/lqs/retrotick/pull/49/commits/fe652b181eb279acc47fa49020c63e2179d8f972
https://github.com/ohuet
https://github.com/claude
Inject DOS keyboard characters as CP437 bytes, not Unicode code pointshttps://github.com/lqs/retrotick/pull/49/commits/84868dfc8dce4ae70d487f937c31cc94629af3ee
84868dfhttps://github.com/lqs/retrotick/pull/49/commits/84868dfc8dce4ae70d487f937c31cc94629af3ee
https://github.com/ohuet
https://github.com/claude
Sync menu check/enable state to the React UI by command id, not positionhttps://github.com/lqs/retrotick/pull/49/commits/4cf3b2c08fbce14c9c6d6e8c2b3ce73203e449b8
4cf3b2chttps://github.com/lqs/retrotick/pull/49/commits/4cf3b2c08fbce14c9c6d6e8c2b3ce73203e449b8
https://github.com/ohuet
https://github.com/claude
Honor WM_NCCALCSIZE: track a per-window custom client insethttps://github.com/lqs/retrotick/pull/49/commits/3377451fa1a5c8e3512f16a4a1db287be8cf4ab2
3377451https://github.com/lqs/retrotick/pull/49/commits/3377451fa1a5c8e3512f16a4a1db287be8cf4ab2
https://github.com/ohuet
https://github.com/claude
Make GetDC/BeginPaint DCs client-relative and paint the custom NC marginhttps://github.com/lqs/retrotick/pull/49/commits/0aaa7042a991d1de2db46138e22f4c585a3ef33c
0aaa704https://github.com/lqs/retrotick/pull/49/commits/0aaa7042a991d1de2db46138e22f4c585a3ef33c
https://github.com/ohuet
https://github.com/claude
Implement ExcludeClipRect: subtract the rect from the DC clip regionhttps://github.com/lqs/retrotick/pull/49/commits/8bf2e5147095d187ca89bfe2d884967851678b5a
8bf2e51https://github.com/lqs/retrotick/pull/49/commits/8bf2e5147095d187ca89bfe2d884967851678b5a
https://github.com/ohuet
https://github.com/claude
Fix status bar pane layout, message text and toggle-key indicatorshttps://github.com/lqs/retrotick/pull/49/commits/da08b3bcdb73151b3a9d69f6f187ecb314b83abd
da08b3bhttps://github.com/lqs/retrotick/pull/49/commits/da08b3bcdb73151b3a9d69f6f187ecb314b83abd
https://github.com/ohuet
https://github.com/claude
Fix mouse-activation click swallowing and NC-band GetWindowDC drawinghttps://github.com/lqs/retrotick/pull/49/commits/adf482574b2cf10b5bd299cf2244b63b9288b454
adf4825https://github.com/lqs/retrotick/pull/49/commits/adf482574b2cf10b5bd299cf2244b63b9288b454
https://github.com/ohuet
https://github.com/claude
Never promote a top-level built-in control window as the main windowhttps://github.com/lqs/retrotick/pull/49/commits/6255495515b458bcff49a8332c713d461ab6f268
6255495https://github.com/lqs/retrotick/pull/49/commits/6255495515b458bcff49a8332c713d461ab6f268
https://github.com/ohuet
https://github.com/claude
Flush pending registry/profile writes on close instead of cancellinghttps://github.com/lqs/retrotick/pull/49/commits/7498b7f8e07727bc66114e5379e5c2b5013ffa91
7498b7fhttps://github.com/lqs/retrotick/pull/49/commits/7498b7f8e07727bc66114e5379e5c2b5013ffa91
https://github.com/ohuet
Merge remote-tracking branch 'upstream/main' into win32-fixshttps://github.com/lqs/retrotick/pull/49/commits/359f00f46f7a8adeaa606602e82a758c7381316b
359f00fhttps://github.com/lqs/retrotick/pull/49/commits/359f00f46f7a8adeaa606602e82a758c7381316b
https://github.com/ohuet
ohuethttps://github.com/ohuet
Jun 13, 2026https://github.com/lqs/retrotick/pull/49#event-26710469433
ohuethttps://github.com/ohuet
June 13, 2026 23:59https://github.com/lqs/retrotick/pull/49#commits-pushed-5fca925
https://github.com/ohuet
https://github.com/claude
Fix TextOutW crash from undefined getFontCSS helperhttps://github.com/lqs/retrotick/pull/49/commits/5fca9257054235ee2a4d37dbe8384dd94cd7e8c7
5fca925https://github.com/lqs/retrotick/pull/49/commits/5fca9257054235ee2a4d37dbe8384dd94cd7e8c7
https://github.com/ohuet
https://github.com/claude
Honor _setTextUnicode in built-in WM_SETTEXT handlerhttps://github.com/lqs/retrotick/pull/49/commits/d1c0e291cf63e4588fad37a6875b0e50ce0d0a2d
d1c0e29https://github.com/lqs/retrotick/pull/49/commits/d1c0e291cf63e4588fad37a6875b0e50ce0d0a2d
https://github.com/ohuet
https://github.com/claude
Hide dialog controls created without WS_VISIBLEhttps://github.com/lqs/retrotick/pull/49/commits/939292b484ff6e1ee1147c21f11a72fb6128ba27
939292bhttps://github.com/lqs/retrotick/pull/49/commits/939292b484ff6e1ee1147c21f11a72fb6128ba27
https://github.co/hiddenchars
https://github.com/lqs/retrotick/pull/{{ revealButtonHref }}
Sign up for freehttps://github.com/join?source=comment-repo
Sign in to commenthttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Flqs%2Fretrotick%2Fpull%2F49
Please reload this pagehttps://github.com/lqs/retrotick/pull/49
https://github.com/ohuet
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.