import android.database.sqlite.SQLiteDatabase;
import android.graphics.Typeface;
import android.os.AsyncTask;
-import android.support.annotation.NonNull;
-import android.support.v7.widget.AppCompatTextView;
-import android.support.v7.widget.RecyclerView;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.style.StyleSpan;
import net.ktnx.mobileledger.model.LedgerTransaction;
import net.ktnx.mobileledger.model.LedgerTransactionAccount;
import net.ktnx.mobileledger.model.TransactionListItem;
+import net.ktnx.mobileledger.utils.Colors;
import net.ktnx.mobileledger.utils.Globals;
import net.ktnx.mobileledger.utils.MLDB;
import java.text.DateFormat;
import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.TimeZone;
+
+import androidx.annotation.NonNull;
+import androidx.appcompat.widget.AppCompatTextView;
+import androidx.recyclerview.widget.RecyclerView;
import static net.ktnx.mobileledger.utils.DimensionUtils.dp2px;
// tr.getAccounts().size()));
TransactionLoader loader = new TransactionLoader();
- loader.execute(new TransactionLoaderParams(tr, holder, position, boldAccountName,
- item.isOdd()));
+ loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,
+ new TransactionLoaderParams(tr, holder, position, boldAccountName,
+ item.isOdd()));
// WORKAROUND what seems to be a bug in CardHolder somewhere
// when a view that was previously holding a delimiter is re-purposed
holder.vDelimiter.setVisibility(View.VISIBLE);
holder.tvDelimiterDate.setText(DateFormat.getDateInstance().format(date));
if (item.isMonthShown()) {
- holder.tvDelimiterMonth.setText(Globals.monthNames[date.getMonth()]);
+ GregorianCalendar cal = new GregorianCalendar(TimeZone.getDefault());
+ cal.setTime(date);
+ holder.tvDelimiterMonth
+ .setText(Globals.monthNames[cal.get(GregorianCalendar.MONTH)]);
holder.tvDelimiterMonth.setVisibility(View.VISIBLE);
// holder.vDelimiterLine.setBackgroundResource(R.drawable.dashed_border_8dp);
holder.vDelimiterLine.setVisibility(View.GONE);
case HEAD:
holder.tvDescription.setText(step.getTransaction().getDescription());
- if (step.isOdd()) holder.row.setBackgroundColor(Globals.tableRowDarkBG);
- else holder.row.setBackgroundColor(Globals.tableRowLightBG);
+ if (step.isOdd()) holder.row.setBackgroundColor(Colors.tableRowDarkBG);
+ else holder.row.setBackgroundColor(Colors.tableRowLightBG);
break;
case ACCOUNTS:
if ((boldAccountName != null) &&
acc.getAccountName().startsWith(boldAccountName))
{
- accName.setTextColor(Globals.primaryDark);
- accAmount.setTextColor(Globals.primaryDark);
+ accName.setTextColor(Colors.accent);
+ accAmount.setTextColor(Colors.accent);
SpannableString ss = new SpannableString(acc.getAccountName());
ss.setSpan(new StyleSpan(Typeface.BOLD), 0, boldAccountName.length(),
accName.setText(ss);
}
else {
- accName.setTextColor(Globals.defaultTextColor);
- accAmount.setTextColor(Globals.defaultTextColor);
+ accName.setTextColor(Colors.defaultTextColor);
+ accAmount.setTextColor(Colors.defaultTextColor);
accName.setText(acc.getAccountName());
}
accAmount.setText(acc.toString());