
There have been several discussions with regard to displaying epubs in QuickView mode (Ctrl+Q) using some lister plug-in capable of displaying epubs.
It has been established that epubs containing Calibre bookmarks will not be displayed in QuickView, and it has been suspected that this is the fault of the involved lister plug-ins.
Today i found out that this is not a problem of a plug-in, but a problem caused by TC.
So, what happens and how does it lead to the observed problem?
When invoking Quick View, TC checks if the file is a ZIP archive. If so, it looks for a file inside that ZIP archive which matches the META-INF/*.txt pattern (coincidentally, the Calibre bookmark file matches).
If such a file is not found, TC will pass control to a plug-in which is associated with the file extension of the quick-viewed file (or, if no appropriate plug-in exists, Quick View will simply show the binary content of the file to be quickviewed). So far so good...
However, if inside the ZIP archive a matching text file (META-INF/*.txt) is found, TC will just show the content of this text file in the QuickView pane, and that's it. As it seems, no plug-in will ever be invoked for Quick View when TC finds such a text file inside a ZIP archive.
I don't know what the reasons are behind this behavior of TC, but it effectively breaks Quick View for files which are using ZIP format and contain a META-INF/*.txt file (such as epubs with Calibre bookmarks, for example).
How to reproduce the problem:
The problem can be quickly reproduced and demonstrated. It is not necessary to have any plug-in to be installed; a clean TC installation is sufficient to reproduce the issue.
1.1. First, let's create a good ZIP file (good.zip).
1.2. Fill good.zip with a few files (shouldn't matter what files you choose).
1.3. Create a META-INF directory inside good.zip, and fill it with some files. Make sure, that the META-INF directory does NOT contain any file with a .txt extension.
2.1. Now let's make a bad ZIP file (bad.zip).
2.2. Make a copy of good.zip and name it bad.zip.
2.3. Add a *.txt file to the META-INF directory in bad.zip. File name does not matter, only the file extension .txt matters.
3. Quick view the good file good.zip. Notice that the Quick View panel shows the (binary) file data of the ZIP file.
4. Quick view bad.zip. Notice that the Quick View displays the content of the text file you placed in the META-INF directory.