Merge branch 'master' into weblate-fossify-clock

This commit is contained in:
Naveen Singh
2024-03-24 04:36:03 +05:30
committed by GitHub
485 changed files with 882 additions and 1190 deletions

View File

@@ -1,30 +1,42 @@
# Simple Clock
<img alt="Logo" src="graphics/icon.png" width="120" />
# Fossify Clock
<img alt="Logo" src="graphics/icon.webp" width="120" />
This clock app has multiple functions related to timing. It can be used as a clock widget or as a alarm clock. It is made to help you regulate your daily life and sleep better. You can also use the stopwatch in this app to count your time when you are running for healthy lifestyle or for any other purpose. This app can also be placed on your home screen for easy navigation.
Introducing Fossify Clock the ultimate timekeeping companion designed to enhance your daily routines and promote better sleep habits. With a multitude of functions tailored to your needs, Fossify Clock seamlessly integrates into your life, offering unparalleled convenience and versatility.
As a clock widget you can enable displaying times from other time zones, or use the simple, but customizable and resizable clock widget. The text color of the clock widget can be customized, as well as the color and the alpha of the background. You can also change the shape of clock widget according to your choice and show it on the home screen.
**⌚ MULTIFUNCTIONAL TIMEKEEPING:**
Experience the power of versatile time management with Fossify Clock. From serving as a clock widget to functioning as an alarm clock and stopwatch, this app is your go-to tool for regulating your daily activities and improving your overall lifestyle.
The alarm contains all the expected features as day selecting, vibration toggling, ringtone selecting, snooze or adding a custom label. Waking up will be a pleasure. It supports as many alarms as you want, so there won't be any more excuses for not waking up and sleep better :) Gradual volume increasing is supported too, enabled by default. A customizable Snooze button is available too, just in case you really had a good reason for using it. The alarm clock provided by this app as simple as it can get. You simply have to add how many times you want and turn them on. During this, you can also take help from a guide built in this alarm clock app to help you navigate through this app to sleep better. You can sleep better so this app can wake you up on the set time without disturbing your lifestyle. This alarm can be placed on the home screen to make it easy for you to access the alarm while you can work on other things on your device. The main goal of keeping the alarm in this clock widget is to help you schedule your time more effectively.
**⏰ FEATURE-RICH ALARM:**
Wake up refreshed with Fossify Clock's comprehensive alarm features. Set multiple alarms with options like day selection, vibration toggle, custom labels and ringtone customization. Enjoy gradual volume increase and a customizable snooze button for a pleasant waking experience. With a user-friendly interface, setting up alarms has never been easier.
With the stopwatch you can easily measure a longer period of time, or individual laps. You can sort the laps in a few different ways. It contains optional vibrations on button presses too, just to let you know that the button was pressed in case you cannot look at the device for some reason, or you are in a hurry. This stopwatch can help you getting in shape if you are doing yoga or having a run in the park. You can put the stopwatch on home screen so that you can easily access it and alter it according to your needs without opening the menu and finding it.
**⏱️ CONVENIENT STOPWATCH:**
Track your activities with precision using Fossify Clock's stopwatch function. Measure longer periods or individual laps effortlessly. You can also sort your laps in ascending or descending order.
You can easily setup a timer to be notified of some events. You can both change its ringtone, or toggle vibrations. You will never burn that pizza again. The timer countdown can be paused too, not just stopped.
**⏳ PRECISE TIMER FUNCTIONALITY:**
Stay on top of your tasks with Fossify Clock's versatile timer feature. Customize ringtone preferences, toggle vibrations, and pause countdowns to suit your needs. Whether you're timing cooking intervals, managing study sessions, or ensuring timely breaks, Fossify Clock has you covered with precision and ease.
Additional features include for example preventing the device from falling asleep while the app is in foreground or toggling between 12 or 24 hour time format. Last but not least you can decide if the week should start on Sunday, or Monday.
**🌈 CLOCK WIDGET WITH CUSTOMIZABLE FEATURES:**
Transform your home screen with Fossify Clock's customizable clock widget. Adjust text color, background color, and transparency. Choose between analog or digital clock to suit your style and easily access essential time information at a glance.
It comes with material design and dark theme by default, provides great user experience for easy usage. The lack of internet access gives you more privacy, security and stability than other apps. The dark theme in this clock widget can help you setting your alarm clock at night without blinding your eyes with sharp color of your mobile alarm.
**🎨 CUSTOMIZABLE INTERFACE AND THEMES:**
Enjoy a personalized experience with Fossify Clock's material design and dark theme options. Tailor the app to your preferences with customizable colors and themes, enhancing usability and reducing eye strain, especially in low-light environments.
It comes with material design and dark theme by default, provides great user experience for easy usage. The lack of internet access gives you more privacy, security and stability than other apps.
**🔒 PRIVACY-FIRST APPROACH:**
Rest assured knowing your privacy is protected with Fossify Clock's offline operation. Experience maximum privacy, security, and stability without sacrificing functionality or convenience.
Contains no ads or unnecessary permissions. It is fully opensource, provides customizable colors.
**🌐 AD-FREE & OPEN-SOURCE:**
Say goodbye to intrusive ads and unnecessary permissions. Fossify Clock is ad-free, fully open-source, and grants you complete control over your timekeeping experience.
Check out the full suite of apps here:
https://github.com/FossifyOrg
Upgrade your time management skills, optimize your routines, and prioritize better sleep with Fossify Clock. Download now and take control of your time like never before.
<div style="display:flex;">
<img alt="App image" src="fastlane/metadata/android/en-US/images/phoneScreenshots/1_en-US.jpeg" width="30%">
<img alt="App image" src="fastlane/metadata/android/en-US/images/phoneScreenshots/2_en-US.jpeg" width="30%">
<img alt="App image" src="fastlane/metadata/android/en-US/images/phoneScreenshots/3_en-US.jpeg" width="30%">
➡️ Explore more Fossify apps: https://www.fossify.org<br>
➡️ Open-Source Code: https://www.github.com/FossifyOrg<br>
➡️ Join the community on Reddit: https://www.reddit.com/r/Fossify<br>
➡️ Connect on Telegram: https://t.me/Fossify
<div align="center">
<img alt="App image" src="fastlane/metadata/android/en-US/images/phoneScreenshots/1_en-US.png" width="30%">
<img alt="App image" src="fastlane/metadata/android/en-US/images/phoneScreenshots/2_en-US.png" width="30%">
<img alt="App image" src="fastlane/metadata/android/en-US/images/phoneScreenshots/3_en-US.png" width="30%">
</div>

View File

@@ -1,3 +1,4 @@
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.archivesName
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import org.jetbrains.kotlin.konan.properties.Properties
import java.io.FileInputStream
@@ -6,7 +7,6 @@ plugins {
alias(libs.plugins.android)
alias(libs.plugins.kotlinAndroid)
alias(libs.plugins.ksp)
base
}
val keystorePropertiesFile: File = rootProject.file("keystore.properties")
@@ -15,10 +15,6 @@ if (keystorePropertiesFile.exists()) {
keystoreProperties.load(FileInputStream(keystorePropertiesFile))
}
base {
archivesName.set("clock")
}
android {
compileSdk = project.libs.versions.app.build.compileSDKVersion.get().toInt()
@@ -28,6 +24,7 @@ android {
targetSdk = project.libs.versions.app.build.targetSDK.get().toInt()
versionName = project.libs.versions.app.version.versionName.get()
versionCode = project.libs.versions.app.version.versionCode.get().toInt()
archivesName.set("clock-$versionCode")
ksp {
arg("room.schemaLocation", "$projectDir/schemas")
}
@@ -68,7 +65,7 @@ android {
flavorDimensions.add("variants")
productFlavors {
register("core")
register("fdroid")
register("foss")
register("prepaid")
}
@@ -77,11 +74,15 @@ android {
}
compileOptions {
val currentJavaVersionFromLibs = JavaVersion.valueOf(libs.versions.app.build.javaVersion.get().toString())
val currentJavaVersionFromLibs = JavaVersion.valueOf(libs.versions.app.build.javaVersion.get())
sourceCompatibility = currentJavaVersionFromLibs
targetCompatibility = currentJavaVersionFromLibs
}
dependenciesInfo {
includeInApk = false
}
tasks.withType<KotlinCompile> {
kotlinOptions.jvmTarget = project.libs.versions.app.build.kotlinJVMTarget.get()
}
@@ -95,7 +96,7 @@ android {
}
dependencies {
implementation(libs.simple.tools.commons)
implementation(libs.fossify.commons)
implementation(libs.bundles.lifecycle)
implementation(libs.androidx.constraintlayout)

View File

@@ -1,82 +0,0 @@
{
"formatVersion": 1,
"database": {
"version": 1,
"identityHash": "d1a9a1d39e0899af980c9ddc7632dd8f",
"entities": [
{
"tableName": "timers",
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `seconds` INTEGER NOT NULL, `state` TEXT NOT NULL, `vibrate` INTEGER NOT NULL, `soundUri` TEXT NOT NULL, `soundTitle` TEXT NOT NULL, `label` TEXT NOT NULL, `createdAt` INTEGER NOT NULL, `channelId` TEXT)",
"fields": [
{
"fieldPath": "id",
"columnName": "id",
"affinity": "INTEGER",
"notNull": false
},
{
"fieldPath": "seconds",
"columnName": "seconds",
"affinity": "INTEGER",
"notNull": true
},
{
"fieldPath": "state",
"columnName": "state",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "vibrate",
"columnName": "vibrate",
"affinity": "INTEGER",
"notNull": true
},
{
"fieldPath": "soundUri",
"columnName": "soundUri",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "soundTitle",
"columnName": "soundTitle",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "label",
"columnName": "label",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "createdAt",
"columnName": "createdAt",
"affinity": "INTEGER",
"notNull": true
},
{
"fieldPath": "channelId",
"columnName": "channelId",
"affinity": "TEXT",
"notNull": false
}
],
"primaryKey": {
"autoGenerate": true,
"columnNames": [
"id"
]
},
"indices": [],
"foreignKeys": []
}
],
"views": [],
"setupQueries": [
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, 'd1a9a1d39e0899af980c9ddc7632dd8f')"
]
}
}

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_launcher_name">Clock_debug</string>
<string name="app_launcher_name" translatable="false">Clock_debug</string>
</resources>

View File

@@ -41,7 +41,7 @@
android:theme="@style/SplashTheme">
<intent-filter>
<action android:name="com.simplemobiletools.clock.TOGGLE_STOPWATCH" />
<action android:name="org.fossify.clock.TOGGLE_STOPWATCH" />
<action android:name="android.intent.action.SHOW_ALARMS" />
<action android:name="android.intent.action.SHOW_TIMERS" />
<action android:name="android.intent.action.SET_ALARM" />
@@ -102,14 +102,14 @@
</activity>
<activity
android:name="com.simplemobiletools.commons.activities.AboutActivity"
android:name="org.fossify.commons.activities.AboutActivity"
android:configChanges="orientation"
android:exported="false"
android:label="@string/about"
android:parentActivityName=".activities.MainActivity" />
<activity
android:name="com.simplemobiletools.commons.activities.CustomizationActivity"
android:name="org.fossify.commons.activities.CustomizationActivity"
android:configChanges="orientation"
android:exported="false"
android:label="@string/customize_colors"
@@ -348,10 +348,10 @@
<activity-alias
android:name=".activities.SplashActivity.Green"
android:enabled="false"
android:enabled="true"
android:exported="true"
android:icon="@mipmap/ic_launcher_green"
android:roundIcon="@mipmap/ic_launcher_green"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher"
android:targetActivity=".activities.SplashActivity">
<intent-filter>
@@ -418,10 +418,10 @@
<activity-alias
android:name=".activities.SplashActivity.Orange"
android:enabled="true"
android:enabled="false"
android:exported="true"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher"
android:icon="@mipmap/ic_launcher_orange"
android:roundIcon="@mipmap/ic_launcher_orange"
android:targetActivity=".activities.SplashActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -1,19 +0,0 @@
package com.simplemobiletools.clock.services
import android.app.IntentService
import android.content.Intent
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.extensions.dbHelper
import com.simplemobiletools.clock.extensions.hideNotification
import com.simplemobiletools.clock.extensions.setupAlarmClock
import com.simplemobiletools.clock.helpers.ALARM_ID
import com.simplemobiletools.commons.helpers.MINUTE_SECONDS
class SnoozeService : IntentService("Snooze") {
override fun onHandleIntent(intent: Intent?) {
val id = intent!!.getIntExtra(ALARM_ID, -1)
val alarm = dbHelper.getAlarmWithId(id) ?: return
hideNotification(id)
setupAlarmClock(alarm, config.snoozeTime * MINUTE_SECONDS)
}
}

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock
package org.fossify.clock
import android.app.Application
import android.app.NotificationManager
@@ -11,17 +11,17 @@ import androidx.lifecycle.LifecycleObserver
import androidx.lifecycle.OnLifecycleEvent
import androidx.lifecycle.ProcessLifecycleOwner
import com.facebook.stetho.Stetho
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.Stopwatch
import com.simplemobiletools.clock.helpers.Stopwatch.State
import com.simplemobiletools.clock.models.TimerEvent
import com.simplemobiletools.clock.models.TimerState
import com.simplemobiletools.clock.services.StopwatchStopService
import com.simplemobiletools.clock.services.TimerStopService
import com.simplemobiletools.clock.services.startStopwatchService
import com.simplemobiletools.clock.services.startTimerService
import com.simplemobiletools.commons.extensions.checkUseEnglish
import com.simplemobiletools.commons.extensions.showErrorToast
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.Stopwatch
import org.fossify.clock.helpers.Stopwatch.State
import org.fossify.clock.models.TimerEvent
import org.fossify.clock.models.TimerState
import org.fossify.clock.services.StopwatchStopService
import org.fossify.clock.services.TimerStopService
import org.fossify.clock.services.startStopwatchService
import org.fossify.clock.services.startTimerService
import org.fossify.commons.extensions.checkUseEnglish
import org.fossify.commons.extensions.showErrorToast
import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.activities
package org.fossify.clock.activities
import android.annotation.SuppressLint
import android.app.AlarmManager
@@ -8,20 +8,20 @@ import android.media.RingtoneManager
import android.net.Uri
import android.os.Bundle
import android.provider.AlarmClock
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.dialogs.EditAlarmDialog
import com.simplemobiletools.clock.dialogs.EditTimerDialog
import com.simplemobiletools.clock.dialogs.SelectAlarmDialog
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.*
import com.simplemobiletools.clock.models.*
import com.simplemobiletools.commons.dialogs.PermissionRequiredDialog
import com.simplemobiletools.commons.extensions.getDefaultAlarmSound
import com.simplemobiletools.commons.extensions.getFilenameFromUri
import com.simplemobiletools.commons.extensions.openNotificationSettings
import com.simplemobiletools.commons.helpers.SILENT
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.models.AlarmSound
import org.fossify.clock.R
import org.fossify.clock.dialogs.EditAlarmDialog
import org.fossify.clock.dialogs.EditTimerDialog
import org.fossify.clock.dialogs.SelectAlarmDialog
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.*
import org.fossify.clock.models.*
import org.fossify.commons.dialogs.PermissionRequiredDialog
import org.fossify.commons.extensions.getDefaultAlarmSound
import org.fossify.commons.extensions.getFilenameFromUri
import org.fossify.commons.extensions.openNotificationSettings
import org.fossify.commons.helpers.SILENT
import org.fossify.commons.helpers.ensureBackgroundThread
import org.fossify.commons.models.AlarmSound
import org.greenrobot.eventbus.EventBus
import java.util.concurrent.TimeUnit
@@ -78,13 +78,13 @@ class IntentHandlerActivity : SimpleActivity() {
}
val soundToUse = ringtone?.let {
if (it == AlarmClock.VALUE_RINGTONE_SILENT) {
AlarmSound(0, getString(com.simplemobiletools.commons.R.string.no_sound), SILENT)
AlarmSound(0, getString(org.fossify.commons.R.string.no_sound), SILENT)
} else {
try {
val uri = Uri.parse(it)
var filename = getFilenameFromUri(uri)
if (filename.isEmpty()) {
filename = getString(com.simplemobiletools.commons.R.string.alarm)
filename = getString(org.fossify.commons.R.string.alarm)
}
AlarmSound(0, filename, it)
} catch (e: Exception) {
@@ -188,7 +188,8 @@ class IntentHandlerActivity : SimpleActivity() {
// We don't want to accidentally edit existing timer, so allow reuse only when skipping UI
if (existingTimer != null
&& skipUi
&& (existingTimer.state is TimerState.Idle || (existingTimer.state is TimerState.Finished && !existingTimer.oneShot))) {
&& (existingTimer.state is TimerState.Idle || (existingTimer.state is TimerState.Finished && !existingTimer.oneShot))
) {
startTimer(existingTimer)
} else {
createAndStartNewTimer()
@@ -358,7 +359,7 @@ class IntentHandlerActivity : SimpleActivity() {
} else {
PermissionRequiredDialog(
this,
com.simplemobiletools.commons.R.string.allow_notifications_reminders,
org.fossify.commons.R.string.allow_notifications_reminders,
positiveActionCallback = {
openNotificationSettings()
timerHelper.insertOrUpdateTimer(newTimer) {

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.activities
package org.fossify.clock.activities
import android.annotation.SuppressLint
import android.content.Intent
@@ -8,17 +8,20 @@ import android.graphics.drawable.Icon
import android.graphics.drawable.LayerDrawable
import android.os.Bundle
import android.view.WindowManager
import com.simplemobiletools.clock.BuildConfig
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.adapters.ViewPagerAdapter
import com.simplemobiletools.clock.databinding.ActivityMainBinding
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.*
import com.simplemobiletools.commons.databinding.BottomTablayoutItemBinding
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.*
import com.simplemobiletools.commons.models.FAQItem
import me.grantland.widget.AutofitHelper
import org.fossify.clock.BuildConfig
import org.fossify.clock.R
import org.fossify.clock.adapters.ViewPagerAdapter
import org.fossify.clock.databinding.ActivityMainBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.extensions.getEnabledAlarms
import org.fossify.clock.extensions.rescheduleEnabledAlarms
import org.fossify.clock.extensions.updateWidgets
import org.fossify.clock.helpers.*
import org.fossify.commons.databinding.BottomTablayoutItemBinding
import org.fossify.commons.extensions.*
import org.fossify.commons.helpers.*
import org.fossify.commons.models.FAQItem
class MainActivity : SimpleActivity() {
private var storedTextColor = 0
@@ -139,7 +142,7 @@ class MainActivity : SimpleActivity() {
private fun refreshMenuItems() {
binding.mainToolbar.menu.apply {
findItem(R.id.sort).isVisible = binding.viewPager.currentItem == TAB_ALARM
findItem(R.id.more_apps_from_us).isVisible = !resources.getBoolean(com.simplemobiletools.commons.R.bool.hide_google_relations)
findItem(R.id.more_apps_from_us).isVisible = !resources.getBoolean(org.fossify.commons.R.bool.hide_google_relations)
}
}
@@ -214,15 +217,15 @@ class MainActivity : SimpleActivity() {
private fun setupTabs() {
binding.mainTabsHolder.removeAllTabs()
val tabDrawables = arrayOf(
com.simplemobiletools.commons.R.drawable.ic_clock_vector,
org.fossify.commons.R.drawable.ic_clock_vector,
R.drawable.ic_alarm_vector,
R.drawable.ic_stopwatch_vector,
R.drawable.ic_hourglass_vector
)
val tabLabels = arrayOf(R.string.clock, com.simplemobiletools.commons.R.string.alarm, R.string.stopwatch, R.string.timer)
val tabLabels = arrayOf(R.string.clock, org.fossify.commons.R.string.alarm, R.string.stopwatch, R.string.timer)
tabDrawables.forEachIndexed { i, drawableId ->
binding.mainTabsHolder.newTab().setCustomView(com.simplemobiletools.commons.R.layout.bottom_tablayout_item).apply tab@{
binding.mainTabsHolder.newTab().setCustomView(org.fossify.commons.R.layout.bottom_tablayout_item).apply tab@{
customView?.let { BottomTablayoutItemBinding.bind(it) }?.apply {
tabItemIcon.setImageDrawable(getDrawable(drawableId))
tabItemLabel.setText(tabLabels[i])
@@ -261,14 +264,14 @@ class MainActivity : SimpleActivity() {
private fun getInactiveTabIndexes(activeIndex: Int) = arrayListOf(0, 1, 2, 3).filter { it != activeIndex }
private fun getSelectedTabDrawableIds() = arrayOf(
com.simplemobiletools.commons.R.drawable.ic_clock_filled_vector,
org.fossify.commons.R.drawable.ic_clock_filled_vector,
R.drawable.ic_alarm_filled_vector,
R.drawable.ic_stopwatch_filled_vector,
R.drawable.ic_hourglass_filled_vector
)
private fun getDeselectedTabDrawableIds() = arrayOf(
com.simplemobiletools.commons.R.drawable.ic_clock_vector,
org.fossify.commons.R.drawable.ic_clock_vector,
R.drawable.ic_alarm_vector,
R.drawable.ic_stopwatch_vector,
R.drawable.ic_hourglass_vector
@@ -283,14 +286,14 @@ class MainActivity : SimpleActivity() {
val faqItems = arrayListOf(
FAQItem(R.string.faq_1_title, R.string.faq_1_text),
FAQItem(com.simplemobiletools.commons.R.string.faq_1_title_commons, com.simplemobiletools.commons.R.string.faq_1_text_commons),
FAQItem(com.simplemobiletools.commons.R.string.faq_4_title_commons, com.simplemobiletools.commons.R.string.faq_4_text_commons),
FAQItem(com.simplemobiletools.commons.R.string.faq_9_title_commons, com.simplemobiletools.commons.R.string.faq_9_text_commons)
FAQItem(org.fossify.commons.R.string.faq_1_title_commons, org.fossify.commons.R.string.faq_1_text_commons),
FAQItem(org.fossify.commons.R.string.faq_4_title_commons, org.fossify.commons.R.string.faq_4_text_commons),
FAQItem(org.fossify.commons.R.string.faq_9_title_commons, org.fossify.commons.R.string.faq_9_text_commons)
)
if (!resources.getBoolean(com.simplemobiletools.commons.R.bool.hide_google_relations)) {
faqItems.add(FAQItem(com.simplemobiletools.commons.R.string.faq_2_title_commons, com.simplemobiletools.commons.R.string.faq_2_text_commons))
faqItems.add(FAQItem(com.simplemobiletools.commons.R.string.faq_6_title_commons, com.simplemobiletools.commons.R.string.faq_6_text_commons))
if (!resources.getBoolean(org.fossify.commons.R.bool.hide_google_relations)) {
faqItems.add(FAQItem(org.fossify.commons.R.string.faq_2_title_commons, org.fossify.commons.R.string.faq_2_text_commons))
faqItems.add(FAQItem(org.fossify.commons.R.string.faq_6_title_commons, org.fossify.commons.R.string.faq_6_text_commons))
}
startAboutActivity(R.string.app_name, licenses, BuildConfig.VERSION_NAME, faqItems, true)

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.activities
package org.fossify.clock.activities
import android.annotation.SuppressLint
import android.content.Context
@@ -11,15 +11,18 @@ import android.provider.AlarmClock
import android.view.MotionEvent
import android.view.WindowManager
import android.view.animation.AnimationUtils
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.databinding.ActivityReminderBinding
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.ALARM_ID
import com.simplemobiletools.clock.helpers.ALARM_NOTIF_ID
import com.simplemobiletools.clock.helpers.getPassedSeconds
import com.simplemobiletools.clock.models.Alarm
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.*
import org.fossify.clock.R
import org.fossify.clock.databinding.ActivityReminderBinding
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.ALARM_ID
import org.fossify.clock.helpers.ALARM_NOTIF_ID
import org.fossify.clock.helpers.getPassedSeconds
import org.fossify.clock.models.Alarm
import org.fossify.commons.extensions.*
import org.fossify.commons.helpers.MINUTE_SECONDS
import org.fossify.commons.helpers.SILENT
import org.fossify.commons.helpers.isOreoMr1Plus
import org.fossify.commons.helpers.isOreoPlus
class ReminderActivity : SimpleActivity() {
companion object {
@@ -59,7 +62,7 @@ class ReminderActivity : SimpleActivity() {
val label = if (isAlarmReminder) {
if (alarm!!.label.isEmpty()) {
getString(com.simplemobiletools.commons.R.string.alarm)
getString(org.fossify.commons.R.string.alarm)
} else {
alarm!!.label
}

View File

@@ -1,16 +1,16 @@
package com.simplemobiletools.clock.activities
package org.fossify.clock.activities
import android.content.Intent
import android.os.Bundle
import com.simplemobiletools.clock.databinding.ActivitySettingsBinding
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.helpers.DEFAULT_MAX_ALARM_REMINDER_SECS
import com.simplemobiletools.clock.helpers.DEFAULT_MAX_TIMER_REMINDER_SECS
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.IS_CUSTOMIZING_COLORS
import com.simplemobiletools.commons.helpers.MINUTE_SECONDS
import com.simplemobiletools.commons.helpers.NavigationIcon
import com.simplemobiletools.commons.helpers.isTiramisuPlus
import org.fossify.clock.databinding.ActivitySettingsBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.helpers.DEFAULT_MAX_ALARM_REMINDER_SECS
import org.fossify.clock.helpers.DEFAULT_MAX_TIMER_REMINDER_SECS
import org.fossify.commons.extensions.*
import org.fossify.commons.helpers.IS_CUSTOMIZING_COLORS
import org.fossify.commons.helpers.MINUTE_SECONDS
import org.fossify.commons.helpers.NavigationIcon
import org.fossify.commons.helpers.isTiramisuPlus
import java.util.Locale
import kotlin.system.exitProcess

View File

@@ -1,7 +1,7 @@
package com.simplemobiletools.clock.activities
package org.fossify.clock.activities
import com.simplemobiletools.clock.R
import com.simplemobiletools.commons.activities.BaseSimpleActivity
import org.fossify.clock.R
import org.fossify.commons.activities.BaseSimpleActivity
open class SimpleActivity : BaseSimpleActivity() {
override fun getAppIconIDs() = arrayListOf(
@@ -14,12 +14,12 @@ open class SimpleActivity : BaseSimpleActivity() {
R.mipmap.ic_launcher_light_blue,
R.mipmap.ic_launcher_cyan,
R.mipmap.ic_launcher_teal,
R.mipmap.ic_launcher_green,
R.mipmap.ic_launcher,
R.mipmap.ic_launcher_light_green,
R.mipmap.ic_launcher_lime,
R.mipmap.ic_launcher_yellow,
R.mipmap.ic_launcher_amber,
R.mipmap.ic_launcher,
R.mipmap.ic_launcher_orange,
R.mipmap.ic_launcher_deep_orange,
R.mipmap.ic_launcher_brown,
R.mipmap.ic_launcher_blue_grey,

View File

@@ -1,14 +1,14 @@
package com.simplemobiletools.clock.activities
package org.fossify.clock.activities
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.extensions.dbHelper
import com.simplemobiletools.clock.extensions.hideNotification
import com.simplemobiletools.clock.extensions.setupAlarmClock
import com.simplemobiletools.clock.helpers.ALARM_ID
import com.simplemobiletools.commons.extensions.showPickSecondsDialog
import com.simplemobiletools.commons.helpers.MINUTE_SECONDS
import org.fossify.clock.extensions.config
import org.fossify.clock.extensions.dbHelper
import org.fossify.clock.extensions.hideNotification
import org.fossify.clock.extensions.setupAlarmClock
import org.fossify.clock.helpers.ALARM_ID
import org.fossify.commons.extensions.showPickSecondsDialog
import org.fossify.commons.helpers.MINUTE_SECONDS
class SnoozeReminderActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {

View File

@@ -1,8 +1,8 @@
package com.simplemobiletools.clock.activities
package org.fossify.clock.activities
import android.content.Intent
import com.simplemobiletools.clock.helpers.*
import com.simplemobiletools.commons.activities.BaseSplashActivity
import org.fossify.clock.helpers.*
import org.fossify.commons.activities.BaseSplashActivity
class SplashActivity : BaseSplashActivity() {
override fun initActivity() {

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.activities
package org.fossify.clock.activities
import android.app.Activity
import android.appwidget.AppWidgetManager
@@ -7,13 +7,13 @@ import android.content.res.ColorStateList
import android.graphics.Color
import android.os.Bundle
import android.widget.SeekBar
import com.simplemobiletools.clock.databinding.WidgetConfigAnalogueBinding
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.helpers.MyAnalogueTimeWidgetProvider
import com.simplemobiletools.commons.dialogs.ColorPickerDialog
import com.simplemobiletools.commons.dialogs.FeatureLockedDialog
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.IS_CUSTOMIZING_COLORS
import org.fossify.clock.databinding.WidgetConfigAnalogueBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.helpers.MyAnalogueTimeWidgetProvider
import org.fossify.commons.dialogs.ColorPickerDialog
import org.fossify.commons.dialogs.FeatureLockedDialog
import org.fossify.commons.extensions.*
import org.fossify.commons.helpers.IS_CUSTOMIZING_COLORS
class WidgetAnalogueConfigureActivity : SimpleActivity() {
private var mBgAlpha = 0f
@@ -62,8 +62,8 @@ class WidgetAnalogueConfigureActivity : SimpleActivity() {
private fun initVariables() {
mBgColor = config.widgetBgColor
if (mBgColor == resources.getColor(com.simplemobiletools.commons.R.color.default_widget_bg_color) && config.isUsingSystemTheme) {
mBgColor = resources.getColor(com.simplemobiletools.commons.R.color.you_primary_color, theme)
if (mBgColor == resources.getColor(org.fossify.commons.R.color.default_widget_bg_color) && config.isUsingSystemTheme) {
mBgColor = resources.getColor(org.fossify.commons.R.color.you_primary_color, theme)
}
mBgAlpha = Color.alpha(mBgColor) / 255.toFloat()

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.activities
package org.fossify.clock.activities
import android.app.Activity
import android.appwidget.AppWidgetManager
@@ -8,14 +8,14 @@ import android.graphics.Color
import android.os.Build
import android.os.Bundle
import android.widget.SeekBar
import com.simplemobiletools.clock.databinding.WidgetConfigDigitalBinding
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.helpers.MyDigitalTimeWidgetProvider
import com.simplemobiletools.clock.helpers.SIMPLE_PHONE
import com.simplemobiletools.commons.dialogs.ColorPickerDialog
import com.simplemobiletools.commons.dialogs.FeatureLockedDialog
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.IS_CUSTOMIZING_COLORS
import org.fossify.clock.databinding.WidgetConfigDigitalBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.helpers.MyDigitalTimeWidgetProvider
import org.fossify.clock.helpers.SIMPLE_PHONE
import org.fossify.commons.dialogs.ColorPickerDialog
import org.fossify.commons.dialogs.FeatureLockedDialog
import org.fossify.commons.extensions.*
import org.fossify.commons.helpers.IS_CUSTOMIZING_COLORS
class WidgetDigitalConfigureActivity : SimpleActivity() {
private var mBgAlpha = 0f
@@ -79,8 +79,8 @@ class WidgetDigitalConfigureActivity : SimpleActivity() {
updateBackgroundColor()
mTextColor = config.widgetTextColor
if (mTextColor == resources.getColor(com.simplemobiletools.commons.R.color.default_widget_text_color) && config.isUsingSystemTheme) {
mTextColor = resources.getColor(com.simplemobiletools.commons.R.color.you_primary_color, theme)
if (mTextColor == resources.getColor(org.fossify.commons.R.color.default_widget_text_color) && config.isUsingSystemTheme) {
mTextColor = resources.getColor(org.fossify.commons.R.color.you_primary_color, theme)
}
updateTextColor()

View File

@@ -1,28 +1,26 @@
package com.simplemobiletools.clock.adapters
package org.fossify.clock.adapters
import android.view.Menu
import android.view.View
import android.view.ViewGroup
import android.widget.RelativeLayout
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.databinding.ItemAlarmBinding
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.TODAY_BIT
import com.simplemobiletools.clock.helpers.TOMORROW_BIT
import com.simplemobiletools.clock.helpers.getCurrentDayMinutes
import com.simplemobiletools.clock.interfaces.ToggleAlarmInterface
import com.simplemobiletools.clock.models.Alarm
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.extensions.beVisibleIf
import com.simplemobiletools.commons.extensions.isVisible
import com.simplemobiletools.commons.extensions.toast
import com.simplemobiletools.commons.views.MyRecyclerView
import org.fossify.clock.R
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.databinding.ItemAlarmBinding
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.TODAY_BIT
import org.fossify.clock.helpers.TOMORROW_BIT
import org.fossify.clock.helpers.getCurrentDayMinutes
import org.fossify.clock.interfaces.ToggleAlarmInterface
import org.fossify.clock.models.Alarm
import org.fossify.commons.adapters.MyRecyclerViewAdapter
import org.fossify.commons.dialogs.ConfirmationDialog
import org.fossify.commons.extensions.beVisibleIf
import org.fossify.commons.extensions.toast
import org.fossify.commons.views.MyRecyclerView
class AlarmsAdapter(
activity: SimpleActivity, var alarms: ArrayList<Alarm>, val toggleAlarmInterface: ToggleAlarmInterface,
recyclerView: MyRecyclerView, itemClick: (Any) -> Unit
recyclerView: MyRecyclerView, itemClick: (Any) -> Unit,
) : MyRecyclerViewAdapter(activity, recyclerView, itemClick) {
init {
@@ -92,7 +90,7 @@ class AlarmsAdapter(
private fun setupView(view: View, alarm: Alarm) {
val isSelected = selectedKeys.contains(alarm.id)
ItemAlarmBinding.bind(view).apply {
alarmFrame.isSelected = isSelected
alarmHolder.isSelected = isSelected
alarmTime.text = activity.getFormattedTime(alarm.timeInMinutes * 60, false, true)
alarmTime.setTextColor(textColor)
@@ -112,8 +110,8 @@ class AlarmsAdapter(
} else {
ConfirmationDialog(
activity,
messageId = com.simplemobiletools.commons.R.string.alarm_warning,
positive = com.simplemobiletools.commons.R.string.ok,
messageId = org.fossify.commons.R.string.alarm_warning,
positive = org.fossify.commons.R.string.ok,
negative = 0
) {
activity.config.wasAlarmWarningShown = true
@@ -123,7 +121,7 @@ class AlarmsAdapter(
} else if (alarm.days == TODAY_BIT) {
if (alarm.timeInMinutes <= getCurrentDayMinutes()) {
alarm.days = TOMORROW_BIT
alarmDays.text = resources.getString(com.simplemobiletools.commons.R.string.tomorrow)
alarmDays.text = resources.getString(org.fossify.commons.R.string.tomorrow)
}
activity.dbHelper.updateAlarm(alarm)
root.context.scheduleNextAlarm(alarm, true)
@@ -137,9 +135,6 @@ class AlarmsAdapter(
toggleAlarmInterface.alarmToggled(alarm.id, alarmSwitch.isChecked)
}
}
val layoutParams = alarmSwitch.layoutParams as RelativeLayout.LayoutParams
layoutParams.addRule(RelativeLayout.ALIGN_BOTTOM, if (alarmLabel.isVisible()) alarmLabel.id else alarmLabel.id)
}
}
}

View File

@@ -1,15 +1,15 @@
package com.simplemobiletools.clock.adapters
package org.fossify.clock.adapters
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.databinding.ItemAddTimeZoneBinding
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.models.MyTimeZone
import com.simplemobiletools.commons.extensions.getProperBackgroundColor
import com.simplemobiletools.commons.extensions.getProperPrimaryColor
import com.simplemobiletools.commons.extensions.getProperTextColor
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.databinding.ItemAddTimeZoneBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.models.MyTimeZone
import org.fossify.commons.extensions.getProperBackgroundColor
import org.fossify.commons.extensions.getProperPrimaryColor
import org.fossify.commons.extensions.getProperTextColor
class SelectTimeZonesAdapter(val activity: SimpleActivity, val timeZones: ArrayList<MyTimeZone>) : RecyclerView.Adapter<SelectTimeZonesAdapter.ViewHolder>() {
private val config = activity.config

View File

@@ -1,18 +1,18 @@
package com.simplemobiletools.clock.adapters
package org.fossify.clock.adapters
import android.view.Menu
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.databinding.ItemLapBinding
import com.simplemobiletools.clock.extensions.formatStopwatchTime
import com.simplemobiletools.clock.helpers.SORT_BY_LAP
import com.simplemobiletools.clock.helpers.SORT_BY_LAP_TIME
import com.simplemobiletools.clock.helpers.SORT_BY_TOTAL_TIME
import com.simplemobiletools.clock.models.Lap
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.views.MyRecyclerView
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.databinding.ItemLapBinding
import org.fossify.clock.extensions.formatStopwatchTime
import org.fossify.clock.helpers.SORT_BY_LAP
import org.fossify.clock.helpers.SORT_BY_LAP_TIME
import org.fossify.clock.helpers.SORT_BY_TOTAL_TIME
import org.fossify.clock.models.Lap
import org.fossify.commons.adapters.MyRecyclerViewAdapter
import org.fossify.commons.views.MyRecyclerView
class StopwatchAdapter(activity: SimpleActivity, var laps: ArrayList<Lap>, recyclerView: MyRecyclerView, itemClick: (Any) -> Unit) :
MyRecyclerViewAdapter(activity, recyclerView, itemClick) {

View File

@@ -1,19 +1,19 @@
package com.simplemobiletools.clock.adapters
package org.fossify.clock.adapters
import android.view.Menu
import android.view.View
import android.view.ViewGroup
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.databinding.ItemTimeZoneBinding
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.extensions.getFormattedDate
import com.simplemobiletools.clock.extensions.getFormattedTime
import com.simplemobiletools.clock.models.MyTimeZone
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.extensions.beGone
import com.simplemobiletools.commons.extensions.beVisible
import com.simplemobiletools.commons.views.MyRecyclerView
import org.fossify.clock.R
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.databinding.ItemTimeZoneBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.extensions.getFormattedDate
import org.fossify.clock.extensions.getFormattedTime
import org.fossify.clock.models.MyTimeZone
import org.fossify.commons.adapters.MyRecyclerViewAdapter
import org.fossify.commons.extensions.beGone
import org.fossify.commons.extensions.beVisible
import org.fossify.commons.views.MyRecyclerView
import java.util.Calendar
import java.util.Date
import java.util.TimeZone

View File

@@ -1,23 +1,23 @@
package com.simplemobiletools.clock.adapters
package org.fossify.clock.adapters
import android.view.Menu
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.DiffUtil
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.databinding.ItemTimerBinding
import com.simplemobiletools.clock.extensions.getFormattedDuration
import com.simplemobiletools.clock.extensions.hideTimerNotification
import com.simplemobiletools.clock.extensions.secondsToMillis
import com.simplemobiletools.clock.models.Timer
import com.simplemobiletools.clock.models.TimerEvent
import com.simplemobiletools.clock.models.TimerState
import com.simplemobiletools.commons.adapters.MyRecyclerViewListAdapter
import com.simplemobiletools.commons.dialogs.PermissionRequiredDialog
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.views.MyRecyclerView
import me.grantland.widget.AutofitHelper
import org.fossify.clock.R
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.databinding.ItemTimerBinding
import org.fossify.clock.extensions.getFormattedDuration
import org.fossify.clock.extensions.hideTimerNotification
import org.fossify.clock.extensions.secondsToMillis
import org.fossify.clock.models.Timer
import org.fossify.clock.models.TimerEvent
import org.fossify.clock.models.TimerState
import org.fossify.commons.adapters.MyRecyclerViewListAdapter
import org.fossify.commons.dialogs.PermissionRequiredDialog
import org.fossify.commons.extensions.*
import org.fossify.commons.views.MyRecyclerView
import org.greenrobot.eventbus.EventBus
class TimerAdapter(
@@ -134,7 +134,7 @@ class TimerAdapter(
} else {
PermissionRequiredDialog(
activity,
com.simplemobiletools.commons.R.string.allow_notifications_reminders,
org.fossify.commons.R.string.allow_notifications_reminders,
{ activity.openNotificationSettings() })
}
}
@@ -144,9 +144,9 @@ class TimerAdapter(
val resetPossible = state is TimerState.Running || state is TimerState.Paused || state is TimerState.Finished
timerReset.beInvisibleIf(!resetPossible)
val drawableId = if (state is TimerState.Running) {
com.simplemobiletools.commons.R.drawable.ic_pause_vector
org.fossify.commons.R.drawable.ic_pause_vector
} else {
com.simplemobiletools.commons.R.drawable.ic_play_vector
org.fossify.commons.R.drawable.ic_play_vector
}
timerPlayPause.setImageDrawable(simpleActivity.resources.getColoredDrawableWithColor(drawableId, textColor))
}

View File

@@ -1,15 +1,15 @@
package com.simplemobiletools.clock.adapters
package org.fossify.clock.adapters
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentStatePagerAdapter
import com.simplemobiletools.clock.fragments.AlarmFragment
import com.simplemobiletools.clock.fragments.ClockFragment
import com.simplemobiletools.clock.fragments.StopwatchFragment
import com.simplemobiletools.clock.fragments.TimerFragment
import com.simplemobiletools.clock.helpers.*
import com.simplemobiletools.commons.models.AlarmSound
import org.fossify.clock.fragments.AlarmFragment
import org.fossify.clock.fragments.ClockFragment
import org.fossify.clock.fragments.StopwatchFragment
import org.fossify.clock.fragments.TimerFragment
import org.fossify.clock.helpers.*
import org.fossify.commons.models.AlarmSound
class ViewPagerAdapter(fm: FragmentManager) : FragmentStatePagerAdapter(fm) {
private val fragments = HashMap<Int, Fragment>()

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.databases
package org.fossify.clock.databases
import android.content.Context
import androidx.room.Database
@@ -7,11 +7,11 @@ import androidx.room.RoomDatabase
import androidx.room.TypeConverters
import androidx.room.migration.Migration
import androidx.sqlite.db.SupportSQLiteDatabase
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.helpers.Converters
import com.simplemobiletools.clock.interfaces.TimerDao
import com.simplemobiletools.clock.models.Timer
import com.simplemobiletools.clock.models.TimerState
import org.fossify.clock.extensions.config
import org.fossify.clock.helpers.Converters
import org.fossify.clock.interfaces.TimerDao
import org.fossify.clock.models.Timer
import org.fossify.clock.models.TimerState
import java.util.concurrent.Executors
@Database(entities = [Timer::class], version = 2)

View File

@@ -1,12 +1,12 @@
package com.simplemobiletools.clock.dialogs
package org.fossify.clock.dialogs
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.adapters.SelectTimeZonesAdapter
import com.simplemobiletools.clock.databinding.DialogSelectTimeZonesBinding
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.helpers.getAllTimeZones
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.adapters.SelectTimeZonesAdapter
import org.fossify.clock.databinding.DialogSelectTimeZonesBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.helpers.getAllTimeZones
import org.fossify.commons.extensions.getAlertDialogBuilder
import org.fossify.commons.extensions.setupDialogStuff
class AddTimeZonesDialog(val activity: SimpleActivity, private val callback: () -> Unit) {
private val binding = DialogSelectTimeZonesBinding.inflate(activity.layoutInflater)
@@ -15,8 +15,8 @@ class AddTimeZonesDialog(val activity: SimpleActivity, private val callback: ()
binding.selectTimeZonesList.adapter = SelectTimeZonesAdapter(activity, getAllTimeZones())
activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok) { dialog, which -> dialogConfirmed() }
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null)
.setPositiveButton(org.fossify.commons.R.string.ok) { dialog, which -> dialogConfirmed() }
.setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply {
activity.setupDialogStuff(binding.root, this)
}

View File

@@ -1,14 +1,14 @@
package com.simplemobiletools.clock.dialogs
package org.fossify.clock.dialogs
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.databinding.DialogChangeAlarmSortBinding
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.helpers.SORT_BY_ALARM_TIME
import com.simplemobiletools.clock.helpers.SORT_BY_CREATION_ORDER
import com.simplemobiletools.clock.helpers.SORT_BY_DATE_AND_TIME
import com.simplemobiletools.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff
import org.fossify.clock.R
import org.fossify.clock.databinding.DialogChangeAlarmSortBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.helpers.SORT_BY_ALARM_TIME
import org.fossify.clock.helpers.SORT_BY_CREATION_ORDER
import org.fossify.clock.helpers.SORT_BY_DATE_AND_TIME
import org.fossify.commons.activities.BaseSimpleActivity
import org.fossify.commons.extensions.getAlertDialogBuilder
import org.fossify.commons.extensions.setupDialogStuff
class ChangeAlarmSortDialog(val activity: BaseSimpleActivity, val callback: () -> Unit) {
private val binding = DialogChangeAlarmSortBinding.inflate(activity.layoutInflater).apply {
@@ -22,10 +22,10 @@ class ChangeAlarmSortDialog(val activity: BaseSimpleActivity, val callback: () -
init {
activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok) { _, _ -> dialogConfirmed() }
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null)
.setPositiveButton(org.fossify.commons.R.string.ok) { _, _ -> dialogConfirmed() }
.setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply {
activity.setupDialogStuff(binding.root, this, com.simplemobiletools.commons.R.string.sort_by)
activity.setupDialogStuff(binding.root, this, org.fossify.commons.R.string.sort_by)
}
}

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.dialogs
package org.fossify.clock.dialogs
import android.app.TimePickerDialog
import android.graphics.drawable.Drawable
@@ -9,19 +9,19 @@ import android.widget.TextView
import androidx.appcompat.app.AlertDialog
import com.google.android.material.timepicker.MaterialTimePicker
import com.google.android.material.timepicker.TimeFormat
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.databinding.DialogEditAlarmBinding
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.PICK_AUDIO_FILE_INTENT_ID
import com.simplemobiletools.clock.helpers.TODAY_BIT
import com.simplemobiletools.clock.helpers.TOMORROW_BIT
import com.simplemobiletools.clock.helpers.getCurrentDayMinutes
import com.simplemobiletools.clock.models.Alarm
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.dialogs.SelectAlarmSoundDialog
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.models.AlarmSound
import org.fossify.clock.R
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.databinding.DialogEditAlarmBinding
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.PICK_AUDIO_FILE_INTENT_ID
import org.fossify.clock.helpers.TODAY_BIT
import org.fossify.clock.helpers.TOMORROW_BIT
import org.fossify.clock.helpers.getCurrentDayMinutes
import org.fossify.clock.models.Alarm
import org.fossify.commons.dialogs.ConfirmationDialog
import org.fossify.commons.dialogs.SelectAlarmSoundDialog
import org.fossify.commons.extensions.*
import org.fossify.commons.models.AlarmSound
class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val onDismiss: () -> Unit = {}, val callback: (alarmId: Int) -> Unit) {
private val binding = DialogEditAlarmBinding.inflate(activity.layoutInflater)
@@ -91,7 +91,7 @@ class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val onDism
editAlarmLabelImage.applyColorFilter(textColor)
editAlarm.setText(alarm.label)
val dayLetters = activity.resources.getStringArray(com.simplemobiletools.commons.R.array.week_day_letters).toList() as ArrayList<String>
val dayLetters = activity.resources.getStringArray(org.fossify.commons.R.array.week_day_letters).toList() as ArrayList<String>
val dayIndexes = arrayListOf(0, 1, 2, 3, 4, 5, 6)
if (activity.config.isSundayFirst) {
dayIndexes.moveLastItemToFront()
@@ -128,16 +128,16 @@ class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val onDism
activity.getAlertDialogBuilder()
.setOnDismissListener { onDismiss() }
.setPositiveButton(com.simplemobiletools.commons.R.string.ok, null)
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null)
.setPositiveButton(org.fossify.commons.R.string.ok, null)
.setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply {
activity.setupDialogStuff(binding.root, this) { alertDialog ->
alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener {
if (!activity.config.wasAlarmWarningShown) {
ConfirmationDialog(
activity,
messageId = com.simplemobiletools.commons.R.string.alarm_warning,
positive = com.simplemobiletools.commons.R.string.ok,
messageId = org.fossify.commons.R.string.alarm_warning,
positive = org.fossify.commons.R.string.ok,
negative = 0
) {
activity.config.wasAlarmWarningShown = true
@@ -165,11 +165,11 @@ class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val onDism
if (alarm.id == 0) {
alarmId = activity.dbHelper.insertAlarm(alarm)
if (alarmId == -1) {
activity.toast(com.simplemobiletools.commons.R.string.unknown_error_occurred)
activity.toast(org.fossify.commons.R.string.unknown_error_occurred)
}
} else {
if (!activity.dbHelper.updateAlarm(alarm)) {
activity.toast(com.simplemobiletools.commons.R.string.unknown_error_occurred)
activity.toast(org.fossify.commons.R.string.unknown_error_occurred)
}
}
@@ -213,9 +213,9 @@ class EditAlarmDialog(val activity: SimpleActivity, val alarm: Alarm, val onDism
private fun checkDaylessAlarm() {
if (alarm.days <= 0) {
val textId = if (alarm.timeInMinutes > getCurrentDayMinutes()) {
com.simplemobiletools.commons.R.string.today
org.fossify.commons.R.string.today
} else {
com.simplemobiletools.commons.R.string.tomorrow
org.fossify.commons.R.string.tomorrow
}
binding.editAlarmDaylessLabel.text = "(${activity.getString(textId)})"

View File

@@ -1,17 +1,17 @@
package com.simplemobiletools.clock.dialogs
package org.fossify.clock.dialogs
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.databinding.DialogEditTimeZoneBinding
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.extensions.getEditedTimeZonesMap
import com.simplemobiletools.clock.extensions.getModifiedTimeZoneTitle
import com.simplemobiletools.clock.helpers.EDITED_TIME_ZONE_SEPARATOR
import com.simplemobiletools.clock.helpers.getDefaultTimeZoneTitle
import com.simplemobiletools.clock.models.MyTimeZone
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.showKeyboard
import com.simplemobiletools.commons.extensions.value
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.databinding.DialogEditTimeZoneBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.extensions.getEditedTimeZonesMap
import org.fossify.clock.extensions.getModifiedTimeZoneTitle
import org.fossify.clock.helpers.EDITED_TIME_ZONE_SEPARATOR
import org.fossify.clock.helpers.getDefaultTimeZoneTitle
import org.fossify.clock.models.MyTimeZone
import org.fossify.commons.extensions.getAlertDialogBuilder
import org.fossify.commons.extensions.setupDialogStuff
import org.fossify.commons.extensions.showKeyboard
import org.fossify.commons.extensions.value
class EditTimeZoneDialog(val activity: SimpleActivity, val myTimeZone: MyTimeZone, val callback: () -> Unit) {
@@ -22,8 +22,8 @@ class EditTimeZoneDialog(val activity: SimpleActivity, val myTimeZone: MyTimeZon
}
activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok) { dialog, which -> dialogConfirmed(binding.editTimeZoneTitle.value) }
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null)
.setPositiveButton(org.fossify.commons.R.string.ok) { dialog, which -> dialogConfirmed(binding.editTimeZoneTitle.value) }
.setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply {
activity.setupDialogStuff(binding.root, this) { alertDialog ->
alertDialog.showKeyboard(binding.editTimeZoneTitle)

View File

@@ -1,16 +1,16 @@
package com.simplemobiletools.clock.dialogs
package org.fossify.clock.dialogs
import android.media.AudioManager
import android.media.RingtoneManager
import androidx.appcompat.app.AlertDialog
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.databinding.DialogEditTimerBinding
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.PICK_AUDIO_FILE_INTENT_ID
import com.simplemobiletools.clock.models.Timer
import com.simplemobiletools.commons.dialogs.SelectAlarmSoundDialog
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.models.AlarmSound
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.databinding.DialogEditTimerBinding
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.PICK_AUDIO_FILE_INTENT_ID
import org.fossify.clock.models.Timer
import org.fossify.commons.dialogs.SelectAlarmSoundDialog
import org.fossify.commons.extensions.*
import org.fossify.commons.models.AlarmSound
class EditTimerDialog(val activity: SimpleActivity, val timer: Timer, val callback: (id: Long) -> Unit) {
private val binding = DialogEditTimerBinding.inflate(activity.layoutInflater)
@@ -62,8 +62,8 @@ class EditTimerDialog(val activity: SimpleActivity, val timer: Timer, val callba
}
activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok, null)
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null)
.setPositiveButton(org.fossify.commons.R.string.ok, null)
.setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply {
activity.setupDialogStuff(binding.root, this) { alertDialog ->
alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener {

View File

@@ -1,10 +1,10 @@
package com.simplemobiletools.clock.dialogs
package org.fossify.clock.dialogs
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.databinding.DialogMyTimePickerBinding
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.getProperTextColor
import com.simplemobiletools.commons.extensions.setupDialogStuff
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.databinding.DialogMyTimePickerBinding
import org.fossify.commons.extensions.getAlertDialogBuilder
import org.fossify.commons.extensions.getProperTextColor
import org.fossify.commons.extensions.setupDialogStuff
class MyTimePickerDialogDialog(val activity: SimpleActivity, val initialSeconds: Int, val callback: (result: Int) -> Unit) {
private val binding = DialogMyTimePickerBinding.inflate(activity.layoutInflater)
@@ -24,8 +24,8 @@ class MyTimePickerDialogDialog(val activity: SimpleActivity, val initialSeconds:
}
activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok) { dialog, which -> dialogConfirmed() }
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null)
.setPositiveButton(org.fossify.commons.R.string.ok) { dialog, which -> dialogConfirmed() }
.setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply {
activity.setupDialogStuff(binding.root, this)
}

View File

@@ -1,19 +1,19 @@
package com.simplemobiletools.clock.dialogs
package org.fossify.clock.dialogs
import android.view.ViewGroup
import android.widget.RadioGroup
import androidx.appcompat.app.AlertDialog
import com.simplemobiletools.clock.databinding.DialogSelectAlarmBinding
import com.simplemobiletools.clock.databinding.ItemRadioButtonBinding
import com.simplemobiletools.clock.models.Alarm
import com.simplemobiletools.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.extensions.*
import org.fossify.clock.databinding.DialogSelectAlarmBinding
import org.fossify.clock.databinding.ItemRadioButtonBinding
import org.fossify.clock.models.Alarm
import org.fossify.commons.activities.BaseSimpleActivity
import org.fossify.commons.extensions.*
class SelectAlarmDialog(
val activity: BaseSimpleActivity,
val alarms: List<Alarm>,
val titleResId: Int,
val onAlarmPicked: (alarm: Alarm?) -> Unit
val onAlarmPicked: (alarm: Alarm?) -> Unit,
) {
private val binding = DialogSelectAlarmBinding.inflate(activity.layoutInflater, null, false)
private var dialog: AlertDialog? = null
@@ -23,8 +23,8 @@ class SelectAlarmDialog(
activity.getAlertDialogBuilder()
.setOnDismissListener { onAlarmPicked(null) }
.setPositiveButton(com.simplemobiletools.commons.R.string.ok) { _, _ -> dialogConfirmed() }
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null)
.setPositiveButton(org.fossify.commons.R.string.ok) { _, _ -> dialogConfirmed() }
.setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply {
activity.setupDialogStuff(binding.root, this, titleResId) { alertDialog ->
dialog = alertDialog

View File

@@ -1,11 +1,11 @@
package com.simplemobiletools.clock.extensions
package org.fossify.clock.extensions
import com.simplemobiletools.clock.BuildConfig
import com.simplemobiletools.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.dialogs.PermissionRequiredDialog
import com.simplemobiletools.commons.extensions.canUseFullScreenIntent
import com.simplemobiletools.commons.extensions.openFullScreenIntentSettings
import com.simplemobiletools.commons.extensions.openNotificationSettings
import org.fossify.clock.BuildConfig
import org.fossify.commons.activities.BaseSimpleActivity
import org.fossify.commons.dialogs.PermissionRequiredDialog
import org.fossify.commons.extensions.canUseFullScreenIntent
import org.fossify.commons.extensions.openFullScreenIntentSettings
import org.fossify.commons.extensions.openNotificationSettings
fun BaseSimpleActivity.handleFullScreenNotificationsPermission(
notificationsCallback: (granted: Boolean) -> Unit,
@@ -17,7 +17,7 @@ fun BaseSimpleActivity.handleFullScreenNotificationsPermission(
} else {
PermissionRequiredDialog(
activity = this,
textId = com.simplemobiletools.commons.R.string.allow_full_screen_notifications_reminders,
textId = org.fossify.commons.R.string.allow_full_screen_notifications_reminders,
positiveActionCallback = {
openFullScreenIntentSettings(BuildConfig.APPLICATION_ID)
},
@@ -29,7 +29,7 @@ fun BaseSimpleActivity.handleFullScreenNotificationsPermission(
} else {
PermissionRequiredDialog(
activity = this,
textId = com.simplemobiletools.commons.R.string.allow_notifications_reminders,
textId = org.fossify.commons.R.string.allow_notifications_reminders,
positiveActionCallback = {
openNotificationSettings()
},

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.extensions
package org.fossify.clock.extensions
import android.app.*
import android.appwidget.AppWidgetManager
@@ -18,21 +18,21 @@ import android.text.style.RelativeSizeSpan
import android.widget.Toast
import androidx.core.app.AlarmManagerCompat
import androidx.core.app.NotificationCompat
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.ReminderActivity
import com.simplemobiletools.clock.activities.SnoozeReminderActivity
import com.simplemobiletools.clock.activities.SplashActivity
import com.simplemobiletools.clock.databases.AppDatabase
import com.simplemobiletools.clock.helpers.*
import com.simplemobiletools.clock.interfaces.TimerDao
import com.simplemobiletools.clock.models.Alarm
import com.simplemobiletools.clock.models.MyTimeZone
import com.simplemobiletools.clock.models.Timer
import com.simplemobiletools.clock.models.TimerState
import com.simplemobiletools.clock.receivers.*
import com.simplemobiletools.clock.services.SnoozeService
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.*
import org.fossify.clock.R
import org.fossify.clock.activities.ReminderActivity
import org.fossify.clock.activities.SnoozeReminderActivity
import org.fossify.clock.activities.SplashActivity
import org.fossify.clock.databases.AppDatabase
import org.fossify.clock.helpers.*
import org.fossify.clock.interfaces.TimerDao
import org.fossify.clock.models.Alarm
import org.fossify.clock.models.MyTimeZone
import org.fossify.clock.models.Timer
import org.fossify.clock.models.TimerState
import org.fossify.clock.receivers.*
import org.fossify.clock.services.SnoozeService
import org.fossify.commons.extensions.*
import org.fossify.commons.helpers.*
import java.text.SimpleDateFormat
import java.util.Calendar
import java.util.Locale
@@ -50,8 +50,8 @@ fun Context.getFormattedDate(calendar: Calendar): String {
val dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH)
val month = calendar.get(Calendar.MONTH)
val dayString = resources.getStringArray(com.simplemobiletools.commons.R.array.week_days_short)[dayOfWeek]
val monthString = resources.getStringArray(com.simplemobiletools.commons.R.array.months)[month]
val dayString = resources.getStringArray(org.fossify.commons.R.array.week_days_short)[dayOfWeek]
val monthString = resources.getStringArray(org.fossify.commons.R.array.months)[month]
return "$dayString, $dayOfMonth $monthString"
}
@@ -138,7 +138,7 @@ fun Context.scheduleNextAlarm(alarm: Alarm, showToast: Boolean) {
}
fun Context.showRemainingTimeMessage(totalMinutes: Int) {
val fullString = String.format(getString(com.simplemobiletools.commons.R.string.time_remaining), formatMinutesToTimeString(totalMinutes))
val fullString = String.format(getString(org.fossify.commons.R.string.time_remaining), formatMinutesToTimeString(totalMinutes))
toast(fullString, Toast.LENGTH_LONG)
}
@@ -265,7 +265,7 @@ fun Context.getFormattedTime(passedSeconds: Int, showSeconds: Boolean, makeAmPmS
}
fun Context.formatTo12HourFormat(showSeconds: Boolean, hours: Int, minutes: Int, seconds: Int): String {
val appendable = getString(if (hours >= 12) com.simplemobiletools.commons.R.string.p_m else com.simplemobiletools.commons.R.string.a_m)
val appendable = getString(if (hours >= 12) org.fossify.commons.R.string.p_m else org.fossify.commons.R.string.a_m)
val newHours = if (hours == 0 || hours == 12) 12 else hours % 12
return "${formatTime(showSeconds, false, newHours, minutes, seconds)} $appendable"
}
@@ -298,7 +298,7 @@ fun Context.getClosestEnabledAlarmString(callback: (result: String) -> Unit) {
val calendar = Calendar.getInstance().apply { firstDayOfWeek = Calendar.MONDAY }
calendar.add(Calendar.MINUTE, closestAlarmTime)
val dayOfWeekIndex = (calendar.get(Calendar.DAY_OF_WEEK) + 5) % 7
val dayOfWeek = resources.getStringArray(com.simplemobiletools.commons.R.array.week_days_short)[dayOfWeekIndex]
val dayOfWeek = resources.getStringArray(org.fossify.commons.R.array.week_days_short)[dayOfWeekIndex]
val pattern = if (DateFormat.is24HourFormat(this)) {
"HH:mm"
} else {
@@ -404,8 +404,8 @@ fun Context.getTimerNotification(timer: Timer, pendingIntent: PendingIntent, add
.setSound(Uri.parse(soundUri), STREAM_ALARM)
.setChannelId(channelId)
.addAction(
com.simplemobiletools.commons.R.drawable.ic_cross_vector,
getString(com.simplemobiletools.commons.R.string.dismiss),
org.fossify.commons.R.drawable.ic_cross_vector,
getString(org.fossify.commons.R.string.dismiss),
if (addDeleteIntent) {
reminderActivityIntent
} else {
@@ -458,7 +458,7 @@ fun Context.getAlarmNotification(pendingIntent: PendingIntent, alarm: Alarm): No
}
val channelId = "simple_alarm_channel_${soundUri}_${alarm.vibrate}"
val label = alarm.label.ifEmpty {
getString(com.simplemobiletools.commons.R.string.alarm)
getString(org.fossify.commons.R.string.alarm)
}
if (isOreoPlus()) {
@@ -492,11 +492,11 @@ fun Context.getAlarmNotification(pendingIntent: PendingIntent, alarm: Alarm): No
.setAutoCancel(true)
.setChannelId(channelId)
.addAction(
com.simplemobiletools.commons.R.drawable.ic_snooze_vector,
getString(com.simplemobiletools.commons.R.string.snooze),
org.fossify.commons.R.drawable.ic_snooze_vector,
getString(org.fossify.commons.R.string.snooze),
getSnoozePendingIntent(alarm)
)
.addAction(com.simplemobiletools.commons.R.drawable.ic_cross_vector, getString(com.simplemobiletools.commons.R.string.dismiss), dismissIntent)
.addAction(org.fossify.commons.R.drawable.ic_cross_vector, getString(org.fossify.commons.R.string.dismiss), dismissIntent)
.setDeleteIntent(dismissIntent)
.setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
@@ -541,9 +541,9 @@ fun Context.checkAlarmsWithDeletedSoundUri(uri: String) {
fun Context.getAlarmSelectedDaysString(bitMask: Int): String {
return when (bitMask) {
TODAY_BIT -> getString(com.simplemobiletools.commons.R.string.today)
TOMORROW_BIT -> getString(com.simplemobiletools.commons.R.string.tomorrow)
EVERY_DAY_BIT -> getString(com.simplemobiletools.commons.R.string.every_day)
TODAY_BIT -> getString(org.fossify.commons.R.string.today)
TOMORROW_BIT -> getString(org.fossify.commons.R.string.tomorrow)
EVERY_DAY_BIT -> getString(org.fossify.commons.R.string.every_day)
else -> getSelectedDaysString(bitMask)
}
}

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.extensions
package org.fossify.clock.extensions
import android.content.SharedPreferences
import androidx.fragment.app.Fragment

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.extensions
package org.fossify.clock.extensions
import java.util.concurrent.TimeUnit

View File

@@ -1,7 +1,7 @@
package com.simplemobiletools.clock.extensions
package org.fossify.clock.extensions
import android.util.Log
import com.simplemobiletools.clock.BuildConfig
import org.fossify.clock.BuildConfig
fun <A> A.log(tag: String) = apply { if (BuildConfig.DEBUG) Log.wtf(tag, this.toString()) }
fun <A> A.log(first: String, tag: String) = apply { if (BuildConfig.DEBUG) Log.wtf(tag, first) }

View File

@@ -1,7 +1,7 @@
package com.simplemobiletools.clock.extensions
package org.fossify.clock.extensions
import android.text.format.DateFormat
import com.simplemobiletools.commons.extensions.getFormattedDuration
import org.fossify.commons.extensions.getFormattedDuration
import java.util.Calendar
import java.util.Locale
import java.util.concurrent.TimeUnit

View File

@@ -1,7 +1,7 @@
package com.simplemobiletools.clock.extensions
package org.fossify.clock.extensions
import android.widget.TextView
import com.simplemobiletools.commons.extensions.applyColorFilter
import org.fossify.commons.extensions.applyColorFilter
fun TextView.colorCompoundDrawable(color: Int) {
compoundDrawables.filterNotNull().forEach { drawable ->

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.simplemobiletools.clock.extensions.gson;
package org.fossify.clock.extensions.gson;
import com.google.gson.Gson;
import com.google.gson.JsonElement;

View File

@@ -1,9 +1,9 @@
package com.simplemobiletools.clock.extensions.gson
package org.fossify.clock.extensions.gson
import com.google.gson.Gson
import com.google.gson.GsonBuilder
import com.google.gson.TypeAdapterFactory
import com.simplemobiletools.clock.models.TimerState
import org.fossify.clock.models.TimerState
val timerStates = valueOf<TimerState>()
.registerSubtype(TimerState.Idle::class.java)

View File

@@ -1,28 +1,28 @@
package com.simplemobiletools.clock.fragments
package org.fossify.clock.fragments
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.simplemobiletools.clock.activities.MainActivity
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.adapters.AlarmsAdapter
import com.simplemobiletools.clock.databinding.FragmentAlarmBinding
import com.simplemobiletools.clock.dialogs.ChangeAlarmSortDialog
import com.simplemobiletools.clock.dialogs.EditAlarmDialog
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.*
import com.simplemobiletools.clock.interfaces.ToggleAlarmInterface
import com.simplemobiletools.clock.models.Alarm
import com.simplemobiletools.clock.models.AlarmEvent
import com.simplemobiletools.commons.extensions.getProperBackgroundColor
import com.simplemobiletools.commons.extensions.getProperTextColor
import com.simplemobiletools.commons.extensions.toast
import com.simplemobiletools.commons.extensions.updateTextColors
import com.simplemobiletools.commons.helpers.SORT_BY_DATE_CREATED
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.models.AlarmSound
import org.fossify.clock.activities.MainActivity
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.adapters.AlarmsAdapter
import org.fossify.clock.databinding.FragmentAlarmBinding
import org.fossify.clock.dialogs.ChangeAlarmSortDialog
import org.fossify.clock.dialogs.EditAlarmDialog
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.*
import org.fossify.clock.interfaces.ToggleAlarmInterface
import org.fossify.clock.models.Alarm
import org.fossify.clock.models.AlarmEvent
import org.fossify.commons.extensions.getProperBackgroundColor
import org.fossify.commons.extensions.getProperTextColor
import org.fossify.commons.extensions.toast
import org.fossify.commons.extensions.updateTextColors
import org.fossify.commons.helpers.SORT_BY_DATE_CREATED
import org.fossify.commons.helpers.ensureBackgroundThread
import org.fossify.commons.models.AlarmSound
import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode
@@ -144,7 +144,7 @@ class AlarmFragment : Fragment(), ToggleAlarmInterface {
setupAlarms()
}
} else {
requireActivity().toast(com.simplemobiletools.commons.R.string.unknown_error_occurred)
requireActivity().toast(org.fossify.commons.R.string.unknown_error_occurred)
}
requireContext().updateWidgets()
} else {

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.fragments
package org.fossify.clock.fragments
import android.os.Bundle
import android.os.Handler
@@ -7,19 +7,19 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.adapters.TimeZonesAdapter
import com.simplemobiletools.clock.databinding.FragmentClockBinding
import com.simplemobiletools.clock.dialogs.AddTimeZonesDialog
import com.simplemobiletools.clock.dialogs.EditTimeZoneDialog
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.getPassedSeconds
import com.simplemobiletools.clock.models.MyTimeZone
import com.simplemobiletools.commons.extensions.beVisibleIf
import com.simplemobiletools.commons.extensions.getProperBackgroundColor
import com.simplemobiletools.commons.extensions.getProperTextColor
import com.simplemobiletools.commons.extensions.updateTextColors
import org.fossify.clock.R
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.adapters.TimeZonesAdapter
import org.fossify.clock.databinding.FragmentClockBinding
import org.fossify.clock.dialogs.AddTimeZonesDialog
import org.fossify.clock.dialogs.EditTimeZoneDialog
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.getPassedSeconds
import org.fossify.clock.models.MyTimeZone
import org.fossify.commons.extensions.beVisibleIf
import org.fossify.commons.extensions.getProperBackgroundColor
import org.fossify.commons.extensions.getProperTextColor
import org.fossify.commons.extensions.updateTextColors
import java.util.Calendar
class ClockFragment : Fragment() {

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.fragments
package org.fossify.clock.fragments
import android.graphics.Bitmap
import android.graphics.Color
@@ -8,20 +8,20 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.adapters.StopwatchAdapter
import com.simplemobiletools.clock.databinding.FragmentStopwatchBinding
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.extensions.formatStopwatchTime
import com.simplemobiletools.clock.helpers.SORT_BY_LAP
import com.simplemobiletools.clock.helpers.SORT_BY_LAP_TIME
import com.simplemobiletools.clock.helpers.SORT_BY_TOTAL_TIME
import com.simplemobiletools.clock.helpers.Stopwatch
import com.simplemobiletools.clock.models.Lap
import com.simplemobiletools.commons.dialogs.PermissionRequiredDialog
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.SORT_DESCENDING
import org.fossify.clock.R
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.adapters.StopwatchAdapter
import org.fossify.clock.databinding.FragmentStopwatchBinding
import org.fossify.clock.extensions.config
import org.fossify.clock.extensions.formatStopwatchTime
import org.fossify.clock.helpers.SORT_BY_LAP
import org.fossify.clock.helpers.SORT_BY_LAP_TIME
import org.fossify.clock.helpers.SORT_BY_TOTAL_TIME
import org.fossify.clock.helpers.Stopwatch
import org.fossify.clock.models.Lap
import org.fossify.commons.dialogs.PermissionRequiredDialog
import org.fossify.commons.extensions.*
import org.fossify.commons.helpers.SORT_DESCENDING
class StopwatchFragment : Fragment() {
@@ -107,7 +107,7 @@ class StopwatchFragment : Fragment() {
private fun updateIcons(state: Stopwatch.State) {
val drawableId =
if (state == Stopwatch.State.RUNNING) com.simplemobiletools.commons.R.drawable.ic_pause_vector else com.simplemobiletools.commons.R.drawable.ic_play_vector
if (state == Stopwatch.State.RUNNING) org.fossify.commons.R.drawable.ic_pause_vector else org.fossify.commons.R.drawable.ic_play_vector
val iconColor = if (requireContext().getProperPrimaryColor() == Color.WHITE) Color.BLACK else Color.WHITE
binding.stopwatchPlayPause.setImageDrawable(resources.getColoredDrawableWithColor(drawableId, iconColor))
}
@@ -119,7 +119,7 @@ class StopwatchFragment : Fragment() {
} else {
PermissionRequiredDialog(
activity as SimpleActivity,
com.simplemobiletools.commons.R.string.allow_notifications_reminders,
org.fossify.commons.R.string.allow_notifications_reminders,
{ (activity as SimpleActivity).openNotificationSettings() })
}
}

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.fragments
package org.fossify.clock.fragments
import android.os.Bundle
import android.os.Handler
@@ -7,21 +7,21 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.simplemobiletools.clock.activities.SimpleActivity
import com.simplemobiletools.clock.adapters.TimerAdapter
import com.simplemobiletools.clock.databinding.FragmentTimerBinding
import com.simplemobiletools.clock.dialogs.EditTimerDialog
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.extensions.createNewTimer
import com.simplemobiletools.clock.extensions.timerHelper
import com.simplemobiletools.clock.helpers.DisabledItemChangeAnimator
import com.simplemobiletools.clock.models.Timer
import com.simplemobiletools.clock.models.TimerEvent
import com.simplemobiletools.commons.extensions.getProperBackgroundColor
import com.simplemobiletools.commons.extensions.getProperTextColor
import com.simplemobiletools.commons.extensions.hideKeyboard
import com.simplemobiletools.commons.extensions.updateTextColors
import com.simplemobiletools.commons.models.AlarmSound
import org.fossify.clock.activities.SimpleActivity
import org.fossify.clock.adapters.TimerAdapter
import org.fossify.clock.databinding.FragmentTimerBinding
import org.fossify.clock.dialogs.EditTimerDialog
import org.fossify.clock.extensions.config
import org.fossify.clock.extensions.createNewTimer
import org.fossify.clock.extensions.timerHelper
import org.fossify.clock.helpers.DisabledItemChangeAnimator
import org.fossify.clock.models.Timer
import org.fossify.clock.models.TimerEvent
import org.fossify.commons.extensions.getProperBackgroundColor
import org.fossify.commons.extensions.getProperTextColor
import org.fossify.commons.extensions.hideKeyboard
import org.fossify.commons.extensions.updateTextColors
import org.fossify.commons.models.AlarmSound
import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode
@@ -89,7 +89,7 @@ class TimerFragment : Fragment() {
activity?.timerHelper?.getTimers { timers ->
activity?.runOnUiThread {
timerAdapter.submitList(timers) {
getView()?.post {
view?.post {
if (timerPositionToScrollTo != INVALID_POSITION && timerAdapter.itemCount > timerPositionToScrollTo) {
binding.timersList.scrollToPosition(timerPositionToScrollTo)
timerPositionToScrollTo = INVALID_POSITION

View File

@@ -1,16 +1,16 @@
package com.simplemobiletools.clock.helpers
package org.fossify.clock.helpers
import android.content.Context
import android.media.RingtoneManager
import com.simplemobiletools.clock.extensions.gson.gson
import com.simplemobiletools.clock.models.Alarm
import com.simplemobiletools.clock.models.ObfuscatedAlarm
import com.simplemobiletools.clock.models.ObfuscatedTimer
import com.simplemobiletools.clock.models.Timer
import com.simplemobiletools.commons.extensions.getDefaultAlarmSound
import com.simplemobiletools.commons.extensions.getDefaultAlarmTitle
import com.simplemobiletools.commons.helpers.BaseConfig
import com.simplemobiletools.commons.helpers.SORT_DESCENDING
import org.fossify.clock.extensions.gson.gson
import org.fossify.clock.models.Alarm
import org.fossify.clock.models.ObfuscatedAlarm
import org.fossify.clock.models.ObfuscatedTimer
import org.fossify.clock.models.Timer
import org.fossify.commons.extensions.getDefaultAlarmSound
import org.fossify.commons.extensions.getDefaultAlarmTitle
import org.fossify.commons.helpers.BaseConfig
import org.fossify.commons.helpers.SORT_DESCENDING
class Config(context: Context) : BaseConfig(context) {
companion object {

View File

@@ -1,8 +1,8 @@
package com.simplemobiletools.clock.helpers
package org.fossify.clock.helpers
import com.simplemobiletools.clock.extensions.isBitSet
import com.simplemobiletools.clock.models.MyTimeZone
import com.simplemobiletools.commons.helpers.*
import org.fossify.clock.extensions.isBitSet
import org.fossify.clock.models.MyTimeZone
import org.fossify.commons.helpers.*
import java.util.Calendar
import java.util.Date
import java.util.TimeZone
@@ -72,7 +72,7 @@ const val TOMORROW_BIT = -2
// stopwatch shortcut
const val STOPWATCH_SHORTCUT_ID = "stopwatch_shortcut_id"
const val STOPWATCH_TOGGLE_ACTION = "com.simplemobiletools.clock.TOGGLE_STOPWATCH"
const val STOPWATCH_TOGGLE_ACTION = "org.fossify.clock.TOGGLE_STOPWATCH"
val DAY_BIT_MAP = mapOf(
Calendar.SUNDAY to SUNDAY_BIT,

View File

@@ -1,9 +1,9 @@
package com.simplemobiletools.clock.helpers
package org.fossify.clock.helpers
import androidx.room.TypeConverter
import com.simplemobiletools.clock.extensions.gson.gson
import com.simplemobiletools.clock.models.StateWrapper
import com.simplemobiletools.clock.models.TimerState
import org.fossify.clock.extensions.gson.gson
import org.fossify.clock.models.StateWrapper
import org.fossify.clock.models.TimerState
class Converters {

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.helpers
package org.fossify.clock.helpers
import android.content.ContentValues
import android.content.Context
@@ -6,12 +6,12 @@ import android.database.Cursor
import android.database.sqlite.SQLiteDatabase
import android.database.sqlite.SQLiteOpenHelper
import android.text.TextUtils
import com.simplemobiletools.clock.extensions.cancelAlarmClock
import com.simplemobiletools.clock.extensions.createNewAlarm
import com.simplemobiletools.clock.models.Alarm
import com.simplemobiletools.commons.extensions.getIntValue
import com.simplemobiletools.commons.extensions.getStringValue
import com.simplemobiletools.commons.helpers.*
import org.fossify.clock.extensions.cancelAlarmClock
import org.fossify.clock.extensions.createNewAlarm
import org.fossify.clock.models.Alarm
import org.fossify.commons.extensions.getIntValue
import org.fossify.commons.extensions.getStringValue
import org.fossify.commons.helpers.*
class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(context, DB_NAME, null, DB_VERSION) {
private val ALARMS_TABLE_NAME = "contacts" // wrong table name, ignore it

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.helpers
package org.fossify.clock.helpers
import androidx.recyclerview.widget.DefaultItemAnimator
import androidx.recyclerview.widget.RecyclerView
@@ -11,7 +11,7 @@ class DisabledItemChangeAnimator : DefaultItemAnimator() {
oldHolder: RecyclerView.ViewHolder,
newHolder: RecyclerView.ViewHolder,
preInfo: ItemHolderInfo,
postInfo: ItemHolderInfo
postInfo: ItemHolderInfo,
): Boolean {
dispatchChangeFinished(oldHolder, false)
return false
@@ -23,7 +23,7 @@ class DisabledItemChangeAnimator : DefaultItemAnimator() {
fromX: Int,
fromY: Int,
toX: Int,
toY: Int
toY: Int,
): Boolean {
dispatchChangeFinished(oldHolder, false)
return false

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.helpers
package org.fossify.clock.helpers
import android.app.PendingIntent
import android.appwidget.AppWidgetManager
@@ -8,11 +8,11 @@ import android.content.Context
import android.content.Intent
import android.os.Bundle
import android.widget.RemoteViews
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.SplashActivity
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.commons.extensions.applyColorFilter
import com.simplemobiletools.commons.extensions.getLaunchIntent
import org.fossify.clock.R
import org.fossify.clock.activities.SplashActivity
import org.fossify.clock.extensions.config
import org.fossify.commons.extensions.applyColorFilter
import org.fossify.commons.extensions.getLaunchIntent
class MyAnalogueTimeWidgetProvider : AppWidgetProvider() {
override fun onUpdate(context: Context, appWidgetManager: AppWidgetManager, appWidgetIds: IntArray) {

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.helpers
package org.fossify.clock.helpers
import android.app.PendingIntent
import android.appwidget.AppWidgetManager
@@ -9,14 +9,14 @@ import android.content.Intent
import android.graphics.*
import android.os.Bundle
import android.widget.RemoteViews
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.SplashActivity
import com.simplemobiletools.clock.extensions.config
import com.simplemobiletools.clock.extensions.getClosestEnabledAlarmString
import com.simplemobiletools.commons.extensions.applyColorFilter
import com.simplemobiletools.commons.extensions.getLaunchIntent
import com.simplemobiletools.commons.extensions.setText
import com.simplemobiletools.commons.extensions.setVisibleIf
import org.fossify.clock.R
import org.fossify.clock.activities.SplashActivity
import org.fossify.clock.extensions.config
import org.fossify.clock.extensions.getClosestEnabledAlarmString
import org.fossify.commons.extensions.applyColorFilter
import org.fossify.commons.extensions.getLaunchIntent
import org.fossify.commons.extensions.setText
import org.fossify.commons.extensions.setVisibleIf
class MyDigitalTimeWidgetProvider : AppWidgetProvider() {
override fun onUpdate(context: Context, appWidgetManager: AppWidgetManager, appWidgetIds: IntArray) {

View File

@@ -1,7 +1,7 @@
package com.simplemobiletools.clock.helpers
package org.fossify.clock.helpers
import android.os.SystemClock
import com.simplemobiletools.clock.models.Lap
import org.fossify.clock.models.Lap
import java.util.Timer
import java.util.TimerTask
import java.util.concurrent.CopyOnWriteArraySet

View File

@@ -1,9 +1,9 @@
package com.simplemobiletools.clock.helpers
package org.fossify.clock.helpers
import android.content.Context
import com.simplemobiletools.clock.extensions.timerDb
import com.simplemobiletools.clock.models.Timer
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import org.fossify.clock.extensions.timerDb
import org.fossify.clock.models.Timer
import org.fossify.commons.helpers.ensureBackgroundThread
class TimerHelper(val context: Context) {
private val timerDao = context.timerDb

View File

@@ -1,7 +1,7 @@
package com.simplemobiletools.clock.interfaces
package org.fossify.clock.interfaces
import androidx.room.*
import com.simplemobiletools.clock.models.Timer
import org.fossify.clock.models.Timer
@Dao
interface TimerDao {

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.interfaces
package org.fossify.clock.interfaces
interface ToggleAlarmInterface {
fun alarmToggled(id: Int, isEnabled: Boolean)

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.models
package org.fossify.clock.models
import androidx.annotation.Keep
@@ -12,7 +12,7 @@ data class Alarm(
var soundTitle: String,
var soundUri: String,
var label: String,
var oneShot: Boolean = false
var oneShot: Boolean = false,
)
@Keep
@@ -25,7 +25,7 @@ data class ObfuscatedAlarm(
var f: String,
var g: String,
var h: String,
var i: Boolean = false
var i: Boolean = false,
) {
fun toAlarm() = Alarm(a, b, c, d, e, f, g, h, i)
}

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.models
package org.fossify.clock.models
sealed interface AlarmEvent {
object Refresh : AlarmEvent

View File

@@ -1,8 +1,8 @@
package com.simplemobiletools.clock.models
package org.fossify.clock.models
import com.simplemobiletools.clock.helpers.SORT_BY_LAP
import com.simplemobiletools.clock.helpers.SORT_BY_LAP_TIME
import com.simplemobiletools.commons.helpers.SORT_DESCENDING
import org.fossify.clock.helpers.SORT_BY_LAP
import org.fossify.clock.helpers.SORT_BY_LAP_TIME
import org.fossify.commons.helpers.SORT_DESCENDING
data class Lap(val id: Int, var lapTime: Long, var totalTime: Long) : Comparable<Lap> {
companion object {

View File

@@ -1,3 +1,3 @@
package com.simplemobiletools.clock.models
package org.fossify.clock.models
data class MyTimeZone(val id: Int, var title: String, val zoneName: String)

View File

@@ -1,3 +1,3 @@
package com.simplemobiletools.clock.models
package org.fossify.clock.models
data class StateWrapper(val state: TimerState)

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.models
package org.fossify.clock.models
import androidx.annotation.Keep
import androidx.room.Entity
@@ -16,7 +16,7 @@ data class Timer(
var label: String,
var createdAt: Long,
var channelId: String? = null,
var oneShot: Boolean = false
var oneShot: Boolean = false,
)
@Keep
@@ -31,7 +31,7 @@ data class ObfuscatedTimer(
var g: String,
var h: Long,
var i: String? = null,
var j: Boolean = false
var j: Boolean = false,
) {
fun toTimer() = Timer(a, b, TimerState.Idle, d, e, f, g, h, i, j)
}

View File

@@ -1,6 +1,6 @@
package com.simplemobiletools.clock.models
package org.fossify.clock.models
import com.simplemobiletools.clock.helpers.INVALID_TIMER_ID
import org.fossify.clock.helpers.INVALID_TIMER_ID
sealed class TimerEvent(open val timerId: Int) {
data class Delete(override val timerId: Int) : TimerEvent(timerId)

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.models
package org.fossify.clock.models
import androidx.annotation.Keep
@@ -6,10 +6,13 @@ import androidx.annotation.Keep
sealed class TimerState {
@Keep
object Idle : TimerState()
@Keep
data class Running(val duration: Long, val tick: Long) : TimerState()
@Keep
data class Paused(val duration: Long, val tick: Long) : TimerState()
@Keep
object Finished : TimerState()
}

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.receivers
package org.fossify.clock.receivers
import android.app.NotificationChannel
import android.app.NotificationManager
@@ -10,15 +10,15 @@ import android.os.Build
import android.os.Handler
import androidx.annotation.RequiresApi
import androidx.core.app.NotificationCompat
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.activities.ReminderActivity
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.ALARM_ID
import com.simplemobiletools.clock.helpers.ALARM_NOTIFICATION_CHANNEL_ID
import com.simplemobiletools.clock.helpers.ALARM_NOTIF_ID
import com.simplemobiletools.clock.helpers.EARLY_ALARM_NOTIF_ID
import com.simplemobiletools.commons.extensions.showErrorToast
import com.simplemobiletools.commons.helpers.isOreoPlus
import org.fossify.clock.R
import org.fossify.clock.activities.ReminderActivity
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.ALARM_ID
import org.fossify.clock.helpers.ALARM_NOTIFICATION_CHANNEL_ID
import org.fossify.clock.helpers.ALARM_NOTIF_ID
import org.fossify.clock.helpers.EARLY_ALARM_NOTIF_ID
import org.fossify.commons.extensions.showErrorToast
import org.fossify.commons.helpers.isOreoPlus
class AlarmReceiver : BroadcastReceiver() {
@@ -53,7 +53,7 @@ class AlarmReceiver : BroadcastReceiver() {
val builder = NotificationCompat.Builder(context, ALARM_NOTIFICATION_CHANNEL_ID)
.setSmallIcon(R.drawable.ic_alarm_vector)
.setContentTitle(context.getString(com.simplemobiletools.commons.R.string.alarm))
.setContentTitle(context.getString(org.fossify.commons.R.string.alarm))
.setAutoCancel(true)
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setCategory(NotificationCompat.CATEGORY_ALARM)

View File

@@ -1,9 +1,9 @@
package com.simplemobiletools.clock.receivers
package org.fossify.clock.receivers
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import com.simplemobiletools.clock.extensions.rescheduleEnabledAlarms
import org.fossify.clock.extensions.rescheduleEnabledAlarms
class BootCompletedReceiver : BroadcastReceiver() {

View File

@@ -1,14 +1,14 @@
package com.simplemobiletools.clock.receivers
package org.fossify.clock.receivers
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import com.simplemobiletools.clock.extensions.*
import com.simplemobiletools.clock.helpers.ALARM_ID
import com.simplemobiletools.clock.helpers.NOTIFICATION_ID
import com.simplemobiletools.clock.models.Alarm
import com.simplemobiletools.commons.extensions.removeBit
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import org.fossify.clock.extensions.*
import org.fossify.clock.helpers.ALARM_ID
import org.fossify.clock.helpers.NOTIFICATION_ID
import org.fossify.clock.models.Alarm
import org.fossify.commons.extensions.removeBit
import org.fossify.commons.helpers.ensureBackgroundThread
import java.util.Calendar
import kotlin.math.pow

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.receivers
package org.fossify.clock.receivers
import android.app.Notification
import android.app.NotificationChannel
@@ -7,14 +7,14 @@ import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import androidx.core.app.NotificationCompat
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.extensions.getClosestEnabledAlarmString
import com.simplemobiletools.clock.extensions.getDismissAlarmPendingIntent
import com.simplemobiletools.clock.extensions.getOpenAlarmTabIntent
import com.simplemobiletools.clock.helpers.ALARM_ID
import com.simplemobiletools.clock.helpers.EARLY_ALARM_DISMISSAL_CHANNEL_ID
import com.simplemobiletools.clock.helpers.EARLY_ALARM_NOTIF_ID
import com.simplemobiletools.commons.helpers.isOreoPlus
import org.fossify.clock.R
import org.fossify.clock.extensions.getClosestEnabledAlarmString
import org.fossify.clock.extensions.getDismissAlarmPendingIntent
import org.fossify.clock.extensions.getOpenAlarmTabIntent
import org.fossify.clock.helpers.ALARM_ID
import org.fossify.clock.helpers.EARLY_ALARM_DISMISSAL_CHANNEL_ID
import org.fossify.clock.helpers.EARLY_ALARM_NOTIF_ID
import org.fossify.commons.helpers.isOreoPlus
class EarlyAlarmDismissalReceiver : BroadcastReceiver() {
@@ -48,7 +48,7 @@ class EarlyAlarmDismissalReceiver : BroadcastReceiver() {
.setContentText(alarmString)
.setSmallIcon(R.drawable.ic_alarm_vector)
.setPriority(Notification.PRIORITY_LOW)
.addAction(0, context.getString(com.simplemobiletools.commons.R.string.dismiss), dismissIntent)
.addAction(0, context.getString(org.fossify.commons.R.string.dismiss), dismissIntent)
.setContentIntent(contentIntent)
.setSound(null)
.setAutoCancel(true)

View File

@@ -1,15 +1,15 @@
package com.simplemobiletools.clock.receivers
package org.fossify.clock.receivers
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import com.simplemobiletools.clock.extensions.dbHelper
import com.simplemobiletools.clock.extensions.deleteNotificationChannel
import com.simplemobiletools.clock.extensions.hideNotification
import com.simplemobiletools.clock.extensions.updateWidgets
import com.simplemobiletools.clock.helpers.ALARM_ID
import com.simplemobiletools.clock.helpers.ALARM_NOTIFICATION_CHANNEL_ID
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import org.fossify.clock.extensions.dbHelper
import org.fossify.clock.extensions.deleteNotificationChannel
import org.fossify.clock.extensions.hideNotification
import org.fossify.clock.extensions.updateWidgets
import org.fossify.clock.helpers.ALARM_ID
import org.fossify.clock.helpers.ALARM_NOTIFICATION_CHANNEL_ID
import org.fossify.commons.helpers.ensureBackgroundThread
class HideAlarmReceiver : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {

View File

@@ -1,12 +1,12 @@
package com.simplemobiletools.clock.receivers
package org.fossify.clock.receivers
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import com.simplemobiletools.clock.extensions.hideTimerNotification
import com.simplemobiletools.clock.helpers.INVALID_TIMER_ID
import com.simplemobiletools.clock.helpers.TIMER_ID
import com.simplemobiletools.clock.models.TimerEvent
import org.fossify.clock.extensions.hideTimerNotification
import org.fossify.clock.helpers.INVALID_TIMER_ID
import org.fossify.clock.helpers.TIMER_ID
import org.fossify.clock.models.TimerEvent
import org.greenrobot.eventbus.EventBus
class HideTimerReceiver : BroadcastReceiver() {

View File

@@ -1,9 +1,9 @@
package com.simplemobiletools.clock.receivers
package org.fossify.clock.receivers
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import com.simplemobiletools.clock.extensions.updateWidgets
import org.fossify.clock.extensions.updateWidgets
class UpdateWidgetReceiver : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {

View File

@@ -0,0 +1,19 @@
package org.fossify.clock.services
import android.app.IntentService
import android.content.Intent
import org.fossify.clock.extensions.config
import org.fossify.clock.extensions.dbHelper
import org.fossify.clock.extensions.hideNotification
import org.fossify.clock.extensions.setupAlarmClock
import org.fossify.clock.helpers.ALARM_ID
import org.fossify.commons.helpers.MINUTE_SECONDS
class SnoozeService : IntentService("Snooze") {
override fun onHandleIntent(intent: Intent?) {
val id = intent!!.getIntExtra(ALARM_ID, -1)
val alarm = dbHelper.getAlarmWithId(id) ?: return
hideNotification(id)
setupAlarmClock(alarm, config.snoozeTime * MINUTE_SECONDS)
}
}

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.services
package org.fossify.clock.services
import android.app.NotificationChannel
import android.app.NotificationManager
@@ -11,15 +11,15 @@ import android.os.Looper
import androidx.core.app.NotificationCompat
import androidx.core.app.ServiceCompat
import androidx.core.content.ContextCompat
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.extensions.getFormattedDuration
import com.simplemobiletools.clock.extensions.getOpenStopwatchTabIntent
import com.simplemobiletools.clock.helpers.STOPWATCH_RUNNING_NOTIF_ID
import com.simplemobiletools.clock.helpers.Stopwatch
import com.simplemobiletools.clock.helpers.Stopwatch.State
import com.simplemobiletools.clock.helpers.Stopwatch.UpdateListener
import com.simplemobiletools.commons.extensions.showErrorToast
import com.simplemobiletools.commons.helpers.isOreoPlus
import org.fossify.clock.R
import org.fossify.clock.extensions.getFormattedDuration
import org.fossify.clock.extensions.getOpenStopwatchTabIntent
import org.fossify.clock.helpers.STOPWATCH_RUNNING_NOTIF_ID
import org.fossify.clock.helpers.Stopwatch
import org.fossify.clock.helpers.Stopwatch.State
import org.fossify.clock.helpers.Stopwatch.UpdateListener
import org.fossify.commons.extensions.showErrorToast
import org.fossify.commons.helpers.isOreoPlus
import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode
@@ -67,7 +67,7 @@ class StopwatchService : Service() {
private fun getServiceNotificationBuilder(
title: String,
contentText: String
contentText: String,
): NotificationCompat.Builder {
val channelId = "simple_alarm_stopwatch"
val label = getString(R.string.stopwatch)

View File

@@ -1,4 +1,4 @@
package com.simplemobiletools.clock.services
package org.fossify.clock.services
import android.app.Notification
import android.app.NotificationChannel
@@ -11,16 +11,16 @@ import android.os.IBinder
import android.os.Looper
import androidx.core.app.NotificationCompat
import androidx.core.content.ContextCompat
import com.simplemobiletools.clock.R
import com.simplemobiletools.clock.extensions.getFormattedDuration
import com.simplemobiletools.clock.extensions.getOpenTimerTabIntent
import com.simplemobiletools.clock.extensions.timerHelper
import com.simplemobiletools.clock.helpers.INVALID_TIMER_ID
import com.simplemobiletools.clock.helpers.TIMER_RUNNING_NOTIF_ID
import com.simplemobiletools.clock.models.TimerEvent
import com.simplemobiletools.clock.models.TimerState
import com.simplemobiletools.commons.extensions.showErrorToast
import com.simplemobiletools.commons.helpers.isOreoPlus
import org.fossify.clock.R
import org.fossify.clock.extensions.getFormattedDuration
import org.fossify.clock.extensions.getOpenTimerTabIntent
import org.fossify.clock.extensions.timerHelper
import org.fossify.clock.helpers.INVALID_TIMER_ID
import org.fossify.clock.helpers.TIMER_RUNNING_NOTIF_ID
import org.fossify.clock.models.TimerEvent
import org.fossify.clock.models.TimerState
import org.fossify.commons.extensions.showErrorToast
import org.fossify.commons.helpers.isOreoPlus
import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -1,10 +0,0 @@
<vector
xmlns:android="http://schemas.android.com/apk/res/android"
android:width="108dp"
android:height="108dp"
android:viewportHeight="108"
android:viewportWidth="108">
<path
android:fillColor="#FFFFFF"
android:pathData="m54.3,31.81c-12.37,0 -22.42,10.13 -22.42,22.59 0,12.46 10.05,22.59 22.42,22.59 12.37,0 22.42,-10.13 22.42,-22.59 0,-12.46 -10.05,-22.59 -22.42,-22.59zM54.3,72.4c-9.88,0 -17.95,-8.05 -17.95,-18.09 0,-10.04 7.99,-18.09 17.95,-18.09 9.96,0 17.95,8.05 17.95,18.09 0,10.04 -8.07,18.09 -17.95,18.09zM55.42,43.06 L52.07,43.06 52.07,56.65 63.83,63.75 65.55,60.98 55.5,54.92 55.5,43.06z"/>
</vector>

View File

@@ -0,0 +1,3 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="108dp" android:height="108dp" android:viewportWidth="512" android:viewportHeight="512">
<path android:fillColor="#ffffff" android:pathData="M267 251.6V212q0-4.68-3.16-7.84Q260.67 201 256 201q-4.68 0-7.84 3.16T245 212v43.72q0 2.2 0.82 4.26 0.82 2.06 2.47 3.71l36.3 36.3q3.03 3.03 7.7 3.03 4.68 0 7.7-3.03 3.03-3.03 3.03-7.7 0-4.68-3.03-7.7zM256 366q-22.83 0-42.9-8.66-20.08-8.67-34.92-23.51-14.86-14.85-23.52-34.93Q146 278.83 146 256t8.66-42.9q8.66-20.08 23.51-34.92 14.85-14.85 34.92-23.51Q233.18 146 256 146q22.83 0 42.9 8.66 20.08 8.66 34.92 23.51 14.85 14.85 23.51 34.92Q366 233.18 366 256q0 22.83-8.66 42.9-8.66 20.08-23.51 34.92-14.85 14.85-34.92 23.51Q278.83 366 256 366zm0-110zm0 88q36.58 0 62.29-25.71T344 256q0-36.57-25.71-62.29Q292.58 168 256 168q-36.57 0-62.29 25.71Q168 219.43 168 256q0 36.58 25.71 62.29Q219.43 344 256 344z" android:strokeWidth="0.275"/>
</vector>

View File

@@ -1,3 +1,3 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="108dp" android:height="108dp" android:viewportWidth="108" android:viewportHeight="108">
<path android:fillColor="#FFFFFFFF" android:pathData="M54.39 31.89c-12.37 0-22.42 10.05-22.42 22.42 0 12.37 10.05 22.42 22.42 22.42 12.37 0 22.42-10.05 22.42-22.42 0-12.37-10.05-22.42-22.42-22.42zm0 40.28c-9.88 0-17.95-7.99-17.95-17.95 0-9.96 7.99-17.95 17.95-17.95 9.96 0 17.95 7.99 17.95 17.95 0 9.96-8.07 17.95-17.95 17.95zm1.12-29.12h-3.35v13.49l11.77 7.04 1.72-2.74-10.05-6.02V43.05z"/>
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="108dp" android:height="108dp" android:viewportWidth="512" android:viewportHeight="512">
<path android:fillColor="#ffffff" android:pathData="M267 251.6V212q0-4.68-3.16-7.84Q260.67 201 256 201q-4.68 0-7.84 3.16T245 212v43.72q0 2.2 0.82 4.26 0.82 2.06 2.47 3.71l36.3 36.3q3.03 3.03 7.7 3.03 4.68 0 7.7-3.03 3.03-3.03 3.03-7.7 0-4.68-3.03-7.7zM256 366q-22.83 0-42.9-8.66-20.08-8.67-34.92-23.51-14.86-14.85-23.52-34.93Q146 278.83 146 256t8.66-42.9q8.66-20.08 23.51-34.92 14.85-14.85 34.92-23.51Q233.18 146 256 146q22.83 0 42.9 8.66 20.08 8.66 34.92 23.51 14.85 14.85 23.51 34.92Q366 233.18 366 256q0 22.83-8.66 42.9-8.66 20.08-23.51 34.92-14.85 14.85-34.92 23.51Q278.83 366 256 366zm0-110zm0 88q36.58 0 62.29-25.71T344 256q0-36.57-25.71-62.29Q292.58 168 256 168q-36.57 0-62.29 25.71Q168 219.43 168 256q0 36.58 25.71 62.29Q219.43 344 256 344z" android:strokeWidth="0.275"/>
</vector>

View File

@@ -6,7 +6,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/reminder_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -18,7 +18,7 @@
app:layout_constraintTop_toTopOf="parent"
tools:text="@string/time_expired" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/reminder_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -42,7 +42,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/reminder_draggable" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/snooze_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -92,7 +92,7 @@
app:layout_constraintStart_toEndOf="@+id/reminder_draggable"
app:layout_constraintTop_toTopOf="@+id/reminder_draggable" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/dismiss_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -102,7 +102,7 @@
app:layout_constraintStart_toEndOf="@+id/reminder_draggable"
app:layout_constraintTop_toBottomOf="@+id/reminder_dismiss" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/reminder_guide"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

View File

@@ -41,7 +41,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_color_customization_label"
style="@style/SettingsTextLabelStyle"
android:layout_width="wrap_content"
@@ -58,7 +58,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_widget_color_customization_label"
style="@style/SettingsTextLabelStyle"
android:layout_width="wrap_content"
@@ -86,7 +86,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_purchase_thank_you_label"
style="@style/SettingsTextLabelStyle"
android:layout_width="wrap_content"
@@ -101,7 +101,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyAppCompatCheckbox
<org.fossify.commons.views.MyAppCompatCheckbox
android:id="@+id/settings_use_english"
style="@style/SettingsCheckboxStyle"
android:layout_width="match_parent"
@@ -116,14 +116,14 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_language_label"
style="@style/SettingsTextLabelStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/language" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_language"
style="@style/SettingsTextValueStyle"
android:layout_width="wrap_content"
@@ -139,7 +139,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyAppCompatCheckbox
<org.fossify.commons.views.MyAppCompatCheckbox
android:id="@+id/settings_prevent_phone_from_sleeping"
style="@style/SettingsCheckboxStyle"
android:layout_width="match_parent"
@@ -154,7 +154,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyAppCompatCheckbox
<org.fossify.commons.views.MyAppCompatCheckbox
android:id="@+id/settings_sunday_first"
style="@style/SettingsCheckboxStyle"
android:layout_width="match_parent"
@@ -180,14 +180,14 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_alarm_max_reminder_label"
style="@style/SettingsTextLabelStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/max_reminder_duration" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_alarm_max_reminder"
style="@style/SettingsTextValueStyle"
android:layout_width="match_parent"
@@ -203,7 +203,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyAppCompatCheckbox
<org.fossify.commons.views.MyAppCompatCheckbox
android:id="@+id/settings_increase_volume_gradually"
style="@style/SettingsCheckboxStyle"
android:layout_width="match_parent"
@@ -218,7 +218,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyAppCompatCheckbox
<org.fossify.commons.views.MyAppCompatCheckbox
android:id="@+id/settings_use_same_snooze"
style="@style/SettingsCheckboxStyle"
android:layout_width="match_parent"
@@ -233,14 +233,14 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_snooze_time_label"
style="@style/SettingsTextLabelStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/snooze_time" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_snooze_time"
style="@style/SettingsTextValueStyle"
android:layout_width="match_parent"
@@ -267,14 +267,14 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_timer_max_reminder_label"
style="@style/SettingsTextLabelStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/max_reminder_duration" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/settings_timer_max_reminder"
style="@style/SettingsTextValueStyle"
android:layout_width="match_parent"

View File

@@ -13,7 +13,7 @@
android:paddingTop="@dimen/activity_margin"
android:paddingEnd="@dimen/activity_margin">
<com.simplemobiletools.commons.views.MyCompatRadioButton
<org.fossify.commons.views.MyCompatRadioButton
android:id="@+id/sorting_dialog_radio_creation_order"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -21,7 +21,7 @@
android:paddingBottom="@dimen/medium_margin"
android:text="@string/sort_by_creation_order" />
<com.simplemobiletools.commons.views.MyCompatRadioButton
<org.fossify.commons.views.MyCompatRadioButton
android:id="@+id/sorting_dialog_radio_alarm_time"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -29,7 +29,7 @@
android:paddingBottom="@dimen/medium_margin"
android:text="@string/sort_by_alarm_time" />
<com.simplemobiletools.commons.views.MyCompatRadioButton
<org.fossify.commons.views.MyCompatRadioButton
android:id="@+id/sorting_dialog_radio_day_and_time"
android:layout_width="match_parent"
android:layout_height="wrap_content"

View File

@@ -10,7 +10,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/edit_alarm_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -22,7 +22,7 @@
android:textSize="@dimen/alarm_text_size"
tools:text="07:00" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/edit_alarm_dayless_label"
android:layout_width="wrap_content"
android:layout_height="match_parent"
@@ -62,7 +62,7 @@
android:layout_alignBottom="@+id/edit_alarm_vibrate"
android:src="@drawable/ic_vibrate_vector" />
<com.simplemobiletools.commons.views.MyAppCompatCheckbox
<org.fossify.commons.views.MyAppCompatCheckbox
android:id="@+id/edit_alarm_vibrate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -76,7 +76,7 @@
</RelativeLayout>
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/edit_alarm_sound"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -107,7 +107,7 @@
android:layout_height="wrap_content"
android:src="@drawable/ic_label_vector" />
<com.simplemobiletools.commons.views.MyTextInputLayout
<org.fossify.commons.views.MyTextInputLayout
android:id="@+id/edit_alarm_hint"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -123,7 +123,7 @@
android:singleLine="true"
android:textSize="@dimen/normal_text_size" />
</com.simplemobiletools.commons.views.MyTextInputLayout>
</org.fossify.commons.views.MyTextInputLayout>
</LinearLayout>
</RelativeLayout>
</ScrollView>

View File

@@ -7,7 +7,7 @@
android:orientation="vertical"
android:padding="@dimen/activity_margin">
<com.simplemobiletools.commons.views.MyTextInputLayout
<org.fossify.commons.views.MyTextInputLayout
android:id="@+id/edit_time_zone_title_hint"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -22,9 +22,9 @@
android:singleLine="true"
android:textSize="@dimen/normal_text_size" />
</com.simplemobiletools.commons.views.MyTextInputLayout>
</org.fossify.commons.views.MyTextInputLayout>
<com.simplemobiletools.commons.views.MyTextInputLayout
<org.fossify.commons.views.MyTextInputLayout
android:id="@+id/edit_time_zone_label_hint"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -40,5 +40,5 @@
android:textSize="@dimen/normal_text_size"
tools:text="GMT-11:00 Midway" />
</com.simplemobiletools.commons.views.MyTextInputLayout>
</org.fossify.commons.views.MyTextInputLayout>
</LinearLayout>

View File

@@ -12,7 +12,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/activity_margin">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/edit_timer_initial_time"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -44,7 +44,7 @@
android:layout_alignBottom="@+id/edit_timer_vibrate"
android:src="@drawable/ic_vibrate_vector" />
<com.simplemobiletools.commons.views.MyAppCompatCheckbox
<org.fossify.commons.views.MyAppCompatCheckbox
android:id="@+id/edit_timer_vibrate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -59,7 +59,7 @@
</RelativeLayout>
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/edit_timer_sound"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -94,7 +94,7 @@
android:layout_height="wrap_content"
android:src="@drawable/ic_label_vector" />
<com.simplemobiletools.commons.views.MyTextInputLayout
<org.fossify.commons.views.MyTextInputLayout
android:id="@+id/edit_timer_hint"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -110,7 +110,7 @@
android:singleLine="true"
android:textSize="@dimen/normal_text_size" />
</com.simplemobiletools.commons.views.MyTextInputLayout>
</org.fossify.commons.views.MyTextInputLayout>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>

View File

@@ -18,7 +18,7 @@
app:np_selectedTextSize="@dimen/big_text_size"
app:np_textSize="@dimen/big_text_size" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/my_time_picker_colon_one"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -38,7 +38,7 @@
app:np_selectedTextSize="@dimen/big_text_size"
app:np_textSize="@dimen/big_text_size" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/my_time_picker_colon_two"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

View File

@@ -5,12 +5,12 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyRecyclerView
<org.fossify.commons.views.MyRecyclerView
android:id="@+id/select_time_zones_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clipToPadding="false"
android:scrollbars="vertical"
app:layoutManager="com.simplemobiletools.commons.views.MyLinearLayoutManager" />
app:layoutManager="org.fossify.commons.views.MyLinearLayoutManager" />
</RelativeLayout>

View File

@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/alarm_fragment"
android:layout_width="match_parent"
android:layout_height="match_parent">
@@ -10,7 +11,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.simplemobiletools.commons.views.MyRecyclerView
<org.fossify.commons.views.MyRecyclerView
android:id="@+id/alarms_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -18,11 +19,12 @@
android:overScrollMode="ifContentScrolls"
android:paddingBottom="@dimen/fab_list_bottom_padding"
android:scrollbars="none"
app:layoutManager="com.simplemobiletools.commons.views.MyLinearLayoutManager" />
app:layoutManager="org.fossify.commons.views.MyLinearLayoutManager"
tools:listitem="@layout/item_alarm" />
</RelativeLayout>
<com.simplemobiletools.commons.views.MyFloatingActionButton
<org.fossify.commons.views.MyFloatingActionButton
android:id="@+id/alarm_fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

View File

@@ -33,7 +33,7 @@
android:textSize="@dimen/big_text_size"
tools:text="Mon, 1 January" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/clock_alarm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -46,7 +46,7 @@
android:textSize="@dimen/big_text_size"
tools:text="Thu, 8:00" />
<com.simplemobiletools.commons.views.MyRecyclerView
<org.fossify.commons.views.MyRecyclerView
android:id="@+id/time_zones_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -57,11 +57,11 @@
android:paddingBottom="@dimen/fab_list_bottom_padding"
android:scrollbars="none"
android:visibility="gone"
app:layoutManager="com.simplemobiletools.commons.views.MyLinearLayoutManager" />
app:layoutManager="org.fossify.commons.views.MyLinearLayoutManager" />
</RelativeLayout>
<com.simplemobiletools.commons.views.MyFloatingActionButton
<org.fossify.commons.views.MyFloatingActionButton
android:id="@+id/clock_fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

View File

@@ -6,7 +6,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/stopwatch_time"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -56,7 +56,7 @@
</androidx.constraintlayout.widget.ConstraintLayout>
<com.simplemobiletools.commons.views.MyRecyclerView
<org.fossify.commons.views.MyRecyclerView
android:id="@+id/stopwatch_list"
android:layout_width="0dp"
android:layout_height="0dp"
@@ -64,7 +64,7 @@
android:clipToPadding="false"
android:overScrollMode="ifContentScrolls"
android:scrollbars="vertical"
app:layoutManager="com.simplemobiletools.commons.views.MyLinearLayoutManager"
app:layoutManager="org.fossify.commons.views.MyLinearLayoutManager"
app:layout_constraintBottom_toTopOf="@+id/stopwatch_play_pause"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@@ -98,7 +98,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/stopwatch_play_pause" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/stopwatch_lap"
android:layout_width="wrap_content"
android:layout_height="@dimen/stopwatch_button_small_size"

View File

@@ -6,7 +6,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.simplemobiletools.commons.views.MyRecyclerView
<org.fossify.commons.views.MyRecyclerView
android:id="@+id/timers_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -20,7 +20,7 @@
tools:itemCount="3"
tools:listitem="@layout/item_timer" />
<com.simplemobiletools.commons.views.MyFloatingActionButton
<org.fossify.commons.views.MyFloatingActionButton
android:id="@+id/timer_add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

View File

@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/add_time_zone_holder"
android:layout_width="match_parent"
@@ -9,7 +8,7 @@
android:clickable="true"
android:focusable="true">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/add_time_zone_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -19,9 +18,9 @@
android:maxLines="1"
android:padding="@dimen/activity_margin"
android:textSize="@dimen/bigger_text_size"
tools:text="GMT-11:00 Midway"/>
tools:text="GMT-11:00 Midway" />
<com.simplemobiletools.commons.views.MyAppCompatCheckbox
<org.fossify.commons.views.MyAppCompatCheckbox
android:id="@+id/add_time_zone_checkbox"
android:layout_width="wrap_content"
android:layout_height="match_parent"
@@ -30,6 +29,6 @@
android:layout_alignParentEnd="true"
android:layout_marginEnd="@dimen/activity_margin"
android:clickable="false"
android:gravity="center"/>
android:gravity="center" />
</RelativeLayout>

View File

@@ -1,67 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/alarm_frame"
android:id="@+id/alarm_holder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:focusable="true"
android:foreground="@drawable/selector">
android:foreground="@drawable/selector"
android:paddingHorizontal="@dimen/activity_margin"
android:paddingVertical="@dimen/medium_margin">
<RelativeLayout
android:id="@+id/alarm_holder"
android:layout_width="match_parent"
<org.fossify.commons.views.MyTextView
android:id="@+id/alarm_time"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:paddingStart="@dimen/activity_margin"
android:paddingTop="@dimen/medium_margin"
android:paddingBottom="@dimen/medium_margin">
android:ellipsize="end"
android:includeFontPadding="false"
android:maxLines="1"
android:textSize="@dimen/alarm_text_size"
app:layout_constraintEnd_toStartOf="@id/alarm_switch"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="07:00" />
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/alarm_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:includeFontPadding="false"
android:maxLines="1"
android:textSize="@dimen/alarm_text_size"
tools:text="07:00" />
<org.fossify.commons.views.MyTextView
android:id="@+id/alarm_days"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:ellipsize="end"
android:includeFontPadding="false"
android:maxLines="1"
android:paddingHorizontal="@dimen/tiny_margin"
android:textSize="@dimen/bigger_text_size"
app:layout_constraintEnd_toStartOf="@id/alarm_switch"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/alarm_time"
tools:text="Mon, Tue, Wed, Thu, Fri" />
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/alarm_days"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/alarm_time"
android:layout_toStartOf="@+id/alarm_switch"
android:ellipsize="end"
android:includeFontPadding="false"
android:maxLines="1"
android:paddingStart="@dimen/tiny_margin"
android:textSize="@dimen/bigger_text_size"
tools:text="Mon, Tue, Wed, Thu, Fri" />
<org.fossify.commons.views.MyTextView
android:id="@+id/alarm_label"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:ellipsize="end"
android:includeFontPadding="false"
android:maxLines="1"
android:paddingHorizontal="@dimen/tiny_margin"
android:textSize="@dimen/bigger_text_size"
app:layout_constraintEnd_toStartOf="@id/alarm_switch"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/alarm_days"
tools:text="Good morning!" />
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/alarm_label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/alarm_days"
android:layout_toStartOf="@+id/alarm_switch"
android:ellipsize="end"
android:includeFontPadding="false"
android:maxLines="1"
android:paddingStart="@dimen/tiny_margin"
android:textSize="@dimen/bigger_text_size"
tools:text="Good morning!" />
<org.fossify.commons.views.MyMaterialSwitch
android:id="@+id/alarm_switch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingHorizontal="@dimen/normal_margin"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<com.simplemobiletools.commons.views.MyAppCompatCheckbox
android:id="@+id/alarm_switch"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignTop="@+id/alarm_time"
android:layout_alignBottom="@id/alarm_label"
android:layout_alignParentEnd="true"
android:paddingStart="@dimen/activity_margin"
android:paddingEnd="@dimen/medium_margin" />
</RelativeLayout>
</FrameLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/lap_holder"
@@ -9,7 +8,7 @@
android:gravity="center_horizontal"
android:paddingLeft="@dimen/activity_margin">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/lap_order"
android:layout_width="@dimen/lap_time_size"
android:layout_height="wrap_content"
@@ -19,9 +18,9 @@
app:layout_constraintEnd_toStartOf="@+id/lap_lap_time"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintStart_toStartOf="parent"
tools:text="1"/>
tools:text="1" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/lap_lap_time"
android:layout_width="@dimen/lap_time_size"
android:layout_height="wrap_content"
@@ -31,9 +30,9 @@
app:layout_constraintEnd_toStartOf="@+id/lap_total_time"
app:layout_constraintStart_toEndOf="@+id/lap_order"
app:layout_constraintTop_toTopOf="parent"
tools:text="0.00"/>
tools:text="0.00" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/lap_total_time"
android:layout_width="@dimen/lap_time_size"
android:layout_height="wrap_content"
@@ -44,6 +43,6 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/lap_lap_time"
app:layout_constraintTop_toTopOf="parent"
tools:text="0.00"/>
tools:text="0.00" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -1,8 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<com.simplemobiletools.commons.views.MyCompatRadioButton
xmlns:android="http://schemas.android.com/apk/res/android"
<org.fossify.commons.views.MyCompatRadioButton xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/item_radio_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/activity_margin"
android:paddingTop="@dimen/activity_margin"/>
android:paddingTop="@dimen/activity_margin"
android:paddingBottom="@dimen/activity_margin" />

View File

@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/time_zone_frame"
@@ -16,7 +15,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/time_zone_title"
android:layout_width="wrap_content"
android:layout_height="match_parent"
@@ -27,9 +26,9 @@
android:padding="@dimen/activity_margin"
android:textSize="@dimen/big_text_size"
app:layout_constraintBottom_toBottomOf="parent"
tools:text="GMT-11:00 Midway"/>
tools:text="GMT-11:00 Midway" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/time_zone_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -42,9 +41,9 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_chainStyle="packed"
tools:text="11:00"/>
tools:text="11:00" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/time_zone_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -56,7 +55,7 @@
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/time_zone_time"
tools:text="Mon, 1 January"/>
tools:text="Mon, 1 January" />
</androidx.constraintlayout.widget.ConstraintLayout>
</FrameLayout>

View File

@@ -29,7 +29,7 @@
app:layout_constraintTop_toTopOf="parent"
tools:text="00:00" />
<com.simplemobiletools.commons.views.MyTextView
<org.fossify.commons.views.MyTextView
android:id="@+id/timer_label"
android:layout_width="0dp"
android:layout_height="wrap_content"

View File

@@ -56,7 +56,7 @@
android:layout_toEndOf="@+id/config_analogue_bg_color"
android:background="@drawable/widget_config_seekbar_background">
<com.simplemobiletools.commons.views.MySeekBar
<org.fossify.commons.views.MySeekBar
android:id="@+id/config_analogue_bg_seekbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"

View File

@@ -77,7 +77,7 @@
android:layout_toEndOf="@+id/config_digital_bg_color"
android:background="@drawable/widget_config_seekbar_background">
<com.simplemobiletools.commons.views.MySeekBar
<org.fossify.commons.views.MySeekBar
android:id="@+id/config_digital_bg_seekbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"

View File

@@ -5,17 +5,17 @@
android:id="@+id/sort"
android:icon="@drawable/ic_sort_vector"
android:title="@string/sort_by"
app:showAsAction="always" />
app:showAsAction="ifRoom" />
<item
android:id="@+id/settings"
android:icon="@drawable/ic_settings_cog_vector"
android:title="@string/settings"
app:showAsAction="always" />
app:showAsAction="ifRoom" />
<item
android:id="@+id/about"
android:icon="@drawable/ic_info_vector"
android:title="@string/about"
app:showAsAction="always" />
app:showAsAction="never" />
<item
android:id="@+id/more_apps_from_us"
android:title="@string/more_apps_from_us"

Some files were not shown because too many files have changed in this diff Show More