diff --git a/app/build.gradle b/app/build.gradle
index dd588569f..efd7bc4d7 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -30,6 +30,7 @@ dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
+ compile 'com.android.support:design:23.4.0'
compile 'joda-time:joda-time:2.9.1'
compile 'com.jakewharton:butterknife:8.0.1'
compile 'com.github.yukuku:ambilwarna:2.0.1'
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 8a556b68f..1fbe6805d 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -33,6 +33,11 @@
android:label="@string/about"
android:screenOrientation="portrait"/>
+
+
iter = json.keys();
+ while (iter.hasNext()) {
+ String key = iter.next();
+ Boolean value = (Boolean) json.get(key);
+ sparseBooleanArray.put(Integer.parseInt(key), value);
+ }
+ } catch (JSONException e) {
+ Log.e(TAG, "deserializeJson " + e.getMessage());
+ }
+ return sparseBooleanArray;
+ }
+}
diff --git a/app/src/main/java/com/simplemobiletools/calendar/activities/DetailsActivity.java b/app/src/main/java/com/simplemobiletools/calendar/activities/DetailsActivity.java
new file mode 100644
index 000000000..acfe956e3
--- /dev/null
+++ b/app/src/main/java/com/simplemobiletools/calendar/activities/DetailsActivity.java
@@ -0,0 +1,42 @@
+package com.simplemobiletools.calendar.activities;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.v7.app.AppCompatActivity;
+import android.view.View;
+import android.widget.TextView;
+
+import com.simplemobiletools.calendar.Constants;
+import com.simplemobiletools.calendar.Formatter;
+import com.simplemobiletools.calendar.R;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import butterknife.OnClick;
+
+public class DetailsActivity extends AppCompatActivity {
+ @BindView(R.id.details_date) TextView mDateTV;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_details);
+ ButterKnife.bind(this);
+
+ final Intent intent = getIntent();
+ if (intent == null)
+ return;
+
+ final String dayCode = intent.getStringExtra(Constants.DAY_CODE);
+ if (dayCode == null || dayCode.isEmpty())
+ return;
+
+ final String date = Formatter.getEventDate(dayCode);
+ mDateTV.setText(date);
+ }
+
+ @OnClick(R.id.details_fab)
+ public void fabClicked(View view) {
+
+ }
+}
diff --git a/app/src/main/java/com/simplemobiletools/calendar/activities/MainActivity.java b/app/src/main/java/com/simplemobiletools/calendar/activities/MainActivity.java
index 97c940315..c2b5983db 100644
--- a/app/src/main/java/com/simplemobiletools/calendar/activities/MainActivity.java
+++ b/app/src/main/java/com/simplemobiletools/calendar/activities/MainActivity.java
@@ -21,9 +21,9 @@ import com.simplemobiletools.calendar.Calendar;
import com.simplemobiletools.calendar.CalendarImpl;
import com.simplemobiletools.calendar.Config;
import com.simplemobiletools.calendar.Constants;
-import com.simplemobiletools.calendar.Day;
-import com.simplemobiletools.calendar.Helpers;
import com.simplemobiletools.calendar.R;
+import com.simplemobiletools.calendar.Utils;
+import com.simplemobiletools.calendar.models.Day;
import org.joda.time.DateTime;
@@ -51,6 +51,8 @@ public class MainActivity extends AppCompatActivity implements Calendar {
private int mTextColor;
private int mWeakTextColor;
+ private int mTextColorWithNote;
+ private int mWeakTextColorWithNote;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -58,13 +60,15 @@ public class MainActivity extends AppCompatActivity implements Calendar {
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
+ mRes = getResources();
Locale.setDefault(Locale.ENGLISH);
- mTextColor = Helpers.adjustAlpha(Color.BLACK, Constants.HIGH_ALPHA);
- mWeakTextColor = Helpers.adjustAlpha(Color.BLACK, Constants.LOW_ALPHA);
+ mTextColor = Utils.adjustAlpha(Color.BLACK, Constants.HIGH_ALPHA);
+ mTextColorWithNote = Utils.adjustAlpha(mRes.getColor(R.color.colorPrimary), Constants.HIGH_ALPHA);
+ mWeakTextColor = Utils.adjustAlpha(Color.BLACK, Constants.LOW_ALPHA);
+ mWeakTextColorWithNote = Utils.adjustAlpha(mRes.getColor(R.color.colorPrimary), Constants.LOW_ALPHA);
mLeftArrow.getDrawable().mutate().setColorFilter(mTextColor, PorterDuff.Mode.SRC_ATOP);
mRightArrow.getDrawable().mutate().setColorFilter(mTextColor, PorterDuff.Mode.SRC_ATOP);
- mRes = getResources();
mPackageName = getPackageName();
mDayTextSize /= mRes.getDisplayMetrics().density;
mTodayTextSize /= mRes.getDisplayMetrics().density;
@@ -73,7 +77,7 @@ public class MainActivity extends AppCompatActivity implements Calendar {
final FrameLayout.LayoutParams params = (FrameLayout.LayoutParams) mCalendarHolder.getLayoutParams();
params.setMargins(mActivityMargin, mActivityMargin, mActivityMargin, mActivityMargin);
- mCalendar = new CalendarImpl(this);
+ mCalendar = new CalendarImpl(this, getApplicationContext());
mCalendar.updateCalendar(new DateTime());
}
@@ -107,6 +111,9 @@ public class MainActivity extends AppCompatActivity implements Calendar {
for (int i = 0; i < len; i++) {
final Day day = days.get(i);
final TextView dayTV = (TextView) findViewById(mRes.getIdentifier("day_" + i, "id", mPackageName));
+ if (dayTV == null)
+ continue;
+
int curTextColor = mWeakTextColor;
float curTextSize = mDayTextSize;
@@ -121,9 +128,25 @@ public class MainActivity extends AppCompatActivity implements Calendar {
dayTV.setText(String.valueOf(day.getValue()));
dayTV.setTextColor(curTextColor);
dayTV.setTextSize(curTextSize);
+
+ dayTV.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ openDetails(day.getCode());
+ }
+ });
}
}
+ private void openDetails(String code) {
+ if (code.isEmpty())
+ return;
+
+ final Intent intent = new Intent(getApplicationContext(), DetailsActivity.class);
+ intent.putExtra(Constants.DAY_CODE, code);
+ startActivity(intent);
+ }
+
@OnClick(R.id.left_arrow)
public void leftArrowClicked() {
mCalendar.getPrevMonth();
diff --git a/app/src/main/java/com/simplemobiletools/calendar/activities/WidgetConfigureActivity.java b/app/src/main/java/com/simplemobiletools/calendar/activities/WidgetConfigureActivity.java
index b2e41c960..2762d0a27 100644
--- a/app/src/main/java/com/simplemobiletools/calendar/activities/WidgetConfigureActivity.java
+++ b/app/src/main/java/com/simplemobiletools/calendar/activities/WidgetConfigureActivity.java
@@ -18,8 +18,8 @@ import android.widget.TextView;
import com.simplemobiletools.calendar.Calendar;
import com.simplemobiletools.calendar.CalendarImpl;
import com.simplemobiletools.calendar.Constants;
-import com.simplemobiletools.calendar.Day;
-import com.simplemobiletools.calendar.Helpers;
+import com.simplemobiletools.calendar.models.Day;
+import com.simplemobiletools.calendar.Utils;
import com.simplemobiletools.calendar.MyWidgetProvider;
import com.simplemobiletools.calendar.R;
@@ -99,7 +99,7 @@ public class WidgetConfigureActivity extends AppCompatActivity implements Calend
mBgSeekBar.setProgress((int) (mBgAlpha * 100));
updateBgColor();
- mCalendar = new CalendarImpl(this);
+ mCalendar = new CalendarImpl(this, getApplicationContext());
mCalendar.updateCalendar(new DateTime());
}
@@ -166,8 +166,8 @@ public class WidgetConfigureActivity extends AppCompatActivity implements Calend
}
private void updateTextColors() {
- mTextColor = Helpers.adjustAlpha(mTextColorWithoutTransparency, Constants.HIGH_ALPHA);
- mWeakTextColor = Helpers.adjustAlpha(mTextColorWithoutTransparency, Constants.LOW_ALPHA);
+ mTextColor = Utils.adjustAlpha(mTextColorWithoutTransparency, Constants.HIGH_ALPHA);
+ mWeakTextColor = Utils.adjustAlpha(mTextColorWithoutTransparency, Constants.LOW_ALPHA);
mLeftArrow.getDrawable().mutate().setColorFilter(mTextColor, PorterDuff.Mode.SRC_ATOP);
mRightArrow.getDrawable().mutate().setColorFilter(mTextColor, PorterDuff.Mode.SRC_ATOP);
@@ -178,7 +178,7 @@ public class WidgetConfigureActivity extends AppCompatActivity implements Calend
}
private void updateBgColor() {
- mBgColor = Helpers.adjustAlpha(mBgColorWithoutTransparency, mBgAlpha);
+ mBgColor = Utils.adjustAlpha(mBgColorWithoutTransparency, mBgAlpha);
mWidgetBackground.setBackgroundColor(mBgColor);
mBgColorPicker.setBackgroundColor(mBgColor);
mSaveBtn.setBackgroundColor(mBgColor);
diff --git a/app/src/main/java/com/simplemobiletools/calendar/models/Day.java b/app/src/main/java/com/simplemobiletools/calendar/models/Day.java
index be6557a4d..6989cd193 100644
--- a/app/src/main/java/com/simplemobiletools/calendar/models/Day.java
+++ b/app/src/main/java/com/simplemobiletools/calendar/models/Day.java
@@ -5,9 +5,9 @@ public class Day {
private final boolean mIsThisMonth;
private final boolean mIsToday;
private final boolean mHasNote;
- private final int mCode;
+ private final String mCode;
- public Day(int value, boolean isThisMonth, boolean isToday, int code, boolean hasNote) {
+ public Day(int value, boolean isThisMonth, boolean isToday, String code, boolean hasNote) {
mValue = value;
mIsThisMonth = isThisMonth;
mIsToday = isToday;
@@ -27,7 +27,7 @@ public class Day {
return mIsToday;
}
- public int getCode() {
+ public String getCode() {
return mCode;
}
diff --git a/app/src/main/res/layout/activity_details.xml b/app/src/main/res/layout/activity_details.xml
new file mode 100644
index 000000000..14b76f248
--- /dev/null
+++ b/app/src/main/res/layout/activity_details.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/mipmap-hdpi/plus.png b/app/src/main/res/mipmap-hdpi/plus.png
new file mode 100644
index 000000000..76f27e6ed
Binary files /dev/null and b/app/src/main/res/mipmap-hdpi/plus.png differ
diff --git a/app/src/main/res/mipmap-mdpi/plus.png b/app/src/main/res/mipmap-mdpi/plus.png
new file mode 100644
index 000000000..193383a11
Binary files /dev/null and b/app/src/main/res/mipmap-mdpi/plus.png differ
diff --git a/app/src/main/res/mipmap-xhdpi/plus.png b/app/src/main/res/mipmap-xhdpi/plus.png
new file mode 100644
index 000000000..d8ef0f451
Binary files /dev/null and b/app/src/main/res/mipmap-xhdpi/plus.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/plus.png b/app/src/main/res/mipmap-xxhdpi/plus.png
new file mode 100644
index 000000000..b97c0e28a
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/plus.png differ
diff --git a/app/src/main/res/mipmap-xxxhdpi/plus.png b/app/src/main/res/mipmap-xxxhdpi/plus.png
new file mode 100644
index 000000000..2bef05958
Binary files /dev/null and b/app/src/main/res/mipmap-xxxhdpi/plus.png differ
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index a6784eb80..0d411a63d 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,6 +1,9 @@
Simple Calendar
+
+ Details
+
About
More simple apps and source code at:\nhttp://simplemobiletools.com