Compare commits

...

5 Commits
3.1 ... 3.1.1

Author SHA1 Message Date
Karl Tauber
e84390ee46 release 3.1.1 2023-04-18 15:01:44 +02:00
Karl Tauber
65a0f467ae Native libraries: Fixed IllegalArgumentException: URI scheme is not "file" when using FlatLaf in WebStart. (issue #668; regression in FlatLaf 3.1) 2023-04-17 21:33:56 +02:00
Karl Tauber
4afb150106 IntelliJ Themes:
- Fixed too large menu item paddings and too large table/tree row heights (all
  "Material Theme UI Lite" themes; issue #667; regression in FlatLaf 3.1).
- Fixed too large tree row height in "Carbon", "Dark Purple", "Gray",
  "Material Design Dark", "Monokai Pro", "One Dark" and "Spacegray" themes.
2023-04-17 13:45:05 +02:00
Karl Tauber
0f6702217e updated CHANGELOG.md and README.md for FlatLaf 3.1 2023-04-12 13:55:22 +02:00
Karl Tauber
13a0097858 updated sigtest for FlatLaf 3.1
(generated in clean workspace with gradle task `sigtestGenerate`)
2023-04-03 12:24:38 +02:00
6 changed files with 48 additions and 7 deletions

View File

@@ -1,12 +1,23 @@
FlatLaf Change Log FlatLaf Change Log
================== ==================
## 3.1.1
- IntelliJ Themes:
- Fixed too large menu item paddings and too large table/tree row heights (all
"Material Theme UI Lite" themes; issue #667; regression in FlatLaf 3.1).
- Fixed too large tree row height in "Carbon", "Dark Purple", "Gray",
"Material Design Dark", "Monokai Pro", "One Dark" and "Spacegray" themes.
- Native libraries: Fixed `IllegalArgumentException: URI scheme is not "file"`
when using FlatLaf in WebStart. (issue #668; regression in FlatLaf 3.1)
## 3.1 ## 3.1
#### New features and improvements #### New features and improvements
- Windows 11: Popups (`JPopupMenu`, `JComboBox`, `JToolTip`, etc.) now use - Windows 11: Popups (`JPopupMenu`, `JComboBox`, `JToolTip`, etc.) now use
native Windows 11 rounded borders and drop shadows. native Windows 11 rounded borders and drop shadows. (PR #643)
- Fonts: - Fonts:
- Added **Roboto Mono** (https://fonts.google.com/specimen/Roboto+Mono). (PR - Added **Roboto Mono** (https://fonts.google.com/specimen/Roboto+Mono). (PR
#639, issue #638) #639, issue #638)
@@ -20,6 +31,18 @@ FlatLaf Change Log
tab, then this color is now used even if the tab is focused or selected. tab, then this color is now used even if the tab is focused or selected.
- TableHeader: Support column hover and pressed background and foreground - TableHeader: Support column hover and pressed background and foreground
colors. (issue #636) colors. (issue #636)
- Native libraries: Made it easier to distribute FlatLaf native libraries
(Windows `.dll` and Linux `.so`) to avoid problems on operating systems with
enabled execution restrictions.
See https://www.formdev.com/flatlaf/native-libraries/ for more details. (issue #624)
- Published native libraries to Maven Central for easy using them as
dependencies in Gradle and Maven.
- If available, native libraries are now loaded from same location as
`flatlaf.jar`, otherwise they are extract from `flatlaf.jar` to temporary
folder and loaded from there.
- Windows DLLs are now digitally signed with FormDev Software GmbH
certificate.
#### Fixed bugs #### Fixed bugs

View File

@@ -66,6 +66,11 @@ Otherwise download `flatlaf-<version>.jar` here:
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.formdev/flatlaf/badge.svg?style=flat-square&color=007ec6)](https://maven-badges.herokuapp.com/maven-central/com.formdev/flatlaf) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.formdev/flatlaf/badge.svg?style=flat-square&color=007ec6)](https://maven-badges.herokuapp.com/maven-central/com.formdev/flatlaf)
See also
[Native Libraries distribution](https://www.formdev.com/flatlaf/native-libraries/)
for instructions on how to redistribute FlatLaf native libraries with your
application.
### Snapshots ### Snapshots

View File

@@ -14,7 +14,7 @@
* limitations under the License. * limitations under the License.
*/ */
val releaseVersion = "3.1" val releaseVersion = "3.1.1"
val developmentVersion = "3.2-SNAPSHOT" val developmentVersion = "3.2-SNAPSHOT"
version = if( rootProject.hasProperty( "release" ) ) releaseVersion else developmentVersion version = if( rootProject.hasProperty( "release" ) ) releaseVersion else developmentVersion

View File

@@ -1,5 +1,5 @@
#Signature file v4.1 #Signature file v4.1
#Version 3.0 #Version 3.1
CLSS public abstract interface com.formdev.flatlaf.FlatClientProperties CLSS public abstract interface com.formdev.flatlaf.FlatClientProperties
fld public final static java.lang.String BUTTON_TYPE = "JButton.buttonType" fld public final static java.lang.String BUTTON_TYPE = "JButton.buttonType"
@@ -12,6 +12,7 @@ fld public final static java.lang.String BUTTON_TYPE_TOOLBAR_BUTTON = "toolBarBu
fld public final static java.lang.String COMPONENT_FOCUS_OWNER = "JComponent.focusOwner" fld public final static java.lang.String COMPONENT_FOCUS_OWNER = "JComponent.focusOwner"
fld public final static java.lang.String COMPONENT_ROUND_RECT = "JComponent.roundRect" fld public final static java.lang.String COMPONENT_ROUND_RECT = "JComponent.roundRect"
fld public final static java.lang.String COMPONENT_TITLE_BAR_CAPTION = "JComponent.titleBarCaption" fld public final static java.lang.String COMPONENT_TITLE_BAR_CAPTION = "JComponent.titleBarCaption"
fld public final static java.lang.String GLASS_PANE_FULL_HEIGHT = "JRootPane.glassPaneFullHeight"
fld public final static java.lang.String MENU_BAR_EMBEDDED = "JRootPane.menuBarEmbedded" fld public final static java.lang.String MENU_BAR_EMBEDDED = "JRootPane.menuBarEmbedded"
fld public final static java.lang.String MINIMUM_HEIGHT = "JComponent.minimumHeight" fld public final static java.lang.String MINIMUM_HEIGHT = "JComponent.minimumHeight"
fld public final static java.lang.String MINIMUM_WIDTH = "JComponent.minimumWidth" fld public final static java.lang.String MINIMUM_WIDTH = "JComponent.minimumWidth"
@@ -19,6 +20,7 @@ fld public final static java.lang.String OUTLINE = "JComponent.outline"
fld public final static java.lang.String OUTLINE_ERROR = "error" fld public final static java.lang.String OUTLINE_ERROR = "error"
fld public final static java.lang.String OUTLINE_WARNING = "warning" fld public final static java.lang.String OUTLINE_WARNING = "warning"
fld public final static java.lang.String PLACEHOLDER_TEXT = "JTextField.placeholderText" fld public final static java.lang.String PLACEHOLDER_TEXT = "JTextField.placeholderText"
fld public final static java.lang.String POPUP_BORDER_CORNER_RADIUS = "Popup.borderCornerRadius"
fld public final static java.lang.String POPUP_DROP_SHADOW_PAINTED = "Popup.dropShadowPainted" fld public final static java.lang.String POPUP_DROP_SHADOW_PAINTED = "Popup.dropShadowPainted"
fld public final static java.lang.String POPUP_FORCE_HEAVY_WEIGHT = "Popup.forceHeavyWeight" fld public final static java.lang.String POPUP_FORCE_HEAVY_WEIGHT = "Popup.forceHeavyWeight"
fld public final static java.lang.String PROGRESS_BAR_LARGE_HEIGHT = "JProgressBar.largeHeight" fld public final static java.lang.String PROGRESS_BAR_LARGE_HEIGHT = "JProgressBar.largeHeight"

View File

@@ -336,8 +336,13 @@ public class IntelliJTheme
uiKeys.add( key ); uiKeys.add( key );
// fix ComboBox size and Spinner border in all Material UI Lite themes // ignore some properties that affect sizes
if( isMaterialUILite && (key.equals( "ComboBox.padding" ) || key.equals( "Spinner.border" )) ) if( key.endsWith( ".border" ) ||
key.endsWith( ".rowHeight" ) ||
key.equals( "ComboBox.padding" ) ||
key.equals( "Spinner.padding" ) ||
key.equals( "Tree.leftChildIndent" ) ||
key.equals( "Tree.rightChildIndent" ) )
return; // ignore return; // ignore
// map keys // map keys

View File

@@ -18,6 +18,7 @@ package com.formdev.flatlaf.ui;
import java.io.File; import java.io.File;
import java.net.URL; import java.net.URL;
import java.security.CodeSource;
import com.formdev.flatlaf.FlatSystemProperties; import com.formdev.flatlaf.FlatSystemProperties;
import com.formdev.flatlaf.util.LoggingFacade; import com.formdev.flatlaf.util.LoggingFacade;
import com.formdev.flatlaf.util.NativeLibrary; import com.formdev.flatlaf.util.NativeLibrary;
@@ -128,10 +129,15 @@ class FlatNativeLibrary
private static File findLibraryBesideJar( String classifier, String ext ) { private static File findLibraryBesideJar( String classifier, String ext ) {
try { try {
// get location of FlatLaf jar // get location of FlatLaf jar
URL jarUrl = FlatNativeLibrary.class.getProtectionDomain().getCodeSource().getLocation(); CodeSource codeSource = FlatNativeLibrary.class.getProtectionDomain().getCodeSource();
URL jarUrl = (codeSource != null) ? codeSource.getLocation() : null;
if( jarUrl == null ) if( jarUrl == null )
return null; return null;
// if url is not a file, then we're running in a special environment (e.g. WebStart)
if( !"file".equals( jarUrl.getProtocol() ) )
return null;
File jarFile = new File( jarUrl.toURI() ); File jarFile = new File( jarUrl.toURI() );
// if jarFile is a directory, then we're in a development environment // if jarFile is a directory, then we're in a development environment