diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
new file mode 100644
index 00000000..d596183d
--- /dev/null
+++ b/.github/workflows/codeql.yml
@@ -0,0 +1,109 @@
+name: CodeQL
+
+on:
+ push:
+ branches:
+ - main
+
+ pull_request:
+ branches:
+ - main
+
+jobs:
+ # ============================================================
+ # JavaScript / TypeScript
+ # ============================================================
+
+ analyze-javascript:
+ name: Analyze JavaScript / TypeScript
+ runs-on: ubuntu-latest
+
+ permissions:
+ security-events: write
+ packages: read
+ actions: read
+ contents: read
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v5
+
+ - name: Initialize CodeQL
+ uses: github/codeql-action/init@v4
+ with:
+ languages: javascript-typescript
+ build-mode: none
+
+ - name: Perform CodeQL Analysis
+ uses: github/codeql-action/analyze@v4
+ with:
+ category: "/language:javascript-typescript"
+
+ # ============================================================
+ # Kotlin / Android
+ # ============================================================
+
+ analyze-kotlin:
+ name: Analyze Kotlin / Android
+ runs-on: ubuntu-latest
+
+ permissions:
+ security-events: write
+ packages: read
+ actions: read
+ contents: read
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v5
+
+ - name: Check whether Kotlin-related files changed
+ id: changes
+ uses: dorny/paths-filter@v4
+ with:
+ filters: |
+ kotlin:
+ - 'modules/**'
+ - 'plugins/**'
+
+ - name: Setup Node
+ if: steps.changes.outputs.kotlin == 'true'
+ uses: actions/setup-node@v6
+ with:
+ node-version: 24
+ cache: npm
+
+ - name: Setup Java
+ if: steps.changes.outputs.kotlin == 'true'
+ uses: actions/setup-java@v5
+ with:
+ distribution: temurin
+ java-version: "17"
+
+ - name: Install dependencies
+ if: steps.changes.outputs.kotlin == 'true'
+ run: npm ci
+
+ - name: Expo Prebuild
+ if: steps.changes.outputs.kotlin == 'true'
+ run: npx expo prebuild --clean --no-install
+
+ - name: Initialize CodeQL
+ if: steps.changes.outputs.kotlin == 'true'
+ uses: github/codeql-action/init@v4
+ with:
+ languages: java-kotlin
+ build-mode: manual
+
+ - name: Build Android
+ if: steps.changes.outputs.kotlin == 'true'
+ working-directory: android
+ run: |
+ chmod +x gradlew
+ ./gradlew assembleDebug --no-daemon
+
+ - name: Perform CodeQL Analysis
+ if: steps.changes.outputs.kotlin == 'true'
+ uses: github/codeql-action/analyze@v4
+ with:
+ category: "/language:java-kotlin"
diff --git a/modules/passcodes-autofill-service/android/src/main/res/drawable/autofill_item_background.xml b/modules/passcodes-autofill-service/android/src/main/res/drawable/autofill_item_background.xml
index 403daca2..2ada0260 100644
--- a/modules/passcodes-autofill-service/android/src/main/res/drawable/autofill_item_background.xml
+++ b/modules/passcodes-autofill-service/android/src/main/res/drawable/autofill_item_background.xml
@@ -3,6 +3,6 @@
-
+
diff --git a/modules/passcodes-autofill-service/android/src/main/res/drawable/ic_arrow_back.xml b/modules/passcodes-autofill-service/android/src/main/res/drawable/ic_arrow_back.xml
index 5c227c54..17217cb9 100644
--- a/modules/passcodes-autofill-service/android/src/main/res/drawable/ic_arrow_back.xml
+++ b/modules/passcodes-autofill-service/android/src/main/res/drawable/ic_arrow_back.xml
@@ -7,7 +7,7 @@
android:viewportHeight="24">
diff --git a/modules/passcodes-autofill-service/android/src/main/res/drawable/ic_autofill_lock.xml b/modules/passcodes-autofill-service/android/src/main/res/drawable/ic_autofill_lock.xml
index 8ccb6bc9..7c9b59ee 100644
--- a/modules/passcodes-autofill-service/android/src/main/res/drawable/ic_autofill_lock.xml
+++ b/modules/passcodes-autofill-service/android/src/main/res/drawable/ic_autofill_lock.xml
@@ -7,7 +7,7 @@
android:viewportHeight="24">
diff --git a/modules/passcodes-autofill-service/android/src/main/res/layout/autofill_item.xml b/modules/passcodes-autofill-service/android/src/main/res/layout/autofill_item.xml
index bc4fb529..141218ea 100644
--- a/modules/passcodes-autofill-service/android/src/main/res/layout/autofill_item.xml
+++ b/modules/passcodes-autofill-service/android/src/main/res/layout/autofill_item.xml
@@ -33,7 +33,7 @@
android:id="@+id/autofill_domain"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:textColor="?attr/colorOnPrimary"
+ android:textColor="@color/md_on_primary"
android:textSize="16sp"
android:textStyle="bold"
android:maxLines="1"
@@ -45,7 +45,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
- android:textColor="?attr/colorPrimaryContainer"
+ android:textColor="@color/md_primary_container"
android:textSize="14sp"
android:maxLines="1"
android:ellipsize="end" />