Browse Source

clean BrowserActivity

master
DF1E 9 years ago
parent
commit
c75ca89775
  1. 248
      src/acr/browser/lightning/BrowserActivity.java

248
src/acr/browser/lightning/BrowserActivity.java

@ -72,14 +72,12 @@ import java.net.URL; @@ -72,14 +72,12 @@ import java.net.URL;
import java.net.URLEncoder;
import java.util.*;
public class BrowserActivity extends ActionBarActivity implements BrowserController {
public class BrowserActivity extends ActionBarActivity implements BrowserController, OnClickListener {
private DrawerLayout mDrawerLayout;
private ListView mDrawerListLeft;
private LinearLayout mDrawerLeft;
private LinearLayout mDrawerRight;
private ListView mDrawerListRight;
private RelativeLayout mNewTab;
private ListView mDrawerListLeft, mDrawerListRight;
private LinearLayout mDrawerLeft, mDrawerRight, mPageLayout, mUiLayout, mToolbarLayout;
private RelativeLayout mNewTab, mSearchBar;
private List<LightningView> mWebViews = new ArrayList<LightningView>();
private LightningView mCurrentView;
private int mIdGenerator;
@ -94,42 +92,29 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl @@ -94,42 +92,29 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl
private AnimatedProgressBar mProgressBar;
private boolean mSystemBrowser = false;
private ValueCallback<Uri> mUploadMessage;
private View mCustomView;
private int mOriginalOrientation;
private int mBackgroundColor;
private View mCustomView, mVideoProgressView;
private int mOriginalOrientation, mBackgroundColor;
private ActionBar mActionBar;
private boolean mFullScreen;
private boolean mColorMode;
private boolean mFullScreen, mColorMode, mDarkTheme;
private FrameLayout mBrowserFrame;
private LinearLayout mPageLayout;
private LinearLayout mUiLayout;
private FullscreenHolder mFullscreenContainer;
private CustomViewCallback mCustomViewCallback;
private final FrameLayout.LayoutParams COVER_SCREEN_PARAMS = new FrameLayout.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
private Bitmap mDefaultVideoPoster;
private View mVideoProgressView;
private LinearLayout mToolbarLayout;
private Bitmap mDefaultVideoPoster, mWebpageBitmap;
private HistoryDatabase mHistoryDatabase;
private SharedPreferences mPreferences;
private Context mContext;
private Bitmap mWebpageBitmap;
private String mSearchText;
private String mUntitledTitle;
private String mSearchText, mUntitledTitle, mHomepage;
private Activity mActivity;
private final int API = android.os.Build.VERSION.SDK_INT;
private Drawable mDeleteIcon;
private Drawable mRefreshIcon;
private Drawable mCopyIcon;
private Drawable mIcon;
private String mHomepage;
private Drawable mDeleteIcon, mRefreshIcon, mCopyIcon, mIcon;
private boolean mIsNewIntent = false;
private VideoView mVideoView;
private static SearchAdapter mSearchAdapter;
private static LayoutParams mMatchParent = new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT);
private BookmarkManager mBookmarkManager;
private boolean mDarkTheme;
@Override
protected void onCreate(Bundle savedInstanceState) {
@ -211,7 +196,6 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl @@ -211,7 +196,6 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl
mHistoryDatabase = HistoryDatabase.getInstance(this);
// set display options of the ActionBar
mActionBar.setDisplayShowTitleEnabled(false);
mActionBar.setHomeButtonEnabled(false);
mActionBar.setDisplayShowHomeEnabled(false);
@ -233,51 +217,13 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl @@ -233,51 +217,13 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl
mArrowImage.setImageDrawable(mArrowDrawable);
LinearLayout arrowButton = (LinearLayout) mActionBar.getCustomView().findViewById(
R.id.arrow_button);
arrowButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (mSearch != null && mSearch.hasFocus()) {
mCurrentView.requestFocus();
} else {
mDrawerLayout.openDrawer(mDrawerLeft);
}
}
});
arrowButton.setOnClickListener(this);
RelativeLayout back = (RelativeLayout) findViewById(R.id.action_back);
RelativeLayout forward = (RelativeLayout) findViewById(R.id.action_forward);
if (back != null) {
back.setOnClickListener(new OnClickListener() {
back.setOnClickListener(this);
@Override
public void onClick(View v) {
if (mCurrentView != null) {
if (mCurrentView.canGoBack()) {
mCurrentView.goBack();
} else {
deleteTab(mDrawerListLeft.getCheckedItemPosition());
}
}
}
});
}
if (forward != null) {
forward.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (mCurrentView != null) {
if (mCurrentView.canGoForward()) {
mCurrentView.goForward();
}
}
}
});
}
RelativeLayout forward = (RelativeLayout) findViewById(R.id.action_forward);
forward.setOnClickListener(this);
// create the search EditText in the ToolBar
mSearch = (AutoCompleteTextView) mActionBar.getCustomView().findViewById(R.id.search);
@ -316,15 +262,7 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl @@ -316,15 +262,7 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl
});
initialize.run();
mNewTab.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
newTab(null, true);
}
});
mNewTab.setOnClickListener(this);
mNewTab.setOnLongClickListener(new OnLongClickListener() {
@Override
@ -351,7 +289,6 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl @@ -351,7 +289,6 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl
}
checkForTor();
}
private class SearchClass {
@ -540,92 +477,6 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl @@ -540,92 +477,6 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl
}
public boolean handleMenuItemClick(MenuItem item) {
// Handle action buttons
switch (item.getItemId()) {
case android.R.id.home:
if (mDrawerLayout.isDrawerOpen(mDrawerRight)) {
mDrawerLayout.closeDrawer(mDrawerRight);
}
// mDrawerToggle.syncState();
return true;
case R.id.action_back:
if (mCurrentView != null) {
if (mCurrentView.canGoBack()) {
mCurrentView.goBack();
}
}
return true;
case R.id.action_forward:
if (mCurrentView != null) {
if (mCurrentView.canGoForward()) {
mCurrentView.goForward();
}
}
return true;
case R.id.action_new_tab:
newTab(null, true);
return true;
case R.id.action_incognito:
startActivity(new Intent(this, IncognitoActivity.class));
return true;
case R.id.action_share:
if (!mCurrentView.getUrl().startsWith(Constants.FILE)) {
Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,
mCurrentView.getTitle());
String shareMessage = mCurrentView.getUrl();
shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, shareMessage);
startActivity(Intent.createChooser(shareIntent,
getResources().getString(R.string.dialog_title_share)));
}
return true;
case R.id.action_bookmarks:
openBookmarks();
return true;
case R.id.action_copy:
if (mCurrentView != null) {
if (!mCurrentView.getUrl().startsWith(Constants.FILE)) {
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
ClipData clip = ClipData.newPlainText("label", mCurrentView.getUrl());
clipboard.setPrimaryClip(clip);
Utils.showToast(mContext,
mContext.getResources().getString(R.string.message_link_copied));
}
}
return true;
case R.id.action_settings:
startActivity(new Intent(this, SettingsActivity.class));
return true;
case R.id.action_history:
openHistory();
return true;
case R.id.action_add_bookmark:
if (!mCurrentView.getUrl().startsWith(Constants.FILE)) {
HistoryItem bookmark = new HistoryItem(mCurrentView.getUrl(),
mCurrentView.getTitle());
if (mBookmarkManager.addBookmark(bookmark)) {
mBookmarkList.add(bookmark);
Collections.sort(mBookmarkList, new SortIgnoreCase());
notifyBookmarkDataSetChanged();
mSearchAdapter.refreshBookmarks();
}
}
return true;
case R.id.action_find:
findInPage();
return true;
case R.id.action_reading_mode:
Intent read = new Intent(this, ReadingActivity.class);
read.putExtra(Constants.LOAD_READING_URL, mCurrentView.getUrl());
startActivity(read);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
/*
* If Orbot/Tor is installed, prompt the user if they want to enable
* proxying for this session
@ -997,35 +848,20 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl @@ -997,35 +848,20 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl
if (mCurrentView != null) {
mCurrentView.find(text);
}
final RelativeLayout bar = (RelativeLayout) findViewById(R.id.search_bar);
bar.setVisibility(View.VISIBLE);
mSearchBar = (RelativeLayout) findViewById(R.id.search_bar);
mSearchBar.setVisibility(View.VISIBLE);
TextView tw = (TextView) findViewById(R.id.search_query);
tw.setText("'" + text + "'");
ImageButton up = (ImageButton) findViewById(R.id.button_next);
up.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mCurrentView.getWebView().findNext(false);
}
});
up.setOnClickListener(this);
ImageButton down = (ImageButton) findViewById(R.id.button_back);
down.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mCurrentView.getWebView().findNext(true);
}
});
down.setOnClickListener(this);
ImageButton quit = (ImageButton) findViewById(R.id.button_quit);
quit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mCurrentView.getWebView().clearMatches();
bar.setVisibility(View.GONE);
}
});
quit.setOnClickListener(this);
}
private void showCloseDialog(final int position) {
@ -2693,4 +2529,46 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl @@ -2693,4 +2529,46 @@ public class BrowserActivity extends ActionBarActivity implements BrowserControl
public int getMenu() {
return R.menu.main;
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.action_back:
if (mCurrentView != null) {
if (mCurrentView.canGoBack()) {
mCurrentView.goBack();
} else {
deleteTab(mDrawerListLeft.getCheckedItemPosition());
}
}
break;
case R.id.action_forward:
if (mCurrentView != null) {
if (mCurrentView.canGoForward()) {
mCurrentView.goForward();
}
}
break;
case R.id.arrow_button:
if (mSearch != null && mSearch.hasFocus()) {
mCurrentView.requestFocus();
} else {
mDrawerLayout.openDrawer(mDrawerLeft);
}
break;
case R.id.new_tab_button:
newTab(null, true);
break;
case R.id.button_next:
mCurrentView.getWebView().findNext(false);
break;
case R.id.button_back:
mCurrentView.getWebView().findNext(true);
break;
case R.id.button_quit:
mCurrentView.getWebView().clearMatches();
mSearchBar.setVisibility(View.GONE);
break;
}
}
}

Loading…
Cancel
Save