- Add a better nopangoxft patch that doesn't depend on pangocairo
- Add firefox-1.5-pango-mathml.patch (bug 150393)
This commit is contained in:
parent
2deee06177
commit
e3df1420c6
45
firefox-1.5-nopangoxft.patch
Normal file
45
firefox-1.5-nopangoxft.patch
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
--- mozilla/gfx/src/gtk/mozilla-decoder.cpp.noxft 2004-11-07 18:59:23.000000000 -0500
|
||||||
|
+++ mozilla/gfx/src/gtk/mozilla-decoder.cpp 2006-08-06 18:24:37.000000000 -0400
|
||||||
|
@@ -40,10 +40,9 @@
|
||||||
|
#define PANGO_ENABLE_ENGINE
|
||||||
|
|
||||||
|
#include "mozilla-decoder.h"
|
||||||
|
-#include <pango/pangoxft.h>
|
||||||
|
#include <pango/pangofc-fontmap.h>
|
||||||
|
#include <pango/pangofc-font.h>
|
||||||
|
-#include <gdk/gdkx.h>
|
||||||
|
+#include <gdk/gdkpango.h>
|
||||||
|
|
||||||
|
#include "nsString.h"
|
||||||
|
#include "nsIPersistentProperties2.h"
|
||||||
|
@@ -54,6 +53,7 @@
|
||||||
|
#include "nsCompressedCharMap.h"
|
||||||
|
|
||||||
|
#undef DEBUG_CUSTOM_ENCODER
|
||||||
|
+#define DEBUG_CUSTOM_ENCODER 1
|
||||||
|
|
||||||
|
G_DEFINE_TYPE (MozillaDecoder, mozilla_decoder, PANGO_TYPE_FC_DECODER)
|
||||||
|
|
||||||
|
@@ -145,6 +145,13 @@ mozilla_decoders_init(void)
|
||||||
|
if (initialized)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
+ PangoContext* context = gdk_pango_context_get ();
|
||||||
|
+ PangoFontMap* fontmap = pango_context_get_font_map (context);
|
||||||
|
+ g_object_unref (context);
|
||||||
|
+
|
||||||
|
+ if (!PANGO_IS_FC_FONT_MAP (fontmap))
|
||||||
|
+ return -1;
|
||||||
|
+
|
||||||
|
encoder_hash = g_hash_table_new(g_str_hash, g_str_equal);
|
||||||
|
cmap_hash = g_hash_table_new(g_str_hash, g_str_equal);
|
||||||
|
wide_hash = g_hash_table_new(g_str_hash, g_str_equal);
|
||||||
|
@@ -208,7 +215,7 @@ mozilla_decoders_init(void)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(pango_xft_get_font_map(GDK_DISPLAY(),gdk_x11_get_default_screen())),
|
||||||
|
+ pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(fontmap),
|
||||||
|
mozilla_find_decoder,
|
||||||
|
NULL,
|
||||||
|
NULL);
|
42
firefox-1.5-pango-mathml.patch
Normal file
42
firefox-1.5-pango-mathml.patch
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
--- mozilla/gfx/src/gtk/nsFontMetricsPango.cpp.mathml 2006-02-23 16:01:42.000000000 -0500
|
||||||
|
+++ mozilla/gfx/src/gtk/nsFontMetricsPango.cpp 2006-08-22 20:06:40.000000000 -0400
|
||||||
|
@@ -829,30 +829,27 @@ nsFontMetricsPango::GetBoundingMetrics(c
|
||||||
|
goto loser;
|
||||||
|
}
|
||||||
|
|
||||||
|
- pango_layout_set_text(layout, text, strlen(text));
|
||||||
|
+ pango_layout_set_text(layout, text, -1);
|
||||||
|
FixupSpaceWidths(layout, text);
|
||||||
|
|
||||||
|
- // Get the logical extents
|
||||||
|
PangoLayoutLine *line;
|
||||||
|
if (pango_layout_get_line_count(layout) != 1) {
|
||||||
|
printf("Warning: more than one line!\n");
|
||||||
|
}
|
||||||
|
line = pango_layout_get_line(layout, 0);
|
||||||
|
|
||||||
|
- // Get the ink extents
|
||||||
|
- PangoRectangle rect;
|
||||||
|
- pango_layout_line_get_extents(line, NULL, &rect);
|
||||||
|
+ // Get the ink and logical extents
|
||||||
|
+ PangoRectangle ink, logical;
|
||||||
|
+ pango_layout_line_get_extents(line, &ink, &logical);
|
||||||
|
|
||||||
|
float P2T;
|
||||||
|
P2T = mDeviceContext->DevUnitsToAppUnits();
|
||||||
|
|
||||||
|
- aBoundingMetrics.leftBearing =
|
||||||
|
- NSToCoordRound(rect.x * P2T / PANGO_SCALE);
|
||||||
|
- aBoundingMetrics.rightBearing =
|
||||||
|
- NSToCoordRound(rect.width * P2T / PANGO_SCALE);
|
||||||
|
- aBoundingMetrics.width = NSToCoordRound((rect.x + rect.width) * P2T / PANGO_SCALE);
|
||||||
|
- aBoundingMetrics.ascent = NSToCoordRound(rect.y * P2T / PANGO_SCALE);
|
||||||
|
- aBoundingMetrics.descent = NSToCoordRound(rect.height * P2T / PANGO_SCALE);
|
||||||
|
+ aBoundingMetrics.leftBearing = NSToCoordRound(PANGO_LBEARING(ink) * P2T / PANGO_SCALE);
|
||||||
|
+ aBoundingMetrics.rightBearing = NSToCoordRound(PANGO_RBEARING(ink) * P2T / PANGO_SCALE);
|
||||||
|
+ aBoundingMetrics.ascent = NSToCoordRound(PANGO_ASCENT(ink) * P2T / PANGO_SCALE);
|
||||||
|
+ aBoundingMetrics.descent = NSToCoordRound(PANGO_DESCENT(ink) * P2T / PANGO_SCALE);
|
||||||
|
+ aBoundingMetrics.width = NSToCoordRound(logical.width * P2T / PANGO_SCALE);
|
||||||
|
|
||||||
|
loser:
|
||||||
|
g_free(text);
|
10
firefox.spec
10
firefox.spec
@ -11,7 +11,7 @@
|
|||||||
Summary: Mozilla Firefox Web browser.
|
Summary: Mozilla Firefox Web browser.
|
||||||
Name: firefox
|
Name: firefox
|
||||||
Version: 1.5.0.6
|
Version: 1.5.0.6
|
||||||
Release: 3
|
Release: 4
|
||||||
URL: http://www.mozilla.org/projects/firefox/
|
URL: http://www.mozilla.org/projects/firefox/
|
||||||
License: MPL/LGPL
|
License: MPL/LGPL
|
||||||
Group: Applications/Internet
|
Group: Applications/Internet
|
||||||
@ -53,7 +53,8 @@ Patch27: firefox-gnomestripe-0.1-livemarks.patch
|
|||||||
Patch42: firefox-1.1-uriloader.patch
|
Patch42: firefox-1.1-uriloader.patch
|
||||||
|
|
||||||
# font system fixes
|
# font system fixes
|
||||||
Patch81: firefox-nopangoxft.patch
|
Patch81: firefox-1.5-nopangoxft.patch
|
||||||
|
Patch82: firefox-1.5-pango-mathml.patch
|
||||||
|
|
||||||
# patches from upstream (Patch100+)
|
# patches from upstream (Patch100+)
|
||||||
Patch101: firefox-1.5-pango-ua.patch
|
Patch101: firefox-1.5-pango-ua.patch
|
||||||
@ -136,6 +137,7 @@ removed in favor of xulrunner-devel.
|
|||||||
#%patch27 -p1
|
#%patch27 -p1
|
||||||
%patch42 -p0
|
%patch42 -p0
|
||||||
%patch81 -p1
|
%patch81 -p1
|
||||||
|
%patch82 -p1
|
||||||
|
|
||||||
%patch101 -p0 -b .pango-ua
|
%patch101 -p0 -b .pango-ua
|
||||||
%patch102 -p0 -b .pango-about
|
%patch102 -p0 -b .pango-about
|
||||||
@ -354,6 +356,10 @@ fi
|
|||||||
#---------------------------------------------------------------------
|
#---------------------------------------------------------------------
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Aug 22 2006 Behdad Esfahbod <besfahbo@redhat.com> - 1.5.0.6-4
|
||||||
|
- Add a better nopangoxft patch that doesn't depend on pangocairo
|
||||||
|
- Add firefox-1.5-pango-mathml.patch (bug 150393)
|
||||||
|
|
||||||
* Tue Aug 08 2006 Kai Engert <kengert@redhat.com> - 1.5.0.6-3
|
* Tue Aug 08 2006 Kai Engert <kengert@redhat.com> - 1.5.0.6-3
|
||||||
- Rebuild
|
- Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user