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

Show pdf comments #2545

Merged
merged 136 commits into from
Feb 15, 2017
Merged

Show pdf comments #2545

merged 136 commits into from
Feb 15, 2017

Conversation

lenhard
Copy link
Member

@lenhard lenhard commented Feb 15, 2017

This is a follow-up to #1883 which I cannot modify because I have no commit access to that branch.

I tested the features under Windows and it works fine overall. Opening the PDF at the position of the annotation does not work for me, hence I removed the button that provided this functionality. At this time (four month of inactivity in the other PR), the only point is to get the functionality in that actually works.

  • Change in CHANGELOG.md described
  • Manually tested changed features in running JabRef

ayanai1 and others added 30 commits August 29, 2016 14:52
# Conflicts:
#	src/main/java/net/sf/jabref/gui/entryeditor/EntryEditor.java
# Conflicts:
#	CHANGELOG.md
#	src/databaseTest/java/net/sf/jabref/shared/DBMSSynchronizerTest.java
#	src/databaseTest/java/net/sf/jabref/shared/SynchronizationTestSimulator.java
#	src/jmh/java/net/sf/jabref/benchmarks/Benchmarks.java
#	src/main/java/net/sf/jabref/BibDatabaseContext.java
#	src/main/java/net/sf/jabref/gui/BasePanel.java
#	src/main/java/net/sf/jabref/gui/DuplicateResolverDialog.java
#	src/main/java/net/sf/jabref/gui/JabRefFrame.java
#	src/main/java/net/sf/jabref/gui/StringDialog.java
#	src/main/java/net/sf/jabref/gui/actions/BrowseAction.java
#	src/main/java/net/sf/jabref/gui/bibtexkeypattern/BibtexKeyPatternDialog.java
#	src/main/java/net/sf/jabref/gui/entryeditor/EntryEditor.java
#	src/main/java/net/sf/jabref/gui/entryeditor/PdfCommentsTab.java
#	src/main/java/net/sf/jabref/gui/importer/ImportFileFilter.java
#	src/main/java/net/sf/jabref/gui/importer/actions/AppendDatabaseAction.java
#	src/main/java/net/sf/jabref/gui/maintable/MainTable.java
#	src/main/java/net/sf/jabref/gui/maintable/MainTableColumn.java
#	src/main/java/net/sf/jabref/gui/mergeentries/MergeFetchedEntryDialog.java
#	src/main/java/net/sf/jabref/gui/openoffice/StyleSelectDialog.java
#	src/main/java/net/sf/jabref/gui/preftabs/PreferencesDialog.java
#	src/main/java/net/sf/jabref/gui/protectedterms/ProtectedTermsDialog.java
#	src/main/java/net/sf/jabref/gui/shared/OpenSharedDatabaseDialog.java
#	src/main/java/net/sf/jabref/gui/shared/SharedDatabaseUIManager.java
#	src/main/java/net/sf/jabref/gui/util/PositionWindow.java
#	src/main/java/net/sf/jabref/logic/auxparser/AuxParser.java
#	src/main/java/net/sf/jabref/logic/bibtexkeypattern/BibtexKeyPatternPreferences.java
#	src/main/java/net/sf/jabref/logic/bibtexkeypattern/BibtexKeyPatternUtil.java
#	src/main/java/net/sf/jabref/logic/importer/fileformat/BibtexParser.java
#	src/main/java/net/sf/jabref/logic/importer/fileformat/PdfContentImporter.java
#	src/main/java/net/sf/jabref/logic/msbib/BibTeXConverter.java
#	src/main/java/net/sf/jabref/logic/msbib/MSBibDatabase.java
#	src/main/java/net/sf/jabref/logic/msbib/MSBibEntry.java
#	src/main/java/net/sf/jabref/logic/pdf/PdfCommentImporter.java
#	src/main/java/net/sf/jabref/logic/util/io/RegExpFileSearch.java
#	src/main/java/net/sf/jabref/logic/xmp/XMPSchemaBibtex.java
#	src/main/java/net/sf/jabref/model/database/BibDatabase.java
#	src/main/java/net/sf/jabref/model/entry/BibEntry.java
#	src/main/java/net/sf/jabref/pdfimport/PdfImporter.java
#	src/main/java/net/sf/jabref/preferences/JabRefPreferences.java
#	src/main/java/net/sf/jabref/shared/DBMSProcessor.java
#	src/main/java/net/sf/jabref/shared/DBMSSynchronizer.java
#	src/test/java/net/sf/jabref/BibDatabaseContextTest.java
#	src/test/java/net/sf/jabref/gui/importer/actions/ConvertLegacyExplicitGroupsTest.java
#	src/test/java/net/sf/jabref/logic/auxparser/AuxParserTest.java
#	src/test/java/net/sf/jabref/logic/bibtexkeypattern/BibtexKeyPatternUtilTest.java
#	src/test/java/net/sf/jabref/logic/exporter/BibtexDatabaseWriterTest.java
#	src/test/java/net/sf/jabref/logic/groups/ExplicitGroupTest.java
#	src/test/java/net/sf/jabref/logic/groups/GroupTreeNodeTest.java
#	src/test/java/net/sf/jabref/logic/groups/KeywordGroupTest.java
#	src/test/java/net/sf/jabref/logic/importer/fileformat/BibtexParserTest.java
#	src/test/java/net/sf/jabref/logic/integrity/EntryLinkCheckerTest.java
#	src/test/java/net/sf/jabref/model/database/KeyChangeListenerTest.java
#	src/test/resources/net/sf/jabref/logic/exporter/MsBibExportFormatTest2.xml
import net.sf.jabref.model.entry.BibEntry;
import net.sf.jabref.model.pdf.FileAnnotation;

import org.apache.commons.collections4.map.LRUMap;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we use a class from google guava instead? Because of this LRUMap class, the whole commons collections library has to be included.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To be done in the future: #2546

@lenhard lenhard merged commit 9614fd8 into master Feb 15, 2017
@lenhard lenhard deleted the show-pdf-comments branch February 15, 2017 16:44
@kafran
Copy link

kafran commented May 13, 2017

@lenhard is this really hard to implement? #662. It would be really helpful to open the annotation on the PDF location.

JabRef could store the page number/label of the annotation and the user could configure its preferred PDF reader as: exec evince -i $PAGE $FILE_PATH or exec firefox $FILE_PATH#page=$PAGE

This solves the arbitrary combinations of operating systems and pdf readers, no?

@lenhard
Copy link
Member Author

lenhard commented May 14, 2017

@kafran It is all relative of course ;-)

Storing the page number/ label of the annotation is already done right now, I guess. What makes this a lot of effort is if we want offer built-in configurations for a number of pdf readers and operating system (since we would have to test that). I guess if we just offer the user to execute a command he has to configure himself, it would get easier. We would still get support requests from people asking how things should work for their particular configuration, though.

Anyway, I guess this could be done. I don't see anyone from the current developers volunteering right now (@jabref/developers feel free to disagree), but you are very welcome to go ahead with an implementation and to provide a pull request!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants