diff options
Diffstat (limited to 'src/extension/internal')
| -rw-r--r-- | src/extension/internal/cairo-renderer.cpp | 2 | ||||
| -rw-r--r-- | src/extension/internal/javafx-out.cpp | 15 | ||||
| -rw-r--r-- | src/extension/internal/pdf-input-cairo.cpp | 14 | ||||
| -rw-r--r-- | src/extension/internal/pdfinput/pdf-input.cpp | 17 | ||||
| -rw-r--r-- | src/extension/internal/pdfinput/pdf-parser.cpp | 3 |
5 files changed, 21 insertions, 30 deletions
diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index 61e943dba..09d69becb 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -507,7 +507,7 @@ static void sp_asbitmap_render(SPItem *item, CairoRenderContext *ctx) // TODO this is stupid - we just converted to pixbuf format when generating the bitmap! convert_pixbuf_normal_to_argb32(pb); ctx->renderImage(pb, t, item->style); - gdk_pixbuf_unref(pb); + g_object_unref(pb); pb = 0; } g_slist_free (items); diff --git a/src/extension/internal/javafx-out.cpp b/src/extension/internal/javafx-out.cpp index 4cf6f3c4f..67c0fae66 100644 --- a/src/extension/internal/javafx-out.cpp +++ b/src/extension/internal/javafx-out.cpp @@ -130,21 +130,6 @@ static JavaFXOutput::String dstr(double d) /** - * Format a double as an integer - */ -static JavaFXOutput::String istr(double d) -{ - char dbuf[G_ASCII_DTOSTR_BUF_SIZE+1]; - g_ascii_formatd(dbuf, G_ASCII_DTOSTR_BUF_SIZE, - "%.0f", (gdouble)d); - JavaFXOutput::String s = dbuf; - return s; -} - -#define ISTR(d) (istr(d).c_str()) - - -/** * Format an rgba() string */ static JavaFXOutput::String rgba(guint32 rgba) diff --git a/src/extension/internal/pdf-input-cairo.cpp b/src/extension/internal/pdf-input-cairo.cpp index bc76a30b5..36ef66713 100644 --- a/src/extension/internal/pdf-input-cairo.cpp +++ b/src/extension/internal/pdf-input-cairo.cpp @@ -32,6 +32,7 @@ #include <poppler/glib/poppler-page.h> #include "ui/widget/spinbutton.h" +#include <gdkmm/general.h> namespace Inkscape { namespace Extension { @@ -482,9 +483,10 @@ bool PdfImportCairoDialog::_onExposePreview(GdkEventExpose */*event*/) { if (!back_pixmap) { return true; } - back_pixmap->draw_pixbuf(Glib::RefPtr<Gdk::GC>(), thumb, 0, 0, 0, 0, - _thumb_width, _thumb_height, - Gdk::RGB_DITHER_NONE, 0, 0); + + Cairo::RefPtr<Cairo::Context> cr = back_pixmap->create_cairo_context(); + Gdk::Cairo::set_source_pixbuf(cr, thumb, 0, 0); + cr->paint(); _previewArea->get_window()->set_back_pixmap(back_pixmap, false); _previewArea->get_window()->clear(); } @@ -493,9 +495,9 @@ bool PdfImportCairoDialog::_onExposePreview(GdkEventExpose */*event*/) { if (_render_thumb) { copy_cairo_surface_to_pixbuf(_cairo_surface, _thumb_data, thumb->gobj()); } - _previewArea->get_window()->draw_pixbuf(Glib::RefPtr<Gdk::GC>(), thumb, - 0, 0, 0, _render_thumb ? 0 : 20, - -1, -1, Gdk::RGB_DITHER_NONE, 0, 0); + Cairo::RefPtr<Cairo::Context> cr = _previewArea->get_window()->create_cairo_context(); + Gdk::Cairo::set_source_pixbuf(cr, thumb, 0, _render_thumb ? 0 : 20); + cr->paint(); return true; } diff --git a/src/extension/internal/pdfinput/pdf-input.cpp b/src/extension/internal/pdfinput/pdf-input.cpp index ee091d54b..eff488c9d 100644 --- a/src/extension/internal/pdfinput/pdf-input.cpp +++ b/src/extension/internal/pdfinput/pdf-input.cpp @@ -51,6 +51,8 @@ #include "ui/widget/spinbutton.h" #include <glibmm/i18n.h> +#include <gdkmm/general.h> + namespace Inkscape { namespace Extension { namespace Internal { @@ -513,10 +515,11 @@ bool PdfImportDialog::_onExposePreview(GdkEventExpose */*event*/) { if (!back_pixmap) { return true; } - back_pixmap->draw_pixbuf(Glib::RefPtr<Gdk::GC>(), thumb, 0, 0, 0, 0, - _thumb_width, _thumb_height, - Gdk::RGB_DITHER_NONE, 0, 0); - _previewArea->get_window()->set_back_pixmap(back_pixmap, false); + + Cairo::RefPtr<Cairo::Context> cr = back_pixmap->create_cairo_context(); + Gdk::Cairo::set_source_pixbuf(cr, thumb, 0, 0); + cr->paint(); + _previewArea->get_window()->set_back_pixmap(back_pixmap, false); _previewArea->get_window()->clear(); } #ifdef HAVE_POPPLER_CAIRO @@ -525,10 +528,10 @@ bool PdfImportDialog::_onExposePreview(GdkEventExpose */*event*/) { copy_cairo_surface_to_pixbuf(_cairo_surface, _thumb_data, thumb->gobj()); } #endif - _previewArea->get_window()->draw_pixbuf(Glib::RefPtr<Gdk::GC>(), thumb, - 0, 0, 0, _render_thumb ? 0 : 20, - -1, -1, Gdk::RGB_DITHER_NONE, 0, 0); + Cairo::RefPtr<Cairo::Context> cr = _previewArea->get_window()->create_cairo_context(); + Gdk::Cairo::set_source_pixbuf(cr, thumb, 0, _render_thumb ? 0 : 20); + cr->paint(); return true; } diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp index 5347a85ac..5e8b005e2 100644 --- a/src/extension/internal/pdfinput/pdf-parser.cpp +++ b/src/extension/internal/pdfinput/pdf-parser.cpp @@ -3199,7 +3199,8 @@ void PdfParser::opMarkPoint(Object args[], int numArgs) { void PdfParser::saveState() { builder->saveState(); - state = state->save(); +// state = state->save(); // nasty hack to prevent GfxRadialShading from getting corrupted during copy operation + state->save(); // see LP Bug 919176 comment 8 clipHistory = clipHistory->save(); } |
