void (@NotNull Graphics g, @NotNull Consumer<? super Graphics> targetPaint) { if (isActive()) { Dimension size = myTarget.getSize(); if (myBackBuffer == null || myBackBuffer.getWidth() != size.width || myBackBuffer.getHeight() != size.height) { myBackBuffer = GraphicsEnvironment. getLocalGraphicsEnvironment(). getDefaultScreenDevice(). getDefaultConfiguration(). createCompatibleVolatileImage(size.width, size.height, Transparency.TRANSLUCENT); } Graphics2D bbGraphics = (Graphics2D)myBackBuffer.getGraphics(); bbGraphics.setBackground(TRANSPARENT_COLOR); bbGraphics.clearRect(0, 0, size.width, size.height); targetPaint.accept(bbGraphics); myHwFacade.repaint(); } else { targetPaint.accept(g); } }