// Path: app/src/main/java/com/lukekorth/auto_fi/adapters/LogAdapter.java
// public class LogAdapter extends ArrayAdapter<String> {
// 
//     public LogAdapter(@NonNull Context context) {
//         super(context, R.layout.log_line, new ArrayList<String>());
//     }
// 
//     @NonNull
//     @Override
//     public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
//         View view = super.getView(position, convertView, parent);
// 
//         if (position % 2 == 1) {
//             view.setBackgroundResource(R.color.alternating_list_background);
//         } else {
//             view.setBackgroundResource(0);
//         }
// 
//         return view;
//     }
// }


import android.os.Handler;
import android.os.Looper;
import com.lukekorth.auto_fi.adapters.LogAdapter;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.AppenderBase;
package com.lukekorth.auto_fi.utilities;




public class ListViewAppender extends AppenderBase<ILoggingEvent> {

    private LogAdapter mLogAdapter;
    private Handler mMainThreadHandler;

// Path: app/src/main/java/com/lukekorth/auto_fi/adapters/LogAdapter.java
// public class LogAdapter extends ArrayAdapter<String> {
// 
//     public LogAdapter(@NonNull Context context) {
//         super(context, R.layout.log_line, new ArrayList<String>());
//     }
// 
//     @NonNull
//     @Override
//     public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
//         View view = super.getView(position, convertView, parent);
// 
//         if (position % 2 == 1) {
//             view.setBackgroundResource(R.color.alternating_list_background);
//         } else {
//             view.setBackgroundResource(0);
//         }
// 
//         return view;
//     }
// }


// Path: app/src/main/java/com/lukekorth/auto_fi/utilities/ListViewAppender.java
import android.os.Handler;
import android.os.Looper;
import com.lukekorth.auto_fi.adapters.LogAdapter;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.AppenderBase;

package com.lukekorth.auto_fi.utilities;




public class ListViewAppender extends AppenderBase<ILoggingEvent> {

    private LogAdapter mLogAdapter;
    private Handler mMainThreadHandler;

    public ListViewAppender(LogAdapter logAdapter) {