From 9a876e747ae54d94744f7865fa5f1d5d2f8d374b Mon Sep 17 00:00:00 2001 From: Ingo Kegel Date: Tue, 23 Mar 2021 16:47:08 +0100 Subject: [PATCH] Added setter for native provider This makes it possible to support situations where the extraction of a DLL at runtime is not possible --- .../formdev/flatlaf/ui/FlatNativeWindowBorder.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatNativeWindowBorder.java b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatNativeWindowBorder.java index 1c21a5de..ff2c3150 100644 --- a/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatNativeWindowBorder.java +++ b/flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatNativeWindowBorder.java @@ -247,16 +247,19 @@ public class FlatNativeWindowBorder /* Class cls = Class.forName( "com.formdev.flatlaf.natives.jna.windows.FlatWindowsNativeWindowBorder" ); Method m = cls.getMethod( "getInstance" ); - nativeProvider = (Provider) m.invoke( null ); + setNativeProvider( (Provider) m.invoke( null ) ); */ - nativeProvider = FlatWindowsNativeWindowBorder.getInstance(); - - supported = (nativeProvider != null); + setNativeProvider( FlatWindowsNativeWindowBorder.getInstance() ); } catch( Exception ex ) { // ignore } } + public static void setNativeProvider( Provider nativeProvider ) { + FlatNativeWindowBorder.nativeProvider = nativeProvider; + supported = nativeProvider != null; + } + //---- interface Provider ------------------------------------------------- public interface Provider