Initial Commit

This commit is contained in:
nabeel
2026-09-18 15:56:54 +10:00
commit dd59dcb605
598 changed files with 49076 additions and 0 deletions

View File

@@ -0,0 +1,85 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F2F2F7"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="20dp">
<!-- Same visual as the home-screen widget: same layout shape, same chart renderer. -->
<LinearLayout
android:id="@+id/main_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/widget_background"
android:padding="20dp"
android:elevation="2dp">
<TextView
android:id="@+id/main_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="#6B6B70" />
<TextView
android:id="@+id/main_total"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:textSize="28sp"
android:textStyle="bold"
android:textColor="#1C1C1E" />
<TextView
android:id="@+id/main_percent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="1dp"
android:textSize="13sp"
android:textColor="#6B6B70" />
<ProgressBar
android:id="@+id/main_progress"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="10dp"
android:layout_marginTop="12dp"
android:progressDrawable="@drawable/progress_tintable"
android:max="100" />
<ImageView
android:id="@+id/main_chart"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:adjustViewBounds="true"
android:scaleType="fitCenter" />
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="@string/widget_hint"
android:textSize="13sp"
android:textColor="#6B6B70" />
<Button
android:id="@+id/main_settings_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="@string/action_settings" />
</LinearLayout>
</ScrollView>

View File

@@ -0,0 +1,147 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F2F2F7"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="20dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/settings_title"
android:textSize="22sp"
android:textStyle="bold"
android:textColor="#1C1C1E" />
<!-- API token -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:text="@string/settings_api_token_label"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="#1C1C1E" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:text="@string/settings_api_token_hint"
android:textSize="12sp"
android:textColor="#6B6B70" />
<EditText
android:id="@+id/settings_api_token"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:background="@drawable/widget_background"
android:padding="12dp"
android:inputType="textPassword"
android:hint="@string/settings_api_token_placeholder"
android:importantForAutofill="no" />
<CheckBox
android:id="@+id/settings_show_token"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="@string/settings_show_token" />
<!-- Text size -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:text="@string/settings_text_size_label"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="#1C1C1E" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:text="@string/settings_text_size_hint"
android:textSize="12sp"
android:textColor="#6B6B70" />
<RadioGroup
android:id="@+id/settings_text_size_group"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:orientation="vertical">
<RadioButton
android:id="@+id/text_size_small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/settings_text_size_small" />
<RadioButton
android:id="@+id/text_size_medium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/settings_text_size_medium" />
<RadioButton
android:id="@+id/text_size_large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/settings_text_size_large" />
<RadioButton
android:id="@+id/text_size_extra_large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/settings_text_size_extra_large" />
</RadioGroup>
<!-- Refresh Interval -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:text="@string/settings_refresh_interval_label"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="#1C1C1E" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:text="@string/settings_refresh_interval_hint"
android:textSize="12sp"
android:textColor="#6B6B70" />
<EditText
android:id="@+id/settings_refresh_interval"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:background="@drawable/widget_background"
android:padding="12dp"
android:inputType="number"
android:hint="1"
android:importantForAutofill="no" />
<Button
android:id="@+id/settings_save"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="28dp"
android:text="@string/settings_save" />
</LinearLayout>
</ScrollView>

View File

@@ -0,0 +1,61 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingVertical="8dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/item_category"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:textSize="12sp"
android:textStyle="bold"
android:textColor="#1C1C1E" />
<TextView
android:id="@+id/item_amount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:textSize="10sp"
android:textColor="#6B6B70" />
</RelativeLayout>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="4dp">
<ProgressBar
android:id="@+id/item_progress_green"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="6dp"
android:progressDrawable="@drawable/progress_green"
android:visibility="gone" />
<ProgressBar
android:id="@+id/item_progress_amber"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="6dp"
android:progressDrawable="@drawable/progress_amber"
android:visibility="gone" />
<ProgressBar
android:id="@+id/item_progress_red"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="6dp"
android:progressDrawable="@drawable/progress_red"
android:visibility="gone" />
</FrameLayout>
</LinearLayout>

View File

@@ -0,0 +1,106 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget_root"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/widget_background"
android:orientation="vertical"
android:padding="16dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/widget_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:textColor="#6B6B70"
android:textSize="13sp"
android:textStyle="bold" />
<ImageButton
android:id="@+id/widget_refresh"
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:background="?android:attr/selectableItemBackgroundBorderless"
android:contentDescription="Refresh"
android:padding="6dp"
android:scaleType="fitCenter"
android:src="@android:drawable/ic_popup_sync"
android:tint="#6B6B70" />
</RelativeLayout>
<TextView
android:id="@+id/widget_total"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:textColor="#1C1C1E"
android:textSize="22sp"
android:textStyle="bold" />
<TextView
android:id="@+id/widget_percent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="1dp"
android:textColor="#6B6B70"
android:textSize="12sp"
android:visibility="gone" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp">
<ProgressBar
android:id="@+id/progress_green"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="10dp"
android:progressDrawable="@drawable/progress_green"
android:visibility="gone" />
<ProgressBar
android:id="@+id/progress_amber"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="10dp"
android:progressDrawable="@drawable/progress_amber"
android:visibility="gone" />
<ProgressBar
android:id="@+id/progress_red"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="10dp"
android:progressDrawable="@drawable/progress_red"
android:visibility="gone" />
</FrameLayout>
<ListView
android:id="@+id/widget_list"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="12dp"
android:layout_weight="1"
android:divider="@null"
android:dividerHeight="0dp"
android:visibility="visible" />
<TextView
android:id="@+id/widget_empty_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:text="No budget data"
android:textAlignment="center"
android:visibility="gone" />
</LinearLayout>