From 76df373c16dd1371dc1335b7cb9111e0538ef101 Mon Sep 17 00:00:00 2001 From: Roman Date: Tue, 3 Dec 2019 18:10:01 +0300 Subject: [PATCH] Fixed calendar with Saturday as the first day of the week. --- README.md | 2 +- .../bz/kakadu/calendar/example/MainActivity.java | 12 ++++++++---- build.gradle | 4 ++-- calendarpro/build.gradle | 2 +- .../src/main/java/bz/kakadu/calendar/MonthView.java | 8 +++++--- gradle/wrapper/gradle-wrapper.properties | 2 +- 6 files changed, 18 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index cd13600..f71aecb 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ repositories { } dependencies { - implementation 'com.github.RomanTsarou:calendar-pro:1.0.1' + implementation 'com.github.RomanTsarou:calendar-pro:1.0.2' } ``` diff --git a/app/src/main/java/bz/kakadu/calendar/example/MainActivity.java b/app/src/main/java/bz/kakadu/calendar/example/MainActivity.java index 5a2498a..6337e7d 100644 --- a/app/src/main/java/bz/kakadu/calendar/example/MainActivity.java +++ b/app/src/main/java/bz/kakadu/calendar/example/MainActivity.java @@ -31,10 +31,14 @@ protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.activity_main); CalendarViewPager monthView = findViewById(R.id.monthView); rangeCellDecoration = new RangeCellDecoration(); - Day day1 = Day.today().add(-10); - Day day2 = Day.today().add(50); - rangeCellDecoration.setRangeBounds(day1, day2); - monthView.setCurrentMonth(day1, false); + rangeCellDecoration.setRangeBounds( + Day.today().add(-1), + Day.today().add(14) + ); + rangeCellDecoration.setRange( + Day.today(), + Day.today().add(3)); + monthView.setCurrentMonth(Day.today(), false); monthView.addDecoration(rangeCellDecoration); monthView.onDayClickListener = rangeCellDecoration; } diff --git a/build.gradle b/build.gradle index 55bd06b..dd05128 100644 --- a/build.gradle +++ b/build.gradle @@ -7,7 +7,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.4.0' + classpath 'com.android.tools.build:gradle:3.5.2' classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' } } @@ -22,4 +22,4 @@ allprojects { task clean(type: Delete) { delete rootProject.buildDir -} +} \ No newline at end of file diff --git a/calendarpro/build.gradle b/calendarpro/build.gradle index 4e7d74f..abfcba7 100644 --- a/calendarpro/build.gradle +++ b/calendarpro/build.gradle @@ -7,7 +7,7 @@ android { defaultConfig { minSdkVersion 21 targetSdkVersion 28 - versionCode 1 + versionCode 2 versionName "1.0.$versionCode" archivesBaseName = "calendar-pro" } diff --git a/calendarpro/src/main/java/bz/kakadu/calendar/MonthView.java b/calendarpro/src/main/java/bz/kakadu/calendar/MonthView.java index baf5ff9..10d1018 100644 --- a/calendarpro/src/main/java/bz/kakadu/calendar/MonthView.java +++ b/calendarpro/src/main/java/bz/kakadu/calendar/MonthView.java @@ -253,9 +253,11 @@ public void setMonth(int month, int year) { mCalendar.set(Calendar.DAY_OF_MONTH, 1); int firstDayOffset = mCalendar.get(Calendar.DAY_OF_WEEK) - mCalendar.getFirstDayOfWeek(); - if (firstDayOffset == -1) { - firstDayOffset = 6; + if (firstDayOffset < 0) { + firstDayOffset = 7 + firstDayOffset; } + + mWeekCount = mCalendar.getActualMaximum(Calendar.WEEK_OF_MONTH); int daysCount = mCalendar.getActualMaximum(Calendar.DATE); resetCells(); @@ -263,7 +265,7 @@ public void setMonth(int month, int year) { for (int i = 0; i < daysCount; i++) { mCalendar.set(Calendar.DATE, i + 1); - cell = mDayItems[i + firstDayOffset]; + cell = mDayItems[i + firstDayOffset];//FIXME cell.isVisible = true; cell.day.set(mCalendar); cell.value = String.valueOf(cell.day.getDate()); diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 3182edd..5525f10 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip \ No newline at end of file