Search in sources :

Example 6 with Mail

use of com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail in project mosby by sockeqwe.

the class BaseMailsFragment method markMailAsUnstared.

@Override
public void markMailAsUnstared(int mailId) {
    // Search for the mail
    Mail mail = ((MailsAdapter) adapter).findMail(mailId);
    if (mail != null) {
        mail.setStarred(false);
        adapter.notifyDataSetChanged();
    }
}
Also used : MailsAdapter(com.hannesdorfmann.mosby3.sample.mail.mails.MailsAdapter) Mail(com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail)

Example 7 with Mail

use of com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail in project mosby by sockeqwe.

the class BaseMailsFragment method markMailAsStared.

@Override
public void markMailAsStared(int mailId) {
    // Search for the mail
    Mail mail = ((MailsAdapter) adapter).findMail(mailId);
    if (mail != null) {
        mail.setStarred(true);
        adapter.notifyDataSetChanged();
    }
}
Also used : MailsAdapter(com.hannesdorfmann.mosby3.sample.mail.mails.MailsAdapter) Mail(com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail)

Example 8 with Mail

use of com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail in project mosby by sockeqwe.

the class LabelPresenter method setLabel.

public void setLabel(final Mail mail, String newLabel) {
    // Optimistic propagation
    final String oldLabel = mail.getLabel();
    eventBus.post(new MailLabelChangedEvent(mail, newLabel));
    mailProvider.setLabel(mail, newLabel).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Subscriber<Mail>() {

        @Override
        public void onCompleted() {
        }

        @Override
        public void onError(Throwable e) {
            eventBus.post(new MailLabelChangedEvent(mail, oldLabel));
            if (isViewAttached()) {
                getView().changeLabel(mail, oldLabel);
                getView().showChangeLabelFailed(mail, e);
            }
        }

        @Override
        public void onNext(Mail m) {
        }
    });
// Don't cancel this onDetach
}
Also used : MailLabelChangedEvent(com.hannesdorfmann.mosby3.sample.mail.model.event.MailLabelChangedEvent) Mail(com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail)

Example 9 with Mail

use of com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail in project mosby by sockeqwe.

the class MailsAdapter method bindViewHolder.

@Override
public void bindViewHolder(final MailsAdapterHolders.MailViewHolder vh, int position) {
    final Mail mail = items.get(position);
    vh.senderPic.setImageResource(mail.getSender().getImageRes());
    vh.subject.setText(mail.getSubject());
    vh.message.setText(Html.fromHtml(mail.getSender().getName() + " - <i>" + mail.getText() + "</i>"));
    vh.date.setText(format.format(mail.getDate()));
    vh.star.setStarred(mail.isStarred());
    vh.star.clearAnimation();
    if (mail.isRead()) {
        vh.subject.setTypeface(null, Typeface.NORMAL);
        vh.message.setTypeface(null, Typeface.NORMAL);
        vh.date.setTypeface(null, Typeface.NORMAL);
    } else {
        vh.subject.setTypeface(Typeface.DEFAULT_BOLD, Typeface.BOLD);
        vh.message.setTypeface(Typeface.DEFAULT_BOLD, Typeface.BOLD);
        vh.date.setTypeface(Typeface.DEFAULT_BOLD, Typeface.BOLD);
    }
    vh.itemView.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            clickListener.onMailClicked(vh, mail);
        }
    });
    vh.star.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            starListner.onMailStarClicked(mail);
        }
    });
    vh.senderPic.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            personClickListener.onPersonClicked(mail.getSender());
        }
    });
}
Also used : Mail(com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail) ImageView(android.widget.ImageView) StarView(com.hannesdorfmann.mosby3.sample.mail.ui.view.StarView) TextView(android.widget.TextView) View(android.view.View)

Example 10 with Mail

use of com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail in project mosby by sockeqwe.

the class WriteActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_write);
    if (BuildUtils.isMinApi21()) {
        getWindow().getEnterTransition().excludeTarget(R.id.toolbar, true).excludeTarget(android.R.id.statusBarBackground, true).excludeTarget(android.R.id.navigationBarBackground, true);
    }
    toolbar.setNavigationIcon(getBackArrowDrawable());
    toolbar.setNavigationOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (BuildUtils.isMinApi21()) {
                finishAfterTransition();
            } else {
                finish();
            }
        }
    });
    Mail replayMail = getIntent().getParcelableExtra(KEY_REPLAY_MAIL);
    if (replayMail != null) {
        if (TextUtils.isEmpty(receiver.getText().toString())) {
            receiver.setText(replayMail.getSender().getEmail());
        }
        if (TextUtils.isEmpty(subject.getText().toString())) {
            subject.setText("RE: " + replayMail.getSubject());
        }
    }
}
Also used : Mail(com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail) BindView(butterknife.BindView) View(android.view.View)

Aggregations

Mail (com.hannesdorfmann.mosby3.sample.mail.model.mail.Mail)13 Person (com.hannesdorfmann.mosby3.sample.mail.model.contact.Person)5 View (android.view.View)4 Intent (android.content.Intent)3 BindView (butterknife.BindView)3 Date (java.util.Date)3 TextView (android.widget.TextView)2 MailsAdapter (com.hannesdorfmann.mosby3.sample.mail.mails.MailsAdapter)2 Label (com.hannesdorfmann.mosby3.sample.mail.model.mail.Label)2 LayoutTransition (android.animation.LayoutTransition)1 TargetApi (android.annotation.TargetApi)1 NotificationManager (android.app.NotificationManager)1 PendingIntent (android.app.PendingIntent)1 NotificationCompat (android.support.v4.app.NotificationCompat)1 ListPopupWindow (android.support.v7.widget.ListPopupWindow)1 Animation (android.view.animation.Animation)1 AdapterView (android.widget.AdapterView)1 ImageView (android.widget.ImageView)1 PopupWindow (android.widget.PopupWindow)1 OnClick (butterknife.OnClick)1