> I'm confident about the new test case for this ticket, but the resolution is > more invasive than I'd like. (It works, though.) > > In short: > This introduces a new RenderingHint (in SunHints) to bypass the call in > Window to `gg2d.fillRect(0, 0, getWidth(), getHeight());` > > I left more detailed notes here about the proposed resolution: > https://github.com/openjdk/jdk/commit/1991fdac5dbf76ddaf73cc78a9f7c38370c9674c > > I'm open to suggestions if anyone has a more elegant proposal to prevent the > monitor from refreshing too soon?
Jeremy has updated the pull request incrementally with one additional commit since the last revision: 8303950: approaching using double-buffer approach instead The PaintManager explicitly states that its for Swing components. This pulls some logic out of PaintManager that can be applied to generic awt.Components and introduces the AWTPaintManager super class. The broad goal here is to take advantage of double-buffering AND avoid copying and pasting the hard work that the PaintManager already took care (regarding tiling, scaling, and looping attempts to use VolatileImages). This is response to ongoing PR discussions; see https://github.com/openjdk/jdk/pull/12993#issuecomment-1470887449 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/12993/files - new: https://git.openjdk.org/jdk/pull/12993/files/6594b548..6a3a9b42 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=12993&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=12993&range=00-01 Stats: 206 lines in 3 files changed: 81 ins; 98 del; 27 mod Patch: https://git.openjdk.org/jdk/pull/12993.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/12993/head:pull/12993 PR: https://git.openjdk.org/jdk/pull/12993