@Override public void onFocusChange(View view, boolean hasFocus) { // if losing focus and not in touch mode, leave as is if (hasFocus || view.isInTouchMode() || mUrlInput.needsUpdate()) { setFocusState(hasFocus); } if (hasFocus) { mBaseUi.showTitleBar(); mUrlInput.forceIme(); if (mInVoiceMode) { mUrlInput.forceFilter(); } } else if (!mUrlInput.needsUpdate()) { mUrlInput.dismissDropDown(); mUrlInput.hideIME(); if (mUrlInput.getText().length() == 0) { Tab currentTab = mUiController.getTabControl().getCurrentTab(); if (currentTab != null) { setDisplayTitle(currentTab.getUrl()); } } mBaseUi.suggestHideTitleBar(); } mUrlInput.clearNeedsUpdate(); }
@Override public void onClick(View v) { if (!mBuilder.mIsShowing) { return; } if (mNewTab == v) { if (mUiController.getTabControl().canCreateNewTab()) { callBackNewTabAnim(); } else { boolean isShow = mUi.isShowMaxTabsDialog( new AlertDialog.OnClickListener() { public void onClick(DialogInterface d, int which) { mUi.closeTheLeastUsedTab(); mUi.updateCheckPrompt(); callBackNewTabAnim(); mBuilder.mIsShowing = false; } }, new AlertDialog.OnClickListener() { public void onClick(DialogInterface d, int which) { mBuilder.mIsShowing = true; } }); if (!isShow) { mUi.closeTheLeastUsedTab(); callBackNewTabAnim(); mBuilder.mIsShowing = false; return; } mBuilder.mIsShowing = true; return; } } else if (mClearAllTab == v) { clearAllTabs(); } else if (mFullScreen == v) { if (!mUi.mNavScreenShowing) { callBackFullScreenAnim(); } else { mBuilder.mIsShowing = true; return; } } mBuilder.mIsShowing = false; }
private void init() { LayoutInflater.from(getContext()).inflate(R.layout.nav_screen, this); setContentDescription( getContext().getResources().getString(R.string.accessibility_transition_navscreen)); System.out.println("================= NavScreen init 11111111 ===================="); // mApplication = (Browser) mActivity.getApplication(); mNewTab = (ImageButton) findViewById(R.id.newtab); mClearAllTab = (ImageButton) findViewById(R.id.clearall); mFullScreen = (ImageButton) findViewById(R.id.fullscreen); mClearAllTab.setOnClickListener(this); mFullScreen.setOnClickListener(this); mNewTab.setOnClickListener(this); mTc = mUiController.getTabControl(); mTabViews = new HashMap<Tab, View>(mTc.getTabCount()); mBuilder = (NavTabViewPagerBuilder) findViewById(R.id.viewPagerBuilder); mBuilder.makeViewPager(mUi, mTc); mNeedsMenu = !ViewConfiguration.get(getContext()).hasPermanentMenuKey(); changeIncogStyle(mTc.getIncogMode()); }
public BaseUi(Activity browser, UiController controller) { mActivity = browser; mUiController = controller; mTabControl = controller.getTabControl(); Resources res = mActivity.getResources(); mInputManager = (InputMethodManager) browser.getSystemService(Activity.INPUT_METHOD_SERVICE); mLockIconSecure = res.getDrawable(R.drawable.ic_secure_holo_dark); mLockIconMixed = res.getDrawable(R.drawable.ic_secure_partial_holo_dark); FrameLayout frameLayout = (FrameLayout) mActivity.getWindow().getDecorView().findViewById(android.R.id.content); LayoutInflater.from(mActivity).inflate(R.layout.custom_screen, frameLayout); mContentView = (FrameLayout) frameLayout.findViewById(R.id.main_content); mCustomViewContainer = (FrameLayout) frameLayout.findViewById(R.id.fullscreen_custom_content); mErrorConsoleContainer = (LinearLayout) frameLayout.findViewById(R.id.error_console); setFullscreen(BrowserSettings.getInstance().useFullscreen()); mGenericFavicon = res.getDrawable(R.drawable.app_web_browser_sm); mTitleBar = new TitleBar(mActivity, mUiController, this, mContentView); mTitleBar.setProgress(100); mNavigationBar = mTitleBar.getNavigationBar(); mUrlBarAutoShowManager = new UrlBarAutoShowManager(this); }
private void initLayout(Context context) { LayoutInflater factory = LayoutInflater.from(context); factory.inflate(R.layout.bottom_bar, this); mBottomBar = (LinearLayout) findViewById(R.id.bottombar); mBottomBarBack = (ImageView) findViewById(R.id.back); mBottomBarForward = (ImageView) findViewById(R.id.forward); mBottomBarTabs = (ImageView) findViewById(R.id.tabs); mBottomBarBookmarks = (ImageView) findViewById(R.id.bookmarks); mBottomBarTabCount = (TextView) findViewById(R.id.tabcount); mBottomBarBack.setOnClickListener( new OnClickListener() { public void onClick(View arg0) { ((Controller) mUiController).onBackKey(); } }); mBottomBarBack.setOnLongClickListener( new OnLongClickListener() { @Override public boolean onLongClick(View arg0) { Toast.makeText( mUiController.getActivity(), mUiController.getActivity().getResources().getString(R.string.back), 0) .show(); return false; } }); mBottomBarForward.setOnClickListener( new OnClickListener() { public void onClick(View arg0) { if (mUiController != null && mUiController.getCurrentTab() != null) { mUiController.getCurrentTab().goForward(); } } }); mBottomBarForward.setOnLongClickListener( new OnLongClickListener() { @Override public boolean onLongClick(View arg0) { Toast.makeText( mUiController.getActivity(), mUiController.getActivity().getResources().getString(R.string.forward), 0) .show(); return false; } }); mBottomBarTabs.setOnClickListener( new OnClickListener() { public void onClick(View arg0) { ((PhoneUi) mBaseUi).toggleNavScreen(); } }); mBottomBarTabs.setOnLongClickListener( new OnLongClickListener() { @Override public boolean onLongClick(View arg0) { Toast.makeText( mUiController.getActivity(), mUiController.getActivity().getResources().getString(R.string.tabs), 0) .show(); return false; } }); mBottomBarBookmarks.setOnClickListener( new OnClickListener() { public void onClick(View arg0) { mUiController.bookmarksOrHistoryPicker(ComboViews.Bookmarks); } }); mBottomBarBookmarks.setOnLongClickListener( new OnLongClickListener() { @Override public boolean onLongClick(View arg0) { Toast.makeText( mUiController.getActivity(), mUiController.getActivity().getResources().getString(R.string.bookmarks), 0) .show(); return false; } }); mBottomBarTabCount.setText(Integer.toString(mUiController.getTabControl().getTabCount())); mTabControl.setOnTabCountChangedListener( new TabControl.OnTabCountChangedListener() { public void onTabCountChanged() { mBottomBarTabCount.setText(Integer.toString(mTabControl.getTabCount())); } }); }
public void callBackFullScreenAnim() { // mApplication.setmThumbnailPosition(mBuilder.mCurrentConfigPosition); int endPosition = mUiController.getTabControl().getCurrentPosition() / 4; Browser application = (Browser) mActivity.getApplication(); int startPosition = application.getmThumbnailPosition(); AnimatorSet moveAnim = null; int animTime = getResources().getInteger(R.integer.config_shortAnimTime); if (endPosition >= mBuilder.getList().size()) endPosition = mBuilder.getList().size() - 1; if (endPosition < 0) endPosition = 0; int width = getWidth(); if (endPosition == startPosition) { mUi.hideNavScreen(mUiController.getTabControl().getTabPosition(mUi.getActiveTab()), true); } else if (endPosition > startPosition) { ObjectAnimator oTran; ArrayList<Animator> animList = new ArrayList<Animator>(); for (int i = startPosition; i <= endPosition; i++) { if (i != endPosition) { oTran = ObjectAnimator.ofFloat( mBuilder.getList().get(i), "translationX", 0, -(i - startPosition + 1) * width); oTran.setStartDelay(DELAYTIME * (i - startPosition)); oTran.setDuration(animTime * (i - startPosition + 1)); } else { oTran = ObjectAnimator.ofFloat( mBuilder.getList().get(i), "translationX", 0, -(endPosition - startPosition) * width); oTran.setStartDelay(DELAYTIME * (endPosition - startPosition)); oTran.setDuration(animTime * (endPosition - startPosition)); } animList.add(oTran); } moveAnim = new AnimatorSet(); moveAnim.playTogether(animList); } else { ObjectAnimator oTran; ArrayList<Animator> animList = new ArrayList<Animator>(); for (int i = startPosition; i >= endPosition; i--) { if (i != endPosition) { oTran = ObjectAnimator.ofFloat( mBuilder.getList().get(i), "translationX", 0, (startPosition - i + 1) * width); oTran.setStartDelay(DELAYTIME * (startPosition - i)); oTran.setDuration(animTime * (startPosition - i + 1)); } else { oTran = ObjectAnimator.ofFloat( mBuilder.getList().get(i), "translationX", 0, (startPosition - endPosition) * width); oTran.setStartDelay(DELAYTIME * (startPosition - endPosition)); oTran.setDuration(animTime * (startPosition - endPosition)); } animList.add(oTran); } moveAnim = new AnimatorSet(); moveAnim.playTogether(animList); } if (moveAnim != null) { moveAnim.addListener( new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { // TODO Auto-generated method stub mUi.hideNavScreen( mUiController.getTabControl().getTabPosition(mUi.getActiveTab()), true, animation); super.onAnimationEnd(animation); } }); moveAnim.start(); } }