Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

win32: Support PerMonitorV2 #9525

Closed
wants to merge 9 commits into from
Closed

Conversation

k-takata
Copy link
Member

@k-takata k-takata commented Jan 14, 2022

Improve High DPI support by using PerMonitorV2.

Close #3102

Implementation notes:

  • PerMoniterV2 should be able to enable by using manifest. However, on some environments, it didn't work.
    Use SetThreadDpiAwarenessContext() to enable it explicitly.
  • Currently gVim uses system DPI. Add support for per-monitor DPI only where it is needed. Font size is still managed with system DPI in most places.
  • Dialog box is created by using system DPI. Let Windows scale it automatically.
  • Don't consider PerMonitorV1.
    V2 is available since Windows 10 1703. It is already 5 years ago.
  • Size of toolbar button is adjusted based on per-monitor DPI.
    However, toolbar bitmap is shown dot-by-dot, and it is not scaled.

Improve High DPI support by using PerMonitorV2.

Close vim#3102

Implementation notes:
* PerMoniterV2 should be able to enable by using manifest. However, on
  some environment, it didn't work.
  Use `SetThreadDpiAwarenessContext()` to enable it explicitly.
* Currently gVim uses system DPI. Add support for per-monitor DPI only
  where it is needed. Font size is still managed with system DPI.
* Dialog box is created by using system DPI. Let Windows scale it
  automatically.
* Don't consider PerMonitorV1.
  V2 is available since Windows 10 1703. It is already 5 years ago.
@codecov
Copy link

codecov bot commented Jan 14, 2022

Codecov Report

Merging #9525 (4ba23b0) into master (3e4fa3d) will decrease coverage by 0.00%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #9525      +/-   ##
==========================================
- Coverage   83.50%   83.50%   -0.01%     
==========================================
  Files         154      154              
  Lines      174181   174256      +75     
  Branches    39187    39200      +13     
==========================================
+ Hits       145443   145504      +61     
- Misses      16656    16666      +10     
- Partials    12082    12086       +4     
Flag Coverage Δ
huge-clang-none 81.86% <ø> (+<0.01%) ⬆️
huge-gcc-none 82.22% <ø> (+<0.01%) ⬆️
huge-gcc-testgui 80.69% <ø> (-0.01%) ⬇️
huge-gcc-unittests 2.03% <ø> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
src/gui.c 68.41% <ø> (ø)
src/sound.c 85.57% <0.00%> (-2.89%) ⬇️
src/if_xcmdsrv.c 76.88% <0.00%> (-0.53%) ⬇️
src/message.c 80.79% <0.00%> (-0.25%) ⬇️
src/eval.c 90.80% <0.00%> (-0.21%) ⬇️
src/drawscreen.c 79.85% <0.00%> (-0.12%) ⬇️
src/term.c 74.64% <0.00%> (-0.06%) ⬇️
src/main.c 85.05% <0.00%> (-0.06%) ⬇️
src/ex_getln.c 85.09% <0.00%> (-0.05%) ⬇️
src/option.c 87.88% <0.00%> (-0.02%) ⬇️
... and 18 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3e4fa3d...4ba23b0. Read the comment docs.

@brammool
Copy link
Contributor

I wonder - does this still work on Windows 7?

I would appreciate some people trying it out on their system and giving feedback.

@k-takata k-takata marked this pull request as ready for review January 16, 2022 12:18
@k-takata
Copy link
Member Author

I wonder - does this still work on Windows 7?

Yes, I've just confirmed that this works on Windows 7.

@brammool brammool closed this in c81e9bf Jan 16, 2022
@k-takata k-takata deleted the win32-permonitorv2 branch January 16, 2022 14:27
zeertzjq added a commit to zeertzjq/neovim that referenced this pull request Feb 1, 2022
…ny version

Problem:    No good reason to limit the message history in the tiny version.
Solution:   Always use 200.
vim/vim@1e78deb

N/A patches:

vim-patch:495282b6e7e4

Correct list of patch numbers
vim/vim@495282b

vim-patch:ed37d9b3241a

Update feature_request.md
vim/vim@ed37d9b

vim-patch:fe712ced6e15

Fix duplicated code that only appears in git.
vim/vim@fe712ce

vim-patch:87fda407f8ec

Also fix the patch number.
vim/vim@87fda40

vim-patch:85d9b03f84f5

Correct list of patches.
vim/vim@85d9b03

vim-patch:b54f1202b3cd

Attempt to align the logo without a markdown table.
vim/vim@b54f120

vim-patch:4a27aefe3b56

Add links to discussion forums.
vim/vim@4a27aef

vim-patch:c139aa8a2bf3

Remove table, it doesn't work
vim/vim@c139aa8

vim-patch:0261a1aeeb4c

Tweak the style a bit.
vim/vim@0261a1a

vim-patch:8.2.3714: some unused assignments and ugly code in xxd

Problem:    Some unused assignments and ugly code in xxd.
Solution:   Leave out assignments.  Use marcro for fprintf(). (closes vim/vim#9246)
vim/vim@7e5503c

vim-patch:8.2.3752: build error when using Photon GUI

Problem:    Build error when using Photon GUI.
Solution:   Adjust #ifdef. (closes vim/vim#9288)
vim/vim@8603be3

vim-patch:3e55a973b5ca

Add Huntr badge.
vim/vim@3e55a97

vim-patch:8.2.3785: running CI on MacOS with gcc is not useful

Problem:    Running CI on MacOS with gcc is not useful.
Solution:   Only use clang. (Ozaki Kiichi, closes vim/vim#9326)  Also build with
            normal features.
vim/vim@48c0196

vim-patch:4e30b5c3bc83

Update issue template.
vim/vim@4e30b5c

vim-patch:9a4ec5a62632

Use text area for environment in the bug template.
vim/vim@9a4ec5a

vim-patch:8.2.3800: when cross compiling the output of "uname" cannot be set

Problem:    When cross compiling the output of "uname" cannot be set. (Ben
            Reeves)
Solution:   Use cache variables. (closes vim/vim#9338)
vim/vim@6840a0f

vim-patch:8.2.3821: ASAN test run fails

Problem:    ASAN test run fails.
Solution:   Use asan_symbolize-13 instead of asan_symbolize-11.
vim/vim@19569ca

vim-patch:8.2.3827: huntr badge does not really fit in the list

Problem:    Huntr badge does not really fit in the list.
Solution:   Move the link to Huntr to the issue template.
vim/vim@f79cbf6

vim-patch:8.2.3837: QNX: crash when compiled with GUI but using terminal

Problem:    QNX: crash when compiled with GUI but using terminal.
Solution:   Check gui.in_use is set. (Hirohito Higashi, closes vim/vim#9363)
vim/vim@d2ff705

vim-patch:8.2.3881: QNX: crash when compiled with GUI but using terminal

Problem:    QNX: crash when compiled with GUI but using terminal.
Solution:   Check the gui.in_use flag. (Hirohito Higashi, closes vim/vim#9391)
vim/vim@6073f13

vim-patch:8.2.3891: github CI: workflows may overlap

Problem:    Github CI: workflows may overlap.
Solution:   Cancel previous workflows when starting a new one. (Yegappan
            Lakshmanan, closes vim/vim#9400)
vim/vim@7f4a628

vim-patch:8.2.3922: cannot build with dynamic Ruby 3.1

Problem:    Cannot build with dynamic Ruby 3.1.
Solution:   Add "_EXTRA" variables for CI.  Add missing functions. (Ozaki
            Kiichi, closes vim/vim#9420)
vim/vim@8bb3fe4

vim-patch:8.2.3958: build failure compiling xxd with "-std=c2x"

Problem:    Build failure compiling xxd with "-std=c2x".
Solution:   define _XOPEN_SOURCE. (Yegappan Lakshmanan, closes vim/vim#9444)
vim/vim@ef089f5

vim-patch:8.2.4039: the xdiff library is linked in even when not used

Problem:    The xdiff library is linked in even when not used.
Solution:   Use configure to decide whether xdiff object files are included.
vim/vim@67ffb41

vim-patch:8.2.4061: codecov bash script is deprecated

Problem:    Codecov bash script is deprecated.
Solution:   Use the codecov action. (Ozaki Kiichi, closes vim/vim#9505)
vim/vim@0d47ad4

vim-patch:8.2.4079: MS-Windows: "gvim --version" didn't work with VIMDLL

Problem:    MS-Windows: "gvim --version" didn't work when build with VIMDLL.
Solution:   Adjust #ifdef. (Ken Takata, closes vim/vim#9517)
vim/vim@33b25d1

vim-patch:8.2.4080: not sufficient test coverage for xxd

Problem:    Not sufficient test coverage for xxd.
Solution:   Add a few more test cases. (Erki Auerswald, closes vim/vim#9515)
vim/vim@a00e622

vim-patch:8.2.4092: MacOS CI: unnecessarily doing "Install packages"

Problem:    MacOS CI: unnecessarily doing "Install packages".
Solution:   Only do "Install packages" for huge build.  (Ozaki Kiichi,
            closes vim/vim#9521)
vim/vim@ece0763

vim-patch:8.2.4096: Linux CI: unnecessarily installing packages

Problem:    Linux CI: unnecessarily installing packages
Solution:   Only install packages for huge build.  (Ozaki Kiichi,
            closes vim/vim#9530)
vim/vim@1050476

vim-patch:8.2.4109: MS-Windows: high dpi support is outdated

Problem:    MS-Windows: high dpi support is outdated.
Solution:   Improve High DPI support by using PerMonitorV2. (closes vim/vim#9525,
            closes vim/vim#3102)
vim/vim@c81e9bf

vim-patch:8.2.4126: crash on exit when built with dynamic Tcl

Problem:    Crash on exit when built with dynamic Tcl and EXITFREE is defined.
            (Dominique Pellé)
Solution:   Only call Tcl_Finalize() when initialized. (closes vim/vim#9546)
vim/vim@afa76e1

vim-patch:8.2.4130: MS-Windows: MSVC build may have libraries duplicated

Problem:    MS-Windows: MSVC build may have libraries duplicated.
Solution:   Improve the MSVC Makefile. (Ken Takata, closes vim/vim#9547)
vim/vim@31dcc8d

vim-patch:8.2.4142: build failure with normal features without persistent undo

Problem:    Build failure with normal features without persistent undo.
Solution:   Adjust #ifdef. (closes vim/vim#9557)
vim/vim@b4868ed

vim-patch:8.2.4143: MS-Windows: IME support for Win9x is obsolete

Problem:    MS-Windows: IME support for Win9x is obsolete.
Solution:   Remove the Win9x code. (Ken Takata, closes vim/vim#9559)
vim/vim@b0b2b73

vim-patch:8.2.4144: cannot load libsodium dynamically

Problem:    Cannot load libsodium dynamically.
Solution:   Support dynamic loading on MS-Windows. (Ken Takata, closes vim/vim#9554)
vim/vim@1a8825d

vim-patch:8.2.4158: MS-Windows: memory leak in :browse

Problem:    MS-Windows: memory leak in :browse.
Solution:   Free stuff before returning. (Ken Takata, closes vim/vim#9574)
vim/vim@14b8d6a

vim-patch:8.2.4159: MS-Windows: _WndProc() is very long

Problem:    MS-Windows: _WndProc() is very long.
Solution:   Move code to separate functions. (Ken Takata, closes vim/vim#9573)
vim/vim@92000e2

vim-patch:8.2.4169: MS-Windows: unnessary casts and other minor things

Problem:    MS-Windows: unnessary casts and other minor things.
Solution:   Clean up the MS-Windows code. (Ken Takata, closes vim/vim#9583)
vim/vim@45f9cfb

vim-patch:8.2.4170: MS-Windows: still using old message API calls

Problem:    MS-Windows: still using old message API calls.
Solution:   Call the "W" functions directly. (Ken Takata, closes vim/vim#9582)
vim/vim@b7057bd

vim-patch:8.2.4189: MS-Windows: code for "old look" is obsolete

Problem:    MS-Windows: code for "old look" is obsolete.
Solution:   Delete obsolete code.  Use "MS Shell Dlg" font. (Ken Takata,
            closes vim/vim#9596)
vim/vim@d1c5899

vim-patch:8.2.4194: MS-Windows: code for calculating font size is duplicated

Problem:    MS-Windows: code for calculating font size is duplicated.
Solution:   Move the code to a function. (Ken Takata, closes vim/vim#9603)
vim/vim@abe628e

vim-patch:8.2.4201: when using the GUI CTRL-Z does not stop gvim

Problem:    When using the GUI CTRL-Z does not stop gvim.
Solution:   When using the GUI set SIGTSTP to SIG_DFL. (Andrew Maltsev,
            closes vim/vim#9570)
vim/vim@8e4af85

vim-patch:8.2.4222: MS-Windows: clumsy way to suppress progress on CI

Problem:    MS-Windows: clumsy way to suppress progress on CI.
Solution:   Check for "$CI" in the Makefile itself. (Ken Takata, closes vim/vim#9631)
vim/vim@47d1666

vim-patch:8.2.4230: MS-Windows: set_guifontwide() is included but won't work

Problem:    MS-Windows: set_guifontwide() is included but won't work.
Solution:   Include set_guifontwide() only for X11. (Ken Takata, closes vim/vim#9640)
vim/vim@94373c4

vim-patch:8.2.4244: MS-Windows: warning from MSVC on debug build

Problem:    MS-Windows: warning from MSVC on debug build.
Solution:   Adjust "/opt"o options.  Remove unused variables.  Make variables
            uppercase for consistency. (Ken Takata, closes vim/vim#9647)
vim/vim@14cbf77

vim-patch:8.2.4256: MS-Windows: compiler warnings when compiled with /W4

Problem:    MS-Windows: compiler warnings when compiled with /W4.
Solution:   Small adjustments to the code. (Ken Takata, closes vim/vim#9659)
vim/vim@135e152

vim-patch:8.2.4259: number of test functions for GUI events is growing

Problem:    Number of test functions for GUI events is growing.
Solution:   Use one function with a dictionary. (Yegappan Lakshmanan,
            closes vim/vim#9660)
vim/vim@06011e1

vim-patch:8.2.4263: no test for the GUI find/replace dialog

Problem:    No test for the GUI find/replace dialog.
Solution:   Add a test function and a test. (Yegappan Lakshmanan,
            closes vim/vim#9662)
vim/vim@ec3637c

vim-patch:8.2.4268: CI log output is long

Problem:    CI log output is long.
Solution:   Group output in sections. (Ozaki Kiichi, closes vim/vim#9670)
vim/vim@44d1f89

vim-patch:8.2.4271: MS-Windows: cannot build with Ruby 3.1.0

Problem:    MS-Windows: cannot build with Ruby 3.1.0.
Solution:   Adjust the DLL name and include directory. (Ken Takata,
            closes vim/vim#9666)
vim/vim@1f47a28

vim-patch:8.2.4276: separate test function for the GUI scrollbar

Problem:    Separate test function for the GUI scrollbar.
Solution:   Use test_gui_event(). (Yegappan Lakshmanan, closes vim/vim#9674)
vim/vim@9e0208f
zeertzjq added a commit to zeertzjq/neovim that referenced this pull request Feb 1, 2022
…ny version

Problem:    No good reason to limit the message history in the tiny version.
Solution:   Always use 200.
vim/vim@1e78deb

N/A patches:

vim-patch:495282b6e7e4

Correct list of patch numbers
vim/vim@495282b

vim-patch:ed37d9b3241a

Update feature_request.md
vim/vim@ed37d9b

vim-patch:fe712ced6e15

Fix duplicated code that only appears in git.
vim/vim@fe712ce

vim-patch:87fda407f8ec

Also fix the patch number.
vim/vim@87fda40

vim-patch:85d9b03f84f5

Correct list of patches.
vim/vim@85d9b03

vim-patch:b54f1202b3cd

Attempt to align the logo without a markdown table.
vim/vim@b54f120

vim-patch:4a27aefe3b56

Add links to discussion forums.
vim/vim@4a27aef

vim-patch:c139aa8a2bf3

Remove table, it doesn't work
vim/vim@c139aa8

vim-patch:0261a1aeeb4c

Tweak the style a bit.
vim/vim@0261a1a

vim-patch:8.2.3714: some unused assignments and ugly code in xxd

Problem:    Some unused assignments and ugly code in xxd.
Solution:   Leave out assignments.  Use marcro for fprintf(). (closes vim/vim#9246)
vim/vim@7e5503c

vim-patch:8.2.3722: Amiga: superfluous messages for freeing lots of yanked text

Problem:    Amiga: superfluous messages for freeing lots of yanked text.
Solution:   Assume that the machine isn't that slow these days.
vim/vim@5e86964

vim-patch:8.2.3752: build error when using Photon GUI

Problem:    Build error when using Photon GUI.
Solution:   Adjust #ifdef. (closes vim/vim#9288)
vim/vim@8603be3

vim-patch:3e55a973b5ca

Add Huntr badge.
vim/vim@3e55a97

vim-patch:8.2.3785: running CI on MacOS with gcc is not useful

Problem:    Running CI on MacOS with gcc is not useful.
Solution:   Only use clang. (Ozaki Kiichi, closes vim/vim#9326)  Also build with
            normal features.
vim/vim@48c0196

vim-patch:4e30b5c3bc83

Update issue template.
vim/vim@4e30b5c

vim-patch:9a4ec5a62632

Use text area for environment in the bug template.
vim/vim@9a4ec5a

vim-patch:8.2.3800: when cross compiling the output of "uname" cannot be set

Problem:    When cross compiling the output of "uname" cannot be set. (Ben
            Reeves)
Solution:   Use cache variables. (closes vim/vim#9338)
vim/vim@6840a0f

vim-patch:8.2.3821: ASAN test run fails

Problem:    ASAN test run fails.
Solution:   Use asan_symbolize-13 instead of asan_symbolize-11.
vim/vim@19569ca

vim-patch:8.2.3827: huntr badge does not really fit in the list

Problem:    Huntr badge does not really fit in the list.
Solution:   Move the link to Huntr to the issue template.
vim/vim@f79cbf6

vim-patch:8.2.3837: QNX: crash when compiled with GUI but using terminal

Problem:    QNX: crash when compiled with GUI but using terminal.
Solution:   Check gui.in_use is set. (Hirohito Higashi, closes vim/vim#9363)
vim/vim@d2ff705

vim-patch:8.2.3881: QNX: crash when compiled with GUI but using terminal

Problem:    QNX: crash when compiled with GUI but using terminal.
Solution:   Check the gui.in_use flag. (Hirohito Higashi, closes vim/vim#9391)
vim/vim@6073f13

vim-patch:8.2.3891: github CI: workflows may overlap

Problem:    Github CI: workflows may overlap.
Solution:   Cancel previous workflows when starting a new one. (Yegappan
            Lakshmanan, closes vim/vim#9400)
vim/vim@7f4a628

vim-patch:8.2.3922: cannot build with dynamic Ruby 3.1

Problem:    Cannot build with dynamic Ruby 3.1.
Solution:   Add "_EXTRA" variables for CI.  Add missing functions. (Ozaki
            Kiichi, closes vim/vim#9420)
vim/vim@8bb3fe4

vim-patch:8.2.3958: build failure compiling xxd with "-std=c2x"

Problem:    Build failure compiling xxd with "-std=c2x".
Solution:   define _XOPEN_SOURCE. (Yegappan Lakshmanan, closes vim/vim#9444)
vim/vim@ef089f5

vim-patch:8.2.4039: the xdiff library is linked in even when not used

Problem:    The xdiff library is linked in even when not used.
Solution:   Use configure to decide whether xdiff object files are included.
vim/vim@67ffb41

vim-patch:8.2.4061: codecov bash script is deprecated

Problem:    Codecov bash script is deprecated.
Solution:   Use the codecov action. (Ozaki Kiichi, closes vim/vim#9505)
vim/vim@0d47ad4

vim-patch:8.2.4079: MS-Windows: "gvim --version" didn't work with VIMDLL

Problem:    MS-Windows: "gvim --version" didn't work when build with VIMDLL.
Solution:   Adjust #ifdef. (Ken Takata, closes vim/vim#9517)
vim/vim@33b25d1

vim-patch:8.2.4080: not sufficient test coverage for xxd

Problem:    Not sufficient test coverage for xxd.
Solution:   Add a few more test cases. (Erki Auerswald, closes vim/vim#9515)
vim/vim@a00e622

vim-patch:8.2.4092: MacOS CI: unnecessarily doing "Install packages"

Problem:    MacOS CI: unnecessarily doing "Install packages".
Solution:   Only do "Install packages" for huge build.  (Ozaki Kiichi,
            closes vim/vim#9521)
vim/vim@ece0763

vim-patch:8.2.4096: Linux CI: unnecessarily installing packages

Problem:    Linux CI: unnecessarily installing packages
Solution:   Only install packages for huge build.  (Ozaki Kiichi,
            closes vim/vim#9530)
vim/vim@1050476

vim-patch:8.2.4109: MS-Windows: high dpi support is outdated

Problem:    MS-Windows: high dpi support is outdated.
Solution:   Improve High DPI support by using PerMonitorV2. (closes vim/vim#9525,
            closes vim/vim#3102)
vim/vim@c81e9bf

vim-patch:8.2.4126: crash on exit when built with dynamic Tcl

Problem:    Crash on exit when built with dynamic Tcl and EXITFREE is defined.
            (Dominique Pellé)
Solution:   Only call Tcl_Finalize() when initialized. (closes vim/vim#9546)
vim/vim@afa76e1

vim-patch:8.2.4130: MS-Windows: MSVC build may have libraries duplicated

Problem:    MS-Windows: MSVC build may have libraries duplicated.
Solution:   Improve the MSVC Makefile. (Ken Takata, closes vim/vim#9547)
vim/vim@31dcc8d

vim-patch:8.2.4142: build failure with normal features without persistent undo

Problem:    Build failure with normal features without persistent undo.
Solution:   Adjust #ifdef. (closes vim/vim#9557)
vim/vim@b4868ed

vim-patch:8.2.4143: MS-Windows: IME support for Win9x is obsolete

Problem:    MS-Windows: IME support for Win9x is obsolete.
Solution:   Remove the Win9x code. (Ken Takata, closes vim/vim#9559)
vim/vim@b0b2b73

vim-patch:8.2.4144: cannot load libsodium dynamically

Problem:    Cannot load libsodium dynamically.
Solution:   Support dynamic loading on MS-Windows. (Ken Takata, closes vim/vim#9554)
vim/vim@1a8825d

vim-patch:8.2.4158: MS-Windows: memory leak in :browse

Problem:    MS-Windows: memory leak in :browse.
Solution:   Free stuff before returning. (Ken Takata, closes vim/vim#9574)
vim/vim@14b8d6a

vim-patch:8.2.4159: MS-Windows: _WndProc() is very long

Problem:    MS-Windows: _WndProc() is very long.
Solution:   Move code to separate functions. (Ken Takata, closes vim/vim#9573)
vim/vim@92000e2

vim-patch:8.2.4169: MS-Windows: unnessary casts and other minor things

Problem:    MS-Windows: unnessary casts and other minor things.
Solution:   Clean up the MS-Windows code. (Ken Takata, closes vim/vim#9583)
vim/vim@45f9cfb

vim-patch:8.2.4170: MS-Windows: still using old message API calls

Problem:    MS-Windows: still using old message API calls.
Solution:   Call the "W" functions directly. (Ken Takata, closes vim/vim#9582)
vim/vim@b7057bd

vim-patch:8.2.4189: MS-Windows: code for "old look" is obsolete

Problem:    MS-Windows: code for "old look" is obsolete.
Solution:   Delete obsolete code.  Use "MS Shell Dlg" font. (Ken Takata,
            closes vim/vim#9596)
vim/vim@d1c5899

vim-patch:8.2.4194: MS-Windows: code for calculating font size is duplicated

Problem:    MS-Windows: code for calculating font size is duplicated.
Solution:   Move the code to a function. (Ken Takata, closes vim/vim#9603)
vim/vim@abe628e

vim-patch:8.2.4201: when using the GUI CTRL-Z does not stop gvim

Problem:    When using the GUI CTRL-Z does not stop gvim.
Solution:   When using the GUI set SIGTSTP to SIG_DFL. (Andrew Maltsev,
            closes vim/vim#9570)
vim/vim@8e4af85

vim-patch:8.2.4222: MS-Windows: clumsy way to suppress progress on CI

Problem:    MS-Windows: clumsy way to suppress progress on CI.
Solution:   Check for "$CI" in the Makefile itself. (Ken Takata, closes vim/vim#9631)
vim/vim@47d1666

vim-patch:8.2.4230: MS-Windows: set_guifontwide() is included but won't work

Problem:    MS-Windows: set_guifontwide() is included but won't work.
Solution:   Include set_guifontwide() only for X11. (Ken Takata, closes vim/vim#9640)
vim/vim@94373c4

vim-patch:8.2.4244: MS-Windows: warning from MSVC on debug build

Problem:    MS-Windows: warning from MSVC on debug build.
Solution:   Adjust "/opt"o options.  Remove unused variables.  Make variables
            uppercase for consistency. (Ken Takata, closes vim/vim#9647)
vim/vim@14cbf77

vim-patch:8.2.4256: MS-Windows: compiler warnings when compiled with /W4

Problem:    MS-Windows: compiler warnings when compiled with /W4.
Solution:   Small adjustments to the code. (Ken Takata, closes vim/vim#9659)
vim/vim@135e152

vim-patch:8.2.4259: number of test functions for GUI events is growing

Problem:    Number of test functions for GUI events is growing.
Solution:   Use one function with a dictionary. (Yegappan Lakshmanan,
            closes vim/vim#9660)
vim/vim@06011e1

vim-patch:8.2.4263: no test for the GUI find/replace dialog

Problem:    No test for the GUI find/replace dialog.
Solution:   Add a test function and a test. (Yegappan Lakshmanan,
            closes vim/vim#9662)
vim/vim@ec3637c

vim-patch:8.2.4268: CI log output is long

Problem:    CI log output is long.
Solution:   Group output in sections. (Ozaki Kiichi, closes vim/vim#9670)
vim/vim@44d1f89

vim-patch:8.2.4271: MS-Windows: cannot build with Ruby 3.1.0

Problem:    MS-Windows: cannot build with Ruby 3.1.0.
Solution:   Adjust the DLL name and include directory. (Ken Takata,
            closes vim/vim#9666)
vim/vim@1f47a28

vim-patch:8.2.4276: separate test function for the GUI scrollbar

Problem:    Separate test function for the GUI scrollbar.
Solution:   Use test_gui_event(). (Yegappan Lakshmanan, closes vim/vim#9674)
vim/vim@9e0208f
zeertzjq added a commit to zeertzjq/neovim that referenced this pull request Feb 1, 2022
…ny version

Problem:    No good reason to limit the message history in the tiny version.
Solution:   Always use 200.
vim/vim@1e78deb

N/A patches:

vim-patch:495282b6e7e4

Correct list of patch numbers
vim/vim@495282b

vim-patch:ed37d9b3241a

Update feature_request.md
vim/vim@ed37d9b

vim-patch:fe712ced6e15

Fix duplicated code that only appears in git.
vim/vim@fe712ce

vim-patch:87fda407f8ec

Also fix the patch number.
vim/vim@87fda40

vim-patch:85d9b03f84f5

Correct list of patches.
vim/vim@85d9b03

vim-patch:b54f1202b3cd

Attempt to align the logo without a markdown table.
vim/vim@b54f120

vim-patch:4a27aefe3b56

Add links to discussion forums.
vim/vim@4a27aef

vim-patch:c139aa8a2bf3

Remove table, it doesn't work
vim/vim@c139aa8

vim-patch:0261a1aeeb4c

Tweak the style a bit.
vim/vim@0261a1a

vim-patch:8.2.3488: issue template is not easy to use

Problem:    Issue template is not easy to use.
Solution:   Use a yaml template. (closes vim/vim#8928)
vim/vim@26190b2

vim-patch:8.2.3496: crypt test fails if xxd was not installed yet

Problem:    Crypt test fails on MS-Windows if xxd was not installed yet.
Solution:   Use the just built xxd executable if it exists. (James McCoy,
            closes vim/vim#8929)
vim/vim@a5d4f3b

vim-patch:8.2.3500: Github CI fails to install clang

Problem:    Github CI fails to install clang.
Solution:   Install llvm-11 explicitly. (Christian Brabandt, closes vim/vim#8993)
vim/vim@3a72429

vim-patch:8.2.3507: generating proto files may fail

Problem:    Generating proto files may fail.
Solution:   Define __attribute().
vim/vim@75aa92a

vim-patch:8.2.3523: duplicated code in xxd

Problem:    Duplicated code in xxd.
Solution:   Remove duplicated lines. (closes vim/vim#8972)
vim/vim@c89c91c

vim-patch:8.2.3533: inefficient code in xxd

Problem:    Inefficient code in xxd.
Solution:   Don't use "p" when "hextype" is non-zero. (closes vim/vim#9013)
vim/vim@375c35a

vim-patch:8.2.3539: GTK3: with 'rightleft' set scrollbar may move unintentionally

Problem:    GTK3: with 'rightleft' set scrollbar may move unintentionally.
Solution:   Ignore events while moving the scrollbar thumb. (closes vim/vim#8958)
vim/vim@604e207

vim-patch:8.2.3548: GTK GUI crashen when reading from stdin

Problem:    GTK GUI crashen when reading from stdin.
Solution:   Do not overwrite the NUL after the string. (closes vim/vim#9028)
vim/vim@d68a004

vim-patch:8.2.3552: xxd revert does not handle end of line correctly

Problem:    Xxd revert does not handle end of line correctly.
Solution:   Check for newline first. (closes vim/vim#9034)
vim/vim@4781046

vim-patch:8.2.3553: xxd test fails on MS-Windows

Problem:    Xxd test fails on MS-Windows.
Solution:   Split shell command in two.
vim/vim@5a5c111

vim-patch:8.2.3554: xxd has various way to exit

Problem:    Xxd has various way to exit.
Solution:   Add function to print error and exit. (closes vim/vim#9035)
vim/vim@a2ffb43

vim-patch:8.2.3565: Makefile dependencies are outdated

Problem:    Makefile dependencies are outdated. (Gary Johnson)
Solution:   Run "make depend" and add missing dependencies.
vim/vim@2446ec9

vim-patch:8.2.3566: build failure on old systems when using nano timestamp

Problem:    Build failure on old systems when using nano timestamp.
Solution:   Define _BSD_SOURCE, _SVID_SOURCE and _DEFAULT_SOURCE. (Gary
            Johnson, closes vim/vim#9054)
vim/vim@44db603

vim-patch:8.2.3594: xxd code is a bit difficult to understand

Problem:    Xxd code is a bit difficult to understand.
Solution:   Move some lines to a separate function. (closes vim/vim#9037)
vim/vim@786e05b

vim-patch:8.2.3606: file missing from list of distributed files

Problem:    File missing from list of distributed files.
Solution:   Add the file.
vim/vim@d3682c5

vim-patch:8.2.3607: GTK3 screen updating is slow

Problem:    GTK3 screen updating is slow.
Solution:   Remove some of the GTK3-specific code. (closes vim/vim#9052)
vim/vim@9459b8d

vim-patch:8.2.3632: GTK3: undercurl does not get removed properly

Problem:    GTK3: undercurl does not get removed properly.
Solution:   Set the cairo cursor first. (closes vim/vim#9170)
vim/vim@9cd9385

vim-patch:8.2.3635: GTK: composing underline does not show

Problem:    GTK: composing underline does not show.
Solution:   Include composing character in pango call. A few more
            optimizations for ligatures.  (Dusan Popovic, closes vim/vim#9171,
            closes vim/vim#9147)
vim/vim@3c19b50

vim-patch:8.2.3641: xxd code has duplicate expressions

Problem:    Xxd code has duplicate expressions.
Solution:   Refactor to avoid duplication. (closes vim/vim#9185)
vim/vim@581f41a

vim-patch:8.2.3642: list of distributed files is outdated

Problem:    List of distributed files is outdated.
Solution:   Rename term.h to termdefs.h.
vim/vim@73448a2

vim-patch:8.2.3647: GTK: when using ligatures the cursor is drawn wrong

Problem:    GTK: when using ligatures the cursor is drawn wrong.
Solution:   Clear more characters when ligatures are used. (Dusan Popovic,
            closes vim/vim#9190)
vim/vim@ce59b9f

vim-patch:8.2.3654: GTK: a touch-drag does not update the selection

Problem:    GTK: a touch-drag does not update the selection.
Solution:   Add GDK_BUTTON1_MASK to the state. (Chris Dalton, close vim/vim#9196,
            closes vim/vim#9194)
vim/vim@ee93e32

vim-patch:8.2.3658: duplicate code in xxd

Problem:    Duplicate code in xxd.
Solution:   Merge duplicated code. Add more tests. (closes vim/vim#9192)
vim/vim@48608b4

vim-patch:8.2.3666: libvterm is outdated

Problem:    Libvterm is outdated.
Solution:   Include patches from revision 769 to revision 789.
vim/vim@7da3415

vim-patch:8.2.3667: building libvterm fails with MSVC

Problem:    Building libvterm fails with MSVC.
Solution:   Don't use C99 construct.
vim/vim@510d8e6

vim-patch:8.2.3680: repeated code in xxd

Problem:    Repeated code in xxd.
Solution:   Change exit_on_ferror() to getc_or_die(). (closes vim/vim#9226)
vim/vim@d1d8a59

vim-patch:8.2.3714: some unused assignments and ugly code in xxd

Problem:    Some unused assignments and ugly code in xxd.
Solution:   Leave out assignments.  Use marcro for fprintf(). (closes vim/vim#9246)
vim/vim@7e5503c

vim-patch:8.2.3722: Amiga: superfluous messages for freeing lots of yanked text

Problem:    Amiga: superfluous messages for freeing lots of yanked text.
Solution:   Assume that the machine isn't that slow these days.
vim/vim@5e86964

vim-patch:8.2.3752: build error when using Photon GUI

Problem:    Build error when using Photon GUI.
Solution:   Adjust #ifdef. (closes vim/vim#9288)
vim/vim@8603be3

vim-patch:3e55a973b5ca

Add Huntr badge.
vim/vim@3e55a97

vim-patch:8.2.3785: running CI on MacOS with gcc is not useful

Problem:    Running CI on MacOS with gcc is not useful.
Solution:   Only use clang. (Ozaki Kiichi, closes vim/vim#9326)  Also build with
            normal features.
vim/vim@48c0196

vim-patch:4e30b5c3bc83

Update issue template.
vim/vim@4e30b5c

vim-patch:9a4ec5a62632

Use text area for environment in the bug template.
vim/vim@9a4ec5a

vim-patch:8.2.3800: when cross compiling the output of "uname" cannot be set

Problem:    When cross compiling the output of "uname" cannot be set. (Ben
            Reeves)
Solution:   Use cache variables. (closes vim/vim#9338)
vim/vim@6840a0f

vim-patch:8.2.3821: ASAN test run fails

Problem:    ASAN test run fails.
Solution:   Use asan_symbolize-13 instead of asan_symbolize-11.
vim/vim@19569ca

vim-patch:8.2.3827: huntr badge does not really fit in the list

Problem:    Huntr badge does not really fit in the list.
Solution:   Move the link to Huntr to the issue template.
vim/vim@f79cbf6

vim-patch:8.2.3837: QNX: crash when compiled with GUI but using terminal

Problem:    QNX: crash when compiled with GUI but using terminal.
Solution:   Check gui.in_use is set. (Hirohito Higashi, closes vim/vim#9363)
vim/vim@d2ff705

vim-patch:8.2.3881: QNX: crash when compiled with GUI but using terminal

Problem:    QNX: crash when compiled with GUI but using terminal.
Solution:   Check the gui.in_use flag. (Hirohito Higashi, closes vim/vim#9391)
vim/vim@6073f13

vim-patch:8.2.3891: github CI: workflows may overlap

Problem:    Github CI: workflows may overlap.
Solution:   Cancel previous workflows when starting a new one. (Yegappan
            Lakshmanan, closes vim/vim#9400)
vim/vim@7f4a628

vim-patch:8.2.3922: cannot build with dynamic Ruby 3.1

Problem:    Cannot build with dynamic Ruby 3.1.
Solution:   Add "_EXTRA" variables for CI.  Add missing functions. (Ozaki
            Kiichi, closes vim/vim#9420)
vim/vim@8bb3fe4

vim-patch:8.2.3958: build failure compiling xxd with "-std=c2x"

Problem:    Build failure compiling xxd with "-std=c2x".
Solution:   define _XOPEN_SOURCE. (Yegappan Lakshmanan, closes vim/vim#9444)
vim/vim@ef089f5

vim-patch:8.2.4039: the xdiff library is linked in even when not used

Problem:    The xdiff library is linked in even when not used.
Solution:   Use configure to decide whether xdiff object files are included.
vim/vim@67ffb41

vim-patch:8.2.4061: codecov bash script is deprecated

Problem:    Codecov bash script is deprecated.
Solution:   Use the codecov action. (Ozaki Kiichi, closes vim/vim#9505)
vim/vim@0d47ad4

vim-patch:8.2.4079: MS-Windows: "gvim --version" didn't work with VIMDLL

Problem:    MS-Windows: "gvim --version" didn't work when build with VIMDLL.
Solution:   Adjust #ifdef. (Ken Takata, closes vim/vim#9517)
vim/vim@33b25d1

vim-patch:8.2.4080: not sufficient test coverage for xxd

Problem:    Not sufficient test coverage for xxd.
Solution:   Add a few more test cases. (Erki Auerswald, closes vim/vim#9515)
vim/vim@a00e622

vim-patch:8.2.4092: MacOS CI: unnecessarily doing "Install packages"

Problem:    MacOS CI: unnecessarily doing "Install packages".
Solution:   Only do "Install packages" for huge build.  (Ozaki Kiichi,
            closes vim/vim#9521)
vim/vim@ece0763

vim-patch:8.2.4096: Linux CI: unnecessarily installing packages

Problem:    Linux CI: unnecessarily installing packages
Solution:   Only install packages for huge build.  (Ozaki Kiichi,
            closes vim/vim#9530)
vim/vim@1050476

vim-patch:8.2.4109: MS-Windows: high dpi support is outdated

Problem:    MS-Windows: high dpi support is outdated.
Solution:   Improve High DPI support by using PerMonitorV2. (closes vim/vim#9525,
            closes vim/vim#3102)
vim/vim@c81e9bf

vim-patch:8.2.4126: crash on exit when built with dynamic Tcl

Problem:    Crash on exit when built with dynamic Tcl and EXITFREE is defined.
            (Dominique Pellé)
Solution:   Only call Tcl_Finalize() when initialized. (closes vim/vim#9546)
vim/vim@afa76e1

vim-patch:8.2.4130: MS-Windows: MSVC build may have libraries duplicated

Problem:    MS-Windows: MSVC build may have libraries duplicated.
Solution:   Improve the MSVC Makefile. (Ken Takata, closes vim/vim#9547)
vim/vim@31dcc8d

vim-patch:8.2.4142: build failure with normal features without persistent undo

Problem:    Build failure with normal features without persistent undo.
Solution:   Adjust #ifdef. (closes vim/vim#9557)
vim/vim@b4868ed

vim-patch:8.2.4143: MS-Windows: IME support for Win9x is obsolete

Problem:    MS-Windows: IME support for Win9x is obsolete.
Solution:   Remove the Win9x code. (Ken Takata, closes vim/vim#9559)
vim/vim@b0b2b73

vim-patch:8.2.4144: cannot load libsodium dynamically

Problem:    Cannot load libsodium dynamically.
Solution:   Support dynamic loading on MS-Windows. (Ken Takata, closes vim/vim#9554)
vim/vim@1a8825d

vim-patch:8.2.4158: MS-Windows: memory leak in :browse

Problem:    MS-Windows: memory leak in :browse.
Solution:   Free stuff before returning. (Ken Takata, closes vim/vim#9574)
vim/vim@14b8d6a

vim-patch:8.2.4159: MS-Windows: _WndProc() is very long

Problem:    MS-Windows: _WndProc() is very long.
Solution:   Move code to separate functions. (Ken Takata, closes vim/vim#9573)
vim/vim@92000e2

vim-patch:8.2.4169: MS-Windows: unnessary casts and other minor things

Problem:    MS-Windows: unnessary casts and other minor things.
Solution:   Clean up the MS-Windows code. (Ken Takata, closes vim/vim#9583)
vim/vim@45f9cfb

vim-patch:8.2.4170: MS-Windows: still using old message API calls

Problem:    MS-Windows: still using old message API calls.
Solution:   Call the "W" functions directly. (Ken Takata, closes vim/vim#9582)
vim/vim@b7057bd

vim-patch:8.2.4189: MS-Windows: code for "old look" is obsolete

Problem:    MS-Windows: code for "old look" is obsolete.
Solution:   Delete obsolete code.  Use "MS Shell Dlg" font. (Ken Takata,
            closes vim/vim#9596)
vim/vim@d1c5899

vim-patch:8.2.4194: MS-Windows: code for calculating font size is duplicated

Problem:    MS-Windows: code for calculating font size is duplicated.
Solution:   Move the code to a function. (Ken Takata, closes vim/vim#9603)
vim/vim@abe628e

vim-patch:8.2.4201: when using the GUI CTRL-Z does not stop gvim

Problem:    When using the GUI CTRL-Z does not stop gvim.
Solution:   When using the GUI set SIGTSTP to SIG_DFL. (Andrew Maltsev,
            closes vim/vim#9570)
vim/vim@8e4af85

vim-patch:8.2.4222: MS-Windows: clumsy way to suppress progress on CI

Problem:    MS-Windows: clumsy way to suppress progress on CI.
Solution:   Check for "$CI" in the Makefile itself. (Ken Takata, closes vim/vim#9631)
vim/vim@47d1666

vim-patch:8.2.4230: MS-Windows: set_guifontwide() is included but won't work

Problem:    MS-Windows: set_guifontwide() is included but won't work.
Solution:   Include set_guifontwide() only for X11. (Ken Takata, closes vim/vim#9640)
vim/vim@94373c4

vim-patch:8.2.4244: MS-Windows: warning from MSVC on debug build

Problem:    MS-Windows: warning from MSVC on debug build.
Solution:   Adjust "/opt"o options.  Remove unused variables.  Make variables
            uppercase for consistency. (Ken Takata, closes vim/vim#9647)
vim/vim@14cbf77

vim-patch:8.2.4256: MS-Windows: compiler warnings when compiled with /W4

Problem:    MS-Windows: compiler warnings when compiled with /W4.
Solution:   Small adjustments to the code. (Ken Takata, closes vim/vim#9659)
vim/vim@135e152

vim-patch:8.2.4259: number of test functions for GUI events is growing

Problem:    Number of test functions for GUI events is growing.
Solution:   Use one function with a dictionary. (Yegappan Lakshmanan,
            closes vim/vim#9660)
vim/vim@06011e1

vim-patch:8.2.4263: no test for the GUI find/replace dialog

Problem:    No test for the GUI find/replace dialog.
Solution:   Add a test function and a test. (Yegappan Lakshmanan,
            closes vim/vim#9662)
vim/vim@ec3637c

vim-patch:8.2.4268: CI log output is long

Problem:    CI log output is long.
Solution:   Group output in sections. (Ozaki Kiichi, closes vim/vim#9670)
vim/vim@44d1f89

vim-patch:8.2.4271: MS-Windows: cannot build with Ruby 3.1.0

Problem:    MS-Windows: cannot build with Ruby 3.1.0.
Solution:   Adjust the DLL name and include directory. (Ken Takata,
            closes vim/vim#9666)
vim/vim@1f47a28

vim-patch:8.2.4276: separate test function for the GUI scrollbar

Problem:    Separate test function for the GUI scrollbar.
Solution:   Use test_gui_event(). (Yegappan Lakshmanan, closes vim/vim#9674)
vim/vim@9e0208f
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

GVim on Windows doesn't respond to scaling changes
2 participants