Commit Graph

85091 Commits

Author SHA1 Message Date
Maxim Kartashёv
04da030972 JBR-7390 Wayland: need better headless exception message
(cherry picked from commit b68c0ecc6f)
2025-08-23 11:52:07 +04:00
Maxim Kartashёv
16f349459f JBR-7259 Find Usages popup can't be resized under Wayland
Popup's positioner size has to be in sync with popup's buffer size

(cherry picked from commit 5d67a135e4)
2025-08-23 11:52:07 +04:00
Maxim Kartashёv
026809d1a3 JBR-7254 Impossible to copy/paste files in Project tree
(cherry picked from commit 762cd2b23e)
2025-08-23 11:52:07 +04:00
Maxim Kartashev
5c99937094 JBR-7290 Wayland: window permanently looses focus after invoking Go To Line dialog
(cherry picked from commit c381634aff)
2025-08-23 11:52:06 +04:00
Alexey Ushakov
9479738442 JBR-7308 Vulkan: Build failure in vulkan enabled builds
Added missing header (jni_util.h)

(cherry picked from commit 02fb3aee06)
2025-08-23 11:52:06 +04:00
Nikita Gubarkov
bc7050585d JBR-7305 Vulkan: Implement FILL_SPANS primitive for flat color rendering
Implemented flat color shape rendering

(cherry picked from commit 6f84d82d1d)
2025-08-23 11:52:06 +04:00
Nikita Gubarkov
785d8e6260 JBR-7307 Add stub for VKInstance.initNative with disabled Vulkan.
(cherry picked from commit e834ce867f)
2025-08-23 11:52:05 +04:00
Nikita Gubarkov
a6e633ff17 JBR-7237 Fix cyclic dependency of Wayland and Vulkan initialization (#396)
(cherry picked from commit cde482c1fd)
2025-08-23 11:52:05 +04:00
Maxim Kartashёv
b91f457b34 JBR-7072 Wayland: clicks on items of floating context menus are ignored (#405)
JBR-7072 Wayland: clicks on items of floating context menus are ignored

(cherry picked from commit 4083b43591)
2025-08-23 11:52:05 +04:00
Nikita Gubarkov
37532790d6 JBR-7256 Vulkan: Implement FILL_PARALLELOGRAM primitive for flat color rendering
(cherry picked from commit 57dc1a9e23)
2025-08-23 11:52:05 +04:00
Maxim Kartashev
b1ad53ab02 JBR-7237 Separate display connect from WLToolkit initialization
(cherry picked from commit 768d46d049)
2025-08-23 11:52:04 +04:00
Maxim Kartashev
a8408a029b JBR-7202 wayland: memory leak when resizing windows
(cherry picked from commit 64660b0c00)
2025-08-23 11:52:04 +04:00
Maxim Kartashev
1ca689f554 JBR-7206 Wayland: Stylepad demo flickers when resizing on KDE
(cherry picked from commit 996d4f7490)
2025-08-23 11:52:04 +04:00
Nikita Gubarkov
79f9230645 JBR-6543 Vulkan: migrate current code to pure c (#267)
Replaced C++ vulkan rendering with C one

(cherry picked from commit 85e44bf973)
2025-08-23 11:52:03 +04:00
Maxim Kartashev
4b825029ab JBR-7209 Wayland: modernize window decorations
(cherry picked from commit d3496bc966)
2025-08-23 11:52:03 +04:00
Maxim Kartashev
b946d37731 JBR-7201 Wayland: update copyright in files generated by wayland-scanner
(cherry picked from commit 33a7167108)
2025-08-23 11:52:03 +04:00
Maxim Kartashev
3a6af358ad JBR-7198 Wayland: jvm crashes under KDE
Do not copy the buffer if the drawing buffer has not been resized yet as
the size will not match that of the show buffer.
Also, properly guard against the size change by another thread while
copying.

(cherry picked from commit 8ff1d3c6aa)
2025-08-23 11:52:02 +04:00
Maxim Kartashev
d11280940a JBR-7158 Wayland: scale with wp_viewport instead of buffer scale
(cherry picked from commit 8227e43343)
2025-08-23 11:52:02 +04:00
Maxim Kartashev
ba4327c490 JBR-7028 Implement FPS counter on Linux
Use -Dawt.window.counters to enable.
To output counters per second to stdout/stderr,
use -Dawt.window.counters=stdout or =stderr.

A counter by the name swing.RepaintManager.updateWindows
is always available for Swing applications, but it does not
accurately correspond to frames per second.

Toolkit-dependent counters provide much better accuracy.
On Wayland with memory buffers as the backend two are available:
java2d.native.frames - frames delivered to the Wayland server
java2d.native.framesDropped - fully formed frames that were not
delivered to the Wayland server

(cherry picked from commit 639a7b4a5e)
2025-08-23 11:52:02 +04:00
Maxim Kartashev
027f064298 JBR-7047 Deadlock on git fetch on Wayland
(cherry picked from commit eabaada5bc)
2025-08-23 11:52:02 +04:00
Maxim Kartashev
d8e8803b2f JBR-6576 Wayland: exception when double-clicking dialog title bar
(cherry picked from commit e42b74780b)
2025-08-23 11:52:01 +04:00
Maxim Kartashev
535f78a142 JBR-7058 Wayland: IDE hang on the popup appearance
Clean up the damage list when resizing a surface.
Additionally, clamp the damaged area before copying to its current
actual size in order to safeguard against invalid external input.

(cherry picked from commit 392a016333)
2025-08-23 11:52:01 +04:00
tsarn
c5421b0d98 JBR-7063: Make .getKeyChar() report chars in KEY_PRESSED/KEY_RELEASED events for compatibility [WLToolkit] (#371)
(cherry picked from commit bc5bdd2b9e)
2025-08-23 11:52:01 +04:00
tsarn
5907bab541 JBR-6848: Support extra mouse buttons for navigation [WLToolkit]
(cherry picked from commit 2fb530835d)
2025-08-23 11:52:00 +04:00
tsarn
54b4a3eff3 JBR-6434: Fix pointer leave also resetting the keyboard modifiers [WLToolkit] (#370)
(cherry picked from commit bae7c40fa5)
2025-08-23 11:52:00 +04:00
tsarn
e1a0289ec2 JBR-7044: Reset clickCount on mouse moves [WLToolkit]
(cherry picked from commit 0dc57e183c)
2025-08-23 11:52:00 +04:00
Maxim Kartashev
98e51e6b17 JBR-7010 Wayland: Swing window resizing is not smooth enough
(cherry picked from commit 724bdfbabb)
2025-08-23 11:52:00 +04:00
Maxim Kartashev
69f2548376 JBR-6926 Wayland: fonts are aliased/grainy on first start
(cherry picked from commit 9ee13ff658)
2025-08-23 11:51:59 +04:00
Maxim Kartashev
1b6a1925a1 JBR-6920 Wayland: some IDEA popups positioned incorrectly
(cherry picked from commit e28d2bacc7)
2025-08-23 11:51:59 +04:00
Maxim Kartashev
517ce52b7e JBR-6895 Wayland: cursor changes to resize at edges even when window is maximized
(cherry picked from commit a634a8b345)
2025-08-23 11:51:59 +04:00
Maxim Kartashev
aa7dd40411 JBR-6884 SIGSEGV in Java_sun_java2d_wl_WLSMSurfaceData_pixelsAt
(cherry picked from commit 5b883749de)
2025-08-23 11:51:59 +04:00
Maxim Kartashev
b7d779e963 JBR-6448 Wayland: IDEA window looks pixelated after monitors scale was changed
(cherry picked from commit 3318c2260b)
2025-08-23 11:51:58 +04:00
Maxim Kartashev
41dcfbd936 JBR-6814 Wayland: support sun.java2d.uiScale property
(cherry picked from commit 2d420bfd59)
2025-08-23 11:51:58 +04:00
Alexey Ushakov
b50aacd028 JBR-6787 WLToolkit/wsl: crash in WLComponentPeer.setCursor
Added check for unavailable cursor pData

(cherry picked from commit b24e4bce02)
2025-08-23 11:51:58 +04:00
Maxim Kartashev
3c87465960 JBR-6783 MouseEvent/MenuDragMouseEventAbsoluteCoordsTest/MenuDragMouseEventAbsoluteCoordsTest.java: Found one Java-level deadlock
(cherry picked from commit 4e391051bd)
2025-08-23 11:51:57 +04:00
Maxim Kartashev
259af2c8cd JBR-6504 Wayland: optional Robot capability to peek at current window's pixels
(cherry picked from commit 4e1bac1d8e)
2025-08-23 11:51:56 +04:00
Maxim Kartashev
2daf20eeda JBR-6519 Linux: SIGSEGV at [libwayland] wl_proxy_get_version
Guard against passing NULL to libwayland

(cherry picked from commit 74ab4ac224)
2025-08-23 11:51:56 +04:00
Maxim Kartashev
d69409d8b1 JBR-6736 libwakefield crashes weston
(cherry picked from commit 6777dcb2f7)
2025-08-23 11:51:56 +04:00
Maxim Kartashev
922fec5513 JBR-6722 OutOfMemoryError: Failed to allocate Wayland surface buffer
(cherry picked from commit 8ccf0e158f)
2025-08-23 11:51:56 +04:00
Maxim Kartashev
010bb4cd91 JBR-6617 Wayland: java/awt/Frame/HugeFrame/HugeFrame.java crashes JVM
(cherry picked from commit 1d9a2193c9)
2025-08-23 11:51:55 +04:00
Maxim Kartashev
b92815d624 JBR-6598 Wayland: window gets un-maximized after switching
When the size of the buffer changes, cancel the frame callback
and make sure that the next surface commit happens with the new buffer.

(cherry picked from commit acb2a54349)
2025-08-23 11:51:55 +04:00
Maxim Kartashev
f5169c0dbd JBR-6469 Wayland: java/awt/image/ColorModel/DrawCustomColorModel.java throws UnsupportedOperationException
(cherry picked from commit 40da67b44e)
2025-08-23 11:51:55 +04:00
Maxim Kartashev
f4c1e165aa JBR-6467 Wayland: java/awt/GraphicsConfiguration/NormalizingTransformTest/NormalizingTransformTest.java fails
(cherry picked from commit 14339b83cd)
2025-08-23 11:51:54 +04:00
Maxim Kartashev
15d9339188 JBR-6547 WLToolkit: no app icon in GNOME
Allow to associate the application's window with .desktop file with icon
and other info with -Dawt.app.id=... (DBus application name similar to
WM_CLASS in X

(cherry picked from commit 5901915afb)
2025-08-23 11:51:54 +04:00
Maxim Kartashev
a69cbcac54 JBR-6559 Wayland: popups may stop working after a while
Cancel the frame callback when hiding a window.

(cherry picked from commit fd4ba3f752)
2025-08-23 11:51:54 +04:00
Maxim Kartashev
6b742d33a0 JBR-6452 Wayland: avoid copying entire surface buffers
(cherry picked from commit b13bcec55b)
2025-08-23 11:51:54 +04:00
Maxim Kartashev
9898cea8f6 JBR-6452 Wayland: measure and improve surface buffer management
Improved rendering performance by
* reducing memory copy and making it more efficient,
* tying the next frame display to the frame event from Wayland,
  which dramatically reduces load for very quick Swing apps,
* limiting the number of buffers to 2.

(cherry picked from commit e625eeca1e)
2025-08-23 11:51:53 +04:00
Dmitrii Morskii
f67b6fdf2e JBR-6372 Wayland:
-correctly positioning SplashScreen on multiple monitors;
-correctly correctly handles cases of SplashScreen with gif with transparent parts;
-refactoring;

(cherry picked from commit 7d750cfbcf)
2025-08-23 11:51:53 +04:00
Alexey Ushakov
f59d515822 JBR-6445 Prepare RepaintManager code for displaySync=false
Refactored AWTAccessor code

(cherry picked from commit acbd18f361)
2025-08-23 11:51:53 +04:00
Dmitry Batrak
f54334c8db JBR-5961 Wayland: can't switch between projects using menu
fix activation not working on Ubuntu 23 (mutter 45.2), after a mouse button has been pressed in the originally active window

(cherry picked from commit 07fa18103e)
2025-08-23 11:51:53 +04:00