I am not sure whether this is exactly what you ask for, but...
M-x monky-log
, find appropriate changeset, click Enter
(monky is a magit clone, fairly nice, give it a try if you haven't tried it)
M-x xhg-log
, move to appropriate changeset, and press =
(xhg is another sensible mercurial mode for emacs)
M-x ahg-diff
(will prompt for revisions and display diff in diff mode)
(ahg is yet another mercurial module)
All those modules may have more functionality of a kind, I haven't really explored (while I heavily commit from emacs and frequently review recent logs, for deeper complicated history analysis I prefer hgview or TortoiseHg).
Update (after reading comment)
This will require some work to polish, but the effect need not be that far:
a) In this fancier log of monky, try tapping Tab, n, Tab, n, ... a few times. This should hide diffs and leave only file changes info. I suppose this is the summary buffer you want. So you only need to trick monky to open log in compacted view by default (advising sth. to set monky-hide-diffs variable to 't before this buffer is populated will likely help)
b) xhg has xhg-ediff-file-at-rev, unfortunately not bound to anything. So harder part of the exercise is to extract current file name and revision from monky-commit buffer and call xhg-ediff-file-at-rev with those data (my first instinct would be to advise monky-refresh-commit-buffer to set some variable to current commit, but maybe extracting info from actual buffer would be simpler).
Not a true solution, but ....