Diff dialog to compare versions of an item. Save dialog is used in
Translate mode in Content Editor. That's why it only shows
I totally agree that it should include
Shared fields as well, but I don't see any easy way to achieve that.
DiffForm class which is used by
Diff view calls
Compare method which either runs
TwoCoumnsDiffView.Compare() (depending on the user registry setting).
They both inherit from
DiffView abstract class which has
protected virtual bool ShowField(Field field) method, which in the default implementation returns false for
So the only solution that I can think of is:
- create new classes inheriting from both
OneColumnDiffView and override
ShowField method to make sure that
Shared fields are shown.
- create new custom
DiffForm class inheriting from the original
DiffForm class, decompile the original class and copy the whole code of
Refresh methods + the
Compare method with a single change - use your custom
OneColumnDiffView classes there instead of the original classes.
sitecore\shell\Applications\Dialogs\Diff.xml file and set
CodeBeside property to your custom
It will work but it will be hard to maintain while upgrading to newer Sitecore versions. You will have to double check if everything works.
Is it worth it? That's your (or your client decision).
You may also raise a Sitecore Support decision and explain that the workbox diff view doesn't show
Shared fields which are changed between the versions and ask them to provide you a patch for the issue. But the only thing they can do is the same what I wrote above.