diff --git a/opentasks/build.gradle b/opentasks/build.gradle index 4e0a57868a32ad5c642c91f247c69a98d5ed73d8..8df92946a239af50be0fa888624c9111a731382d 100644 --- a/opentasks/build.gradle +++ b/opentasks/build.gradle @@ -57,6 +57,9 @@ android { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } + aaptOptions{ + additionalParameters '-I', 'opentasks/e-ui-sdk.jar' + } } dependencies { @@ -89,6 +92,8 @@ dependencies { androidTestImplementation deps.support_test_runner androidTestImplementation deps.support_test_rules implementation project(path: ':opentaskspal') + compileOnly files("e-ui-sdk.jar") + } if (project.hasProperty('PLAY_STORE_SERVICE_ACCOUNT_CREDENTIALS')) { diff --git a/opentasks/e-ui-sdk.jar b/opentasks/e-ui-sdk.jar new file mode 100644 index 0000000000000000000000000000000000000000..222953d20421211ecc08ca2e2f16e735263d2f58 Binary files /dev/null and b/opentasks/e-ui-sdk.jar differ diff --git a/opentasks/src/main/java/org/dmfs/tasks/AboutActivity.java b/opentasks/src/main/java/org/dmfs/tasks/AboutActivity.java index 0cfb0dbdf57c862aa9b6fcc6af16d66cfecd945a..832836b0a2d61daae1796164f9a917fb1a3cb3de 100644 --- a/opentasks/src/main/java/org/dmfs/tasks/AboutActivity.java +++ b/opentasks/src/main/java/org/dmfs/tasks/AboutActivity.java @@ -1,11 +1,29 @@ package org.dmfs.tasks; +import android.app.ActionBar; +import android.content.Context; +import android.graphics.Color; +import android.graphics.PorterDuff; +import android.graphics.drawable.Drawable; +import android.os.Build; import android.os.Bundle; +import android.text.Html; +import android.widget.TextView; import org.dmfs.tasks.utils.BaseActivity; +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.widget.Toolbar; +import androidx.core.graphics.drawable.DrawableCompat; + +import static org.dmfs.tasks.TaskListActivity.color_default_primary_text; + + public class AboutActivity extends BaseActivity { + + + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -18,8 +36,22 @@ public class AboutActivity extends BaseActivity { .replace(R.id.about_container, new AboutFragment()) .commit(); + getSupportActionBar().setHomeAsUpIndicator(changeBackArrowColor(this, Color.rgb(50, 50, 50))); + getSupportActionBar().getThemedContext(); + } + public static Drawable changeBackArrowColor(Context context, int color) { + String resName; + int res; + + resName = Build.VERSION.SDK_INT >= 23 ? "abc_ic_ab_back_material" : "abc_ic_ab_back_mtrl_am_alpha"; + res = context.getResources().getIdentifier(resName, "drawable", context.getPackageName()); + final Drawable upArrow = context.getResources().getDrawable(res); + upArrow.setColorFilter(color, PorterDuff.Mode.SRC_ATOP); + + return upArrow; + } } diff --git a/opentasks/src/main/java/org/dmfs/tasks/TaskListActivity.java b/opentasks/src/main/java/org/dmfs/tasks/TaskListActivity.java index 0b039e51706dd3bb2e9c0fd5101f32d43dde22a7..51c2f39cb4c54dd408a025db1f7ecd769f5e997b 100644 --- a/opentasks/src/main/java/org/dmfs/tasks/TaskListActivity.java +++ b/opentasks/src/main/java/org/dmfs/tasks/TaskListActivity.java @@ -23,7 +23,9 @@ import android.content.Intent; import android.content.res.ColorStateList; import android.content.res.TypedArray; +import android.graphics.PorterDuff; import android.graphics.drawable.ColorDrawable; +import android.graphics.drawable.Drawable; import android.net.Uri; import android.os.Build; import android.os.Build.VERSION; @@ -39,6 +41,8 @@ import com.google.android.material.floatingactionbutton.FloatingActionButton; import com.google.android.material.tabs.TabLayout; import androidx.appcompat.view.ContextThemeWrapper; +import androidx.core.content.ContextCompat; +import androidx.core.graphics.drawable.DrawableCompat; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; import androidx.core.view.MenuItemCompat; @@ -49,6 +53,7 @@ import androidx.appcompat.widget.SearchView; import androidx.appcompat.widget.SearchView.OnQueryTextListener; import androidx.appcompat.widget.Toolbar; +import android.text.Html; import android.util.Log; import android.util.TypedValue; import android.view.Menu; @@ -58,8 +63,11 @@ import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.view.WindowManager; +import android.widget.EditText; +import android.widget.TextView; import org.dmfs.android.bolts.color.Color; +import org.dmfs.android.bolts.color.colors.AccentColor; import org.dmfs.android.bolts.color.colors.PrimaryColor; import org.dmfs.android.bolts.color.elementary.ValueColor; import org.dmfs.android.retentionmagic.annotations.Retain; @@ -189,7 +197,9 @@ public class TaskListActivity extends BaseActivity implements TaskListFragment.C private FloatingActionButton mFloatingActionButton; public static int ACCENT_COLOR; - + public static int color_default_blue1; + public static int color_default_primary_text; + Toolbar toolbar; @Override protected void onCreate(Bundle savedInstanceState) { @@ -220,7 +230,7 @@ public class TaskListActivity extends BaseActivity implements TaskListFragment.C setContentView(R.layout.activity_task_list); mAppBarLayout = (AppBarLayout) findViewById(R.id.appbar); - Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); mAuthority = AuthorityUtil.taskAuthority(this); @@ -332,9 +342,10 @@ public class TaskListActivity extends BaseActivity implements TaskListFragment.C }); } - ACCENT_COLOR=fetchAccentColor(this); - mTabs.setBackgroundColor(ACCENT_COLOR); - mFloatingActionButton.setBackgroundTintList(ColorStateList.valueOf(darkenColor20(ACCENT_COLOR))); + ACCENT_COLOR=fetchAccentColor(this); + mFloatingActionButton.setBackgroundTintList(ColorStateList.valueOf(darkenColor20(color_default_blue1))); + + this.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); } @@ -633,7 +644,10 @@ public class TaskListActivity extends BaseActivity implements TaskListFragment.C } }); SearchView searchView = (SearchView) MenuItemCompat.getActionView(mSearchItem); - + EditText searchText=(EditText) searchView.findViewById(R.id.search_src_text); + searchText.setHintTextColor(getResources().getColor(R.color.dark_gray)); + searchText.setTextColor(getResources().getColor(R.color.color_default_primary_text)); + searchText.setBackground(ContextCompat.getDrawable(this, R.drawable.rounded_edittext)); SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); if (null != searchManager) { searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); @@ -707,15 +721,16 @@ public class TaskListActivity extends BaseActivity implements TaskListFragment.C * get Accent color from OS * */ private int fetchAccentColor(Context context) { +// +// TypedValue typedValue = new TypedValue(); +// ContextThemeWrapper contextThemeWrapper = new ContextThemeWrapper(this, +// android.R.style.Theme_DeviceDefault); +// contextThemeWrapper.getTheme().resolveAttribute(android.R.attr.colorAccent, +// typedValue, true); +// int color_accent = typedValue.data; +// Log.e("TAG", "accent Colour #"+Integer.toHexString(color_accent)); - TypedValue typedValue = new TypedValue(); - ContextThemeWrapper contextThemeWrapper = new ContextThemeWrapper(this, - android.R.style.Theme_DeviceDefault); - contextThemeWrapper.getTheme().resolveAttribute(android.R.attr.colorAccent, - typedValue, true); - int color_accent = typedValue.data; - Log.e("TAG", "accent Colour #"+Integer.toHexString(color_accent)); - +/* //change toolbar color getSupportActionBar().setBackgroundDrawable( new ColorDrawable(color_accent)); @@ -727,8 +742,16 @@ public class TaskListActivity extends BaseActivity implements TaskListFragment.C window.setStatusBarColor(darkenColor(color_accent)); } - - return color_accent; +*/ + color_default_primary_text=ContextCompat.getColor(context, R.color.color_default_primary_text); + ACCENT_COLOR=ContextCompat.getColor(context, R.color.accent); + color_default_blue1=ContextCompat.getColor(context, R.color.color_default_blue1); + //getSupportActionBar().setBackgroundDrawable(new ColorDrawable(color_accent)); + getSupportActionBar().getThemedContext(); + toolbar.setTitleTextColor(color_default_primary_text); + setOverflowButtonColor(toolbar, color_default_primary_text); + + return ACCENT_COLOR; } @ColorInt int darkenColor(@ColorInt int color) { @@ -743,4 +766,13 @@ public class TaskListActivity extends BaseActivity implements TaskListFragment.C hsv[2] *= 0.6f; return android.graphics.Color.HSVToColor(hsv); } + + public static void setOverflowButtonColor(final Toolbar toolbar, final int color) { + Drawable drawable = toolbar.getOverflowIcon(); + if(drawable != null) { + drawable = DrawableCompat.wrap(drawable); + DrawableCompat.setTint(drawable.mutate(), color); + toolbar.setOverflowIcon(drawable); + } + } } diff --git a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByDueDate.java b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByDueDate.java index 12061354dbc7a37c45bdb6c9bc69150a93869bf7..7d6602ba57a40fb2c56b415346cc7a5c7e68aabb 100644 --- a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByDueDate.java +++ b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByDueDate.java @@ -180,7 +180,7 @@ public class ByDueDate extends AbstractGroupingFactory if (title != null) { title.setText(getTitle(cursor, view.getContext())); - title.setTextColor(TaskListActivity.ACCENT_COLOR); + title.setTextColor(TaskListActivity.color_default_primary_text); } // set list elements diff --git a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByList.java b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByList.java index 3c4cea3e0cc8e14940783bfc3a3be80365764731..71e98c60d8afeb7e671ea4933671408f31f7d66b 100644 --- a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByList.java +++ b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByList.java @@ -173,7 +173,7 @@ public class ByList extends AbstractGroupingFactory if (title != null) { title.setText(getTitle(cursor, view.getContext())); - title.setTextColor(TaskListActivity.ACCENT_COLOR); + title.setTextColor(TaskListActivity.color_default_primary_text); } // set list account diff --git a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByPriority.java b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByPriority.java index a294112634cca70abe834ade39c020548925c885..89c52a3db14a453a58aa69d8df83dd8135bed855 100644 --- a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByPriority.java +++ b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByPriority.java @@ -165,7 +165,7 @@ public class ByPriority extends AbstractGroupingFactory if (title != null) { title.setText(getTitle(cursor, view.getContext())); - title.setTextColor(TaskListActivity.ACCENT_COLOR); + title.setTextColor(TaskListActivity.color_default_primary_text); } // set list elements diff --git a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByProgress.java b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByProgress.java index 8b01da71896553803815e8ba73925694a6ef4f54..1816e278d4278a79313e3723e5f1b297f742e882 100644 --- a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByProgress.java +++ b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByProgress.java @@ -158,7 +158,7 @@ public class ByProgress extends AbstractGroupingFactory if (title != null) { title.setText(getTitle(cursor, view.getContext())); - title.setTextColor(TaskListActivity.ACCENT_COLOR); + title.setTextColor(TaskListActivity.color_default_primary_text); } // set list elements diff --git a/opentasks/src/main/java/org/dmfs/tasks/groupings/BySearch.java b/opentasks/src/main/java/org/dmfs/tasks/groupings/BySearch.java index 36f01ffbe250fb4fdb55e56074b4917429666ce3..f3079bedda9e1b9735eb1d372b0a66c50b7c1e0b 100644 --- a/opentasks/src/main/java/org/dmfs/tasks/groupings/BySearch.java +++ b/opentasks/src/main/java/org/dmfs/tasks/groupings/BySearch.java @@ -173,7 +173,7 @@ public class BySearch extends AbstractGroupingFactory if (title != null) { title.setText(groupTitle); - title.setTextColor(TaskListActivity.ACCENT_COLOR); + title.setTextColor(TaskListActivity.color_default_primary_text); } // set search time diff --git a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByStartDate.java b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByStartDate.java index 6d9163d0b7e9bae64912a4e334c6f22765af4f6f..516a01b8a75268427071ace9d4b8dd5b2316d576 100644 --- a/opentasks/src/main/java/org/dmfs/tasks/groupings/ByStartDate.java +++ b/opentasks/src/main/java/org/dmfs/tasks/groupings/ByStartDate.java @@ -189,7 +189,7 @@ public class ByStartDate extends AbstractGroupingFactory if (title != null) { title.setText(getTitle(cursor, view.getContext())); - title.setTextColor(TaskListActivity.ACCENT_COLOR); + title.setTextColor(TaskListActivity.color_default_primary_text); } // set list elements diff --git a/opentasks/src/main/res/drawable/rounded_edittext.xml b/opentasks/src/main/res/drawable/rounded_edittext.xml new file mode 100644 index 0000000000000000000000000000000000000000..99f06d559eb996702a9272482447b010380ee7c8 --- /dev/null +++ b/opentasks/src/main/res/drawable/rounded_edittext.xml @@ -0,0 +1,13 @@ + + + + + + + + \ No newline at end of file diff --git a/opentasks/src/main/res/layout/activity_task_list.xml b/opentasks/src/main/res/layout/activity_task_list.xml index afba29584992bfb98ae17bb1bfd7ef9762d14b32..59f732902903791deb65ad43fdffc4bc46a16ecc 100644 --- a/opentasks/src/main/res/layout/activity_task_list.xml +++ b/opentasks/src/main/res/layout/activity_task_list.xml @@ -21,7 +21,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" app:tabGravity="fill" - app:tabIndicatorColor="@android:color/white" + app:tabIndicatorColor="@color/color_default_blue1" + app:tabIconTint="@color/color_default_gray2" app:tabIndicatorHeight="8dp" app:tabMode="fixed"/> diff --git a/opentasks/src/main/res/values/colors.xml b/opentasks/src/main/res/values/colors.xml index e4a3edee646cf99600e51749779b2d602cd45652..f72bd5c457cf222525da99272084f09c71f697e7 100644 --- a/opentasks/src/main/res/values/colors.xml +++ b/opentasks/src/main/res/values/colors.xml @@ -37,11 +37,15 @@ #ff00ddff #f44336 - - #FF009688 - #FF00796B - #FFFF5722 - + + @lineageos.platform:color/color_default_foreground + @lineageos.platform:color/color_default_foreground + @lineageos.platform:color/color_default_accent + @lineageos.platform:color/color_default_primary_text + @lineageos.platform:color/color_default_secondary_text + @lineageos.platform:color/color_default_background + @lineageos.platform:color/color_default_blue1 + @lineageos.platform:color/color_default_gray2 \ No newline at end of file diff --git a/opentasks/src/main/res/values/styles.xml b/opentasks/src/main/res/values/styles.xml index 8d477619d6e04272516b0033fd594df4a15489f2..6bae1c64f3457c86992a18362f3a714e57d4ab37 100644 --- a/opentasks/src/main/res/values/styles.xml +++ b/opentasks/src/main/res/values/styles.xml @@ -3,15 +3,20 @@ + +