mirror of
https://github.com/servo/servo.git
synced 2025-08-03 20:50:07 +01:00
Do not copy gstreamer fonts or certs on Android
This commit is contained in:
parent
b27881523c
commit
2854847c13
4 changed files with 0 additions and 4484 deletions
|
@ -1,126 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
|
||||||
<!-- /etc/fonts/fonts.conf file to configure system font access -->
|
|
||||||
<fontconfig>
|
|
||||||
|
|
||||||
<!-- Font directory list -->
|
|
||||||
|
|
||||||
<dir prefix="xdg">fontconfig/fonts</dir>
|
|
||||||
|
|
||||||
<!-- Font cache directory list -->
|
|
||||||
|
|
||||||
<cachedir prefix="xdg">fontconfig</cachedir>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Accept deprecated 'mono' alias, replacing it with 'monospace'
|
|
||||||
-->
|
|
||||||
<match target="pattern">
|
|
||||||
<test qual="any" name="family">
|
|
||||||
<string>mono</string>
|
|
||||||
</test>
|
|
||||||
<edit name="family" mode="assign" binding="same">
|
|
||||||
<string>monospace</string>
|
|
||||||
</edit>
|
|
||||||
</match>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
|
|
||||||
-->
|
|
||||||
<match target="pattern">
|
|
||||||
<test qual="any" name="family">
|
|
||||||
<string>sans serif</string>
|
|
||||||
</test>
|
|
||||||
<edit name="family" mode="assign" binding="same">
|
|
||||||
<string>sans-serif</string>
|
|
||||||
</edit>
|
|
||||||
</match>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Accept deprecated 'sans' alias, replacing it with 'sans-serif'
|
|
||||||
-->
|
|
||||||
<match target="pattern">
|
|
||||||
<test qual="any" name="family">
|
|
||||||
<string>sans</string>
|
|
||||||
</test>
|
|
||||||
<edit name="family" mode="assign" binding="same">
|
|
||||||
<string>sans-serif</string>
|
|
||||||
</edit>
|
|
||||||
</match>
|
|
||||||
|
|
||||||
<config>
|
|
||||||
<!--
|
|
||||||
These are the default Unicode chars that are expected to be blank
|
|
||||||
in fonts. All other blank chars are assumed to be broken and
|
|
||||||
won't appear in the resulting charsets
|
|
||||||
-->
|
|
||||||
<blank>
|
|
||||||
<int>0x0020</int> <!-- SPACE -->
|
|
||||||
<int>0x00A0</int> <!-- NO-BREAK SPACE -->
|
|
||||||
<int>0x00AD</int> <!-- SOFT HYPHEN -->
|
|
||||||
<int>0x034F</int> <!-- COMBINING GRAPHEME JOINER -->
|
|
||||||
<int>0x0600</int> <!-- ARABIC NUMBER SIGN -->
|
|
||||||
<int>0x0601</int> <!-- ARABIC SIGN SANAH -->
|
|
||||||
<int>0x0602</int> <!-- ARABIC FOOTNOTE MARKER -->
|
|
||||||
<int>0x0603</int> <!-- ARABIC SIGN SAFHA -->
|
|
||||||
<int>0x06DD</int> <!-- ARABIC END OF AYAH -->
|
|
||||||
<int>0x070F</int> <!-- SYRIAC ABBREVIATION MARK -->
|
|
||||||
<int>0x115F</int> <!-- HANGUL CHOSEONG FILLER -->
|
|
||||||
<int>0x1160</int> <!-- HANGUL JUNGSEONG FILLER -->
|
|
||||||
<int>0x1680</int> <!-- OGHAM SPACE MARK -->
|
|
||||||
<int>0x17B4</int> <!-- KHMER VOWEL INHERENT AQ -->
|
|
||||||
<int>0x17B5</int> <!-- KHMER VOWEL INHERENT AA -->
|
|
||||||
<int>0x180E</int> <!-- MONGOLIAN VOWEL SEPARATOR -->
|
|
||||||
<int>0x2000</int> <!-- EN QUAD -->
|
|
||||||
<int>0x2001</int> <!-- EM QUAD -->
|
|
||||||
<int>0x2002</int> <!-- EN SPACE -->
|
|
||||||
<int>0x2003</int> <!-- EM SPACE -->
|
|
||||||
<int>0x2004</int> <!-- THREE-PER-EM SPACE -->
|
|
||||||
<int>0x2005</int> <!-- FOUR-PER-EM SPACE -->
|
|
||||||
<int>0x2006</int> <!-- SIX-PER-EM SPACE -->
|
|
||||||
<int>0x2007</int> <!-- FIGURE SPACE -->
|
|
||||||
<int>0x2008</int> <!-- PUNCTUATION SPACE -->
|
|
||||||
<int>0x2009</int> <!-- THIN SPACE -->
|
|
||||||
<int>0x200A</int> <!-- HAIR SPACE -->
|
|
||||||
<int>0x200B</int> <!-- ZERO WIDTH SPACE -->
|
|
||||||
<int>0x200C</int> <!-- ZERO WIDTH NON-JOINER -->
|
|
||||||
<int>0x200D</int> <!-- ZERO WIDTH JOINER -->
|
|
||||||
<int>0x200E</int> <!-- LEFT-TO-RIGHT MARK -->
|
|
||||||
<int>0x200F</int> <!-- RIGHT-TO-LEFT MARK -->
|
|
||||||
<int>0x2028</int> <!-- LINE SEPARATOR -->
|
|
||||||
<int>0x2029</int> <!-- PARAGRAPH SEPARATOR -->
|
|
||||||
<int>0x202A</int> <!-- LEFT-TO-RIGHT EMBEDDING -->
|
|
||||||
<int>0x202B</int> <!-- RIGHT-TO-LEFT EMBEDDING -->
|
|
||||||
<int>0x202C</int> <!-- POP DIRECTIONAL FORMATTING -->
|
|
||||||
<int>0x202D</int> <!-- LEFT-TO-RIGHT OVERRIDE -->
|
|
||||||
<int>0x202E</int> <!-- RIGHT-TO-LEFT OVERRIDE -->
|
|
||||||
<int>0x202F</int> <!-- NARROW NO-BREAK SPACE -->
|
|
||||||
<int>0x205F</int> <!-- MEDIUM MATHEMATICAL SPACE -->
|
|
||||||
<int>0x2060</int> <!-- WORD JOINER -->
|
|
||||||
<int>0x2061</int> <!-- FUNCTION APPLICATION -->
|
|
||||||
<int>0x2062</int> <!-- INVISIBLE TIMES -->
|
|
||||||
<int>0x2063</int> <!-- INVISIBLE SEPARATOR -->
|
|
||||||
<int>0x206A</int> <!-- INHIBIT SYMMETRIC SWAPPING -->
|
|
||||||
<int>0x206B</int> <!-- ACTIVATE SYMMETRIC SWAPPING -->
|
|
||||||
<int>0x206C</int> <!-- INHIBIT ARABIC FORM SHAPING -->
|
|
||||||
<int>0x206D</int> <!-- ACTIVATE ARABIC FORM SHAPING -->
|
|
||||||
<int>0x206E</int> <!-- NATIONAL DIGIT SHAPES -->
|
|
||||||
<int>0x206F</int> <!-- NOMINAL DIGIT SHAPES -->
|
|
||||||
<int>0x2800</int> <!-- BRAILLE PATTERN BLANK -->
|
|
||||||
<int>0x3000</int> <!-- IDEOGRAPHIC SPACE -->
|
|
||||||
<int>0x3164</int> <!-- HANGUL FILLER -->
|
|
||||||
<int>0xFEFF</int> <!-- ZERO WIDTH NO-BREAK SPACE -->
|
|
||||||
<int>0xFFA0</int> <!-- HALFWIDTH HANGUL FILLER -->
|
|
||||||
<int>0xFFF9</int> <!-- INTERLINEAR ANNOTATION ANCHOR -->
|
|
||||||
<int>0xFFFA</int> <!-- INTERLINEAR ANNOTATION SEPARATOR -->
|
|
||||||
<int>0xFFFB</int> <!-- INTERLINEAR ANNOTATION TERMINATOR -->
|
|
||||||
</blank>
|
|
||||||
<!--
|
|
||||||
Rescan configuration every 30 seconds when FcFontSetList is called
|
|
||||||
-->
|
|
||||||
<rescan>
|
|
||||||
<int>30</int>
|
|
||||||
</rescan>
|
|
||||||
</config>
|
|
||||||
|
|
||||||
</fontconfig>
|
|
||||||
|
|
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
@ -1,78 +1,11 @@
|
||||||
package org.freedesktop.gstreamer;
|
package org.freedesktop.gstreamer;
|
||||||
|
|
||||||
import java.io.File;
|
|
||||||
import java.io.FileOutputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.InputStream;
|
|
||||||
import java.io.OutputStream;
|
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.res.AssetManager;
|
|
||||||
|
|
||||||
public class GStreamer {
|
public class GStreamer {
|
||||||
private static native void nativeInit(Context context) throws Exception;
|
private static native void nativeInit(Context context) throws Exception;
|
||||||
|
|
||||||
public static void init(Context context) throws Exception {
|
public static void init(Context context) throws Exception {
|
||||||
nativeInit(context);
|
nativeInit(context);
|
||||||
copyFonts(context);
|
|
||||||
copyCaCertificates(context);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void copyFonts(Context context) {
|
|
||||||
AssetManager assetManager = context.getAssets();
|
|
||||||
File filesDir = context.getFilesDir();
|
|
||||||
File fontsFCDir = new File (filesDir, "fontconfig");
|
|
||||||
File fontsDir = new File (fontsFCDir, "fonts");
|
|
||||||
File fontsCfg = new File (fontsFCDir, "fonts.conf");
|
|
||||||
|
|
||||||
fontsDir.mkdirs();
|
|
||||||
|
|
||||||
try {
|
|
||||||
/* Copy the config file */
|
|
||||||
copyFile (assetManager, "fontconfig/fonts.conf", fontsCfg);
|
|
||||||
/* Copy the fonts */
|
|
||||||
for(String filename : assetManager.list("fontconfig/fonts/truetype")) {
|
|
||||||
File font = new File(fontsDir, filename);
|
|
||||||
copyFile (assetManager, "fontconfig/fonts/truetype/" + filename, font);
|
|
||||||
}
|
|
||||||
} catch (IOException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void copyCaCertificates(Context context) {
|
|
||||||
AssetManager assetManager = context.getAssets();
|
|
||||||
File filesDir = context.getFilesDir();
|
|
||||||
File sslDir = new File (filesDir, "ssl");
|
|
||||||
File certsDir = new File (sslDir, "certs");
|
|
||||||
File certs = new File (certsDir, "ca-certificates.crt");
|
|
||||||
|
|
||||||
certsDir.mkdirs();
|
|
||||||
|
|
||||||
try {
|
|
||||||
/* Copy the certificates file */
|
|
||||||
copyFile (assetManager, "ssl/certs/ca-certificates.crt", certs);
|
|
||||||
} catch (IOException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void copyFile(AssetManager assetManager, String assetPath, File outFile) throws IOException {
|
|
||||||
InputStream in;
|
|
||||||
OutputStream out;
|
|
||||||
byte[] buffer = new byte[1024];
|
|
||||||
int read;
|
|
||||||
|
|
||||||
if (outFile.exists())
|
|
||||||
outFile.delete();
|
|
||||||
|
|
||||||
in = assetManager.open(assetPath);
|
|
||||||
out = new FileOutputStream (outFile);
|
|
||||||
while((read = in.read(buffer)) != -1){
|
|
||||||
out.write(buffer, 0, read);
|
|
||||||
}
|
|
||||||
in.close();
|
|
||||||
out.flush();
|
|
||||||
out.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue