On Fri, 6 Aug 2021 02:18:38 GMT, Thiago Milczarek Sayao <tsa...@openjdk.org> 
wrote:

> It seems raw images need to be converted BRGA -> RGBA.
> 
> It was being converted on gtk2 code path, but gtk3 only uses 
> `gtk_drag_set_icon_pixbuf`.
> 
> I have simplified the gtk2 `DragView::View::expose` to paint with 
> `gdk_cairo_set_source_pixbuf` (that is available since Gtk 2.8) because the 
> old way was somehow converting  again.
> 
> Run the issue sample with `-Djdk.gtk.version=2` to test the gtk2 code path.
> 
> To test:
> 
> `./gradlew apps`
> 
> 
> java @build/run.args -cp apps/toys/DragDrop/dist/DragDrop.jar 
> dragdrop.DragDropWithControls
> java @build/run.args -cp apps/toys/DragDrop/dist/DragDrop.jar 
> dragdrop.DragDropColor 
> 
> java -Djdk.gtk.version=2 @build/run.args -cp 
> apps/toys/DragDrop/dist/DragDrop.jar dragdrop.DragDropWithControls
> java -Djdk.gtk.version=2 @build/run.args -cp 
> apps/toys/DragDrop/dist/DragDrop.jar dragdrop.DragDropColor

Test works on Linux, don't know on other platforms.

`gradlew -PFULL_TEST=true -PUSE_ROBOT=true :systemTests:test --tests 
test.robot.javafx.dnd.DndRawImageTest`

-------------

PR: https://git.openjdk.java.net/jfx/pull/599

Reply via email to