I have received this evening a very interesting email from David Barouh asking me if I could make FullerScreen interoperate with Opera's OperaShow. The answer is "technically, yes, but I am not going to do it". You read it well. I am not going to make FullerScreen's slideshow mode rely on Opera's technical choice because I have the personal deep feeling what Opera did with OperaShow is super-hyper-jätte-cool but it's also a design mistake. Let me explain...

Our two systems are similar but on one point. We both rely on an infinite default page height for the projection media, so a slide higher than the projection height is vertically scrollable. But OperaShow's slides are in fact only pages, i.e. some content between two pages breaks. There's no semantic here, not a single dash of semantics. A slide is not by default a container in itself, it does not have to be an element. Sure, sure, it can be an element, but that is not mandatory. You could paginate into Opera's slides a very long document made only of P paragraphs using for instance p:nth-child(10n) without a container element for every ten paragraphs... These are really pages, not slides... Opera's usage of the page-break-{before|after} properties is fine, but I think what a tool like MS Powerpoint did introducing a logical container for slides is a good thing. Yes Håkon, good things can come even from a Microsoft tool :-) What Opera proposes is perfect as a paginated screen but imperfect as a slideshow because OperaShow is not about slides, it's about pages ; it's not semantic at all, it's purely presentational. The presentational technique used by OperaShow is excellent, but, and I cannot be suspected of being friendly with the Semantic Web, it really lacks the semantic side.

My solution, FullerScreen, is not about pages (or transparencies), it's really about slides. My chrome searches for slides in the document, not for page breaks. A slide can contain page breaks. A slide is a logical unit and is projected alone not because the rendering is cut before and after the slide, but because that slide is the only one rendered in the document. That's a major conceptual difference. And I prefer that, it's a hundred times cleaner. OperaShow implements a pre-1994 style of slides, based on transparencies and projectors like this one. FullerScreen implements more modern slides.

The result is the following one : I can make an abitrary FullerScreen slideshow viewable in OperaShow. I cannot make an arbitrary OperaShow slideshow viewable in FullerScreen.

Hope that helps.