List of usage examples for android.view View setEnabled
@RemotableViewMethod public void setEnabled(boolean enabled)
From source file:org.odk.collect.android.widgets.SelectMultiWidget.java
@SuppressWarnings("unchecked") public SelectMultiWidget(Context context, FormEntryPrompt prompt) { super(context, prompt); mPrompt = prompt;/*w w w . j a va 2 s. c o m*/ mCheckboxes = new ArrayList<CheckBox>(); // SurveyCTO-added support for dynamic select content (from .csv files) XPathFuncExpr xPathFuncExpr = ExternalDataUtil.getSearchXPathExpression(prompt.getAppearanceHint()); if (xPathFuncExpr != null) { mItems = ExternalDataUtil.populateExternalChoices(prompt, xPathFuncExpr); } else { mItems = prompt.getSelectChoices(); } setOrientation(LinearLayout.VERTICAL); String fieldElementReference = prompt.getFormElement().getBind().getReference().toString(); fieldName = getFieldID(fieldElementReference); if (fieldName.equalsIgnoreCase("typedirt")) { if (PropertiesUtils.getiAnswer32() == 1) { setVisibility(VISIBLE); } else setVisibility(INVISIBLE); PropertiesUtils.setLayoutQuestion321(this); } if (fieldName.equalsIgnoreCase("taste1")) { if (PropertiesUtils.getiAns33() == 0) { setVisibility(INVISIBLE); } else { if (PropertiesUtils.getiAns332() == 0) { setVisibility(INVISIBLE); } else setVisibility(VISIBLE); } PropertiesUtils.setLayoutQues333(this); } Vector<Selection> ve = new Vector<Selection>(); if (prompt.getAnswerValue() != null) { ve = (Vector<Selection>) prompt.getAnswerValue().getValue(); } // int row_index = 0 ; // int col_index = 0 ; Boolean isNewRow = false; Boolean isAddDirect = false; Boolean isTextView = false; Boolean isAddDivider = false; int itemCount = 0; LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 0.5f); if (mItems != null) { for (int i = 0; i < mItems.size(); i++) { // no checkbox group so id by answer + offset View c; //Check text of the Choice Start With ($), i must be category if (prompt.getSelectChoiceText(mItems.get(i)).startsWith("$")) { StringBuilder sb = new StringBuilder(prompt.getSelectChoiceText(mItems.get(i))); String str = sb.deleteCharAt(0).toString(); c = new TextView(getContext()); ((TextView) c).setText(str); ((TextView) c).setTextSize(TypedValue.COMPLEX_UNIT_DIP, mQuestionFontsize + 1); ((TextView) c).setTypeface(null, Typeface.BOLD_ITALIC); c.setPadding(70, 10, 10, 10); c.setId(QuestionWidget.newUniqueId()); // assign random id isNewRow = true; itemCount = 0; isTextView = true; mCheckboxes.add(new CheckBox(context)); } else { // checkbox isNewRow = true; isTextView = false; itemCount++; c = new CheckBox(getContext()); c.setTag(Integer.valueOf(i)); c.setId(QuestionWidget.newUniqueId()); ((CheckBox) c).setText(prompt.getSelectChoiceText(mItems.get(i))); ((CheckBox) c).setTextSize(TypedValue.COMPLEX_UNIT_DIP, mAnswerFontsize); c.setFocusable(!prompt.isReadOnly()); c.setEnabled(!prompt.isReadOnly()); c.setPadding(10, 10, 10, 10); ((CheckBox) c).setLineSpacing(1, 1.15f); mCheckboxes.add((CheckBox) c); } if (!isTextView) for (int vi = 0; vi < ve.size(); vi++) { // match based on value, not key if (mItems.get(i).getValue().equals(ve.elementAt(vi).getValue())) { ((CheckBox) c).setChecked(true); break; } } if (!prompt.getSelectChoiceText(mItems.get(i)).startsWith("$")) { // when clicked, check for readonly before toggling ((CheckBox) c).setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { try { if (fieldName.equalsIgnoreCase("typedirt")) { if (mItems.get((Integer) buttonView.getTag()).getValue() .equalsIgnoreCase("other")) { if (isChecked) { PropertiesUtils.getTvQuestion321Other().setVisibility(VISIBLE); PropertiesUtils.getEdQuestion321Other().setVisibility(VISIBLE); PropertiesUtils.setiAnswer321(1); PropertiesUtils.setIsOther321Checked(true); } else { PropertiesUtils.getTvQuestion321Other().setVisibility(INVISIBLE); PropertiesUtils.getEdQuestion321Other().setVisibility(INVISIBLE); PropertiesUtils.setiAnswer321(0); PropertiesUtils.setIsOther321Checked(false); } } else { PropertiesUtils.getTvQuestion321Other().setVisibility(INVISIBLE); PropertiesUtils.getEdQuestion321Other().setVisibility(INVISIBLE); if (PropertiesUtils.isIsOther321Checked() == true) { PropertiesUtils.getTvQuestion321Other().setVisibility(VISIBLE); PropertiesUtils.getEdQuestion321Other().setVisibility(VISIBLE); PropertiesUtils.setiAnswer321(1); } } } if (fieldName.equalsIgnoreCase("taste1")) { if (mItems.get((Integer) buttonView.getTag()).getValue() .equalsIgnoreCase("other_taste")) { if (isChecked) { PropertiesUtils.setiAns333(1); PropertiesUtils.getTvQues333Other().setVisibility(VISIBLE); PropertiesUtils.getEdQues333Other().setVisibility(VISIBLE); PropertiesUtils.setIsOther333Checked(true); } else { PropertiesUtils.setiAns333(0); PropertiesUtils.getTvQues333Other().setVisibility(INVISIBLE); PropertiesUtils.getEdQues333Other().setVisibility(INVISIBLE); PropertiesUtils.setIsOther333Checked(false); } } else { PropertiesUtils.getTvQues333Other().setVisibility(INVISIBLE); PropertiesUtils.getEdQues333Other().setVisibility(INVISIBLE); if (PropertiesUtils.isIsOther333Checked() == true) { PropertiesUtils.getTvQues333Other().setVisibility(VISIBLE); PropertiesUtils.getEdQues333Other().setVisibility(VISIBLE); PropertiesUtils.setiAns333(1); } } } } catch (Exception e) { e.printStackTrace(); } if (!mCheckboxInit && mPrompt.isReadOnly()) { if (buttonView.isChecked()) { buttonView.setChecked(false); Collect.getInstance().getActivityLogger().logInstanceAction(this, "onItemClick.deselect", mItems.get((Integer) buttonView.getTag()).getValue(), mPrompt.getIndex()); } else { buttonView.setChecked(true); Collect.getInstance().getActivityLogger().logInstanceAction(this, "onItemClick.select", mItems.get((Integer) buttonView.getTag()).getValue(), mPrompt.getIndex()); } } } }); } String audioURI = null; audioURI = prompt.getSpecialFormSelectChoiceText(mItems.get(i), FormEntryCaption.TEXT_FORM_AUDIO); String imageURI; if (mItems.get(i) instanceof ExternalSelectChoice) { imageURI = ((ExternalSelectChoice) mItems.get(i)).getImage(); } else { imageURI = prompt.getSpecialFormSelectChoiceText(mItems.get(i), FormEntryCaption.TEXT_FORM_IMAGE); } String videoURI = null; videoURI = prompt.getSpecialFormSelectChoiceText(mItems.get(i), "video"); String bigImageURI = null; bigImageURI = prompt.getSpecialFormSelectChoiceText(mItems.get(i), "big-image"); MediaLayout mediaLayout = new MediaLayout(getContext()); if (isTextView) { mediaLayout.setAVT(prompt.getIndex(), "." + Integer.toString(i), (TextView) c, audioURI, imageURI, videoURI, bigImageURI); } else { mediaLayout.setAVT(prompt.getIndex(), "." + Integer.toString(i), (CheckBox) c, audioURI, imageURI, videoURI, bigImageURI); } mediaLayout.setLayoutParams(params); // row_index = i/2 +1; // col_index = i%2; if (itemCount == 2) { isNewRow = false; itemCount = 0; } if (isNewRow) { ll = null; ll = new LinearLayout(getContext()); ll.setOrientation(LinearLayout.HORIZONTAL); ll.addView(mediaLayout); isNewRow = false; isAddDirect = false; isAddDivider = false; try { //if textview (category in choices) or the next element is textView , so must add direct if (isTextView || prompt.getSelectChoiceText(mItems.get(i + 1)).startsWith("$")) isAddDirect = true; } catch (Exception e) { isAddDirect = true; } if (isAddDirect) { addView(ll); isAddDivider = true; } } else { ll.addView(mediaLayout); addView(ll); isAddDivider = true; } // add the dividing line between elements (except for the last element) but not last ImageView divider = new ImageView(getContext()); divider.setBackgroundResource(android.R.drawable.divider_horizontal_bright); int size = mItems.size() / 2; // if ( (i+1)/2< size && (i+1)%2==0) { if (isAddDivider && i < mItems.size() - 1) addView(divider); // } } } mCheckboxInit = false; }
From source file:com.activiti.android.ui.fragments.task.TaskDetailsFoundationFragment.java
private void displayOutcome() { if (isEnded) { displayCompletedProperties(taskRepresentation); if (formKey != null) { Button myTasks = (Button) viewById(R.id.task_action_complete); myTasks.setText(R.string.task_action_complete_task_with_form); myTasks.setOnClickListener(new View.OnClickListener() { @Override/*from w w w . j a v a2 s.c om*/ public void onClick(View v) { TaskFormFragment.with(getActivity()).task(taskRepresentation).back(true) .display(FragmentDisplayer.PANEL_CENTRAL); } }); } else { hide(R.id.task_action_outcome_container); } } else { Button taskAction = (Button) viewById(R.id.task_action_complete); taskAction.setEnabled(true); if (TaskHelper.canClaim(taskRepresentation, assignee)) { taskAction.setText(R.string.task_action_claim); taskAction.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { claim(); v.setEnabled(false); } }); } else if (formKey != null) { taskAction.setText(R.string.task_action_complete_task_with_form); taskAction.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { TaskFormFragment.with(getActivity()).task(taskRepresentation) .bindFragmentTag(BundleUtils.getString(getArguments(), ARGUMENT_BIND_FRAGMENT_TAG)) .back(true).display(); v.setEnabled(false); } }); } else { taskAction.setText(R.string.task_action_complete); taskAction.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { completeTask(); v.setEnabled(false); } }); } } }
From source file:com.android.calendar.event.EditEventView.java
private void setViewStates(int mode) { // Extra canModify check just in case if (mode == Utils.MODIFY_UNINITIALIZED || !EditEventHelper.canModifyEvent(mModel)) { setWhenString();/*from w w w .j a va 2 s . c o m*/ for (View v : mViewOnlyList) { v.setVisibility(View.VISIBLE); } for (View v : mEditOnlyList) { v.setVisibility(View.GONE); } for (View v : mEditViewList) { v.setEnabled(false); v.setBackgroundDrawable(null); } mCalendarSelectorGroup.setVisibility(View.GONE); mCalendarStaticGroup.setVisibility(View.VISIBLE); mRruleButton.setEnabled(false); if (EditEventHelper.canAddReminders(mModel)) { mRemindersGroup.setVisibility(View.VISIBLE); } else { mRemindersGroup.setVisibility(View.GONE); } if (TextUtils.isEmpty(mLocationTextView.getText())) { mLocationGroup.setVisibility(View.GONE); } if (TextUtils.isEmpty(mDescriptionTextView.getText())) { mDescriptionGroup.setVisibility(View.GONE); } } else { for (View v : mViewOnlyList) { v.setVisibility(View.GONE); } for (View v : mEditOnlyList) { v.setVisibility(View.VISIBLE); } for (View v : mEditViewList) { v.setEnabled(true); if (v.getTag() != null) { v.setBackgroundDrawable((Drawable) v.getTag()); v.setPadding(mOriginalPadding[0], mOriginalPadding[1], mOriginalPadding[2], mOriginalPadding[3]); } } if (mModel.mUri == null) { mCalendarSelectorGroup.setVisibility(View.VISIBLE); mCalendarStaticGroup.setVisibility(View.GONE); } else { mCalendarSelectorGroup.setVisibility(View.GONE); mCalendarStaticGroup.setVisibility(View.VISIBLE); } if (mModel.mOriginalSyncId == null) { mRruleButton.setEnabled(true); } else { mRruleButton.setEnabled(false); mRruleButton.setBackgroundDrawable(null); } mRemindersGroup.setVisibility(View.VISIBLE); mLocationGroup.setVisibility(View.VISIBLE); mDescriptionGroup.setVisibility(View.VISIBLE); } setAllDayViewsVisibility(mAllDayCheckBox.isChecked()); }
From source file:com.battlelancer.seriesguide.ui.MovieDetailsFragment.java
private void populateMovieViews() { /**//from w w w . j a v a 2 s .c o m * Take title, overview and poster from TMDb as they are localized. * Everything else from trakt. */ Movie traktMovie = mMovieDetails.traktMovie(); com.uwetrottmann.tmdb.entities.Movie tmdbMovie = mMovieDetails.tmdbMovie(); mMovieTitle.setText(tmdbMovie.title); mMovieDescription.setText(tmdbMovie.overview); // release date and runtime: "July 17, 2009 | 95 min" StringBuilder releaseAndRuntime = new StringBuilder(); if (traktMovie.released != null && traktMovie.released.getTime() != 0) { releaseAndRuntime.append(DateUtils.formatDateTime(getActivity(), traktMovie.released.getTime(), DateUtils.FORMAT_SHOW_DATE)); releaseAndRuntime.append(" | "); } releaseAndRuntime.append(getString(R.string.runtime_minutes, tmdbMovie.runtime)); mMovieReleaseDate.setText(releaseAndRuntime.toString()); // check-in button final String title = tmdbMovie.title; // fall back to local title for tvtag check-in if we currently don't have the original one final String originalTitle = TextUtils.isEmpty(tmdbMovie.original_title) ? title : tmdbMovie.original_title; mCheckinButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // display a check-in dialog MovieCheckInDialogFragment f = MovieCheckInDialogFragment.newInstance(mTmdbId, title, originalTitle); f.show(getFragmentManager(), "checkin-dialog"); fireTrackerEvent("Check-In"); } }); CheatSheet.setup(mCheckinButton); // watched button (only supported when connected to trakt) if (TraktCredentials.get(getActivity()).hasCredentials()) { final boolean isWatched = traktMovie.watched != null && traktMovie.watched; Utils.setCompoundDrawablesRelativeWithIntrinsicBounds(mWatchedButton, 0, isWatched ? Utils.resolveAttributeToResourceId(getActivity().getTheme(), R.attr.drawableWatched) : Utils.resolveAttributeToResourceId(getActivity().getTheme(), R.attr.drawableWatch), 0, 0); mWatchedButton.setText(isWatched ? R.string.action_unwatched : R.string.action_watched); CheatSheet.setup(mWatchedButton, isWatched ? R.string.action_unwatched : R.string.action_watched); mWatchedButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // disable button, will be re-enabled on data reload once action completes v.setEnabled(false); if (isWatched) { MovieTools.unwatchedMovie(getActivity(), mTmdbId); fireTrackerEvent("Unwatched movie"); } else { MovieTools.watchedMovie(getActivity(), mTmdbId); fireTrackerEvent("Watched movie"); } } }); mWatchedButton.setEnabled(true); } else { mWatchedButton.setVisibility(View.GONE); } // collected button final boolean isInCollection = traktMovie.inCollection != null && traktMovie.inCollection; Utils.setCompoundDrawablesRelativeWithIntrinsicBounds(mCollectedButton, 0, isInCollection ? R.drawable.ic_collected : Utils.resolveAttributeToResourceId(getActivity().getTheme(), R.attr.drawableCollect), 0, 0); mCollectedButton .setText(isInCollection ? R.string.action_collection_remove : R.string.action_collection_add); CheatSheet.setup(mCollectedButton, isInCollection ? R.string.action_collection_remove : R.string.action_collection_add); mCollectedButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // disable button, will be re-enabled on data reload once action completes v.setEnabled(false); if (isInCollection) { MovieTools.removeFromCollection(getActivity(), mTmdbId); fireTrackerEvent("Uncollected movie"); } else { MovieTools.addToCollection(getActivity(), mTmdbId); fireTrackerEvent("Collected movie"); } } }); mCollectedButton.setEnabled(true); // watchlist button final boolean isInWatchlist = traktMovie.inWatchlist != null && traktMovie.inWatchlist; Utils.setCompoundDrawablesRelativeWithIntrinsicBounds(mWatchlistedButton, 0, isInWatchlist ? R.drawable.ic_listed : Utils.resolveAttributeToResourceId(getActivity().getTheme(), R.attr.drawableList), 0, 0); mWatchlistedButton.setText(isInWatchlist ? R.string.watchlist_remove : R.string.watchlist_add); CheatSheet.setup(mWatchlistedButton, isInWatchlist ? R.string.watchlist_remove : R.string.watchlist_add); mWatchlistedButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // disable button, will be re-enabled on data reload once action completes v.setEnabled(false); if (isInWatchlist) { MovieTools.removeFromWatchlist(getActivity(), mTmdbId); fireTrackerEvent("Unwatchlist movie"); } else { MovieTools.addToWatchlist(getActivity(), mTmdbId); fireTrackerEvent("Watchlist movie"); } } }); mWatchlistedButton.setEnabled(true); // show button bar mButtonContainer.setVisibility(View.VISIBLE); // ratings mRatingsTmdbValue.setText(TmdbTools.buildRatingValue(tmdbMovie.vote_average)); mRatingsTraktUserValue.setText(TraktTools.buildUserRatingString(getActivity(), traktMovie.rating_advanced)); if (traktMovie.ratings != null) { mRatingsTraktVotes.setText(TraktTools.buildRatingVotesString(getActivity(), traktMovie.ratings.votes)); mRatingsTraktValue.setText(TraktTools.buildRatingPercentageString(traktMovie.ratings.percentage)); } mRatingsContainer.setVisibility(View.VISIBLE); // genres Utils.setValueOrPlaceholder(mMovieGenres, TmdbTools.buildGenresString(tmdbMovie.genres)); // trakt comments link mCommentsButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent i = new Intent(getActivity(), TraktShoutsActivity.class); i.putExtras(TraktShoutsActivity.createInitBundleMovie(title, mTmdbId)); ActivityCompat.startActivity(getActivity(), i, ActivityOptionsCompat .makeScaleUpAnimation(v, 0, 0, v.getWidth(), v.getHeight()).toBundle()); fireTrackerEvent("Comments"); } }); // load poster, cache on external storage if (!TextUtils.isEmpty(tmdbMovie.poster_path)) { ServiceUtils.getPicasso(getActivity()).load(mImageBaseUrl + tmdbMovie.poster_path) .into(mMoviePosterBackground); } }
From source file:com.google.plus.samples.photohunt.ViewImageActivity.java
public void update() { super.update(); if (mPhoto != null) { mVoteCount.setText(getString(R.string.vote_count, mPhoto.numVotes)); if (mPhoto.ownerUserId != null) { mAuthorName.setText(mPhoto.ownerDisplayName); if (!isEmpty(mPhoto.ownerProfilePhoto)) { mImageLoader.bind(mAuthorImage, mPhoto.ownerProfilePhoto, null); mAuthorImage.setOnClickListener(new View.OnClickListener() { @Override/*w ww .j av a 2 s . c o m*/ public void onClick(View view) { startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(mPhoto.ownerProfilePhoto))); } }); } } else { mAuthorName.setText(getString(R.string.unknown_user)); } mImageLoader.bind(mPhotoView, mPhoto.thumbnailUrl, null); final boolean isActive = mActiveTheme != null && mPhoto.hasTheme(mActiveTheme); if (isActive && (mPhotoUser == null || mPhoto != null && !mPhoto.hasAuthor(mPhotoUser) && mPhoto.voted)) { mVoteButton.setEnabled(true); mVoteButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { vote(view); } }); } else { mVoteButton.setEnabled(false); } if (mPhotoUser != null && mPhoto.hasAuthor(mPhotoUser)) { mDeleteButton.setVisibility(View.VISIBLE); mDeleteButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(final View view) { if (!mPlus.isAuthenticated()) { requireSignIn(); mPendingClick = this; mPendingView = view; return; } if (mPhotoUser != null && mPhoto.hasAuthor(mPhotoUser)) { mPhotoClient.delete(mPhoto.id, new ClickCallback<Void>(ViewImageActivity.this, view, R.string.delete_success, R.string.delete_failure)); view.setEnabled(false); finish(); } } }); } else { mDeleteButton.setVisibility(View.INVISIBLE); } mPromoteButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (!mPlus.isAuthenticated()) { requireSignIn(); mPendingClick = this; mPendingView = view; return; } Intent interactivePostIntent = Intents.getInteractiveIntent(ViewImageActivity.this, mPhoto, mPlus.getClient(), getPhotoTheme(), isActive); startActivityForResult(interactivePostIntent, 0); } }); } }
From source file:com.xandy.calendar.EventInfoFragment.java
private void updateCalendar(View view) { mCalendarOwnerAccount = ""; if (mCalendarsCursor != null && mEventCursor != null) { mCalendarsCursor.moveToFirst();//from w w w .j a v a 2 s. c o m String tempAccount = mCalendarsCursor.getString(CALENDARS_INDEX_OWNER_ACCOUNT); mCalendarOwnerAccount = (tempAccount == null) ? "" : tempAccount; mOwnerCanRespond = mCalendarsCursor.getInt(CALENDARS_INDEX_OWNER_CAN_RESPOND) != 0; mSyncAccountName = mCalendarsCursor.getString(CALENDARS_INDEX_ACCOUNT_NAME); // start visible calendars query mHandler.startQuery(TOKEN_QUERY_VISIBLE_CALENDARS, null, Calendars.CONTENT_URI, CALENDARS_PROJECTION, CALENDARS_VISIBLE_WHERE, new String[] { "1" }, null); mEventOrganizerEmail = mEventCursor.getString(EVENT_INDEX_ORGANIZER); mIsOrganizer = mCalendarOwnerAccount.equalsIgnoreCase(mEventOrganizerEmail); if (!TextUtils.isEmpty(mEventOrganizerEmail) && !mEventOrganizerEmail.endsWith(Utils.MACHINE_GENERATED_ADDRESS)) { mEventOrganizerDisplayName = mEventOrganizerEmail; } if (!mIsOrganizer && !TextUtils.isEmpty(mEventOrganizerDisplayName)) { setTextCommon(view, R.id.organizer, mEventOrganizerDisplayName); setVisibilityCommon(view, R.id.organizer_container, View.VISIBLE); } else { setVisibilityCommon(view, R.id.organizer_container, View.GONE); } mHasAttendeeData = mEventCursor.getInt(EVENT_INDEX_HAS_ATTENDEE_DATA) != 0; mCanModifyCalendar = mEventCursor.getInt(EVENT_INDEX_ACCESS_LEVEL) >= Calendars.CAL_ACCESS_CONTRIBUTOR; // TODO add "|| guestCanModify" after b/1299071 is fixed mCanModifyEvent = mCanModifyCalendar && mIsOrganizer; mIsBusyFreeCalendar = mEventCursor.getInt(EVENT_INDEX_ACCESS_LEVEL) == Calendars.CAL_ACCESS_FREEBUSY; if (!mIsBusyFreeCalendar) { View b = mView.findViewById(R.id.edit); b.setEnabled(true); b.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { doEdit(); // For dialogs, just close the fragment // For full screen, close activity on phone, leave it for tablet if (mIsDialog) { EventInfoFragment.this.dismiss(); } else if (!mIsTabletConfig) { getActivity().finish(); } } }); } View button; if (mCanModifyCalendar) { button = mView.findViewById(R.id.delete); if (button != null) { button.setEnabled(true); button.setVisibility(View.VISIBLE); } } if (mCanModifyEvent) { button = mView.findViewById(R.id.edit); if (button != null) { button.setEnabled(true); button.setVisibility(View.VISIBLE); } } if ((!mIsDialog && !mIsTabletConfig || mWindowStyle == EventInfoFragment.FULL_WINDOW_STYLE) && mMenu != null) { mActivity.invalidateOptionsMenu(); } } else { setVisibilityCommon(view, R.id.calendar, View.GONE); sendAccessibilityEventIfQueryDone(TOKEN_QUERY_DUPLICATE_CALENDARS); } }
From source file:com.hybris.mobile.lib.commerce.service.OCCServiceHelper.java
/** * Actions for after request/*w ww . java 2s. c om*/ * * @param responseReceiver Response callback result * @param dataResponse The response to return * @param dataConverterHelper Helper to convert the result into a POJO * @param getCachedResult Indicator to use cache or not * @param requestId Identifier for the call * @param url Url to call * @param parameters Call parameters * @param headers Call parameters headers * @param isAuthorizedRequest Flag for calls that need the user token * @param httpMethod Http method: GET, POST, PUT, DELETE * @param viewsToDisable List of views to disable/enable before/after the call * @param onRequestListener Request listener for before/after call actions */ protected <T, Z> void afterRequestActions(final ResponseCallback<T, Z> responseReceiver, Response<T> dataResponse, Response<Z> dataResponseError, final DataConverter.Helper<T, Z> dataConverterHelper, final boolean getCachedResult, final String requestId, final String url, final Map<String, Object> parameters, final Map<String, String> headers, final boolean isAuthorizedRequest, final String httpMethod, final List<View> viewsToDisable, final OnRequestListener onRequestListener) { boolean refreshTokenNeeded = false; // Checking if some error occured if (dataResponseError != null && dataResponseError.getData() != null && dataResponseError.getData() instanceof ErrorList) { Error error = ((ErrorList) dataResponseError.getData()).getErrors() != null && !((ErrorList) dataResponseError.getData()).getErrors().isEmpty() ? ((ErrorList) dataResponseError.getData()).getErrors().get(0) : null; // Token needs to be refreshed (only for logged in user) refreshTokenNeeded = error != null && !mUserInformation.isAnonymous() && (StringUtils.equals(error.getType(), Constants.ERROR_TYPE_INVALIDTOKENERROR) || (StringUtils.equals(error.getType(), Constants.ERROR_TYPE_UNAUTHORIZEDERROR))); } // We need to refresh the token so we re-send the request by invalidating the token for the user if (refreshTokenNeeded) { Log.d(TAG, Constants.ERROR_TYPE_INVALIDTOKENERROR + " or " + Constants.ERROR_TYPE_UNAUTHORIZEDERROR + " occured, re-sending the request with token refresh flag."); // Specific case when the app has already logged out the user and the response comes, // mUserInformation is null and we don't do anything mUserInformation.setTokenInvalid(true); executeRequest(responseReceiver, dataConverterHelper, getCachedResult, requestId, url, parameters, headers, isAuthorizedRequest, httpMethod, viewsToDisable, onRequestListener); } else { if (viewsToDisable != null && !viewsToDisable.isEmpty()) { Log.d(TAG, "Re-enabling views after the request"); for (View view : viewsToDisable) { view.setEnabled(true); view.setActivated(true); } } // After request listener if (onRequestListener != null) { onRequestListener.afterRequestBeforeResponse(); } boolean isDataSynced; // Response returned through the callback object if (dataResponseError != null) { responseReceiver.onError(dataResponseError); isDataSynced = dataResponseError.isSync(); } else { responseReceiver.onResponse(dataResponse); isDataSynced = dataResponse.isSync(); } // After request listener if (onRequestListener != null) { onRequestListener.afterRequest(isDataSynced); } } }
From source file:foam.jellyfish.StarwispBuilder.java
public void Update(final StarwispActivity ctx, final String ctxname, JSONArray arr) { try {/*from ww w . j av a2s . c o m*/ String type = arr.getString(0); final Integer id = arr.getInt(1); String token = arr.getString(2); Log.i("starwisp", "Update: " + type + " " + id + " " + token); // non widget commands if (token.equals("toast")) { Toast msg = Toast.makeText(ctx.getBaseContext(), arr.getString(3), Toast.LENGTH_SHORT); msg.show(); return; } if (type.equals("replace-fragment")) { int ID = arr.getInt(1); String name = arr.getString(2); Fragment fragment = ActivityManager.GetFragment(name); FragmentTransaction ft = ctx.getSupportFragmentManager().beginTransaction(); ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN); //ft.setCustomAnimations( // R.animator.card_flip_right_in, R.animator.card_flip_right_out, // R.animator.card_flip_left_in, R.animator.card_flip_left_out); ft.replace(ID, fragment); //ft.addToBackStack(null); ft.commit(); return; } if (token.equals("dialog-fragment")) { FragmentManager fm = ctx.getSupportFragmentManager(); final int ID = arr.getInt(3); final JSONArray lp = arr.getJSONArray(4); final String name = arr.getString(5); final Dialog dialog = new Dialog(ctx); dialog.setTitle("Title..."); LinearLayout inner = new LinearLayout(ctx); inner.setId(ID); inner.setLayoutParams(BuildLayoutParams(lp)); dialog.setContentView(inner); // Fragment fragment = ActivityManager.GetFragment(name); // FragmentTransaction fragmentTransaction = ctx.getSupportFragmentManager().beginTransaction(); // fragmentTransaction.add(ID,fragment); // fragmentTransaction.commit(); dialog.show(); /* DialogFragment df = new DialogFragment() { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { LinearLayout inner = new LinearLayout(ctx); inner.setId(ID); inner.setLayoutParams(BuildLayoutParams(lp)); return inner; } @Override public Dialog onCreateDialog(Bundle savedInstanceState) { Dialog ret = super.onCreateDialog(savedInstanceState); Log.i("starwisp","MAKINGDAMNFRAGMENT"); Fragment fragment = ActivityManager.GetFragment(name); FragmentTransaction fragmentTransaction = ctx.getSupportFragmentManager().beginTransaction(); fragmentTransaction.add(1,fragment); fragmentTransaction.commit(); return ret; } }; df.show(ctx.getFragmentManager(), "foo"); */ } if (token.equals("time-picker-dialog")) { final Calendar c = Calendar.getInstance(); int hour = c.get(Calendar.HOUR_OF_DAY); int minute = c.get(Calendar.MINUTE); // Create a new instance of TimePickerDialog and return it TimePickerDialog d = new TimePickerDialog(ctx, null, hour, minute, true); d.show(); return; } ; if (token.equals("make-directory")) { File file = new File(((StarwispActivity) ctx).m_AppDir + arr.getString(3)); file.mkdirs(); return; } if (token.equals("list-files")) { final String name = arr.getString(3); File file = new File(((StarwispActivity) ctx).m_AppDir + arr.getString(5)); // todo, should probably call callback with empty list if (file != null) { File list[] = file.listFiles(); if (list != null) { String code = "("; for (int i = 0; i < list.length; i++) { code += " \"" + list[i].getName() + "\""; } code += ")"; DialogCallback(ctx, ctxname, name, code); } } return; } if (token.equals("delayed")) { final String name = arr.getString(3); final int d = arr.getInt(5); Runnable timerThread = new Runnable() { public void run() { DialogCallback(ctx, ctxname, name, ""); } }; m_Handler.removeCallbacksAndMessages(null); m_Handler.postDelayed(timerThread, d); return; } if (token.equals("network-connect")) { if (m_NetworkManager.state == NetworkManager.State.IDLE) { final String name = arr.getString(3); final String ssid = arr.getString(5); m_NetworkManager.Start(ssid, (StarwispActivity) ctx, name, this); } return; } if (token.equals("http-request")) { if (m_NetworkManager.state == NetworkManager.State.CONNECTED) { Log.i("starwisp", "attempting http request"); final String name = arr.getString(3); final String url = arr.getString(5); m_NetworkManager.StartRequestThread(url, "normal", name); } return; } if (token.equals("http-download")) { if (m_NetworkManager.state == NetworkManager.State.CONNECTED) { Log.i("starwisp", "attempting http dl request"); final String filename = arr.getString(4); final String url = arr.getString(5); m_NetworkManager.StartRequestThread(url, "download", filename); } return; } if (token.equals("send-mail")) { final String to[] = new String[1]; to[0] = arr.getString(3); final String subject = arr.getString(4); final String body = arr.getString(5); JSONArray attach = arr.getJSONArray(6); ArrayList<String> paths = new ArrayList<String>(); for (int a = 0; a < attach.length(); a++) { Log.i("starwisp", attach.getString(a)); paths.add(attach.getString(a)); } email(ctx, to[0], "", subject, body, paths); } if (token.equals("date-picker-dialog")) { final Calendar c = Calendar.getInstance(); int day = c.get(Calendar.DAY_OF_MONTH); int month = c.get(Calendar.MONTH); int year = c.get(Calendar.YEAR); final String name = arr.getString(3); // Create a new instance of TimePickerDialog and return it DatePickerDialog d = new DatePickerDialog(ctx, new DatePickerDialog.OnDateSetListener() { public void onDateSet(DatePicker view, int year, int month, int day) { DialogCallback(ctx, ctxname, name, day + " " + month + " " + year); } }, year, month, day); d.show(); return; } ; if (token.equals("alert-dialog")) { final String name = arr.getString(3); final String msg = arr.getString(5); DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { int result = 0; if (which == DialogInterface.BUTTON_POSITIVE) result = 1; DialogCallback(ctx, ctxname, name, "" + result); } }; AlertDialog.Builder builder = new AlertDialog.Builder(ctx); builder.setMessage(msg).setPositiveButton("Yes", dialogClickListener) .setNegativeButton("No", dialogClickListener).show(); return; } if (token.equals("start-activity")) { ActivityManager.StartActivity(ctx, arr.getString(3), arr.getInt(4), arr.getString(5)); return; } if (token.equals("start-activity-goto")) { ActivityManager.StartActivityGoto(ctx, arr.getString(3), arr.getString(4)); return; } if (token.equals("finish-activity")) { ctx.setResult(arr.getInt(3)); ctx.finish(); return; } /////////////////////////////////////////////////////////// // now try and find the widget View vv = ctx.findViewById(id); if (vv == null) { Log.i("starwisp", "Can't find widget : " + id); return; } // tokens that work on everything if (token.equals("hide")) { vv.setVisibility(View.GONE); return; } if (token.equals("show")) { vv.setVisibility(View.VISIBLE); return; } // tokens that work on everything if (token.equals("set-enabled")) { vv.setEnabled(arr.getInt(3) == 1); return; } // special cases if (type.equals("linear-layout")) { LinearLayout v = (LinearLayout) vv; if (token.equals("contents")) { v.removeAllViews(); JSONArray children = arr.getJSONArray(3); for (int i = 0; i < children.length(); i++) { Build(ctx, ctxname, new JSONArray(children.getString(i)), v); } } } if (type.equals("button-grid")) { Log.i("starwisp", "button-grid update"); LinearLayout horiz = (LinearLayout) vv; if (token.equals("grid-buttons")) { Log.i("starwisp", "button-grid contents"); horiz.removeAllViews(); JSONArray params = arr.getJSONArray(3); String buttontype = params.getString(0); int height = params.getInt(1); int textsize = params.getInt(2); LinearLayout.LayoutParams lp = BuildLayoutParams(params.getJSONArray(3)); final JSONArray buttons = params.getJSONArray(4); final int count = buttons.length(); int vertcount = 0; LinearLayout vert = null; for (int i = 0; i < count; i++) { JSONArray button = buttons.getJSONArray(i); if (vertcount == 0) { vert = new LinearLayout(ctx); vert.setId(0); vert.setOrientation(LinearLayout.VERTICAL); horiz.addView(vert); } vertcount = (vertcount + 1) % height; if (buttontype.equals("button")) { Button b = new Button(ctx); b.setId(button.getInt(0)); b.setText(button.getString(1)); b.setTextSize(textsize); b.setLayoutParams(lp); b.setTypeface(((StarwispActivity) ctx).m_Typeface); final String fn = params.getString(5); b.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { CallbackArgs(ctx, ctxname, id, "" + v.getId() + " #t"); } }); vert.addView(b); } else if (buttontype.equals("toggle")) { ToggleButton b = new ToggleButton(ctx); b.setId(button.getInt(0)); b.setText(button.getString(1)); b.setTextSize(textsize); b.setLayoutParams(lp); b.setTypeface(((StarwispActivity) ctx).m_Typeface); final String fn = params.getString(5); b.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { String arg = "#f"; if (((ToggleButton) v).isChecked()) arg = "#t"; CallbackArgs(ctx, ctxname, id, "" + v.getId() + " " + arg); } }); vert.addView(b); } else if (buttontype.equals("single")) { ToggleButton b = new ToggleButton(ctx); b.setId(button.getInt(0)); b.setText(button.getString(1)); b.setTextSize(textsize); b.setLayoutParams(lp); b.setTypeface(((StarwispActivity) ctx).m_Typeface); final String fn = params.getString(5); b.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { try { for (int i = 0; i < count; i++) { JSONArray button = buttons.getJSONArray(i); int bid = button.getInt(0); if (bid != v.getId()) { ToggleButton tb = (ToggleButton) ctx.findViewById(bid); tb.setChecked(false); } } } catch (JSONException e) { Log.e("starwisp", "Error parsing data " + e.toString()); } CallbackArgs(ctx, ctxname, id, "" + v.getId() + " #t"); } }); vert.addView(b); } } } } /* if (type.equals("grid-layout")) { GridLayout v = (GridLayout)vv; if (token.equals("contents")) { v.removeAllViews(); JSONArray children = arr.getJSONArray(3); for (int i=0; i<children.length(); i++) { Build(ctx,ctxname,new JSONArray(children.getString(i)), v); } } } */ if (type.equals("view-pager")) { ViewPager v = (ViewPager) vv; if (token.equals("switch")) { v.setCurrentItem(arr.getInt(3)); } if (token.equals("pages")) { final JSONArray items = arr.getJSONArray(3); v.setAdapter(new FragmentPagerAdapter(ctx.getSupportFragmentManager()) { @Override public int getCount() { return items.length(); } @Override public Fragment getItem(int position) { try { String fragname = items.getString(position); return ActivityManager.GetFragment(fragname); } catch (JSONException e) { Log.e("starwisp", "Error parsing data " + e.toString()); } return null; } }); } } if (type.equals("image-view")) { ImageView v = (ImageView) vv; if (token.equals("image")) { int iid = ctx.getResources().getIdentifier(arr.getString(3), "drawable", ctx.getPackageName()); v.setImageResource(iid); } if (token.equals("external-image")) { Bitmap bitmap = BitmapFactory.decodeFile(arr.getString(3)); v.setImageBitmap(bitmap); } return; } if (type.equals("text-view") || type.equals("debug-text-view")) { Log.i("starwisp", "text-view..."); TextView v = (TextView) vv; if (token.equals("text")) { if (type.equals("debug-text-view")) { //v.setMovementMethod(new ScrollingMovementMethod()); } v.setText(arr.getString(3)); } return; } if (type.equals("edit-text")) { EditText v = (EditText) vv; if (token.equals("text")) { v.setText(arr.getString(3)); } return; } if (type.equals("button")) { Button v = (Button) vv; if (token.equals("text")) { v.setText(arr.getString(3)); } if (token.equals("listener")) { final String fn = arr.getString(3); v.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { m_Scheme.eval("(" + fn + ")"); } }); } return; } if (type.equals("toggle-button")) { ToggleButton v = (ToggleButton) vv; if (token.equals("text")) { v.setText(arr.getString(3)); return; } if (token.equals("checked")) { if (arr.getInt(3) == 0) v.setChecked(false); else v.setChecked(true); return; } if (token.equals("listener")) { final String fn = arr.getString(3); v.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { m_Scheme.eval("(" + fn + ")"); } }); } return; } /* if (type.equals("canvas")) { StarwispCanvas v = (StarwispCanvas)vv; if (token.equals("drawlist")) { v.SetDrawList(arr.getJSONArray(3)); } return; } if (type.equals("camera-preview")) { final CameraPreview v = (CameraPreview)vv; if (token.equals("take-picture")) { final String path = ((StarwispActivity)ctx).m_AppDir+arr.getString(3); v.TakePicture( new PictureCallback() { public void onPictureTaken(byte[] data, Camera camera) { String datetime = getDateTime(); String filename = path+datetime + ".jpg"; SaveData(filename,data); v.Shutdown(); ctx.finish(); } }); } if (token.equals("shutdown")) { v.Shutdown(); } return; } */ if (type.equals("seek-bar")) { SeekBar v = new SeekBar(ctx); if (token.equals("max")) { // android seekbar bug workaround int p = v.getProgress(); v.setMax(0); v.setProgress(0); v.setMax(arr.getInt(3)); v.setProgress(1000); // not working.... :( } } if (type.equals("spinner")) { Spinner v = (Spinner) vv; if (token.equals("selection")) { v.setSelection(arr.getInt(3)); } if (token.equals("array")) { final JSONArray items = arr.getJSONArray(3); ArrayList<String> spinnerArray = new ArrayList<String>(); for (int i = 0; i < items.length(); i++) { spinnerArray.add(items.getString(i)); } ArrayAdapter spinnerArrayAdapter = new ArrayAdapter<String>(ctx, android.R.layout.simple_spinner_item, spinnerArray) { public View getView(int position, View convertView, ViewGroup parent) { View v = super.getView(position, convertView, parent); ((TextView) v).setTypeface(((StarwispActivity) ctx).m_Typeface); return v; } }; v.setAdapter(spinnerArrayAdapter); final int wid = id; // need to update for new values v.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { public void onItemSelected(AdapterView<?> a, View v, int pos, long id) { try { CallbackArgs(ctx, ctxname, wid, "\"" + items.getString(pos) + "\""); } catch (JSONException e) { Log.e("starwisp", "Error parsing data " + e.toString()); } } public void onNothingSelected(AdapterView<?> v) { } }); } return; } } catch (JSONException e) { Log.e("starwisp", "Error parsing data " + e.toString()); } }
From source file:com.hybris.mobile.lib.commerce.service.OCCServiceHelper.java
/** * Execute a request//from w ww .j a v a 2 s .c o m * * @param responseReceiver Response callback result * @param dataConverterHelper Helper to convert the result into a POJO * @param getCachedResult Indicator to use cache or not * @param requestId Identifier for the call * @param url Url to call * @param parameters Call parameters * @param headers Call parameters headers * @param isAuthorizedRequest Flag for calls that need the user token * @param httpMethod Http method: GET, POST, PUT, DELETE * @param viewsToDisable List of views to disable/enable before/after the call * @param onRequestListener Request listener for before/after call actions * @return true if request is executed else false */ protected <T, Z> boolean executeRequest(final ResponseCallback<T, Z> responseReceiver, final DataConverter.Helper<T, Z> dataConverterHelper, final boolean getCachedResult, final String requestId, final String url, final Map parameters, final Map<String, String> headers, final boolean isAuthorizedRequest, final String httpMethod, final List<View> viewsToDisable, final OnRequestListener onRequestListener) { if (BuildConfig.DEBUG) { Log.d(TAG, "Executing request for " + url); } boolean refreshTokenNeeded = false; final Map<String, String> finalHeader = new HashMap<>(); // We initialize the header Map if (headers != null) { finalHeader.putAll(headers); } // Disabling the views before the call if (viewsToDisable != null && !viewsToDisable.isEmpty()) { Log.d(TAG, "Disabling views before the request"); for (View view : viewsToDisable) { view.setEnabled(false); view.setActivated(false); } } // We pass the access token for authorized requests if (isAuthorizedRequest) { // The token is expired, we refresh it (only for logged in user) if (!mUserInformation.isAnonymous() && (mUserInformation.isTokenExpired() || mUserInformation.isTokenInvalid())) { refreshTokenNeeded = true; // No refresh token, we send a logout message if (StringUtils.isBlank(mUserInformation.getSecureRefreshToken())) { Log.d(TAG, "Refresh token empty"); sendLogoutBroadcast(); } // We refresh the token else { Log.d(TAG, "Sending the request to refresh the token"); refreshToken(new ResponseReceiver<UserInformation>() { @Override public void onResponse(Response<UserInformation> response) { String savedCartId = mUserInformation.getCartId(); saveUserInformation(response.getData(), mUserInformation.getUserId()); mUserInformation.setCartId(savedCartId); executeRequest(responseReceiver, dataConverterHelper, getCachedResult, requestId, url, parameters, finalHeader, isAuthorizedRequest, httpMethod, viewsToDisable, onRequestListener); } @Override public void onError(Response<ErrorList> response) { Error firstError = response.getData().getErrors() != null && !response.getData().getErrors().isEmpty() ? response.getData().getErrors().get(0) : null; Log.e(TAG, "Error refreshing the user token. Details:" + firstError != null ? firstError.getMessage() : ""); sendLogoutBroadcast(); } }, mUserInformation.getSecureRefreshToken()); } } else if (!mUserInformation.isTokenInvalid()) { finalHeader.put(HEADER_AUTHORIZATION, HEADER_AUTHORIZATION_BEARER + " " + mUserInformation.getSecureAccessToken()); } } if (!refreshTokenNeeded) { // Before doing the request if (onRequestListener != null) { onRequestListener.beforeRequest(); } ResponseCallback<T, Z> responseReceiverActionsBeforeCallback = new ResponseCallback<T, Z>() { @Override public void onResponse(Response<T> dataResponse) { afterRequestActions(responseReceiver, dataResponse, null, dataConverterHelper, getCachedResult, requestId, url, parameters, finalHeader, isAuthorizedRequest, httpMethod, viewsToDisable, onRequestListener); } @Override public void onError(Response<Z> response) { afterRequestActions(responseReceiver, null, response, dataConverterHelper, getCachedResult, requestId, url, parameters, finalHeader, isAuthorizedRequest, httpMethod, viewsToDisable, onRequestListener); } }; return mPersistenceHelper.execute(responseReceiverActionsBeforeCallback, dataConverterHelper, getCachedResult, requestId, url, parameters, finalHeader, httpMethod); } else { return false; } }
From source file:com.segma.trim.MainActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MobileAds.initialize(getApplicationContext(), ADMOB_KEY); setContentView(R.layout.activity_main); loadAds();// w ww . j a v a 2 s .c o m MEMORY_SIZE = ((ActivityManager) getSystemService(ACTIVITY_SERVICE)).getMemoryClass(); MAX_BITMAP_PIXELS = calculateMaxBitmapPixels(); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); ipv = (ImageProcessingView) findViewById(R.id.ipv); loadLicense(); loadUserSetting(); final Runnable runnableOnTextView = new Runnable() { @Override public void run() { ipv.setVisibility(View.VISIBLE); // TODO: update pending: the image enlarges due to larger space rawBitmap = getSampleImage(); rawBitmapWidth = rawBitmap.getWidth(); rawBitmapHeight = rawBitmap.getHeight(); STATE = STATE_PROCESSING_IMAGE; textView.setVisibility(View.GONE); ipv.process(rawBitmap); } }; Display display = getWindowManager().getDefaultDisplay(); Point size = new Point(); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR2) { display.getSize(size); screenWidth = size.x; screenHeight = size.y; } else { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); screenWidth = display.getWidth(); screenHeight = display.getHeight(); } initControls(); textView = (TextView) findViewById(R.id.tv_message); textView.setEnabled(false); ViewTreeObserver viewTreeObserver = ipv.getViewTreeObserver(); if (viewTreeObserver.isAlive()) { viewTreeObserver.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { @Override public void onGlobalLayout() { ImageProcessingViewWidth = ipv.getWidth(); ImageProcessingViewHeight = ipv.getHeight(); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { ipv.getViewTreeObserver().removeOnGlobalLayoutListener(this); } else { ipv.getViewTreeObserver().removeGlobalOnLayoutListener(this); } if (ImageProcessingViewHeight != 0) textView.setEnabled(true); } }); } textView.setText(MESSAGE_STARTUP); textView.setOnTouchListener(new View.OnTouchListener() { float original_text_size; @Override public boolean onTouch(View v, final MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: original_text_size = textView.getTextSize(); //textView.setTextSize(TypedValue.COMPLEX_UNIT_PX, Math.round(original_text_size * 1.15)); handlerOnTextView.postDelayed(runnableOnTextView, LONG_PRESS_TIME_ON_TEXTVIEW); textView.setEnabled(false); break; case MotionEvent.ACTION_MOVE: handlerOnTextView.removeCallbacks(runnableOnTextView); break; case MotionEvent.ACTION_UP: //textView.setTextSize(TypedValue.COMPLEX_UNIT_PX, original_text_size); handlerOnTextView.removeCallbacks(runnableOnTextView); v.setEnabled(true); break; } return false; } }); setSupportActionBar((Toolbar) findViewById(R.id.toolbar)); actionBar = getSupportActionBar(); //actionBar.setDisplayHomeAsUpEnabled(true); ipv.setVisibility(View.INVISIBLE); if (MODE_DEBUG) { LICENSE = LICENSE_PREMIUM; getPackageManager().clearPackagePreferredActivities(getApplicationContext().getPackageName()); } }