Age | Commit message (Collapse) | Author | Files | Lines |
|
GtkSocket/GtkPlug behave differently when the plug is embedded in the
same process rather than running in a separate process. It seems that
epiphany does the former while firefox does the latter and that might be
causing some of the behavioral differences.
When the previewer is run without options, the plug is embedded in the
same proceess. When executed with the -f/--fork option, the plug is run
from a separate process.
|
|
To make things more useful for GNOME/epiphany, which is squarely in gtk3
land, allow building both the gtk2 and gtk3 versions of the plugin. I'm
not sure what will happen when both plugin's are in the browser's path.
A subsequent patch will allow finer grained control of the installation
directory.
|
|
This plugs a big hole in the previewer test app where the widget was
used differently than in the browser. Now they both get instantiated
through GtkSocket/GtkPlug.
|
|
Rather than build all the EvbpViewer sources twice, make a convience
library for the tests to link to. This does add the unfortunate effect
of relinking libevbp-viewer.la and libevbp.la every time there's a
change in the source, though.
|
|
When we try to construct the filename from the document title, use the
mime type mappings to get a suffix.
|
|
This adds the page selector widget to the toolbar with actions. The code
is copied directly from evince's libmisc.
|
|
Start building up a widget object, EvbpViewer, again. Once we're doing
anything more complicated than just putting an EvView in a scrolled
window, it'll help to keep most of it in it's own widget. The widget
subclasses GtkBox so we can just put a toolbar and scrolled window in.
|
|
We really only need the headers for xulrunner and nspr and don't want
to link anything since the symbols will all resolve at runtime when
the plugin is loaded.
|
|
The code is very similar to the plugin and gives an opportunity to
make sure the way we use evince still works correctly.
|
|
And it works! Instead of using the EvPreviewer object, just create the
documents and widgets straight in the plugin. This removes the toolbar
for now and just leaves a scrolled window for the view. We'll get that
back later.
|
|
|
|
We could hardcode a list of likely MIME types that the plugin will
support, but we can get the information directly from evince's
backends manager. A mapping from mime type to file extension (which
Mozilla wants) is used and contains all the MIME types supported by
evince as of gnome-2-30.
A small test program has been added to show the constructed MIME
description as used by Mozilla.
|
|
For GCC, allow the warning flags to enabled. Turn them on by default so
we see things ahead of time.
|
|
The test program is a just a simple exerciser for the EvPreviewer
widget, and the pdf is borrowed from evince.
|