Commit Graph

331 Commits

Author SHA1 Message Date
Alinson Xavier
50a8aece6f Move expensive call to background thread 2016-04-04 08:18:59 -04:00
Alinson Xavier
132ce36a57 More detailed logs in case getFilesDir fails 2016-04-04 07:58:07 -04:00
Alinson Xavier
e2e9e2e27a Remove debug code 2016-04-04 06:54:12 -04:00
Alinson Xavier
83db9fe2f2 Hide progress bar on startup 2016-04-04 06:46:16 -04:00
Alinson Xavier
9891139b5a Fix tests on ICS 2016-04-04 06:43:42 -04:00
Alinson Xavier
cbc8cbfea3 Fix scores with null habit 2016-04-04 06:02:56 -04:00
Alinson Xavier
96c46b655d Minor refactoring 2016-04-04 05:43:07 -04:00
Alinson Xavier
0de52d4fa3 BaseTask: move register/unregister to onPre/PostExecute 2016-04-04 05:42:27 -04:00
Alinson Xavier
c51b1fd399 Remove progress bar; switch to BaseTask 2016-04-03 07:51:54 -04:00
Alinson Xavier
eb8dd1d450 Simplify and optimize loading time of ShowHabitFragment 2016-04-03 07:46:08 -04:00
Alinson Xavier
357646152f Use postInvalidate instead of invalidate 2016-04-03 07:27:37 -04:00
Alinson Xavier
ae5be202b2 Add convenience methods for tracing 2016-04-03 07:27:16 -04:00
Alinson Xavier
cc3e2153d0 Allow BaseTask to publish integer progress 2016-04-03 07:26:40 -04:00
Alinson Xavier
7433a2413d Refactor BaseTask interface 2016-04-03 06:45:10 -04:00
Alinson Xavier
1cd8eb6849 NumberView: do not request layout on setNumber 2016-04-03 05:11:45 -04:00
Alinson Xavier
2d2bb8b4ed Render widgets in background 2016-04-02 13:32:04 -04:00
Alinson Xavier
e476096ae1 Fix view tests 2016-04-02 11:47:28 -04:00
Alinson Xavier
e2c814a982 Fix ShowHabitFragment and HistoryEditorDialog 2016-04-02 10:48:33 -04:00
Alinson Xavier
4fcaa68baf Throw exception when slow methods are executed on the main thread 2016-04-02 10:27:45 -04:00
Alinson Xavier
02e45dbe27 Rename DialogHelper to UIHelper 2016-04-02 10:14:21 -04:00
Alinson Xavier
bf6562f854 Update views on background thread 2016-04-01 17:50:14 -04:00
Alinson Xavier
3c927e009a Improve performance of Score computation 2016-04-01 17:49:17 -04:00
Alinson Xavier
a9bcae0f2f Clean up CheckmarkView 2016-04-01 17:24:12 -04:00
Alinson Xavier
bc54f3f916 Improve performance of toggleCheckmark 2016-04-01 16:21:22 -04:00
Alinson Xavier
5e0422848b Add tests for EditHabitCommand 2016-03-31 07:54:00 -04:00
Alinson Xavier
b2f2d4ad28 Add tests for UnarchiveHabitsCommand 2016-03-31 07:24:43 -04:00
Alinson Xavier
4dc8201dcb Add tests for CreateHabitCommand 2016-03-31 07:20:20 -04:00
Alinson Xavier
f24e300b40 Implement tests for Archive and ChangeColor commands 2016-03-31 07:11:24 -04:00
Alinson Xavier
72f5ca5531 Add tests for NumberView 2016-03-31 06:03:16 -04:00
Alinson Xavier
f9da90a93a Add tests for HabitStreakView 2016-03-30 21:02:05 -04:00
Alinson Xavier
96c6a97ad0 Add tests for HabitScoreView 2016-03-30 19:46:37 -04:00
Alinson Xavier
20469789ea Add tests for HabitFrequencyView 2016-03-30 18:41:00 -04:00
Alinson Xavier
d45a4445cc Minor changes to HabitHistoryView rendering; enable haptic feedback 2016-03-30 12:25:24 -04:00
Alinson Xavier
bc331d0a4d Write tests for HabitHistoryView 2016-03-30 08:28:21 -04:00
Alinson Xavier
2ba7246e5f Refactor Tasks for better testability 2016-03-30 08:28:06 -04:00
Alinson Xavier
c091116105 Compute padding/margins more precisely on CheckmarkView 2016-03-28 20:06:32 -04:00
Alinson Xavier
285f79ed95 Add tests for CheckmarkView 2016-03-26 20:11:17 -04:00
Alinson Xavier
2c62e1578a Create base test class for custom views 2016-03-26 19:25:50 -04:00
Alinson Xavier
b4c2d2237a Draw month name on the following column.
This reverts commit f9377e17. See #55 for reason.
2016-03-26 08:57:18 -04:00
Alinson Xavier
d14fbbd130 Make streak colors consistent 2016-03-26 08:49:02 -04:00
Alinson Xavier
e2c99d745e Improve visualization of streaks
Closes #20
2016-03-26 08:27:23 -04:00
Alinson Xavier
1ef4f8d456 Use system haptic feedback instead of custom vibration; enable on short press
Closes #66
2016-03-25 14:39:57 -04:00
Alinson Xavier
6c810ee7a3 Allow user to send bug report from settings screen 2016-03-25 14:39:57 -04:00
Alinson Xavier
62df660079 Implement UI tests for import/export and help 2016-03-25 08:10:10 -04:00
Alinson Xavier
790beb185a Do not save backup when importing Loop DB 2016-03-25 08:09:33 -04:00
Alinson Xavier
59c0af17d7 Use application context to initialize ActiveAndroid 2016-03-25 07:09:41 -04:00
Alinson Xavier
28dad560a6 Write tests for CSV exporter 2016-03-25 07:09:06 -04:00
Alinson Xavier
9e410f8395 Refactor and write tests for IO tasks 2016-03-25 06:18:07 -04:00
Alinson Xavier
3c595bc79d Add null check on DatabaseHelper 2016-03-24 21:51:02 -04:00
Alinson Xavier
1120f56dd4 Write tests for CSV export 2016-03-24 21:36:41 -04:00
Alinson Xavier
90a3964f0f Close database 2016-03-24 18:39:49 -04:00
Alinson Xavier
6c05366f0f Remove illegal characters from filename 2016-03-24 18:39:32 -04:00
Alinson Xavier
dcc771abe7 Chose external dir better 2016-03-24 18:39:14 -04:00
Alinson Xavier
743431ef67 Refactor DatabaseHelper; write tests for data import 2016-03-24 06:59:41 -04:00
Alinson Xavier
d5fc1a6886 Allow user to import full database
Closes #67
2016-03-23 19:21:06 -04:00
Alinson Xavier
ad391fa791 Remove extra permissions; better organize files dir 2016-03-23 18:50:02 -04:00
Alinson Xavier
e8bbae8ef9 Allow user to export a full copy of the database 2016-03-23 18:01:25 -04:00
Alinson Xavier
c9793df7c7 Reorganize files 2016-03-23 17:20:26 -04:00
Alinson Xavier
e6b7b8b590 Export all habits as CSV from the settings menu
Closes #28
2016-03-22 22:54:02 -04:00
Alinson Xavier
2d675ed9b0 Use DB transaction to perform import 2016-03-22 22:54:02 -04:00
Alinson Xavier
1db2f69f05 Import data from HabitBull
Closes #44
2016-03-22 22:54:02 -04:00
Alinson Xavier
49a80faca3 Trap all exceptions 2016-03-22 22:54:02 -04:00
Alinson Xavier
581197be03 Import data from Tickmate and Rewire
Closes #36, closes #41
2016-03-22 22:53:16 -04:00
Alinson Xavier
dfe5c4954e Refactor CSVExporter 2016-03-21 06:25:48 -04:00
Alinson Xavier
a0582b65d5 Merge tag 'v1.3.3' into dev
Version 1.3.3
2016-03-20 17:55:16 -04:00
Alinson Xavier
f9377e1768 Draw month name on the correct column
Fixes #55
2016-03-20 17:10:57 -04:00
Alinson Xavier
ae0dad9120 Use DateHelper instead of instantiating GregorianCalendar directly
Fixes #58
2016-03-20 17:06:22 -04:00
Alinson Xavier
e7148abc2e Open statistics page when user taps on widget
Closes #19
2016-03-20 08:36:16 -04:00
Alinson Xavier
2d87076a48 Change the way score are grouped 2016-03-20 08:19:57 -04:00
Alinson Xavier
7da4ddf91b Allow user to change score view interval
Closes #10
2016-03-20 08:06:12 -04:00
Alinson Xavier
e4e8d77acc Add link to FAQ
Closes #24
2016-03-19 13:30:04 -04:00
Alinson Xavier
7945a5faf9 Set default habit frequency to daily 2016-03-19 11:58:25 -04:00
Alinson Xavier
3f7d25461d Wake up device in Doze mode 2016-03-19 10:19:28 -04:00
Alinson Xavier
c3ff1fbe03 Add quick selection for commonly used habit frequencies
Closes #25
2016-03-19 09:46:42 -04:00
Alinson Xavier
536c095f23 Merge tag 'v1.3.2' into dev
Version 1.3.2
2016-03-18 11:36:48 -04:00
Alinson Xavier
21aa658acc Fix crash when input is empty 2016-03-18 11:25:34 -04:00
Alinson Xavier
e17667d85d Fix small layout issue on RingView 2016-03-18 11:25:19 -04:00
Alinson Xavier
326cb8f73f Minor changes to javadoc and method visibility 2016-03-18 10:42:47 -04:00
Alinson Xavier
b5bc347624 Use default instead of null for reminderDays 2016-03-18 07:43:11 -04:00
Alinson Xavier
55c058ff42 Minor spelling mistakes 2016-03-18 07:24:26 -04:00
Alinson Xavier
0921f9346e Refactor and write docs for Score and ScoreList 2016-03-18 07:16:31 -04:00
Alinson Xavier
eb017bf99b Write missing tests and docs for RepetitionList 2016-03-17 06:49:11 -04:00
Alinson Xavier
79b6ef8200 Improve null check for Checkmark and CheckmarkList 2016-03-17 06:39:29 -04:00
Alinson Xavier
f5e4a88415 Implement missing tests for Habit; remove some dead code 2016-03-17 06:20:52 -04:00
Alinson Xavier
075b7812eb Refactor and write documentation for Habit 2016-03-16 07:49:40 -04:00
Alinson Xavier
3d42505fb9 Merge tag 'v1.3.1' into dev 2016-03-15 20:38:51 -04:00
Alinson Xavier
851cae3662 Show error message on widget when habit not found
Fixes #35
2016-03-15 20:25:47 -04:00
Alinson Xavier
7778c5fb21 Check for null on notifications 2016-03-15 20:17:15 -04:00
Alinson Xavier
ef847dac17 Use StaticLayout to draw RingView label
Fixes #29
2016-03-15 19:56:14 -04:00
Alinson Xavier
8102c18c67 Use long for millisecondsInOneDay
Fixes #34
2016-03-15 19:55:50 -04:00
Alinson Xavier
ffdc923268 Make labels more clear and customizable 2016-03-15 06:10:39 -04:00
Alinson Xavier
9232378d04 Refactor RingView; make text size consistent 2016-03-15 05:30:27 -04:00
Alinson Xavier
babf7d64f0 Display repetition count for last week, month, etc
Closes #21
2016-03-14 19:07:32 -04:00
Alinson Xavier
18abb2038f Check if habit is null on BaseWidgetProvider 2016-03-14 14:54:43 -04:00
Alinson Xavier
f7f4b5eeb0 Simplify code for drawing header 2016-03-14 14:35:57 -04:00
Alinson Xavier
45a7433773 Use StaticLayout to draw RingView label
Fixes #29
2016-03-14 13:34:21 -04:00
Alinson Xavier
1a18bb939d Refactor and write unit tests for RepetitionList 2016-03-14 07:39:43 -04:00
Alinson Xavier
144524e53b Refactor and write tests for checkmarks 2016-03-14 07:39:43 -04:00
Alinson Xavier
3d1c53396c Allow date to be fixed at a certain timestamp 2016-03-14 07:39:43 -04:00
Alinson Xavier
a2c2a5531a Use temporary database for tests 2016-03-14 07:39:43 -04:00
Alinson Xavier
d326be1224 Reintroduce longClick hack 2016-03-12 05:17:55 -05:00
Alinson Xavier
1d74359c06 Update widgets in background 2016-03-11 15:07:56 -05:00
Alinson Xavier
51e8c2f111 Implement basic user interface tests 2016-03-11 12:39:59 -05:00
Alinson Xavier
84d5c2aac6 Remove longClick hack 2016-03-11 12:26:56 -05:00
Alinson Xavier
2b3b423fa3 Show color button even for a single habit 2016-03-11 12:26:34 -05:00
Alinson Xavier
3b28c37c5e Rebuild order after commit 2016-03-11 12:26:13 -05:00
Alinson Xavier
34c0758308 Remove debug code 2016-03-10 05:49:34 -05:00
Alinson Xavier
85963ae061 Add frequency widget 2016-03-10 05:43:56 -05:00
Alinson Xavier
59a2f31a73 Fix timezone issues; rename class to HabitFrequencyView 2016-03-10 05:25:22 -05:00
Alinson Xavier
cea5241135 Implement weekday frequency view 2016-03-09 08:23:55 -05:00
Alinson Xavier
7784fc5c75 Add broadcast receiver to ShowHabitActivity 2016-03-08 22:13:47 -05:00
Alinson Xavier
6dd017f33e Refresh also main activity when history editor closes 2016-03-08 21:57:42 -05:00
Alinson Xavier
c8cd9f85f6 Remove hardcoded string 2016-03-08 21:50:42 -05:00
Alinson Xavier
d038bdb741 Update widgets after history editor closes 2016-03-08 21:50:10 -05:00
Alinson Xavier
f55e8d2c85 Merge branch 'feature/history-editor' into dev
Closes #14
2016-03-08 21:33:27 -05:00
Alinson Xavier
f8dc1d9eae Force rebuild of scores 2016-03-08 21:30:09 -05:00
Alinson Xavier
85393b0d40 Handle configuration changes 2016-03-08 21:22:59 -05:00
Alinson Xavier
75599ad20c Fix timezone issues 2016-03-08 20:58:29 -05:00
Alinson Xavier
c6b948cbf5 Save changes on configuration change
Fixes #16
2016-03-08 18:16:34 -05:00
Alinson Xavier
5b151805ff Make HistoryView not editable by default 2016-03-08 07:56:40 -05:00
Alinson Xavier
aa86826bdb Refresh data after closing history editor 2016-03-08 07:53:24 -05:00
Alinson Xavier
821373a340 Make history editor functional 2016-03-08 07:35:55 -05:00
Alinson Xavier
8f37e293b1 Implement dummy history editor; add edit history button 2016-03-08 06:58:34 -05:00
Alinson Xavier
2cfc809490 Update copyright notices in all files 2016-03-07 15:54:56 -05:00
Alinson Xavier
ba31dee16a Merge branch 'feature/refactoring' into dev 2016-03-07 08:39:11 -05:00
Alinson Xavier
146c743fb8 Simplify list adapter 2016-03-07 08:03:30 -05:00
Alinson Xavier
0c00e9ec2d Simplify constructor 2016-03-07 07:51:48 -05:00
Alinson Xavier
49af55a2de Move more methods to helper 2016-03-07 07:31:06 -05:00
Alinson Xavier
09f615a5e6 Update translations 2016-03-07 05:39:15 -05:00
Alinson Xavier
9014acc548 Remove settings menu from ShowHabitActivity 2016-03-07 05:39:15 -05:00
Alinson Xavier
e0527dc8ff Implement about screen 2016-03-06 08:34:18 -05:00
Alinson Xavier
ced5b751be Move methods to helper 2016-03-05 08:43:09 -05:00
Alinson Xavier
8a60dda74e Further simplify ListHabitsFragment 2016-03-05 08:33:17 -05:00
Alinson Xavier
c8c4df6ef7 Split ListHabitsFragment into smaller classes 2016-03-05 07:30:04 -05:00
Alinson Xavier
0c0ac9dee5 Minor formatting 2016-03-05 06:48:25 -05:00
Alinson Xavier
fdf6c91929 Use equals instead of operator 2016-03-05 06:48:01 -05:00
Alinson Xavier
08d6e39a17 Throw exception when trying to undo deletion of habit 2016-03-05 06:46:52 -05:00
Alinson Xavier
5e7636d7ff Fix position for new habits 2016-03-04 12:43:55 -05:00
Alinson Xavier
616322cd35 Fix card background (pre-Lollipop) 2016-03-04 12:43:55 -05:00
Alinson Xavier
b4911b6cb4 Save last app version on preferences 2016-03-04 11:13:20 -05:00
Alinson Xavier
f41f877107 Fix data export on older devices 2016-03-04 11:13:20 -05:00
Alinson Xavier
58aa7f6687 Add padding to HabitScoreView 2016-03-04 07:03:05 -05:00
Alinson Xavier
d196e01da0 Update widgets and reminders on background; faster startup 2016-03-04 06:52:31 -05:00
Alinson Xavier
1fbd12a947 Fix incorrect streaks 2016-03-04 06:39:30 -05:00
Alinson Xavier
7493291ade Use average of scores in the interval 2016-03-03 07:38:50 -05:00
Alinson Xavier
39e29dabb8 Add code to save widget preview to file 2016-03-03 06:35:37 -05:00
Alinson Xavier
51d1b93d03 Split Habit class into several smaller classes 2016-03-03 05:22:19 -05:00
Alinson Xavier
8acbc63914 Move commands to their own files 2016-03-03 04:42:40 -05:00
Alinson Xavier
ac8e78ff24 Minor style changes 2016-03-02 10:39:13 -05:00
Alinson Xavier
162ded66d8 Improve widget measuring 2016-03-02 09:52:32 -05:00