screen_line() had four near-identical blocks computing popup_attr, combined attr, blend value and underlying base attr in sequence. Pull the shared computation into popup_blend_with_base() and popup_base_attr_or(), and cache per-popup attrs once via popup_opacity_T to avoid recomputing get_win_attr() (which pushes/pops highlight overrides) on every cell. The three top-level if/else if branches that all required the same precondition are also nested under a single outer guard, making the structure easier to follow.
No behavior change. test_popupwin (138 tests) and test_popupwin_textprop (3 tests) pass.
https://github.com/vim/vim/pull/20154
(1 file)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you are subscribed to this thread.![]()
thanks
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you are subscribed to this thread.![]()
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you are subscribed to this thread.![]()