@Override public void onLongPress(MotionEvent e) { for (int i = 0; i < C.NUM_CIRCLE_ITEMS; i++) { boolean bUsed = false; for (int j = 0; j < G.settings.mCircleSection.length; j++) { if(G.settings.mCircleSection[j] == i){ bUsed = true; break; } } if (!bUsed){ if (ViewBase.isPointInsideRect(e.getX(), e.getY(), mCircleItems[i].getX(), mCircleItems[i].getY(), mCircleItems[i].getWidth(), mCircleItems[i].getHeight())) { Drawable oldDrawable = mCircleItems[i].getDrawable(); mCircleItems[i].setBackgroundResource(R.drawable.light_circle_wrapper); DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(mCircleItems[i]); ClipData data = ClipData.newPlainText(DRAG_FROM_UNUSED_TAG, String.valueOf(i)); mCircleItems[i].startDrag(data, shadowBuilder, mCircleItems[i], 0); mCircleItems[i].setVisibility(View.INVISIBLE); mCircleItems[i].setImageDrawable(oldDrawable); break; } } } }
@Override public void onLongPress(MotionEvent e) { for (int i = 0; i < G.settings.mCircleSection.length; i++) { final int RADIUS_COMPLEMENT = 8; int iconSize = (int) getResources().getDimension( R.dimen.circle_item_size); int item = G.settings.mCircleSection[i]; if (ViewBase.isPointInsideCircle((int)e.getX(), (int)e.getY(), (int)(mCircleItems[item].getX() + mCircleItems[item].getWidth() / 2), (int)(mCircleItems[item].getY() + mCircleItems[item].getHeight() / 2), (int)(iconSize/2 + ViewBase.dpToPx(RADIUS_COMPLEMENT)))) { Drawable oldDrawable = mCircleItems[item].getDrawable(); mCircleItems[item].setBackgroundResource(R.drawable.light_circle_wrapper); DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(mCircleItems[item]); ClipData data = ClipData.newPlainText(DRAG_FROM_CIRCLE_TAG, String.valueOf(i)); mCircleItems[item].startDrag(data, shadowBuilder, mCircleItems[item], 0); mCircleItems[item].setVisibility(View.INVISIBLE); mCircleItems[item].setImageDrawable(oldDrawable); break; } } }
@Override public boolean onItemLongClick(AdapterView<?> arg0, View childView, int position, long id) { Person person = controller.getPersonAt(position); String text = person.toString(); ClipData.Item item = new ClipData.Item(text); String[] mimeTypes = {ClipDescription.MIMETYPE_TEXT_PLAIN}; ClipData data = new ClipData(text, mimeTypes, item); DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(childView); childView.startDrag(data, shadowBuilder, childView, 0); childView.setVisibility(View.INVISIBLE); filter.setVisibility(View.GONE); buttonBarDropTarget.setVisibility(View.VISIBLE); return true; }
@Override public boolean onLongClick(View v) { Object tag = v.getTag(); long contactId = (Long) tag; PersonContact contact = controller.findContactWithId(contactId); String text = contact.getType() + " - " + contact.getValue(); ClipData.Item item = new ClipData.Item(text); String[] mimeTypes = { ClipDescription.MIMETYPE_TEXT_PLAIN }; ClipData data = new ClipData(text, mimeTypes, item); DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(v); v.startDrag(data, shadowBuilder, v, 0); v.setVisibility(View.INVISIBLE); buttonBarMain.setVisibility(View.GONE); buttonBarDropContact.setVisibility(View.VISIBLE); txtFullNameView.setEnabled(false); return true; }
private View addImagetoContainer(View inputView, final int position, Drawable drawable) { final ImageView pieceView = (ImageView) inputView .findViewById(R.id.map_piece); pieceView.setImageDrawable(drawable); pieceView.setTag(position); pieceView.setContentDescription("grid"); pieceView.setOnTouchListener(new View.OnTouchListener() { @SuppressLint("ClickableViewAccessibility") @Override public boolean onTouch(View v, MotionEvent event) { final ClipData data = ClipData.newPlainText("position", position + ""); final DragShadowBuilder pieceDragShadowBuilder = new DragShadowBuilder( pieceView); trash.setVisibility(View.VISIBLE); startClickTime = Calendar.getInstance() .getTimeInMillis(); v.setVisibility(View.INVISIBLE); v.startDrag(data, pieceDragShadowBuilder, v, 0); return true; } }); return inputView; }
public boolean onTouch(View view, MotionEvent motionEvent) { if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) { switch(view.getId()){ case R.id.pickup_button: ClipData data = ClipData.newPlainText("Pickup", "Call"); DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view); view.startDrag(data, shadowBuilder, view, 0); view.setVisibility(View.INVISIBLE); break; case R.id.hangup_button: ClipData data2 = ClipData.newPlainText("Hang", "Call"); DragShadowBuilder shadowBuilder2 = new View.DragShadowBuilder(view); view.startDrag(data2, shadowBuilder2, view, 0); view.setVisibility(View.INVISIBLE); } return true; } else { return false; } }
@Override public void run() { view.post(new Runnable() { @Override public void run() { mPointToPosition = -1; mSwiping = false; mItemPressed = false; ClipData data = ClipData.newPlainText("", ""); DragShadowBuilder sb = new View.DragShadowBuilder(view); view.startDrag(data, sb, new Reference<View>(view), 0); } }); }
@Override public DragShadowBuilder generateDragShadow(AdaptableDragDropView dragSource) { if (mCurrentDragSession.dragBuddies == null) { return new DragShadowBuilder(dragSource); } else { // Get dragging image view for generating drag shadow ImageView draggingView = dragSource.getDragInfo().draggingView; return new DragShadowBuilder((draggingView != null) ? draggingView : dragSource); } }
private DragShadowBuilder createDragShadowBuilderImpl(String text) { View view = layoutInflater.inflate(R.layout.tablet_overlay_droparea, null); view.setBackgroundResource(R.drawable.d171_box_background_highlight); ((TextView) view.findViewById(R.id.text)).setText(text); return new TabletDragShadowBuilder(view, (int) (DRAG_SHADOW_WIDTH * densityScale), (int) (DRAG_SHADOW_HEIGHT * densityScale)); }
private void startDraggingImpl(View view, DragDataContainer<PlaylistSong<BaseArtist, BaseAlbum>> dragDataContainer, DragShadowBuilder dragShadowBuilder) { tabletPresenter.highlight(); view.startDrag(EMPTY_CLIP_DATA, dragShadowBuilder, dragDataContainer, 0); }
public boolean onTouch(View view, MotionEvent motionEvent) { if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) { ClipData data = ClipData.newPlainText("", ""); DragShadowBuilder shadowBuilder = new View.DragShadowBuilder( view); view.startDrag(data, shadowBuilder, view, 0); view.setVisibility(View.INVISIBLE); return true; } else { return false; } }
@Override public boolean onTouch(View view, MotionEvent motionEvent) { // start move on a touch event if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) { ClipData data = ClipData.newPlainText("", ""); DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view); view.startDrag(data, shadowBuilder, view, 0); view.setVisibility(View.INVISIBLE); return true; } return false; }
public boolean onTouch(View view, MotionEvent motionEvent) { if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) { ClipData data = ClipData.newPlainText("", ""); DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view); view.startDrag(data, shadowBuilder, view, 0); view.setVisibility(View.INVISIBLE); return true; } else { return false; } }
@Override public boolean onLongClick(View view) { // Find the position of the preview relative to the touch location. WidgetImageView img = mWidgetCell.getWidgetView(); // If the ImageView doesn't have a drawable yet, the widget preview hasn't been loaded and // we abort the drag. if (img.getBitmap() == null) { return false; } Rect bounds = img.getBitmapBounds(); bounds.offset(img.getLeft() - (int) mLastTouchPos.x, img.getTop() - (int) mLastTouchPos.y); // Start home and pass the draw request params PinItemDragListener listener = new PinItemDragListener(mRequest, bounds, img.getBitmap().getWidth(), img.getWidth()); Intent homeIntent = new Intent(Intent.ACTION_MAIN) .addCategory(Intent.CATEGORY_HOME) .setPackage(getPackageName()) .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK) .putExtra(PinItemDragListener.EXTRA_PIN_ITEM_DRAG_LISTENER, listener); if (!PreferencesState.isAllowRotationPrefEnabled(this) && (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE && !isInMultiWindowMode())) { // If we are starting the drag in landscape even though home is locked in portrait, // restart the home activity to temporarily allow rotation. homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK); } startActivity(homeIntent, ActivityOptions.makeCustomAnimation(this, 0, android.R.anim.fade_out).toBundle()); // Start a system drag and drop. We use a transparent bitmap as preview for system drag // as the preview is handled internally by launcher. ClipDescription description = new ClipDescription("", new String[]{listener.getMimeType()}); ClipData data = new ClipData(description, new ClipData.Item("")); view.startDragAndDrop(data, new DragShadowBuilder(view) { @Override public void onDrawShadow(Canvas canvas) { } @Override public void onProvideShadowMetrics(Point outShadowSize, Point outShadowTouchPoint) { outShadowSize.set(SHADOW_SIZE, SHADOW_SIZE); outShadowTouchPoint.set(SHADOW_SIZE / 2, SHADOW_SIZE / 2); } }, null, View.DRAG_FLAG_GLOBAL); return false; }
@Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { int type = getItemViewType(position); convertView = createView(parent, type); convertView.setOnDragListener(new OnDragListener() { @Override @SuppressWarnings("unchecked") //unavoidable generic type problems -> Reference<View> public boolean onDrag(View dstView, DragEvent event) { Reference<View> ref = (Reference<View>) event.getLocalState(); final View srcView = ref.reference; switch (event.getAction()) { case DragEvent.ACTION_DRAG_ENTERED: srcView.setVisibility(View.VISIBLE); dstView.setVisibility(View.INVISIBLE); move(((Integer) srcView.getTag(R.id.reorder_key)), ((Integer) dstView.getTag(R.id.reorder_key))); ref.reference = dstView; break; case DragEvent.ACTION_DRAG_ENDED: srcView.post(new Runnable() { @Override public void run() { srcView.setVisibility(View.VISIBLE); } }); break; } return true; } }); convertView.setOnLongClickListener(new OnLongClickListener() { @Override public boolean onLongClick(final View view) { // Force a reset of any states notifyDataSetChanged(); // Start the drag on the main loop to allow // the above state reset to settle. view.post(new Runnable() { @Override @SuppressWarnings("deprecation") //startDrag() --> suppress deprecation because startDragAndDrop() requires minSdkVersion 24 public void run() { ClipData data = ClipData.newPlainText("", ""); DragShadowBuilder sb = new View.DragShadowBuilder(view); view.startDrag(data, sb, new Reference<>(view), 0); } }); return true; } }); } convertView.setTag(R.id.reorder_key, position); bindView(convertView, position); return convertView; }
@Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { int type = getItemViewType(position); convertView = createView(parent, type); convertView.setOnDragListener(new OnDragListener() { @Override public boolean onDrag(View dstView, DragEvent event) { Reference<View> ref = (Reference<View>) event.getLocalState(); final View srcView = ref.reference; switch (event.getAction()) { case DragEvent.ACTION_DRAG_ENTERED: srcView.setVisibility(View.VISIBLE); dstView.setVisibility(View.INVISIBLE); move(((Integer) srcView.getTag(R.id.reorder_key)).intValue(), ((Integer) dstView.getTag(R.id.reorder_key)).intValue()); ref.reference = dstView; break; case DragEvent.ACTION_DRAG_ENDED: srcView.post(new Runnable() { @Override public void run() { srcView.setVisibility(View.VISIBLE); } }); break; } return true; } }); convertView.setOnLongClickListener(new OnLongClickListener() { @Override public boolean onLongClick(final View view) { // Force a reset of any states notifyDataSetChanged(); // Start the drag on the main loop to allow // the above state reset to settle. view.post(new Runnable() { @Override public void run() { ClipData data = ClipData.newPlainText("", ""); DragShadowBuilder sb = new View.DragShadowBuilder(view); view.startDrag(data, sb, new Reference<View>(view), 0); } }); return true; } }); } convertView.setTag(R.id.reorder_key, Integer.valueOf(position)); bindView(convertView, position); return convertView; }
@Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { int type = getItemViewType(position); convertView = createView(parent, type); convertView.setOnDragListener(new OnDragListener() { @Override public boolean onDrag(View dstView, DragEvent event) { Reference<View> ref = (Reference<View>) event.getLocalState(); final View srcView = ref.reference; switch (event.getAction()) { case DragEvent.ACTION_DRAG_ENTERED: srcView.setVisibility(View.VISIBLE); dstView.setVisibility(View.INVISIBLE); move(((Integer) srcView.getTag(KEY)).intValue(), ((Integer) dstView.getTag(KEY)).intValue()); ref.reference = dstView; break; case DragEvent.ACTION_DRAG_ENDED: srcView.post(new Runnable() { @Override public void run() { srcView.setVisibility(View.VISIBLE); } }); break; } return true; } }); convertView.setOnLongClickListener(new OnLongClickListener() { @Override public boolean onLongClick(final View view) { // Force a reset of any states notifyDataSetChanged(); // Start the drag on the main loop to allow // the above state reset to settle. view.post(new Runnable() { @Override public void run() { ClipData data = ClipData.newPlainText("", ""); DragShadowBuilder sb = new View.DragShadowBuilder(view); view.startDrag(data, sb, new Reference<View>(view), 0); } }); return true; } }); } convertView.setTag(KEY, Integer.valueOf(position)); bindView(convertView, position); return convertView; }
public View getView(final int position, View convertView, ViewGroup parent) { View squareContainerView = convertView; if (squareContainerView == null) { squareContainerView = mInflater.inflate( R.layout.activity_game_toolbox_map_cell, null); squareContainerView.setOnDragListener(new MyDragListener( this.mContext)); final ImageView pieceView = (ImageView) squareContainerView .findViewById(R.id.map_piece); if (dotsList.get(position) != null) { pieceView.setImageDrawable(dotsList.get(position)); pieceView.setTag(position); pieceView.setContentDescription(tag); pieceView.setOnTouchListener(new View.OnTouchListener() { @SuppressLint("ClickableViewAccessibility") @Override public boolean onTouch(View v, MotionEvent event) { final ClipData data = ClipData.newPlainText("position", position + ""); final DragShadowBuilder pieceDragShadowBuilder = new DragShadowBuilder( pieceView); if (tag == "grid"){ v.setVisibility(View.INVISIBLE); trash.setVisibility(View.VISIBLE); } startClickTime = Calendar.getInstance() .getTimeInMillis(); v.startDrag(data, pieceDragShadowBuilder, v, 0); return true; } }); } } return squareContainerView; }
public DragShadowBuilder createDragShadowBuilderSongs(int numberOfSongs) { return createDragShadowBuilderImpl(i18nManager.getNumberOfSongsText(numberOfSongs)); }
public DragShadowBuilder createDragShadowBuilderAlbums(int numberOfAlbums) { return createDragShadowBuilderImpl(i18nManager.getNumberOfAlbumsText(numberOfAlbums)); }
public DragShadowBuilder createDragShadowBuilderAllSongs() { return createDragShadowBuilderImpl(resources.getString(R.string.all_songs)); }
public DragShadowBuilder createDragShadowBuilderArtist() { return createDragShadowBuilderImpl(resources.getString(R.string._1_artist)); }
public DragShadowBuilder generateDragShadow(AdaptableDragDropView dragSource);