Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Again with the editor panels #3217

Closed
wujastyk opened this issue Sep 13, 2017 · 12 comments
Closed

Again with the editor panels #3217

wujastyk opened this issue Sep 13, 2017 · 12 comments
Labels
component: entry-editor [outdated] type: bug Confirmed bugs or reports that are very likely to be bugs

Comments

@wujastyk
Copy link

JabRef 4.0-dev--snapshot--2017-09-13--master--343545ee8
Linux 4.10.0-33-generic amd64
Java 1.8.0_144

Steps to reproduce:

  1. open a blank Article for editing
  2. Go to Optional Fields tab and enter the DOI. Download the DOI info and "replace" the current (empty) fields.
  3. The Required Fields and Optional Fields tabs are now populated correctly
  4. The biblatex source tab is empty except for the DOI

See video log at https://www.dropbox.com/s/3vwxppehvkyulp6/jabref%20report.mp4?dl=0

@Siedlerchr
Copy link
Member

This looks like a similar problem we had with #3208 that the underlying model is updated but not the view model

@wujastyk
Copy link
Author

wujastyk commented Oct 11, 2017

JabRef 4.1-dev--snapshot--2017-10-09--master--1b030b459
Linux 4.10.0-37-generic amd64
Java 1.8.0_144

  1. Create entry in the "biblatex source" tab
  2. switch to "required entry" tab - there's nothing there.

See video: https://www.dropbox.com/s/tpr52kq3ugn1ox5/jabref%20report.mp4?dl=0

@tobiasdiez tobiasdiez added the [outdated] type: bug Confirmed bugs or reports that are very likely to be bugs label Oct 12, 2017
@lenhard
Copy link
Member

lenhard commented Oct 31, 2017

I just tested this on current master with the DOI 10.1103/PhysRevLett.119.177201. Now, the source tab and the other tabs are populated correctly, so this is almost fixed.

Almost, since I also get an exception. A normal user would not notice this since the entry editor keeps working, but it still cannot be good:

[JavaFX Application Thread] ERROR org.jabref.FallbackExceptionHandler - Uncaught exception occurred in Thread[JavaFX Application Thread,5,main]
java.lang.IndexOutOfBoundsException: [0, 11) is not a valid range within [0, 1)
	at org.reactfx.util.Lists.checkRange(Lists.java:128) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.util.Lists.checkRange(Lists.java:123) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.util.SparseList.getPresentCountBetween(SparseList.java:278) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.util.SparseList.collect(SparseList.java:310) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.collection.MemoizationListImpl.sourceChanged(MemoizationList.java:83) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.util.ListNotifications.lambda$takeHead$0(NotificationAccumulator.java:317) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.ObservableBase.notifyObservers(ObservableBase.java:68) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.ObservableBase.notifyObservers(ObservableBase.java:57) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.collection.ProperLiveList.fireModification(ProperLiveList.java:25) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.collection.ProperLiveList.fireContentReplacement(ProperLiveList.java:42) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.collection.DynamicallyMappedList.mapperInvalidated(MappedList.java:109) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.util.AbstractReducingStreamNotifications.lambda$head$0(NotificationAccumulator.java:248) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.ObservableBase.notifyObservers(ObservableBase.java:68) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.ObservableBase.notifyObservers(ObservableBase.java:57) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.value.ValBase.invalidate(ValBase.java:32) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.value.MappedVal.lambda$connect$0(MappedVal.java:28) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.value.InvalidationListenerWrapper.accept(Val.java:765) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.util.AbstractReducingStreamNotifications.lambda$head$0(NotificationAccumulator.java:248) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.ObservableBase.notifyObservers(ObservableBase.java:68) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.ObservableBase.notifyObservers(ObservableBase.java:57) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.value.ValBase.invalidate(ValBase.java:32) ~[reactfx-2.0-M5.jar:?]
	at org.fxmisc.flowless.SizeTracker$1.lambda$connect$0(SizeTracker.java:117) ~[flowless-0.5.2.jar:?]
	at org.reactfx.value.ChangeListenerWrapper.accept(Val.java:786) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.util.AbstractReducingStreamNotifications.lambda$head$0(NotificationAccumulator.java:248) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.ObservableBase.notifyObservers(ObservableBase.java:68) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.ObservableBase.notifyObservers(ObservableBase.java:57) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.value.ValBase.invalidate(ValBase.java:32) ~[reactfx-2.0-M5.jar:?]
	at org.reactfx.value.Val$2.lambda$connect$0(Val.java:691) ~[reactfx-2.0-M5.jar:?]
	at com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:349) ~[jfxrt.jar:?]
	at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) ~[jfxrt.jar:?]
	at javafx.scene.Node$LazyBoundsProperty.invalidate(Node.java:9318) ~[jfxrt.jar:?]
	at javafx.scene.Node.impl_layoutBoundsChanged(Node.java:3403) ~[jfxrt.jar:?]
	at javafx.scene.layout.Region.widthChanged(Region.java:872) ~[jfxrt.jar:?]
	at javafx.scene.layout.Region.setWidth(Region.java:856) ~[jfxrt.jar:?]
	at javafx.scene.layout.Region.resize(Region.java:1364) ~[jfxrt.jar:?]
	at org.fxmisc.richtext.GenericStyledArea.layoutChildren(GenericStyledArea.java:1339) ~[richtextfx-0.7-M5.jar:?]
	at javafx.scene.Parent.layout(Parent.java:1087) ~[jfxrt.jar:?]
	at javafx.scene.Parent.layout(Parent.java:1093) ~[jfxrt.jar:?]
	at javafx.scene.Parent.layout(Parent.java:1093) ~[jfxrt.jar:?]
	at javafx.scene.Parent.layout(Parent.java:1093) ~[jfxrt.jar:?]
	at javafx.scene.Parent.layout(Parent.java:1093) ~[jfxrt.jar:?]
	at javafx.scene.Scene.doLayoutPass(Scene.java:552) ~[jfxrt.jar:?]
	at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2397) ~[jfxrt.jar:?]
	at com.sun.javafx.tk.Toolkit.lambda$runPulse$30(Toolkit.java:355) ~[jfxrt.jar:?]
	at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_121]
	at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:354) ~[jfxrt.jar:?]
	at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:381) ~[jfxrt.jar:?]
	at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:510) ~[jfxrt.jar:?]
	at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:490) ~[jfxrt.jar:?]
	at com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$404(QuantumToolkit.java:319) ~[jfxrt.jar:?]
	at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) ~[jfxrt.jar:?]
	at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) ~[jfxrt.jar:?]
	at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191) ~[jfxrt.jar:?]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_121]

@tobiasdiez Can you reproduce this exception?

@wujastyk
Copy link
Author

wujastyk commented Nov 1, 2017

JabRef 4.1-dev--snapshot--2017-11-01--master--f6efc9f40
Linux 4.10.0-38-generic amd64
Java 1.8.0_151

This is pretty serious. I've had continuing problems over the last couple of weeks with the synchronizing of the "Required" and "biblatex" editor fields. But today there was an extreme case.

I opened today's JabRef. I went straight to the biblatex editor field. I pasted in some bibliographical and edited it to be a proper bibtex entry. Then I moved to the Required fields tab. No data. Back to the biblatex field, data is there. Then I saved. Then I moved to another Jabref entry. But then I could no longer locate the data I'd just entered. Saved again, closed the program, reopened. But JabRef lost the data I'd just entered.

@lenhard
Copy link
Member

lenhard commented Nov 1, 2017

@wujastyk Yes indeed, in the current dev version the source tab is basically broken and also affects the entry editor. Just avoid the dev version for now and give it some days to get it fixed.

@wujastyk
Copy link
Author

wujastyk commented Nov 1, 2017

JabRef 4.1-dev--snapshot--2017-11-01--master--f6efc9f40
Linux 4.10.0-38-generic amd64
Java 1.8.0_151

Latest twist: the source panel displays blank for an entry that has data.

screenshot from 2017-11-01 10-10-04

@wujastyk
Copy link
Author

wujastyk commented Nov 1, 2017

Oh, fine. I'll revert and rejoin the part in a few days :-) Thanks @lenhard !

@sambo57u
Copy link

sambo57u commented Nov 1, 2017

I have tested the two build today (latest 10:33) and I don't have this problem on Linux. I can see the source fine. The other problems (not being saved and cursor now moving after click until keyboard is used, are
still there).

@tobiasdiez
Copy link
Member

This should be fixed in the latest development version. Could you please check the build from http://builds.jabref.org/master/. Thanks!

@sambo57u
Copy link

sambo57u commented Nov 4, 2017

Wow, finally! The cursor is not at the right place when clicked and the changes to the source are saved when one switches to another entry or saves the library. Thanks.

@sambo57u
Copy link

sambo57u commented Nov 4, 2017

Sorry, I meant cursor is "now" at the right place!

@wujastyk
Copy link
Author

wujastyk commented Nov 5, 2017

JabRef 4.1-dev--snapshot--2017-11-04--master--fc01202ee
Linux 4.10.0-38-generic amd64
Java 1.8.0_151

Yes, my simple tests show success too. It's really great!

A footnote. A fix went into JabRef before the 4 release so that one could type accented characters and foreign scripts with Ibus and m17n. That still works - in the Required Fields and other tabs. But not in the biblatex source tab.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: entry-editor [outdated] type: bug Confirmed bugs or reports that are very likely to be bugs
Projects
None yet
Development

No branches or pull requests

5 participants