Skip to content

Commit a0d6f72

Browse files
[Copy] Include string constants in copy (#11)
Signed-off-by: Anders Blomqvist <anders@minaemail.se>
1 parent 7317c2e commit a0d6f72

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

src/main/java/org/jabref/gui/maintable/MainTable.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
import org.jabref.model.database.event.EntriesAddedEvent;
5252
import org.jabref.model.entry.BibEntry;
5353
import org.jabref.model.entry.BibEntryTypesManager;
54+
import org.jabref.model.entry.BibtexString;
5455
import org.jabref.model.util.FileUpdateMonitor;
5556
import org.jabref.preferences.PreferencesService;
5657

@@ -257,8 +258,14 @@ public void copy() {
257258
List<BibEntry> selectedEntries = getSelectedEntries();
258259

259260
if (!selectedEntries.isEmpty()) {
261+
List<BibtexString> stringConstants = getStringValues();
262+
260263
try {
261-
clipBoardManager.setContent(selectedEntries, entryTypesManager);
264+
if (!stringConstants.isEmpty()) {
265+
clipBoardManager.setContent(selectedEntries, entryTypesManager, stringConstants);
266+
} else {
267+
clipBoardManager.setContent(selectedEntries, entryTypesManager);
268+
}
262269
dialogService.notify(Localization.lang("Copied %0 entry(ies)", selectedEntries.size()));
263270
} catch (IOException e) {
264271
LOGGER.error("Error while copying selected entries to clipboard.", e);
@@ -489,4 +496,11 @@ private Optional<BibEntryTableViewModel> findEntry(BibEntry entry) {
489496
.filter(viewModel -> viewModel.getEntry().equals(entry))
490497
.findFirst();
491498
}
499+
500+
private List<BibtexString> getStringValues() {
501+
return database.getDatabase()
502+
.getStringValues()
503+
.stream()
504+
.toList();
505+
}
492506
}

0 commit comments

Comments
 (0)