Skip to content

Field right-click 'Protect terms' resulting in error #4958

@alfureu

Description

@alfureu

JabRef 5.0-dev--snapshot--2019-05-06--master--c168c4978
Windows 10 10.0 amd64
Java 1.8.0_172

Steps to reproduce the behavior:

  1. Add author field, ie: Directorate-General for Research and Innovation
  2. Right-click and select Protect terms > Add {} around selected text
  3. Error (see screenshot)
  4. Even if the {} brackets are manually added, it is ignored in the main list

image

Log File
java.lang.IllegalStateException: Task must only be used from the FX Application Thread
  at javafx.concurrent.Task.checkThread(Task.java:1218)
  at javafx.concurrent.Task.isRunning(Task.java:985)
  at org.controlsfx.control.textfield.AutoCompletionBinding.onUserInputChanged(AutoCompletionBinding.java:333)
  at org.controlsfx.control.textfield.AutoCompletionBinding.setUserInput(AutoCompletionBinding.java:135)
  at org.jabref.gui.autocompleter.AutoCompletionTextInputBinding.setUserInputText(AutoCompletionTextInputBinding.java:136)
  at org.jabref.gui.autocompleter.AutoCompletionTextInputBinding.lambda$new$1074(AutoCompletionTextInputBinding.java:54)
  at com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:361)
  at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81)
  at javafx.scene.control.TextInputControl$TextProperty.fireValueChangedEvent(TextInputControl.java:1389)
  at javafx.scene.control.TextInputControl$TextProperty.markInvalid(TextInputControl.java:1393)
  at javafx.scene.control.TextInputControl$TextProperty.controlContentHasChanged(TextInputControl.java:1332)
  at javafx.scene.control.TextInputControl$TextProperty.access$1600(TextInputControl.java:1300)
  at javafx.scene.control.TextInputControl.lambda$new$162(TextInputControl.java:139)
  at com.sun.javafx.binding.ExpressionHelper$SingleInvalidation.fireValueChangedEvent(ExpressionHelper.java:137)
  at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81)
  at javafx.scene.control.TextField$TextFieldContent.insert(TextField.java:87)
  at javafx.scene.control.TextInputControl.replaceText(TextInputControl.java:1204)
  at javafx.scene.control.TextInputControl.filterAndSet(TextInputControl.java:1171)
  at javafx.scene.control.TextInputControl.access$900(TextInputControl.java:79)
  at javafx.scene.control.TextInputControl$TextProperty.doSet(TextInputControl.java:1410)
  at javafx.scene.control.TextInputControl$TextProperty.set(TextInputControl.java:1323)
  at javafx.scene.control.TextInputControl$TextProperty.set(TextInputControl.java:1300)
  at javafx.beans.property.StringProperty.setValue(StringProperty.java:65)
  at javafx.beans.property.StringProperty.setValue(StringProperty.java:57)
  at com.sun.javafx.binding.BidirectionalBinding$TypedGenericBidirectionalBinding.changed(BidirectionalBinding.java:601)
  at com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:361)
  at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81)
  at javafx.beans.property.StringPropertyBase.fireValueChangedEvent(StringPropertyBase.java:103)
  at javafx.beans.property.StringPropertyBase.markInvalid(StringPropertyBase.java:110)
  at javafx.beans.property.StringPropertyBase.set(StringPropertyBase.java:144)
  at javafx.beans.property.StringPropertyBase.set(StringPropertyBase.java:49)
  at javafx.beans.property.StringProperty.setValue(StringProperty.java:65)
  at javafx.beans.property.StringProperty.setValue(StringProperty.java:57)
  at org.jabref.gui.util.BindingsHelper$BidirectionalBinding.updateLocked(BindingsHelper.java:234)
  at org.jabref.gui.util.BindingsHelper$BidirectionalBinding.changedB(BindingsHelper.java:227)
  at com.sun.javafx.binding.ExpressionHelper$SingleChange.fireValueChangedEvent(ExpressionHelper.java:182)
  at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81)
  at javafx.beans.binding.ObjectBinding.invalidate(ObjectBinding.java:172)
  at com.sun.javafx.binding.BindingHelperObserver.invalidated(BindingHelperObserver.java:51)
  at com.sun.javafx.collections.MapListenerHelper$Generic.fireValueChangedEvent(MapListenerHelper.java:320)
  at com.sun.javafx.collections.MapListenerHelper.fireValueChangedEvent(MapListenerHelper.java:72)
  at com.sun.javafx.collections.ObservableMapWrapper.callObservers(ObservableMapWrapper.java:115)
  at com.sun.javafx.collections.ObservableMapWrapper.put(ObservableMapWrapper.java:169)
  at org.jabref.model.entry.BibEntry.setField(BibEntry.java:413)
  at org.jabref.model.cleanup.FieldFormatterCleanup.cleanupSingleField(FieldFormatterCleanup.java:63)
  at org.jabref.model.cleanup.FieldFormatterCleanup.cleanupAllTextFields(FieldFormatterCleanup.java:88)
  at org.jabref.model.cleanup.FieldFormatterCleanup.cleanup(FieldFormatterCleanup.java:32)
  at org.jabref.model.cleanup.FieldFormatterCleanups.applyAllActions(FieldFormatterCleanups.java:71)
  at org.jabref.model.cleanup.FieldFormatterCleanups.applySaveActions(FieldFormatterCleanups.java:61)
  at org.jabref.logic.exporter.BibDatabaseWriter.lambda$applySaveActions$192(BibDatabaseWriter.java:60)
  at java.util.Optional.ifPresent(Unknown Source)
  at org.jabref.logic.exporter.BibDatabaseWriter.applySaveActions(BibDatabaseWriter.java:57)
  at org.jabref.logic.exporter.BibDatabaseWriter.savePartOfDatabase(BibDatabaseWriter.java:172)
  at org.jabref.logic.exporter.BibDatabaseWriter.saveDatabase(BibDatabaseWriter.java:143)
  at org.jabref.logic.autosaveandbackup.BackupManager.performBackup(BackupManager.java:124)
  at java.util.Optional.ifPresent(Unknown Source)
  at org.jabref.logic.autosaveandbackup.BackupManager.lambda$new$132(BackupManager.java:49)
  at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
  at java.util.concurrent.FutureTask.run(Unknown Source)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
  at java.lang.Thread.run(Unknown Source)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions