From 861671a6c0ba8ee729f119b293fc3e38432c4edc Mon Sep 17 00:00:00 2001 From: Kavimal Wijewardana Date: Fri, 9 May 2025 12:27:16 -0400 Subject: [PATCH 1/7] Move the application configuration to gradle.properties file --- .gitignore | 1 + gradle.properties | 7 ++++++- ui-app/build.gradle.kts | 13 +++++++++---- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 050d011..bdd7259 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ .externalNativeBuild .cxx local.properties +*/release diff --git a/gradle.properties b/gradle.properties index 20e2a01..657eb95 100644 --- a/gradle.properties +++ b/gradle.properties @@ -20,4 +20,9 @@ kotlin.code.style=official # Enables namespacing of each library's R class so that its R class includes only the # resources declared in the library itself and none from the library's dependencies, # thereby reducing the size of the R class for that library -android.nonTransitiveRClass=true \ No newline at end of file +android.nonTransitiveRClass=true + +# App Properties +appVersionCode = 20250502 +appVersionName = 2025.1.0 +kvColorPaletteApplicationId = com.kavi.droid.color.palette.app \ No newline at end of file diff --git a/ui-app/build.gradle.kts b/ui-app/build.gradle.kts index 4953bf3..6d5cf36 100644 --- a/ui-app/build.gradle.kts +++ b/ui-app/build.gradle.kts @@ -5,16 +5,21 @@ plugins { alias(libs.plugins.kotlin.serialization) } +// App Properties +val appVersionCode: String by project +val appVersionName: String by project +val kvColorPaletteApplicationId: String by project + android { - namespace = "com.kavi.droid.color.palette.app" + namespace = kvColorPaletteApplicationId compileSdk = libs.versions.compilerSdkVersion.get().toInt() defaultConfig { - applicationId = "com.kavi.droid.color.palette.app" + applicationId = kvColorPaletteApplicationId minSdk = libs.versions.minSdkVersion.get().toInt() targetSdk = libs.versions.targetSdkVersion.get().toInt() - versionCode = 1 - versionName = "1.0" + versionCode = appVersionCode.toInt() + versionName = appVersionName testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } From bca3fcb7378018d374bdeaa0f98c1d3635c7ec7b Mon Sep 17 00:00:00 2001 From: Kavimal Wijewardana Date: Fri, 9 May 2025 12:33:21 -0400 Subject: [PATCH 2/7] Create basic html for documentation --- docs/index.html | 20 +++++ docs/static/css/styles.css | 161 +++++++++++++++++++++++++++++++++++++ docs/static/favicon.ico | Bin 0 -> 4279 bytes 3 files changed, 181 insertions(+) create mode 100644 docs/index.html create mode 100644 docs/static/css/styles.css create mode 100644 docs/static/favicon.ico diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..b3f1bb4 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,20 @@ + + + + + + + Home + + +
+

KvColorPalette-Android Mobile

+
+

App Version: 2025.1.0

+
+
+ + + \ No newline at end of file diff --git a/docs/static/css/styles.css b/docs/static/css/styles.css new file mode 100644 index 0000000..b41e020 --- /dev/null +++ b/docs/static/css/styles.css @@ -0,0 +1,161 @@ +body { + font-family: 'Verdana', sans-serif; + margin: 0; + padding: 1em; +} + +h1 { + text-align: center; + color: #2196F3; + margin: 0px 0px 30px 0px; +} + +h2 { + text-align: start; + color: #2196F3; + margin: 10px 30px; +} + +p { + margin: 20px 30px; + text-align: justify; + text-justify: distribute-all-lines; +} + +ul { + margin: 20px 30px 20px 20px; +} + +.container { + display: grid; + grid-template-columns: 2fr 1fr; +} + +.content { + grid-column: 1 / 2; + padding: 40px 20px 40px 20px; + border-width: 1px; /* width of the border */ + border-style: solid; /* style of the border */ + border-color: #2196F3; + border-radius: 10px; /* round the border with 10px radius */ +} + +.content-center { + display: flex; + align-items: center; /* Vertically center the content */ + justify-content: center; /* Horizontally center the content (optional) */ +} + +.content-end { + grid-column: 2 / 3; + padding: 0px 0px 0px 20px; +} + +.menu { + grid-column: 2 / 3; +} + +.grid-container { + display: grid; + margin: 20px 30px; + grid-template-columns: repeat(3, 1fr); + grid-auto-rows: minmax(100px, auto); + justify-content: space-evenly; + justify-items: center; + align-content: space-evenly; + align-items: center; +} + +.img-background { + padding: 20px; + background-color: #2196F3; + border-radius: 20px; +} + +.caption-text { + color: #2196F3; + text-align: justify; + text-justify: distribute-all-lines; +} + +nav { + background-color: #f5f5f5; /* background color of the nav container */ + padding: 15px; /* padding around the container */ + margin: 0px 20px; +} + +nav ul { + list-style: none; /* remove bullet points from list items */ + margin: 0; /* remove margins from the list */ + padding: 0; /* remove padding from the list */ + text-align: start; /* center the list items */ +} + +nav a { + color: #333; /* text color of the links */ + text-decoration: none; /* remove underline from the links */ + font-size: 18px; /* font size of the links */ +} + +nav a:hover { + color: #0099cc; /* change the text color on hover */ +} + +.footer-content { + padding: 10px 0px 10px 0px; +} + +.footer-para { + text-align: center; +} + +/* Style inputs with type="text", select elements and textareas */ +input[type=text], select, textarea { + width: 100%; /* Full width */ + padding: 12px; /* Some padding */ + border: 1px solid #ccc; /* Gray border */ + border-radius: 4px; /* Rounded borders */ + box-sizing: border-box; /* Make sure that padding and width stays in place */ + margin-top: 6px; /* Add a top margin */ + margin-bottom: 16px; /* Bottom margin */ + resize: vertical /* Allow the user to vertically resize the textarea (not horizontally) */ +} + +/* Style the submit button with a specific background color etc */ +input[type=submit] { + background-color: #2196F3; + color: white; + padding: 12px 20px; + border: none; + border-radius: 4px; + cursor: pointer; +} + +/* When moving the mouse over the submit button, add a darker green color */ +input[type=submit]:hover { + background-color: #45a049; +} + +.contact-info { + display: flex; + flex-direction: column; + gap: 20px; +} + +.info-item { + display: flex; + align-items: center; +} + +.icon { + font-size: 32px; + margin-right: 20px; +} + +.info-item span { + font-size: 24px; +} + +.info-item strong { + font-weight: bold; +} diff --git a/docs/static/favicon.ico b/docs/static/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c1b9298aa77e150df8ffe6ab22b283144d4128b1 GIT binary patch literal 4279 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 Tf`jMg69J%=v=mF^Enoi+0!YPT literal 0 HcmV?d00001 From 5431fbd83238e5dfa4b2d2f5d6802d7a2301c4f7 Mon Sep 17 00:00:00 2001 From: Kavimal Wijewardana Date: Fri, 9 May 2025 21:50:02 -0400 Subject: [PATCH 3/7] Create privacy-policy.html page --- docs/index.html | 10 +++ docs/privacy-policy.html | 148 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 158 insertions(+) create mode 100644 docs/privacy-policy.html diff --git a/docs/index.html b/docs/index.html index b3f1bb4..607c7b0 100644 --- a/docs/index.html +++ b/docs/index.html @@ -6,12 +6,22 @@ Home +

KvColorPalette-Android Mobile

App Version: 2025.1.0

+
+ +