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

Make entry editor DND behave as specified in settings #5563

Closed
wants to merge 6 commits into from

Conversation

tobiasdiez
Copy link
Member

@tobiasdiez tobiasdiez commented Nov 3, 2019

This reverts commit ca2953d - and improves #5554

@tobiasdiez
Copy link
Member Author

@Siedlerchr please provide a proper fix. Thanks!

@koppor
Copy link
Member

koppor commented Nov 4, 2019

We also need to be consistent with our documentation. Refs https://github.com/JabRef/help.jabref.org/pull/239 and koppor#368

@koppor
Copy link
Member

koppor commented Nov 7, 2019

I finally came up with a fix. To avoid mirroring different Linux distribution behavior, the code just checks if a modifier key is present. If not, use JabRef's setting. If yes, do what the key says. - This check was not that easy, as only the mouseEvent provides info about the modifier key and the event comes AFTER the dropped event. With some boolean flags, I could work-around.

This also fixes this preference - we seem to have missed this at the review of #5315:

grafik

@koppor koppor changed the title Revert "Make entry editor DND behave as specified in settings (#5554)" Make entry editor DND behave as specified in settings Nov 7, 2019
@koppor koppor added the status: ready-for-review Pull Requests that are ready to be reviewed by the maintainers label Nov 7, 2019
Copy link
Member

@Siedlerchr Siedlerchr left a comment

Choose a reason for hiding this comment

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

This is in general a good idea. Could be simplified a bit more

src/main/java/org/jabref/gui/entryeditor/EntryEditor.java Outdated Show resolved Hide resolved
@tobiasdiez
Copy link
Member Author

Why don't you use https://openjfx.io/javadoc/11/javafx.graphics/javafx/scene/input/DragEvent.html#getTransferMode() to see if a modifier was used?

@Siedlerchr
Copy link
Member

You can't infer from the TransferMode if a modifer is pressed. Default is copy on windows, but this could have been also triggered from a modifer key (e.g. Shift?).

@koppor
Copy link
Member

koppor commented Nov 8, 2019

@tobiasdiez I fully rely on #5554 (comment)

Checking for the OS does not make any sense, as it for linux depends on the desktop system the user has, and this might be different behaviors or not supporting modifiers

I did not do full research on Linux desktop differences. GNOME vs. KDE vs. LXDE vs. wmii vs. ion vs...

Maybe, a user configured his modifiers differently. Thus, just checking for modifier precense made sense to me.

tobiasdiez and others added 4 commits November 8, 2019 10:22
Additionally:

- Fix drag'n'drop prefernces labeling for "Move file"
- Output filename if somehting goes wrong during copy of file
- Refpr,at EmtryEdotprTabViewModel
@koppor
Copy link
Member

koppor commented Nov 8, 2019

I experimented several hours with the drag'n'drop events.

Alternative 2 is IMHO to simulate a drop event on JabRef startup and store the "normal" transfer mode somewhere. However, I do not know how to simulate a drop event.

Alternative 3 is to run a build farm where we generate Mappings for the default modifiers for each operating system and desktop environment. Pro: Mapping available at startup of JabRef. Con: If a user modifies his desktop environment, this is not covered.

@tobiasdiez
Copy link
Member Author

Personally, I would let the OS decide which transfer mode is the correct one and just follow it (e.g. I don't see a reason why we should make it possible to overwrite the default drop action in the preferences...).

Alternative 3 would probably also be ok. The current approach using the key handler feels a bit hacky and I'm not sure if all edge cases are handled (e.g. user presses shift, lifts key, drops). Either way, we definitely need tests for this. This is the 4th time now that drag & drop is broken in some way.

@Siedlerchr
Copy link
Member

The easiest solution: We simply revert to the old default behavior and get rid of those damn modifiers.
Or we completely remove the setting and use only the modifiers

@koppor
Copy link
Member

koppor commented Nov 8, 2019

I see the setting as follows:

The location of a PDF dragged might differ:

  • A) in Downloads directory
  • B) in bib directory / directories
  • C) in folder shared with some team mates (dropbox or network drive)

As user:

  • When I drag'n'drop from A, I want move.
  • When I drag'n'drop from B, I want link.
  • When I drag'n'drop from C, I want link or copy
  • When I drag'n'drop, in 80% of the cases, I don't want to press any modifier key.
  • In case all PDFs are in the same directory (or sorted-in properly), a move in that directory equals a link

I think, the 80% case was the reason for the drag'n'drop setting in the preferences.

For someone working alone, "move" is the preferred setting. For someone working in groups (case C), "link" or "copy" is the best default. -- Both user groups may switch to another working mode in seldom cases. Thus, the modifiers could be required.

On Windows, the default behavior matches the "copy" case for C) only. -- When I drag'n'drop from the same drive (which is case B): move. When I drag'n'drop from another drive (which are cases A and C): copy.

We cannot change the overlay while dragging. "move" appears even if something else is done. Since "move" is not the most common thing (when reading cases A, B, C). Thus, I argue that we need to keep the setting.

@koppor koppor removed the status: ready-for-review Pull Requests that are ready to be reviewed by the maintainers label Nov 8, 2019
@tobiasdiez
Copy link
Member Author

Isn't the fact that we cannot change the overlay a reason to actually remove the preference? If the overlay says "move" but it copies/links the fie, I would be very confused as a user....

By the way, your argument applied to the Windows explorer would mean that the explorer should by default only copy files from a shared / dropbox folder or that there should be an option to change the default behavior for users that often work with shared files. I guess the reason why such an option is not provided is that consistence in behavior is more important.

@koppor
Copy link
Member

koppor commented Nov 22, 2019

We decided to remove the preferences. The default is always link (bzw. wie das OS es halt sagt). Users will have to press modifier keys for copy or move.

koppor pushed a commit that referenced this pull request Aug 1, 2021
1b00ec0 Create journal-of-international-studies.csl (#5574)
79a5d9c Switch MLA to 9th edition (#5561)
011fef3 Update for corrections (#5573)
ff5490c Create zeitschrift-fur-geschichtsdidaktik.csl (#5569)
9093f2f Create etri-journal.csl (#5570)
c9ba757 Create radiation-protection-dosimetry.csl (#5571)
60632bc Create horttechnology.csl (#5572)
e63820b Add a new journal (magnetic resonance in medical sciences) (#5542)
b656885 Create zeitschrift-fur-papyrologie-und-epigraphik.csl (#5548)
25e1eef Update technische-universitat-dresden-linguistik.csl (#5563)
c0c0da4 Create the-american-journal-of-dermatopathology.csl (#5564)
63f7db9 Update journal-of-the-american-association-of-laboratory-animal-scien… (#5566)
ba64225 Update institut-français-darcheologie-orientale-en.csl (#5553)
32e9031 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes-en.csl (#5551)
23e2cf5 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes.csl (#5550)
3e1a3f3 Update institut-français-darcheologie-orientale.csl (#5552)
176997d Update veterinary-pathology.csl (#5554)
ee035c1 Update mycologia.csl (#5555)
eb4b3a6 Create international-journal-of-automotive-technology.csl (#5557)
3c4e727 Bump addressable from 2.7.0 to 2.8.0 (#5558)
ccb81c8 Create szociologiai-szemle.csl (#5547)
ed9d740 Update brain.csl to ama.csl dependent (#5546)
ab499f2 Create iran-manual-style (#5350)
6e2b13c Update and rename dependent/estuaries-and-coasts.csl to estuaries-and-coasts.csl (#5534)
8441ff9 Create fachhochschule-suedwestfalen.csl (#5459)
8439cf4 Create freie-hochschule-stuttgart.csl (#5466)
076c513 Update midwestern-baptist-theological-seminary.csl (#5420)
350b900 Update veterinary-pathology.csl (#5543)
06261c0 Create United States International Trade Commission.csl (#5508)
7ae505d Add support for blog posts (CSL: post-weblog). (#5536)
93c97ea Update tud bwl marketing style (#5538)
4308791 Create the-chinese-journal-of-international-politics.csl (#5537)
09f3362 Add hanging-indents to infoclio.ch styles (#5540)
d4dc679 Further improvements to norsk-henvisningsstandad-for-rettsvitenskapelige-tekster.csl (#5539)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: 1b00ec0
Siedlerchr pushed a commit that referenced this pull request Aug 1, 2021
)

1b00ec0 Create journal-of-international-studies.csl (#5574)
79a5d9c Switch MLA to 9th edition (#5561)
011fef3 Update for corrections (#5573)
ff5490c Create zeitschrift-fur-geschichtsdidaktik.csl (#5569)
9093f2f Create etri-journal.csl (#5570)
c9ba757 Create radiation-protection-dosimetry.csl (#5571)
60632bc Create horttechnology.csl (#5572)
e63820b Add a new journal (magnetic resonance in medical sciences) (#5542)
b656885 Create zeitschrift-fur-papyrologie-und-epigraphik.csl (#5548)
25e1eef Update technische-universitat-dresden-linguistik.csl (#5563)
c0c0da4 Create the-american-journal-of-dermatopathology.csl (#5564)
63f7db9 Update journal-of-the-american-association-of-laboratory-animal-scien… (#5566)
ba64225 Update institut-français-darcheologie-orientale-en.csl (#5553)
32e9031 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes-en.csl (#5551)
23e2cf5 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes.csl (#5550)
3e1a3f3 Update institut-français-darcheologie-orientale.csl (#5552)
176997d Update veterinary-pathology.csl (#5554)
ee035c1 Update mycologia.csl (#5555)
eb4b3a6 Create international-journal-of-automotive-technology.csl (#5557)
3c4e727 Bump addressable from 2.7.0 to 2.8.0 (#5558)
ccb81c8 Create szociologiai-szemle.csl (#5547)
ed9d740 Update brain.csl to ama.csl dependent (#5546)
ab499f2 Create iran-manual-style (#5350)
6e2b13c Update and rename dependent/estuaries-and-coasts.csl to estuaries-and-coasts.csl (#5534)
8441ff9 Create fachhochschule-suedwestfalen.csl (#5459)
8439cf4 Create freie-hochschule-stuttgart.csl (#5466)
076c513 Update midwestern-baptist-theological-seminary.csl (#5420)
350b900 Update veterinary-pathology.csl (#5543)
06261c0 Create United States International Trade Commission.csl (#5508)
7ae505d Add support for blog posts (CSL: post-weblog). (#5536)
93c97ea Update tud bwl marketing style (#5538)
4308791 Create the-chinese-journal-of-international-politics.csl (#5537)
09f3362 Add hanging-indents to infoclio.ch styles (#5540)
d4dc679 Further improvements to norsk-henvisningsstandad-for-rettsvitenskapelige-tekster.csl (#5539)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: 1b00ec0

Co-authored-by: github actions <jabrefmail+webfeedback@gmail.com>
koppor pushed a commit that referenced this pull request Aug 15, 2021
4703b5d [Frontiers in ...] Remove formatting for volume (#5580)
3a3eb0c Create journal-of-clinical-and-translational-science.csl (#5588)
cf08af8 Create clinical-pulmonary-medicine.csl (#5589)
98985b1 Create cancer-drug-resistance.csl (#5590)
0af101d Create american-journal-of-sociology.csl (#5591)
b24e1f5 Create san-francisco-estuary-and-watershed-science.csl (#5592)
6f9323c revise Manchester UP monograph style (note-bib) (#5587)
e6f982b Delete harper-adams (#5585)
1eef78f Create international-journal-of-clinical-research.csl (#5584)
f28865e OSCOLA.csl: Add publiser info to generic/working paper secondary sources (CSL type "article"). (#5541)
197ceb1 Create system-dynamics-review.csl (#5575)
1d33da2 Create microcirculation.csl (#5577)
d06f625 Create iawa-journal.csl (#5576)
4705585 Update for corrections (#5578)
c1c7852 Create praxis.csl (#5579)
e012054 Create European Review of Agricultural Economics style (#5567)
b2fa912 Create biomarkers.csl (#5582)
1b00ec0 Create journal-of-international-studies.csl (#5574)
79a5d9c Switch MLA to 9th edition (#5561)
011fef3 Update for corrections (#5573)
ff5490c Create zeitschrift-fur-geschichtsdidaktik.csl (#5569)
9093f2f Create etri-journal.csl (#5570)
c9ba757 Create radiation-protection-dosimetry.csl (#5571)
60632bc Create horttechnology.csl (#5572)
e63820b Add a new journal (magnetic resonance in medical sciences) (#5542)
b656885 Create zeitschrift-fur-papyrologie-und-epigraphik.csl (#5548)
25e1eef Update technische-universitat-dresden-linguistik.csl (#5563)
c0c0da4 Create the-american-journal-of-dermatopathology.csl (#5564)
63f7db9 Update journal-of-the-american-association-of-laboratory-animal-scien… (#5566)
ba64225 Update institut-français-darcheologie-orientale-en.csl (#5553)
32e9031 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes-en.csl (#5551)
23e2cf5 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes.csl (#5550)
3e1a3f3 Update institut-français-darcheologie-orientale.csl (#5552)
176997d Update veterinary-pathology.csl (#5554)
ee035c1 Update mycologia.csl (#5555)
eb4b3a6 Create international-journal-of-automotive-technology.csl (#5557)
3c4e727 Bump addressable from 2.7.0 to 2.8.0 (#5558)
ccb81c8 Create szociologiai-szemle.csl (#5547)
ed9d740 Update brain.csl to ama.csl dependent (#5546)
ab499f2 Create iran-manual-style (#5350)
6e2b13c Update and rename dependent/estuaries-and-coasts.csl to estuaries-and-coasts.csl (#5534)
8441ff9 Create fachhochschule-suedwestfalen.csl (#5459)
8439cf4 Create freie-hochschule-stuttgart.csl (#5466)
076c513 Update midwestern-baptist-theological-seminary.csl (#5420)
350b900 Update veterinary-pathology.csl (#5543)
06261c0 Create United States International Trade Commission.csl (#5508)
7ae505d Add support for blog posts (CSL: post-weblog). (#5536)
93c97ea Update tud bwl marketing style (#5538)
4308791 Create the-chinese-journal-of-international-politics.csl (#5537)
09f3362 Add hanging-indents to infoclio.ch styles (#5540)
d4dc679 Further improvements to norsk-henvisningsstandad-for-rettsvitenskapelige-tekster.csl (#5539)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: 4703b5d
Siedlerchr pushed a commit that referenced this pull request Aug 15, 2021
* Squashed 'buildres/csl/csl-styles/' changes from ec4a4c0..4703b5d

4703b5d [Frontiers in ...] Remove formatting for volume (#5580)
3a3eb0c Create journal-of-clinical-and-translational-science.csl (#5588)
cf08af8 Create clinical-pulmonary-medicine.csl (#5589)
98985b1 Create cancer-drug-resistance.csl (#5590)
0af101d Create american-journal-of-sociology.csl (#5591)
b24e1f5 Create san-francisco-estuary-and-watershed-science.csl (#5592)
6f9323c revise Manchester UP monograph style (note-bib) (#5587)
e6f982b Delete harper-adams (#5585)
1eef78f Create international-journal-of-clinical-research.csl (#5584)
f28865e OSCOLA.csl: Add publiser info to generic/working paper secondary sources (CSL type "article"). (#5541)
197ceb1 Create system-dynamics-review.csl (#5575)
1d33da2 Create microcirculation.csl (#5577)
d06f625 Create iawa-journal.csl (#5576)
4705585 Update for corrections (#5578)
c1c7852 Create praxis.csl (#5579)
e012054 Create European Review of Agricultural Economics style (#5567)
b2fa912 Create biomarkers.csl (#5582)
1b00ec0 Create journal-of-international-studies.csl (#5574)
79a5d9c Switch MLA to 9th edition (#5561)
011fef3 Update for corrections (#5573)
ff5490c Create zeitschrift-fur-geschichtsdidaktik.csl (#5569)
9093f2f Create etri-journal.csl (#5570)
c9ba757 Create radiation-protection-dosimetry.csl (#5571)
60632bc Create horttechnology.csl (#5572)
e63820b Add a new journal (magnetic resonance in medical sciences) (#5542)
b656885 Create zeitschrift-fur-papyrologie-und-epigraphik.csl (#5548)
25e1eef Update technische-universitat-dresden-linguistik.csl (#5563)
c0c0da4 Create the-american-journal-of-dermatopathology.csl (#5564)
63f7db9 Update journal-of-the-american-association-of-laboratory-animal-scien… (#5566)
ba64225 Update institut-français-darcheologie-orientale-en.csl (#5553)
32e9031 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes-en.csl (#5551)
23e2cf5 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes.csl (#5550)
3e1a3f3 Update institut-français-darcheologie-orientale.csl (#5552)
176997d Update veterinary-pathology.csl (#5554)
ee035c1 Update mycologia.csl (#5555)
eb4b3a6 Create international-journal-of-automotive-technology.csl (#5557)
3c4e727 Bump addressable from 2.7.0 to 2.8.0 (#5558)
ccb81c8 Create szociologiai-szemle.csl (#5547)
ed9d740 Update brain.csl to ama.csl dependent (#5546)
ab499f2 Create iran-manual-style (#5350)
6e2b13c Update and rename dependent/estuaries-and-coasts.csl to estuaries-and-coasts.csl (#5534)
8441ff9 Create fachhochschule-suedwestfalen.csl (#5459)
8439cf4 Create freie-hochschule-stuttgart.csl (#5466)
076c513 Update midwestern-baptist-theological-seminary.csl (#5420)
350b900 Update veterinary-pathology.csl (#5543)
06261c0 Create United States International Trade Commission.csl (#5508)
7ae505d Add support for blog posts (CSL: post-weblog). (#5536)
93c97ea Update tud bwl marketing style (#5538)
4308791 Create the-chinese-journal-of-international-politics.csl (#5537)
09f3362 Add hanging-indents to infoclio.ch styles (#5540)
d4dc679 Further improvements to norsk-henvisningsstandad-for-rettsvitenskapelige-tekster.csl (#5539)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: 4703b5d

* Squashed 'buildres/csl/csl-locales/' changes from ec6d62a9e7..7a507fc008

7a507fc008 Fix spelling of October in Thai locale

git-subtree-dir: buildres/csl/csl-locales
git-subtree-split: 7a507fc0084edea8376ee5345879ddc2c99829ba

Co-authored-by: github actions <jabrefmail+webfeedback@gmail.com>
koppor pushed a commit that referenced this pull request Sep 1, 2021
2b37392 Create betriebswirtschaftliche-forschung-und-praxis.csl (#5609)
a52989c Update universitat-zu-koln-seminar-fur-abwl-und-finanzierungslehre.csl (#5610)
47c21bf Add historioPLUS (#5611)
baf11b4 Update urad-rs-za-makroekonomske-analize-in-razvoj.csl (#5607)
636affa Create pain-medicine.csl (#5606)
1d060f9 Update sist02.csl (#5568)
54e8904 Update ucl-university-college-apa.csl (#5597)
9c6308e Creation du style cahiers-du-journalisme.csl (#5595)
7dea54b Update universite-du-quebec-a-montreal.csl (#5596)
b110d07 Update journal-of-paleontology.csl (#5594)
9cc3797 Add workaround for software style in ASA (sociology) (#5464)
459dfb7 Update american-journal-of-sociology.csl (#5604)
f73d62f Create council-of-science-editors-brackets.csl (#5593)
bacf673 Remove extra accent (#5598)
55e1d40 Update system-dynamics-review.csl (#5599)
b8262e4 Update independent style for journal-of-cataract-and-refractive-surgery.csl (#5602)
04da306 Create quaderni-ministero-dei-beni-e-delle-attivita-culturali-e-del-t… (#5600)
8144588 Update journal-of-dental-research.csl (#5601)
4703b5d [Frontiers in ...] Remove formatting for volume (#5580)
3a3eb0c Create journal-of-clinical-and-translational-science.csl (#5588)
cf08af8 Create clinical-pulmonary-medicine.csl (#5589)
98985b1 Create cancer-drug-resistance.csl (#5590)
0af101d Create american-journal-of-sociology.csl (#5591)
b24e1f5 Create san-francisco-estuary-and-watershed-science.csl (#5592)
6f9323c revise Manchester UP monograph style (note-bib) (#5587)
e6f982b Delete harper-adams (#5585)
1eef78f Create international-journal-of-clinical-research.csl (#5584)
f28865e OSCOLA.csl: Add publiser info to generic/working paper secondary sources (CSL type "article"). (#5541)
197ceb1 Create system-dynamics-review.csl (#5575)
1d33da2 Create microcirculation.csl (#5577)
d06f625 Create iawa-journal.csl (#5576)
4705585 Update for corrections (#5578)
c1c7852 Create praxis.csl (#5579)
e012054 Create European Review of Agricultural Economics style (#5567)
b2fa912 Create biomarkers.csl (#5582)
1b00ec0 Create journal-of-international-studies.csl (#5574)
79a5d9c Switch MLA to 9th edition (#5561)
011fef3 Update for corrections (#5573)
ff5490c Create zeitschrift-fur-geschichtsdidaktik.csl (#5569)
9093f2f Create etri-journal.csl (#5570)
c9ba757 Create radiation-protection-dosimetry.csl (#5571)
60632bc Create horttechnology.csl (#5572)
e63820b Add a new journal (magnetic resonance in medical sciences) (#5542)
b656885 Create zeitschrift-fur-papyrologie-und-epigraphik.csl (#5548)
25e1eef Update technische-universitat-dresden-linguistik.csl (#5563)
c0c0da4 Create the-american-journal-of-dermatopathology.csl (#5564)
63f7db9 Update journal-of-the-american-association-of-laboratory-animal-scien… (#5566)
ba64225 Update institut-français-darcheologie-orientale-en.csl (#5553)
32e9031 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes-en.csl (#5551)
23e2cf5 Create institut-francais-darcheologie-orientale-domaine-des-etudes-arabes.csl (#5550)
3e1a3f3 Update institut-français-darcheologie-orientale.csl (#5552)
176997d Update veterinary-pathology.csl (#5554)
ee035c1 Update mycologia.csl (#5555)
eb4b3a6 Create international-journal-of-automotive-technology.csl (#5557)
3c4e727 Bump addressable from 2.7.0 to 2.8.0 (#5558)
ccb81c8 Create szociologiai-szemle.csl (#5547)
ed9d740 Update brain.csl to ama.csl dependent (#5546)
ab499f2 Create iran-manual-style (#5350)
6e2b13c Update and rename dependent/estuaries-and-coasts.csl to estuaries-and-coasts.csl (#5534)
8441ff9 Create fachhochschule-suedwestfalen.csl (#5459)
8439cf4 Create freie-hochschule-stuttgart.csl (#5466)
076c513 Update midwestern-baptist-theological-seminary.csl (#5420)
350b900 Update veterinary-pathology.csl (#5543)
06261c0 Create United States International Trade Commission.csl (#5508)
7ae505d Add support for blog posts (CSL: post-weblog). (#5536)
93c97ea Update tud bwl marketing style (#5538)
4308791 Create the-chinese-journal-of-international-politics.csl (#5537)
09f3362 Add hanging-indents to infoclio.ch styles (#5540)
d4dc679 Further improvements to norsk-henvisningsstandad-for-rettsvitenskapelige-tekster.csl (#5539)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: 2b37392
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.

3 participants