@Override
		public void paint(GGlassPane glassPane, Graphics graphics, double intensity) {

			Graphics2D g2d = (Graphics2D) graphics;

			Image image = updateImage(g2d, intensity);
			if (image == null) {
				return; // this implies an exception happened
			}

			// use visible rectangle to get the correct size when in a scroll pane
			Rectangle componentBounds = getComponentBounds(glassPane);

			// without room to draw the message, skip so we don't draw over other components
			int imageHeight = image.getHeight(null);
			if (imageHeight > componentBounds.height) {
				return;
			}

			paintOverComponent(g2d, glassPane);

			int textHeight = image.getHeight(null);
			int padding = 5;
			int bottom = componentBounds.y + componentBounds.height;
			int requiredHeight = textHeight + padding;
			int y = bottom - requiredHeight;
			int x = componentBounds.x + padding;

			g2d.drawImage(image, x, y, null);

		}
Hides any message being displayed.  This can be called even if the message has been hidden.
Ghidra/Framework/Docking/src/main/java/docking/util/GGlassPaneMessage.java