package de.blau.android;
import java.io.InputStreamReader;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import de.blau.android.prefs.Preferences;
import de.blau.android.util.BugFixedAppCompatActivity;
import de.blau.android.util.SavingHelper;
public class LicenseViewer extends BugFixedAppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
Preferences prefs = new Preferences(this);
if (prefs.lightThemeEnabled()) {
setTheme(R.style.Theme_customLight);
}
super.onCreate(savedInstanceState);
View container = View.inflate(this, R.layout.license_viewer, null);
TextView textShort = (TextView)container.findViewById(R.id.licenseShortText);
TextView textFull = (TextView)container.findViewById(R.id.licenseFullText);
textShort.setText(load("LICENSE.txt"));
StringBuilder builder = new StringBuilder();
load("LICENSE-GPL3.txt", builder);
load("LICENSE-Apache.txt", builder);
load("josm-contributors.txt", builder);
textFull.setText(builder.toString());
setContentView(container);
}
private String load(String filename) {
StringBuilder builder = new StringBuilder();
load(filename, builder);
return builder.toString();
}
private void load(String filename, StringBuilder builder) {
builder.append("== " + filename + " ==\n");
InputStreamReader reader = null;
try {
reader = new InputStreamReader(getAssets().open(filename), "UTF-8");
int read = 0;
do {
char[] buf = new char[4096];
read = reader.read(buf);
if (read > 0) builder.append(buf, 0, read);
} while (read > 0);
} catch (Exception e) {
builder.append("Error while loading file: " + e.getMessage());
} finally {
SavingHelper.close(reader);
}
builder.append("\n\n\n\n");
}
}