Search in sources :

Example 1 with Image

use of me.ccrama.redditslide.ImgurAlbum.Image in project Slide by ccrama.

the class AlbumPager method onOptionsItemSelected.

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();
    if (id == android.R.id.home) {
        onBackPressed();
    }
    if (id == R.id.vertical) {
        SettingValues.albumSwipe = false;
        SettingValues.prefs.edit().putBoolean(SettingValues.PREF_ALBUM_SWIPE, false).apply();
        Intent i = new Intent(AlbumPager.this, Album.class);
        if (getIntent().hasExtra(MediaView.SUBMISSION_URL)) {
            i.putExtra(MediaView.SUBMISSION_URL, getIntent().getStringExtra(MediaView.SUBMISSION_URL));
        }
        if (getIntent().hasExtra(SUBREDDIT)) {
            i.putExtra(SUBREDDIT, getIntent().getStringExtra(SUBREDDIT));
        }
        i.putExtras(getIntent());
        startActivity(i);
        finish();
    }
    if (id == R.id.grid) {
        mToolbar.findViewById(R.id.grid).callOnClick();
    }
    if (id == R.id.external) {
        LinkUtil.openExternally(getIntent().getExtras().getString("url", ""), this);
    }
    if (id == R.id.comments) {
        int adapterPosition = getIntent().getIntExtra(MediaView.ADAPTER_POSITION, -1);
        finish();
        SubmissionsView.datachanged(adapterPosition);
    // getIntent().getStringExtra(MediaView.SUBMISSION_SUBREDDIT));
    // SubmissionAdapter.setOpen(this, getIntent().getStringExtra(MediaView.SUBMISSION_URL));
    }
    if (id == R.id.download && images != null) {
        int index = 0;
        for (final Image elem : images) {
            doImageSave(false, elem.getImageUrl(), index);
            index++;
        }
    }
    return super.onOptionsItemSelected(item);
}
Also used : Intent(android.content.Intent) Image(me.ccrama.redditslide.ImgurAlbum.Image)

Example 2 with Image

use of me.ccrama.redditslide.ImgurAlbum.Image in project Slide by ccrama.

the class AlbumView method onBindViewHolder.

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder2, int i) {
    if (holder2 instanceof AlbumViewHolder) {
        final int position = paddingBottom ? i : i - 1;
        AlbumViewHolder holder = (AlbumViewHolder) holder2;
        final Image user = users.get(position);
        ((Reddit) main.getApplicationContext()).getImageLoader().displayImage(user.getImageUrl(), holder.image, ImageGridAdapter.options);
        holder.body.setVisibility(View.VISIBLE);
        holder.text.setVisibility(View.VISIBLE);
        View imageView = holder.image;
        if (imageView.getWidth() == 0) {
            holder.image.setLayoutParams(new LinearLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT));
        } else {
            holder.image.setLayoutParams(new LinearLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, (int) getHeightFromAspectRatio(user.getHeight(), user.getWidth(), imageView.getWidth())));
        }
        {
            int type = new FontPreferences(holder.body.getContext()).getFontTypeComment().getTypeface();
            Typeface typeface;
            if (type >= 0) {
                typeface = RobotoTypefaces.obtainTypeface(holder.body.getContext(), type);
            } else {
                typeface = Typeface.DEFAULT;
            }
            holder.body.setTypeface(typeface);
        }
        {
            int type = new FontPreferences(holder.body.getContext()).getFontTypeTitle().getTypeface();
            Typeface typeface;
            if (type >= 0) {
                typeface = RobotoTypefaces.obtainTypeface(holder.body.getContext(), type);
            } else {
                typeface = Typeface.DEFAULT;
            }
            holder.text.setTypeface(typeface);
        }
        {
            if (user.getTitle() != null) {
                List<String> text = SubmissionParser.getBlocks(user.getTitle());
                setTextWithLinks(text.get(0), holder.text);
                if (holder.text.getText().toString().isEmpty()) {
                    holder.text.setVisibility(View.GONE);
                }
            } else {
                holder.text.setVisibility(View.GONE);
            }
        }
        {
            if (user.getDescription() != null) {
                List<String> text = SubmissionParser.getBlocks(user.getDescription());
                setTextWithLinks(text.get(0), holder.body);
                if (holder.body.getText().toString().isEmpty()) {
                    holder.body.setVisibility(View.GONE);
                }
            } else {
                holder.body.setVisibility(View.GONE);
            }
        }
        View.OnClickListener onGifImageClickListener = new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                if (SettingValues.image && !user.isAnimated() || SettingValues.gif && user.isAnimated()) {
                    Intent myIntent = new Intent(main, MediaView.class);
                    myIntent.putExtra(MediaView.EXTRA_URL, user.getImageUrl());
                    myIntent.putExtra(MediaView.SUBREDDIT, subreddit);
                    main.startActivity(myIntent);
                } else {
                    LinkUtil.openExternally(user.getImageUrl(), main);
                }
            }
        };
        if (user.isAnimated()) {
            holder.body.setVisibility(View.VISIBLE);
            holder.body.setSingleLine(false);
            // got rid of the \n thing, because it didnt parse and it was already a new line so...
            holder.body.setTextHtml(holder.text.getText() + main.getString(R.string.submission_tap_gif).toUpperCase());
            holder.body.setOnClickListener(onGifImageClickListener);
        }
        holder.itemView.setOnClickListener(onGifImageClickListener);
    } else if (holder2 instanceof SpacerViewHolder) {
        holder2.itemView.findViewById(R.id.height).setLayoutParams(new LinearLayout.LayoutParams(holder2.itemView.getWidth(), paddingBottom ? height : main.findViewById(R.id.toolbar).getHeight()));
    }
}
Also used : Typeface(android.graphics.Typeface) Intent(android.content.Intent) Image(me.ccrama.redditslide.ImgurAlbum.Image) GridView(android.widget.GridView) MediaView(me.ccrama.redditslide.Activities.MediaView) ImageView(android.widget.ImageView) SpoilerRobotoTextView(me.ccrama.redditslide.SpoilerRobotoTextView) View(android.view.View) AdapterView(android.widget.AdapterView) RecyclerView(android.support.v7.widget.RecyclerView) FontPreferences(me.ccrama.redditslide.Visuals.FontPreferences) List(java.util.List) LinearLayout(android.widget.LinearLayout)

Example 3 with Image

use of me.ccrama.redditslide.ImgurAlbum.Image in project Slide by ccrama.

the class Album method onOptionsItemSelected.

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();
    if (id == android.R.id.home) {
        onBackPressed();
    }
    if (id == R.id.slider) {
        SettingValues.albumSwipe = true;
        SettingValues.prefs.edit().putBoolean(SettingValues.PREF_ALBUM_SWIPE, true).apply();
        Intent i = new Intent(Album.this, AlbumPager.class);
        int adapterPosition = getIntent().getIntExtra(MediaView.ADAPTER_POSITION, -1);
        i.putExtra(MediaView.ADAPTER_POSITION, adapterPosition);
        if (getIntent().hasExtra(MediaView.SUBMISSION_URL)) {
            i.putExtra(MediaView.SUBMISSION_URL, getIntent().getStringExtra(MediaView.SUBMISSION_URL));
        }
        i.putExtra("url", url);
        startActivity(i);
        finish();
    }
    if (id == R.id.grid) {
        mToolbar.findViewById(R.id.grid).callOnClick();
    }
    if (id == R.id.comments) {
        SubmissionsView.datachanged(adapterPosition);
        finish();
    }
    if (id == R.id.external) {
        LinkUtil.openExternally(url, this);
    }
    if (id == R.id.download) {
        for (final Image elem : images) {
            doImageSave(false, elem.getImageUrl());
        }
    }
    return super.onOptionsItemSelected(item);
}
Also used : Intent(android.content.Intent) Image(me.ccrama.redditslide.ImgurAlbum.Image)

Aggregations

Intent (android.content.Intent)3 Image (me.ccrama.redditslide.ImgurAlbum.Image)3 Typeface (android.graphics.Typeface)1 RecyclerView (android.support.v7.widget.RecyclerView)1 View (android.view.View)1 AdapterView (android.widget.AdapterView)1 GridView (android.widget.GridView)1 ImageView (android.widget.ImageView)1 LinearLayout (android.widget.LinearLayout)1 List (java.util.List)1 MediaView (me.ccrama.redditslide.Activities.MediaView)1 SpoilerRobotoTextView (me.ccrama.redditslide.SpoilerRobotoTextView)1 FontPreferences (me.ccrama.redditslide.Visuals.FontPreferences)1