Hello. Recently discovered one more bug. Firefox 3 requires arrows to be drawn transparently just as focus rects. Attached are: - arrows in ff3 before applying the patch - arrows in ff3 after applying the patch - the patch itself (needs to be applied just after a patch for focus rect because of blank line I dropped in that patch and returned it back in this)
-- WBR, Andrew
<<attachment: badfox.png>>
<<attachment: goodfox.png>>
diff -r ee42da04f30a -r 6f8ec7c94100 src/qt_qt_wrapper.cpp --- a/src/qt_qt_wrapper.cpp Thu Jun 12 12:45:13 2008 +0300 +++ b/src/qt_qt_wrapper.cpp Thu Jun 12 12:46:06 2008 +0300 @@ -1707,19 +1707,21 @@ void drawArrow(GdkWindow* window, GtkSty QPixmap pixmap(w,h); QPainter painter(&pixmap); + GdkPixmap* pix = gdk_pixmap_foreign_new(pixmap.handle()); + if (fillPixmap && (!fillPixmap->isNull())) painter.fillRect(0, 0, w, h, QBrush(QColor(255,255,255), *fillPixmap)); else if ((backgroundTile) && (!backgroundTile->isNull())) painter.fillRect(0, 0, w, h, QBrush(QColor(255,255,255), *backgroundTile)); else - painter.fillRect(0, 0, w, h, qApp->palette().active().brush(QColorGroup::Background)); + gdk_draw_drawable(pix, style->bg_gc[GTK_STATE_NORMAL], window, x, y, 0, 0, w, h); qApp->style().drawPrimitive(element, &painter, QRect(0,0,w,h), qApp->palette().active(), sflags); - GdkPixmap* pix = gdk_pixmap_foreign_new(pixmap.handle()); gdk_draw_drawable(window, style->bg_gc[state], pix, 0, 0, x, y, w, h); g_object_unref(pix); } + void drawFocusRect(GdkWindow * window, GtkStyle * style, int x, int y, int w, int h) { if (!gtkQtEnable)
signature.asc
Description: This is a digitally signed message part.