Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JBR-7194: substituting empty extension with "Unix executable" type in macOS file dialog #479

Open
wants to merge 1,320 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1320 commits
Select commit Hold shift + click to select a range
81977b5
JBR-6545 java/awt/Mixing/AWT_Mixing/JProgressPaneOverlapping.java fai…
avu Jul 16, 2024
6972c11
JBR-7438 tune updateCursorImmediately method
dmitriimorskii Jun 5, 2024
353ca42
JBR-7449: Fix press-and-hold cancel keys not being swallowed by JBR
tsarn Jul 29, 2024
bebc3af
JBR-6588: JBR API for inspecting certain properties of KeyEvents
tsarn Jun 5, 2024
424fe1e
Fix rendering of HTML list dots + better vertical align for them.
yeswolf Sep 8, 2017
c86acf1
Update jbr-api version to 1.0.2
sshelomentsev Aug 2, 2024
17dea8f
JBR-5956 Provide more details on assertion failure
mkartashev Aug 6, 2024
66804ba
JBR-6772 handled case with adding new timers after VM was suspended
dmitriimorskii Aug 7, 2024
1f7f27e
JBR-7460: fixed (macos) MTLTexturePool GC implementation to release t…
bourgesl Aug 9, 2024
394c904
JBR-7426: Fix cancelling press-and-hold causing some future key event…
tsarn Aug 9, 2024
e4de825
JBR-7460: fixed (macos) MTLTexturePool GC implementation: minor synta…
bourgesl Aug 13, 2024
718382c
Update README.md
vprovodin Aug 14, 2024
389333e
JBR-7517 build JBR artefacts with CDS archives
vprovodin Aug 19, 2024
a13b4d9
JBR-7529: Explicitly check for press-and-hold in performKeyEquivalent
tsarn Aug 22, 2024
46f68eb
JBR-7456 add regression test checking if implementations of all avail…
vprovodin Aug 23, 2024
ce98676
JBR-7532 upgrade alpine up to 3.14, specify versions of installing pa…
vprovodin Aug 23, 2024
3762508
Update README.md
vprovodin Aug 26, 2024
bc983fd
Initial version of WLToolkit and Vulkan support
avu Aug 20, 2021
3af9565
Wayland: fixed build errors with older versions of Wayland
mkartashev Apr 18, 2023
a40c032
Wayland: fixed build errors on macOS
mkartashev Apr 18, 2023
1ec2b2c
Wayland: fix AWT initialization on macOS
mkartashev Apr 21, 2023
6dcca06
JBR-5655 java/awt/Toolkit/Wayland/WaylandToolkit.java: WLToolkit not …
mkartashev May 19, 2023
1d2a645
JBR-5657 Wayland: sometimes there's a deadlock at the start
mkartashev May 20, 2023
bc4d780
JBR-5658 Wayland: incorrect scaling of window content
mkartashev May 24, 2023
049804b
JBR-5666 Wayland: WLToolkit doesn't work with weston
mkartashev May 31, 2023
ea5c675
JBR-5661 Wayland: implement heavy-weight popup windows
mkartashev May 30, 2023
2ab9f77
JBR-5645 Provide basic classes for Vulkan rendering pipeline
avu Nov 11, 2022
83f276d
JBR-5861 Wayland: minimum necessary stubs to run IDEA
mkartashev Jul 21, 2023
842209c
JBR-5896: Fix WLToolkit being instantiated twice
tsarn Aug 10, 2023
4f0e5a4
JBR-5900: Fix deadlock when enabling the Wakefield extension
tsarn Aug 10, 2023
57ba27b
JBR-5676: Support emulating input events in Wakefield
tsarn Aug 15, 2023
eb95a8c
Regenerate wakefield-client-protocol using an older wayland-scanner t…
tsarn Aug 17, 2023
ea637bc
JBR-5962 Wayland: fix the main event loop to allow for secondary queues
mkartashev Aug 21, 2023
ed2d366
JBR-5963: Fix RobotKeyboard test and implement getLockingKeyState
tsarn Aug 24, 2023
6b21752
JBR-5968 Wayland: support PERPIXEL_TRANSLUCENT
mkartashev Sep 2, 2023
f19cb0c
JBR-6032 WLToolkit: Uninitialized WLComponentPeer sends paint requests
avu Sep 5, 2023
3a85613
JBR-6032 WLToolkit: Uninitialized WLComponentPeer sends paint requests
avu Sep 6, 2023
4c7aef8
JBR-5973 Implement rendering of no-AA shapes with Vulkan pipeline
YaaZ Aug 8, 2023
32b5bfb
JBR-6036 Wayland: Cannot invoke "java.awt.Component.getWidth()" becau…
mkartashev Sep 6, 2023
ca52f36
JBR-6045 WLToolkit(Vulkan): Add options to select physical device
avu Sep 7, 2023
9b180be
JBR-6045 WLToolkit(Vulkan): Add options to select physical device
avu Sep 8, 2023
4c625cc
JBR-6025 Wayland: miscellaneous small improvements
mkartashev Sep 4, 2023
0167d5c
JBR-5989 Wayland: jdk_awt_wayland test group
mkartashev Sep 6, 2023
9cf604f
JBR-6071 Alpine Linux compilation: error: implicit declaration of fun…
mkartashev Sep 15, 2023
16b75ef
JBR-5961 Wayland: can't switch between projects using menu
JB-Dmitry Sep 8, 2023
9b1c938
JBR-5961 Wayland: can't switch between projects using menu
JB-Dmitry Sep 15, 2023
d42b004
JBR-5961 Wayland: can't switch between projects using menu
JB-Dmitry Sep 25, 2023
4a36725
JBR-6117 Wayland: JVM shutdown hang
mkartashev Sep 27, 2023
2aa4603
JBR-6138 Wayland: utilize gtk_shell1 protocol to mark dialogs as modal
mkartashev Sep 28, 2023
b6752e7
JBR-6145 [Wayland toolkit] Popup windows aren't focusable
JB-Dmitry Sep 29, 2023
49279f5
JBR-5857 Wayland: implement clipboard support
mkartashev Jul 20, 2023
260384f
JBR-6158 Cannot build jbr21 with wayland toolkit on wsl2
avu Oct 2, 2023
da74238
JBR-6144 Build JBR with Vulkan support
YaaZ Sep 29, 2023
2142d88
JBR-6183 Wayland: clipboard-related exception in headless environment
mkartashev Oct 10, 2023
8c20c2d
JBR-6207 Wayland: many popup windows positioned incorrectly
mkartashev Oct 17, 2023
cbe5d59
JBR-5977 Wayland: make undecorated windows natively resizeable
mkartashev Oct 17, 2023
4e2c211
JBR-6209 Wayland: popup windows cannot be moved
mkartashev Oct 18, 2023
2156f96
JBR-6212 Wayland: app does not terminate upon Wayland protocol error
mkartashev Oct 31, 2023
8508fda
JBR-6253 Wayland: can't run in weston because of xdg_wm_base version 3
mkartashev Nov 1, 2023
b7b5632
JBR-5965 Wayland: implement SplashScreen
dmitriimorskii Aug 9, 2023
c2c4c41
JBR-5678: Refactor Wayland keyboard support
tsarn Nov 10, 2023
77462fb
JBR-6276 Wayland: WLToolkit logs too much
mkartashev Nov 10, 2023
cc8cacf
JBR-6313 Wayland: pasting from clipboard doesn't always work
mkartashev Nov 20, 2023
03b3846
JBR-6321 Wayland: popup windows do not respect screen bounds
mkartashev Nov 20, 2023
54170f1
JBR-6316 Wayland: WLSMSurfaceData.getReplacement() throws UOE
mkartashev Nov 21, 2023
b558037
JBR-6276 Wayland: WLToolkit logs too much
mkartashev Nov 24, 2023
a6ecac1
JBR-6213 Wayland: removed blurring on cursor on multiple monitors wit…
dmitriimorskii Nov 8, 2023
9a4fab0
JBR-6391 Wayland: memory indicator tooltip flickers
mkartashev Dec 5, 2023
93fcce7
JBR-6416 Wayland: IDEA maximize button out of sync sometimes
mkartashev Dec 12, 2023
72c8b50
JBR-5961 Wayland: can't switch between projects using menu
JB-Dmitry Dec 15, 2023
d8a9869
JBR-6445 Prepare RepaintManager code for displaySync=false
avu Dec 19, 2023
69b41f0
JBR-6372 Wayland:
dmitriimorskii Nov 22, 2023
c14610f
JBR-6452 Wayland: measure and improve surface buffer management
mkartashev Dec 21, 2023
d8ba607
JBR-6452 Wayland: avoid copying entire surface buffers
mkartashev Jan 3, 2024
99975f3
JBR-6559 Wayland: popups may stop working after a while
mkartashev Jan 22, 2024
66cea9f
JBR-6547 WLToolkit: no app icon in GNOME
mkartashev Jan 23, 2024
7049d05
JBR-6467 Wayland: java/awt/GraphicsConfiguration/NormalizingTransform…
mkartashev Feb 8, 2024
c40e032
JBR-6469 Wayland: java/awt/image/ColorModel/DrawCustomColorModel.java…
mkartashev Feb 7, 2024
b9e7722
JBR-6598 Wayland: window gets un-maximized after switching
mkartashev Jan 31, 2024
00cfa80
JBR-6617 Wayland: java/awt/Frame/HugeFrame/HugeFrame.java crashes JVM
mkartashev Feb 1, 2024
3a5387f
JBR-6722 OutOfMemoryError: Failed to allocate Wayland surface buffer
mkartashev Feb 21, 2024
dc953ab
JBR-6736 libwakefield crashes weston
mkartashev Feb 21, 2024
12bb74f
JBR-6519 Linux: SIGSEGV at [libwayland] wl_proxy_get_version
mkartashev Feb 19, 2024
48a61d7
JBR-6504 Wayland: optional Robot capability to peek at current window…
mkartashev Feb 28, 2024
6bccb12
JBR-6783 MouseEvent/MenuDragMouseEventAbsoluteCoordsTest/MenuDragMous…
mkartashev Mar 5, 2024
a669512
JBR-6787 WLToolkit/wsl: crash in WLComponentPeer.setCursor
avu Mar 6, 2024
2261743
JBR-6814 Wayland: support sun.java2d.uiScale property
mkartashev Mar 7, 2024
fe3f36c
JBR-6448 Wayland: IDEA window looks pixelated after monitors scale wa…
mkartashev Mar 18, 2024
70a26cc
JBR-6884 SIGSEGV in Java_sun_java2d_wl_WLSMSurfaceData_pixelsAt
mkartashev Mar 25, 2024
87b17e7
JBR-6895 Wayland: cursor changes to resize at edges even when window …
mkartashev Mar 26, 2024
1e85b67
JBR-6920 Wayland: some IDEA popups positioned incorrectly
mkartashev Apr 2, 2024
d36e237
JBR-6926 Wayland: fonts are aliased/grainy on first start
mkartashev Apr 5, 2024
651d173
JBR-7010 Wayland: Swing window resizing is not smooth enough
mkartashev Apr 16, 2024
00da89c
JBR-7044: Reset clickCount on mouse moves [WLToolkit]
tsarn Apr 23, 2024
5012254
JBR-6434: Fix pointer leave also resetting the keyboard modifiers [WL…
tsarn Apr 24, 2024
cbdd283
JBR-6848: Support extra mouse buttons for navigation [WLToolkit]
tsarn Apr 24, 2024
11efe98
JBR-7063: Make .getKeyChar() report chars in KEY_PRESSED/KEY_RELEASED…
tsarn Apr 26, 2024
ec5ba46
JBR-7058 Wayland: IDE hang on the popup appearance
mkartashev May 2, 2024
960f233
JBR-6576 Wayland: exception when double-clicking dialog title bar
mkartashev May 6, 2024
639b12d
JBR-7047 Deadlock on git fetch on Wayland
mkartashev May 3, 2024
ec5715e
JBR-7028 Implement FPS counter on Linux
mkartashev Apr 25, 2024
7b0bfb1
JBR-7158 Wayland: scale with wp_viewport instead of buffer scale
mkartashev May 8, 2024
81ca2ca
JBR-7198 Wayland: jvm crashes under KDE
mkartashev May 23, 2024
d9b84cd
JBR-7201 Wayland: update copyright in files generated by wayland-scanner
mkartashev May 24, 2024
d722a3b
JBR-7209 Wayland: modernize window decorations
mkartashev May 25, 2024
18977a8
JBR-6543 Vulkan: migrate current code to pure c (#267)
avu May 29, 2024
5f4aa06
JBR-7206 Wayland: Stylepad demo flickers when resizing on KDE
mkartashev May 24, 2024
b6e30f9
JBR-7202 wayland: memory leak when resizing windows
mkartashev May 30, 2024
3e129f4
JBR-7237 Separate display connect from WLToolkit initialization
mkartashev Jun 3, 2024
0de15fb
JBR-7256 Vulkan: Implement FILL_PARALLELOGRAM primitive for flat colo…
avu Jun 4, 2024
c95e864
JBR-7072 Wayland: clicks on items of floating context menus are ignor…
mkartashev Jun 14, 2024
150334c
JBR-7237 Fix cyclic dependency of Wayland and Vulkan initialization (…
YaaZ Jun 14, 2024
0f21b0d
JBR-7307 Add stub for VKInstance.initNative with disabled Vulkan.
YaaZ Jun 14, 2024
9dcd430
JBR-7305 Vulkan: Implement FILL_SPANS primitive for flat color rendering
avu Jun 13, 2024
cf74d8b
JBR-7308 Vulkan: Build failure in vulkan enabled builds
avu Jun 14, 2024
05ef9db
JBR-7290 Wayland: window permanently looses focus after invoking Go T…
mkartashev Jun 14, 2024
dbd0e6e
JBR-7254 Impossible to copy/paste files in Project tree
mkartashev Jun 18, 2024
72224fc
JBR-7259 Find Usages popup can't be resized under Wayland
mkartashev Jun 21, 2024
baffad6
JBR-7390 Wayland: need better headless exception message
mkartashev Jul 11, 2024
47adf63
JBR-7419 Refactor Vulkan code
YaaZ Jul 19, 2024
35777bb
JBR-7420 Vulkan: Implement DRAW_PARALLELOGRAM primitive for flat colo…
avu Jul 29, 2024
f5366b5
JBR-7452 Vulkan: Reuse VkRenderPass for multiple renderers (#428)
avu Aug 1, 2024
5811f77
JBR-7397 CLion 2024.2-EAP/Wayland crashes on startup with Miriway
mkartashev Jul 12, 2024
bd719fb
JBR-7397 Wayland: make certain interfaces optional
mkartashev Aug 7, 2024
1c1c9ed
JBR-7313 Wayland: error: xdg_surface buffer does not match the config…
mkartashev Aug 12, 2024
fd46278
JBR-7461: Implement VKTexturePool for the linux vulkan pipeline:
bourgesl Jul 26, 2024
e55bbb6
JBR-7478: Fix wrong timestamps on KEY_TYPED events [WLToolkit]
tsarn Aug 13, 2024
35376ed
JBR-7501 Wayland: SurfaceData.flush() method is mis-used
mkartashev Aug 15, 2024
a8d2c38
JBR-7516 Wayland: DamageList_AddList: Assertion `list != add' failed
mkartashev Aug 20, 2024
dc0ebea
JBR-7493 Wayland: can't start in maximized state on WSL
mkartashev Aug 21, 2024
f0b2bcd
JBR-7016 IDEA 2024.2 Wayland: UI Crash when selecting Code and pressi…
mkartashev Aug 21, 2024
21015e9
JBR-7126 add more possible names for cursor arrow icon
dmitriimorskii Aug 22, 2024
a58b0fe
JBR-7569 Removed VMA-Hpp (#450)
YaaZ Aug 28, 2024
8e4a14a
JBR-7568 Vulkan: Refactor VKLogicalDevice into VKDevice (#449)
YaaZ Aug 28, 2024
08cdb69
JBR-7570 Implemented ring buffer. Added lazy implicit initialization …
YaaZ Aug 28, 2024
540287b
Fix WindowMoveService on Wayland
YaaZ Jun 6, 2024
c5df33a
Added proper copyright headers
mkartashev May 23, 2024
3baed2c
JBR-6468 Wayland: java/awt/datatransfer/MimeFormatsTest.java fails by…
mkartashev Feb 5, 2024
ada2ce0
JBR-6763 Wayland: application crashes when popup closed
xdom Mar 18, 2024
6eb6225
JBR-5615 added missing part for WLToolkit
mkartashev Aug 28, 2024
cd55e4c
JBR-5973 Vulkan: Fix validation errors (#452)
YaaZ Aug 29, 2024
1b0f949
JBR-7588 Metal: Reuse MTLContext for all GCs of the same GPU
avu Aug 30, 2024
a92855b
Update README.md
vprovodin Sep 3, 2024
d504a31
JBR-7481 Work around mouse entered/exited bug
Aug 12, 2024
d6c8704
JBR-7484 Update the cursor on mouse entered/exited
Sep 3, 2024
041ed2b
JBR-7594 Check for LWCToolkit in JBR TextInput API
tsarn Sep 5, 2024
f11a2fa
JBR-7586 Fix title click ungrab when an active user component is clicked
Sep 2, 2024
6754f5d
Update README.md
vprovodin Sep 10, 2024
031106b
JBR-7459: Wayland: touchpad scrolling is too sensitive.
NikitkoCent Aug 2, 2024
38ab888
JBR-5673: Wayland: support touch scrolling.
NikitkoCent Aug 4, 2024
4bf32e8
JBR-7600 Provide ability to add messages to fatal error log
mkartashev Sep 9, 2024
3d3655f
JBR-7616: improved MTLRenderQueue exception handling
bourgesl Sep 11, 2024
22365fc
JBR-7556 Check negative glyphID in HBShaper
YaaZ Sep 16, 2024
5131700
Update README.md
vprovodin Sep 18, 2024
b212212
JBR-7572 Vulkan: Implement vertex buffer pool
YaaZ Sep 4, 2024
e063296
JBR-7644 Vulkan: Move barrier state tracking from surface into image
YaaZ Sep 5, 2024
39ff6b4
JBR-7572 Bring back VKBuffer functions
YaaZ Sep 19, 2024
14fa76d
Update README.md
vprovodin Sep 23, 2024
8c3d2e0
Update README.md
vprovodin Sep 23, 2024
7279b29
JBR-7616: added ThreadUtilities.lwc_plog(env, formatMsg, ...) to use …
bourgesl Sep 11, 2024
80d9487
JBR-7567 apply standard measurement scripts to Dacapo
vprovodin Aug 28, 2024
ce115eb
JBR-7566 apply standard measurement scripts to Render
vprovodin Sep 6, 2024
946f3c2
JBR-7675: Respect disabling key repeat [WLToolkit]
tsarn Sep 26, 2024
8312cb0
JBR-7616: fixed type (str)
bourgesl Sep 27, 2024
96a064a
JBR-7511 migrate build platforms to OL8
vprovodin Sep 3, 2024
c72a132
JBR-7662: Fix key repeat manager sometimes not cancelling properly [W…
tsarn Sep 30, 2024
b56ec43
JBR-7672: Only abort key repeat when the key that is being repeated i…
tsarn Sep 30, 2024
8a4c164
Update README.md
vprovodin Sep 30, 2024
b387f19
JBR-1061 .attach_pid files in the working dir - flag to put .attach f…
gorrus Apr 5, 2019
4031f08
JBR-1354 com/sun/tools/attach/PermissionTest.java: access denied ("ja…
gorrus Apr 9, 2019
f97ab83
JBR-7677 Vulkan: Implement Graphics.drawImage()
avu Aug 1, 2024
8dc315b
JBR-7504 WLToolkit - Middle click paste doesn't work properly when pa…
mkartashev Sep 17, 2024
8572e8c
JBR-7504 Use accurate event serial number with the clipboard
mkartashev Sep 19, 2024
11172c2
JBR-7524: Workaround for showing window tiling actions when hovering …
tsarn Oct 1, 2024
ab78621
JBR-7574 Vulkan: Implement memory allocator
YaaZ Sep 3, 2024
fbe850a
Update README.md
vprovodin Oct 6, 2024
990d5bb
JBR-7943 Vulkan: Provide utilities for inspecting image formats
YaaZ Nov 22, 2024
7ac9124
JBR-7575 Vulkan: Implement composites (blending and XOR mode)
YaaZ Sep 3, 2024
e84b799
JBR-7564 Vulkan: Fix HIDPI and multi-monitor scenarios
YaaZ Aug 26, 2024
39cf37b
JBR-7563 Vulkan: Implement MASK_FILL
YaaZ Aug 27, 2024
ea9f39c
JBR-7645 Vulkan: Implement hash table for pipeline sets
YaaZ Sep 5, 2024
42ec91b
JBR-7565 Vulkan: Implement clip
YaaZ Sep 6, 2024
a9520c8
Update README.md
vprovodin Oct 8, 2024
964b312
JBR-7724 Add vulkan support to the performance scripts
avu Oct 8, 2024
03d682d
JBR-7579 Fix SurfaceManager.cacheMap retaining strong references.
YaaZ Oct 9, 2024
79ac86b
JBR-5448: Return all shortcuts from readSystemHotkeys
tsarn Oct 9, 2024
9770570
JBR-7673 Cleanup docker scripts
YaaZ Sep 26, 2024
598f8a6
JBR-7653 Prepare Docker images for Vulkan builds
YaaZ Sep 26, 2024
de5e6c2
JBR-5726: Report 'Move focus to the previous window in application' s…
tsarn Oct 10, 2024
32bf9f3
JBR-5690: Reload next window shortcut when it changes
tsarn Oct 10, 2024
0a350ef
JBR-6324: JBR API for System Shortcuts (macOS)
tsarn Oct 10, 2024
f92ee0a
JBR-7721 Copying from IntelliJ in pure Wayland on ChromeOS confuses U…
mkartashev Oct 14, 2024
256026b
Update README.md
vprovodin Oct 15, 2024
bdc0dcb
JBR-7748 java/awt/font/JNICheck/FreeTypeScalerJNICheck.java: JNI call…
mkartashev Oct 15, 2024
31fe658
Update README.md
vprovodin Oct 16, 2024
4618fca
JBR-7544 Wayland: Cannot resize window to more that 3500px vertically
mkartashev Oct 14, 2024
9a49e3d
JBR-4725 File dialog modality
YaaZ Oct 17, 2024
8dbfc03
JBR-7749 Settings popup invoked from the main toolbar appears misalig…
mkartashev Oct 15, 2024
ba3046e
JBR-7764: Disable window decorations in test/jb/java/awt/Window/Resto…
tsarn Oct 18, 2024
7b88ba7
JBR-7766 Fix VKTexturePool OOM.
YaaZ Oct 18, 2024
dea182b
JBR-7302 added additional emptiness check in getGlyphOutlineBounds
dmitriimorskii Oct 23, 2024
0853f0c
JBR-7726 X11 toolkit: Dialog buttons rendering black rectangle after …
mkartashev Oct 23, 2024
6060578
JBR-7663 Wayland: add wayland-protocols to the docker files
mkartashev Oct 11, 2024
f170ba8
JBR-7663 Wayland: generate proxy code with wayland-scanner on the fly
mkartashev Oct 9, 2024
efa1f70
JBR-7663 Wayland: make gtk-shell1 protocol support optional
mkartashev Oct 11, 2024
52c411b
JBR-6691 test/jdk/jdk/internal/misc/VM/RuntimeArguments.java fails on…
mkartashev Oct 25, 2024
959d383
JBR-7797 build fastdebug without jcef
vprovodin Oct 23, 2024
e61cdc0
Update README.md
vprovodin Oct 29, 2024
3ea9551
JBR-7392: Use NIO FS in ZipFile
knisht Jul 8, 2024
286b005
JBR-7466 Exception on VM startup with `-Djava.util.zip.use.nio.for.zi…
knisht Aug 5, 2024
64d9c18
JBR-7700 Route java.io file system operations via java.nio.file
mkartashev Sep 26, 2024
76dd227
JBR-7734 add zip distribution for Windows
sshelomentsev Oct 30, 2024
8409f52
JBR-7811 Wayland: IDE dialogs and popups flash black before opening
mkartashev Oct 25, 2024
02f5ee1
JBR-7833 Wayland: typeahead problem in a popup
JB-Dmitry Oct 31, 2024
9d2cf4a
JBR-6754 setting nopixfmt in case of running on Remote Desktop
dmitriimorskii Nov 1, 2024
4d3f900
JBR-7840 Vulkan: Fix compilation in Docker container
YaaZ Nov 1, 2024
7a215c2
JBR-6144 enable building JBR with Vulkan
vprovodin Nov 1, 2024
d1a028e
Update README.md
vprovodin Nov 1, 2024
6ef1853
JBR-7800 Fix notarization of jbrsdk (sign libs and execs inside jmod …
sshelomentsev Nov 3, 2024
e98460f
JBR-7846 Vulkan: Fix compilation in Musl Docker container
YaaZ Nov 4, 2024
00d23f8
fixup! JBR-7800 Add jnativescan to signing
sshelomentsev Nov 6, 2024
760c6a7
JBR-7856 use jmod from currently built JDK
sshelomentsev Nov 7, 2024
a69f748
JBR-7760 Pure wayland: incorrect popup scale
mkartashev Nov 5, 2024
2b9406e
JBR-7838 added getTreeLock to updateCursorImpl
dmitriimorskii Nov 7, 2024
3e477d0
JBR-3572 Wayland: java/awt/Window/WindowTitleVisibleTest/WindowTitleV…
mkartashev Jul 5, 2021
1d8b711
JBR-7851 Wayland: IDEA crashes if Esc is pressed to close Diff window
mkartashev Nov 7, 2024
1a32da5
JBR-7859 Wayland: Unexpected focus owner set in a Window
mkartashev Nov 7, 2024
61eaac0
JBR-3862 Implement native WatchService on MacOS
mkartashev Oct 9, 2021
743b43f
JBR-5483 MacOSXWatchService assumes that the default file system is t…
mkartashev Apr 5, 2023
c96fc25
JBR-7051 Improved D3D Toolkit:
dmitriimorskii May 15, 2024
0de2bbe
JBR-7900 Improve logic of detecting toolkit inside registerShutdownHook
dmitriimorskii Nov 14, 2024
c786aeb
JBR-7040 implemented FPS counter on D3D
dmitriimorskii Aug 29, 2024
7b33337
update exclude list on results of 2765 test runs
vprovodin Nov 14, 2024
7098fbc
JBR-7916 Wayland: tests open-sourced in 2024.09 fail
mkartashev Nov 18, 2024
e340c88
JBR-7867 Notarization scripts: fail build if signing of separate file…
sshelomentsev Nov 11, 2024
f0866ac
update exclude list on results of 2777 test runs
vprovodin Nov 18, 2024
6b8704c
Update README.md
vprovodin Nov 20, 2024
52b0e85
JBR-7683 Revert "8185862: AWT Assertion Failure in ::GetDIBits(hBMDC,…
YaaZ Nov 21, 2024
13611ab
Rebase fixups (temporary)
mkartashev Nov 22, 2024
adcf289
JBR-7939 set max wait to 1 min for jetsign client
sshelomentsev Nov 22, 2024
1e4dec0
Update README.md
vprovodin Nov 25, 2024
de03e10
update exclude list on results of 2827 test runs
vprovodin Nov 28, 2024
f49afd7
JBR-5318 add Github workflow usage for pull requests pre-commit testing
sshelomentsev Feb 28, 2023
c78bcbc
JBR-7879 Wayland: Self-moving quick-doc popup in nightly
mkartashev Nov 19, 2024
4838ac0
JBR-7071 Wayland: cursor does not change when hovering over gutter icons
mkartashev Nov 29, 2024
097cee1
JBR-7969 Wayland: some popups misplaced when maximized with fractiona…
mkartashev Nov 28, 2024
8ac109c
JBR-7972 Wayland: EXTREME lag when scrolling through any type of list…
mkartashev Nov 29, 2024
21a2b35
JBR-7919 add tests for Wayland popups
sshelomentsev Nov 19, 2024
e6aaeb3
JBR-7983 adapt the Dockerfile.oraclelinux to build jcef
ujpv Dec 3, 2024
40c8242
JBR-7194: substituting empty extension with "Unix executable" type in…
trespasserw Dec 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
238 changes: 238 additions & 0 deletions .github/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,238 @@
[![official JetBrains project](http://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)

# Welcome to JetBrains Runtime!

JetBrains Runtime is a fork of [OpenJDK](https://github.com/openjdk/jdk) available for Windows, Mac OS X, and Linux.
It supports enhanced class redefinition ([DCEVM](https://ssw.jku.at/dcevm/)),
features optional [JCEF](https://github.com/JetBrains/jcef), a framework for embedding Chromium-based browsers,
includes a number of improvements in font rendering, keyboards support,
windowing/focus subsystems, HiDPI, accessibility, and performance, provides better desktop integration
and bugfixes not yet present in OpenJDK.

> **_NOTE_**: This is a **development** branch that is periodically synchronized with
> the [OpenJDK master](https://github.com/openjdk/jdk/tree/master) branch.
>
Release builds are based on these branches:
* [jbr11](https://github.com/JetBrains/JetBrainsRuntime/tree/jbr11) (JDK 11)
* [jbr17](https://github.com/JetBrains/JetBrainsRuntime/tree/jbr17) (JDK 17)
* [jbr21](https://github.com/JetBrains/JetBrainsRuntime/tree/jbr21) (JDK 21)

Download the latest releases of JetBrains Runtime to use with JetBrains IDEs. The full list
can be found on the [releases page](https://github.com/JetBrains/JetBrainsRuntime/releases).

## Releases based on JDK 21

| IDE Version | Latest JBR | Date Released |
|-------------|---------------------------------------------------------------------------------------------------------|---------------|
| 2024.3 | [21.0.5-b631.28](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-21.0.5b631.28) | 26-Nov-2024 |
| 2024.2 | [21.0.4-b509.30](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-21.0.5b509.30) | 26-Nov-2024 |
| 2024.1 | [21.0.2-b346.3](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-21.0.2b346.3) | 30-Jan-2024 |

## Releases based on JDK 17

| IDE Version | Latest JBR | Date Released |
|-------------|--------------------------------------------------------------------------------------------------------|---------------|
| 2024.2 | [17.0.11-b1312.2](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.11b1312.2) | 18-Jun-2024|
| 2024.1 | [17.0.12-b1207.37](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.12b1207.37) | 15-Oct-2024|
| 2023.3 | [17.0.12-b1087.25](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.12b1087.25) | 02-Sep-2024|
| 2023.2 | [17.0.12-b1000.54](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.12b1000.54) | 02-Sep-2024|
| 2023.1 | [17.0.10-b829.27](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.10b829.27) | 21-Mar-2024 |
| 2022.3 | [17.0.6-b653.34](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.6b653.34) | 28-Feb-2023 |
| 2022.2 | [17.0.6-b469.82](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.6b469.82) | 06-Mar-2023 |

## Releases based on JDK 11

| IDE Version | Latest JBR | Date Released |
|-------------|-------------------------------------------------------------------------------------------------------|---------------|
| 2022.1 | [11_0_16-b2043.64](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr11_0_16b2043.64) | 10-Nov-2022 |
| 2021.3 | [11_0_14_1-b1751.46](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr11_0_14_1b1751.46) | 21-Feb-2022 |
| 2021.2 | [11_0_13-b1504.49](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jb11_0_13-b1504.49) | 15-Nov-2021 |
| 2021.1 | [11.0.11+9-b1341.60](https://github.com/JetBrains/JetBrainsRuntime/issues/171#issuecomment-1248891540)| 15-Jun-2021 |
| 2020.3 | [11_0_10-b1145.115](https://github.com/JetBrains/JetBrainsRuntime/issues/171#issuecomment-1249243977) | 21-Jun-2021 |

## Contents
- [Welcome to JetBrains Runtime](#welcome-to-jetbrains-runtime)
- [Why Use JetBrains Runtime?](#why-use-jetbrains-runtime)
- [Products Built on JetBrains Runtime](#products-built-on-jetbrains-runtime)
- [Getting Sources](#getting-sources)
- [macOS, Linux](#macos-linux)
- [Windows](#sources-windows)
- [Configuring the Build Environment](#configuring-the-build-environment)
- [Linux (Docker)](#linux-docker)
- [Ubuntu Linux](#ubuntu-linux)
- [Windows](#build-windows)
- [macOS](#macos)
- [Developing](#developing)
- [Contributing](#contributing)
- [Resources](#resources)

## Why Use JetBrains Runtime?
* **Embedded browser**: JetBrains Runtime includes the Java Chromium Embedded Framework ([JCEF](https://github.com/JetBrains/jcef)), which
enables you to embed a Chromium-based browsers in your JVM-based application.
To use it, [download a build with JCEF](https://github.com/JetBrains/JetBrainsRuntime/releases).
* **Enhanced class re-definition** with the [DCEVM](https://ssw.jku.at/dcevm/) technology that makes it easier to reload
changed code without restarting JVM; this feature needs to be explicitly enabled with `-XX:+AllowEnhancedClassRedefinition`.
* **Better FPS performance** for graphics-intensive applications.
* **Improved font rendering**, **keyboard input** (such as shortcuts and multinational keyboards),
**HiDPI** and **accessibility** support.
* **Robust desktop experience**: GUI-related fixes often reach JetBrains Runtime much earlier than the corresponding version of OpenJDK.

## Products Built on JetBrains Runtime
* [Android Studio](https://developer.android.com/studio). The official IDE for Google's Android operating system.
* [CLion](https://www.jetbrains.com/clion/). A cross-platform IDE for C and C++ from JetBrains.
* [DataGrip](https://www.jetbrains.com/datagrip/). The IDE for Databases and SQL from JetBrains.
* [GoLand](https://www.jetbrains.com/go/). The cross-platform Go IDE from JetBrains.
* [IntelliJ IDEA](https://www.jetbrains.com/idea/). The IDE for JVM from JetBrains.
* [JProfiler](https://www.ej-technologies.com/products/jprofiler/overview.html). The Java profiler.
* [PhpStorm](https://www.jetbrains.com/phpstorm/). The PHP IDE from JetBrains.
* [PyCharm](https://www.jetbrains.com/pycharm/). The Python IDE from JetBrains.
* [Rider](https://www.jetbrains.com/rider/). The cross-platform .NET IDE from JetBrains.
* [RubyMine](https://www.jetbrains.com/ruby/). The Ruby and Rails IDE from JetBrains.
* [Toolbox App](https://www.jetbrains.com/toolbox-app/). JetBrains IDE manager.
* [WebStorm](https://www.jetbrains.com/webstorm/). The JavaScript IDE from JetBrains.
* [YourKit](https://www.yourkit.com/). Java and .NET profilers.

## Getting Sources
### macOS, Linux
```
git config --global core.autocrlf input
git clone [email protected]:JetBrains/JetBrainsRuntime.git
```

### Windows
<a name="sources-windows"></a>
```
git config --global core.autocrlf false
git clone [email protected]:JetBrains/JetBrainsRuntime.git
```

## Configuring the Build Environment
Here are quick per-platform instructions for those who can't wait to get started.
Please refer to [OpenJDK build docs](https://openjdk.java.net/groups/build/doc/building.html) for in-depth
coverage of all the details.

> **_TIP:_** To get a preliminary report of what's missing, run `./configure` and check its output.
> It would usually have meaningful advice on how to solve the problem.

### Linux (Docker)
Create a container (use the `mkdocker...` variant for your architecture):
```
$ cd jb/project/docker
$ ./mkdocker_x86_64.sh
...
Successfully built 942ea9900054
```
Run these commands in the new container:
```
$ docker run -v `pwd`../../../../:/JetBrainsRuntime -it 942ea9900054
# cd /JetBrainsRuntime
# sh ./configure
# make images
```

### Ubuntu Linux
Install the necessary tools, libraries, and headers with:
```
$ sudo apt-get install autoconf make build-essential libx11-dev libxext-dev libxrender-dev libxtst-dev \
libxt-dev libxrandr-dev libcups2-dev libfontconfig1-dev libasound2-dev libspeechd-dev libwayland-dev \
wayland-protocols libxkbcommon-x11-0
```
Get Java 23 (for instance, [Azul Zulu Builds of OpenJDK 23](https://www.azul.com/downloads/?version=java-23&os=linux&package=jdk#zulu)).

Then run the following:
```
$ cd JetBrainsRuntime
$ git checkout main
$ sh ./configure
$ make images
```
This will build the release configuration under `./build/linux-x86_64-server-release/`.

### Windows
<a name="build-windows"></a>
Install the following:
* [Cygwin x64](http://www.cygwin.com/).
Required packages: `autoconf`, `binutils`, `cpio`, `diffutils`, `file`, `gawk`, `gcc-core`, `make`, `m4`, `unzip`, `zip`.
Install those together with Cygwin.
* [Visual Studio compiler toolset](https://visualstudio.microsoft.com/downloads/).
Install with the desktop development kit, which includes Windows SDK and compilers.
Visual Studio 2019 is supported by default.
* Java 21 (for instance, [Azul Zulu Builds of OpenJDK 21](https://www.azul.com/downloads/?version=java-21-lts&os=windows&package=jdk#zulu)).
If you have problems while configuring, read [Java tips on Cygwin](http://horstmann.com/articles/cygwin-tips.html).

From the command line:
```
"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
"c:\Program_Files\cygwin64\bin\mintty.exe" /bin/bash -l
```
The first command sets up environment variables, the second starts a Cygwin shell with the proper environment.

In the Cygwin shell:
```
$ cd JetBrainsRuntime
$ git checkout main
$ bash configure --with-toolchain-version=2019
$ make images
```
This will build the release configuration under `./build/windows-x86_64-server-release/`.

#### Enable optional NVDA screen reader support
If you want to add support of a11y announcing via [NVDA screen reader](https://www.nvaccess.org/about-nvda/),
you will need to bundle the NVDA Controller Client library.
You can do it with the following steps:
1. Download the NVDA Controller Client library. You can find the link in its official README [here](https://github.com/nvaccess/nvda/blob/master/extras/controllerClient/readme.md)
2. Pass the path to the unpacked package to `configure` via an additional flag `--with-nvdacontrollerclient=<path>`.
The build system will search the required library files under `<path>/<target-arch>`.

#### Disable optional JAWS screen reader support
JBR is built with built-in support of JAWS screen reader.
If you want to disable it, run `configure` with the additional flag `--disable-jaws-client`.

### macOS
Install the following:
* Xcode command line developer tools and `autoconf` via [Homebrew](https://brew.sh/).
* Java 21 (for instance, [Azul Zulu Builds of OpenJDK 21](https://www.azul.com/downloads/?version=java-21-lts&os=macos&package=jdk#zulu)).

From the command line:
```
$ cd JetBrainsRuntime
$ git checkout main
$ sh ./configure
$ make images
```
This will build the release configuration under `./build/macosx-x86_64-server-release/`.

## Developing
You can use [CLion](https://www.jetbrains.com/clion/) to develop native parts of the JetBrains Runtime and
[IntelliJ IDEA](https://www.jetbrains.com/idea/) for the parts written in Java.
Both require projects to be created.

### CLion
Run
```
$ make compile-commands
```
in the git root and open the resulting `build/.../compile_commands.json` file as a project.
Then use `Tools | Compilation Database | Change Project Root` to point to git root of this repository.

See also this detailed step-by-step tutorial for all platforms:
[How to develop OpenJDK with CLion](https://blog.jetbrains.com/clion/2020/03/openjdk-with-clion/).

### IDEA
Run
```
$ sh ./bin/idea.sh
```
in the git root to generate project files (add `--help` for options). If you have multiple
configurations (for example, `release` and `fastdebug`), supply the `--conf <conf_name>` argument.
Then open the git root directory as a project in IDEA.

## Contributing
We are happy to receive your pull requests!
Before you submit one, please sign our [Contributor License Agreement (CLA)](https://www.jetbrains.com/agreements/cla/).

## Resources
* [JetBrains Runtime on GitHub](https://github.com/JetBrains/JetBrainsRuntime).
* [OpenJDK build instructions](https://openjdk.java.net/groups/build/doc/building.html).
* [OpenJDK test instructions](https://htmlpreview.github.io/?https://raw.githubusercontent.com/openjdk/jdk/master/doc/building.html#running-tests).
* [How to develop OpenJDK with CLion](https://blog.jetbrains.com/clion/2020/03/openjdk-with-clion/).
1 change: 1 addition & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ on:
- master
- pr/*
- jdk*
- main
workflow_dispatch:
inputs:
platforms:
Expand Down
Loading