Reported by contributor 'qarmin', found by static code analysis.
CORE-17074
The glitch once was introduced 7 years ago by SVN r58933 == git 7934e35cdf
There is no real-world-issue known to date caused by this bug.
fix cherry picked from commit 0.4.15-dev-303-g 99d0a348aa
GetIconInfo() fill info.hbmColor with NULL HBITMAP handle on black/white bitmaps.
CORE-17062
It broke by 0.4.9-dev-719-g b3fb8555bf
fix is squashed port of 2 commits:
0.4.15-dev-534-g 887764e607 (fix)
0.4.15-dev-2705-g a3cadf630a (nitpick)
Press'n'Hold of a button, then leaving the button rect
should redraw the button in unpressed state
Thanks to JIRA user 'I_kill_Bugs' for perfecting
my initial experiments to fix that.
It regressed by 0.4.9-dev-719-g b3fb8555bf
No need to sync anything with Wine, their code is
correct on Wine head. The bug was in ros specific diff.
cherry picked from commit 0.4.15-dev-1085-g c947eb4d17
IDD_BROWSE_FOR_FOLDER displays text controlled by the calling applications in
IDC_BROWSE_FOR_FOLDER_TITLE. Its old height could lead to text truncation
for existing 3rd party apps.
The new height value for IDC_BROWSE_FOR_FOLDER_TITLE
was inspired by IDC with the same from dialog IDD_BROWSE_FOR_FOLDER_NEW.
I could change all languages to the same height,
as dimensions of the dialog and surrounding controls were same.
picked from 0.4.12-dev-781-g 1d7287288d
It "regressed" and was displayed cut-off since the switch to git
(our string got longer back then).
Fixed by porting back 2 commits:
0.4.14-dev-976-g 6ce72ba172
0.4.14-dev-884-g a57f7b50c0
and also port back some german translation updates and
trivial whitespace fixes at the same time in *.rc.
Although the new layout that I committed in the previous commit
was favored by community ratings votes 8:0,
some devs still preferred the old layout with the bigger logo
because they liked the easteregg. So this commit restores
that.
But it syncs to that features latest&greatest implementation
we have in 0.4.15-dev-1685-gd0c237a instead of reverting the
previous commit to not unnecessarily have many bugs with it
that were still affecting the older releases beforehand.
Aside from the general tabs dialogs layout this commit does
also fix some minor issues in the translations for the oldest
branches in pl-PL, jp-JA, zh-CN and zh-TW.
And it fixes an x64 issue in general.c for 0.4.7 and 0.4.8.
The version string cutoff started to happen when we switched from SVN
with its short revision number to git with the longer hashes.
0.4.7-dev-502-gc2c66af was the first git-only rev (2017-Oct-03)
and brings the dialogs layout closer to XP.
Also fixes some other truncations for specific languages.
And unifies the touched text controls sizes for all languages.
The credits have been moved to readme.txt where they are more present and
we can avoid having to groom all languages files each time we want to add
a new dev (and sysdm.cpl to grow each time). Less maintenance.
sysdm.cpl binary size I18N=all
master before 925.696bytes after 705.024bytes gcc 8.4.0 dbg RosBE2.2.1
0.4.14 before 923.136bytes after 702.464bytes gcc 8.4.0 dbg RosBE2.2.1
0.4.13 before 904.192bytes after 684.544bytes gcc 4.7.2 dbg RosBE2.1.6
0.4.12 before 881.664bytes after 665.600bytes gcc 4.7.2 dbg RosBE2.1.6
0.4.11 before 836.096bytes after 618.496bytes gcc 4.7.2 dbg RosBE2.1.6
0.4.10 before 806.912bytes after 588.800bytes gcc 4.7.2 dbg RosBE2.1.6
0.4. 9 before 788.480bytes after 585.728bytes gcc 4.7.2 dbg RosBE2.1.6
0.4. 8 before 788.480bytes after 585.728bytes gcc 4.7.2 dbg RosBE2.1.6
0.4. 7 before 788.992bytes after 585.728bytes gcc 4.7.2 dbg RosBE2.1.6
readme.txt still fits into a single NTFS cluster afterwards with 3702bytes
Also a very! soft update of some translations ported back.
I double-checked and although the crash in Motorbike does *not* happen by default in all of those builds:
0.4.14-RC-54-g6a6672d (hidden by opt-in apisets-default in release branch)
0.4.13-release-1-g2ac9d98 (hidden by opt-in apisets-default in release branch)
0.4.12-release-17-g79780cd (hidden also, I don't understand why)
0.4.11-release-28-gc4d930d (hidden also, I don't understand why)
0.4.10-release-35-g94b4a3e (hidden also, I don't understand why)
0.4.9-release-41-gd3a79fe (hidden also, I don't understand why)
0.4.8-release-46-gd4d58d7 (hidden, does not have apisets yet)
0.4.7-release-56-g835b508 (hidden, does not have apisets yet)
It was really only crashing in master by default, not on the release branches.
I decided to port the proper fix back nevertheless, because:
- the exports are wrong for our target
- I can not guarantee otherwise that it would not pop up all of a sudden later
- avoids the crash in rls-branches in case the app was intentionally started in Vista-compat-mode
- and the fix also decreases the binary size of that apiset.
Fix picked from 0.4.15-dev-179-g 02825c20e4
Remove WM_SYSKEYDOWN handling at component level, in consistency with other components (ListView,...)
Early embodiement of the fix proposed to WineHQ:
https://bugs.winehq.org/show_bug.cgi?id=49097 in order to remove functional limitation in ReactOS.
Fixes regressions CORE-17020 and CORE-12203 that were once introduced
by SVN r72320 == git 297e33f228
during COMCTL32 WineSync 1.9.16 CORE-11866
Fix picked from 0.4.15-dev-191-g 295ba62820
Do not call EndDialog outside the dialog procedure.
fix picked from commit 0.4.15-dev-511-g 90456e54a4
This hang/crash in 2nd stage setup did *not* affect our official carrier-releaser isos that
we host on sourceforge, because those come bundled with Gecko already and therefore always
skipped the download.
Most users were safe in the past therefore.
Still everyone that would like to build an iso by himself could potentially run
into those crashes, and it did not only happen upon user-driven cancellation,
but also often crashed upon network failure / timeout.
A very important fix therefore.
For some unknown reason the likelihood of this crash gradually increased from
0.4.7 where it happened almost never, until 0.4.14 where it crashed much more likely.
Not well understood, maybe depends on memory layout or something similar.
All of those are super safe commits.
excerpt of 0.4.11-dev-909-g 07b120bd56 zh-CN [TRANSLATION] Update Simplified Chinese translation. (#1094)
excerpt of 0.4.11-dev-149-g 31019e8c0c ro-RO [TRANSLATION] Update Romanian translation (#851)
mmsys.cpl binary size in bytes RosBE2.1.6 GCC4.7.2 dbg I18N=all:
0.4.11 which is the source 741.376
0.4.10 old 741.376 patched 741.376
0.4. 9 old 741.376 patched 741.376
0.4. 8 old 741.376 patched 741.376
0.4. 7 old 741.888 patched 741.376
Syncing the module will simplify future backmerges.
CORE-16935
I merged that back, because at least the play-icon was a regression.
It regressed by SVN r68073 == git 888c2fb967
Ftr we did not always use an icon here, but instead earlier we just had some
font glyph displaying the play-symbol. It was once changed to icon to improve
display for some asian localization (japanese? iirc).
fix picked from commit 0.4.15-dev-86-g bdb4da009a
Improves some strings, but actually I ported that back to reduce binary size.
The translated strings are shorter even than the english ones. Win-win!
Source was state of 0.4.12-release-31-g62822df.
desk.cpl built with RosBE2.1.6 on Windows with GCC4.7.2 debug building with I18N=all:
539.136bytes for 0.4.12-release-31-g62822df (was source)
0.4.11 before 539.648bytes after 539.136bytes
0.4.10 before 539.648bytes after 539.136bytes
0.4. 9 before 539.648bytes after 539.136bytes
0.4. 8 before 539.648bytes after 539.136bytes
0.4. 7 before 528.896bytes after 528.384bytes
et-EE.rc was added by 0.4.8-dev-930-g d80ef2c90a
while in parallel the dialogs have been shrinked by 0.4.8-dev-939-g 2595538558
Since both were under git PR review in parallel, that specific
language was left at the old dialog sizes accidently.
We can fix that glitch by syncing et-EE.rc to 100% to the improved state of that file in
0.4.11-release-44-g958556c because the glitch has been fixed by several commits before that rev.
This improves both: the visual quality of the dialog and also
decreases desk.cpl binary size.
Fix picked from 0.4.11-dev-244-g 6f138e2811
------------------------------
But it also inherently includes
0.4.11-dev-94-g 25f4ed75a0
"[CPL][DESK] Update monitor resource (#816)"
which replaces the CRT bmp with a TFT bitmap
dll\apisets\api-ms-win-crt-utility-l1-1-0_stubs.c(41) : error C2169: 'llabs' : intrinsic function, cannot be defined
Allows to complete the whole 'ninja bootcd' after 'configure -DCMAKE_BUILD_TYPE=Release'
for compiler MSVC 2010SP1 16.0.40219.1 with RosBE 2.1.6
Similar to the fix committed in 0.4.15-dev-1453-g 4ad7b6d634
"Let's encrypt" certificate issuer string changed within last 24hours remotely.
Update its name to make RAPPS stop complaining on DB update.
And also fix a bug in rapps mixing A()/W() in the
messagebox that informs about that cert check failure.
Fix is port of
0.4.15-dev-1120-g 12caaece25
0.4.15-dev-1617-g f77f5a30cf
Next time this happens I will relentlessly undefine CMakeLists.txt USE_CERT_PINNING
Fixes CORE-15165 "'LMarbles 1.0.6 installer' from rapps can not be restored after it has been minimized once"
for LMarbles-installer and many similar installers.
It regressed once by 0.4.10-dev-340-g 75b09f3f88
Many Thanks to the fixes author Katayama Hirofumi MZ.
I decided to port back together with its user32-apitest 'SwitchToThisWindow' and that ran with
37 tests executed (0 marked as todo, 0 failures), 0 skipped.
in the back-port.
The fix is a squashed port of the following master-commits:
0.4.11-dev-632-g e39863bdf6 (#999)
0.4.11-dev-628-g 41b5f29514 (#995)
0.4.11-dev-561-g 5467cc9493 (#989)
0.4.11-dev-560-g 1f3353ac3b (#988)
0.4.11-dev-559-g 4bd0166e63 (#987)
0.4.11-dev-508-g 4ccad609e0 (#976)
test was added to master by:
0.4.11-dev-631-g 665269be9c (#998)
0.4.11-dev-515-g 3e00e7fb22 (#980)
releases/0.4.10 was the only affected branch, so starting with today we have
no affected branch left.
This commit deals with the following tickets:
CORE-14994 "Spotify 1.0.29.92 has no icons on the buttons"
which regressed by 0.4.10-dev-466-g 35f62fc5ba
CORE-15166 "Media Player Classic HomeCinema MPC HC 1.7.13 'elapsed time' in status bar uses incredibly tiny font"
which regressed by 0.4.10-dev-466-g 35f62fc5ba
CORE-15303 "Firefox 28 does not longer show the checkmarks in the menubar"
which regressed by 0.4.10-dev-466-g 35f62fc5ba
CORE-16125 "Marlett, the 'top-right-closing-x' drawing regressed"
which regressed in master by 0.4.13-dev-110-g 19fc9415bf (in older releases by different commits)
---------------
The fix that manages to fix them all is a backport of the code-base that evolved up to 0.4.12-release-24-g4572c75. This was the source of porting.
*Before* the fix I found the following state for 0.4.11-release-39-gdeae917 by testing:
CORE-14994 ok
CORE-15166 ok
CORE-15303 ok
CORE-16125 affected
*Before* the fix I found the following state for 0.4.10-release-48-g72a4ecb by testing:
CORE-14994 affected
CORE-15166 affected
CORE-15303 affected
CORE-16125 ok
So the before-state was kind of exclusive-OR.
*After* the fix all of the mentioned tickets are fixed for releases/0.4.10 and releases/0.4.11
Ftr:
0.4.12-release-24-g4572c75 had all 4 tickets fixed, because it did receive the needed patches beforehand.
0.4.9-release-56-g9be0765 had all 4 tickets fixed, because it was never hit yet by the guilty commits in master branch. It does not heavily need those fixes yet therefore.
And last but not least, the backport to releases/0.4.10 will also inherently contain the fix for
CORE-15331 "[WIN32SS][FONT] Fix NEWTEXTMETRIC.ntmCellHeight value" (which was already fixed in initial releases/0.4.11)
In sum this backport contains the following commits (at least):
0.4.13-dev-483-g 641a0ea99b (#1670) CORE-14994 == 0.4.12-RC-38-g d5c85cd
0.4.13-dev-110-g 19fc9415bf (#1535) CORE-15303 == 0.4.12-RC-16-g e1ac9dc
0.4.12-RC-43-g 6f651b6ec5 CORE-16125 (please note, that this is an interim solution and NOT yet the final master-fix of 0.4.13-dev-699-g b8383b4 which would have fixed that as well)
0.4.11-dev-914-g 88ddb37acb (#1093) CORE-15166
0.4.11-dev-656-g 7f679a116b (#1010) CORE-15331
Porting any of those fixes on its own is dangerous, only their combination leads to tolerable results.
Fixes CORE-15558 "AbiWord font listbox should display a specific font only once, but displays each of them many times instead"
which regressed by SVN r75491 == 0.4.7-dev-32-g d10c0ec112
by porting back the commits:
0.4.12-dev-320-g 6e4e5a004c
and
0.4.13-dev-107-g ae8417fd90 to prevent introducing another regression CORE_15785 with the initial fix.
and some more addendums to prevent introducing regression CORE_15755
I verified afterwards that all 3 issues: CORE-15558, CORE_15785 and CORE_15755 are in fixed state.
Actually I don't really like the resulting code due to the qsort() that it introduces into
win32ss/gdi/gdi32/objects/font.c
We did not need that at all before 0.4.7-dev-32-g d10c0ec112
In case that qsort() would ever reveal any new trouble like reduced performance or stack overflow,
we should structurally revert all that context to 0.4.7-dev-31 instead.
IntEnumFontFamilies() is called immediately upon process initialization for many applications and the qsorted-list is *huge*,
so this indeed could be relevant for performance.
Historically we did hit assertions and exceptions in MS CDFS driver
when special characters 'äöüßÄÖÜ' were used in a valid filesystem.
We did already apply varying workarounds for those issues
into CDFS_NEW for 0.4.8, 0.4.9, 0.4.10
while we were in the learning curve still.
Later we found the root cause to be our faulty XDK
FsRtlIsAnsiCharacter* macros.
By fixing the macros we can replace the varying historic workarounds
and sync to the final 0.4.11-dev master state.
We did not ever observe new issues with any other filesystems that do
also use those macros during the last years. So we can sync now.
CORE-14696 "OLE32 regression, can't delete file or folder via context menu"
It regressed by 0.4.10-dev-161-g 85037eb745
[SHELL32] We initially had an interim shell32 workaround from JIRA-user "sraboy"
committed to mitigate CORE-14696 into 0.4.10-RC-11-g 6f6f20f5df
which allowed us at least to delete via context menu again, but copying
within the same explorer instance via context-menu was not handled by that yet.
We can revert that workaround today. The new OLE32-patch handles both cases properly:
[OLE32] Don't free handles that are just copied in the inproc case.
This imports wine commit 25b136d400,
by Huw Davies and Zebediah Figura
proper fix picked from commit 0.4.12-dev-96-g 959994b67c
This fixes:
- CORE-15911 "Scrollbars do not disappear when Maximizing and not needed"
- CORE-10617 "ListView corrupt scrollbar upon resizing the column-header"
and fixes regressions:
- CORE-15429 "Uninitialized scrollbars in 'My Computer' permanently drawn"
- CORE-16466 "Uninitialized scrollbars in 'My Computer' do still flash up for a fraction of a second before getting overpainted"
both unhidden by SVN r75735 == git 0.4.7-dev-168-g 6af37fd54e
by porting back the commits:
0.4.14-dev-312-g b931f643e3
0.4.13-dev-535-g 1158c24194
Many thanks to the patches author JIRA-user "blueghost"
tibor.fuzi@gmail.com
The patch fixes regression CORE-16703, which was unhidden by explorer commit
8ad0eae687 == SVN r74968
although the root-cause was missing functionality in WIN32SS.
The patch also fixes CORE-16705 and CORE-16706.
fix picked from 0.4.14-dev-1137-g 848d7ec633
----------
And while touching winpos.c I decided to also port back the
fix for the format-string-glitch from #1893 authored by Stanislav Motylkov.
fix picked from 0.4.13-dev-1079-g b16ca9cd65
This fixes a strange toggle-back-effect in 'Zeckensacks Glide Wrapper 0.84c'
by importing Wine commit
9dbe886e3f
Thanks to patches author Akihiro Sagawa <sagawa.aki@gmail.com>
Fix picked from 0.4.13-dev-1169-g 841732e45c
This was no regression, but I could not resist porting it back, because it's just
too tempting to fix a bug by deleting code. Win-win!
It regressed by Wine sync in 0.4.9-dev-719-g b3fb8555bf
Thanks to the patches author Andreas Maier <staubim@quantentunnel.de>
JIRA username 'andy-123'
Fix picked from 0.4.13-dev-531-g 49165276f2
Pressing Next-button in setup of "1C Enterprise (training version) 8.3.10.2252"
did not have any effect anymore. Setup could not be completed anymore.
The regression was introduced to ros by 0.4.8-dev-739-g f8b992f2d3
and was confirmed being a Wine-regression in
https://bugs.winehq.org/show_bug.cgi?id=45445
Thanks to Fabian Maurer for communicating to Wine and thanks to
Thomas Faber for regenerating cond.tab.c from the fixed source file cond.y
using BISON.
fix picked from 0.4.13-dev-443-g 10f00f8c1c
CORE-15433 "Fix assertless BSOD when Opera 12.18 browses duckduckgo.com"
fix ported from 0.4.12-dev-20-g 43e2089 (I ported it back earlier into 0.4.11-RC-7-g 7d0eadd already)
style_name == NULL is ok,
but some of the code was just not handling it properly and dereferenced it.
This is the hard work of Mark Jansen, and in sum reflects the state of 0.4.13-rls-0
when leaving out all work of Jim Tabor and Katayama in this file.
I picked only one unrelated single-line-commit of Timo Kreuzer additionally.
In sum it fixes the following tickets: CORE-16306, CORE-16297, CORE-15863, CORE-15001, CORE-16298.
And is a backport of the following master-commits:
0.4.14-dev-40-g e1984d0 CORE-16306 "Regression, UltraISO shows Languages popup menu at wrong position" (ported back earlier into 0.4.13-RC-12-g 609f2ae)
0.4.13-dev-815-g 6948764 CORE-16297 "Regression, The popup menus position is not perfect for systray icons context menu of Abyss webserver"
0.4.13-dev-814-g 84e263c CORE-16297 "Regression, The popup menus position is not perfect for systray icons context menu of Abyss webserver"
0.4.13-dev-813-g 1c8cdaa CORE-16297 "Regression, The popup menus position is not perfect for systray icons context menu of Abyss webserver"
0.4.13-dev-793-g b5c6af4 CORE-15863 "Regression, popup-menus that expand a sub-popup-menu may erroneously overlay itself"
0.4.13-dev-792-g 7c45a64 CORE-15863 "Regression, popup-menus that expand a sub-popup-menu may erroneously overlay itself"
0.4.13-dev-791-g a59df38 CORE-15863 "Regression, popup-menus that expand a sub-popup-menu may erroneously overlay itself"
0.4.13-dev-713-g 08c6d21 just fixes a compiler warning, unrelated one-liner, only commit of Timo in here
0.4.12-dev-369-g 007ec03 CORE-15001 "Wrong placement of the context menu in systray leads to autoselection, e.g. Abyss WebServer"
0.4.12-dev-346-g d2626f0 CORE-15001 "Wrong placement of the context menu in systray leads to autoselection, e.g. Abyss WebServer"
CORE-16298 "Window system menu does not appear where expected" which is a dupe of one of the tickets above, don't ask me which exactly
There is only one ticket in this context that will NOT get fixed in the final state, but we do accept that,
as it is minor and also MS Windows is not really deterministic in all cases for that:
CORE-15733 "[Win32SS?] dropdown-menu position may be wrong, when the window overflows the screen-borders"
This patch supersedes / is a better replacement for the safe-intermediate-state-fixes that I committed earlier into:
0.4.12-RC-49-g d52cac4 & 0.4.12-RC-48-g 3113d13
0.4.11-RC-35-g a9be77c & 0.4.11-RC-30-g 83e4a61 & 0.4.11-RC-27-g 1d47cfd
It is rare, but I have seen this crash happening as well
when interacting with the taskbar quickly after the boot.
fix picked from 0.4.12-dev-203-g c526f94
A squashed port of
0.4.13-dev-702-g 1e91a1690d
0.4.13-dev-809-g 65e4efd475
0.4.14-dev-186-g b3033b81a4
which in sum brings us to the nice state of 0.4.13-release-0-g4ee3778a4ed2d80c96e7a0f7a1e52e78d3a6568e
where I used the same trio successfully already.
CORE-13211 "RIGHT-expansion-arrow in submenus being drawn too large"
did affect many apps, e.g: UltraISO and Abiword
It was fixed by 0.4.13-dev-702-g 1e91a1690d (#1752)
but on its own it did introduce 2 regressions:
The first was that the
"upwards scrolling arrow in language selection submenu of UltraISO was now drawn much too large"
(discussion and pics also in CORE-13211)
That was fixed by the addendum 0.4.13-dev-809-g 65e4efd475 (#1753)
But we had still another regression from the first commit to solve:
CORE-16470 "The checkmarks in Abiwords menubar became black boxes"
That last regression was fixed by 0.4.14-dev-186-g b3033b81a4 (#2009)
Fixes CORE-13986 "Wise Installer draws scrollbars enabled while they should be drawn disabled"
by porting back 0.4.11-dev-586-g 929a2c6 (the mentioned CORE-ID in that commit was wrong due to typo)
which requires to pick also 0.4.14-dev-1167-g 8bb9434 to prevent the first fix introducing regression
CORE-16721 "Scrolling by pressing the scrollbar arrows does not draw the arrows as pressed"
and finally port back 0.4.14-dev-243-g 19fbdda to fix
CORE-15557 "disabled scrollbars being clickable"
In sum this brings the scrollbar code to the state of 0.4.13-release-0-g 4ee3778
CORE-15412
addendum to 0.4.10-dev-502-g d559ca9
That copy-paste was done once intentionally to keep our imports similar to 2003.
It's worth reading the conversation in PR #748: Getequ seems to be ok with this.
The ideal solution most likely would be to instead *statically*
link against RegLoadMUIStringW() from advapi32_vista when WINNT=0x502.
For now the stuff runs again at least.
I left the func existing in advapi32_vista.dll.
fix picked from commit 0.4.12-dev-99-g 6f8cb05
Not to translate!
Fixes CORE-16762 "inability to pass 2nd stage setup in Albanian"
The regression was introduced by SVN r62040 == git 258cfa34a0
fix picked from commit 0.4.14-dev-1224-g
1edfddf07a
The regression was unhidden by MSI-winesync 1.5.10 almost 7years ago:
8939969e21 == SVN r57070
Finally we can fix it by adding MS enumerator extension to Jscript.
Many thanks to the patches author
Andreas Maier <staubim@quantentunnel.de>
JIRA-nick: andy-123
fix picked from commit 0.4.12-RC-18-g 9ebb42a4c0
It went afterwards into master in slightly modified form as 0.4.13-dev-890-g 83dcae1
But I decided to take the older state from 0.4.12RC, so that I do not have to risk
touching releases/0.4.12 again to sync to "latest&greatest".
The visible symptom for us was, that the Apply button in our
desk.cpl was always visible, even in case no user input was done in the dlg yet.
A very old regression. It regressed somewhere around
SVN r42990 – Good (2009-09-03)
SVN r44397 – Fail (2009-12-04)
The fix is a backport of 0.4.13-dev-908-g
344d559935
Unchange the property sheet page after WM_INITDIALOG (#1842)
In my testing on Win2k3, EN_CHANGE is generated in OnInitDialog, that is correct.
The target is property sheet.
The property sheet does unchange the page after WM_INITDIALOG generation.
CORE-14226 was already effectively fixed by
0.4.11-RC-3-g 2fc4683
0.4.10-RC-3-g 71ea3f9
0.4.9-RC-4-g c19ce95
0.4.8-RC-5-g 937c261
and therefore no release ever was affected by it,
but today I undo the intermediate and sync to the final state of this fix
like we did commit it into master after Wine review
by master commit 0.4.12-dev-151-g c086edf366
The final fixes commit message:
[USP10] Don't mix character and glyph index caches. CORE-14226
Import Wine commits by Nikolay Sivov:
* d1e618d31da usp10: Use glyph index consistently in ScriptGetGlyphABCWidth().
* 8d018d8d1da usp10: Make sure metrics cache is used with glyph indices only.
* eda3a3e37da usp10: Remove extra parentheses.
Fixes font display in UltraISO and GOG and many other installers.
See also https://bugs.winehq.org/show_bug.cgi?id=44410
PR #1599 "[COMCTL32] Saturated images: Take mask-images in account."
Many Thanks to the patches author
Andreas Maier <staubim@quantentunnel.de>
JIRA-nick: andy-123
CORE-14209 IDA5free issue with disabled menubar buttons
regressed by SVN r66418 == git
8370f15813
The patch also improves the rendering of disabled menubar buttons for SumatraPDF CORE-10601.
Even after the patch we are not perfect at deciding when to draw masked
and when to draw desaturated in 32bpp, but it definitely improves end users experience.
Fix picked from 0.4.13-dev-881-g
4093681ad0
and as preparation 0.4.13-dev-880-g
49a797543f
When Themesvc was disabled, some Window titlebar
frames were drawn too thin until the window
was actively resized in y by the user.
That and similar symptoms started to show up after SVN r68904 ==
6dfa71c487
Many thanks to patches author Doug Lyons.
fix picked from commit 0.4.14-dev-121-g
9e14a762d5