@@ -7,6 +7,9 @@ import com.zugaldia.speedofsound.app.DEFAULT_MARGIN
77import com.zugaldia.speedofsound.app.MAX_CREDENTIAL_NAME_LENGTH
88import com.zugaldia.speedofsound.app.MAX_CREDENTIAL_VALUE_LENGTH
99import com.zugaldia.speedofsound.app.STYLE_CLASS_SUGGESTED_ACTION
10+ import com.zugaldia.speedofsound.app.ADW_MAX_LENGTH_MIN_MAJOR_VERSION
11+ import com.zugaldia.speedofsound.app.ADW_MAX_LENGTH_MIN_MINOR_VERSION
12+ import com.zugaldia.speedofsound.app.isAdwVersionAtLeast
1013import com.zugaldia.speedofsound.core.desktop.settings.CredentialSetting
1114import com.zugaldia.speedofsound.core.desktop.settings.CredentialType
1215import com.zugaldia.speedofsound.core.generateUniqueId
@@ -35,19 +38,16 @@ class AddCredentialDialog(
3538 contentWidth = DEFAULT_ADD_CREDENTIAL_DIALOG_WIDTH
3639 contentHeight = DEFAULT_ADD_CREDENTIAL_DIALOG_HEIGHT
3740
41+ val supportsMaxLength = isAdwVersionAtLeast(ADW_MAX_LENGTH_MIN_MAJOR_VERSION , ADW_MAX_LENGTH_MIN_MINOR_VERSION )
42+
3843 nameEntry = EntryRow ().apply {
3944 title = " Name"
40- // Cannot set (report upstream?), otherwise the app crashes with:
41- // (java:1284576): java-gi-WARNING **: 09:04:54.126: java.lang.AssertionError:
42- // java.lang.invoke.WrongMethodTypeException: handle's method type (Object[])Object
43- // but found (MemorySegment, int)void in ClickedCallback
44- // maxLength = MAX_CREDENTIAL_NAME_LENGTH
45+ if (supportsMaxLength) maxLength = MAX_CREDENTIAL_NAME_LENGTH
4546 }
4647
4748 apiKeyEntry = PasswordEntryRow ().apply {
4849 title = " API Key"
49- // Do not set (see comment above)
50- // maxLength = MAX_CREDENTIAL_VALUE_LENGTH
50+ if (supportsMaxLength) maxLength = MAX_CREDENTIAL_VALUE_LENGTH
5151 }
5252
5353 val preferencesGroup = PreferencesGroup ().apply {
@@ -111,7 +111,9 @@ class AddCredentialDialog(
111111
112112 @Suppress(" ReturnCount" )
113113 private fun validateInput (name : String , apiKey : String ): Boolean {
114- if (name.isEmpty() || apiKey.isEmpty()) { return false }
114+ if (name.isEmpty() || apiKey.isEmpty()) {
115+ return false
116+ }
115117 if (name.length > MAX_CREDENTIAL_NAME_LENGTH ) {
116118 logger.warn(" Credential name too long: ${name.length} > $MAX_CREDENTIAL_NAME_LENGTH " )
117119 return false
0 commit comments