Anthony Restaino
10 years ago
43 changed files with 391 additions and 367 deletions
@ -1,4 +1,7 @@
@@ -1,4 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<project version="4"> |
||||
<component name="EntryPointsManager"> |
||||
<entry_points version="2.0" /> |
||||
</component> |
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" assert-keyword="true" jdk-15="true" project-jdk-name="1.7" project-jdk-type="JavaSDK" /> |
||||
</project> |
@ -1,101 +0,0 @@
@@ -1,101 +0,0 @@
|
||||
package acr.browser.lightning; |
||||
|
||||
import java.io.FilterInputStream; |
||||
import java.io.IOException; |
||||
import java.io.InputStream; |
||||
import java.util.Deque; |
||||
import java.util.Iterator; |
||||
import java.util.LinkedList; |
||||
|
||||
public class ReplacingInputStream extends FilterInputStream { |
||||
|
||||
Deque<Integer> inQueue = new LinkedList<Integer>(); |
||||
|
||||
Deque<Integer> outQueue = new LinkedList<Integer>(); |
||||
|
||||
final byte[] search, replacement; |
||||
|
||||
protected ReplacingInputStream(InputStream in, byte[] search, byte[] replacement) { |
||||
super(in); |
||||
this.search = search; |
||||
this.replacement = replacement; |
||||
} |
||||
|
||||
private boolean isMatchFound() { |
||||
Iterator<Integer> inIter = inQueue.iterator(); |
||||
for (int i = 0; i < search.length; i++) { |
||||
if (!inIter.hasNext() || search[i] != inIter.next()) { |
||||
return false; |
||||
} |
||||
} |
||||
return true; |
||||
} |
||||
|
||||
private void readAhead() throws IOException { |
||||
// Work up some look-ahead.
|
||||
while (inQueue.size() < search.length) { |
||||
int next = super.read(); |
||||
inQueue.offer(next); |
||||
if (next == -1) { |
||||
break; |
||||
} |
||||
} |
||||
} |
||||
|
||||
@Override |
||||
public int read() throws IOException { |
||||
|
||||
// Next byte already determined.
|
||||
if (outQueue.isEmpty()) { |
||||
|
||||
readAhead(); |
||||
|
||||
if (isMatchFound()) { |
||||
for (int i = 0; i < search.length; i++) { |
||||
inQueue.remove(); |
||||
} |
||||
|
||||
for (byte b : replacement) { |
||||
outQueue.offer((int) b); |
||||
} |
||||
} else { |
||||
outQueue.add(inQueue.remove()); |
||||
} |
||||
} |
||||
|
||||
return outQueue.remove(); |
||||
} |
||||
|
||||
/** |
||||
* Returns false. REFilterInputStream does not support mark() and reset() |
||||
* methods. |
||||
*/ |
||||
@Override |
||||
public boolean markSupported() { |
||||
return false; |
||||
} |
||||
|
||||
/** |
||||
* Reads from the stream into the provided array. |
||||
*/ |
||||
@Override |
||||
public int read(byte[] b, int off, int len) throws IOException { |
||||
int i; |
||||
int ok = 0; |
||||
while (len-- > 0) { |
||||
i = read(); |
||||
if (i == -1) { |
||||
return (ok == 0) ? -1 : ok; |
||||
} |
||||
b[off++] = (byte) i; |
||||
ok++; |
||||
} |
||||
return ok; |
||||
} |
||||
|
||||
@Override |
||||
public int read(byte[] buffer) throws IOException { |
||||
|
||||
return read(buffer, 0, buffer.length); |
||||
} |
||||
} |
@ -1,4 +1,4 @@
@@ -1,4 +1,4 @@
|
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.activity; |
||||
|
||||
import android.app.Application; |
||||
import android.content.Context; |
@ -1,8 +1,12 @@
@@ -1,8 +1,12 @@
|
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.activity; |
||||
|
||||
import java.util.ArrayList; |
||||
import java.util.List; |
||||
|
||||
import acr.browser.lightning.constant.Constants; |
||||
import acr.browser.lightning.preference.PreferenceManager; |
||||
import acr.browser.lightning.R; |
||||
import acr.browser.lightning.utils.Utils; |
||||
import acr.browser.lightning.reading.HtmlFetcher; |
||||
import acr.browser.lightning.reading.JResult; |
||||
import android.animation.ObjectAnimator; |
@ -1,9 +1,12 @@
@@ -1,9 +1,12 @@
|
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.activity; |
||||
|
||||
import android.content.Intent; |
||||
import android.os.Bundle; |
||||
import android.support.v7.app.ActionBarActivity; |
||||
|
||||
import acr.browser.lightning.preference.PreferenceManager; |
||||
import acr.browser.lightning.R; |
||||
|
||||
public abstract class ThemableActivity extends ActionBarActivity { |
||||
|
||||
private boolean mDark; |
@ -1,9 +1,12 @@
@@ -1,9 +1,12 @@
|
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.activity; |
||||
|
||||
import android.content.Intent; |
||||
import android.os.Bundle; |
||||
import android.support.v7.app.ActionBarActivity; |
||||
|
||||
import acr.browser.lightning.preference.PreferenceManager; |
||||
import acr.browser.lightning.R; |
||||
|
||||
public abstract class ThemableSettingsActivity extends ActionBarActivity { |
||||
|
||||
private boolean mDark; |
@ -1,7 +1,10 @@
@@ -1,7 +1,10 @@
|
||||
/* |
||||
* Copyright 2014 A.C.R. Development |
||||
*/ |
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.constant; |
||||
|
||||
import acr.browser.lightning.R; |
||||
import acr.browser.lightning.activity.BrowserApp; |
||||
|
||||
public class BookmarkPage { |
||||
|
@ -1,7 +1,7 @@
@@ -1,7 +1,7 @@
|
||||
/* |
||||
* Copyright 2014 A.C.R. Development |
||||
*/ |
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.constant; |
||||
|
||||
import android.os.Environment; |
||||
|
@ -1,9 +1,12 @@
@@ -1,9 +1,12 @@
|
||||
/* |
||||
* Copyright 2014 A.C.R. Development |
||||
*/ |
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.constant; |
||||
|
||||
public class HomepageVariables { |
||||
import acr.browser.lightning.activity.BrowserApp; |
||||
import acr.browser.lightning.R; |
||||
|
||||
public class StartPage { |
||||
|
||||
public static final String HEAD = "<!DOCTYPE html><html xmlns=\"http://www.w3.org/1999/xhtml\">" |
||||
+ "<head>" |
@ -1,7 +1,7 @@
@@ -1,7 +1,7 @@
|
||||
/* |
||||
* Copyright 2014 A.C.R. Development |
||||
*/ |
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.controller; |
||||
|
||||
import android.app.Activity; |
||||
import android.graphics.Bitmap; |
@ -1,7 +1,7 @@
@@ -1,7 +1,7 @@
|
||||
/* |
||||
* Copyright 2014 A.C.R. Development |
||||
*/ |
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.database; |
||||
|
||||
import android.graphics.Bitmap; |
||||
|
@ -1,7 +1,7 @@
@@ -1,7 +1,7 @@
|
||||
/* |
||||
* Copyright 2014 A.C.R. Development |
||||
*/ |
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.download; |
||||
|
||||
import java.util.Locale; |
||||
import java.util.regex.Matcher; |
@ -1,12 +1,14 @@
@@ -1,12 +1,14 @@
|
||||
/* |
||||
* Copyright 2014 A.C.R. Development |
||||
*/ |
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.object; |
||||
|
||||
import android.content.Context; |
||||
import android.os.Handler; |
||||
import android.os.Message; |
||||
|
||||
import acr.browser.lightning.controller.BrowserController; |
||||
|
||||
public class ClickHandler extends Handler { |
||||
|
||||
private BrowserController mBrowserController; |
@ -1,8 +1,11 @@
@@ -1,8 +1,11 @@
|
||||
package acr.browser.lightning; |
||||
package acr.browser.lightning.preference; |
||||
|
||||
import android.content.SharedPreferences; |
||||
import android.os.Environment; |
||||
|
||||
import acr.browser.lightning.activity.BrowserApp; |
||||
import acr.browser.lightning.constant.Constants; |
||||
|
||||
public class PreferenceManager { |
||||
|
||||
private static class Name { |
Loading…
Reference in new issue