109 Commits

Author SHA1 Message Date
Karl Tauber
a1adde0888 macOS window button style: support NSWindowToolbarStyleUnified (availaible since macOS 11+; standard in macOS Finder, etc) to allow even larger space around close/minimize/zoom buttons 2024-01-12 22:48:31 +01:00
Karl Tauber
13528b49cb macOS large title bar: fixed wrong "main" JToolBar height and left inset after leaving full screen 2024-01-12 22:48:31 +01:00
Karl Tauber
241fe855cc macOS large title bar: hide NSToolbar of window title bar when window becomes full screen 2024-01-12 22:47:33 +01:00
Karl Tauber
ea2447dcb7 macOS large title bar: main JToolBar automatically:
- uses height of macOS window title bar
- adds left insets for close/minimize/zoom buttons (except if full screen, where those buttons are hidden)
2024-01-12 22:47:33 +01:00
Karl Tauber
f40baed65e macOS large title bar: add NSToolbar to NSWindow 2024-01-12 22:45:54 +01:00
Karl Tauber
cf3fa17666 fixed typos and grammar 2024-01-11 18:11:09 +01:00
Karl Tauber
46de81c1c9 macOS native:
- removed `FlatNativeMacLibrary.getWindowPtr()` because it is too dangerous to use `windowPtr` (which is `NSWindow*`) in Java (using invalid window pointer would crash app)
- made `getNSWindow()` 20x faster
- catch exceptions in `getNSWindow()`
- digitally signed dylibs
2023-12-14 14:39:26 +01:00
Karl Tauber
6f32236fb7 macOS: native rounded borders for popups (issue #715) 2023-12-09 16:12:35 +01:00
Karl Tauber
7f6f366744 flatlaf-natives-windows: support DWM attributes DWMWA_USE_IMMERSIVE_DARK_MODE, DWMWA_CAPTION_COLOR and DWMWA_TEXT_COLOR (all unused in FlatLaf core) 2023-12-07 18:53:45 +01:00
Karl Tauber
c953ff84d0 added explicit file encoding for Eclipse projects 2023-08-12 22:45:02 +02:00
Karl Tauber
96cd207df3 README.md: minor updates 2023-08-12 17:04:21 +02:00
Karl Tauber
52bae9dfb0 Windows on ARM:
- changed DLL filename from aarch64 to arm64
- publish ARM DLL to Maven Central
2023-08-05 16:11:46 +02:00
Sung Ho Yoon
b75f22b7bd Add windows-aarch64 build configuration 2023-08-04 19:19:06 +09:00
Karl Tauber
98f8557392 flatlaf-natives-windows: reworked linking/loading of jawt.dll; now loading jawt.dll when first used (issue #673) 2023-07-01 18:16:59 +02:00
Karl Tauber
97018df2f9 added Error Prone (https://errorprone.info/) and fixed reported errors and warnings
- CI runs Error Prone with Java 11
- use Gradle task `errorprone` to run it on development machine
- fixes are mostly cosmetic except:
  - use Locale.ENGLISH for String.toLowerCase()
  - use explicit character encoding when reading/writing files
  - TabbedPane: wrong logic in mouse-wheel scrolling
  - SplitPane: simplified property change listener (fixes hiding field `propertyChangeListener` of superclass)
2023-05-19 22:58:12 +02:00
Karl Tauber
9d84501bc8 Gradle: moved declaration of all external dependencies to libs.versions.toml and use Gradle version catalog 2023-05-18 15:37:03 +02:00
Karl Tauber
07ad467c73 Windows 11: use rounded popups with system border and system drop shadow 2023-01-26 18:13:26 +01:00
Karl Tauber
f9ecffb850 flatlaf-natives-windows: fixed memory allocation error handling (issue #591) 2022-11-26 19:14:24 +01:00
Karl Tauber
c9b5274ccf flatlaf-natives-windows: reworked memory allocation error handling 2022-11-26 19:05:24 +01:00
Karl Tauber
c3adadfe2f flatlaf-natives-windows: fixed compile and link errors 2022-11-23 21:27:55 +01:00
Karl Tauber
ca88023560 GitHub Actions: build using Java 19 (use toolchain because Gradle 7.5.1 does not support running on Java 19) 2022-09-28 19:15:59 +02:00
John Platts
f7be12df67 Add AllocRoutines.h include 2022-09-19 14:23:51 -05:00
John Platts
a1d1e221ae Remove operator new and operator delete overloads from Runtime.cpp
The ```operator new``` and ```operator delete``` overloads in Runtime.cpp are replaced by placement ```operator new``` and ```operator delete``` operators in AllocRoutines.h that take a const FlatLafNoThrowT& placement parameter.

Using ```new (FlatLafNoThrow) FlatWndProc``` instead of ```new FlatWndProc``` also allows for inlining by the C++ compiler.
2022-09-19 14:23:16 -05:00
John Platts
0a4dc54fb9 Update put and ensureCapacity routines 2022-09-19 14:17:37 -05:00
John Platts
b8c7801365 Change ensureCapacity method to return a bool 2022-09-19 14:06:26 -05:00
John Platts
a7099c039f Rename allocation functions 2022-09-19 13:57:25 -05:00
John Platts
a4d2d347e3 Change put method to return a bool 2022-09-19 13:56:28 -05:00
John Platts
829c537fd3 Add checks for allocation failure 2022-09-19 13:55:33 -05:00
John Platts
28437f99cf Update new and delete FlatWndProc.cpp 2022-09-19 13:53:33 -05:00
John Platts
c1402d85e1 Update HWNDMap.h 2022-09-19 13:39:47 -05:00
John Platts
32e071ab89 Update AllocRoutines.h 2022-09-19 13:36:10 -05:00
John Platts
01125e030e Create AllocRoutines.h 2022-09-19 13:26:33 -05:00
John Platts
b43278439a Delete AllocRoutines.h 2022-09-19 13:26:01 -05:00
John Platts
7a445aabd7 Create AllocRoutines.h 2022-09-19 13:25:26 -05:00
Karl Tauber
fb4576fc1b Linux: use X11 window manager events to move window and to show window menu (right-click on window title bar), if custom window decorations are enabled (issue #482) 2022-08-20 21:09:49 +02:00
Karl Tauber
99666265c9 gradle:
- use gradle `cpp-library` plugin instead of 3rd party plugin
- build natives only via task `build-natives`
2022-04-21 12:58:16 +02:00
Karl Tauber
3a8879608a Native window decorations: fixed wrong window title character encoding used in Windows taskbar (issue #502) 2022-03-17 22:31:18 +01:00
Karl Tauber
2e222bcdea Native window decorations (Windows 10/11 only): fixed rendering artifacts on HiDPI screens when dragging window partly offscreen and back into screen bounds (issue #477) 2022-02-18 22:24:36 +01:00
Karl Tauber
fb37be5734 Native window decorations: show (system) tooltips for minimize/maximize/close buttons on Windows 10 and for minimize/close buttons on Windows 11 (issues #397 and #407) 2021-11-09 18:21:17 +01:00
Karl Tauber
54e6cefa67 Native window decorations: show Windows 11 snap layouts menu when hovering the mouse over the maximize button (issues #397 and #407) 2021-11-09 15:36:21 +01:00
Karl Tauber
7f02eb9cf0 Native window decorations: when window is initially shown, fill background with window background color (instead of white), which avoids flickering in dark themes (issue #339) 2021-07-31 21:05:01 +02:00
Karl Tauber
4ab90065dc Native window decorations: when resizing a window to the right or to the bottom, then first fill the new space with the window background color (instead of black) before the layout is updated (issue #339) 2021-07-31 18:02:10 +02:00
Karl Tauber
d3e39a1359 Native window decorations: fixed occasional application crash on Windows 10 in flatlaf-windows.dll (issue #357) 2021-07-30 23:06:09 +02:00
Karl Tauber
eea341fb33 Native window decorations: fixed broken maximizing window (under special conditions) when restoring frame state at startup (issue #283) 2021-05-13 12:10:11 +02:00
Karl Tauber
9d0823038e Native window decorations: fixed occasional double window title bar when creating many frames or dialogs (issue #315) 2021-04-23 18:14:00 +02:00
Karl Tauber
c24ce7c5bc Native window decorations: fixed broken maximizing window when restoring frame state at startup (issue #283) 2021-03-25 10:32:24 +01:00
Karl Tauber
8a6a0c7971 Native window decorations: fixed missing animations when minimizing, maximizing or restoring a window using window title bar buttons (issue #282) 2021-03-24 23:59:59 +01:00
Karl Tauber
2945a36cef added since 1.1 2021-03-21 13:53:57 +01:00
Karl Tauber
8eb44a68cb Native window decorations: support 32-bit JREs 2021-03-13 23:41:38 +01:00
Karl Tauber
39d56f2603 Merge pull request #267 from native-window-decorations
Native window decorations for Windows 10 (using JNI)
2021-03-12 23:15:19 +01:00