Problem/Motivation
#2713587: NodeController::revisionOverview() shows no revisions if node has no translation for current language brought up again that we have a conflict between trying to show only translation-relevant content in places like admin listings, vs. showing people the full history of nodes. This is also a conflict between trying to maintain the original UX of translation sets from 6/7 vs. the field translation approach.
Overall I think the revision tab should show all edits to a node regardless of affected language. For example how else would you undo adding a translation except reverting to the revision just before? We could then have a per-language filter on the page to show only affected languages. Or two tab
Proposed resolution
1. Status quo
2. Show all revisions
3. Have an 'all revisions' tab
4. Show all revisions but have the option to filter by language
Comments
Comment #2
mkalkbrennerJust showing all revisions is not a solution. That will reintroduce all the issues we fixed by limiting the shown revisions to the affected ones.
A bit of history:
What could be discussed is a language selector or a separate tab.
I already proposed something like that but finally webchick decided to go for the current solution because it "simulates" the D7 behavior where revisions of translations where decoupled.
Comment #3
catchWhile that's true in the case of what core offered, a lot of multilingual 7.x sites (like all the ones I've worked on) use entity_translation which shows everything together. Part of the reason we moved from translation sets to field/entity translation was because the separate nodes was not working well.
Comment #4
mkalkbrenner@catch: I think we're basically of the same opinion.
There are both use-cases, one to show all revisions regardless of their translation, and another one to filter the revision to those that are really affected by the currently shown translation.
As far as I remember we agreed on a 20% vs. 80% split of these use-cases which was the reason for the current implementation.
To repeat one of my proposals:
Introduce a new tab that shows all revisions regardless of their translations and split the right "revert all revisions" into two rights (one for each tab) to have to possibility to hide the new tab for editors.
BTW In Revision UI we created a prototype that not just deitinguishes between translations but let you select the concrete fields you want to revert.
Comment #5
BerdirOne thing to consider is modules like https://www.drupal.org/project/paragraphs.
Technically, that works with untranslatable reference fields. But as far as the user is concerned, it is translatable (we store the same reference and maintain translations of the referenced paragraph entities within the widget)
That's currently pretty weird with the core revision UI, as you have to check the untranslatable checkbox to have your "translatable" paragraphs reverted, and I've also had troubles getting revisions to show up as expected when you just change paragraphs.
Comment #6
yoroy CreditAttribution: yoroy at Roy Scholten commentedI don't understand comment #5 :) but besides that I don't see any arguments against showing all revisions, only that we have to design how to do it.
A screenshot of how Revision does things could be helpful.
Comment #7
yoroy CreditAttribution: yoroy at Roy Scholten commented