From 183904994f98a116443ed8099ec43e01732baa01 Mon Sep 17 00:00:00 2001 From: "zhudongside@163.com" Date: Tue, 7 Sep 2021 17:10:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90Model=E5=88=86=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 21 + LICENSE | 124 +++ README.md | 19 + doc/xiaomi_note_read_through_report.docx | Bin 0 -> 202582 bytes doc/~$aomi_note_read_through_report.docx | Bin 0 -> 162 bytes src/test01/.gitignore | 15 + src/test01/.idea/.gitignore | 3 + src/test01/.idea/compiler.xml | 6 + src/test01/.idea/gradle.xml | 19 + src/test01/.idea/misc.xml | 16 + src/test01/app/.gitignore | 1 + src/test01/app/build.gradle | 22 + src/test01/app/proguard-rules.pro | 21 + .../test01/ExampleInstrumentedTest.java | 26 + src/test01/app/src/main/AndroidManifest.xml | 150 +++ .../java/net/micode/notes/data/Contact.java | 73 ++ .../java/net/micode/notes/data/Notes.java | 279 +++++ .../notes/data/NotesDatabaseHelper.java | 362 +++++++ .../net/micode/notes/data/NotesProvider.java | 305 ++++++ .../net/micode/notes/gtask/data/MetaData.java | 82 ++ .../net/micode/notes/gtask/data/Node.java | 101 ++ .../net/micode/notes/gtask/data/SqlData.java | 189 ++++ .../net/micode/notes/gtask/data/SqlNote.java | 505 +++++++++ .../net/micode/notes/gtask/data/Task.java | 351 +++++++ .../net/micode/notes/gtask/data/TaskList.java | 343 +++++++ .../exception/ActionFailureException.java | 33 + .../exception/NetworkFailureException.java | 33 + .../notes/gtask/remote/GTaskASyncTask.java | 132 +++ .../notes/gtask/remote/GTaskClient.java | 585 +++++++++++ .../notes/gtask/remote/GTaskManager.java | 800 +++++++++++++++ .../notes/gtask/remote/GTaskSyncService.java | 128 +++ .../java/net/micode/notes/model/Note.java | 253 +++++ .../net/micode/notes/model/WorkingNote.java | 368 +++++++ .../net/micode/notes/tool/BackupUtils.java | 344 +++++++ .../java/net/micode/notes/tool/DataUtils.java | 295 ++++++ .../micode/notes/tool/GTaskStringUtils.java | 113 +++ .../net/micode/notes/tool/ResourceParser.java | 181 ++++ .../micode/notes/ui/AlarmAlertActivity.java | 158 +++ .../micode/notes/ui/AlarmInitReceiver.java | 65 ++ .../net/micode/notes/ui/AlarmReceiver.java | 30 + .../net/micode/notes/ui/DateTimePicker.java | 485 +++++++++ .../micode/notes/ui/DateTimePickerDialog.java | 90 ++ .../net/micode/notes/ui/DropdownMenu.java | 61 ++ .../micode/notes/ui/FoldersListAdapter.java | 80 ++ .../net/micode/notes/ui/NoteEditActivity.java | 873 ++++++++++++++++ .../net/micode/notes/ui/NoteEditText.java | 217 ++++ .../net/micode/notes/ui/NoteItemData.java | 224 ++++ .../micode/notes/ui/NotesListActivity.java | 954 ++++++++++++++++++ .../net/micode/notes/ui/NotesListAdapter.java | 184 ++++ .../net/micode/notes/ui/NotesListItem.java | 122 +++ .../notes/ui/NotesPreferenceActivity.java | 388 +++++++ .../notes/widget/NoteWidgetProvider.java | 132 +++ .../notes/widget/NoteWidgetProvider_2x.java | 47 + .../notes/widget/NoteWidgetProvider_4x.java | 46 + .../src/main/res/color/primary_text_dark.xml | 22 + .../main/res/color/secondary_text_dark.xml | 20 + .../res/drawable-hdpi/bg_btn_set_color.png | Bin 0 -> 3588 bytes .../res/drawable-hdpi/bg_color_btn_mask.png | Bin 0 -> 245 bytes .../main/res/drawable-hdpi/call_record.png | Bin 0 -> 3533 bytes .../app/src/main/res/drawable-hdpi/clock.png | Bin 0 -> 3958 bytes .../app/src/main/res/drawable-hdpi/delete.png | Bin 0 -> 3490 bytes .../res/drawable-hdpi/dropdown_icon.9.png | Bin 0 -> 443 bytes .../main/res/drawable-hdpi/edit_blue.9.png | Bin 0 -> 3524 bytes .../main/res/drawable-hdpi/edit_green.9.png | Bin 0 -> 3565 bytes .../src/main/res/drawable-hdpi/edit_red.9.png | Bin 0 -> 3458 bytes .../res/drawable-hdpi/edit_title_blue.9.png | Bin 0 -> 5100 bytes .../res/drawable-hdpi/edit_title_green.9.png | Bin 0 -> 5627 bytes .../res/drawable-hdpi/edit_title_red.9.png | Bin 0 -> 5061 bytes .../res/drawable-hdpi/edit_title_white.9.png | Bin 0 -> 3866 bytes .../res/drawable-hdpi/edit_title_yellow.9.png | Bin 0 -> 6000 bytes .../main/res/drawable-hdpi/edit_white.9.png | Bin 0 -> 3441 bytes .../main/res/drawable-hdpi/edit_yellow.9.png | Bin 0 -> 3634 bytes .../src/main/res/drawable-hdpi/font_large.png | Bin 0 -> 3161 bytes .../main/res/drawable-hdpi/font_normal.png | Bin 0 -> 3097 bytes .../drawable-hdpi/font_size_selector_bg.9.png | Bin 0 -> 4101 bytes .../src/main/res/drawable-hdpi/font_small.png | Bin 0 -> 3099 bytes .../src/main/res/drawable-hdpi/font_super.png | Bin 0 -> 3188 bytes .../src/main/res/drawable-hdpi/icon_app.png | Bin 0 -> 6887 bytes .../res/drawable-hdpi/list_background.png | Bin 0 -> 567323 bytes .../res/drawable-hdpi/list_blue_down.9.png | Bin 0 -> 4361 bytes .../res/drawable-hdpi/list_blue_middle.9.png | Bin 0 -> 3099 bytes .../res/drawable-hdpi/list_blue_single.9.png | Bin 0 -> 4618 bytes .../main/res/drawable-hdpi/list_blue_up.9.png | Bin 0 -> 3301 bytes .../main/res/drawable-hdpi/list_folder.9.png | Bin 0 -> 5608 bytes .../res/drawable-hdpi/list_footer_bg.9.png | Bin 0 -> 2837 bytes .../res/drawable-hdpi/list_green_down.9.png | Bin 0 -> 4488 bytes .../res/drawable-hdpi/list_green_middle.9.png | Bin 0 -> 3179 bytes .../res/drawable-hdpi/list_green_single.9.png | Bin 0 -> 4728 bytes .../res/drawable-hdpi/list_green_up.9.png | Bin 0 -> 3351 bytes .../res/drawable-hdpi/list_red_down.9.png | Bin 0 -> 4307 bytes .../res/drawable-hdpi/list_red_middle.9.png | Bin 0 -> 3075 bytes .../res/drawable-hdpi/list_red_single.9.png | Bin 0 -> 4565 bytes .../main/res/drawable-hdpi/list_red_up.9.png | Bin 0 -> 3277 bytes .../res/drawable-hdpi/list_white_down.9.png | Bin 0 -> 4305 bytes .../res/drawable-hdpi/list_white_middle.9.png | Bin 0 -> 3042 bytes .../res/drawable-hdpi/list_white_single.9.png | Bin 0 -> 4546 bytes .../res/drawable-hdpi/list_white_up.9.png | Bin 0 -> 3220 bytes .../res/drawable-hdpi/list_yellow_down.9.png | Bin 0 -> 4420 bytes .../drawable-hdpi/list_yellow_middle.9.png | Bin 0 -> 3150 bytes .../drawable-hdpi/list_yellow_single.9.png | Bin 0 -> 4670 bytes .../res/drawable-hdpi/list_yellow_up.9.png | Bin 0 -> 3335 bytes .../main/res/drawable-hdpi/menu_delete.png | Bin 0 -> 3426 bytes .../src/main/res/drawable-hdpi/menu_move.png | Bin 0 -> 3294 bytes .../res/drawable-hdpi/new_note_normal.png | Bin 0 -> 89221 bytes .../res/drawable-hdpi/new_note_pressed.png | Bin 0 -> 90126 bytes .../note_edit_color_selector_panel.png | Bin 0 -> 7030 bytes .../main/res/drawable-hdpi/notification.png | Bin 0 -> 3107 bytes .../main/res/drawable-hdpi/search_result.png | Bin 0 -> 3030 bytes .../src/main/res/drawable-hdpi/selected.png | Bin 0 -> 4959 bytes .../main/res/drawable-hdpi/title_alert.png | Bin 0 -> 3696 bytes .../main/res/drawable-hdpi/title_bar_bg.9.png | Bin 0 -> 5970 bytes .../main/res/drawable-hdpi/widget_2x_blue.png | Bin 0 -> 1946 bytes .../res/drawable-hdpi/widget_2x_green.png | Bin 0 -> 1954 bytes .../main/res/drawable-hdpi/widget_2x_red.png | Bin 0 -> 1892 bytes .../res/drawable-hdpi/widget_2x_white.png | Bin 0 -> 1901 bytes .../res/drawable-hdpi/widget_2x_yellow.png | Bin 0 -> 1978 bytes .../main/res/drawable-hdpi/widget_4x_blue.png | Bin 0 -> 4165 bytes .../res/drawable-hdpi/widget_4x_green.png | Bin 0 -> 4192 bytes .../main/res/drawable-hdpi/widget_4x_red.png | Bin 0 -> 4223 bytes .../res/drawable-hdpi/widget_4x_white.png | Bin 0 -> 4106 bytes .../res/drawable-hdpi/widget_4x_yellow.png | Bin 0 -> 4199 bytes .../app/src/main/res/drawable/new_note.xml | 23 + .../main/res/layout/account_dialog_title.xml | 43 + .../src/main/res/layout/add_account_text.xml | 32 + .../src/main/res/layout/datetime_picker.xml | 56 + .../src/main/res/layout/dialog_edit_text.xml | 23 + .../src/main/res/layout/folder_list_item.xml | 29 + .../app/src/main/res/layout/note_edit.xml | 400 ++++++++ .../main/res/layout/note_edit_list_item.xml | 39 + .../app/src/main/res/layout/note_item.xml | 78 ++ .../app/src/main/res/layout/note_list.xml | 58 ++ .../res/layout/note_list_dropdown_menu.xml | 32 + .../src/main/res/layout/note_list_footer.xml | 24 + .../src/main/res/layout/settings_header.xml | 41 + .../app/src/main/res/layout/widget_2x.xml | 37 + .../app/src/main/res/layout/widget_4x.xml | 39 + .../app/src/main/res/menu/call_note_edit.xml | 48 + .../src/main/res/menu/call_record_folder.xml | 23 + .../app/src/main/res/menu/note_edit.xml | 52 + .../app/src/main/res/menu/note_list.xml | 39 + .../src/main/res/menu/note_list_dropdown.xml | 20 + .../src/main/res/menu/note_list_options.xml | 31 + .../app/src/main/res/menu/sub_folder.xml | 24 + .../app/src/main/res/raw-zh-rCN/introduction | 7 + src/test01/app/src/main/res/raw/introduction | 1 + .../app/src/main/res/values-zh-rCN/arrays.xml | 23 + .../src/main/res/values-zh-rCN/strings.xml | 126 +++ .../app/src/main/res/values-zh-rTW/arrays.xml | 23 + .../src/main/res/values-zh-rTW/strings.xml | 127 +++ src/test01/app/src/main/res/values/arrays.xml | 31 + src/test01/app/src/main/res/values/colors.xml | 20 + src/test01/app/src/main/res/values/dimens.xml | 24 + .../app/src/main/res/values/strings.xml | 135 +++ src/test01/app/src/main/res/values/styles.xml | 69 ++ .../app/src/main/res/xml/preferences.xml | 30 + .../app/src/main/res/xml/searchable.xml | 27 + .../app/src/main/res/xml/widget_2x_info.xml | 23 + .../app/src/main/res/xml/widget_4x_info.xml | 23 + .../com/example/test01/ExampleUnitTest.java | 17 + src/test01/build.gradle | 17 + src/test01/gradle.properties | 19 + src/test01/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + src/test01/gradlew | 185 ++++ src/test01/gradlew.bat | 89 ++ src/test01/settings.gradle | 10 + 166 files changed, 12719 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.md create mode 100644 doc/xiaomi_note_read_through_report.docx create mode 100644 doc/~$aomi_note_read_through_report.docx create mode 100644 src/test01/.gitignore create mode 100644 src/test01/.idea/.gitignore create mode 100644 src/test01/.idea/compiler.xml create mode 100644 src/test01/.idea/gradle.xml create mode 100644 src/test01/.idea/misc.xml create mode 100644 src/test01/app/.gitignore create mode 100644 src/test01/app/build.gradle create mode 100644 src/test01/app/proguard-rules.pro create mode 100644 src/test01/app/src/androidTest/java/com/example/test01/ExampleInstrumentedTest.java create mode 100644 src/test01/app/src/main/AndroidManifest.xml create mode 100644 src/test01/app/src/main/java/net/micode/notes/data/Contact.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/data/Notes.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/data/NotesProvider.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/data/MetaData.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/data/Node.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/data/SqlData.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/data/Task.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/data/TaskList.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/model/Note.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/model/WorkingNote.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/tool/BackupUtils.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/tool/DataUtils.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/tool/ResourceParser.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/DateTimePicker.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/DropdownMenu.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/NoteEditText.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/NoteItemData.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/NotesListActivity.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/NotesListAdapter.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/NotesListItem.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/ui/NotesPreferenceActivity.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_2x.java create mode 100644 src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_4x.java create mode 100644 src/test01/app/src/main/res/color/primary_text_dark.xml create mode 100644 src/test01/app/src/main/res/color/secondary_text_dark.xml create mode 100644 src/test01/app/src/main/res/drawable-hdpi/bg_btn_set_color.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/bg_color_btn_mask.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/call_record.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/clock.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/delete.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/dropdown_icon.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_blue.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_green.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_red.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_title_blue.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_title_green.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_title_red.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_title_white.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_title_yellow.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_white.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/edit_yellow.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/font_large.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/font_normal.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/font_size_selector_bg.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/font_small.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/font_super.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/icon_app.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_background.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_blue_down.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_blue_middle.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_blue_single.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_blue_up.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_folder.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_footer_bg.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_green_down.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_green_middle.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_green_single.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_green_up.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_red_down.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_red_middle.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_red_single.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_red_up.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_white_down.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_white_middle.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_white_single.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_white_up.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_yellow_down.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_yellow_middle.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_yellow_single.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/list_yellow_up.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/menu_delete.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/menu_move.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/new_note_normal.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/new_note_pressed.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/note_edit_color_selector_panel.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/notification.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/search_result.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/selected.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/title_alert.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/title_bar_bg.9.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_2x_blue.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_2x_green.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_2x_red.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_2x_white.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_2x_yellow.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_4x_blue.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_4x_green.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_4x_red.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_4x_white.png create mode 100644 src/test01/app/src/main/res/drawable-hdpi/widget_4x_yellow.png create mode 100644 src/test01/app/src/main/res/drawable/new_note.xml create mode 100644 src/test01/app/src/main/res/layout/account_dialog_title.xml create mode 100644 src/test01/app/src/main/res/layout/add_account_text.xml create mode 100644 src/test01/app/src/main/res/layout/datetime_picker.xml create mode 100644 src/test01/app/src/main/res/layout/dialog_edit_text.xml create mode 100644 src/test01/app/src/main/res/layout/folder_list_item.xml create mode 100644 src/test01/app/src/main/res/layout/note_edit.xml create mode 100644 src/test01/app/src/main/res/layout/note_edit_list_item.xml create mode 100644 src/test01/app/src/main/res/layout/note_item.xml create mode 100644 src/test01/app/src/main/res/layout/note_list.xml create mode 100644 src/test01/app/src/main/res/layout/note_list_dropdown_menu.xml create mode 100644 src/test01/app/src/main/res/layout/note_list_footer.xml create mode 100644 src/test01/app/src/main/res/layout/settings_header.xml create mode 100644 src/test01/app/src/main/res/layout/widget_2x.xml create mode 100644 src/test01/app/src/main/res/layout/widget_4x.xml create mode 100644 src/test01/app/src/main/res/menu/call_note_edit.xml create mode 100644 src/test01/app/src/main/res/menu/call_record_folder.xml create mode 100644 src/test01/app/src/main/res/menu/note_edit.xml create mode 100644 src/test01/app/src/main/res/menu/note_list.xml create mode 100644 src/test01/app/src/main/res/menu/note_list_dropdown.xml create mode 100644 src/test01/app/src/main/res/menu/note_list_options.xml create mode 100644 src/test01/app/src/main/res/menu/sub_folder.xml create mode 100644 src/test01/app/src/main/res/raw-zh-rCN/introduction create mode 100644 src/test01/app/src/main/res/raw/introduction create mode 100644 src/test01/app/src/main/res/values-zh-rCN/arrays.xml create mode 100644 src/test01/app/src/main/res/values-zh-rCN/strings.xml create mode 100644 src/test01/app/src/main/res/values-zh-rTW/arrays.xml create mode 100644 src/test01/app/src/main/res/values-zh-rTW/strings.xml create mode 100644 src/test01/app/src/main/res/values/arrays.xml create mode 100644 src/test01/app/src/main/res/values/colors.xml create mode 100644 src/test01/app/src/main/res/values/dimens.xml create mode 100644 src/test01/app/src/main/res/values/strings.xml create mode 100644 src/test01/app/src/main/res/values/styles.xml create mode 100644 src/test01/app/src/main/res/xml/preferences.xml create mode 100644 src/test01/app/src/main/res/xml/searchable.xml create mode 100644 src/test01/app/src/main/res/xml/widget_2x_info.xml create mode 100644 src/test01/app/src/main/res/xml/widget_4x_info.xml create mode 100644 src/test01/app/src/test/java/com/example/test01/ExampleUnitTest.java create mode 100644 src/test01/build.gradle create mode 100644 src/test01/gradle.properties create mode 100644 src/test01/gradle/wrapper/gradle-wrapper.jar create mode 100644 src/test01/gradle/wrapper/gradle-wrapper.properties create mode 100644 src/test01/gradlew create mode 100644 src/test01/gradlew.bat create mode 100644 src/test01/settings.gradle diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ec2481e --- /dev/null +++ b/.gitignore @@ -0,0 +1,21 @@ +# ---> Vim +# Swap +[._]*.s[a-v][a-z] +!*.svg # comment out if you don't need vector files +[._]*.sw[a-p] +[._]s[a-rt-v][a-z] +[._]ss[a-gi-z] +[._]sw[a-p] + +# Session +Session.vim +Sessionx.vim + +# Temporary +.netrwhist +*~ +# Auto-generated tag files +tags +# Persistent undo +[._]*.un~ + diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..d63dfb7 --- /dev/null +++ b/LICENSE @@ -0,0 +1,124 @@ +木兰宽松许可证, 第2版 + +2020年1月 http://license.coscl.org.cn/MulanPSL2 + +您对“软件”的复制、使用、修改及分发受木兰宽松许可证,第2版(“本许可证”)的如下条款的约束: + +0. 定义 + +“软件” 是指由“贡献”构成的许可在“本许可证”下的程序和相关文档的集合。 + +“贡献” 是指由任一“贡献者”许可在“本许可证”下的受版权法保护的作品。 + +“贡献者” 是指将受版权法保护的作品许可在“本许可证”下的自然人或“法人实体”。 + +“法人实体” 是指提交贡献的机构及其“关联实体”。 + +“关联实体” 是指,对“本许可证”下的行为方而言,控制、受控制或与其共同受控制的机构,此处的控制是指有受控方或共同受控方至少50%直接或间接的投票权、资金或其他有价证券。 + +1. 授予版权许可 + +每个“贡献者”根据“本许可证”授予您永久性的、全球性的、免费的、非独占的、不可撤销的版权许可,您可以复制、使用、修改、分发其“贡献”,不论修改与否。 + +2. 授予专利许可 + +每个“贡献者”根据“本许可证”授予您永久性的、全球性的、免费的、非独占的、不可撤销的(根据本条规定撤销除外)专利许可,供您制造、委托制造、使用、许诺销售、销售、进口其“贡献”或以其他方式转移其“贡献”。前述专利许可仅限于“贡献者”现在或将来拥有或控制的其“贡献”本身或其“贡献”与许可“贡献”时的“软件”结合而将必然会侵犯的专利权利要求,不包括对“贡献”的修改或包含“贡献”的其他结合。如果您或您的“关联实体”直接或间接地,就“软件”或其中的“贡献”对任何人发起专利侵权诉讼(包括反诉或交叉诉讼)或其他专利维权行动,指控其侵犯专利权,则“本许可证”授予您对“软件”的专利许可自您提起诉讼或发起维权行动之日终止。 + +3. 无商标许可 + +“本许可证”不提供对“贡献者”的商品名称、商标、服务标志或产品名称的商标许可,但您为满足第4条规定的声明义务而必须使用除外。 + +4. 分发限制 + +您可以在任何媒介中将“软件”以源程序形式或可执行形式重新分发,不论修改与否,但您必须向接收者提供“本许可证”的副本,并保留“软件”中的版权、商标、专利及免责声明。 + +5. 免责声明与责任限制 + +“软件”及其中的“贡献”在提供时不带任何明示或默示的担保。在任何情况下,“贡献者”或版权所有者不对任何人因使用“软件”或其中的“贡献”而引发的任何直接或间接损失承担责任,不论因何种原因导致或者基于何种法律理论,即使其曾被建议有此种损失的可能性。 + +6. 语言 + +“本许可证”以中英文双语表述,中英文版本具有同等法律效力。如果中英文版本存在任何冲突不一致,以中文版为准。 + +条款结束 + +如何将木兰宽松许可证,第2版,应用到您的软件 + +如果您希望将木兰宽松许可证,第2版,应用到您的新软件,为了方便接收者查阅,建议您完成如下三步: + +1, 请您补充如下声明中的空白,包括软件名、软件的首次发表年份以及您作为版权人的名字; + +2, 请您在软件包的一级目录下创建以“LICENSE”为名的文件,将整个许可证文本放入该文件中; + +3, 请将如下声明文本放入每个源文件的头部注释中。 + +Copyright (c) [Year] [name of copyright holder] +[Software Name] is licensed under Mulan PSL v2. +You can use this software according to the terms and conditions of the Mulan PSL v2. +You may obtain a copy of Mulan PSL v2 at: + http://license.coscl.org.cn/MulanPSL2 +THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, +EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, +MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. +See the Mulan PSL v2 for more details. +Mulan Permissive Software License,Version 2 +Mulan Permissive Software License,Version 2 (Mulan PSL v2) + +January 2020 http://license.coscl.org.cn/MulanPSL2 + +Your reproduction, use, modification and distribution of the Software shall be subject to Mulan PSL v2 (this License) with the following terms and conditions: + +0. Definition + +Software means the program and related documents which are licensed under this License and comprise all Contribution(s). + +Contribution means the copyrightable work licensed by a particular Contributor under this License. + +Contributor means the Individual or Legal Entity who licenses its copyrightable work under this License. + +Legal Entity means the entity making a Contribution and all its Affiliates. + +Affiliates means entities that control, are controlled by, or are under common control with the acting entity under this License, ‘control’ means direct or indirect ownership of at least fifty percent (50%) of the voting power, capital or other securities of controlled or commonly controlled entity. + +1. Grant of Copyright License + +Subject to the terms and conditions of this License, each Contributor hereby grants to you a perpetual, worldwide, royalty-free, non-exclusive, irrevocable copyright license to reproduce, use, modify, or distribute its Contribution, with modification or not. + +2. Grant of Patent License + +Subject to the terms and conditions of this License, each Contributor hereby grants to you a perpetual, worldwide, royalty-free, non-exclusive, irrevocable (except for revocation under this Section) patent license to make, have made, use, offer for sale, sell, import or otherwise transfer its Contribution, where such patent license is only limited to the patent claims owned or controlled by such Contributor now or in future which will be necessarily infringed by its Contribution alone, or by combination of the Contribution with the Software to which the Contribution was contributed. The patent license shall not apply to any modification of the Contribution, and any other combination which includes the Contribution. If you or your Affiliates directly or indirectly institute patent litigation (including a cross claim or counterclaim in a litigation) or other patent enforcement activities against any individual or entity by alleging that the Software or any Contribution in it infringes patents, then any patent license granted to you under this License for the Software shall terminate as of the date such litigation or activity is filed or taken. + +3. No Trademark License + +No trademark license is granted to use the trade names, trademarks, service marks, or product names of Contributor, except as required to fulfill notice requirements in section 4. + +4. Distribution Restriction + +You may distribute the Software in any medium with or without modification, whether in source or executable forms, provided that you provide recipients with a copy of this License and retain copyright, patent, trademark and disclaimer statements in the Software. + +5. Disclaimer of Warranty and Limitation of Liability + +THE SOFTWARE AND CONTRIBUTION IN IT ARE PROVIDED WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL ANY CONTRIBUTOR OR COPYRIGHT HOLDER BE LIABLE TO YOU FOR ANY DAMAGES, INCLUDING, BUT NOT LIMITED TO ANY DIRECT, OR INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING FROM YOUR USE OR INABILITY TO USE THE SOFTWARE OR THE CONTRIBUTION IN IT, NO MATTER HOW IT’S CAUSED OR BASED ON WHICH LEGAL THEORY, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +6. Language + +THIS LICENSE IS WRITTEN IN BOTH CHINESE AND ENGLISH, AND THE CHINESE VERSION AND ENGLISH VERSION SHALL HAVE THE SAME LEGAL EFFECT. IN THE CASE OF DIVERGENCE BETWEEN THE CHINESE AND ENGLISH VERSIONS, THE CHINESE VERSION SHALL PREVAIL. + +END OF THE TERMS AND CONDITIONS + +How to Apply the Mulan Permissive Software License,Version 2 (Mulan PSL v2) to Your Software + +To apply the Mulan PSL v2 to your work, for easy identification by recipients, you are suggested to complete following three steps: + +Fill in the blanks in following statement, including insert your software name, the year of the first publication of your software, and your name identified as the copyright owner; +Create a file named "LICENSE" which contains the whole context of this License in the first directory of your software package; +Attach the statement to the appropriate annotated syntax at the beginning of each source file. +Copyright (c) [Year] [name of copyright holder] +[Software Name] is licensed under Mulan PSL v2. +You can use this software according to the terms and conditions of the Mulan PSL v2. +You may obtain a copy of Mulan PSL v2 at: + http://license.coscl.org.cn/MulanPSL2 +THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, +EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, +MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. +See the Mulan PSL v2 for more details. diff --git a/README.md b/README.md new file mode 100644 index 0000000..43f093a --- /dev/null +++ b/README.md @@ -0,0 +1,19 @@ +#### 从命令行创建一个新的仓库 + +```bash +touch README.md +git init +git add README.md +git commit -m "first commit" +git remote add origin https://bdgit.educoder.net/p15734809/xiaomi_note_explain.git +git push -u origin master + +``` + +#### 从命令行推送已经创建的仓库 + +```bash +git remote add origin https://bdgit.educoder.net/p15734809/xiaomi_note_explain.git +git push -u origin master + +``` diff --git a/doc/xiaomi_note_read_through_report.docx b/doc/xiaomi_note_read_through_report.docx new file mode 100644 index 0000000000000000000000000000000000000000..ada228cff967831476e003a0b0c6dfb1c72f6d01 GIT binary patch literal 202582 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

Type: INTEGER (long)

+ */ + public static final String ID = "_id"; + + /** + * The parent's id for note or folder + *

Type: INTEGER (long)

+ */ + public static final String PARENT_ID = "parent_id"; + + /** + * Created data for note or folder + *

Type: INTEGER (long)

+ */ + public static final String CREATED_DATE = "created_date"; + + /** + * Latest modified date + *

Type: INTEGER (long)

+ */ + public static final String MODIFIED_DATE = "modified_date"; + + + /** + * Alert date + *

Type: INTEGER (long)

+ */ + public static final String ALERTED_DATE = "alert_date"; + + /** + * Folder's name or text content of note + *

Type: TEXT

+ */ + public static final String SNIPPET = "snippet"; + + /** + * Note's widget id + *

Type: INTEGER (long)

+ */ + public static final String WIDGET_ID = "widget_id"; + + /** + * Note's widget type + *

Type: INTEGER (long)

+ */ + public static final String WIDGET_TYPE = "widget_type"; + + /** + * Note's background color's id + *

Type: INTEGER (long)

+ */ + public static final String BG_COLOR_ID = "bg_color_id"; + + /** + * For text note, it doesn't has attachment, for multi-media + * note, it has at least one attachment + *

Type: INTEGER

+ */ + public static final String HAS_ATTACHMENT = "has_attachment"; + + /** + * Folder's count of notes + *

Type: INTEGER (long)

+ */ + public static final String NOTES_COUNT = "notes_count"; + + /** + * The file type: folder or note + *

Type: INTEGER

+ */ + public static final String TYPE = "type"; + + /** + * The last sync id + *

Type: INTEGER (long)

+ */ + public static final String SYNC_ID = "sync_id"; + + /** + * Sign to indicate local modified or not + *

Type: INTEGER

+ */ + public static final String LOCAL_MODIFIED = "local_modified"; + + /** + * Original parent id before moving into temporary folder + *

Type : INTEGER

+ */ + public static final String ORIGIN_PARENT_ID = "origin_parent_id"; + + /** + * The gtask id + *

Type : TEXT

+ */ + public static final String GTASK_ID = "gtask_id"; + + /** + * The version code + *

Type : INTEGER (long)

+ */ + public static final String VERSION = "version"; + } + + public interface DataColumns { + /** + * The unique ID for a row + *

Type: INTEGER (long)

+ */ + public static final String ID = "_id"; + + /** + * The MIME type of the item represented by this row. + *

Type: Text

+ */ + public static final String MIME_TYPE = "mime_type"; + + /** + * The reference id to note that this data belongs to + *

Type: INTEGER (long)

+ */ + public static final String NOTE_ID = "note_id"; + + /** + * Created data for note or folder + *

Type: INTEGER (long)

+ */ + public static final String CREATED_DATE = "created_date"; + + /** + * Latest modified date + *

Type: INTEGER (long)

+ */ + public static final String MODIFIED_DATE = "modified_date"; + + /** + * Data's content + *

Type: TEXT

+ */ + public static final String CONTENT = "content"; + + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * integer data type + *

Type: INTEGER

+ */ + public static final String DATA1 = "data1"; + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * integer data type + *

Type: INTEGER

+ */ + public static final String DATA2 = "data2"; + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * TEXT data type + *

Type: TEXT

+ */ + public static final String DATA3 = "data3"; + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * TEXT data type + *

Type: TEXT

+ */ + public static final String DATA4 = "data4"; + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * TEXT data type + *

Type: TEXT

+ */ + public static final String DATA5 = "data5"; + } + + public static final class TextNote implements DataColumns { + /** + * Mode to indicate the text in check list mode or not + *

Type: Integer 1:check list mode 0: normal mode

+ */ + public static final String MODE = DATA1; + + public static final int MODE_CHECK_LIST = 1; + + public static final String CONTENT_TYPE = "vnd.android.cursor.dir/text_note"; + + public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/text_note"; + + public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/text_note"); + } + + public static final class CallNote implements DataColumns { + /** + * Call date for this record + *

Type: INTEGER (long)

+ */ + public static final String CALL_DATE = DATA1; + + /** + * Phone number for this record + *

Type: TEXT

+ */ + public static final String PHONE_NUMBER = DATA3; + + public static final String CONTENT_TYPE = "vnd.android.cursor.dir/call_note"; + + public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/call_note"; + + public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/call_note"); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java b/src/test01/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java new file mode 100644 index 0000000..ffe5d57 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java @@ -0,0 +1,362 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.data; + +import android.content.ContentValues; +import android.content.Context; +import android.database.sqlite.SQLiteDatabase; +import android.database.sqlite.SQLiteOpenHelper; +import android.util.Log; + +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.DataConstants; +import net.micode.notes.data.Notes.NoteColumns; + + +public class NotesDatabaseHelper extends SQLiteOpenHelper { + private static final String DB_NAME = "note.db"; + + private static final int DB_VERSION = 4; + + public interface TABLE { + public static final String NOTE = "note"; + + public static final String DATA = "data"; + } + + private static final String TAG = "NotesDatabaseHelper"; + + private static NotesDatabaseHelper mInstance; + + private static final String CREATE_NOTE_TABLE_SQL = + "CREATE TABLE " + TABLE.NOTE + "(" + + NoteColumns.ID + " INTEGER PRIMARY KEY," + + NoteColumns.PARENT_ID + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.ALERTED_DATE + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.BG_COLOR_ID + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.CREATED_DATE + " INTEGER NOT NULL DEFAULT (strftime('%s','now') * 1000)," + + NoteColumns.HAS_ATTACHMENT + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.MODIFIED_DATE + " INTEGER NOT NULL DEFAULT (strftime('%s','now') * 1000)," + + NoteColumns.NOTES_COUNT + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.SNIPPET + " TEXT NOT NULL DEFAULT ''," + + NoteColumns.TYPE + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.WIDGET_ID + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.WIDGET_TYPE + " INTEGER NOT NULL DEFAULT -1," + + NoteColumns.SYNC_ID + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.LOCAL_MODIFIED + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.ORIGIN_PARENT_ID + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.GTASK_ID + " TEXT NOT NULL DEFAULT ''," + + NoteColumns.VERSION + " INTEGER NOT NULL DEFAULT 0" + + ")"; + + private static final String CREATE_DATA_TABLE_SQL = + "CREATE TABLE " + TABLE.DATA + "(" + + DataColumns.ID + " INTEGER PRIMARY KEY," + + DataColumns.MIME_TYPE + " TEXT NOT NULL," + + DataColumns.NOTE_ID + " INTEGER NOT NULL DEFAULT 0," + + NoteColumns.CREATED_DATE + " INTEGER NOT NULL DEFAULT (strftime('%s','now') * 1000)," + + NoteColumns.MODIFIED_DATE + " INTEGER NOT NULL DEFAULT (strftime('%s','now') * 1000)," + + DataColumns.CONTENT + " TEXT NOT NULL DEFAULT ''," + + DataColumns.DATA1 + " INTEGER," + + DataColumns.DATA2 + " INTEGER," + + DataColumns.DATA3 + " TEXT NOT NULL DEFAULT ''," + + DataColumns.DATA4 + " TEXT NOT NULL DEFAULT ''," + + DataColumns.DATA5 + " TEXT NOT NULL DEFAULT ''" + + ")"; + + private static final String CREATE_DATA_NOTE_ID_INDEX_SQL = + "CREATE INDEX IF NOT EXISTS note_id_index ON " + + TABLE.DATA + "(" + DataColumns.NOTE_ID + ");"; + + /** + * Increase folder's note count when move note to the folder + */ + private static final String NOTE_INCREASE_FOLDER_COUNT_ON_UPDATE_TRIGGER = + "CREATE TRIGGER increase_folder_count_on_update "+ + " AFTER UPDATE OF " + NoteColumns.PARENT_ID + " ON " + TABLE.NOTE + + " BEGIN " + + " UPDATE " + TABLE.NOTE + + " SET " + NoteColumns.NOTES_COUNT + "=" + NoteColumns.NOTES_COUNT + " + 1" + + " WHERE " + NoteColumns.ID + "=new." + NoteColumns.PARENT_ID + ";" + + " END"; + + /** + * Decrease folder's note count when move note from folder + */ + private static final String NOTE_DECREASE_FOLDER_COUNT_ON_UPDATE_TRIGGER = + "CREATE TRIGGER decrease_folder_count_on_update " + + " AFTER UPDATE OF " + NoteColumns.PARENT_ID + " ON " + TABLE.NOTE + + " BEGIN " + + " UPDATE " + TABLE.NOTE + + " SET " + NoteColumns.NOTES_COUNT + "=" + NoteColumns.NOTES_COUNT + "-1" + + " WHERE " + NoteColumns.ID + "=old." + NoteColumns.PARENT_ID + + " AND " + NoteColumns.NOTES_COUNT + ">0" + ";" + + " END"; + + /** + * Increase folder's note count when insert new note to the folder + */ + private static final String NOTE_INCREASE_FOLDER_COUNT_ON_INSERT_TRIGGER = + "CREATE TRIGGER increase_folder_count_on_insert " + + " AFTER INSERT ON " + TABLE.NOTE + + " BEGIN " + + " UPDATE " + TABLE.NOTE + + " SET " + NoteColumns.NOTES_COUNT + "=" + NoteColumns.NOTES_COUNT + " + 1" + + " WHERE " + NoteColumns.ID + "=new." + NoteColumns.PARENT_ID + ";" + + " END"; + + /** + * Decrease folder's note count when delete note from the folder + */ + private static final String NOTE_DECREASE_FOLDER_COUNT_ON_DELETE_TRIGGER = + "CREATE TRIGGER decrease_folder_count_on_delete " + + " AFTER DELETE ON " + TABLE.NOTE + + " BEGIN " + + " UPDATE " + TABLE.NOTE + + " SET " + NoteColumns.NOTES_COUNT + "=" + NoteColumns.NOTES_COUNT + "-1" + + " WHERE " + NoteColumns.ID + "=old." + NoteColumns.PARENT_ID + + " AND " + NoteColumns.NOTES_COUNT + ">0;" + + " END"; + + /** + * Update note's content when insert data with type {@link DataConstants#NOTE} + */ + private static final String DATA_UPDATE_NOTE_CONTENT_ON_INSERT_TRIGGER = + "CREATE TRIGGER update_note_content_on_insert " + + " AFTER INSERT ON " + TABLE.DATA + + " WHEN new." + DataColumns.MIME_TYPE + "='" + DataConstants.NOTE + "'" + + " BEGIN" + + " UPDATE " + TABLE.NOTE + + " SET " + NoteColumns.SNIPPET + "=new." + DataColumns.CONTENT + + " WHERE " + NoteColumns.ID + "=new." + DataColumns.NOTE_ID + ";" + + " END"; + + /** + * Update note's content when data with {@link DataConstants#NOTE} type has changed + */ + private static final String DATA_UPDATE_NOTE_CONTENT_ON_UPDATE_TRIGGER = + "CREATE TRIGGER update_note_content_on_update " + + " AFTER UPDATE ON " + TABLE.DATA + + " WHEN old." + DataColumns.MIME_TYPE + "='" + DataConstants.NOTE + "'" + + " BEGIN" + + " UPDATE " + TABLE.NOTE + + " SET " + NoteColumns.SNIPPET + "=new." + DataColumns.CONTENT + + " WHERE " + NoteColumns.ID + "=new." + DataColumns.NOTE_ID + ";" + + " END"; + + /** + * Update note's content when data with {@link DataConstants#NOTE} type has deleted + */ + private static final String DATA_UPDATE_NOTE_CONTENT_ON_DELETE_TRIGGER = + "CREATE TRIGGER update_note_content_on_delete " + + " AFTER delete ON " + TABLE.DATA + + " WHEN old." + DataColumns.MIME_TYPE + "='" + DataConstants.NOTE + "'" + + " BEGIN" + + " UPDATE " + TABLE.NOTE + + " SET " + NoteColumns.SNIPPET + "=''" + + " WHERE " + NoteColumns.ID + "=old." + DataColumns.NOTE_ID + ";" + + " END"; + + /** + * Delete datas belong to note which has been deleted + */ + private static final String NOTE_DELETE_DATA_ON_DELETE_TRIGGER = + "CREATE TRIGGER delete_data_on_delete " + + " AFTER DELETE ON " + TABLE.NOTE + + " BEGIN" + + " DELETE FROM " + TABLE.DATA + + " WHERE " + DataColumns.NOTE_ID + "=old." + NoteColumns.ID + ";" + + " END"; + + /** + * Delete notes belong to folder which has been deleted + */ + private static final String FOLDER_DELETE_NOTES_ON_DELETE_TRIGGER = + "CREATE TRIGGER folder_delete_notes_on_delete " + + " AFTER DELETE ON " + TABLE.NOTE + + " BEGIN" + + " DELETE FROM " + TABLE.NOTE + + " WHERE " + NoteColumns.PARENT_ID + "=old." + NoteColumns.ID + ";" + + " END"; + + /** + * Move notes belong to folder which has been moved to trash folder + */ + private static final String FOLDER_MOVE_NOTES_ON_TRASH_TRIGGER = + "CREATE TRIGGER folder_move_notes_on_trash " + + " AFTER UPDATE ON " + TABLE.NOTE + + " WHEN new." + NoteColumns.PARENT_ID + "=" + Notes.ID_TRASH_FOLER + + " BEGIN" + + " UPDATE " + TABLE.NOTE + + " SET " + NoteColumns.PARENT_ID + "=" + Notes.ID_TRASH_FOLER + + " WHERE " + NoteColumns.PARENT_ID + "=old." + NoteColumns.ID + ";" + + " END"; + + public NotesDatabaseHelper(Context context) { + super(context, DB_NAME, null, DB_VERSION); + } + + public void createNoteTable(SQLiteDatabase db) { + db.execSQL(CREATE_NOTE_TABLE_SQL); + reCreateNoteTableTriggers(db); + createSystemFolder(db); + Log.d(TAG, "note table has been created"); + } + + private void reCreateNoteTableTriggers(SQLiteDatabase db) { + db.execSQL("DROP TRIGGER IF EXISTS increase_folder_count_on_update"); + db.execSQL("DROP TRIGGER IF EXISTS decrease_folder_count_on_update"); + db.execSQL("DROP TRIGGER IF EXISTS decrease_folder_count_on_delete"); + db.execSQL("DROP TRIGGER IF EXISTS delete_data_on_delete"); + db.execSQL("DROP TRIGGER IF EXISTS increase_folder_count_on_insert"); + db.execSQL("DROP TRIGGER IF EXISTS folder_delete_notes_on_delete"); + db.execSQL("DROP TRIGGER IF EXISTS folder_move_notes_on_trash"); + + db.execSQL(NOTE_INCREASE_FOLDER_COUNT_ON_UPDATE_TRIGGER); + db.execSQL(NOTE_DECREASE_FOLDER_COUNT_ON_UPDATE_TRIGGER); + db.execSQL(NOTE_DECREASE_FOLDER_COUNT_ON_DELETE_TRIGGER); + db.execSQL(NOTE_DELETE_DATA_ON_DELETE_TRIGGER); + db.execSQL(NOTE_INCREASE_FOLDER_COUNT_ON_INSERT_TRIGGER); + db.execSQL(FOLDER_DELETE_NOTES_ON_DELETE_TRIGGER); + db.execSQL(FOLDER_MOVE_NOTES_ON_TRASH_TRIGGER); + } + + private void createSystemFolder(SQLiteDatabase db) { + ContentValues values = new ContentValues(); + + /** + * call record foler for call notes + */ + values.put(NoteColumns.ID, Notes.ID_CALL_RECORD_FOLDER); + values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM); + db.insert(TABLE.NOTE, null, values); + + /** + * root folder which is default folder + */ + values.clear(); + values.put(NoteColumns.ID, Notes.ID_ROOT_FOLDER); + values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM); + db.insert(TABLE.NOTE, null, values); + + /** + * temporary folder which is used for moving note + */ + values.clear(); + values.put(NoteColumns.ID, Notes.ID_TEMPARAY_FOLDER); + values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM); + db.insert(TABLE.NOTE, null, values); + + /** + * create trash folder + */ + values.clear(); + values.put(NoteColumns.ID, Notes.ID_TRASH_FOLER); + values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM); + db.insert(TABLE.NOTE, null, values); + } + + public void createDataTable(SQLiteDatabase db) { + db.execSQL(CREATE_DATA_TABLE_SQL); + reCreateDataTableTriggers(db); + db.execSQL(CREATE_DATA_NOTE_ID_INDEX_SQL); + Log.d(TAG, "data table has been created"); + } + + private void reCreateDataTableTriggers(SQLiteDatabase db) { + db.execSQL("DROP TRIGGER IF EXISTS update_note_content_on_insert"); + db.execSQL("DROP TRIGGER IF EXISTS update_note_content_on_update"); + db.execSQL("DROP TRIGGER IF EXISTS update_note_content_on_delete"); + + db.execSQL(DATA_UPDATE_NOTE_CONTENT_ON_INSERT_TRIGGER); + db.execSQL(DATA_UPDATE_NOTE_CONTENT_ON_UPDATE_TRIGGER); + db.execSQL(DATA_UPDATE_NOTE_CONTENT_ON_DELETE_TRIGGER); + } + + static synchronized NotesDatabaseHelper getInstance(Context context) { + if (mInstance == null) { + mInstance = new NotesDatabaseHelper(context); + } + return mInstance; + } + + @Override + public void onCreate(SQLiteDatabase db) { + createNoteTable(db); + createDataTable(db); + } + + @Override + public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { + boolean reCreateTriggers = false; + boolean skipV2 = false; + + if (oldVersion == 1) { + upgradeToV2(db); + skipV2 = true; // this upgrade including the upgrade from v2 to v3 + oldVersion++; + } + + if (oldVersion == 2 && !skipV2) { + upgradeToV3(db); + reCreateTriggers = true; + oldVersion++; + } + + if (oldVersion == 3) { + upgradeToV4(db); + oldVersion++; + } + + if (reCreateTriggers) { + reCreateNoteTableTriggers(db); + reCreateDataTableTriggers(db); + } + + if (oldVersion != newVersion) { + throw new IllegalStateException("Upgrade notes database to version " + newVersion + + "fails"); + } + } + + private void upgradeToV2(SQLiteDatabase db) { + db.execSQL("DROP TABLE IF EXISTS " + TABLE.NOTE); + db.execSQL("DROP TABLE IF EXISTS " + TABLE.DATA); + createNoteTable(db); + createDataTable(db); + } + + private void upgradeToV3(SQLiteDatabase db) { + // drop unused triggers + db.execSQL("DROP TRIGGER IF EXISTS update_note_modified_date_on_insert"); + db.execSQL("DROP TRIGGER IF EXISTS update_note_modified_date_on_delete"); + db.execSQL("DROP TRIGGER IF EXISTS update_note_modified_date_on_update"); + // add a column for gtask id + db.execSQL("ALTER TABLE " + TABLE.NOTE + " ADD COLUMN " + NoteColumns.GTASK_ID + + " TEXT NOT NULL DEFAULT ''"); + // add a trash system folder + ContentValues values = new ContentValues(); + values.put(NoteColumns.ID, Notes.ID_TRASH_FOLER); + values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM); + db.insert(TABLE.NOTE, null, values); + } + + private void upgradeToV4(SQLiteDatabase db) { + db.execSQL("ALTER TABLE " + TABLE.NOTE + " ADD COLUMN " + NoteColumns.VERSION + + " INTEGER NOT NULL DEFAULT 0"); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/data/NotesProvider.java b/src/test01/app/src/main/java/net/micode/notes/data/NotesProvider.java new file mode 100644 index 0000000..edb0a60 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/data/NotesProvider.java @@ -0,0 +1,305 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.data; + + +import android.app.SearchManager; +import android.content.ContentProvider; +import android.content.ContentUris; +import android.content.ContentValues; +import android.content.Intent; +import android.content.UriMatcher; +import android.database.Cursor; +import android.database.sqlite.SQLiteDatabase; +import android.net.Uri; +import android.text.TextUtils; +import android.util.Log; + +import net.micode.notes.R; +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.data.NotesDatabaseHelper.TABLE; + + +public class NotesProvider extends ContentProvider { + private static final UriMatcher mMatcher; + + private NotesDatabaseHelper mHelper; + + private static final String TAG = "NotesProvider"; + + private static final int URI_NOTE = 1; + private static final int URI_NOTE_ITEM = 2; + private static final int URI_DATA = 3; + private static final int URI_DATA_ITEM = 4; + + private static final int URI_SEARCH = 5; + private static final int URI_SEARCH_SUGGEST = 6; + + static { + mMatcher = new UriMatcher(UriMatcher.NO_MATCH); + mMatcher.addURI(Notes.AUTHORITY, "note", URI_NOTE); + mMatcher.addURI(Notes.AUTHORITY, "note/#", URI_NOTE_ITEM); + mMatcher.addURI(Notes.AUTHORITY, "data", URI_DATA); + mMatcher.addURI(Notes.AUTHORITY, "data/#", URI_DATA_ITEM); + mMatcher.addURI(Notes.AUTHORITY, "search", URI_SEARCH); + mMatcher.addURI(Notes.AUTHORITY, SearchManager.SUGGEST_URI_PATH_QUERY, URI_SEARCH_SUGGEST); + mMatcher.addURI(Notes.AUTHORITY, SearchManager.SUGGEST_URI_PATH_QUERY + "/*", URI_SEARCH_SUGGEST); + } + + /** + * x'0A' represents the '\n' character in sqlite. For title and content in the search result, + * we will trim '\n' and white space in order to show more information. + */ + private static final String NOTES_SEARCH_PROJECTION = NoteColumns.ID + "," + + NoteColumns.ID + " AS " + SearchManager.SUGGEST_COLUMN_INTENT_EXTRA_DATA + "," + + "TRIM(REPLACE(" + NoteColumns.SNIPPET + ", x'0A','')) AS " + SearchManager.SUGGEST_COLUMN_TEXT_1 + "," + + "TRIM(REPLACE(" + NoteColumns.SNIPPET + ", x'0A','')) AS " + SearchManager.SUGGEST_COLUMN_TEXT_2 + "," + + R.drawable.search_result + " AS " + SearchManager.SUGGEST_COLUMN_ICON_1 + "," + + "'" + Intent.ACTION_VIEW + "' AS " + SearchManager.SUGGEST_COLUMN_INTENT_ACTION + "," + + "'" + Notes.TextNote.CONTENT_TYPE + "' AS " + SearchManager.SUGGEST_COLUMN_INTENT_DATA; + + private static String NOTES_SNIPPET_SEARCH_QUERY = "SELECT " + NOTES_SEARCH_PROJECTION + + " FROM " + TABLE.NOTE + + " WHERE " + NoteColumns.SNIPPET + " LIKE ?" + + " AND " + NoteColumns.PARENT_ID + "<>" + Notes.ID_TRASH_FOLER + + " AND " + NoteColumns.TYPE + "=" + Notes.TYPE_NOTE; + + @Override + public boolean onCreate() { + mHelper = NotesDatabaseHelper.getInstance(getContext()); + return true; + } + + @Override + public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, + String sortOrder) { + Cursor c = null; + SQLiteDatabase db = mHelper.getReadableDatabase(); + String id = null; + switch (mMatcher.match(uri)) { + case URI_NOTE: + c = db.query(TABLE.NOTE, projection, selection, selectionArgs, null, null, + sortOrder); + break; + case URI_NOTE_ITEM: + id = uri.getPathSegments().get(1); + c = db.query(TABLE.NOTE, projection, NoteColumns.ID + "=" + id + + parseSelection(selection), selectionArgs, null, null, sortOrder); + break; + case URI_DATA: + c = db.query(TABLE.DATA, projection, selection, selectionArgs, null, null, + sortOrder); + break; + case URI_DATA_ITEM: + id = uri.getPathSegments().get(1); + c = db.query(TABLE.DATA, projection, DataColumns.ID + "=" + id + + parseSelection(selection), selectionArgs, null, null, sortOrder); + break; + case URI_SEARCH: + case URI_SEARCH_SUGGEST: + if (sortOrder != null || projection != null) { + throw new IllegalArgumentException( + "do not specify sortOrder, selection, selectionArgs, or projection" + "with this query"); + } + + String searchString = null; + if (mMatcher.match(uri) == URI_SEARCH_SUGGEST) { + if (uri.getPathSegments().size() > 1) { + searchString = uri.getPathSegments().get(1); + } + } else { + searchString = uri.getQueryParameter("pattern"); + } + + if (TextUtils.isEmpty(searchString)) { + return null; + } + + try { + searchString = String.format("%%%s%%", searchString); + c = db.rawQuery(NOTES_SNIPPET_SEARCH_QUERY, + new String[] { searchString }); + } catch (IllegalStateException ex) { + Log.e(TAG, "got exception: " + ex.toString()); + } + break; + default: + throw new IllegalArgumentException("Unknown URI " + uri); + } + if (c != null) { + c.setNotificationUri(getContext().getContentResolver(), uri); + } + return c; + } + + @Override + public Uri insert(Uri uri, ContentValues values) { + SQLiteDatabase db = mHelper.getWritableDatabase(); + long dataId = 0, noteId = 0, insertedId = 0; + switch (mMatcher.match(uri)) { + case URI_NOTE: + insertedId = noteId = db.insert(TABLE.NOTE, null, values); + break; + case URI_DATA: + if (values.containsKey(DataColumns.NOTE_ID)) { + noteId = values.getAsLong(DataColumns.NOTE_ID); + } else { + Log.d(TAG, "Wrong data format without note id:" + values.toString()); + } + insertedId = dataId = db.insert(TABLE.DATA, null, values); + break; + default: + throw new IllegalArgumentException("Unknown URI " + uri); + } + // Notify the note uri + if (noteId > 0) { + getContext().getContentResolver().notifyChange( + ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId), null); + } + + // Notify the data uri + if (dataId > 0) { + getContext().getContentResolver().notifyChange( + ContentUris.withAppendedId(Notes.CONTENT_DATA_URI, dataId), null); + } + + return ContentUris.withAppendedId(uri, insertedId); + } + + @Override + public int delete(Uri uri, String selection, String[] selectionArgs) { + int count = 0; + String id = null; + SQLiteDatabase db = mHelper.getWritableDatabase(); + boolean deleteData = false; + switch (mMatcher.match(uri)) { + case URI_NOTE: + selection = "(" + selection + ") AND " + NoteColumns.ID + ">0 "; + count = db.delete(TABLE.NOTE, selection, selectionArgs); + break; + case URI_NOTE_ITEM: + id = uri.getPathSegments().get(1); + /** + * ID that smaller than 0 is system folder which is not allowed to + * trash + */ + long noteId = Long.valueOf(id); + if (noteId <= 0) { + break; + } + count = db.delete(TABLE.NOTE, + NoteColumns.ID + "=" + id + parseSelection(selection), selectionArgs); + break; + case URI_DATA: + count = db.delete(TABLE.DATA, selection, selectionArgs); + deleteData = true; + break; + case URI_DATA_ITEM: + id = uri.getPathSegments().get(1); + count = db.delete(TABLE.DATA, + DataColumns.ID + "=" + id + parseSelection(selection), selectionArgs); + deleteData = true; + break; + default: + throw new IllegalArgumentException("Unknown URI " + uri); + } + if (count > 0) { + if (deleteData) { + getContext().getContentResolver().notifyChange(Notes.CONTENT_NOTE_URI, null); + } + getContext().getContentResolver().notifyChange(uri, null); + } + return count; + } + + @Override + public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) { + int count = 0; + String id = null; + SQLiteDatabase db = mHelper.getWritableDatabase(); + boolean updateData = false; + switch (mMatcher.match(uri)) { + case URI_NOTE: + increaseNoteVersion(-1, selection, selectionArgs); + count = db.update(TABLE.NOTE, values, selection, selectionArgs); + break; + case URI_NOTE_ITEM: + id = uri.getPathSegments().get(1); + increaseNoteVersion(Long.valueOf(id), selection, selectionArgs); + count = db.update(TABLE.NOTE, values, NoteColumns.ID + "=" + id + + parseSelection(selection), selectionArgs); + break; + case URI_DATA: + count = db.update(TABLE.DATA, values, selection, selectionArgs); + updateData = true; + break; + case URI_DATA_ITEM: + id = uri.getPathSegments().get(1); + count = db.update(TABLE.DATA, values, DataColumns.ID + "=" + id + + parseSelection(selection), selectionArgs); + updateData = true; + break; + default: + throw new IllegalArgumentException("Unknown URI " + uri); + } + + if (count > 0) { + if (updateData) { + getContext().getContentResolver().notifyChange(Notes.CONTENT_NOTE_URI, null); + } + getContext().getContentResolver().notifyChange(uri, null); + } + return count; + } + + private String parseSelection(String selection) { + return (!TextUtils.isEmpty(selection) ? " AND (" + selection + ')' : ""); + } + + private void increaseNoteVersion(long id, String selection, String[] selectionArgs) { + StringBuilder sql = new StringBuilder(120); + sql.append("UPDATE "); + sql.append(TABLE.NOTE); + sql.append(" SET "); + sql.append(NoteColumns.VERSION); + sql.append("=" + NoteColumns.VERSION + "+1 "); + + if (id > 0 || !TextUtils.isEmpty(selection)) { + sql.append(" WHERE "); + } + if (id > 0) { + sql.append(NoteColumns.ID + "=" + String.valueOf(id)); + } + if (!TextUtils.isEmpty(selection)) { + String selectString = id > 0 ? parseSelection(selection) : selection; + for (String args : selectionArgs) { + selectString = selectString.replaceFirst("\\?", args); + } + sql.append(selectString); + } + + mHelper.getWritableDatabase().execSQL(sql.toString()); + } + + @Override + public String getType(Uri uri) { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/data/MetaData.java b/src/test01/app/src/main/java/net/micode/notes/gtask/data/MetaData.java new file mode 100644 index 0000000..3a2050b --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/data/MetaData.java @@ -0,0 +1,82 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.data; + +import android.database.Cursor; +import android.util.Log; + +import net.micode.notes.tool.GTaskStringUtils; + +import org.json.JSONException; +import org.json.JSONObject; + + +public class MetaData extends Task { + private final static String TAG = MetaData.class.getSimpleName(); + + private String mRelatedGid = null; + + public void setMeta(String gid, JSONObject metaInfo) { + try { + metaInfo.put(GTaskStringUtils.META_HEAD_GTASK_ID, gid); + } catch (JSONException e) { + Log.e(TAG, "failed to put related gid"); + } + setNotes(metaInfo.toString()); + setName(GTaskStringUtils.META_NOTE_NAME); + } + + public String getRelatedGid() { + return mRelatedGid; + } + + @Override + public boolean isWorthSaving() { + return getNotes() != null; + } + + @Override + public void setContentByRemoteJSON(JSONObject js) { + super.setContentByRemoteJSON(js); + if (getNotes() != null) { + try { + JSONObject metaInfo = new JSONObject(getNotes().trim()); + mRelatedGid = metaInfo.getString(GTaskStringUtils.META_HEAD_GTASK_ID); + } catch (JSONException e) { + Log.w(TAG, "failed to get related gid"); + mRelatedGid = null; + } + } + } + + @Override + public void setContentByLocalJSON(JSONObject js) { + // this function should not be called + throw new IllegalAccessError("MetaData:setContentByLocalJSON should not be called"); + } + + @Override + public JSONObject getLocalJSONFromContent() { + throw new IllegalAccessError("MetaData:getLocalJSONFromContent should not be called"); + } + + @Override + public int getSyncAction(Cursor c) { + throw new IllegalAccessError("MetaData:getSyncAction should not be called"); + } + +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/data/Node.java b/src/test01/app/src/main/java/net/micode/notes/gtask/data/Node.java new file mode 100644 index 0000000..63950e0 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/data/Node.java @@ -0,0 +1,101 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.data; + +import android.database.Cursor; + +import org.json.JSONObject; + +public abstract class Node { + public static final int SYNC_ACTION_NONE = 0; + + public static final int SYNC_ACTION_ADD_REMOTE = 1; + + public static final int SYNC_ACTION_ADD_LOCAL = 2; + + public static final int SYNC_ACTION_DEL_REMOTE = 3; + + public static final int SYNC_ACTION_DEL_LOCAL = 4; + + public static final int SYNC_ACTION_UPDATE_REMOTE = 5; + + public static final int SYNC_ACTION_UPDATE_LOCAL = 6; + + public static final int SYNC_ACTION_UPDATE_CONFLICT = 7; + + public static final int SYNC_ACTION_ERROR = 8; + + private String mGid; + + private String mName; + + private long mLastModified; + + private boolean mDeleted; + + public Node() { + mGid = null; + mName = ""; + mLastModified = 0; + mDeleted = false; + } + + public abstract JSONObject getCreateAction(int actionId); + + public abstract JSONObject getUpdateAction(int actionId); + + public abstract void setContentByRemoteJSON(JSONObject js); + + public abstract void setContentByLocalJSON(JSONObject js); + + public abstract JSONObject getLocalJSONFromContent(); + + public abstract int getSyncAction(Cursor c); + + public void setGid(String gid) { + this.mGid = gid; + } + + public void setName(String name) { + this.mName = name; + } + + public void setLastModified(long lastModified) { + this.mLastModified = lastModified; + } + + public void setDeleted(boolean deleted) { + this.mDeleted = deleted; + } + + public String getGid() { + return this.mGid; + } + + public String getName() { + return this.mName; + } + + public long getLastModified() { + return this.mLastModified; + } + + public boolean getDeleted() { + return this.mDeleted; + } + +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/data/SqlData.java b/src/test01/app/src/main/java/net/micode/notes/gtask/data/SqlData.java new file mode 100644 index 0000000..d3ec3be --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/data/SqlData.java @@ -0,0 +1,189 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.data; + +import android.content.ContentResolver; +import android.content.ContentUris; +import android.content.ContentValues; +import android.content.Context; +import android.database.Cursor; +import android.net.Uri; +import android.util.Log; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.DataConstants; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.data.NotesDatabaseHelper.TABLE; +import net.micode.notes.gtask.exception.ActionFailureException; + +import org.json.JSONException; +import org.json.JSONObject; + + +public class SqlData { + private static final String TAG = SqlData.class.getSimpleName(); + + private static final int INVALID_ID = -99999; + + public static final String[] PROJECTION_DATA = new String[] { + DataColumns.ID, DataColumns.MIME_TYPE, DataColumns.CONTENT, DataColumns.DATA1, + DataColumns.DATA3 + }; + + public static final int DATA_ID_COLUMN = 0; + + public static final int DATA_MIME_TYPE_COLUMN = 1; + + public static final int DATA_CONTENT_COLUMN = 2; + + public static final int DATA_CONTENT_DATA_1_COLUMN = 3; + + public static final int DATA_CONTENT_DATA_3_COLUMN = 4; + + private ContentResolver mContentResolver; + + private boolean mIsCreate; + + private long mDataId; + + private String mDataMimeType; + + private String mDataContent; + + private long mDataContentData1; + + private String mDataContentData3; + + private ContentValues mDiffDataValues; + + public SqlData(Context context) { + mContentResolver = context.getContentResolver(); + mIsCreate = true; + mDataId = INVALID_ID; + mDataMimeType = DataConstants.NOTE; + mDataContent = ""; + mDataContentData1 = 0; + mDataContentData3 = ""; + mDiffDataValues = new ContentValues(); + } + + public SqlData(Context context, Cursor c) { + mContentResolver = context.getContentResolver(); + mIsCreate = false; + loadFromCursor(c); + mDiffDataValues = new ContentValues(); + } + + private void loadFromCursor(Cursor c) { + mDataId = c.getLong(DATA_ID_COLUMN); + mDataMimeType = c.getString(DATA_MIME_TYPE_COLUMN); + mDataContent = c.getString(DATA_CONTENT_COLUMN); + mDataContentData1 = c.getLong(DATA_CONTENT_DATA_1_COLUMN); + mDataContentData3 = c.getString(DATA_CONTENT_DATA_3_COLUMN); + } + + public void setContent(JSONObject js) throws JSONException { + long dataId = js.has(DataColumns.ID) ? js.getLong(DataColumns.ID) : INVALID_ID; + if (mIsCreate || mDataId != dataId) { + mDiffDataValues.put(DataColumns.ID, dataId); + } + mDataId = dataId; + + String dataMimeType = js.has(DataColumns.MIME_TYPE) ? js.getString(DataColumns.MIME_TYPE) + : DataConstants.NOTE; + if (mIsCreate || !mDataMimeType.equals(dataMimeType)) { + mDiffDataValues.put(DataColumns.MIME_TYPE, dataMimeType); + } + mDataMimeType = dataMimeType; + + String dataContent = js.has(DataColumns.CONTENT) ? js.getString(DataColumns.CONTENT) : ""; + if (mIsCreate || !mDataContent.equals(dataContent)) { + mDiffDataValues.put(DataColumns.CONTENT, dataContent); + } + mDataContent = dataContent; + + long dataContentData1 = js.has(DataColumns.DATA1) ? js.getLong(DataColumns.DATA1) : 0; + if (mIsCreate || mDataContentData1 != dataContentData1) { + mDiffDataValues.put(DataColumns.DATA1, dataContentData1); + } + mDataContentData1 = dataContentData1; + + String dataContentData3 = js.has(DataColumns.DATA3) ? js.getString(DataColumns.DATA3) : ""; + if (mIsCreate || !mDataContentData3.equals(dataContentData3)) { + mDiffDataValues.put(DataColumns.DATA3, dataContentData3); + } + mDataContentData3 = dataContentData3; + } + + public JSONObject getContent() throws JSONException { + if (mIsCreate) { + Log.e(TAG, "it seems that we haven't created this in database yet"); + return null; + } + JSONObject js = new JSONObject(); + js.put(DataColumns.ID, mDataId); + js.put(DataColumns.MIME_TYPE, mDataMimeType); + js.put(DataColumns.CONTENT, mDataContent); + js.put(DataColumns.DATA1, mDataContentData1); + js.put(DataColumns.DATA3, mDataContentData3); + return js; + } + + public void commit(long noteId, boolean validateVersion, long version) { + + if (mIsCreate) { + if (mDataId == INVALID_ID && mDiffDataValues.containsKey(DataColumns.ID)) { + mDiffDataValues.remove(DataColumns.ID); + } + + mDiffDataValues.put(DataColumns.NOTE_ID, noteId); + Uri uri = mContentResolver.insert(Notes.CONTENT_DATA_URI, mDiffDataValues); + try { + mDataId = Long.valueOf(uri.getPathSegments().get(1)); + } catch (NumberFormatException e) { + Log.e(TAG, "Get note id error :" + e.toString()); + throw new ActionFailureException("create note failed"); + } + } else { + if (mDiffDataValues.size() > 0) { + int result = 0; + if (!validateVersion) { + result = mContentResolver.update(ContentUris.withAppendedId( + Notes.CONTENT_DATA_URI, mDataId), mDiffDataValues, null, null); + } else { + result = mContentResolver.update(ContentUris.withAppendedId( + Notes.CONTENT_DATA_URI, mDataId), mDiffDataValues, + " ? in (SELECT " + NoteColumns.ID + " FROM " + TABLE.NOTE + + " WHERE " + NoteColumns.VERSION + "=?)", new String[] { + String.valueOf(noteId), String.valueOf(version) + }); + } + if (result == 0) { + Log.w(TAG, "there is no update. maybe user updates note when syncing"); + } + } + } + + mDiffDataValues.clear(); + mIsCreate = false; + } + + public long getId() { + return mDataId; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java b/src/test01/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java new file mode 100644 index 0000000..79a4095 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java @@ -0,0 +1,505 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.data; + +import android.appwidget.AppWidgetManager; +import android.content.ContentResolver; +import android.content.ContentValues; +import android.content.Context; +import android.database.Cursor; +import android.net.Uri; +import android.util.Log; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.gtask.exception.ActionFailureException; +import net.micode.notes.tool.GTaskStringUtils; +import net.micode.notes.tool.ResourceParser; + +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import java.util.ArrayList; + + +public class SqlNote { + private static final String TAG = SqlNote.class.getSimpleName(); + + private static final int INVALID_ID = -99999; + + public static final String[] PROJECTION_NOTE = new String[] { + NoteColumns.ID, NoteColumns.ALERTED_DATE, NoteColumns.BG_COLOR_ID, + NoteColumns.CREATED_DATE, NoteColumns.HAS_ATTACHMENT, NoteColumns.MODIFIED_DATE, + NoteColumns.NOTES_COUNT, NoteColumns.PARENT_ID, NoteColumns.SNIPPET, NoteColumns.TYPE, + NoteColumns.WIDGET_ID, NoteColumns.WIDGET_TYPE, NoteColumns.SYNC_ID, + NoteColumns.LOCAL_MODIFIED, NoteColumns.ORIGIN_PARENT_ID, NoteColumns.GTASK_ID, + NoteColumns.VERSION + }; + + public static final int ID_COLUMN = 0; + + public static final int ALERTED_DATE_COLUMN = 1; + + public static final int BG_COLOR_ID_COLUMN = 2; + + public static final int CREATED_DATE_COLUMN = 3; + + public static final int HAS_ATTACHMENT_COLUMN = 4; + + public static final int MODIFIED_DATE_COLUMN = 5; + + public static final int NOTES_COUNT_COLUMN = 6; + + public static final int PARENT_ID_COLUMN = 7; + + public static final int SNIPPET_COLUMN = 8; + + public static final int TYPE_COLUMN = 9; + + public static final int WIDGET_ID_COLUMN = 10; + + public static final int WIDGET_TYPE_COLUMN = 11; + + public static final int SYNC_ID_COLUMN = 12; + + public static final int LOCAL_MODIFIED_COLUMN = 13; + + public static final int ORIGIN_PARENT_ID_COLUMN = 14; + + public static final int GTASK_ID_COLUMN = 15; + + public static final int VERSION_COLUMN = 16; + + private Context mContext; + + private ContentResolver mContentResolver; + + private boolean mIsCreate; + + private long mId; + + private long mAlertDate; + + private int mBgColorId; + + private long mCreatedDate; + + private int mHasAttachment; + + private long mModifiedDate; + + private long mParentId; + + private String mSnippet; + + private int mType; + + private int mWidgetId; + + private int mWidgetType; + + private long mOriginParent; + + private long mVersion; + + private ContentValues mDiffNoteValues; + + private ArrayList mDataList; + + public SqlNote(Context context) { + mContext = context; + mContentResolver = context.getContentResolver(); + mIsCreate = true; + mId = INVALID_ID; + mAlertDate = 0; + mBgColorId = ResourceParser.getDefaultBgId(context); + mCreatedDate = System.currentTimeMillis(); + mHasAttachment = 0; + mModifiedDate = System.currentTimeMillis(); + mParentId = 0; + mSnippet = ""; + mType = Notes.TYPE_NOTE; + mWidgetId = AppWidgetManager.INVALID_APPWIDGET_ID; + mWidgetType = Notes.TYPE_WIDGET_INVALIDE; + mOriginParent = 0; + mVersion = 0; + mDiffNoteValues = new ContentValues(); + mDataList = new ArrayList(); + } + + public SqlNote(Context context, Cursor c) { + mContext = context; + mContentResolver = context.getContentResolver(); + mIsCreate = false; + loadFromCursor(c); + mDataList = new ArrayList(); + if (mType == Notes.TYPE_NOTE) + loadDataContent(); + mDiffNoteValues = new ContentValues(); + } + + public SqlNote(Context context, long id) { + mContext = context; + mContentResolver = context.getContentResolver(); + mIsCreate = false; + loadFromCursor(id); + mDataList = new ArrayList(); + if (mType == Notes.TYPE_NOTE) + loadDataContent(); + mDiffNoteValues = new ContentValues(); + + } + + private void loadFromCursor(long id) { + Cursor c = null; + try { + c = mContentResolver.query(Notes.CONTENT_NOTE_URI, PROJECTION_NOTE, "(_id=?)", + new String[] { + String.valueOf(id) + }, null); + if (c != null) { + c.moveToNext(); + loadFromCursor(c); + } else { + Log.w(TAG, "loadFromCursor: cursor = null"); + } + } finally { + if (c != null) + c.close(); + } + } + + private void loadFromCursor(Cursor c) { + mId = c.getLong(ID_COLUMN); + mAlertDate = c.getLong(ALERTED_DATE_COLUMN); + mBgColorId = c.getInt(BG_COLOR_ID_COLUMN); + mCreatedDate = c.getLong(CREATED_DATE_COLUMN); + mHasAttachment = c.getInt(HAS_ATTACHMENT_COLUMN); + mModifiedDate = c.getLong(MODIFIED_DATE_COLUMN); + mParentId = c.getLong(PARENT_ID_COLUMN); + mSnippet = c.getString(SNIPPET_COLUMN); + mType = c.getInt(TYPE_COLUMN); + mWidgetId = c.getInt(WIDGET_ID_COLUMN); + mWidgetType = c.getInt(WIDGET_TYPE_COLUMN); + mVersion = c.getLong(VERSION_COLUMN); + } + + private void loadDataContent() { + Cursor c = null; + mDataList.clear(); + try { + c = mContentResolver.query(Notes.CONTENT_DATA_URI, SqlData.PROJECTION_DATA, + "(note_id=?)", new String[] { + String.valueOf(mId) + }, null); + if (c != null) { + if (c.getCount() == 0) { + Log.w(TAG, "it seems that the note has not data"); + return; + } + while (c.moveToNext()) { + SqlData data = new SqlData(mContext, c); + mDataList.add(data); + } + } else { + Log.w(TAG, "loadDataContent: cursor = null"); + } + } finally { + if (c != null) + c.close(); + } + } + + public boolean setContent(JSONObject js) { + try { + JSONObject note = js.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); + if (note.getInt(NoteColumns.TYPE) == Notes.TYPE_SYSTEM) { + Log.w(TAG, "cannot set system folder"); + } else if (note.getInt(NoteColumns.TYPE) == Notes.TYPE_FOLDER) { + // for folder we can only update the snnipet and type + String snippet = note.has(NoteColumns.SNIPPET) ? note + .getString(NoteColumns.SNIPPET) : ""; + if (mIsCreate || !mSnippet.equals(snippet)) { + mDiffNoteValues.put(NoteColumns.SNIPPET, snippet); + } + mSnippet = snippet; + + int type = note.has(NoteColumns.TYPE) ? note.getInt(NoteColumns.TYPE) + : Notes.TYPE_NOTE; + if (mIsCreate || mType != type) { + mDiffNoteValues.put(NoteColumns.TYPE, type); + } + mType = type; + } else if (note.getInt(NoteColumns.TYPE) == Notes.TYPE_NOTE) { + JSONArray dataArray = js.getJSONArray(GTaskStringUtils.META_HEAD_DATA); + long id = note.has(NoteColumns.ID) ? note.getLong(NoteColumns.ID) : INVALID_ID; + if (mIsCreate || mId != id) { + mDiffNoteValues.put(NoteColumns.ID, id); + } + mId = id; + + long alertDate = note.has(NoteColumns.ALERTED_DATE) ? note + .getLong(NoteColumns.ALERTED_DATE) : 0; + if (mIsCreate || mAlertDate != alertDate) { + mDiffNoteValues.put(NoteColumns.ALERTED_DATE, alertDate); + } + mAlertDate = alertDate; + + int bgColorId = note.has(NoteColumns.BG_COLOR_ID) ? note + .getInt(NoteColumns.BG_COLOR_ID) : ResourceParser.getDefaultBgId(mContext); + if (mIsCreate || mBgColorId != bgColorId) { + mDiffNoteValues.put(NoteColumns.BG_COLOR_ID, bgColorId); + } + mBgColorId = bgColorId; + + long createDate = note.has(NoteColumns.CREATED_DATE) ? note + .getLong(NoteColumns.CREATED_DATE) : System.currentTimeMillis(); + if (mIsCreate || mCreatedDate != createDate) { + mDiffNoteValues.put(NoteColumns.CREATED_DATE, createDate); + } + mCreatedDate = createDate; + + int hasAttachment = note.has(NoteColumns.HAS_ATTACHMENT) ? note + .getInt(NoteColumns.HAS_ATTACHMENT) : 0; + if (mIsCreate || mHasAttachment != hasAttachment) { + mDiffNoteValues.put(NoteColumns.HAS_ATTACHMENT, hasAttachment); + } + mHasAttachment = hasAttachment; + + long modifiedDate = note.has(NoteColumns.MODIFIED_DATE) ? note + .getLong(NoteColumns.MODIFIED_DATE) : System.currentTimeMillis(); + if (mIsCreate || mModifiedDate != modifiedDate) { + mDiffNoteValues.put(NoteColumns.MODIFIED_DATE, modifiedDate); + } + mModifiedDate = modifiedDate; + + long parentId = note.has(NoteColumns.PARENT_ID) ? note + .getLong(NoteColumns.PARENT_ID) : 0; + if (mIsCreate || mParentId != parentId) { + mDiffNoteValues.put(NoteColumns.PARENT_ID, parentId); + } + mParentId = parentId; + + String snippet = note.has(NoteColumns.SNIPPET) ? note + .getString(NoteColumns.SNIPPET) : ""; + if (mIsCreate || !mSnippet.equals(snippet)) { + mDiffNoteValues.put(NoteColumns.SNIPPET, snippet); + } + mSnippet = snippet; + + int type = note.has(NoteColumns.TYPE) ? note.getInt(NoteColumns.TYPE) + : Notes.TYPE_NOTE; + if (mIsCreate || mType != type) { + mDiffNoteValues.put(NoteColumns.TYPE, type); + } + mType = type; + + int widgetId = note.has(NoteColumns.WIDGET_ID) ? note.getInt(NoteColumns.WIDGET_ID) + : AppWidgetManager.INVALID_APPWIDGET_ID; + if (mIsCreate || mWidgetId != widgetId) { + mDiffNoteValues.put(NoteColumns.WIDGET_ID, widgetId); + } + mWidgetId = widgetId; + + int widgetType = note.has(NoteColumns.WIDGET_TYPE) ? note + .getInt(NoteColumns.WIDGET_TYPE) : Notes.TYPE_WIDGET_INVALIDE; + if (mIsCreate || mWidgetType != widgetType) { + mDiffNoteValues.put(NoteColumns.WIDGET_TYPE, widgetType); + } + mWidgetType = widgetType; + + long originParent = note.has(NoteColumns.ORIGIN_PARENT_ID) ? note + .getLong(NoteColumns.ORIGIN_PARENT_ID) : 0; + if (mIsCreate || mOriginParent != originParent) { + mDiffNoteValues.put(NoteColumns.ORIGIN_PARENT_ID, originParent); + } + mOriginParent = originParent; + + for (int i = 0; i < dataArray.length(); i++) { + JSONObject data = dataArray.getJSONObject(i); + SqlData sqlData = null; + if (data.has(DataColumns.ID)) { + long dataId = data.getLong(DataColumns.ID); + for (SqlData temp : mDataList) { + if (dataId == temp.getId()) { + sqlData = temp; + } + } + } + + if (sqlData == null) { + sqlData = new SqlData(mContext); + mDataList.add(sqlData); + } + + sqlData.setContent(data); + } + } + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + return false; + } + return true; + } + + public JSONObject getContent() { + try { + JSONObject js = new JSONObject(); + + if (mIsCreate) { + Log.e(TAG, "it seems that we haven't created this in database yet"); + return null; + } + + JSONObject note = new JSONObject(); + if (mType == Notes.TYPE_NOTE) { + note.put(NoteColumns.ID, mId); + note.put(NoteColumns.ALERTED_DATE, mAlertDate); + note.put(NoteColumns.BG_COLOR_ID, mBgColorId); + note.put(NoteColumns.CREATED_DATE, mCreatedDate); + note.put(NoteColumns.HAS_ATTACHMENT, mHasAttachment); + note.put(NoteColumns.MODIFIED_DATE, mModifiedDate); + note.put(NoteColumns.PARENT_ID, mParentId); + note.put(NoteColumns.SNIPPET, mSnippet); + note.put(NoteColumns.TYPE, mType); + note.put(NoteColumns.WIDGET_ID, mWidgetId); + note.put(NoteColumns.WIDGET_TYPE, mWidgetType); + note.put(NoteColumns.ORIGIN_PARENT_ID, mOriginParent); + js.put(GTaskStringUtils.META_HEAD_NOTE, note); + + JSONArray dataArray = new JSONArray(); + for (SqlData sqlData : mDataList) { + JSONObject data = sqlData.getContent(); + if (data != null) { + dataArray.put(data); + } + } + js.put(GTaskStringUtils.META_HEAD_DATA, dataArray); + } else if (mType == Notes.TYPE_FOLDER || mType == Notes.TYPE_SYSTEM) { + note.put(NoteColumns.ID, mId); + note.put(NoteColumns.TYPE, mType); + note.put(NoteColumns.SNIPPET, mSnippet); + js.put(GTaskStringUtils.META_HEAD_NOTE, note); + } + + return js; + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + } + return null; + } + + public void setParentId(long id) { + mParentId = id; + mDiffNoteValues.put(NoteColumns.PARENT_ID, id); + } + + public void setGtaskId(String gid) { + mDiffNoteValues.put(NoteColumns.GTASK_ID, gid); + } + + public void setSyncId(long syncId) { + mDiffNoteValues.put(NoteColumns.SYNC_ID, syncId); + } + + public void resetLocalModified() { + mDiffNoteValues.put(NoteColumns.LOCAL_MODIFIED, 0); + } + + public long getId() { + return mId; + } + + public long getParentId() { + return mParentId; + } + + public String getSnippet() { + return mSnippet; + } + + public boolean isNoteType() { + return mType == Notes.TYPE_NOTE; + } + + public void commit(boolean validateVersion) { + if (mIsCreate) { + if (mId == INVALID_ID && mDiffNoteValues.containsKey(NoteColumns.ID)) { + mDiffNoteValues.remove(NoteColumns.ID); + } + + Uri uri = mContentResolver.insert(Notes.CONTENT_NOTE_URI, mDiffNoteValues); + try { + mId = Long.valueOf(uri.getPathSegments().get(1)); + } catch (NumberFormatException e) { + Log.e(TAG, "Get note id error :" + e.toString()); + throw new ActionFailureException("create note failed"); + } + if (mId == 0) { + throw new IllegalStateException("Create thread id failed"); + } + + if (mType == Notes.TYPE_NOTE) { + for (SqlData sqlData : mDataList) { + sqlData.commit(mId, false, -1); + } + } + } else { + if (mId <= 0 && mId != Notes.ID_ROOT_FOLDER && mId != Notes.ID_CALL_RECORD_FOLDER) { + Log.e(TAG, "No such note"); + throw new IllegalStateException("Try to update note with invalid id"); + } + if (mDiffNoteValues.size() > 0) { + mVersion ++; + int result = 0; + if (!validateVersion) { + result = mContentResolver.update(Notes.CONTENT_NOTE_URI, mDiffNoteValues, "(" + + NoteColumns.ID + "=?)", new String[] { + String.valueOf(mId) + }); + } else { + result = mContentResolver.update(Notes.CONTENT_NOTE_URI, mDiffNoteValues, "(" + + NoteColumns.ID + "=?) AND (" + NoteColumns.VERSION + "<=?)", + new String[] { + String.valueOf(mId), String.valueOf(mVersion) + }); + } + if (result == 0) { + Log.w(TAG, "there is no update. maybe user updates note when syncing"); + } + } + + if (mType == Notes.TYPE_NOTE) { + for (SqlData sqlData : mDataList) { + sqlData.commit(mId, validateVersion, mVersion); + } + } + } + + // refresh local info + loadFromCursor(mId); + if (mType == Notes.TYPE_NOTE) + loadDataContent(); + + mDiffNoteValues.clear(); + mIsCreate = false; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/data/Task.java b/src/test01/app/src/main/java/net/micode/notes/gtask/data/Task.java new file mode 100644 index 0000000..6a19454 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/data/Task.java @@ -0,0 +1,351 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.data; + +import android.database.Cursor; +import android.text.TextUtils; +import android.util.Log; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.DataConstants; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.gtask.exception.ActionFailureException; +import net.micode.notes.tool.GTaskStringUtils; + +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + + +public class Task extends Node { + private static final String TAG = Task.class.getSimpleName(); + + private boolean mCompleted; + + private String mNotes; + + private JSONObject mMetaInfo; + + private Task mPriorSibling; + + private TaskList mParent; + + public Task() { + super(); + mCompleted = false; + mNotes = null; + mPriorSibling = null; + mParent = null; + mMetaInfo = null; + } + + public JSONObject getCreateAction(int actionId) { + JSONObject js = new JSONObject(); + + try { + // action_type + js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_CREATE); + + // action_id + js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); + + // index + js.put(GTaskStringUtils.GTASK_JSON_INDEX, mParent.getChildTaskIndex(this)); + + // entity_delta + JSONObject entity = new JSONObject(); + entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName()); + entity.put(GTaskStringUtils.GTASK_JSON_CREATOR_ID, "null"); + entity.put(GTaskStringUtils.GTASK_JSON_ENTITY_TYPE, + GTaskStringUtils.GTASK_JSON_TYPE_TASK); + if (getNotes() != null) { + entity.put(GTaskStringUtils.GTASK_JSON_NOTES, getNotes()); + } + js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity); + + // parent_id + js.put(GTaskStringUtils.GTASK_JSON_PARENT_ID, mParent.getGid()); + + // dest_parent_type + js.put(GTaskStringUtils.GTASK_JSON_DEST_PARENT_TYPE, + GTaskStringUtils.GTASK_JSON_TYPE_GROUP); + + // list_id + js.put(GTaskStringUtils.GTASK_JSON_LIST_ID, mParent.getGid()); + + // prior_sibling_id + if (mPriorSibling != null) { + js.put(GTaskStringUtils.GTASK_JSON_PRIOR_SIBLING_ID, mPriorSibling.getGid()); + } + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("fail to generate task-create jsonobject"); + } + + return js; + } + + public JSONObject getUpdateAction(int actionId) { + JSONObject js = new JSONObject(); + + try { + // action_type + js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_UPDATE); + + // action_id + js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); + + // id + js.put(GTaskStringUtils.GTASK_JSON_ID, getGid()); + + // entity_delta + JSONObject entity = new JSONObject(); + entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName()); + if (getNotes() != null) { + entity.put(GTaskStringUtils.GTASK_JSON_NOTES, getNotes()); + } + entity.put(GTaskStringUtils.GTASK_JSON_DELETED, getDeleted()); + js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity); + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("fail to generate task-update jsonobject"); + } + + return js; + } + + public void setContentByRemoteJSON(JSONObject js) { + if (js != null) { + try { + // id + if (js.has(GTaskStringUtils.GTASK_JSON_ID)) { + setGid(js.getString(GTaskStringUtils.GTASK_JSON_ID)); + } + + // last_modified + if (js.has(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)) { + setLastModified(js.getLong(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)); + } + + // name + if (js.has(GTaskStringUtils.GTASK_JSON_NAME)) { + setName(js.getString(GTaskStringUtils.GTASK_JSON_NAME)); + } + + // notes + if (js.has(GTaskStringUtils.GTASK_JSON_NOTES)) { + setNotes(js.getString(GTaskStringUtils.GTASK_JSON_NOTES)); + } + + // deleted + if (js.has(GTaskStringUtils.GTASK_JSON_DELETED)) { + setDeleted(js.getBoolean(GTaskStringUtils.GTASK_JSON_DELETED)); + } + + // completed + if (js.has(GTaskStringUtils.GTASK_JSON_COMPLETED)) { + setCompleted(js.getBoolean(GTaskStringUtils.GTASK_JSON_COMPLETED)); + } + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("fail to get task content from jsonobject"); + } + } + } + + public void setContentByLocalJSON(JSONObject js) { + if (js == null || !js.has(GTaskStringUtils.META_HEAD_NOTE) + || !js.has(GTaskStringUtils.META_HEAD_DATA)) { + Log.w(TAG, "setContentByLocalJSON: nothing is avaiable"); + } + + try { + JSONObject note = js.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); + JSONArray dataArray = js.getJSONArray(GTaskStringUtils.META_HEAD_DATA); + + if (note.getInt(NoteColumns.TYPE) != Notes.TYPE_NOTE) { + Log.e(TAG, "invalid type"); + return; + } + + for (int i = 0; i < dataArray.length(); i++) { + JSONObject data = dataArray.getJSONObject(i); + if (TextUtils.equals(data.getString(DataColumns.MIME_TYPE), DataConstants.NOTE)) { + setName(data.getString(DataColumns.CONTENT)); + break; + } + } + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + } + } + + public JSONObject getLocalJSONFromContent() { + String name = getName(); + try { + if (mMetaInfo == null) { + // new task created from web + if (name == null) { + Log.w(TAG, "the note seems to be an empty one"); + return null; + } + + JSONObject js = new JSONObject(); + JSONObject note = new JSONObject(); + JSONArray dataArray = new JSONArray(); + JSONObject data = new JSONObject(); + data.put(DataColumns.CONTENT, name); + dataArray.put(data); + js.put(GTaskStringUtils.META_HEAD_DATA, dataArray); + note.put(NoteColumns.TYPE, Notes.TYPE_NOTE); + js.put(GTaskStringUtils.META_HEAD_NOTE, note); + return js; + } else { + // synced task + JSONObject note = mMetaInfo.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); + JSONArray dataArray = mMetaInfo.getJSONArray(GTaskStringUtils.META_HEAD_DATA); + + for (int i = 0; i < dataArray.length(); i++) { + JSONObject data = dataArray.getJSONObject(i); + if (TextUtils.equals(data.getString(DataColumns.MIME_TYPE), DataConstants.NOTE)) { + data.put(DataColumns.CONTENT, getName()); + break; + } + } + + note.put(NoteColumns.TYPE, Notes.TYPE_NOTE); + return mMetaInfo; + } + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + return null; + } + } + + public void setMetaInfo(MetaData metaData) { + if (metaData != null && metaData.getNotes() != null) { + try { + mMetaInfo = new JSONObject(metaData.getNotes()); + } catch (JSONException e) { + Log.w(TAG, e.toString()); + mMetaInfo = null; + } + } + } + + public int getSyncAction(Cursor c) { + try { + JSONObject noteInfo = null; + if (mMetaInfo != null && mMetaInfo.has(GTaskStringUtils.META_HEAD_NOTE)) { + noteInfo = mMetaInfo.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); + } + + if (noteInfo == null) { + Log.w(TAG, "it seems that note meta has been deleted"); + return SYNC_ACTION_UPDATE_REMOTE; + } + + if (!noteInfo.has(NoteColumns.ID)) { + Log.w(TAG, "remote note id seems to be deleted"); + return SYNC_ACTION_UPDATE_LOCAL; + } + + // validate the note id now + if (c.getLong(SqlNote.ID_COLUMN) != noteInfo.getLong(NoteColumns.ID)) { + Log.w(TAG, "note id doesn't match"); + return SYNC_ACTION_UPDATE_LOCAL; + } + + if (c.getInt(SqlNote.LOCAL_MODIFIED_COLUMN) == 0) { + // there is no local update + if (c.getLong(SqlNote.SYNC_ID_COLUMN) == getLastModified()) { + // no update both side + return SYNC_ACTION_NONE; + } else { + // apply remote to local + return SYNC_ACTION_UPDATE_LOCAL; + } + } else { + // validate gtask id + if (!c.getString(SqlNote.GTASK_ID_COLUMN).equals(getGid())) { + Log.e(TAG, "gtask id doesn't match"); + return SYNC_ACTION_ERROR; + } + if (c.getLong(SqlNote.SYNC_ID_COLUMN) == getLastModified()) { + // local modification only + return SYNC_ACTION_UPDATE_REMOTE; + } else { + return SYNC_ACTION_UPDATE_CONFLICT; + } + } + } catch (Exception e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + } + + return SYNC_ACTION_ERROR; + } + + public boolean isWorthSaving() { + return mMetaInfo != null || (getName() != null && getName().trim().length() > 0) + || (getNotes() != null && getNotes().trim().length() > 0); + } + + public void setCompleted(boolean completed) { + this.mCompleted = completed; + } + + public void setNotes(String notes) { + this.mNotes = notes; + } + + public void setPriorSibling(Task priorSibling) { + this.mPriorSibling = priorSibling; + } + + public void setParent(TaskList parent) { + this.mParent = parent; + } + + public boolean getCompleted() { + return this.mCompleted; + } + + public String getNotes() { + return this.mNotes; + } + + public Task getPriorSibling() { + return this.mPriorSibling; + } + + public TaskList getParent() { + return this.mParent; + } + +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/data/TaskList.java b/src/test01/app/src/main/java/net/micode/notes/gtask/data/TaskList.java new file mode 100644 index 0000000..4ea21c5 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/data/TaskList.java @@ -0,0 +1,343 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.data; + +import android.database.Cursor; +import android.util.Log; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.gtask.exception.ActionFailureException; +import net.micode.notes.tool.GTaskStringUtils; + +import org.json.JSONException; +import org.json.JSONObject; + +import java.util.ArrayList; + + +public class TaskList extends Node { + private static final String TAG = TaskList.class.getSimpleName(); + + private int mIndex; + + private ArrayList mChildren; + + public TaskList() { + super(); + mChildren = new ArrayList(); + mIndex = 1; + } + + public JSONObject getCreateAction(int actionId) { + JSONObject js = new JSONObject(); + + try { + // action_type + js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_CREATE); + + // action_id + js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); + + // index + js.put(GTaskStringUtils.GTASK_JSON_INDEX, mIndex); + + // entity_delta + JSONObject entity = new JSONObject(); + entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName()); + entity.put(GTaskStringUtils.GTASK_JSON_CREATOR_ID, "null"); + entity.put(GTaskStringUtils.GTASK_JSON_ENTITY_TYPE, + GTaskStringUtils.GTASK_JSON_TYPE_GROUP); + js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity); + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("fail to generate tasklist-create jsonobject"); + } + + return js; + } + + public JSONObject getUpdateAction(int actionId) { + JSONObject js = new JSONObject(); + + try { + // action_type + js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_UPDATE); + + // action_id + js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); + + // id + js.put(GTaskStringUtils.GTASK_JSON_ID, getGid()); + + // entity_delta + JSONObject entity = new JSONObject(); + entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName()); + entity.put(GTaskStringUtils.GTASK_JSON_DELETED, getDeleted()); + js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity); + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("fail to generate tasklist-update jsonobject"); + } + + return js; + } + + public void setContentByRemoteJSON(JSONObject js) { + if (js != null) { + try { + // id + if (js.has(GTaskStringUtils.GTASK_JSON_ID)) { + setGid(js.getString(GTaskStringUtils.GTASK_JSON_ID)); + } + + // last_modified + if (js.has(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)) { + setLastModified(js.getLong(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)); + } + + // name + if (js.has(GTaskStringUtils.GTASK_JSON_NAME)) { + setName(js.getString(GTaskStringUtils.GTASK_JSON_NAME)); + } + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("fail to get tasklist content from jsonobject"); + } + } + } + + public void setContentByLocalJSON(JSONObject js) { + if (js == null || !js.has(GTaskStringUtils.META_HEAD_NOTE)) { + Log.w(TAG, "setContentByLocalJSON: nothing is avaiable"); + } + + try { + JSONObject folder = js.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); + + if (folder.getInt(NoteColumns.TYPE) == Notes.TYPE_FOLDER) { + String name = folder.getString(NoteColumns.SNIPPET); + setName(GTaskStringUtils.MIUI_FOLDER_PREFFIX + name); + } else if (folder.getInt(NoteColumns.TYPE) == Notes.TYPE_SYSTEM) { + if (folder.getLong(NoteColumns.ID) == Notes.ID_ROOT_FOLDER) + setName(GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_DEFAULT); + else if (folder.getLong(NoteColumns.ID) == Notes.ID_CALL_RECORD_FOLDER) + setName(GTaskStringUtils.MIUI_FOLDER_PREFFIX + + GTaskStringUtils.FOLDER_CALL_NOTE); + else + Log.e(TAG, "invalid system folder"); + } else { + Log.e(TAG, "error type"); + } + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + } + } + + public JSONObject getLocalJSONFromContent() { + try { + JSONObject js = new JSONObject(); + JSONObject folder = new JSONObject(); + + String folderName = getName(); + if (getName().startsWith(GTaskStringUtils.MIUI_FOLDER_PREFFIX)) + folderName = folderName.substring(GTaskStringUtils.MIUI_FOLDER_PREFFIX.length(), + folderName.length()); + folder.put(NoteColumns.SNIPPET, folderName); + if (folderName.equals(GTaskStringUtils.FOLDER_DEFAULT) + || folderName.equals(GTaskStringUtils.FOLDER_CALL_NOTE)) + folder.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM); + else + folder.put(NoteColumns.TYPE, Notes.TYPE_FOLDER); + + js.put(GTaskStringUtils.META_HEAD_NOTE, folder); + + return js; + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + return null; + } + } + + public int getSyncAction(Cursor c) { + try { + if (c.getInt(SqlNote.LOCAL_MODIFIED_COLUMN) == 0) { + // there is no local update + if (c.getLong(SqlNote.SYNC_ID_COLUMN) == getLastModified()) { + // no update both side + return SYNC_ACTION_NONE; + } else { + // apply remote to local + return SYNC_ACTION_UPDATE_LOCAL; + } + } else { + // validate gtask id + if (!c.getString(SqlNote.GTASK_ID_COLUMN).equals(getGid())) { + Log.e(TAG, "gtask id doesn't match"); + return SYNC_ACTION_ERROR; + } + if (c.getLong(SqlNote.SYNC_ID_COLUMN) == getLastModified()) { + // local modification only + return SYNC_ACTION_UPDATE_REMOTE; + } else { + // for folder conflicts, just apply local modification + return SYNC_ACTION_UPDATE_REMOTE; + } + } + } catch (Exception e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + } + + return SYNC_ACTION_ERROR; + } + + public int getChildTaskCount() { + return mChildren.size(); + } + + public boolean addChildTask(Task task) { + boolean ret = false; + if (task != null && !mChildren.contains(task)) { + ret = mChildren.add(task); + if (ret) { + // need to set prior sibling and parent + task.setPriorSibling(mChildren.isEmpty() ? null : mChildren + .get(mChildren.size() - 1)); + task.setParent(this); + } + } + return ret; + } + + public boolean addChildTask(Task task, int index) { + if (index < 0 || index > mChildren.size()) { + Log.e(TAG, "add child task: invalid index"); + return false; + } + + int pos = mChildren.indexOf(task); + if (task != null && pos == -1) { + mChildren.add(index, task); + + // update the task list + Task preTask = null; + Task afterTask = null; + if (index != 0) + preTask = mChildren.get(index - 1); + if (index != mChildren.size() - 1) + afterTask = mChildren.get(index + 1); + + task.setPriorSibling(preTask); + if (afterTask != null) + afterTask.setPriorSibling(task); + } + + return true; + } + + public boolean removeChildTask(Task task) { + boolean ret = false; + int index = mChildren.indexOf(task); + if (index != -1) { + ret = mChildren.remove(task); + + if (ret) { + // reset prior sibling and parent + task.setPriorSibling(null); + task.setParent(null); + + // update the task list + if (index != mChildren.size()) { + mChildren.get(index).setPriorSibling( + index == 0 ? null : mChildren.get(index - 1)); + } + } + } + return ret; + } + + public boolean moveChildTask(Task task, int index) { + + if (index < 0 || index >= mChildren.size()) { + Log.e(TAG, "move child task: invalid index"); + return false; + } + + int pos = mChildren.indexOf(task); + if (pos == -1) { + Log.e(TAG, "move child task: the task should in the list"); + return false; + } + + if (pos == index) + return true; + return (removeChildTask(task) && addChildTask(task, index)); + } + + public Task findChildTaskByGid(String gid) { + for (int i = 0; i < mChildren.size(); i++) { + Task t = mChildren.get(i); + if (t.getGid().equals(gid)) { + return t; + } + } + return null; + } + + public int getChildTaskIndex(Task task) { + return mChildren.indexOf(task); + } + + public Task getChildTaskByIndex(int index) { + if (index < 0 || index >= mChildren.size()) { + Log.e(TAG, "getTaskByIndex: invalid index"); + return null; + } + return mChildren.get(index); + } + + public Task getChilTaskByGid(String gid) { + for (Task task : mChildren) { + if (task.getGid().equals(gid)) + return task; + } + return null; + } + + public ArrayList getChildTaskList() { + return this.mChildren; + } + + public void setIndex(int index) { + this.mIndex = index; + } + + public int getIndex() { + return this.mIndex; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java b/src/test01/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java new file mode 100644 index 0000000..15504be --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.exception; + +public class ActionFailureException extends RuntimeException { + private static final long serialVersionUID = 4425249765923293627L; + + public ActionFailureException() { + super(); + } + + public ActionFailureException(String paramString) { + super(paramString); + } + + public ActionFailureException(String paramString, Throwable paramThrowable) { + super(paramString, paramThrowable); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java b/src/test01/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java new file mode 100644 index 0000000..b08cfb1 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.exception; + +public class NetworkFailureException extends Exception { + private static final long serialVersionUID = 2107610287180234136L; + + public NetworkFailureException() { + super(); + } + + public NetworkFailureException(String paramString) { + super(paramString); + } + + public NetworkFailureException(String paramString, Throwable paramThrowable) { + super(paramString, paramThrowable); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java b/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java new file mode 100644 index 0000000..0de0038 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java @@ -0,0 +1,132 @@ + +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.remote; + +import android.app.Notification; +import android.app.NotificationManager; +import android.app.PendingIntent; +import android.content.Context; +import android.content.Intent; +import android.os.AsyncTask; + +import net.micode.notes.R; +import net.micode.notes.ui.NotesListActivity; +import net.micode.notes.ui.NotesPreferenceActivity; + + +public class GTaskASyncTask extends AsyncTask { + + private static int GTASK_SYNC_NOTIFICATION_ID = 5234235; + + public interface OnCompleteListener { + void onComplete(); + } + + private Context mContext; + + private NotificationManager mNotifiManager; + + private GTaskManager mTaskManager; + + private OnCompleteListener mOnCompleteListener; + + public GTaskASyncTask(Context context, OnCompleteListener listener) { + mContext = context; + mOnCompleteListener = listener; + mNotifiManager = (NotificationManager) mContext + .getSystemService(Context.NOTIFICATION_SERVICE); + mTaskManager = GTaskManager.getInstance(); + } + + public void cancelSync() { + mTaskManager.cancelSync(); + } + + public void publishProgess(String message) { + publishProgress(new String[] { + message + }); + } + + private void showNotification(int tickerId, String content) { + Notification notification = new Notification(R.drawable.notification, mContext + .getString(tickerId), System.currentTimeMillis()); + notification.defaults = Notification.DEFAULT_LIGHTS; + notification.flags = Notification.FLAG_AUTO_CANCEL; + PendingIntent pendingIntent; + if (tickerId != R.string.ticker_success) { + pendingIntent = PendingIntent.getActivity(mContext, 0, new Intent(mContext, + NotesPreferenceActivity.class), 0); + + } else { + pendingIntent = PendingIntent.getActivity(mContext, 0, new Intent(mContext, + NotesListActivity.class), 0); + } +// notification.setLatestEventInfo(mContext, mContext.getString(R.string.app_name), content, +// pendingIntent); + notification = new Notification.Builder(mContext) + .setContentIntent(pendingIntent) + .setTicker(mContext.getString(R.string.app_name)) + .setContentTitle(mContext.getString(R.string.app_name)) + .setContentText(content) + .setWhen(System.currentTimeMillis()) + .setSmallIcon(R.drawable.icon_app) + .build(); + notification.icon = R.drawable.icon_app; + mNotifiManager.notify(GTASK_SYNC_NOTIFICATION_ID, notification); + } + + @Override + protected Integer doInBackground(Void... unused) { + publishProgess(mContext.getString(R.string.sync_progress_login, NotesPreferenceActivity + .getSyncAccountName(mContext))); + return mTaskManager.sync(mContext, this); + } + + @Override + protected void onProgressUpdate(String... progress) { + showNotification(R.string.ticker_syncing, progress[0]); + if (mContext instanceof GTaskSyncService) { + ((GTaskSyncService) mContext).sendBroadcast(progress[0]); + } + } + + @Override + protected void onPostExecute(Integer result) { + if (result == GTaskManager.STATE_SUCCESS) { + showNotification(R.string.ticker_success, mContext.getString( + R.string.success_sync_account, mTaskManager.getSyncAccount())); + NotesPreferenceActivity.setLastSyncTime(mContext, System.currentTimeMillis()); + } else if (result == GTaskManager.STATE_NETWORK_ERROR) { + showNotification(R.string.ticker_fail, mContext.getString(R.string.error_sync_network)); + } else if (result == GTaskManager.STATE_INTERNAL_ERROR) { + showNotification(R.string.ticker_fail, mContext.getString(R.string.error_sync_internal)); + } else if (result == GTaskManager.STATE_SYNC_CANCELLED) { + showNotification(R.string.ticker_cancel, mContext + .getString(R.string.error_sync_cancelled)); + } + if (mOnCompleteListener != null) { + new Thread(new Runnable() { + + public void run() { + mOnCompleteListener.onComplete(); + } + }).start(); + } + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java b/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java new file mode 100644 index 0000000..c67dfdf --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java @@ -0,0 +1,585 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.remote; + +import android.accounts.Account; +import android.accounts.AccountManager; +import android.accounts.AccountManagerFuture; +import android.app.Activity; +import android.os.Bundle; +import android.text.TextUtils; +import android.util.Log; + +import net.micode.notes.gtask.data.Node; +import net.micode.notes.gtask.data.Task; +import net.micode.notes.gtask.data.TaskList; +import net.micode.notes.gtask.exception.ActionFailureException; +import net.micode.notes.gtask.exception.NetworkFailureException; +import net.micode.notes.tool.GTaskStringUtils; +import net.micode.notes.ui.NotesPreferenceActivity; + +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; +import org.apache.http.client.ClientProtocolException; +import org.apache.http.client.entity.UrlEncodedFormEntity; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.cookie.Cookie; +import org.apache.http.impl.client.BasicCookieStore; +import org.apache.http.impl.client.DefaultHttpClient; +import org.apache.http.message.BasicNameValuePair; +import org.apache.http.params.BasicHttpParams; +import org.apache.http.params.HttpConnectionParams; +import org.apache.http.params.HttpParams; +import org.apache.http.params.HttpProtocolParams; +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.LinkedList; +import java.util.List; +import java.util.zip.GZIPInputStream; +import java.util.zip.Inflater; +import java.util.zip.InflaterInputStream; + + +public class GTaskClient { + private static final String TAG = GTaskClient.class.getSimpleName(); + + private static final String GTASK_URL = "https://mail.google.com/tasks/"; + + private static final String GTASK_GET_URL = "https://mail.google.com/tasks/ig"; + + private static final String GTASK_POST_URL = "https://mail.google.com/tasks/r/ig"; + + private static GTaskClient mInstance = null; + + private DefaultHttpClient mHttpClient; + + private String mGetUrl; + + private String mPostUrl; + + private long mClientVersion; + + private boolean mLoggedin; + + private long mLastLoginTime; + + private int mActionId; + + private Account mAccount; + + private JSONArray mUpdateArray; + + private GTaskClient() { + mHttpClient = null; + mGetUrl = GTASK_GET_URL; + mPostUrl = GTASK_POST_URL; + mClientVersion = -1; + mLoggedin = false; + mLastLoginTime = 0; + mActionId = 1; + mAccount = null; + mUpdateArray = null; + } + + public static synchronized GTaskClient getInstance() { + if (mInstance == null) { + mInstance = new GTaskClient(); + } + return mInstance; + } + + public boolean login(Activity activity) { + // we suppose that the cookie would expire after 5 minutes + // then we need to re-login + final long interval = 1000 * 60 * 5; + if (mLastLoginTime + interval < System.currentTimeMillis()) { + mLoggedin = false; + } + + // need to re-login after account switch + if (mLoggedin + && !TextUtils.equals(getSyncAccount().name, NotesPreferenceActivity + .getSyncAccountName(activity))) { + mLoggedin = false; + } + + if (mLoggedin) { + Log.d(TAG, "already logged in"); + return true; + } + + mLastLoginTime = System.currentTimeMillis(); + String authToken = loginGoogleAccount(activity, false); + if (authToken == null) { + Log.e(TAG, "login google account failed"); + return false; + } + + // login with custom domain if necessary + if (!(mAccount.name.toLowerCase().endsWith("gmail.com") || mAccount.name.toLowerCase() + .endsWith("googlemail.com"))) { + StringBuilder url = new StringBuilder(GTASK_URL).append("a/"); + int index = mAccount.name.indexOf('@') + 1; + String suffix = mAccount.name.substring(index); + url.append(suffix + "/"); + mGetUrl = url.toString() + "ig"; + mPostUrl = url.toString() + "r/ig"; + + if (tryToLoginGtask(activity, authToken)) { + mLoggedin = true; + } + } + + // try to login with google official url + if (!mLoggedin) { + mGetUrl = GTASK_GET_URL; + mPostUrl = GTASK_POST_URL; + if (!tryToLoginGtask(activity, authToken)) { + return false; + } + } + + mLoggedin = true; + return true; + } + + private String loginGoogleAccount(Activity activity, boolean invalidateToken) { + String authToken; + AccountManager accountManager = AccountManager.get(activity); + Account[] accounts = accountManager.getAccountsByType("com.google"); + + if (accounts.length == 0) { + Log.e(TAG, "there is no available google account"); + return null; + } + + String accountName = NotesPreferenceActivity.getSyncAccountName(activity); + Account account = null; + for (Account a : accounts) { + if (a.name.equals(accountName)) { + account = a; + break; + } + } + if (account != null) { + mAccount = account; + } else { + Log.e(TAG, "unable to get an account with the same name in the settings"); + return null; + } + + // get the token now + AccountManagerFuture accountManagerFuture = accountManager.getAuthToken(account, + "goanna_mobile", null, activity, null, null); + try { + Bundle authTokenBundle = accountManagerFuture.getResult(); + authToken = authTokenBundle.getString(AccountManager.KEY_AUTHTOKEN); + if (invalidateToken) { + accountManager.invalidateAuthToken("com.google", authToken); + loginGoogleAccount(activity, false); + } + } catch (Exception e) { + Log.e(TAG, "get auth token failed"); + authToken = null; + } + + return authToken; + } + + private boolean tryToLoginGtask(Activity activity, String authToken) { + if (!loginGtask(authToken)) { + // maybe the auth token is out of date, now let's invalidate the + // token and try again + authToken = loginGoogleAccount(activity, true); + if (authToken == null) { + Log.e(TAG, "login google account failed"); + return false; + } + + if (!loginGtask(authToken)) { + Log.e(TAG, "login gtask failed"); + return false; + } + } + return true; + } + + private boolean loginGtask(String authToken) { + int timeoutConnection = 10000; + int timeoutSocket = 15000; + HttpParams httpParameters = new BasicHttpParams(); + HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection); + HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket); + mHttpClient = new DefaultHttpClient(httpParameters); + BasicCookieStore localBasicCookieStore = new BasicCookieStore(); + mHttpClient.setCookieStore(localBasicCookieStore); + HttpProtocolParams.setUseExpectContinue(mHttpClient.getParams(), false); + + // login gtask + try { + String loginUrl = mGetUrl + "?auth=" + authToken; + HttpGet httpGet = new HttpGet(loginUrl); + HttpResponse response = null; + response = mHttpClient.execute(httpGet); + + // get the cookie now + List cookies = mHttpClient.getCookieStore().getCookies(); + boolean hasAuthCookie = false; + for (Cookie cookie : cookies) { + if (cookie.getName().contains("GTL")) { + hasAuthCookie = true; + } + } + if (!hasAuthCookie) { + Log.w(TAG, "it seems that there is no auth cookie"); + } + + // get the client version + String resString = getResponseContent(response.getEntity()); + String jsBegin = "_setup("; + String jsEnd = ")}"; + int begin = resString.indexOf(jsBegin); + int end = resString.lastIndexOf(jsEnd); + String jsString = null; + if (begin != -1 && end != -1 && begin < end) { + jsString = resString.substring(begin + jsBegin.length(), end); + } + JSONObject js = new JSONObject(jsString); + mClientVersion = js.getLong("v"); + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + return false; + } catch (Exception e) { + // simply catch all exceptions + Log.e(TAG, "httpget gtask_url failed"); + return false; + } + + return true; + } + + private int getActionId() { + return mActionId++; + } + + private HttpPost createHttpPost() { + HttpPost httpPost = new HttpPost(mPostUrl); + httpPost.setHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); + httpPost.setHeader("AT", "1"); + return httpPost; + } + + private String getResponseContent(HttpEntity entity) throws IOException { + String contentEncoding = null; + if (entity.getContentEncoding() != null) { + contentEncoding = entity.getContentEncoding().getValue(); + Log.d(TAG, "encoding: " + contentEncoding); + } + + InputStream input = entity.getContent(); + if (contentEncoding != null && contentEncoding.equalsIgnoreCase("gzip")) { + input = new GZIPInputStream(entity.getContent()); + } else if (contentEncoding != null && contentEncoding.equalsIgnoreCase("deflate")) { + Inflater inflater = new Inflater(true); + input = new InflaterInputStream(entity.getContent(), inflater); + } + + try { + InputStreamReader isr = new InputStreamReader(input); + BufferedReader br = new BufferedReader(isr); + StringBuilder sb = new StringBuilder(); + + while (true) { + String buff = br.readLine(); + if (buff == null) { + return sb.toString(); + } + sb = sb.append(buff); + } + } finally { + input.close(); + } + } + + private JSONObject postRequest(JSONObject js) throws NetworkFailureException { + if (!mLoggedin) { + Log.e(TAG, "please login first"); + throw new ActionFailureException("not logged in"); + } + + HttpPost httpPost = createHttpPost(); + try { + LinkedList list = new LinkedList(); + list.add(new BasicNameValuePair("r", js.toString())); + UrlEncodedFormEntity entity = new UrlEncodedFormEntity(list, "UTF-8"); + httpPost.setEntity(entity); + + // execute the post + HttpResponse response = mHttpClient.execute(httpPost); + String jsString = getResponseContent(response.getEntity()); + return new JSONObject(jsString); + + } catch (ClientProtocolException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new NetworkFailureException("postRequest failed"); + } catch (IOException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new NetworkFailureException("postRequest failed"); + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("unable to convert response content to jsonobject"); + } catch (Exception e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("error occurs when posting request"); + } + } + + public void createTask(Task task) throws NetworkFailureException { + commitUpdate(); + try { + JSONObject jsPost = new JSONObject(); + JSONArray actionList = new JSONArray(); + + // action_list + actionList.put(task.getCreateAction(getActionId())); + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); + + // client_version + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + // post + JSONObject jsResponse = postRequest(jsPost); + JSONObject jsResult = (JSONObject) jsResponse.getJSONArray( + GTaskStringUtils.GTASK_JSON_RESULTS).get(0); + task.setGid(jsResult.getString(GTaskStringUtils.GTASK_JSON_NEW_ID)); + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("create task: handing jsonobject failed"); + } + } + + public void createTaskList(TaskList tasklist) throws NetworkFailureException { + commitUpdate(); + try { + JSONObject jsPost = new JSONObject(); + JSONArray actionList = new JSONArray(); + + // action_list + actionList.put(tasklist.getCreateAction(getActionId())); + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); + + // client version + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + // post + JSONObject jsResponse = postRequest(jsPost); + JSONObject jsResult = (JSONObject) jsResponse.getJSONArray( + GTaskStringUtils.GTASK_JSON_RESULTS).get(0); + tasklist.setGid(jsResult.getString(GTaskStringUtils.GTASK_JSON_NEW_ID)); + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("create tasklist: handing jsonobject failed"); + } + } + + public void commitUpdate() throws NetworkFailureException { + if (mUpdateArray != null) { + try { + JSONObject jsPost = new JSONObject(); + + // action_list + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, mUpdateArray); + + // client_version + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + postRequest(jsPost); + mUpdateArray = null; + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("commit update: handing jsonobject failed"); + } + } + } + + public void addUpdateNode(Node node) throws NetworkFailureException { + if (node != null) { + // too many update items may result in an error + // set max to 10 items + if (mUpdateArray != null && mUpdateArray.length() > 10) { + commitUpdate(); + } + + if (mUpdateArray == null) + mUpdateArray = new JSONArray(); + mUpdateArray.put(node.getUpdateAction(getActionId())); + } + } + + public void moveTask(Task task, TaskList preParent, TaskList curParent) + throws NetworkFailureException { + commitUpdate(); + try { + JSONObject jsPost = new JSONObject(); + JSONArray actionList = new JSONArray(); + JSONObject action = new JSONObject(); + + // action_list + action.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_MOVE); + action.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, getActionId()); + action.put(GTaskStringUtils.GTASK_JSON_ID, task.getGid()); + if (preParent == curParent && task.getPriorSibling() != null) { + // put prioring_sibing_id only if moving within the tasklist and + // it is not the first one + action.put(GTaskStringUtils.GTASK_JSON_PRIOR_SIBLING_ID, task.getPriorSibling()); + } + action.put(GTaskStringUtils.GTASK_JSON_SOURCE_LIST, preParent.getGid()); + action.put(GTaskStringUtils.GTASK_JSON_DEST_PARENT, curParent.getGid()); + if (preParent != curParent) { + // put the dest_list only if moving between tasklists + action.put(GTaskStringUtils.GTASK_JSON_DEST_LIST, curParent.getGid()); + } + actionList.put(action); + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); + + // client_version + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + postRequest(jsPost); + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("move task: handing jsonobject failed"); + } + } + + public void deleteNode(Node node) throws NetworkFailureException { + commitUpdate(); + try { + JSONObject jsPost = new JSONObject(); + JSONArray actionList = new JSONArray(); + + // action_list + node.setDeleted(true); + actionList.put(node.getUpdateAction(getActionId())); + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); + + // client_version + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + postRequest(jsPost); + mUpdateArray = null; + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("delete node: handing jsonobject failed"); + } + } + + public JSONArray getTaskLists() throws NetworkFailureException { + if (!mLoggedin) { + Log.e(TAG, "please login first"); + throw new ActionFailureException("not logged in"); + } + + try { + HttpGet httpGet = new HttpGet(mGetUrl); + HttpResponse response = null; + response = mHttpClient.execute(httpGet); + + // get the task list + String resString = getResponseContent(response.getEntity()); + String jsBegin = "_setup("; + String jsEnd = ")}"; + int begin = resString.indexOf(jsBegin); + int end = resString.lastIndexOf(jsEnd); + String jsString = null; + if (begin != -1 && end != -1 && begin < end) { + jsString = resString.substring(begin + jsBegin.length(), end); + } + JSONObject js = new JSONObject(jsString); + return js.getJSONObject("t").getJSONArray(GTaskStringUtils.GTASK_JSON_LISTS); + } catch (ClientProtocolException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new NetworkFailureException("gettasklists: httpget failed"); + } catch (IOException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new NetworkFailureException("gettasklists: httpget failed"); + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("get task lists: handing jasonobject failed"); + } + } + + public JSONArray getTaskList(String listGid) throws NetworkFailureException { + commitUpdate(); + try { + JSONObject jsPost = new JSONObject(); + JSONArray actionList = new JSONArray(); + JSONObject action = new JSONObject(); + + // action_list + action.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_GETALL); + action.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, getActionId()); + action.put(GTaskStringUtils.GTASK_JSON_LIST_ID, listGid); + action.put(GTaskStringUtils.GTASK_JSON_GET_DELETED, false); + actionList.put(action); + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); + + // client_version + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + JSONObject jsResponse = postRequest(jsPost); + return jsResponse.getJSONArray(GTaskStringUtils.GTASK_JSON_TASKS); + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("get task list: handing jsonobject failed"); + } + } + + public Account getSyncAccount() { + return mAccount; + } + + public void resetUpdateArray() { + mUpdateArray = null; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java b/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java new file mode 100644 index 0000000..d2b4082 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java @@ -0,0 +1,800 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.remote; + +import android.app.Activity; +import android.content.ContentResolver; +import android.content.ContentUris; +import android.content.ContentValues; +import android.content.Context; +import android.database.Cursor; +import android.util.Log; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.gtask.data.MetaData; +import net.micode.notes.gtask.data.Node; +import net.micode.notes.gtask.data.SqlNote; +import net.micode.notes.gtask.data.Task; +import net.micode.notes.gtask.data.TaskList; +import net.micode.notes.gtask.exception.ActionFailureException; +import net.micode.notes.gtask.exception.NetworkFailureException; +import net.micode.notes.tool.DataUtils; +import net.micode.notes.tool.GTaskStringUtils; + +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.Map; + + +public class GTaskManager { + private static final String TAG = GTaskManager.class.getSimpleName(); + + public static final int STATE_SUCCESS = 0; + + public static final int STATE_NETWORK_ERROR = 1; + + public static final int STATE_INTERNAL_ERROR = 2; + + public static final int STATE_SYNC_IN_PROGRESS = 3; + + public static final int STATE_SYNC_CANCELLED = 4; + + private static GTaskManager mInstance = null; + + private Activity mActivity; + + private Context mContext; + + private ContentResolver mContentResolver; + + private boolean mSyncing; + + private boolean mCancelled; + + private HashMap mGTaskListHashMap; + + private HashMap mGTaskHashMap; + + private HashMap mMetaHashMap; + + private TaskList mMetaList; + + private HashSet mLocalDeleteIdMap; + + private HashMap mGidToNid; + + private HashMap mNidToGid; + + private GTaskManager() { + mSyncing = false; + mCancelled = false; + mGTaskListHashMap = new HashMap(); + mGTaskHashMap = new HashMap(); + mMetaHashMap = new HashMap(); + mMetaList = null; + mLocalDeleteIdMap = new HashSet(); + mGidToNid = new HashMap(); + mNidToGid = new HashMap(); + } + + public static synchronized GTaskManager getInstance() { + if (mInstance == null) { + mInstance = new GTaskManager(); + } + return mInstance; + } + + public synchronized void setActivityContext(Activity activity) { + // used for getting authtoken + mActivity = activity; + } + + public int sync(Context context, GTaskASyncTask asyncTask) { + if (mSyncing) { + Log.d(TAG, "Sync is in progress"); + return STATE_SYNC_IN_PROGRESS; + } + mContext = context; + mContentResolver = mContext.getContentResolver(); + mSyncing = true; + mCancelled = false; + mGTaskListHashMap.clear(); + mGTaskHashMap.clear(); + mMetaHashMap.clear(); + mLocalDeleteIdMap.clear(); + mGidToNid.clear(); + mNidToGid.clear(); + + try { + GTaskClient client = GTaskClient.getInstance(); + client.resetUpdateArray(); + + // login google task + if (!mCancelled) { + if (!client.login(mActivity)) { + throw new NetworkFailureException("login google task failed"); + } + } + + // get the task list from google + asyncTask.publishProgess(mContext.getString(R.string.sync_progress_init_list)); + initGTaskList(); + + // do content sync work + asyncTask.publishProgess(mContext.getString(R.string.sync_progress_syncing)); + syncContent(); + } catch (NetworkFailureException e) { + Log.e(TAG, e.toString()); + return STATE_NETWORK_ERROR; + } catch (ActionFailureException e) { + Log.e(TAG, e.toString()); + return STATE_INTERNAL_ERROR; + } catch (Exception e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + return STATE_INTERNAL_ERROR; + } finally { + mGTaskListHashMap.clear(); + mGTaskHashMap.clear(); + mMetaHashMap.clear(); + mLocalDeleteIdMap.clear(); + mGidToNid.clear(); + mNidToGid.clear(); + mSyncing = false; + } + + return mCancelled ? STATE_SYNC_CANCELLED : STATE_SUCCESS; + } + + private void initGTaskList() throws NetworkFailureException { + if (mCancelled) + return; + GTaskClient client = GTaskClient.getInstance(); + try { + JSONArray jsTaskLists = client.getTaskLists(); + + // init meta list first + mMetaList = null; + for (int i = 0; i < jsTaskLists.length(); i++) { + JSONObject object = jsTaskLists.getJSONObject(i); + String gid = object.getString(GTaskStringUtils.GTASK_JSON_ID); + String name = object.getString(GTaskStringUtils.GTASK_JSON_NAME); + + if (name + .equals(GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_META)) { + mMetaList = new TaskList(); + mMetaList.setContentByRemoteJSON(object); + + // load meta data + JSONArray jsMetas = client.getTaskList(gid); + for (int j = 0; j < jsMetas.length(); j++) { + object = (JSONObject) jsMetas.getJSONObject(j); + MetaData metaData = new MetaData(); + metaData.setContentByRemoteJSON(object); + if (metaData.isWorthSaving()) { + mMetaList.addChildTask(metaData); + if (metaData.getGid() != null) { + mMetaHashMap.put(metaData.getRelatedGid(), metaData); + } + } + } + } + } + + // create meta list if not existed + if (mMetaList == null) { + mMetaList = new TaskList(); + mMetaList.setName(GTaskStringUtils.MIUI_FOLDER_PREFFIX + + GTaskStringUtils.FOLDER_META); + GTaskClient.getInstance().createTaskList(mMetaList); + } + + // init task list + for (int i = 0; i < jsTaskLists.length(); i++) { + JSONObject object = jsTaskLists.getJSONObject(i); + String gid = object.getString(GTaskStringUtils.GTASK_JSON_ID); + String name = object.getString(GTaskStringUtils.GTASK_JSON_NAME); + + if (name.startsWith(GTaskStringUtils.MIUI_FOLDER_PREFFIX) + && !name.equals(GTaskStringUtils.MIUI_FOLDER_PREFFIX + + GTaskStringUtils.FOLDER_META)) { + TaskList tasklist = new TaskList(); + tasklist.setContentByRemoteJSON(object); + mGTaskListHashMap.put(gid, tasklist); + mGTaskHashMap.put(gid, tasklist); + + // load tasks + JSONArray jsTasks = client.getTaskList(gid); + for (int j = 0; j < jsTasks.length(); j++) { + object = (JSONObject) jsTasks.getJSONObject(j); + gid = object.getString(GTaskStringUtils.GTASK_JSON_ID); + Task task = new Task(); + task.setContentByRemoteJSON(object); + if (task.isWorthSaving()) { + task.setMetaInfo(mMetaHashMap.get(gid)); + tasklist.addChildTask(task); + mGTaskHashMap.put(gid, task); + } + } + } + } + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("initGTaskList: handing JSONObject failed"); + } + } + + private void syncContent() throws NetworkFailureException { + int syncType; + Cursor c = null; + String gid; + Node node; + + mLocalDeleteIdMap.clear(); + + if (mCancelled) { + return; + } + + // for local deleted note + try { + c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE, + "(type<>? AND parent_id=?)", new String[] { + String.valueOf(Notes.TYPE_SYSTEM), String.valueOf(Notes.ID_TRASH_FOLER) + }, null); + if (c != null) { + while (c.moveToNext()) { + gid = c.getString(SqlNote.GTASK_ID_COLUMN); + node = mGTaskHashMap.get(gid); + if (node != null) { + mGTaskHashMap.remove(gid); + doContentSync(Node.SYNC_ACTION_DEL_REMOTE, node, c); + } + + mLocalDeleteIdMap.add(c.getLong(SqlNote.ID_COLUMN)); + } + } else { + Log.w(TAG, "failed to query trash folder"); + } + } finally { + if (c != null) { + c.close(); + c = null; + } + } + + // sync folder first + syncFolder(); + + // for note existing in database + try { + c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE, + "(type=? AND parent_id<>?)", new String[] { + String.valueOf(Notes.TYPE_NOTE), String.valueOf(Notes.ID_TRASH_FOLER) + }, NoteColumns.TYPE + " DESC"); + if (c != null) { + while (c.moveToNext()) { + gid = c.getString(SqlNote.GTASK_ID_COLUMN); + node = mGTaskHashMap.get(gid); + if (node != null) { + mGTaskHashMap.remove(gid); + mGidToNid.put(gid, c.getLong(SqlNote.ID_COLUMN)); + mNidToGid.put(c.getLong(SqlNote.ID_COLUMN), gid); + syncType = node.getSyncAction(c); + } else { + if (c.getString(SqlNote.GTASK_ID_COLUMN).trim().length() == 0) { + // local add + syncType = Node.SYNC_ACTION_ADD_REMOTE; + } else { + // remote delete + syncType = Node.SYNC_ACTION_DEL_LOCAL; + } + } + doContentSync(syncType, node, c); + } + } else { + Log.w(TAG, "failed to query existing note in database"); + } + + } finally { + if (c != null) { + c.close(); + c = null; + } + } + + // go through remaining items + Iterator> iter = mGTaskHashMap.entrySet().iterator(); + while (iter.hasNext()) { + Map.Entry entry = iter.next(); + node = entry.getValue(); + doContentSync(Node.SYNC_ACTION_ADD_LOCAL, node, null); + } + + // mCancelled can be set by another thread, so we neet to check one by + // one + // clear local delete table + if (!mCancelled) { + if (!DataUtils.batchDeleteNotes(mContentResolver, mLocalDeleteIdMap)) { + throw new ActionFailureException("failed to batch-delete local deleted notes"); + } + } + + // refresh local sync id + if (!mCancelled) { + GTaskClient.getInstance().commitUpdate(); + refreshLocalSyncId(); + } + + } + + private void syncFolder() throws NetworkFailureException { + Cursor c = null; + String gid; + Node node; + int syncType; + + if (mCancelled) { + return; + } + + // for root folder + try { + c = mContentResolver.query(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, + Notes.ID_ROOT_FOLDER), SqlNote.PROJECTION_NOTE, null, null, null); + if (c != null) { + c.moveToNext(); + gid = c.getString(SqlNote.GTASK_ID_COLUMN); + node = mGTaskHashMap.get(gid); + if (node != null) { + mGTaskHashMap.remove(gid); + mGidToNid.put(gid, (long) Notes.ID_ROOT_FOLDER); + mNidToGid.put((long) Notes.ID_ROOT_FOLDER, gid); + // for system folder, only update remote name if necessary + if (!node.getName().equals( + GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_DEFAULT)) + doContentSync(Node.SYNC_ACTION_UPDATE_REMOTE, node, c); + } else { + doContentSync(Node.SYNC_ACTION_ADD_REMOTE, node, c); + } + } else { + Log.w(TAG, "failed to query root folder"); + } + } finally { + if (c != null) { + c.close(); + c = null; + } + } + + // for call-note folder + try { + c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE, "(_id=?)", + new String[] { + String.valueOf(Notes.ID_CALL_RECORD_FOLDER) + }, null); + if (c != null) { + if (c.moveToNext()) { + gid = c.getString(SqlNote.GTASK_ID_COLUMN); + node = mGTaskHashMap.get(gid); + if (node != null) { + mGTaskHashMap.remove(gid); + mGidToNid.put(gid, (long) Notes.ID_CALL_RECORD_FOLDER); + mNidToGid.put((long) Notes.ID_CALL_RECORD_FOLDER, gid); + // for system folder, only update remote name if + // necessary + if (!node.getName().equals( + GTaskStringUtils.MIUI_FOLDER_PREFFIX + + GTaskStringUtils.FOLDER_CALL_NOTE)) + doContentSync(Node.SYNC_ACTION_UPDATE_REMOTE, node, c); + } else { + doContentSync(Node.SYNC_ACTION_ADD_REMOTE, node, c); + } + } + } else { + Log.w(TAG, "failed to query call note folder"); + } + } finally { + if (c != null) { + c.close(); + c = null; + } + } + + // for local existing folders + try { + c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE, + "(type=? AND parent_id<>?)", new String[] { + String.valueOf(Notes.TYPE_FOLDER), String.valueOf(Notes.ID_TRASH_FOLER) + }, NoteColumns.TYPE + " DESC"); + if (c != null) { + while (c.moveToNext()) { + gid = c.getString(SqlNote.GTASK_ID_COLUMN); + node = mGTaskHashMap.get(gid); + if (node != null) { + mGTaskHashMap.remove(gid); + mGidToNid.put(gid, c.getLong(SqlNote.ID_COLUMN)); + mNidToGid.put(c.getLong(SqlNote.ID_COLUMN), gid); + syncType = node.getSyncAction(c); + } else { + if (c.getString(SqlNote.GTASK_ID_COLUMN).trim().length() == 0) { + // local add + syncType = Node.SYNC_ACTION_ADD_REMOTE; + } else { + // remote delete + syncType = Node.SYNC_ACTION_DEL_LOCAL; + } + } + doContentSync(syncType, node, c); + } + } else { + Log.w(TAG, "failed to query existing folder"); + } + } finally { + if (c != null) { + c.close(); + c = null; + } + } + + // for remote add folders + Iterator> iter = mGTaskListHashMap.entrySet().iterator(); + while (iter.hasNext()) { + Map.Entry entry = iter.next(); + gid = entry.getKey(); + node = entry.getValue(); + if (mGTaskHashMap.containsKey(gid)) { + mGTaskHashMap.remove(gid); + doContentSync(Node.SYNC_ACTION_ADD_LOCAL, node, null); + } + } + + if (!mCancelled) + GTaskClient.getInstance().commitUpdate(); + } + + private void doContentSync(int syncType, Node node, Cursor c) throws NetworkFailureException { + if (mCancelled) { + return; + } + + MetaData meta; + switch (syncType) { + case Node.SYNC_ACTION_ADD_LOCAL: + addLocalNode(node); + break; + case Node.SYNC_ACTION_ADD_REMOTE: + addRemoteNode(node, c); + break; + case Node.SYNC_ACTION_DEL_LOCAL: + meta = mMetaHashMap.get(c.getString(SqlNote.GTASK_ID_COLUMN)); + if (meta != null) { + GTaskClient.getInstance().deleteNode(meta); + } + mLocalDeleteIdMap.add(c.getLong(SqlNote.ID_COLUMN)); + break; + case Node.SYNC_ACTION_DEL_REMOTE: + meta = mMetaHashMap.get(node.getGid()); + if (meta != null) { + GTaskClient.getInstance().deleteNode(meta); + } + GTaskClient.getInstance().deleteNode(node); + break; + case Node.SYNC_ACTION_UPDATE_LOCAL: + updateLocalNode(node, c); + break; + case Node.SYNC_ACTION_UPDATE_REMOTE: + updateRemoteNode(node, c); + break; + case Node.SYNC_ACTION_UPDATE_CONFLICT: + // merging both modifications maybe a good idea + // right now just use local update simply + updateRemoteNode(node, c); + break; + case Node.SYNC_ACTION_NONE: + break; + case Node.SYNC_ACTION_ERROR: + default: + throw new ActionFailureException("unkown sync action type"); + } + } + + private void addLocalNode(Node node) throws NetworkFailureException { + if (mCancelled) { + return; + } + + SqlNote sqlNote; + if (node instanceof TaskList) { + if (node.getName().equals( + GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_DEFAULT)) { + sqlNote = new SqlNote(mContext, Notes.ID_ROOT_FOLDER); + } else if (node.getName().equals( + GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_CALL_NOTE)) { + sqlNote = new SqlNote(mContext, Notes.ID_CALL_RECORD_FOLDER); + } else { + sqlNote = new SqlNote(mContext); + sqlNote.setContent(node.getLocalJSONFromContent()); + sqlNote.setParentId(Notes.ID_ROOT_FOLDER); + } + } else { + sqlNote = new SqlNote(mContext); + JSONObject js = node.getLocalJSONFromContent(); + try { + if (js.has(GTaskStringUtils.META_HEAD_NOTE)) { + JSONObject note = js.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); + if (note.has(NoteColumns.ID)) { + long id = note.getLong(NoteColumns.ID); + if (DataUtils.existInNoteDatabase(mContentResolver, id)) { + // the id is not available, have to create a new one + note.remove(NoteColumns.ID); + } + } + } + + if (js.has(GTaskStringUtils.META_HEAD_DATA)) { + JSONArray dataArray = js.getJSONArray(GTaskStringUtils.META_HEAD_DATA); + for (int i = 0; i < dataArray.length(); i++) { + JSONObject data = dataArray.getJSONObject(i); + if (data.has(DataColumns.ID)) { + long dataId = data.getLong(DataColumns.ID); + if (DataUtils.existInDataDatabase(mContentResolver, dataId)) { + // the data id is not available, have to create + // a new one + data.remove(DataColumns.ID); + } + } + } + + } + } catch (JSONException e) { + Log.w(TAG, e.toString()); + e.printStackTrace(); + } + sqlNote.setContent(js); + + Long parentId = mGidToNid.get(((Task) node).getParent().getGid()); + if (parentId == null) { + Log.e(TAG, "cannot find task's parent id locally"); + throw new ActionFailureException("cannot add local node"); + } + sqlNote.setParentId(parentId.longValue()); + } + + // create the local node + sqlNote.setGtaskId(node.getGid()); + sqlNote.commit(false); + + // update gid-nid mapping + mGidToNid.put(node.getGid(), sqlNote.getId()); + mNidToGid.put(sqlNote.getId(), node.getGid()); + + // update meta + updateRemoteMeta(node.getGid(), sqlNote); + } + + private void updateLocalNode(Node node, Cursor c) throws NetworkFailureException { + if (mCancelled) { + return; + } + + SqlNote sqlNote; + // update the note locally + sqlNote = new SqlNote(mContext, c); + sqlNote.setContent(node.getLocalJSONFromContent()); + + Long parentId = (node instanceof Task) ? mGidToNid.get(((Task) node).getParent().getGid()) + : new Long(Notes.ID_ROOT_FOLDER); + if (parentId == null) { + Log.e(TAG, "cannot find task's parent id locally"); + throw new ActionFailureException("cannot update local node"); + } + sqlNote.setParentId(parentId.longValue()); + sqlNote.commit(true); + + // update meta info + updateRemoteMeta(node.getGid(), sqlNote); + } + + private void addRemoteNode(Node node, Cursor c) throws NetworkFailureException { + if (mCancelled) { + return; + } + + SqlNote sqlNote = new SqlNote(mContext, c); + Node n; + + // update remotely + if (sqlNote.isNoteType()) { + Task task = new Task(); + task.setContentByLocalJSON(sqlNote.getContent()); + + String parentGid = mNidToGid.get(sqlNote.getParentId()); + if (parentGid == null) { + Log.e(TAG, "cannot find task's parent tasklist"); + throw new ActionFailureException("cannot add remote task"); + } + mGTaskListHashMap.get(parentGid).addChildTask(task); + + GTaskClient.getInstance().createTask(task); + n = (Node) task; + + // add meta + updateRemoteMeta(task.getGid(), sqlNote); + } else { + TaskList tasklist = null; + + // we need to skip folder if it has already existed + String folderName = GTaskStringUtils.MIUI_FOLDER_PREFFIX; + if (sqlNote.getId() == Notes.ID_ROOT_FOLDER) + folderName += GTaskStringUtils.FOLDER_DEFAULT; + else if (sqlNote.getId() == Notes.ID_CALL_RECORD_FOLDER) + folderName += GTaskStringUtils.FOLDER_CALL_NOTE; + else + folderName += sqlNote.getSnippet(); + + Iterator> iter = mGTaskListHashMap.entrySet().iterator(); + while (iter.hasNext()) { + Map.Entry entry = iter.next(); + String gid = entry.getKey(); + TaskList list = entry.getValue(); + + if (list.getName().equals(folderName)) { + tasklist = list; + if (mGTaskHashMap.containsKey(gid)) { + mGTaskHashMap.remove(gid); + } + break; + } + } + + // no match we can add now + if (tasklist == null) { + tasklist = new TaskList(); + tasklist.setContentByLocalJSON(sqlNote.getContent()); + GTaskClient.getInstance().createTaskList(tasklist); + mGTaskListHashMap.put(tasklist.getGid(), tasklist); + } + n = (Node) tasklist; + } + + // update local note + sqlNote.setGtaskId(n.getGid()); + sqlNote.commit(false); + sqlNote.resetLocalModified(); + sqlNote.commit(true); + + // gid-id mapping + mGidToNid.put(n.getGid(), sqlNote.getId()); + mNidToGid.put(sqlNote.getId(), n.getGid()); + } + + private void updateRemoteNode(Node node, Cursor c) throws NetworkFailureException { + if (mCancelled) { + return; + } + + SqlNote sqlNote = new SqlNote(mContext, c); + + // update remotely + node.setContentByLocalJSON(sqlNote.getContent()); + GTaskClient.getInstance().addUpdateNode(node); + + // update meta + updateRemoteMeta(node.getGid(), sqlNote); + + // move task if necessary + if (sqlNote.isNoteType()) { + Task task = (Task) node; + TaskList preParentList = task.getParent(); + + String curParentGid = mNidToGid.get(sqlNote.getParentId()); + if (curParentGid == null) { + Log.e(TAG, "cannot find task's parent tasklist"); + throw new ActionFailureException("cannot update remote task"); + } + TaskList curParentList = mGTaskListHashMap.get(curParentGid); + + if (preParentList != curParentList) { + preParentList.removeChildTask(task); + curParentList.addChildTask(task); + GTaskClient.getInstance().moveTask(task, preParentList, curParentList); + } + } + + // clear local modified flag + sqlNote.resetLocalModified(); + sqlNote.commit(true); + } + + private void updateRemoteMeta(String gid, SqlNote sqlNote) throws NetworkFailureException { + if (sqlNote != null && sqlNote.isNoteType()) { + MetaData metaData = mMetaHashMap.get(gid); + if (metaData != null) { + metaData.setMeta(gid, sqlNote.getContent()); + GTaskClient.getInstance().addUpdateNode(metaData); + } else { + metaData = new MetaData(); + metaData.setMeta(gid, sqlNote.getContent()); + mMetaList.addChildTask(metaData); + mMetaHashMap.put(gid, metaData); + GTaskClient.getInstance().createTask(metaData); + } + } + } + + private void refreshLocalSyncId() throws NetworkFailureException { + if (mCancelled) { + return; + } + + // get the latest gtask list + mGTaskHashMap.clear(); + mGTaskListHashMap.clear(); + mMetaHashMap.clear(); + initGTaskList(); + + Cursor c = null; + try { + c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE, + "(type<>? AND parent_id<>?)", new String[] { + String.valueOf(Notes.TYPE_SYSTEM), String.valueOf(Notes.ID_TRASH_FOLER) + }, NoteColumns.TYPE + " DESC"); + if (c != null) { + while (c.moveToNext()) { + String gid = c.getString(SqlNote.GTASK_ID_COLUMN); + Node node = mGTaskHashMap.get(gid); + if (node != null) { + mGTaskHashMap.remove(gid); + ContentValues values = new ContentValues(); + values.put(NoteColumns.SYNC_ID, node.getLastModified()); + mContentResolver.update(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, + c.getLong(SqlNote.ID_COLUMN)), values, null, null); + } else { + Log.e(TAG, "something is missed"); + throw new ActionFailureException( + "some local items don't have gid after sync"); + } + } + } else { + Log.w(TAG, "failed to query local note to refresh sync id"); + } + } finally { + if (c != null) { + c.close(); + c = null; + } + } + } + + public String getSyncAccount() { + return GTaskClient.getInstance().getSyncAccount().name; + } + + public void cancelSync() { + mCancelled = true; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java b/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java new file mode 100644 index 0000000..cca36f7 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java @@ -0,0 +1,128 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.gtask.remote; + +import android.app.Activity; +import android.app.Service; +import android.content.Context; +import android.content.Intent; +import android.os.Bundle; +import android.os.IBinder; + +public class GTaskSyncService extends Service { + public final static String ACTION_STRING_NAME = "sync_action_type"; + + public final static int ACTION_START_SYNC = 0; + + public final static int ACTION_CANCEL_SYNC = 1; + + public final static int ACTION_INVALID = 2; + + public final static String GTASK_SERVICE_BROADCAST_NAME = "net.micode.notes.gtask.remote.gtask_sync_service"; + + public final static String GTASK_SERVICE_BROADCAST_IS_SYNCING = "isSyncing"; + + public final static String GTASK_SERVICE_BROADCAST_PROGRESS_MSG = "progressMsg"; + + private static GTaskASyncTask mSyncTask = null; + + private static String mSyncProgress = ""; + + private void startSync() { + if (mSyncTask == null) { + mSyncTask = new GTaskASyncTask(this, new GTaskASyncTask.OnCompleteListener() { + public void onComplete() { + mSyncTask = null; + sendBroadcast(""); + stopSelf(); + } + }); + sendBroadcast(""); + mSyncTask.execute(); + } + } + + private void cancelSync() { + if (mSyncTask != null) { + mSyncTask.cancelSync(); + } + } + + @Override + public void onCreate() { + mSyncTask = null; + } + + @Override + public int onStartCommand(Intent intent, int flags, int startId) { + Bundle bundle = intent.getExtras(); + if (bundle != null && bundle.containsKey(ACTION_STRING_NAME)) { + switch (bundle.getInt(ACTION_STRING_NAME, ACTION_INVALID)) { + case ACTION_START_SYNC: + startSync(); + break; + case ACTION_CANCEL_SYNC: + cancelSync(); + break; + default: + break; + } + return START_STICKY; + } + return super.onStartCommand(intent, flags, startId); + } + + @Override + public void onLowMemory() { + if (mSyncTask != null) { + mSyncTask.cancelSync(); + } + } + + public IBinder onBind(Intent intent) { + return null; + } + + public void sendBroadcast(String msg) { + mSyncProgress = msg; + Intent intent = new Intent(GTASK_SERVICE_BROADCAST_NAME); + intent.putExtra(GTASK_SERVICE_BROADCAST_IS_SYNCING, mSyncTask != null); + intent.putExtra(GTASK_SERVICE_BROADCAST_PROGRESS_MSG, msg); + sendBroadcast(intent); + } + + public static void startSync(Activity activity) { + GTaskManager.getInstance().setActivityContext(activity); + Intent intent = new Intent(activity, GTaskSyncService.class); + intent.putExtra(GTaskSyncService.ACTION_STRING_NAME, GTaskSyncService.ACTION_START_SYNC); + activity.startService(intent); + } + + public static void cancelSync(Context context) { + Intent intent = new Intent(context, GTaskSyncService.class); + intent.putExtra(GTaskSyncService.ACTION_STRING_NAME, GTaskSyncService.ACTION_CANCEL_SYNC); + context.startService(intent); + } + + public static boolean isSyncing() { + return mSyncTask != null; + } + + public static String getProgressString() { + return mSyncProgress; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/model/Note.java b/src/test01/app/src/main/java/net/micode/notes/model/Note.java new file mode 100644 index 0000000..6706cf6 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/model/Note.java @@ -0,0 +1,253 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.model; +import android.content.ContentProviderOperation; +import android.content.ContentProviderResult; +import android.content.ContentUris; +import android.content.ContentValues; +import android.content.Context; +import android.content.OperationApplicationException; +import android.net.Uri; +import android.os.RemoteException; +import android.util.Log; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.CallNote; +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.data.Notes.TextNote; + +import java.util.ArrayList; + + +public class Note { + private ContentValues mNoteDiffValues; + private NoteData mNoteData; + private static final String TAG = "Note"; + /** + * Create a new note id for adding a new note to databases + */ + public static synchronized long getNewNoteId(Context context, long folderId) { + // Create a new note in the database + ContentValues values = new ContentValues(); + long createdTime = System.currentTimeMillis(); + values.put(NoteColumns.CREATED_DATE, createdTime); + values.put(NoteColumns.MODIFIED_DATE, createdTime); + values.put(NoteColumns.TYPE, Notes.TYPE_NOTE); + values.put(NoteColumns.LOCAL_MODIFIED, 1); + values.put(NoteColumns.PARENT_ID, folderId); + Uri uri = context.getContentResolver().insert(Notes.CONTENT_NOTE_URI, values); + + long noteId = 0; + try { + noteId = Long.valueOf(uri.getPathSegments().get(1)); + } catch (NumberFormatException e) { + Log.e(TAG, "Get note id error :" + e.toString()); + noteId = 0; + } + if (noteId == -1) { + throw new IllegalStateException("Wrong note id:" + noteId); + } + return noteId; + } + + public Note() { + mNoteDiffValues = new ContentValues(); + mNoteData = new NoteData(); + } + + public void setNoteValue(String key, String value) { + mNoteDiffValues.put(key, value); + mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1); + mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis()); + } + + public void setTextData(String key, String value) { + mNoteData.setTextData(key, value); + } + + public void setTextDataId(long id) { + mNoteData.setTextDataId(id); + } + + public long getTextDataId() { + return mNoteData.mTextDataId; + } + + public void setCallDataId(long id) { + mNoteData.setCallDataId(id); + } + + public void setCallData(String key, String value) { + mNoteData.setCallData(key, value); + } + + public boolean isLocalModified() { + return mNoteDiffValues.size() > 0 || mNoteData.isLocalModified(); + } + + public boolean syncNote(Context context, long noteId) { + if (noteId <= 0) { + throw new IllegalArgumentException("Wrong note id:" + noteId); + } + + if (!isLocalModified()) { + return true; + } + + /** + * In theory, once data changed, the note should be updated on {@link NoteColumns#LOCAL_MODIFIED} and + * {@link NoteColumns#MODIFIED_DATE}. For data safety, though update note fails, we also update the + * note data info + */ + if (context.getContentResolver().update( + ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId), mNoteDiffValues, null, + null) == 0) { + Log.e(TAG, "Update note error, should not happen"); + // Do not return, fall through + } + mNoteDiffValues.clear(); + + if (mNoteData.isLocalModified() + && (mNoteData.pushIntoContentResolver(context, noteId) == null)) { + return false; + } + + return true; + } + + private class NoteData { + private long mTextDataId; + + private ContentValues mTextDataValues; + + private long mCallDataId; + + private ContentValues mCallDataValues; + + private static final String TAG = "NoteData"; + + public NoteData() { + mTextDataValues = new ContentValues(); + mCallDataValues = new ContentValues(); + mTextDataId = 0; + mCallDataId = 0; + } + + boolean isLocalModified() { + return mTextDataValues.size() > 0 || mCallDataValues.size() > 0; + } + + void setTextDataId(long id) { + if(id <= 0) { + throw new IllegalArgumentException("Text data id should larger than 0"); + } + mTextDataId = id; + } + + void setCallDataId(long id) { + if (id <= 0) { + throw new IllegalArgumentException("Call data id should larger than 0"); + } + mCallDataId = id; + } + + void setCallData(String key, String value) { + mCallDataValues.put(key, value); + mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1); + mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis()); + } + + void setTextData(String key, String value) { + mTextDataValues.put(key, value); + mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1); + mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis()); + } + + Uri pushIntoContentResolver(Context context, long noteId) { + /** + * Check for safety + */ + if (noteId <= 0) { + throw new IllegalArgumentException("Wrong note id:" + noteId); + } + + ArrayList operationList = new ArrayList(); + ContentProviderOperation.Builder builder = null; + + if(mTextDataValues.size() > 0) { + mTextDataValues.put(DataColumns.NOTE_ID, noteId); + if (mTextDataId == 0) { + mTextDataValues.put(DataColumns.MIME_TYPE, TextNote.CONTENT_ITEM_TYPE); + Uri uri = context.getContentResolver().insert(Notes.CONTENT_DATA_URI, + mTextDataValues); + try { + setTextDataId(Long.valueOf(uri.getPathSegments().get(1))); + } catch (NumberFormatException e) { + Log.e(TAG, "Insert new text data fail with noteId" + noteId); + mTextDataValues.clear(); + return null; + } + } else { + builder = ContentProviderOperation.newUpdate(ContentUris.withAppendedId( + Notes.CONTENT_DATA_URI, mTextDataId)); + builder.withValues(mTextDataValues); + operationList.add(builder.build()); + } + mTextDataValues.clear(); + } + + if(mCallDataValues.size() > 0) { + mCallDataValues.put(DataColumns.NOTE_ID, noteId); + if (mCallDataId == 0) { + mCallDataValues.put(DataColumns.MIME_TYPE, CallNote.CONTENT_ITEM_TYPE); + Uri uri = context.getContentResolver().insert(Notes.CONTENT_DATA_URI, + mCallDataValues); + try { + setCallDataId(Long.valueOf(uri.getPathSegments().get(1))); + } catch (NumberFormatException e) { + Log.e(TAG, "Insert new call data fail with noteId" + noteId); + mCallDataValues.clear(); + return null; + } + } else { + builder = ContentProviderOperation.newUpdate(ContentUris.withAppendedId( + Notes.CONTENT_DATA_URI, mCallDataId)); + builder.withValues(mCallDataValues); + operationList.add(builder.build()); + } + mCallDataValues.clear(); + } + + if (operationList.size() > 0) { + try { + ContentProviderResult[] results = context.getContentResolver().applyBatch( + Notes.AUTHORITY, operationList); + return (results == null || results.length == 0 || results[0] == null) ? null + : ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId); + } catch (RemoteException e) { + Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage())); + return null; + } catch (OperationApplicationException e) { + Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage())); + return null; + } + } + return null; + } + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/model/WorkingNote.java b/src/test01/app/src/main/java/net/micode/notes/model/WorkingNote.java new file mode 100644 index 0000000..be081e4 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/model/WorkingNote.java @@ -0,0 +1,368 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.model; + +import android.appwidget.AppWidgetManager; +import android.content.ContentUris; +import android.content.Context; +import android.database.Cursor; +import android.text.TextUtils; +import android.util.Log; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.CallNote; +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.DataConstants; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.data.Notes.TextNote; +import net.micode.notes.tool.ResourceParser.NoteBgResources; + + +public class WorkingNote { + // Note for the working note + private Note mNote; + // Note Id + private long mNoteId; + // Note content + private String mContent; + // Note mode + private int mMode; + + private long mAlertDate; + + private long mModifiedDate; + + private int mBgColorId; + + private int mWidgetId; + + private int mWidgetType; + + private long mFolderId; + + private Context mContext; + + private static final String TAG = "WorkingNote"; + + private boolean mIsDeleted; + + private NoteSettingChangedListener mNoteSettingStatusListener; + + public static final String[] DATA_PROJECTION = new String[] { + DataColumns.ID, + DataColumns.CONTENT, + DataColumns.MIME_TYPE, + DataColumns.DATA1, + DataColumns.DATA2, + DataColumns.DATA3, + DataColumns.DATA4, + }; + + public static final String[] NOTE_PROJECTION = new String[] { + NoteColumns.PARENT_ID, + NoteColumns.ALERTED_DATE, + NoteColumns.BG_COLOR_ID, + NoteColumns.WIDGET_ID, + NoteColumns.WIDGET_TYPE, + NoteColumns.MODIFIED_DATE + }; + + private static final int DATA_ID_COLUMN = 0; + + private static final int DATA_CONTENT_COLUMN = 1; + + private static final int DATA_MIME_TYPE_COLUMN = 2; + + private static final int DATA_MODE_COLUMN = 3; + + private static final int NOTE_PARENT_ID_COLUMN = 0; + + private static final int NOTE_ALERTED_DATE_COLUMN = 1; + + private static final int NOTE_BG_COLOR_ID_COLUMN = 2; + + private static final int NOTE_WIDGET_ID_COLUMN = 3; + + private static final int NOTE_WIDGET_TYPE_COLUMN = 4; + + private static final int NOTE_MODIFIED_DATE_COLUMN = 5; + + // New note construct + private WorkingNote(Context context, long folderId) { + mContext = context; + mAlertDate = 0; + mModifiedDate = System.currentTimeMillis(); + mFolderId = folderId; + mNote = new Note(); + mNoteId = 0; + mIsDeleted = false; + mMode = 0; + mWidgetType = Notes.TYPE_WIDGET_INVALIDE; + } + + // Existing note construct + private WorkingNote(Context context, long noteId, long folderId) { + mContext = context; + mNoteId = noteId; + mFolderId = folderId; + mIsDeleted = false; + mNote = new Note(); + loadNote(); + } + + private void loadNote() { + Cursor cursor = mContext.getContentResolver().query( + ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, mNoteId), NOTE_PROJECTION, null, + null, null); + + if (cursor != null) { + if (cursor.moveToFirst()) { + mFolderId = cursor.getLong(NOTE_PARENT_ID_COLUMN); + mBgColorId = cursor.getInt(NOTE_BG_COLOR_ID_COLUMN); + mWidgetId = cursor.getInt(NOTE_WIDGET_ID_COLUMN); + mWidgetType = cursor.getInt(NOTE_WIDGET_TYPE_COLUMN); + mAlertDate = cursor.getLong(NOTE_ALERTED_DATE_COLUMN); + mModifiedDate = cursor.getLong(NOTE_MODIFIED_DATE_COLUMN); + } + cursor.close(); + } else { + Log.e(TAG, "No note with id:" + mNoteId); + throw new IllegalArgumentException("Unable to find note with id " + mNoteId); + } + loadNoteData(); + } + + private void loadNoteData() { + Cursor cursor = mContext.getContentResolver().query(Notes.CONTENT_DATA_URI, DATA_PROJECTION, + DataColumns.NOTE_ID + "=?", new String[] { + String.valueOf(mNoteId) + }, null); + + if (cursor != null) { + if (cursor.moveToFirst()) { + do { + String type = cursor.getString(DATA_MIME_TYPE_COLUMN); + if (DataConstants.NOTE.equals(type)) { + mContent = cursor.getString(DATA_CONTENT_COLUMN); + mMode = cursor.getInt(DATA_MODE_COLUMN); + mNote.setTextDataId(cursor.getLong(DATA_ID_COLUMN)); + } else if (DataConstants.CALL_NOTE.equals(type)) { + mNote.setCallDataId(cursor.getLong(DATA_ID_COLUMN)); + } else { + Log.d(TAG, "Wrong note type with type:" + type); + } + } while (cursor.moveToNext()); + } + cursor.close(); + } else { + Log.e(TAG, "No data with id:" + mNoteId); + throw new IllegalArgumentException("Unable to find note's data with id " + mNoteId); + } + } + + public static WorkingNote createEmptyNote(Context context, long folderId, int widgetId, + int widgetType, int defaultBgColorId) { + WorkingNote note = new WorkingNote(context, folderId); + note.setBgColorId(defaultBgColorId); + note.setWidgetId(widgetId); + note.setWidgetType(widgetType); + return note; + } + + public static WorkingNote load(Context context, long id) { + return new WorkingNote(context, id, 0); + } + + public synchronized boolean saveNote() { + if (isWorthSaving()) { + if (!existInDatabase()) { + if ((mNoteId = Note.getNewNoteId(mContext, mFolderId)) == 0) { + Log.e(TAG, "Create new note fail with id:" + mNoteId); + return false; + } + } + + mNote.syncNote(mContext, mNoteId); + + /** + * Update widget content if there exist any widget of this note + */ + if (mWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID + && mWidgetType != Notes.TYPE_WIDGET_INVALIDE + && mNoteSettingStatusListener != null) { + mNoteSettingStatusListener.onWidgetChanged(); + } + return true; + } else { + return false; + } + } + + public boolean existInDatabase() { + return mNoteId > 0; + } + + private boolean isWorthSaving() { + if (mIsDeleted || (!existInDatabase() && TextUtils.isEmpty(mContent)) + || (existInDatabase() && !mNote.isLocalModified())) { + return false; + } else { + return true; + } + } + + public void setOnSettingStatusChangedListener(NoteSettingChangedListener l) { + mNoteSettingStatusListener = l; + } + + public void setAlertDate(long date, boolean set) { + if (date != mAlertDate) { + mAlertDate = date; + mNote.setNoteValue(NoteColumns.ALERTED_DATE, String.valueOf(mAlertDate)); + } + if (mNoteSettingStatusListener != null) { + mNoteSettingStatusListener.onClockAlertChanged(date, set); + } + } + + public void markDeleted(boolean mark) { + mIsDeleted = mark; + if (mWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID + && mWidgetType != Notes.TYPE_WIDGET_INVALIDE && mNoteSettingStatusListener != null) { + mNoteSettingStatusListener.onWidgetChanged(); + } + } + + public void setBgColorId(int id) { + if (id != mBgColorId) { + mBgColorId = id; + if (mNoteSettingStatusListener != null) { + mNoteSettingStatusListener.onBackgroundColorChanged(); + } + mNote.setNoteValue(NoteColumns.BG_COLOR_ID, String.valueOf(id)); + } + } + + public void setCheckListMode(int mode) { + if (mMode != mode) { + if (mNoteSettingStatusListener != null) { + mNoteSettingStatusListener.onCheckListModeChanged(mMode, mode); + } + mMode = mode; + mNote.setTextData(TextNote.MODE, String.valueOf(mMode)); + } + } + + public void setWidgetType(int type) { + if (type != mWidgetType) { + mWidgetType = type; + mNote.setNoteValue(NoteColumns.WIDGET_TYPE, String.valueOf(mWidgetType)); + } + } + + public void setWidgetId(int id) { + if (id != mWidgetId) { + mWidgetId = id; + mNote.setNoteValue(NoteColumns.WIDGET_ID, String.valueOf(mWidgetId)); + } + } + + public void setWorkingText(String text) { + if (!TextUtils.equals(mContent, text)) { + mContent = text; + mNote.setTextData(DataColumns.CONTENT, mContent); + } + } + + public void convertToCallNote(String phoneNumber, long callDate) { + mNote.setCallData(CallNote.CALL_DATE, String.valueOf(callDate)); + mNote.setCallData(CallNote.PHONE_NUMBER, phoneNumber); + mNote.setNoteValue(NoteColumns.PARENT_ID, String.valueOf(Notes.ID_CALL_RECORD_FOLDER)); + } + + public boolean hasClockAlert() { + return (mAlertDate > 0 ? true : false); + } + + public String getContent() { + return mContent; + } + + public long getAlertDate() { + return mAlertDate; + } + + public long getModifiedDate() { + return mModifiedDate; + } + + public int getBgColorResId() { + return NoteBgResources.getNoteBgResource(mBgColorId); + } + + public int getBgColorId() { + return mBgColorId; + } + + public int getTitleBgResId() { + return NoteBgResources.getNoteTitleBgResource(mBgColorId); + } + + public int getCheckListMode() { + return mMode; + } + + public long getNoteId() { + return mNoteId; + } + + public long getFolderId() { + return mFolderId; + } + + public int getWidgetId() { + return mWidgetId; + } + + public int getWidgetType() { + return mWidgetType; + } + + public interface NoteSettingChangedListener { + /** + * Called when the background color of current note has just changed + */ + void onBackgroundColorChanged(); + + /** + * Called when user set clock + */ + void onClockAlertChanged(long date, boolean set); + + /** + * Call when user create note from widget + */ + void onWidgetChanged(); + + /** + * Call when switch between check list mode and normal mode + * @param oldMode is previous mode before change + * @param newMode is new mode + */ + void onCheckListModeChanged(int oldMode, int newMode); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/tool/BackupUtils.java b/src/test01/app/src/main/java/net/micode/notes/tool/BackupUtils.java new file mode 100644 index 0000000..39f6ec4 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/tool/BackupUtils.java @@ -0,0 +1,344 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.tool; + +import android.content.Context; +import android.database.Cursor; +import android.os.Environment; +import android.text.TextUtils; +import android.text.format.DateFormat; +import android.util.Log; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.DataConstants; +import net.micode.notes.data.Notes.NoteColumns; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.PrintStream; + + +public class BackupUtils { + private static final String TAG = "BackupUtils"; + // Singleton stuff + private static BackupUtils sInstance; + + public static synchronized BackupUtils getInstance(Context context) { + if (sInstance == null) { + sInstance = new BackupUtils(context); + } + return sInstance; + } + + /** + * Following states are signs to represents backup or restore + * status + */ + // Currently, the sdcard is not mounted + public static final int STATE_SD_CARD_UNMOUONTED = 0; + // The backup file not exist + public static final int STATE_BACKUP_FILE_NOT_EXIST = 1; + // The data is not well formated, may be changed by other programs + public static final int STATE_DATA_DESTROIED = 2; + // Some run-time exception which causes restore or backup fails + public static final int STATE_SYSTEM_ERROR = 3; + // Backup or restore success + public static final int STATE_SUCCESS = 4; + + private TextExport mTextExport; + + private BackupUtils(Context context) { + mTextExport = new TextExport(context); + } + + private static boolean externalStorageAvailable() { + return Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState()); + } + + public int exportToText() { + return mTextExport.exportToText(); + } + + public String getExportedTextFileName() { + return mTextExport.mFileName; + } + + public String getExportedTextFileDir() { + return mTextExport.mFileDirectory; + } + + private static class TextExport { + private static final String[] NOTE_PROJECTION = { + NoteColumns.ID, + NoteColumns.MODIFIED_DATE, + NoteColumns.SNIPPET, + NoteColumns.TYPE + }; + + private static final int NOTE_COLUMN_ID = 0; + + private static final int NOTE_COLUMN_MODIFIED_DATE = 1; + + private static final int NOTE_COLUMN_SNIPPET = 2; + + private static final String[] DATA_PROJECTION = { + DataColumns.CONTENT, + DataColumns.MIME_TYPE, + DataColumns.DATA1, + DataColumns.DATA2, + DataColumns.DATA3, + DataColumns.DATA4, + }; + + private static final int DATA_COLUMN_CONTENT = 0; + + private static final int DATA_COLUMN_MIME_TYPE = 1; + + private static final int DATA_COLUMN_CALL_DATE = 2; + + private static final int DATA_COLUMN_PHONE_NUMBER = 4; + + private final String [] TEXT_FORMAT; + private static final int FORMAT_FOLDER_NAME = 0; + private static final int FORMAT_NOTE_DATE = 1; + private static final int FORMAT_NOTE_CONTENT = 2; + + private Context mContext; + private String mFileName; + private String mFileDirectory; + + public TextExport(Context context) { + TEXT_FORMAT = context.getResources().getStringArray(R.array.format_for_exported_note); + mContext = context; + mFileName = ""; + mFileDirectory = ""; + } + + private String getFormat(int id) { + return TEXT_FORMAT[id]; + } + + /** + * Export the folder identified by folder id to text + */ + private void exportFolderToText(String folderId, PrintStream ps) { + // Query notes belong to this folder + Cursor notesCursor = mContext.getContentResolver().query(Notes.CONTENT_NOTE_URI, + NOTE_PROJECTION, NoteColumns.PARENT_ID + "=?", new String[] { + folderId + }, null); + + if (notesCursor != null) { + if (notesCursor.moveToFirst()) { + do { + // Print note's last modified date + ps.println(String.format(getFormat(FORMAT_NOTE_DATE), DateFormat.format( + mContext.getString(R.string.format_datetime_mdhm), + notesCursor.getLong(NOTE_COLUMN_MODIFIED_DATE)))); + // Query data belong to this note + String noteId = notesCursor.getString(NOTE_COLUMN_ID); + exportNoteToText(noteId, ps); + } while (notesCursor.moveToNext()); + } + notesCursor.close(); + } + } + + /** + * Export note identified by id to a print stream + */ + private void exportNoteToText(String noteId, PrintStream ps) { + Cursor dataCursor = mContext.getContentResolver().query(Notes.CONTENT_DATA_URI, + DATA_PROJECTION, DataColumns.NOTE_ID + "=?", new String[] { + noteId + }, null); + + if (dataCursor != null) { + if (dataCursor.moveToFirst()) { + do { + String mimeType = dataCursor.getString(DATA_COLUMN_MIME_TYPE); + if (DataConstants.CALL_NOTE.equals(mimeType)) { + // Print phone number + String phoneNumber = dataCursor.getString(DATA_COLUMN_PHONE_NUMBER); + long callDate = dataCursor.getLong(DATA_COLUMN_CALL_DATE); + String location = dataCursor.getString(DATA_COLUMN_CONTENT); + + if (!TextUtils.isEmpty(phoneNumber)) { + ps.println(String.format(getFormat(FORMAT_NOTE_CONTENT), + phoneNumber)); + } + // Print call date + ps.println(String.format(getFormat(FORMAT_NOTE_CONTENT), DateFormat + .format(mContext.getString(R.string.format_datetime_mdhm), + callDate))); + // Print call attachment location + if (!TextUtils.isEmpty(location)) { + ps.println(String.format(getFormat(FORMAT_NOTE_CONTENT), + location)); + } + } else if (DataConstants.NOTE.equals(mimeType)) { + String content = dataCursor.getString(DATA_COLUMN_CONTENT); + if (!TextUtils.isEmpty(content)) { + ps.println(String.format(getFormat(FORMAT_NOTE_CONTENT), + content)); + } + } + } while (dataCursor.moveToNext()); + } + dataCursor.close(); + } + // print a line separator between note + try { + ps.write(new byte[] { + Character.LINE_SEPARATOR, Character.LETTER_NUMBER + }); + } catch (IOException e) { + Log.e(TAG, e.toString()); + } + } + + /** + * Note will be exported as text which is user readable + */ + public int exportToText() { + if (!externalStorageAvailable()) { + Log.d(TAG, "Media was not mounted"); + return STATE_SD_CARD_UNMOUONTED; + } + + PrintStream ps = getExportToTextPrintStream(); + if (ps == null) { + Log.e(TAG, "get print stream error"); + return STATE_SYSTEM_ERROR; + } + // First export folder and its notes + Cursor folderCursor = mContext.getContentResolver().query( + Notes.CONTENT_NOTE_URI, + NOTE_PROJECTION, + "(" + NoteColumns.TYPE + "=" + Notes.TYPE_FOLDER + " AND " + + NoteColumns.PARENT_ID + "<>" + Notes.ID_TRASH_FOLER + ") OR " + + NoteColumns.ID + "=" + Notes.ID_CALL_RECORD_FOLDER, null, null); + + if (folderCursor != null) { + if (folderCursor.moveToFirst()) { + do { + // Print folder's name + String folderName = ""; + if(folderCursor.getLong(NOTE_COLUMN_ID) == Notes.ID_CALL_RECORD_FOLDER) { + folderName = mContext.getString(R.string.call_record_folder_name); + } else { + folderName = folderCursor.getString(NOTE_COLUMN_SNIPPET); + } + if (!TextUtils.isEmpty(folderName)) { + ps.println(String.format(getFormat(FORMAT_FOLDER_NAME), folderName)); + } + String folderId = folderCursor.getString(NOTE_COLUMN_ID); + exportFolderToText(folderId, ps); + } while (folderCursor.moveToNext()); + } + folderCursor.close(); + } + + // Export notes in root's folder + Cursor noteCursor = mContext.getContentResolver().query( + Notes.CONTENT_NOTE_URI, + NOTE_PROJECTION, + NoteColumns.TYPE + "=" + +Notes.TYPE_NOTE + " AND " + NoteColumns.PARENT_ID + + "=0", null, null); + + if (noteCursor != null) { + if (noteCursor.moveToFirst()) { + do { + ps.println(String.format(getFormat(FORMAT_NOTE_DATE), DateFormat.format( + mContext.getString(R.string.format_datetime_mdhm), + noteCursor.getLong(NOTE_COLUMN_MODIFIED_DATE)))); + // Query data belong to this note + String noteId = noteCursor.getString(NOTE_COLUMN_ID); + exportNoteToText(noteId, ps); + } while (noteCursor.moveToNext()); + } + noteCursor.close(); + } + ps.close(); + + return STATE_SUCCESS; + } + + /** + * Get a print stream pointed to the file {@generateExportedTextFile} + */ + private PrintStream getExportToTextPrintStream() { + File file = generateFileMountedOnSDcard(mContext, R.string.file_path, + R.string.file_name_txt_format); + if (file == null) { + Log.e(TAG, "create file to exported failed"); + return null; + } + mFileName = file.getName(); + mFileDirectory = mContext.getString(R.string.file_path); + PrintStream ps = null; + try { + FileOutputStream fos = new FileOutputStream(file); + ps = new PrintStream(fos); + } catch (FileNotFoundException e) { + e.printStackTrace(); + return null; + } catch (NullPointerException e) { + e.printStackTrace(); + return null; + } + return ps; + } + } + + /** + * Generate the text file to store imported data + */ + private static File generateFileMountedOnSDcard(Context context, int filePathResId, int fileNameFormatResId) { + StringBuilder sb = new StringBuilder(); + sb.append(Environment.getExternalStorageDirectory()); + sb.append(context.getString(filePathResId)); + File filedir = new File(sb.toString()); + sb.append(context.getString( + fileNameFormatResId, + DateFormat.format(context.getString(R.string.format_date_ymd), + System.currentTimeMillis()))); + File file = new File(sb.toString()); + + try { + if (!filedir.exists()) { + filedir.mkdir(); + } + if (!file.exists()) { + file.createNewFile(); + } + return file; + } catch (SecurityException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + + return null; + } +} + + diff --git a/src/test01/app/src/main/java/net/micode/notes/tool/DataUtils.java b/src/test01/app/src/main/java/net/micode/notes/tool/DataUtils.java new file mode 100644 index 0000000..2a14982 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/tool/DataUtils.java @@ -0,0 +1,295 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.tool; + +import android.content.ContentProviderOperation; +import android.content.ContentProviderResult; +import android.content.ContentResolver; +import android.content.ContentUris; +import android.content.ContentValues; +import android.content.OperationApplicationException; +import android.database.Cursor; +import android.os.RemoteException; +import android.util.Log; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.CallNote; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.ui.NotesListAdapter.AppWidgetAttribute; + +import java.util.ArrayList; +import java.util.HashSet; + + +public class DataUtils { + public static final String TAG = "DataUtils"; + public static boolean batchDeleteNotes(ContentResolver resolver, HashSet ids) { + if (ids == null) { + Log.d(TAG, "the ids is null"); + return true; + } + if (ids.size() == 0) { + Log.d(TAG, "no id is in the hashset"); + return true; + } + + ArrayList operationList = new ArrayList(); + for (long id : ids) { + if(id == Notes.ID_ROOT_FOLDER) { + Log.e(TAG, "Don't delete system folder root"); + continue; + } + ContentProviderOperation.Builder builder = ContentProviderOperation + .newDelete(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, id)); + operationList.add(builder.build()); + } + try { + ContentProviderResult[] results = resolver.applyBatch(Notes.AUTHORITY, operationList); + if (results == null || results.length == 0 || results[0] == null) { + Log.d(TAG, "delete notes failed, ids:" + ids.toString()); + return false; + } + return true; + } catch (RemoteException e) { + Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage())); + } catch (OperationApplicationException e) { + Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage())); + } + return false; + } + + public static void moveNoteToFoler(ContentResolver resolver, long id, long srcFolderId, long desFolderId) { + ContentValues values = new ContentValues(); + values.put(NoteColumns.PARENT_ID, desFolderId); + values.put(NoteColumns.ORIGIN_PARENT_ID, srcFolderId); + values.put(NoteColumns.LOCAL_MODIFIED, 1); + resolver.update(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, id), values, null, null); + } + + public static boolean batchMoveToFolder(ContentResolver resolver, HashSet ids, + long folderId) { + if (ids == null) { + Log.d(TAG, "the ids is null"); + return true; + } + + ArrayList operationList = new ArrayList(); + for (long id : ids) { + ContentProviderOperation.Builder builder = ContentProviderOperation + .newUpdate(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, id)); + builder.withValue(NoteColumns.PARENT_ID, folderId); + builder.withValue(NoteColumns.LOCAL_MODIFIED, 1); + operationList.add(builder.build()); + } + + try { + ContentProviderResult[] results = resolver.applyBatch(Notes.AUTHORITY, operationList); + if (results == null || results.length == 0 || results[0] == null) { + Log.d(TAG, "delete notes failed, ids:" + ids.toString()); + return false; + } + return true; + } catch (RemoteException e) { + Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage())); + } catch (OperationApplicationException e) { + Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage())); + } + return false; + } + + /** + * Get the all folder count except system folders {@link Notes#TYPE_SYSTEM}} + */ + public static int getUserFolderCount(ContentResolver resolver) { + Cursor cursor =resolver.query(Notes.CONTENT_NOTE_URI, + new String[] { "COUNT(*)" }, + NoteColumns.TYPE + "=? AND " + NoteColumns.PARENT_ID + "<>?", + new String[] { String.valueOf(Notes.TYPE_FOLDER), String.valueOf(Notes.ID_TRASH_FOLER)}, + null); + + int count = 0; + if(cursor != null) { + if(cursor.moveToFirst()) { + try { + count = cursor.getInt(0); + } catch (IndexOutOfBoundsException e) { + Log.e(TAG, "get folder count failed:" + e.toString()); + } finally { + cursor.close(); + } + } + } + return count; + } + + public static boolean visibleInNoteDatabase(ContentResolver resolver, long noteId, int type) { + Cursor cursor = resolver.query(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId), + null, + NoteColumns.TYPE + "=? AND " + NoteColumns.PARENT_ID + "<>" + Notes.ID_TRASH_FOLER, + new String [] {String.valueOf(type)}, + null); + + boolean exist = false; + if (cursor != null) { + if (cursor.getCount() > 0) { + exist = true; + } + cursor.close(); + } + return exist; + } + + public static boolean existInNoteDatabase(ContentResolver resolver, long noteId) { + Cursor cursor = resolver.query(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId), + null, null, null, null); + + boolean exist = false; + if (cursor != null) { + if (cursor.getCount() > 0) { + exist = true; + } + cursor.close(); + } + return exist; + } + + public static boolean existInDataDatabase(ContentResolver resolver, long dataId) { + Cursor cursor = resolver.query(ContentUris.withAppendedId(Notes.CONTENT_DATA_URI, dataId), + null, null, null, null); + + boolean exist = false; + if (cursor != null) { + if (cursor.getCount() > 0) { + exist = true; + } + cursor.close(); + } + return exist; + } + + public static boolean checkVisibleFolderName(ContentResolver resolver, String name) { + Cursor cursor = resolver.query(Notes.CONTENT_NOTE_URI, null, + NoteColumns.TYPE + "=" + Notes.TYPE_FOLDER + + " AND " + NoteColumns.PARENT_ID + "<>" + Notes.ID_TRASH_FOLER + + " AND " + NoteColumns.SNIPPET + "=?", + new String[] { name }, null); + boolean exist = false; + if(cursor != null) { + if(cursor.getCount() > 0) { + exist = true; + } + cursor.close(); + } + return exist; + } + + public static HashSet getFolderNoteWidget(ContentResolver resolver, long folderId) { + Cursor c = resolver.query(Notes.CONTENT_NOTE_URI, + new String[] { NoteColumns.WIDGET_ID, NoteColumns.WIDGET_TYPE }, + NoteColumns.PARENT_ID + "=?", + new String[] { String.valueOf(folderId) }, + null); + + HashSet set = null; + if (c != null) { + if (c.moveToFirst()) { + set = new HashSet(); + do { + try { + AppWidgetAttribute widget = new AppWidgetAttribute(); + widget.widgetId = c.getInt(0); + widget.widgetType = c.getInt(1); + set.add(widget); + } catch (IndexOutOfBoundsException e) { + Log.e(TAG, e.toString()); + } + } while (c.moveToNext()); + } + c.close(); + } + return set; + } + + public static String getCallNumberByNoteId(ContentResolver resolver, long noteId) { + Cursor cursor = resolver.query(Notes.CONTENT_DATA_URI, + new String [] { CallNote.PHONE_NUMBER }, + CallNote.NOTE_ID + "=? AND " + CallNote.MIME_TYPE + "=?", + new String [] { String.valueOf(noteId), CallNote.CONTENT_ITEM_TYPE }, + null); + + if (cursor != null && cursor.moveToFirst()) { + try { + return cursor.getString(0); + } catch (IndexOutOfBoundsException e) { + Log.e(TAG, "Get call number fails " + e.toString()); + } finally { + cursor.close(); + } + } + return ""; + } + + public static long getNoteIdByPhoneNumberAndCallDate(ContentResolver resolver, String phoneNumber, long callDate) { + Cursor cursor = resolver.query(Notes.CONTENT_DATA_URI, + new String [] { CallNote.NOTE_ID }, + CallNote.CALL_DATE + "=? AND " + CallNote.MIME_TYPE + "=? AND PHONE_NUMBERS_EQUAL(" + + CallNote.PHONE_NUMBER + ",?)", + new String [] { String.valueOf(callDate), CallNote.CONTENT_ITEM_TYPE, phoneNumber }, + null); + + if (cursor != null) { + if (cursor.moveToFirst()) { + try { + return cursor.getLong(0); + } catch (IndexOutOfBoundsException e) { + Log.e(TAG, "Get call note id fails " + e.toString()); + } + } + cursor.close(); + } + return 0; + } + + public static String getSnippetById(ContentResolver resolver, long noteId) { + Cursor cursor = resolver.query(Notes.CONTENT_NOTE_URI, + new String [] { NoteColumns.SNIPPET }, + NoteColumns.ID + "=?", + new String [] { String.valueOf(noteId)}, + null); + + if (cursor != null) { + String snippet = ""; + if (cursor.moveToFirst()) { + snippet = cursor.getString(0); + } + cursor.close(); + return snippet; + } + throw new IllegalArgumentException("Note is not found with id: " + noteId); + } + + public static String getFormattedSnippet(String snippet) { + if (snippet != null) { + snippet = snippet.trim(); + int index = snippet.indexOf('\n'); + if (index != -1) { + snippet = snippet.substring(0, index); + } + } + return snippet; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java b/src/test01/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java new file mode 100644 index 0000000..666b729 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java @@ -0,0 +1,113 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.tool; + +public class GTaskStringUtils { + + public final static String GTASK_JSON_ACTION_ID = "action_id"; + + public final static String GTASK_JSON_ACTION_LIST = "action_list"; + + public final static String GTASK_JSON_ACTION_TYPE = "action_type"; + + public final static String GTASK_JSON_ACTION_TYPE_CREATE = "create"; + + public final static String GTASK_JSON_ACTION_TYPE_GETALL = "get_all"; + + public final static String GTASK_JSON_ACTION_TYPE_MOVE = "move"; + + public final static String GTASK_JSON_ACTION_TYPE_UPDATE = "update"; + + public final static String GTASK_JSON_CREATOR_ID = "creator_id"; + + public final static String GTASK_JSON_CHILD_ENTITY = "child_entity"; + + public final static String GTASK_JSON_CLIENT_VERSION = "client_version"; + + public final static String GTASK_JSON_COMPLETED = "completed"; + + public final static String GTASK_JSON_CURRENT_LIST_ID = "current_list_id"; + + public final static String GTASK_JSON_DEFAULT_LIST_ID = "default_list_id"; + + public final static String GTASK_JSON_DELETED = "deleted"; + + public final static String GTASK_JSON_DEST_LIST = "dest_list"; + + public final static String GTASK_JSON_DEST_PARENT = "dest_parent"; + + public final static String GTASK_JSON_DEST_PARENT_TYPE = "dest_parent_type"; + + public final static String GTASK_JSON_ENTITY_DELTA = "entity_delta"; + + public final static String GTASK_JSON_ENTITY_TYPE = "entity_type"; + + public final static String GTASK_JSON_GET_DELETED = "get_deleted"; + + public final static String GTASK_JSON_ID = "id"; + + public final static String GTASK_JSON_INDEX = "index"; + + public final static String GTASK_JSON_LAST_MODIFIED = "last_modified"; + + public final static String GTASK_JSON_LATEST_SYNC_POINT = "latest_sync_point"; + + public final static String GTASK_JSON_LIST_ID = "list_id"; + + public final static String GTASK_JSON_LISTS = "lists"; + + public final static String GTASK_JSON_NAME = "name"; + + public final static String GTASK_JSON_NEW_ID = "new_id"; + + public final static String GTASK_JSON_NOTES = "notes"; + + public final static String GTASK_JSON_PARENT_ID = "parent_id"; + + public final static String GTASK_JSON_PRIOR_SIBLING_ID = "prior_sibling_id"; + + public final static String GTASK_JSON_RESULTS = "results"; + + public final static String GTASK_JSON_SOURCE_LIST = "source_list"; + + public final static String GTASK_JSON_TASKS = "tasks"; + + public final static String GTASK_JSON_TYPE = "type"; + + public final static String GTASK_JSON_TYPE_GROUP = "GROUP"; + + public final static String GTASK_JSON_TYPE_TASK = "TASK"; + + public final static String GTASK_JSON_USER = "user"; + + public final static String MIUI_FOLDER_PREFFIX = "[MIUI_Notes]"; + + public final static String FOLDER_DEFAULT = "Default"; + + public final static String FOLDER_CALL_NOTE = "Call_Note"; + + public final static String FOLDER_META = "METADATA"; + + public final static String META_HEAD_GTASK_ID = "meta_gid"; + + public final static String META_HEAD_NOTE = "meta_note"; + + public final static String META_HEAD_DATA = "meta_data"; + + public final static String META_NOTE_NAME = "[META INFO] DON'T UPDATE AND DELETE"; + +} diff --git a/src/test01/app/src/main/java/net/micode/notes/tool/ResourceParser.java b/src/test01/app/src/main/java/net/micode/notes/tool/ResourceParser.java new file mode 100644 index 0000000..1ad3ad6 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/tool/ResourceParser.java @@ -0,0 +1,181 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.tool; + +import android.content.Context; +import android.preference.PreferenceManager; + +import net.micode.notes.R; +import net.micode.notes.ui.NotesPreferenceActivity; + +public class ResourceParser { + + public static final int YELLOW = 0; + public static final int BLUE = 1; + public static final int WHITE = 2; + public static final int GREEN = 3; + public static final int RED = 4; + + public static final int BG_DEFAULT_COLOR = YELLOW; + + public static final int TEXT_SMALL = 0; + public static final int TEXT_MEDIUM = 1; + public static final int TEXT_LARGE = 2; + public static final int TEXT_SUPER = 3; + + public static final int BG_DEFAULT_FONT_SIZE = TEXT_MEDIUM; + + public static class NoteBgResources { + private final static int [] BG_EDIT_RESOURCES = new int [] { + R.drawable.edit_yellow, + R.drawable.edit_blue, + R.drawable.edit_white, + R.drawable.edit_green, + R.drawable.edit_red + }; + + private final static int [] BG_EDIT_TITLE_RESOURCES = new int [] { + R.drawable.edit_title_yellow, + R.drawable.edit_title_blue, + R.drawable.edit_title_white, + R.drawable.edit_title_green, + R.drawable.edit_title_red + }; + + public static int getNoteBgResource(int id) { + return BG_EDIT_RESOURCES[id]; + } + + public static int getNoteTitleBgResource(int id) { + return BG_EDIT_TITLE_RESOURCES[id]; + } + } + + public static int getDefaultBgId(Context context) { + if (PreferenceManager.getDefaultSharedPreferences(context).getBoolean( + NotesPreferenceActivity.PREFERENCE_SET_BG_COLOR_KEY, false)) { + return (int) (Math.random() * NoteBgResources.BG_EDIT_RESOURCES.length); + } else { + return BG_DEFAULT_COLOR; + } + } + + public static class NoteItemBgResources { + private final static int [] BG_FIRST_RESOURCES = new int [] { + R.drawable.list_yellow_up, + R.drawable.list_blue_up, + R.drawable.list_white_up, + R.drawable.list_green_up, + R.drawable.list_red_up + }; + + private final static int [] BG_NORMAL_RESOURCES = new int [] { + R.drawable.list_yellow_middle, + R.drawable.list_blue_middle, + R.drawable.list_white_middle, + R.drawable.list_green_middle, + R.drawable.list_red_middle + }; + + private final static int [] BG_LAST_RESOURCES = new int [] { + R.drawable.list_yellow_down, + R.drawable.list_blue_down, + R.drawable.list_white_down, + R.drawable.list_green_down, + R.drawable.list_red_down, + }; + + private final static int [] BG_SINGLE_RESOURCES = new int [] { + R.drawable.list_yellow_single, + R.drawable.list_blue_single, + R.drawable.list_white_single, + R.drawable.list_green_single, + R.drawable.list_red_single + }; + + public static int getNoteBgFirstRes(int id) { + return BG_FIRST_RESOURCES[id]; + } + + public static int getNoteBgLastRes(int id) { + return BG_LAST_RESOURCES[id]; + } + + public static int getNoteBgSingleRes(int id) { + return BG_SINGLE_RESOURCES[id]; + } + + public static int getNoteBgNormalRes(int id) { + return BG_NORMAL_RESOURCES[id]; + } + + public static int getFolderBgRes() { + return R.drawable.list_folder; + } + } + + public static class WidgetBgResources { + private final static int [] BG_2X_RESOURCES = new int [] { + R.drawable.widget_2x_yellow, + R.drawable.widget_2x_blue, + R.drawable.widget_2x_white, + R.drawable.widget_2x_green, + R.drawable.widget_2x_red, + }; + + public static int getWidget2xBgResource(int id) { + return BG_2X_RESOURCES[id]; + } + + private final static int [] BG_4X_RESOURCES = new int [] { + R.drawable.widget_4x_yellow, + R.drawable.widget_4x_blue, + R.drawable.widget_4x_white, + R.drawable.widget_4x_green, + R.drawable.widget_4x_red + }; + + public static int getWidget4xBgResource(int id) { + return BG_4X_RESOURCES[id]; + } + } + + public static class TextAppearanceResources { + private final static int [] TEXTAPPEARANCE_RESOURCES = new int [] { + R.style.TextAppearanceNormal, + R.style.TextAppearanceMedium, + R.style.TextAppearanceLarge, + R.style.TextAppearanceSuper + }; + + public static int getTexAppearanceResource(int id) { + /** + * HACKME: Fix bug of store the resource id in shared preference. + * The id may larger than the length of resources, in this case, + * return the {@link ResourceParser#BG_DEFAULT_FONT_SIZE} + */ + if (id >= TEXTAPPEARANCE_RESOURCES.length) { + return BG_DEFAULT_FONT_SIZE; + } + return TEXTAPPEARANCE_RESOURCES[id]; + } + + public static int getResourcesSize() { + return TEXTAPPEARANCE_RESOURCES.length; + } + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java b/src/test01/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java new file mode 100644 index 0000000..85723be --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java @@ -0,0 +1,158 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.app.Activity; +import android.app.AlertDialog; +import android.content.Context; +import android.content.DialogInterface; +import android.content.DialogInterface.OnClickListener; +import android.content.DialogInterface.OnDismissListener; +import android.content.Intent; +import android.media.AudioManager; +import android.media.MediaPlayer; +import android.media.RingtoneManager; +import android.net.Uri; +import android.os.Bundle; +import android.os.PowerManager; +import android.provider.Settings; +import android.view.Window; +import android.view.WindowManager; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.tool.DataUtils; + +import java.io.IOException; + + +public class AlarmAlertActivity extends Activity implements OnClickListener, OnDismissListener { + private long mNoteId; + private String mSnippet; + private static final int SNIPPET_PREW_MAX_LEN = 60; + MediaPlayer mPlayer; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + requestWindowFeature(Window.FEATURE_NO_TITLE); + + final Window win = getWindow(); + win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED); + + if (!isScreenOn()) { + win.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON + | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON + | WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON + | WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR); + } + + Intent intent = getIntent(); + + try { + mNoteId = Long.valueOf(intent.getData().getPathSegments().get(1)); + mSnippet = DataUtils.getSnippetById(this.getContentResolver(), mNoteId); + mSnippet = mSnippet.length() > SNIPPET_PREW_MAX_LEN ? mSnippet.substring(0, + SNIPPET_PREW_MAX_LEN) + getResources().getString(R.string.notelist_string_info) + : mSnippet; + } catch (IllegalArgumentException e) { + e.printStackTrace(); + return; + } + + mPlayer = new MediaPlayer(); + if (DataUtils.visibleInNoteDatabase(getContentResolver(), mNoteId, Notes.TYPE_NOTE)) { + showActionDialog(); + playAlarmSound(); + } else { + finish(); + } + } + + private boolean isScreenOn() { + PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); + return pm.isScreenOn(); + } + + private void playAlarmSound() { + Uri url = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM); + + int silentModeStreams = Settings.System.getInt(getContentResolver(), + Settings.System.MODE_RINGER_STREAMS_AFFECTED, 0); + + if ((silentModeStreams & (1 << AudioManager.STREAM_ALARM)) != 0) { + mPlayer.setAudioStreamType(silentModeStreams); + } else { + mPlayer.setAudioStreamType(AudioManager.STREAM_ALARM); + } + try { + mPlayer.setDataSource(this, url); + mPlayer.prepare(); + mPlayer.setLooping(true); + mPlayer.start(); + } catch (IllegalArgumentException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (SecurityException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IllegalStateException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + private void showActionDialog() { + AlertDialog.Builder dialog = new AlertDialog.Builder(this); + dialog.setTitle(R.string.app_name); + dialog.setMessage(mSnippet); + dialog.setPositiveButton(R.string.notealert_ok, this); + if (isScreenOn()) { + dialog.setNegativeButton(R.string.notealert_enter, this); + } + dialog.show().setOnDismissListener(this); + } + + public void onClick(DialogInterface dialog, int which) { + switch (which) { + case DialogInterface.BUTTON_NEGATIVE: + Intent intent = new Intent(this, NoteEditActivity.class); + intent.setAction(Intent.ACTION_VIEW); + intent.putExtra(Intent.EXTRA_UID, mNoteId); + startActivity(intent); + break; + default: + break; + } + } + + public void onDismiss(DialogInterface dialog) { + stopAlarmSound(); + finish(); + } + + private void stopAlarmSound() { + if (mPlayer != null) { + mPlayer.stop(); + mPlayer.release(); + mPlayer = null; + } + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java b/src/test01/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java new file mode 100644 index 0000000..f221202 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.app.AlarmManager; +import android.app.PendingIntent; +import android.content.BroadcastReceiver; +import android.content.ContentUris; +import android.content.Context; +import android.content.Intent; +import android.database.Cursor; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; + + +public class AlarmInitReceiver extends BroadcastReceiver { + + private static final String [] PROJECTION = new String [] { + NoteColumns.ID, + NoteColumns.ALERTED_DATE + }; + + private static final int COLUMN_ID = 0; + private static final int COLUMN_ALERTED_DATE = 1; + + @Override + public void onReceive(Context context, Intent intent) { + long currentDate = System.currentTimeMillis(); + Cursor c = context.getContentResolver().query(Notes.CONTENT_NOTE_URI, + PROJECTION, + NoteColumns.ALERTED_DATE + ">? AND " + NoteColumns.TYPE + "=" + Notes.TYPE_NOTE, + new String[] { String.valueOf(currentDate) }, + null); + + if (c != null) { + if (c.moveToFirst()) { + do { + long alertDate = c.getLong(COLUMN_ALERTED_DATE); + Intent sender = new Intent(context, AlarmReceiver.class); + sender.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, c.getLong(COLUMN_ID))); + PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, sender, 0); + AlarmManager alermManager = (AlarmManager) context + .getSystemService(Context.ALARM_SERVICE); + alermManager.set(AlarmManager.RTC_WAKEUP, alertDate, pendingIntent); + } while (c.moveToNext()); + } + c.close(); + } + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java b/src/test01/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java new file mode 100644 index 0000000..54e503b --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; + +public class AlarmReceiver extends BroadcastReceiver { + @Override + public void onReceive(Context context, Intent intent) { + intent.setClass(context, AlarmAlertActivity.class); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + context.startActivity(intent); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/DateTimePicker.java b/src/test01/app/src/main/java/net/micode/notes/ui/DateTimePicker.java new file mode 100644 index 0000000..496b0cd --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/DateTimePicker.java @@ -0,0 +1,485 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import java.text.DateFormatSymbols; +import java.util.Calendar; + +import net.micode.notes.R; + + +import android.content.Context; +import android.text.format.DateFormat; +import android.view.View; +import android.widget.FrameLayout; +import android.widget.NumberPicker; + +public class DateTimePicker extends FrameLayout { + + private static final boolean DEFAULT_ENABLE_STATE = true; + + private static final int HOURS_IN_HALF_DAY = 12; + private static final int HOURS_IN_ALL_DAY = 24; + private static final int DAYS_IN_ALL_WEEK = 7; + private static final int DATE_SPINNER_MIN_VAL = 0; + private static final int DATE_SPINNER_MAX_VAL = DAYS_IN_ALL_WEEK - 1; + private static final int HOUR_SPINNER_MIN_VAL_24_HOUR_VIEW = 0; + private static final int HOUR_SPINNER_MAX_VAL_24_HOUR_VIEW = 23; + private static final int HOUR_SPINNER_MIN_VAL_12_HOUR_VIEW = 1; + private static final int HOUR_SPINNER_MAX_VAL_12_HOUR_VIEW = 12; + private static final int MINUT_SPINNER_MIN_VAL = 0; + private static final int MINUT_SPINNER_MAX_VAL = 59; + private static final int AMPM_SPINNER_MIN_VAL = 0; + private static final int AMPM_SPINNER_MAX_VAL = 1; + + private final NumberPicker mDateSpinner; + private final NumberPicker mHourSpinner; + private final NumberPicker mMinuteSpinner; + private final NumberPicker mAmPmSpinner; + private Calendar mDate; + + private String[] mDateDisplayValues = new String[DAYS_IN_ALL_WEEK]; + + private boolean mIsAm; + + private boolean mIs24HourView; + + private boolean mIsEnabled = DEFAULT_ENABLE_STATE; + + private boolean mInitialising; + + private OnDateTimeChangedListener mOnDateTimeChangedListener; + + private NumberPicker.OnValueChangeListener mOnDateChangedListener = new NumberPicker.OnValueChangeListener() { + @Override + public void onValueChange(NumberPicker picker, int oldVal, int newVal) { + mDate.add(Calendar.DAY_OF_YEAR, newVal - oldVal); + updateDateControl(); + onDateTimeChanged(); + } + }; + + private NumberPicker.OnValueChangeListener mOnHourChangedListener = new NumberPicker.OnValueChangeListener() { + @Override + public void onValueChange(NumberPicker picker, int oldVal, int newVal) { + boolean isDateChanged = false; + Calendar cal = Calendar.getInstance(); + if (!mIs24HourView) { + if (!mIsAm && oldVal == HOURS_IN_HALF_DAY - 1 && newVal == HOURS_IN_HALF_DAY) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, 1); + isDateChanged = true; + } else if (mIsAm && oldVal == HOURS_IN_HALF_DAY && newVal == HOURS_IN_HALF_DAY - 1) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, -1); + isDateChanged = true; + } + if (oldVal == HOURS_IN_HALF_DAY - 1 && newVal == HOURS_IN_HALF_DAY || + oldVal == HOURS_IN_HALF_DAY && newVal == HOURS_IN_HALF_DAY - 1) { + mIsAm = !mIsAm; + updateAmPmControl(); + } + } else { + if (oldVal == HOURS_IN_ALL_DAY - 1 && newVal == 0) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, 1); + isDateChanged = true; + } else if (oldVal == 0 && newVal == HOURS_IN_ALL_DAY - 1) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, -1); + isDateChanged = true; + } + } + int newHour = mHourSpinner.getValue() % HOURS_IN_HALF_DAY + (mIsAm ? 0 : HOURS_IN_HALF_DAY); + mDate.set(Calendar.HOUR_OF_DAY, newHour); + onDateTimeChanged(); + if (isDateChanged) { + setCurrentYear(cal.get(Calendar.YEAR)); + setCurrentMonth(cal.get(Calendar.MONTH)); + setCurrentDay(cal.get(Calendar.DAY_OF_MONTH)); + } + } + }; + + private NumberPicker.OnValueChangeListener mOnMinuteChangedListener = new NumberPicker.OnValueChangeListener() { + @Override + public void onValueChange(NumberPicker picker, int oldVal, int newVal) { + int minValue = mMinuteSpinner.getMinValue(); + int maxValue = mMinuteSpinner.getMaxValue(); + int offset = 0; + if (oldVal == maxValue && newVal == minValue) { + offset += 1; + } else if (oldVal == minValue && newVal == maxValue) { + offset -= 1; + } + if (offset != 0) { + mDate.add(Calendar.HOUR_OF_DAY, offset); + mHourSpinner.setValue(getCurrentHour()); + updateDateControl(); + int newHour = getCurrentHourOfDay(); + if (newHour >= HOURS_IN_HALF_DAY) { + mIsAm = false; + updateAmPmControl(); + } else { + mIsAm = true; + updateAmPmControl(); + } + } + mDate.set(Calendar.MINUTE, newVal); + onDateTimeChanged(); + } + }; + + private NumberPicker.OnValueChangeListener mOnAmPmChangedListener = new NumberPicker.OnValueChangeListener() { + @Override + public void onValueChange(NumberPicker picker, int oldVal, int newVal) { + mIsAm = !mIsAm; + if (mIsAm) { + mDate.add(Calendar.HOUR_OF_DAY, -HOURS_IN_HALF_DAY); + } else { + mDate.add(Calendar.HOUR_OF_DAY, HOURS_IN_HALF_DAY); + } + updateAmPmControl(); + onDateTimeChanged(); + } + }; + + public interface OnDateTimeChangedListener { + void onDateTimeChanged(DateTimePicker view, int year, int month, + int dayOfMonth, int hourOfDay, int minute); + } + + public DateTimePicker(Context context) { + this(context, System.currentTimeMillis()); + } + + public DateTimePicker(Context context, long date) { + this(context, date, DateFormat.is24HourFormat(context)); + } + + public DateTimePicker(Context context, long date, boolean is24HourView) { + super(context); + mDate = Calendar.getInstance(); + mInitialising = true; + mIsAm = getCurrentHourOfDay() >= HOURS_IN_HALF_DAY; + inflate(context, R.layout.datetime_picker, this); + + mDateSpinner = (NumberPicker) findViewById(R.id.date); + mDateSpinner.setMinValue(DATE_SPINNER_MIN_VAL); + mDateSpinner.setMaxValue(DATE_SPINNER_MAX_VAL); + mDateSpinner.setOnValueChangedListener(mOnDateChangedListener); + + mHourSpinner = (NumberPicker) findViewById(R.id.hour); + mHourSpinner.setOnValueChangedListener(mOnHourChangedListener); + mMinuteSpinner = (NumberPicker) findViewById(R.id.minute); + mMinuteSpinner.setMinValue(MINUT_SPINNER_MIN_VAL); + mMinuteSpinner.setMaxValue(MINUT_SPINNER_MAX_VAL); + mMinuteSpinner.setOnLongPressUpdateInterval(100); + mMinuteSpinner.setOnValueChangedListener(mOnMinuteChangedListener); + + String[] stringsForAmPm = new DateFormatSymbols().getAmPmStrings(); + mAmPmSpinner = (NumberPicker) findViewById(R.id.amPm); + mAmPmSpinner.setMinValue(AMPM_SPINNER_MIN_VAL); + mAmPmSpinner.setMaxValue(AMPM_SPINNER_MAX_VAL); + mAmPmSpinner.setDisplayedValues(stringsForAmPm); + mAmPmSpinner.setOnValueChangedListener(mOnAmPmChangedListener); + + // update controls to initial state + updateDateControl(); + updateHourControl(); + updateAmPmControl(); + + set24HourView(is24HourView); + + // set to current time + setCurrentDate(date); + + setEnabled(isEnabled()); + + // set the content descriptions + mInitialising = false; + } + + @Override + public void setEnabled(boolean enabled) { + if (mIsEnabled == enabled) { + return; + } + super.setEnabled(enabled); + mDateSpinner.setEnabled(enabled); + mMinuteSpinner.setEnabled(enabled); + mHourSpinner.setEnabled(enabled); + mAmPmSpinner.setEnabled(enabled); + mIsEnabled = enabled; + } + + @Override + public boolean isEnabled() { + return mIsEnabled; + } + + /** + * Get the current date in millis + * + * @return the current date in millis + */ + public long getCurrentDateInTimeMillis() { + return mDate.getTimeInMillis(); + } + + /** + * Set the current date + * + * @param date The current date in millis + */ + public void setCurrentDate(long date) { + Calendar cal = Calendar.getInstance(); + cal.setTimeInMillis(date); + setCurrentDate(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE)); + } + + /** + * Set the current date + * + * @param year The current year + * @param month The current month + * @param dayOfMonth The current dayOfMonth + * @param hourOfDay The current hourOfDay + * @param minute The current minute + */ + public void setCurrentDate(int year, int month, + int dayOfMonth, int hourOfDay, int minute) { + setCurrentYear(year); + setCurrentMonth(month); + setCurrentDay(dayOfMonth); + setCurrentHour(hourOfDay); + setCurrentMinute(minute); + } + + /** + * Get current year + * + * @return The current year + */ + public int getCurrentYear() { + return mDate.get(Calendar.YEAR); + } + + /** + * Set current year + * + * @param year The current year + */ + public void setCurrentYear(int year) { + if (!mInitialising && year == getCurrentYear()) { + return; + } + mDate.set(Calendar.YEAR, year); + updateDateControl(); + onDateTimeChanged(); + } + + /** + * Get current month in the year + * + * @return The current month in the year + */ + public int getCurrentMonth() { + return mDate.get(Calendar.MONTH); + } + + /** + * Set current month in the year + * + * @param month The month in the year + */ + public void setCurrentMonth(int month) { + if (!mInitialising && month == getCurrentMonth()) { + return; + } + mDate.set(Calendar.MONTH, month); + updateDateControl(); + onDateTimeChanged(); + } + + /** + * Get current day of the month + * + * @return The day of the month + */ + public int getCurrentDay() { + return mDate.get(Calendar.DAY_OF_MONTH); + } + + /** + * Set current day of the month + * + * @param dayOfMonth The day of the month + */ + public void setCurrentDay(int dayOfMonth) { + if (!mInitialising && dayOfMonth == getCurrentDay()) { + return; + } + mDate.set(Calendar.DAY_OF_MONTH, dayOfMonth); + updateDateControl(); + onDateTimeChanged(); + } + + /** + * Get current hour in 24 hour mode, in the range (0~23) + * @return The current hour in 24 hour mode + */ + public int getCurrentHourOfDay() { + return mDate.get(Calendar.HOUR_OF_DAY); + } + + private int getCurrentHour() { + if (mIs24HourView){ + return getCurrentHourOfDay(); + } else { + int hour = getCurrentHourOfDay(); + if (hour > HOURS_IN_HALF_DAY) { + return hour - HOURS_IN_HALF_DAY; + } else { + return hour == 0 ? HOURS_IN_HALF_DAY : hour; + } + } + } + + /** + * Set current hour in 24 hour mode, in the range (0~23) + * + * @param hourOfDay + */ + public void setCurrentHour(int hourOfDay) { + if (!mInitialising && hourOfDay == getCurrentHourOfDay()) { + return; + } + mDate.set(Calendar.HOUR_OF_DAY, hourOfDay); + if (!mIs24HourView) { + if (hourOfDay >= HOURS_IN_HALF_DAY) { + mIsAm = false; + if (hourOfDay > HOURS_IN_HALF_DAY) { + hourOfDay -= HOURS_IN_HALF_DAY; + } + } else { + mIsAm = true; + if (hourOfDay == 0) { + hourOfDay = HOURS_IN_HALF_DAY; + } + } + updateAmPmControl(); + } + mHourSpinner.setValue(hourOfDay); + onDateTimeChanged(); + } + + /** + * Get currentMinute + * + * @return The Current Minute + */ + public int getCurrentMinute() { + return mDate.get(Calendar.MINUTE); + } + + /** + * Set current minute + */ + public void setCurrentMinute(int minute) { + if (!mInitialising && minute == getCurrentMinute()) { + return; + } + mMinuteSpinner.setValue(minute); + mDate.set(Calendar.MINUTE, minute); + onDateTimeChanged(); + } + + /** + * @return true if this is in 24 hour view else false. + */ + public boolean is24HourView () { + return mIs24HourView; + } + + /** + * Set whether in 24 hour or AM/PM mode. + * + * @param is24HourView True for 24 hour mode. False for AM/PM mode. + */ + public void set24HourView(boolean is24HourView) { + if (mIs24HourView == is24HourView) { + return; + } + mIs24HourView = is24HourView; + mAmPmSpinner.setVisibility(is24HourView ? View.GONE : View.VISIBLE); + int hour = getCurrentHourOfDay(); + updateHourControl(); + setCurrentHour(hour); + updateAmPmControl(); + } + + private void updateDateControl() { + Calendar cal = Calendar.getInstance(); + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, -DAYS_IN_ALL_WEEK / 2 - 1); + mDateSpinner.setDisplayedValues(null); + for (int i = 0; i < DAYS_IN_ALL_WEEK; ++i) { + cal.add(Calendar.DAY_OF_YEAR, 1); + mDateDisplayValues[i] = (String) DateFormat.format("MM.dd EEEE", cal); + } + mDateSpinner.setDisplayedValues(mDateDisplayValues); + mDateSpinner.setValue(DAYS_IN_ALL_WEEK / 2); + mDateSpinner.invalidate(); + } + + private void updateAmPmControl() { + if (mIs24HourView) { + mAmPmSpinner.setVisibility(View.GONE); + } else { + int index = mIsAm ? Calendar.AM : Calendar.PM; + mAmPmSpinner.setValue(index); + mAmPmSpinner.setVisibility(View.VISIBLE); + } + } + + private void updateHourControl() { + if (mIs24HourView) { + mHourSpinner.setMinValue(HOUR_SPINNER_MIN_VAL_24_HOUR_VIEW); + mHourSpinner.setMaxValue(HOUR_SPINNER_MAX_VAL_24_HOUR_VIEW); + } else { + mHourSpinner.setMinValue(HOUR_SPINNER_MIN_VAL_12_HOUR_VIEW); + mHourSpinner.setMaxValue(HOUR_SPINNER_MAX_VAL_12_HOUR_VIEW); + } + } + + /** + * Set the callback that indicates the 'Set' button has been pressed. + * @param callback the callback, if null will do nothing + */ + public void setOnDateTimeChangedListener(OnDateTimeChangedListener callback) { + mOnDateTimeChangedListener = callback; + } + + private void onDateTimeChanged() { + if (mOnDateTimeChangedListener != null) { + mOnDateTimeChangedListener.onDateTimeChanged(this, getCurrentYear(), + getCurrentMonth(), getCurrentDay(), getCurrentHourOfDay(), getCurrentMinute()); + } + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java b/src/test01/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java new file mode 100644 index 0000000..2c47ba4 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java @@ -0,0 +1,90 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import java.util.Calendar; + +import net.micode.notes.R; +import net.micode.notes.ui.DateTimePicker; +import net.micode.notes.ui.DateTimePicker.OnDateTimeChangedListener; + +import android.app.AlertDialog; +import android.content.Context; +import android.content.DialogInterface; +import android.content.DialogInterface.OnClickListener; +import android.text.format.DateFormat; +import android.text.format.DateUtils; + +public class DateTimePickerDialog extends AlertDialog implements OnClickListener { + + private Calendar mDate = Calendar.getInstance(); + private boolean mIs24HourView; + private OnDateTimeSetListener mOnDateTimeSetListener; + private DateTimePicker mDateTimePicker; + + public interface OnDateTimeSetListener { + void OnDateTimeSet(AlertDialog dialog, long date); + } + + public DateTimePickerDialog(Context context, long date) { + super(context); + mDateTimePicker = new DateTimePicker(context); + setView(mDateTimePicker); + mDateTimePicker.setOnDateTimeChangedListener(new OnDateTimeChangedListener() { + public void onDateTimeChanged(DateTimePicker view, int year, int month, + int dayOfMonth, int hourOfDay, int minute) { + mDate.set(Calendar.YEAR, year); + mDate.set(Calendar.MONTH, month); + mDate.set(Calendar.DAY_OF_MONTH, dayOfMonth); + mDate.set(Calendar.HOUR_OF_DAY, hourOfDay); + mDate.set(Calendar.MINUTE, minute); + updateTitle(mDate.getTimeInMillis()); + } + }); + mDate.setTimeInMillis(date); + mDate.set(Calendar.SECOND, 0); + mDateTimePicker.setCurrentDate(mDate.getTimeInMillis()); + setButton(context.getString(R.string.datetime_dialog_ok), this); + setButton2(context.getString(R.string.datetime_dialog_cancel), (OnClickListener)null); + set24HourView(DateFormat.is24HourFormat(this.getContext())); + updateTitle(mDate.getTimeInMillis()); + } + + public void set24HourView(boolean is24HourView) { + mIs24HourView = is24HourView; + } + + public void setOnDateTimeSetListener(OnDateTimeSetListener callBack) { + mOnDateTimeSetListener = callBack; + } + + private void updateTitle(long date) { + int flag = + DateUtils.FORMAT_SHOW_YEAR | + DateUtils.FORMAT_SHOW_DATE | + DateUtils.FORMAT_SHOW_TIME; + flag |= mIs24HourView ? DateUtils.FORMAT_24HOUR : DateUtils.FORMAT_24HOUR; + setTitle(DateUtils.formatDateTime(this.getContext(), date, flag)); + } + + public void onClick(DialogInterface arg0, int arg1) { + if (mOnDateTimeSetListener != null) { + mOnDateTimeSetListener.OnDateTimeSet(this, mDate.getTimeInMillis()); + } + } + +} \ No newline at end of file diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/DropdownMenu.java b/src/test01/app/src/main/java/net/micode/notes/ui/DropdownMenu.java new file mode 100644 index 0000000..613dc74 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/DropdownMenu.java @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.content.Context; +import android.view.Menu; +import android.view.MenuItem; +import android.view.View; +import android.view.View.OnClickListener; +import android.widget.Button; +import android.widget.PopupMenu; +import android.widget.PopupMenu.OnMenuItemClickListener; + +import net.micode.notes.R; + +public class DropdownMenu { + private Button mButton; + private PopupMenu mPopupMenu; + private Menu mMenu; + + public DropdownMenu(Context context, Button button, int menuId) { + mButton = button; + mButton.setBackgroundResource(R.drawable.dropdown_icon); + mPopupMenu = new PopupMenu(context, mButton); + mMenu = mPopupMenu.getMenu(); + mPopupMenu.getMenuInflater().inflate(menuId, mMenu); + mButton.setOnClickListener(new OnClickListener() { + public void onClick(View v) { + mPopupMenu.show(); + } + }); + } + + public void setOnDropdownMenuItemClickListener(OnMenuItemClickListener listener) { + if (mPopupMenu != null) { + mPopupMenu.setOnMenuItemClickListener(listener); + } + } + + public MenuItem findItem(int id) { + return mMenu.findItem(id); + } + + public void setTitle(CharSequence title) { + mButton.setText(title); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java b/src/test01/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java new file mode 100644 index 0000000..96b77da --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.content.Context; +import android.database.Cursor; +import android.view.View; +import android.view.ViewGroup; +import android.widget.CursorAdapter; +import android.widget.LinearLayout; +import android.widget.TextView; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; + + +public class FoldersListAdapter extends CursorAdapter { + public static final String [] PROJECTION = { + NoteColumns.ID, + NoteColumns.SNIPPET + }; + + public static final int ID_COLUMN = 0; + public static final int NAME_COLUMN = 1; + + public FoldersListAdapter(Context context, Cursor c) { + super(context, c); + // TODO Auto-generated constructor stub + } + + @Override + public View newView(Context context, Cursor cursor, ViewGroup parent) { + return new FolderListItem(context); + } + + @Override + public void bindView(View view, Context context, Cursor cursor) { + if (view instanceof FolderListItem) { + String folderName = (cursor.getLong(ID_COLUMN) == Notes.ID_ROOT_FOLDER) ? context + .getString(R.string.menu_move_parent_folder) : cursor.getString(NAME_COLUMN); + ((FolderListItem) view).bind(folderName); + } + } + + public String getFolderName(Context context, int position) { + Cursor cursor = (Cursor) getItem(position); + return (cursor.getLong(ID_COLUMN) == Notes.ID_ROOT_FOLDER) ? context + .getString(R.string.menu_move_parent_folder) : cursor.getString(NAME_COLUMN); + } + + private class FolderListItem extends LinearLayout { + private TextView mName; + + public FolderListItem(Context context) { + super(context); + inflate(context, R.layout.folder_list_item, this); + mName = (TextView) findViewById(R.id.tv_folder_name); + } + + public void bind(String name) { + mName.setText(name); + } + } + +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java b/src/test01/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java new file mode 100644 index 0000000..96a9ff8 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java @@ -0,0 +1,873 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.app.Activity; +import android.app.AlarmManager; +import android.app.AlertDialog; +import android.app.PendingIntent; +import android.app.SearchManager; +import android.appwidget.AppWidgetManager; +import android.content.ContentUris; +import android.content.Context; +import android.content.DialogInterface; +import android.content.Intent; +import android.content.SharedPreferences; +import android.graphics.Paint; +import android.os.Bundle; +import android.preference.PreferenceManager; +import android.text.Spannable; +import android.text.SpannableString; +import android.text.TextUtils; +import android.text.format.DateUtils; +import android.text.style.BackgroundColorSpan; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuItem; +import android.view.MotionEvent; +import android.view.View; +import android.view.View.OnClickListener; +import android.view.WindowManager; +import android.widget.CheckBox; +import android.widget.CompoundButton; +import android.widget.CompoundButton.OnCheckedChangeListener; +import android.widget.EditText; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.TextView; +import android.widget.Toast; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.TextNote; +import net.micode.notes.model.WorkingNote; +import net.micode.notes.model.WorkingNote.NoteSettingChangedListener; +import net.micode.notes.tool.DataUtils; +import net.micode.notes.tool.ResourceParser; +import net.micode.notes.tool.ResourceParser.TextAppearanceResources; +import net.micode.notes.ui.DateTimePickerDialog.OnDateTimeSetListener; +import net.micode.notes.ui.NoteEditText.OnTextViewChangeListener; +import net.micode.notes.widget.NoteWidgetProvider_2x; +import net.micode.notes.widget.NoteWidgetProvider_4x; + +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + + +public class NoteEditActivity extends Activity implements OnClickListener, + NoteSettingChangedListener, OnTextViewChangeListener { + private class HeadViewHolder { + public TextView tvModified; + + public ImageView ivAlertIcon; + + public TextView tvAlertDate; + + public ImageView ibSetBgColor; + } + + private static final Map sBgSelectorBtnsMap = new HashMap(); + static { + sBgSelectorBtnsMap.put(R.id.iv_bg_yellow, ResourceParser.YELLOW); + sBgSelectorBtnsMap.put(R.id.iv_bg_red, ResourceParser.RED); + sBgSelectorBtnsMap.put(R.id.iv_bg_blue, ResourceParser.BLUE); + sBgSelectorBtnsMap.put(R.id.iv_bg_green, ResourceParser.GREEN); + sBgSelectorBtnsMap.put(R.id.iv_bg_white, ResourceParser.WHITE); + } + + private static final Map sBgSelectorSelectionMap = new HashMap(); + static { + sBgSelectorSelectionMap.put(ResourceParser.YELLOW, R.id.iv_bg_yellow_select); + sBgSelectorSelectionMap.put(ResourceParser.RED, R.id.iv_bg_red_select); + sBgSelectorSelectionMap.put(ResourceParser.BLUE, R.id.iv_bg_blue_select); + sBgSelectorSelectionMap.put(ResourceParser.GREEN, R.id.iv_bg_green_select); + sBgSelectorSelectionMap.put(ResourceParser.WHITE, R.id.iv_bg_white_select); + } + + private static final Map sFontSizeBtnsMap = new HashMap(); + static { + sFontSizeBtnsMap.put(R.id.ll_font_large, ResourceParser.TEXT_LARGE); + sFontSizeBtnsMap.put(R.id.ll_font_small, ResourceParser.TEXT_SMALL); + sFontSizeBtnsMap.put(R.id.ll_font_normal, ResourceParser.TEXT_MEDIUM); + sFontSizeBtnsMap.put(R.id.ll_font_super, ResourceParser.TEXT_SUPER); + } + + private static final Map sFontSelectorSelectionMap = new HashMap(); + static { + sFontSelectorSelectionMap.put(ResourceParser.TEXT_LARGE, R.id.iv_large_select); + sFontSelectorSelectionMap.put(ResourceParser.TEXT_SMALL, R.id.iv_small_select); + sFontSelectorSelectionMap.put(ResourceParser.TEXT_MEDIUM, R.id.iv_medium_select); + sFontSelectorSelectionMap.put(ResourceParser.TEXT_SUPER, R.id.iv_super_select); + } + + private static final String TAG = "NoteEditActivity"; + + private HeadViewHolder mNoteHeaderHolder; + + private View mHeadViewPanel; + + private View mNoteBgColorSelector; + + private View mFontSizeSelector; + + private EditText mNoteEditor; + + private View mNoteEditorPanel; + + private WorkingNote mWorkingNote; + + private SharedPreferences mSharedPrefs; + private int mFontSizeId; + + private static final String PREFERENCE_FONT_SIZE = "pref_font_size"; + + private static final int SHORTCUT_ICON_TITLE_MAX_LEN = 10; + + public static final String TAG_CHECKED = String.valueOf('\u221A'); + public static final String TAG_UNCHECKED = String.valueOf('\u25A1'); + + private LinearLayout mEditTextList; + + private String mUserQuery; + private Pattern mPattern; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + this.setContentView(R.layout.note_edit); + + if (savedInstanceState == null && !initActivityState(getIntent())) { + finish(); + return; + } + initResources(); + } + + /** + * Current activity may be killed when the memory is low. Once it is killed, for another time + * user load this activity, we should restore the former state + */ + @Override + protected void onRestoreInstanceState(Bundle savedInstanceState) { + super.onRestoreInstanceState(savedInstanceState); + if (savedInstanceState != null && savedInstanceState.containsKey(Intent.EXTRA_UID)) { + Intent intent = new Intent(Intent.ACTION_VIEW); + intent.putExtra(Intent.EXTRA_UID, savedInstanceState.getLong(Intent.EXTRA_UID)); + if (!initActivityState(intent)) { + finish(); + return; + } + Log.d(TAG, "Restoring from killed activity"); + } + } + + private boolean initActivityState(Intent intent) { + /** + * If the user specified the {@link Intent#ACTION_VIEW} but not provided with id, + * then jump to the NotesListActivity + */ + mWorkingNote = null; + if (TextUtils.equals(Intent.ACTION_VIEW, intent.getAction())) { + long noteId = intent.getLongExtra(Intent.EXTRA_UID, 0); + mUserQuery = ""; + + /** + * Starting from the searched result + */ + if (intent.hasExtra(SearchManager.EXTRA_DATA_KEY)) { + noteId = Long.parseLong(intent.getStringExtra(SearchManager.EXTRA_DATA_KEY)); + mUserQuery = intent.getStringExtra(SearchManager.USER_QUERY); + } + + if (!DataUtils.visibleInNoteDatabase(getContentResolver(), noteId, Notes.TYPE_NOTE)) { + Intent jump = new Intent(this, NotesListActivity.class); + startActivity(jump); + showToast(R.string.error_note_not_exist); + finish(); + return false; + } else { + mWorkingNote = WorkingNote.load(this, noteId); + if (mWorkingNote == null) { + Log.e(TAG, "load note failed with note id" + noteId); + finish(); + return false; + } + } + getWindow().setSoftInputMode( + WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN + | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); + } else if(TextUtils.equals(Intent.ACTION_INSERT_OR_EDIT, intent.getAction())) { + // New note + long folderId = intent.getLongExtra(Notes.INTENT_EXTRA_FOLDER_ID, 0); + int widgetId = intent.getIntExtra(Notes.INTENT_EXTRA_WIDGET_ID, + AppWidgetManager.INVALID_APPWIDGET_ID); + int widgetType = intent.getIntExtra(Notes.INTENT_EXTRA_WIDGET_TYPE, + Notes.TYPE_WIDGET_INVALIDE); + int bgResId = intent.getIntExtra(Notes.INTENT_EXTRA_BACKGROUND_ID, + ResourceParser.getDefaultBgId(this)); + + // Parse call-record note + String phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); + long callDate = intent.getLongExtra(Notes.INTENT_EXTRA_CALL_DATE, 0); + if (callDate != 0 && phoneNumber != null) { + if (TextUtils.isEmpty(phoneNumber)) { + Log.w(TAG, "The call record number is null"); + } + long noteId = 0; + if ((noteId = DataUtils.getNoteIdByPhoneNumberAndCallDate(getContentResolver(), + phoneNumber, callDate)) > 0) { + mWorkingNote = WorkingNote.load(this, noteId); + if (mWorkingNote == null) { + Log.e(TAG, "load call note failed with note id" + noteId); + finish(); + return false; + } + } else { + mWorkingNote = WorkingNote.createEmptyNote(this, folderId, widgetId, + widgetType, bgResId); + mWorkingNote.convertToCallNote(phoneNumber, callDate); + } + } else { + mWorkingNote = WorkingNote.createEmptyNote(this, folderId, widgetId, widgetType, + bgResId); + } + + getWindow().setSoftInputMode( + WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE + | WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE); + } else { + Log.e(TAG, "Intent not specified action, should not support"); + finish(); + return false; + } + mWorkingNote.setOnSettingStatusChangedListener(this); + return true; + } + + @Override + protected void onResume() { + super.onResume(); + initNoteScreen(); + } + + private void initNoteScreen() { + mNoteEditor.setTextAppearance(this, TextAppearanceResources + .getTexAppearanceResource(mFontSizeId)); + if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { + switchToListMode(mWorkingNote.getContent()); + } else { + mNoteEditor.setText(getHighlightQueryResult(mWorkingNote.getContent(), mUserQuery)); + mNoteEditor.setSelection(mNoteEditor.getText().length()); + } + for (Integer id : sBgSelectorSelectionMap.keySet()) { + findViewById(sBgSelectorSelectionMap.get(id)).setVisibility(View.GONE); + } + mHeadViewPanel.setBackgroundResource(mWorkingNote.getTitleBgResId()); + mNoteEditorPanel.setBackgroundResource(mWorkingNote.getBgColorResId()); + + mNoteHeaderHolder.tvModified.setText(DateUtils.formatDateTime(this, + mWorkingNote.getModifiedDate(), DateUtils.FORMAT_SHOW_DATE + | DateUtils.FORMAT_NUMERIC_DATE | DateUtils.FORMAT_SHOW_TIME + | DateUtils.FORMAT_SHOW_YEAR)); + + /** + * TODO: Add the menu for setting alert. Currently disable it because the DateTimePicker + * is not ready + */ + showAlertHeader(); + } + + private void showAlertHeader() { + if (mWorkingNote.hasClockAlert()) { + long time = System.currentTimeMillis(); + if (time > mWorkingNote.getAlertDate()) { + mNoteHeaderHolder.tvAlertDate.setText(R.string.note_alert_expired); + } else { + mNoteHeaderHolder.tvAlertDate.setText(DateUtils.getRelativeTimeSpanString( + mWorkingNote.getAlertDate(), time, DateUtils.MINUTE_IN_MILLIS)); + } + mNoteHeaderHolder.tvAlertDate.setVisibility(View.VISIBLE); + mNoteHeaderHolder.ivAlertIcon.setVisibility(View.VISIBLE); + } else { + mNoteHeaderHolder.tvAlertDate.setVisibility(View.GONE); + mNoteHeaderHolder.ivAlertIcon.setVisibility(View.GONE); + }; + } + + @Override + protected void onNewIntent(Intent intent) { + super.onNewIntent(intent); + initActivityState(intent); + } + + @Override + protected void onSaveInstanceState(Bundle outState) { + super.onSaveInstanceState(outState); + /** + * For new note without note id, we should firstly save it to + * generate a id. If the editing note is not worth saving, there + * is no id which is equivalent to create new note + */ + if (!mWorkingNote.existInDatabase()) { + saveNote(); + } + outState.putLong(Intent.EXTRA_UID, mWorkingNote.getNoteId()); + Log.d(TAG, "Save working note id: " + mWorkingNote.getNoteId() + " onSaveInstanceState"); + } + + @Override + public boolean dispatchTouchEvent(MotionEvent ev) { + if (mNoteBgColorSelector.getVisibility() == View.VISIBLE + && !inRangeOfView(mNoteBgColorSelector, ev)) { + mNoteBgColorSelector.setVisibility(View.GONE); + return true; + } + + if (mFontSizeSelector.getVisibility() == View.VISIBLE + && !inRangeOfView(mFontSizeSelector, ev)) { + mFontSizeSelector.setVisibility(View.GONE); + return true; + } + return super.dispatchTouchEvent(ev); + } + + private boolean inRangeOfView(View view, MotionEvent ev) { + int []location = new int[2]; + view.getLocationOnScreen(location); + int x = location[0]; + int y = location[1]; + if (ev.getX() < x + || ev.getX() > (x + view.getWidth()) + || ev.getY() < y + || ev.getY() > (y + view.getHeight())) { + return false; + } + return true; + } + + private void initResources() { + mHeadViewPanel = findViewById(R.id.note_title); + mNoteHeaderHolder = new HeadViewHolder(); + mNoteHeaderHolder.tvModified = (TextView) findViewById(R.id.tv_modified_date); + mNoteHeaderHolder.ivAlertIcon = (ImageView) findViewById(R.id.iv_alert_icon); + mNoteHeaderHolder.tvAlertDate = (TextView) findViewById(R.id.tv_alert_date); + mNoteHeaderHolder.ibSetBgColor = (ImageView) findViewById(R.id.btn_set_bg_color); + mNoteHeaderHolder.ibSetBgColor.setOnClickListener(this); + mNoteEditor = (EditText) findViewById(R.id.note_edit_view); + mNoteEditorPanel = findViewById(R.id.sv_note_edit); + mNoteBgColorSelector = findViewById(R.id.note_bg_color_selector); + for (int id : sBgSelectorBtnsMap.keySet()) { + ImageView iv = (ImageView) findViewById(id); + iv.setOnClickListener(this); + } + + mFontSizeSelector = findViewById(R.id.font_size_selector); + for (int id : sFontSizeBtnsMap.keySet()) { + View view = findViewById(id); + view.setOnClickListener(this); + }; + mSharedPrefs = PreferenceManager.getDefaultSharedPreferences(this); + mFontSizeId = mSharedPrefs.getInt(PREFERENCE_FONT_SIZE, ResourceParser.BG_DEFAULT_FONT_SIZE); + /** + * HACKME: Fix bug of store the resource id in shared preference. + * The id may larger than the length of resources, in this case, + * return the {@link ResourceParser#BG_DEFAULT_FONT_SIZE} + */ + if(mFontSizeId >= TextAppearanceResources.getResourcesSize()) { + mFontSizeId = ResourceParser.BG_DEFAULT_FONT_SIZE; + } + mEditTextList = (LinearLayout) findViewById(R.id.note_edit_list); + } + + @Override + protected void onPause() { + super.onPause(); + if(saveNote()) { + Log.d(TAG, "Note data was saved with length:" + mWorkingNote.getContent().length()); + } + clearSettingState(); + } + + private void updateWidget() { + Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_UPDATE); + if (mWorkingNote.getWidgetType() == Notes.TYPE_WIDGET_2X) { + intent.setClass(this, NoteWidgetProvider_2x.class); + } else if (mWorkingNote.getWidgetType() == Notes.TYPE_WIDGET_4X) { + intent.setClass(this, NoteWidgetProvider_4x.class); + } else { + Log.e(TAG, "Unspported widget type"); + return; + } + + intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, new int[] { + mWorkingNote.getWidgetId() + }); + + sendBroadcast(intent); + setResult(RESULT_OK, intent); + } + + public void onClick(View v) { + int id = v.getId(); + if (id == R.id.btn_set_bg_color) { + mNoteBgColorSelector.setVisibility(View.VISIBLE); + findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility( + - View.VISIBLE); + } else if (sBgSelectorBtnsMap.containsKey(id)) { + findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility( + View.GONE); + mWorkingNote.setBgColorId(sBgSelectorBtnsMap.get(id)); + mNoteBgColorSelector.setVisibility(View.GONE); + } else if (sFontSizeBtnsMap.containsKey(id)) { + findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.GONE); + mFontSizeId = sFontSizeBtnsMap.get(id); + mSharedPrefs.edit().putInt(PREFERENCE_FONT_SIZE, mFontSizeId).commit(); + findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.VISIBLE); + if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { + getWorkingText(); + switchToListMode(mWorkingNote.getContent()); + } else { + mNoteEditor.setTextAppearance(this, + TextAppearanceResources.getTexAppearanceResource(mFontSizeId)); + } + mFontSizeSelector.setVisibility(View.GONE); + } + } + + @Override + public void onBackPressed() { + if(clearSettingState()) { + return; + } + + saveNote(); + super.onBackPressed(); + } + + private boolean clearSettingState() { + if (mNoteBgColorSelector.getVisibility() == View.VISIBLE) { + mNoteBgColorSelector.setVisibility(View.GONE); + return true; + } else if (mFontSizeSelector.getVisibility() == View.VISIBLE) { + mFontSizeSelector.setVisibility(View.GONE); + return true; + } + return false; + } + + public void onBackgroundColorChanged() { + findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility( + View.VISIBLE); + mNoteEditorPanel.setBackgroundResource(mWorkingNote.getBgColorResId()); + mHeadViewPanel.setBackgroundResource(mWorkingNote.getTitleBgResId()); + } + + @Override + public boolean onPrepareOptionsMenu(Menu menu) { + if (isFinishing()) { + return true; + } + clearSettingState(); + menu.clear(); + if (mWorkingNote.getFolderId() == Notes.ID_CALL_RECORD_FOLDER) { + getMenuInflater().inflate(R.menu.call_note_edit, menu); + } else { + getMenuInflater().inflate(R.menu.note_edit, menu); + } + if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { + menu.findItem(R.id.menu_list_mode).setTitle(R.string.menu_normal_mode); + } else { + menu.findItem(R.id.menu_list_mode).setTitle(R.string.menu_list_mode); + } + if (mWorkingNote.hasClockAlert()) { + menu.findItem(R.id.menu_alert).setVisible(false); + } else { + menu.findItem(R.id.menu_delete_remind).setVisible(false); + } + return true; + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case R.id.menu_new_note: + createNewNote(); + break; + case R.id.menu_delete: + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle(getString(R.string.alert_title_delete)); + builder.setIcon(android.R.drawable.ic_dialog_alert); + builder.setMessage(getString(R.string.alert_message_delete_note)); + builder.setPositiveButton(android.R.string.ok, + new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + deleteCurrentNote(); + finish(); + } + }); + builder.setNegativeButton(android.R.string.cancel, null); + builder.show(); + break; + case R.id.menu_font_size: + mFontSizeSelector.setVisibility(View.VISIBLE); + findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.VISIBLE); + break; + case R.id.menu_list_mode: + mWorkingNote.setCheckListMode(mWorkingNote.getCheckListMode() == 0 ? + TextNote.MODE_CHECK_LIST : 0); + break; + case R.id.menu_share: + getWorkingText(); + sendTo(this, mWorkingNote.getContent()); + break; + case R.id.menu_send_to_desktop: + sendToDesktop(); + break; + case R.id.menu_alert: + setReminder(); + break; + case R.id.menu_delete_remind: + mWorkingNote.setAlertDate(0, false); + break; + default: + break; + } + return true; + } + + private void setReminder() { + DateTimePickerDialog d = new DateTimePickerDialog(this, System.currentTimeMillis()); + d.setOnDateTimeSetListener(new OnDateTimeSetListener() { + public void OnDateTimeSet(AlertDialog dialog, long date) { + mWorkingNote.setAlertDate(date , true); + } + }); + d.show(); + } + + /** + * Share note to apps that support {@link Intent#ACTION_SEND} action + * and {@text/plain} type + */ + private void sendTo(Context context, String info) { + Intent intent = new Intent(Intent.ACTION_SEND); + intent.putExtra(Intent.EXTRA_TEXT, info); + intent.setType("text/plain"); + context.startActivity(intent); + } + + private void createNewNote() { + // Firstly, save current editing notes + saveNote(); + + // For safety, start a new NoteEditActivity + finish(); + Intent intent = new Intent(this, NoteEditActivity.class); + intent.setAction(Intent.ACTION_INSERT_OR_EDIT); + intent.putExtra(Notes.INTENT_EXTRA_FOLDER_ID, mWorkingNote.getFolderId()); + startActivity(intent); + } + + private void deleteCurrentNote() { + if (mWorkingNote.existInDatabase()) { + HashSet ids = new HashSet(); + long id = mWorkingNote.getNoteId(); + if (id != Notes.ID_ROOT_FOLDER) { + ids.add(id); + } else { + Log.d(TAG, "Wrong note id, should not happen"); + } + if (!isSyncMode()) { + if (!DataUtils.batchDeleteNotes(getContentResolver(), ids)) { + Log.e(TAG, "Delete Note error"); + } + } else { + if (!DataUtils.batchMoveToFolder(getContentResolver(), ids, Notes.ID_TRASH_FOLER)) { + Log.e(TAG, "Move notes to trash folder error, should not happens"); + } + } + } + mWorkingNote.markDeleted(true); + } + + private boolean isSyncMode() { + return NotesPreferenceActivity.getSyncAccountName(this).trim().length() > 0; + } + + public void onClockAlertChanged(long date, boolean set) { + /** + * User could set clock to an unsaved note, so before setting the + * alert clock, we should save the note first + */ + if (!mWorkingNote.existInDatabase()) { + saveNote(); + } + if (mWorkingNote.getNoteId() > 0) { + Intent intent = new Intent(this, AlarmReceiver.class); + intent.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, mWorkingNote.getNoteId())); + PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0); + AlarmManager alarmManager = ((AlarmManager) getSystemService(ALARM_SERVICE)); + showAlertHeader(); + if(!set) { + alarmManager.cancel(pendingIntent); + } else { + alarmManager.set(AlarmManager.RTC_WAKEUP, date, pendingIntent); + } + } else { + /** + * There is the condition that user has input nothing (the note is + * not worthy saving), we have no note id, remind the user that he + * should input something + */ + Log.e(TAG, "Clock alert setting error"); + showToast(R.string.error_note_empty_for_clock); + } + } + + public void onWidgetChanged() { + updateWidget(); + } + + public void onEditTextDelete(int index, String text) { + int childCount = mEditTextList.getChildCount(); + if (childCount == 1) { + return; + } + + for (int i = index + 1; i < childCount; i++) { + ((NoteEditText) mEditTextList.getChildAt(i).findViewById(R.id.et_edit_text)) + .setIndex(i - 1); + } + + mEditTextList.removeViewAt(index); + NoteEditText edit = null; + if(index == 0) { + edit = (NoteEditText) mEditTextList.getChildAt(0).findViewById( + R.id.et_edit_text); + } else { + edit = (NoteEditText) mEditTextList.getChildAt(index - 1).findViewById( + R.id.et_edit_text); + } + int length = edit.length(); + edit.append(text); + edit.requestFocus(); + edit.setSelection(length); + } + + public void onEditTextEnter(int index, String text) { + /** + * Should not happen, check for debug + */ + if(index > mEditTextList.getChildCount()) { + Log.e(TAG, "Index out of mEditTextList boundrary, should not happen"); + } + + View view = getListItem(text, index); + mEditTextList.addView(view, index); + NoteEditText edit = (NoteEditText) view.findViewById(R.id.et_edit_text); + edit.requestFocus(); + edit.setSelection(0); + for (int i = index + 1; i < mEditTextList.getChildCount(); i++) { + ((NoteEditText) mEditTextList.getChildAt(i).findViewById(R.id.et_edit_text)) + .setIndex(i); + } + } + + private void switchToListMode(String text) { + mEditTextList.removeAllViews(); + String[] items = text.split("\n"); + int index = 0; + for (String item : items) { + if(!TextUtils.isEmpty(item)) { + mEditTextList.addView(getListItem(item, index)); + index++; + } + } + mEditTextList.addView(getListItem("", index)); + mEditTextList.getChildAt(index).findViewById(R.id.et_edit_text).requestFocus(); + + mNoteEditor.setVisibility(View.GONE); + mEditTextList.setVisibility(View.VISIBLE); + } + + private Spannable getHighlightQueryResult(String fullText, String userQuery) { + SpannableString spannable = new SpannableString(fullText == null ? "" : fullText); + if (!TextUtils.isEmpty(userQuery)) { + mPattern = Pattern.compile(userQuery); + Matcher m = mPattern.matcher(fullText); + int start = 0; + while (m.find(start)) { + spannable.setSpan( + new BackgroundColorSpan(this.getResources().getColor( + R.color.user_query_highlight)), m.start(), m.end(), + Spannable.SPAN_INCLUSIVE_EXCLUSIVE); + start = m.end(); + } + } + return spannable; + } + + private View getListItem(String item, int index) { + View view = LayoutInflater.from(this).inflate(R.layout.note_edit_list_item, null); + final NoteEditText edit = (NoteEditText) view.findViewById(R.id.et_edit_text); + edit.setTextAppearance(this, TextAppearanceResources.getTexAppearanceResource(mFontSizeId)); + CheckBox cb = ((CheckBox) view.findViewById(R.id.cb_edit_item)); + cb.setOnCheckedChangeListener(new OnCheckedChangeListener() { + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + if (isChecked) { + edit.setPaintFlags(edit.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); + } else { + edit.setPaintFlags(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); + } + } + }); + + if (item.startsWith(TAG_CHECKED)) { + cb.setChecked(true); + edit.setPaintFlags(edit.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); + item = item.substring(TAG_CHECKED.length(), item.length()).trim(); + } else if (item.startsWith(TAG_UNCHECKED)) { + cb.setChecked(false); + edit.setPaintFlags(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); + item = item.substring(TAG_UNCHECKED.length(), item.length()).trim(); + } + + edit.setOnTextViewChangeListener(this); + edit.setIndex(index); + edit.setText(getHighlightQueryResult(item, mUserQuery)); + return view; + } + + public void onTextChange(int index, boolean hasText) { + if (index >= mEditTextList.getChildCount()) { + Log.e(TAG, "Wrong index, should not happen"); + return; + } + if(hasText) { + mEditTextList.getChildAt(index).findViewById(R.id.cb_edit_item).setVisibility(View.VISIBLE); + } else { + mEditTextList.getChildAt(index).findViewById(R.id.cb_edit_item).setVisibility(View.GONE); + } + } + + public void onCheckListModeChanged(int oldMode, int newMode) { + if (newMode == TextNote.MODE_CHECK_LIST) { + switchToListMode(mNoteEditor.getText().toString()); + } else { + if (!getWorkingText()) { + mWorkingNote.setWorkingText(mWorkingNote.getContent().replace(TAG_UNCHECKED + " ", + "")); + } + mNoteEditor.setText(getHighlightQueryResult(mWorkingNote.getContent(), mUserQuery)); + mEditTextList.setVisibility(View.GONE); + mNoteEditor.setVisibility(View.VISIBLE); + } + } + + private boolean getWorkingText() { + boolean hasChecked = false; + if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { + StringBuilder sb = new StringBuilder(); + for (int i = 0; i < mEditTextList.getChildCount(); i++) { + View view = mEditTextList.getChildAt(i); + NoteEditText edit = (NoteEditText) view.findViewById(R.id.et_edit_text); + if (!TextUtils.isEmpty(edit.getText())) { + if (((CheckBox) view.findViewById(R.id.cb_edit_item)).isChecked()) { + sb.append(TAG_CHECKED).append(" ").append(edit.getText()).append("\n"); + hasChecked = true; + } else { + sb.append(TAG_UNCHECKED).append(" ").append(edit.getText()).append("\n"); + } + } + } + mWorkingNote.setWorkingText(sb.toString()); + } else { + mWorkingNote.setWorkingText(mNoteEditor.getText().toString()); + } + return hasChecked; + } + + private boolean saveNote() { + getWorkingText(); + boolean saved = mWorkingNote.saveNote(); + if (saved) { + /** + * There are two modes from List view to edit view, open one note, + * create/edit a node. Opening node requires to the original + * position in the list when back from edit view, while creating a + * new node requires to the top of the list. This code + * {@link #RESULT_OK} is used to identify the create/edit state + */ + setResult(RESULT_OK); + } + return saved; + } + + private void sendToDesktop() { + /** + * Before send message to home, we should make sure that current + * editing note is exists in databases. So, for new note, firstly + * save it + */ + if (!mWorkingNote.existInDatabase()) { + saveNote(); + } + + if (mWorkingNote.getNoteId() > 0) { + Intent sender = new Intent(); + Intent shortcutIntent = new Intent(this, NoteEditActivity.class); + shortcutIntent.setAction(Intent.ACTION_VIEW); + shortcutIntent.putExtra(Intent.EXTRA_UID, mWorkingNote.getNoteId()); + sender.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); + sender.putExtra(Intent.EXTRA_SHORTCUT_NAME, + makeShortcutIconTitle(mWorkingNote.getContent())); + sender.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, + Intent.ShortcutIconResource.fromContext(this, R.drawable.icon_app)); + sender.putExtra("duplicate", true); + sender.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); + showToast(R.string.info_note_enter_desktop); + sendBroadcast(sender); + } else { + /** + * There is the condition that user has input nothing (the note is + * not worthy saving), we have no note id, remind the user that he + * should input something + */ + Log.e(TAG, "Send to desktop error"); + showToast(R.string.error_note_empty_for_send_to_desktop); + } + } + + private String makeShortcutIconTitle(String content) { + content = content.replace(TAG_CHECKED, ""); + content = content.replace(TAG_UNCHECKED, ""); + return content.length() > SHORTCUT_ICON_TITLE_MAX_LEN ? content.substring(0, + SHORTCUT_ICON_TITLE_MAX_LEN) : content; + } + + private void showToast(int resId) { + showToast(resId, Toast.LENGTH_SHORT); + } + + private void showToast(int resId, int duration) { + Toast.makeText(this, resId, duration).show(); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/NoteEditText.java b/src/test01/app/src/main/java/net/micode/notes/ui/NoteEditText.java new file mode 100644 index 0000000..2afe2a8 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/NoteEditText.java @@ -0,0 +1,217 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.content.Context; +import android.graphics.Rect; +import android.text.Layout; +import android.text.Selection; +import android.text.Spanned; +import android.text.TextUtils; +import android.text.style.URLSpan; +import android.util.AttributeSet; +import android.util.Log; +import android.view.ContextMenu; +import android.view.KeyEvent; +import android.view.MenuItem; +import android.view.MenuItem.OnMenuItemClickListener; +import android.view.MotionEvent; +import android.widget.EditText; + +import net.micode.notes.R; + +import java.util.HashMap; +import java.util.Map; + +public class NoteEditText extends EditText { + private static final String TAG = "NoteEditText"; + private int mIndex; + private int mSelectionStartBeforeDelete; + + private static final String SCHEME_TEL = "tel:" ; + private static final String SCHEME_HTTP = "http:" ; + private static final String SCHEME_EMAIL = "mailto:" ; + + private static final Map sSchemaActionResMap = new HashMap(); + static { + sSchemaActionResMap.put(SCHEME_TEL, R.string.note_link_tel); + sSchemaActionResMap.put(SCHEME_HTTP, R.string.note_link_web); + sSchemaActionResMap.put(SCHEME_EMAIL, R.string.note_link_email); + } + + /** + * Call by the {@link NoteEditActivity} to delete or add edit text + */ + public interface OnTextViewChangeListener { + /** + * Delete current edit text when {@link KeyEvent#KEYCODE_DEL} happens + * and the text is null + */ + void onEditTextDelete(int index, String text); + + /** + * Add edit text after current edit text when {@link KeyEvent#KEYCODE_ENTER} + * happen + */ + void onEditTextEnter(int index, String text); + + /** + * Hide or show item option when text change + */ + void onTextChange(int index, boolean hasText); + } + + private OnTextViewChangeListener mOnTextViewChangeListener; + + public NoteEditText(Context context) { + super(context, null); + mIndex = 0; + } + + public void setIndex(int index) { + mIndex = index; + } + + public void setOnTextViewChangeListener(OnTextViewChangeListener listener) { + mOnTextViewChangeListener = listener; + } + + public NoteEditText(Context context, AttributeSet attrs) { + super(context, attrs, android.R.attr.editTextStyle); + } + + public NoteEditText(Context context, AttributeSet attrs, int defStyle) { + super(context, attrs, defStyle); + // TODO Auto-generated constructor stub + } + + @Override + public boolean onTouchEvent(MotionEvent event) { + switch (event.getAction()) { + case MotionEvent.ACTION_DOWN: + + int x = (int) event.getX(); + int y = (int) event.getY(); + x -= getTotalPaddingLeft(); + y -= getTotalPaddingTop(); + x += getScrollX(); + y += getScrollY(); + + Layout layout = getLayout(); + int line = layout.getLineForVertical(y); + int off = layout.getOffsetForHorizontal(line, x); + Selection.setSelection(getText(), off); + break; + } + + return super.onTouchEvent(event); + } + + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) { + switch (keyCode) { + case KeyEvent.KEYCODE_ENTER: + if (mOnTextViewChangeListener != null) { + return false; + } + break; + case KeyEvent.KEYCODE_DEL: + mSelectionStartBeforeDelete = getSelectionStart(); + break; + default: + break; + } + return super.onKeyDown(keyCode, event); + } + + @Override + public boolean onKeyUp(int keyCode, KeyEvent event) { + switch(keyCode) { + case KeyEvent.KEYCODE_DEL: + if (mOnTextViewChangeListener != null) { + if (0 == mSelectionStartBeforeDelete && mIndex != 0) { + mOnTextViewChangeListener.onEditTextDelete(mIndex, getText().toString()); + return true; + } + } else { + Log.d(TAG, "OnTextViewChangeListener was not seted"); + } + break; + case KeyEvent.KEYCODE_ENTER: + if (mOnTextViewChangeListener != null) { + int selectionStart = getSelectionStart(); + String text = getText().subSequence(selectionStart, length()).toString(); + setText(getText().subSequence(0, selectionStart)); + mOnTextViewChangeListener.onEditTextEnter(mIndex + 1, text); + } else { + Log.d(TAG, "OnTextViewChangeListener was not seted"); + } + break; + default: + break; + } + return super.onKeyUp(keyCode, event); + } + + @Override + protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) { + if (mOnTextViewChangeListener != null) { + if (!focused && TextUtils.isEmpty(getText())) { + mOnTextViewChangeListener.onTextChange(mIndex, false); + } else { + mOnTextViewChangeListener.onTextChange(mIndex, true); + } + } + super.onFocusChanged(focused, direction, previouslyFocusedRect); + } + + @Override + protected void onCreateContextMenu(ContextMenu menu) { + if (getText() instanceof Spanned) { + int selStart = getSelectionStart(); + int selEnd = getSelectionEnd(); + + int min = Math.min(selStart, selEnd); + int max = Math.max(selStart, selEnd); + + final URLSpan[] urls = ((Spanned) getText()).getSpans(min, max, URLSpan.class); + if (urls.length == 1) { + int defaultResId = 0; + for(String schema: sSchemaActionResMap.keySet()) { + if(urls[0].getURL().indexOf(schema) >= 0) { + defaultResId = sSchemaActionResMap.get(schema); + break; + } + } + + if (defaultResId == 0) { + defaultResId = R.string.note_link_other; + } + + menu.add(0, 0, 0, defaultResId).setOnMenuItemClickListener( + new OnMenuItemClickListener() { + public boolean onMenuItemClick(MenuItem item) { + // goto a new intent + urls[0].onClick(NoteEditText.this); + return true; + } + }); + } + } + super.onCreateContextMenu(menu); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/NoteItemData.java b/src/test01/app/src/main/java/net/micode/notes/ui/NoteItemData.java new file mode 100644 index 0000000..0f5a878 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/NoteItemData.java @@ -0,0 +1,224 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.content.Context; +import android.database.Cursor; +import android.text.TextUtils; + +import net.micode.notes.data.Contact; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.tool.DataUtils; + + +public class NoteItemData { + static final String [] PROJECTION = new String [] { + NoteColumns.ID, + NoteColumns.ALERTED_DATE, + NoteColumns.BG_COLOR_ID, + NoteColumns.CREATED_DATE, + NoteColumns.HAS_ATTACHMENT, + NoteColumns.MODIFIED_DATE, + NoteColumns.NOTES_COUNT, + NoteColumns.PARENT_ID, + NoteColumns.SNIPPET, + NoteColumns.TYPE, + NoteColumns.WIDGET_ID, + NoteColumns.WIDGET_TYPE, + }; + + private static final int ID_COLUMN = 0; + private static final int ALERTED_DATE_COLUMN = 1; + private static final int BG_COLOR_ID_COLUMN = 2; + private static final int CREATED_DATE_COLUMN = 3; + private static final int HAS_ATTACHMENT_COLUMN = 4; + private static final int MODIFIED_DATE_COLUMN = 5; + private static final int NOTES_COUNT_COLUMN = 6; + private static final int PARENT_ID_COLUMN = 7; + private static final int SNIPPET_COLUMN = 8; + private static final int TYPE_COLUMN = 9; + private static final int WIDGET_ID_COLUMN = 10; + private static final int WIDGET_TYPE_COLUMN = 11; + + private long mId; + private long mAlertDate; + private int mBgColorId; + private long mCreatedDate; + private boolean mHasAttachment; + private long mModifiedDate; + private int mNotesCount; + private long mParentId; + private String mSnippet; + private int mType; + private int mWidgetId; + private int mWidgetType; + private String mName; + private String mPhoneNumber; + + private boolean mIsLastItem; + private boolean mIsFirstItem; + private boolean mIsOnlyOneItem; + private boolean mIsOneNoteFollowingFolder; + private boolean mIsMultiNotesFollowingFolder; + + public NoteItemData(Context context, Cursor cursor) { + mId = cursor.getLong(ID_COLUMN); + mAlertDate = cursor.getLong(ALERTED_DATE_COLUMN); + mBgColorId = cursor.getInt(BG_COLOR_ID_COLUMN); + mCreatedDate = cursor.getLong(CREATED_DATE_COLUMN); + mHasAttachment = (cursor.getInt(HAS_ATTACHMENT_COLUMN) > 0) ? true : false; + mModifiedDate = cursor.getLong(MODIFIED_DATE_COLUMN); + mNotesCount = cursor.getInt(NOTES_COUNT_COLUMN); + mParentId = cursor.getLong(PARENT_ID_COLUMN); + mSnippet = cursor.getString(SNIPPET_COLUMN); + mSnippet = mSnippet.replace(NoteEditActivity.TAG_CHECKED, "").replace( + NoteEditActivity.TAG_UNCHECKED, ""); + mType = cursor.getInt(TYPE_COLUMN); + mWidgetId = cursor.getInt(WIDGET_ID_COLUMN); + mWidgetType = cursor.getInt(WIDGET_TYPE_COLUMN); + + mPhoneNumber = ""; + if (mParentId == Notes.ID_CALL_RECORD_FOLDER) { + mPhoneNumber = DataUtils.getCallNumberByNoteId(context.getContentResolver(), mId); + if (!TextUtils.isEmpty(mPhoneNumber)) { + mName = Contact.getContact(context, mPhoneNumber); + if (mName == null) { + mName = mPhoneNumber; + } + } + } + + if (mName == null) { + mName = ""; + } + checkPostion(cursor); + } + + private void checkPostion(Cursor cursor) { + mIsLastItem = cursor.isLast() ? true : false; + mIsFirstItem = cursor.isFirst() ? true : false; + mIsOnlyOneItem = (cursor.getCount() == 1); + mIsMultiNotesFollowingFolder = false; + mIsOneNoteFollowingFolder = false; + + if (mType == Notes.TYPE_NOTE && !mIsFirstItem) { + int position = cursor.getPosition(); + if (cursor.moveToPrevious()) { + if (cursor.getInt(TYPE_COLUMN) == Notes.TYPE_FOLDER + || cursor.getInt(TYPE_COLUMN) == Notes.TYPE_SYSTEM) { + if (cursor.getCount() > (position + 1)) { + mIsMultiNotesFollowingFolder = true; + } else { + mIsOneNoteFollowingFolder = true; + } + } + if (!cursor.moveToNext()) { + throw new IllegalStateException("cursor move to previous but can't move back"); + } + } + } + } + + public boolean isOneFollowingFolder() { + return mIsOneNoteFollowingFolder; + } + + public boolean isMultiFollowingFolder() { + return mIsMultiNotesFollowingFolder; + } + + public boolean isLast() { + return mIsLastItem; + } + + public String getCallName() { + return mName; + } + + public boolean isFirst() { + return mIsFirstItem; + } + + public boolean isSingle() { + return mIsOnlyOneItem; + } + + public long getId() { + return mId; + } + + public long getAlertDate() { + return mAlertDate; + } + + public long getCreatedDate() { + return mCreatedDate; + } + + public boolean hasAttachment() { + return mHasAttachment; + } + + public long getModifiedDate() { + return mModifiedDate; + } + + public int getBgColorId() { + return mBgColorId; + } + + public long getParentId() { + return mParentId; + } + + public int getNotesCount() { + return mNotesCount; + } + + public long getFolderId () { + return mParentId; + } + + public int getType() { + return mType; + } + + public int getWidgetType() { + return mWidgetType; + } + + public int getWidgetId() { + return mWidgetId; + } + + public String getSnippet() { + return mSnippet; + } + + public boolean hasAlert() { + return (mAlertDate > 0); + } + + public boolean isCallRecord() { + return (mParentId == Notes.ID_CALL_RECORD_FOLDER && !TextUtils.isEmpty(mPhoneNumber)); + } + + public static int getNoteType(Cursor cursor) { + return cursor.getInt(TYPE_COLUMN); + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/NotesListActivity.java b/src/test01/app/src/main/java/net/micode/notes/ui/NotesListActivity.java new file mode 100644 index 0000000..e843aec --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/NotesListActivity.java @@ -0,0 +1,954 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.app.Activity; +import android.app.AlertDialog; +import android.app.Dialog; +import android.appwidget.AppWidgetManager; +import android.content.AsyncQueryHandler; +import android.content.ContentResolver; +import android.content.ContentValues; +import android.content.Context; +import android.content.DialogInterface; +import android.content.Intent; +import android.content.SharedPreferences; +import android.database.Cursor; +import android.os.AsyncTask; +import android.os.Bundle; +import android.preference.PreferenceManager; +import android.text.Editable; +import android.text.TextUtils; +import android.text.TextWatcher; +import android.util.Log; +import android.view.ActionMode; +import android.view.ContextMenu; +import android.view.ContextMenu.ContextMenuInfo; +import android.view.Display; +import android.view.HapticFeedbackConstants; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuItem; +import android.view.MenuItem.OnMenuItemClickListener; +import android.view.MotionEvent; +import android.view.View; +import android.view.View.OnClickListener; +import android.view.View.OnCreateContextMenuListener; +import android.view.View.OnTouchListener; +import android.view.inputmethod.InputMethodManager; +import android.widget.AdapterView; +import android.widget.AdapterView.OnItemClickListener; +import android.widget.AdapterView.OnItemLongClickListener; +import android.widget.Button; +import android.widget.EditText; +import android.widget.ListView; +import android.widget.PopupMenu; +import android.widget.TextView; +import android.widget.Toast; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.gtask.remote.GTaskSyncService; +import net.micode.notes.model.WorkingNote; +import net.micode.notes.tool.BackupUtils; +import net.micode.notes.tool.DataUtils; +import net.micode.notes.tool.ResourceParser; +import net.micode.notes.ui.NotesListAdapter.AppWidgetAttribute; +import net.micode.notes.widget.NoteWidgetProvider_2x; +import net.micode.notes.widget.NoteWidgetProvider_4x; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.HashSet; + +public class NotesListActivity extends Activity implements OnClickListener, OnItemLongClickListener { + private static final int FOLDER_NOTE_LIST_QUERY_TOKEN = 0; + + private static final int FOLDER_LIST_QUERY_TOKEN = 1; + + private static final int MENU_FOLDER_DELETE = 0; + + private static final int MENU_FOLDER_VIEW = 1; + + private static final int MENU_FOLDER_CHANGE_NAME = 2; + + private static final String PREFERENCE_ADD_INTRODUCTION = "net.micode.notes.introduction"; + + private enum ListEditState { + NOTE_LIST, SUB_FOLDER, CALL_RECORD_FOLDER + }; + + private ListEditState mState; + + private BackgroundQueryHandler mBackgroundQueryHandler; + + private NotesListAdapter mNotesListAdapter; + + private ListView mNotesListView; + + private Button mAddNewNote; + + private boolean mDispatch; + + private int mOriginY; + + private int mDispatchY; + + private TextView mTitleBar; + + private long mCurrentFolderId; + + private ContentResolver mContentResolver; + + private ModeCallback mModeCallBack; + + private static final String TAG = "NotesListActivity"; + + public static final int NOTES_LISTVIEW_SCROLL_RATE = 30; + + private NoteItemData mFocusNoteDataItem; + + private static final String NORMAL_SELECTION = NoteColumns.PARENT_ID + "=?"; + + private static final String ROOT_FOLDER_SELECTION = "(" + NoteColumns.TYPE + "<>" + + Notes.TYPE_SYSTEM + " AND " + NoteColumns.PARENT_ID + "=?)" + " OR (" + + NoteColumns.ID + "=" + Notes.ID_CALL_RECORD_FOLDER + " AND " + + NoteColumns.NOTES_COUNT + ">0)"; + + private final static int REQUEST_CODE_OPEN_NODE = 102; + private final static int REQUEST_CODE_NEW_NODE = 103; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.note_list); + initResources(); + + /** + * Insert an introduction when user firstly use this application + */ + setAppInfoFromRawRes(); + } + + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + if (resultCode == RESULT_OK + && (requestCode == REQUEST_CODE_OPEN_NODE || requestCode == REQUEST_CODE_NEW_NODE)) { + mNotesListAdapter.changeCursor(null); + } else { + super.onActivityResult(requestCode, resultCode, data); + } + } + + private void setAppInfoFromRawRes() { + SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this); + if (!sp.getBoolean(PREFERENCE_ADD_INTRODUCTION, false)) { + StringBuilder sb = new StringBuilder(); + InputStream in = null; + try { + in = getResources().openRawResource(R.raw.introduction); + if (in != null) { + InputStreamReader isr = new InputStreamReader(in); + BufferedReader br = new BufferedReader(isr); + char [] buf = new char[1024]; + int len = 0; + while ((len = br.read(buf)) > 0) { + sb.append(buf, 0, len); + } + } else { + Log.e(TAG, "Read introduction file error"); + return; + } + } catch (IOException e) { + e.printStackTrace(); + return; + } finally { + if(in != null) { + try { + in.close(); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + } + + WorkingNote note = WorkingNote.createEmptyNote(this, Notes.ID_ROOT_FOLDER, + AppWidgetManager.INVALID_APPWIDGET_ID, Notes.TYPE_WIDGET_INVALIDE, + ResourceParser.RED); + note.setWorkingText(sb.toString()); + if (note.saveNote()) { + sp.edit().putBoolean(PREFERENCE_ADD_INTRODUCTION, true).commit(); + } else { + Log.e(TAG, "Save introduction note error"); + return; + } + } + } + + @Override + protected void onStart() { + super.onStart(); + startAsyncNotesListQuery(); + } + + private void initResources() { + mContentResolver = this.getContentResolver(); + mBackgroundQueryHandler = new BackgroundQueryHandler(this.getContentResolver()); + mCurrentFolderId = Notes.ID_ROOT_FOLDER; + mNotesListView = (ListView) findViewById(R.id.notes_list); + mNotesListView.addFooterView(LayoutInflater.from(this).inflate(R.layout.note_list_footer, null), + null, false); + mNotesListView.setOnItemClickListener(new OnListItemClickListener()); + mNotesListView.setOnItemLongClickListener(this); + mNotesListAdapter = new NotesListAdapter(this); + mNotesListView.setAdapter(mNotesListAdapter); + mAddNewNote = (Button) findViewById(R.id.btn_new_note); + mAddNewNote.setOnClickListener(this); + mAddNewNote.setOnTouchListener(new NewNoteOnTouchListener()); + mDispatch = false; + mDispatchY = 0; + mOriginY = 0; + mTitleBar = (TextView) findViewById(R.id.tv_title_bar); + mState = ListEditState.NOTE_LIST; + mModeCallBack = new ModeCallback(); + } + + private class ModeCallback implements ListView.MultiChoiceModeListener, OnMenuItemClickListener { + private DropdownMenu mDropDownMenu; + private ActionMode mActionMode; + private MenuItem mMoveMenu; + + public boolean onCreateActionMode(ActionMode mode, Menu menu) { + getMenuInflater().inflate(R.menu.note_list_options, menu); + menu.findItem(R.id.delete).setOnMenuItemClickListener(this); + mMoveMenu = menu.findItem(R.id.move); + if (mFocusNoteDataItem.getParentId() == Notes.ID_CALL_RECORD_FOLDER + || DataUtils.getUserFolderCount(mContentResolver) == 0) { + mMoveMenu.setVisible(false); + } else { + mMoveMenu.setVisible(true); + mMoveMenu.setOnMenuItemClickListener(this); + } + mActionMode = mode; + mNotesListAdapter.setChoiceMode(true); + mNotesListView.setLongClickable(false); + mAddNewNote.setVisibility(View.GONE); + + View customView = LayoutInflater.from(NotesListActivity.this).inflate( + R.layout.note_list_dropdown_menu, null); + mode.setCustomView(customView); + mDropDownMenu = new DropdownMenu(NotesListActivity.this, + (Button) customView.findViewById(R.id.selection_menu), + R.menu.note_list_dropdown); + mDropDownMenu.setOnDropdownMenuItemClickListener(new PopupMenu.OnMenuItemClickListener(){ + public boolean onMenuItemClick(MenuItem item) { + mNotesListAdapter.selectAll(!mNotesListAdapter.isAllSelected()); + updateMenu(); + return true; + } + + }); + return true; + } + + private void updateMenu() { + int selectedCount = mNotesListAdapter.getSelectedCount(); + // Update dropdown menu + String format = getResources().getString(R.string.menu_select_title, selectedCount); + mDropDownMenu.setTitle(format); + MenuItem item = mDropDownMenu.findItem(R.id.action_select_all); + if (item != null) { + if (mNotesListAdapter.isAllSelected()) { + item.setChecked(true); + item.setTitle(R.string.menu_deselect_all); + } else { + item.setChecked(false); + item.setTitle(R.string.menu_select_all); + } + } + } + + public boolean onPrepareActionMode(ActionMode mode, Menu menu) { + // TODO Auto-generated method stub + return false; + } + + public boolean onActionItemClicked(ActionMode mode, MenuItem item) { + // TODO Auto-generated method stub + return false; + } + + public void onDestroyActionMode(ActionMode mode) { + mNotesListAdapter.setChoiceMode(false); + mNotesListView.setLongClickable(true); + mAddNewNote.setVisibility(View.VISIBLE); + } + + public void finishActionMode() { + mActionMode.finish(); + } + + public void onItemCheckedStateChanged(ActionMode mode, int position, long id, + boolean checked) { + mNotesListAdapter.setCheckedItem(position, checked); + updateMenu(); + } + + public boolean onMenuItemClick(MenuItem item) { + if (mNotesListAdapter.getSelectedCount() == 0) { + Toast.makeText(NotesListActivity.this, getString(R.string.menu_select_none), + Toast.LENGTH_SHORT).show(); + return true; + } + + switch (item.getItemId()) { + case R.id.delete: + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(getString(R.string.alert_title_delete)); + builder.setIcon(android.R.drawable.ic_dialog_alert); + builder.setMessage(getString(R.string.alert_message_delete_notes, + mNotesListAdapter.getSelectedCount())); + builder.setPositiveButton(android.R.string.ok, + new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, + int which) { + batchDelete(); + } + }); + builder.setNegativeButton(android.R.string.cancel, null); + builder.show(); + break; + case R.id.move: + startQueryDestinationFolders(); + break; + default: + return false; + } + return true; + } + } + + private class NewNoteOnTouchListener implements OnTouchListener { + + public boolean onTouch(View v, MotionEvent event) { + switch (event.getAction()) { + case MotionEvent.ACTION_DOWN: { + Display display = getWindowManager().getDefaultDisplay(); + int screenHeight = display.getHeight(); + int newNoteViewHeight = mAddNewNote.getHeight(); + int start = screenHeight - newNoteViewHeight; + int eventY = start + (int) event.getY(); + /** + * Minus TitleBar's height + */ + if (mState == ListEditState.SUB_FOLDER) { + eventY -= mTitleBar.getHeight(); + start -= mTitleBar.getHeight(); + } + /** + * HACKME:When click the transparent part of "New Note" button, dispatch + * the event to the list view behind this button. The transparent part of + * "New Note" button could be expressed by formula y=-0.12x+94(Unit:pixel) + * and the line top of the button. The coordinate based on left of the "New + * Note" button. The 94 represents maximum height of the transparent part. + * Notice that, if the background of the button changes, the formula should + * also change. This is very bad, just for the UI designer's strong requirement. + */ + if (event.getY() < (event.getX() * (-0.12) + 94)) { + View view = mNotesListView.getChildAt(mNotesListView.getChildCount() - 1 + - mNotesListView.getFooterViewsCount()); + if (view != null && view.getBottom() > start + && (view.getTop() < (start + 94))) { + mOriginY = (int) event.getY(); + mDispatchY = eventY; + event.setLocation(event.getX(), mDispatchY); + mDispatch = true; + return mNotesListView.dispatchTouchEvent(event); + } + } + break; + } + case MotionEvent.ACTION_MOVE: { + if (mDispatch) { + mDispatchY += (int) event.getY() - mOriginY; + event.setLocation(event.getX(), mDispatchY); + return mNotesListView.dispatchTouchEvent(event); + } + break; + } + default: { + if (mDispatch) { + event.setLocation(event.getX(), mDispatchY); + mDispatch = false; + return mNotesListView.dispatchTouchEvent(event); + } + break; + } + } + return false; + } + + }; + + private void startAsyncNotesListQuery() { + String selection = (mCurrentFolderId == Notes.ID_ROOT_FOLDER) ? ROOT_FOLDER_SELECTION + : NORMAL_SELECTION; + mBackgroundQueryHandler.startQuery(FOLDER_NOTE_LIST_QUERY_TOKEN, null, + Notes.CONTENT_NOTE_URI, NoteItemData.PROJECTION, selection, new String[] { + String.valueOf(mCurrentFolderId) + }, NoteColumns.TYPE + " DESC," + NoteColumns.MODIFIED_DATE + " DESC"); + } + + private final class BackgroundQueryHandler extends AsyncQueryHandler { + public BackgroundQueryHandler(ContentResolver contentResolver) { + super(contentResolver); + } + + @Override + protected void onQueryComplete(int token, Object cookie, Cursor cursor) { + switch (token) { + case FOLDER_NOTE_LIST_QUERY_TOKEN: + mNotesListAdapter.changeCursor(cursor); + break; + case FOLDER_LIST_QUERY_TOKEN: + if (cursor != null && cursor.getCount() > 0) { + showFolderListMenu(cursor); + } else { + Log.e(TAG, "Query folder failed"); + } + break; + default: + return; + } + } + } + + private void showFolderListMenu(Cursor cursor) { + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(R.string.menu_title_select_folder); + final FoldersListAdapter adapter = new FoldersListAdapter(this, cursor); + builder.setAdapter(adapter, new DialogInterface.OnClickListener() { + + public void onClick(DialogInterface dialog, int which) { + DataUtils.batchMoveToFolder(mContentResolver, + mNotesListAdapter.getSelectedItemIds(), adapter.getItemId(which)); + Toast.makeText( + NotesListActivity.this, + getString(R.string.format_move_notes_to_folder, + mNotesListAdapter.getSelectedCount(), + adapter.getFolderName(NotesListActivity.this, which)), + Toast.LENGTH_SHORT).show(); + mModeCallBack.finishActionMode(); + } + }); + builder.show(); + } + + private void createNewNote() { + Intent intent = new Intent(this, NoteEditActivity.class); + intent.setAction(Intent.ACTION_INSERT_OR_EDIT); + intent.putExtra(Notes.INTENT_EXTRA_FOLDER_ID, mCurrentFolderId); + this.startActivityForResult(intent, REQUEST_CODE_NEW_NODE); + } + + private void batchDelete() { + new AsyncTask>() { + protected HashSet doInBackground(Void... unused) { + HashSet widgets = mNotesListAdapter.getSelectedWidget(); + if (!isSyncMode()) { + // if not synced, delete notes directly + if (DataUtils.batchDeleteNotes(mContentResolver, mNotesListAdapter + .getSelectedItemIds())) { + } else { + Log.e(TAG, "Delete notes error, should not happens"); + } + } else { + // in sync mode, we'll move the deleted note into the trash + // folder + if (!DataUtils.batchMoveToFolder(mContentResolver, mNotesListAdapter + .getSelectedItemIds(), Notes.ID_TRASH_FOLER)) { + Log.e(TAG, "Move notes to trash folder error, should not happens"); + } + } + return widgets; + } + + @Override + protected void onPostExecute(HashSet widgets) { + if (widgets != null) { + for (AppWidgetAttribute widget : widgets) { + if (widget.widgetId != AppWidgetManager.INVALID_APPWIDGET_ID + && widget.widgetType != Notes.TYPE_WIDGET_INVALIDE) { + updateWidget(widget.widgetId, widget.widgetType); + } + } + } + mModeCallBack.finishActionMode(); + } + }.execute(); + } + + private void deleteFolder(long folderId) { + if (folderId == Notes.ID_ROOT_FOLDER) { + Log.e(TAG, "Wrong folder id, should not happen " + folderId); + return; + } + + HashSet ids = new HashSet(); + ids.add(folderId); + HashSet widgets = DataUtils.getFolderNoteWidget(mContentResolver, + folderId); + if (!isSyncMode()) { + // if not synced, delete folder directly + DataUtils.batchDeleteNotes(mContentResolver, ids); + } else { + // in sync mode, we'll move the deleted folder into the trash folder + DataUtils.batchMoveToFolder(mContentResolver, ids, Notes.ID_TRASH_FOLER); + } + if (widgets != null) { + for (AppWidgetAttribute widget : widgets) { + if (widget.widgetId != AppWidgetManager.INVALID_APPWIDGET_ID + && widget.widgetType != Notes.TYPE_WIDGET_INVALIDE) { + updateWidget(widget.widgetId, widget.widgetType); + } + } + } + } + + private void openNode(NoteItemData data) { + Intent intent = new Intent(this, NoteEditActivity.class); + intent.setAction(Intent.ACTION_VIEW); + intent.putExtra(Intent.EXTRA_UID, data.getId()); + this.startActivityForResult(intent, REQUEST_CODE_OPEN_NODE); + } + + private void openFolder(NoteItemData data) { + mCurrentFolderId = data.getId(); + startAsyncNotesListQuery(); + if (data.getId() == Notes.ID_CALL_RECORD_FOLDER) { + mState = ListEditState.CALL_RECORD_FOLDER; + mAddNewNote.setVisibility(View.GONE); + } else { + mState = ListEditState.SUB_FOLDER; + } + if (data.getId() == Notes.ID_CALL_RECORD_FOLDER) { + mTitleBar.setText(R.string.call_record_folder_name); + } else { + mTitleBar.setText(data.getSnippet()); + } + mTitleBar.setVisibility(View.VISIBLE); + } + + public void onClick(View v) { + switch (v.getId()) { + case R.id.btn_new_note: + createNewNote(); + break; + default: + break; + } + } + + private void showSoftInput() { + InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + if (inputMethodManager != null) { + inputMethodManager.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0); + } + } + + private void hideSoftInput(View view) { + InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0); + } + + private void showCreateOrModifyFolderDialog(final boolean create) { + final AlertDialog.Builder builder = new AlertDialog.Builder(this); + View view = LayoutInflater.from(this).inflate(R.layout.dialog_edit_text, null); + final EditText etName = (EditText) view.findViewById(R.id.et_foler_name); + showSoftInput(); + if (!create) { + if (mFocusNoteDataItem != null) { + etName.setText(mFocusNoteDataItem.getSnippet()); + builder.setTitle(getString(R.string.menu_folder_change_name)); + } else { + Log.e(TAG, "The long click data item is null"); + return; + } + } else { + etName.setText(""); + builder.setTitle(this.getString(R.string.menu_create_folder)); + } + + builder.setPositiveButton(android.R.string.ok, null); + builder.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + hideSoftInput(etName); + } + }); + + final Dialog dialog = builder.setView(view).show(); + final Button positive = (Button)dialog.findViewById(android.R.id.button1); + positive.setOnClickListener(new OnClickListener() { + public void onClick(View v) { + hideSoftInput(etName); + String name = etName.getText().toString(); + if (DataUtils.checkVisibleFolderName(mContentResolver, name)) { + Toast.makeText(NotesListActivity.this, getString(R.string.folder_exist, name), + Toast.LENGTH_LONG).show(); + etName.setSelection(0, etName.length()); + return; + } + if (!create) { + if (!TextUtils.isEmpty(name)) { + ContentValues values = new ContentValues(); + values.put(NoteColumns.SNIPPET, name); + values.put(NoteColumns.TYPE, Notes.TYPE_FOLDER); + values.put(NoteColumns.LOCAL_MODIFIED, 1); + mContentResolver.update(Notes.CONTENT_NOTE_URI, values, NoteColumns.ID + + "=?", new String[] { + String.valueOf(mFocusNoteDataItem.getId()) + }); + } + } else if (!TextUtils.isEmpty(name)) { + ContentValues values = new ContentValues(); + values.put(NoteColumns.SNIPPET, name); + values.put(NoteColumns.TYPE, Notes.TYPE_FOLDER); + mContentResolver.insert(Notes.CONTENT_NOTE_URI, values); + } + dialog.dismiss(); + } + }); + + if (TextUtils.isEmpty(etName.getText())) { + positive.setEnabled(false); + } + /** + * When the name edit text is null, disable the positive button + */ + etName.addTextChangedListener(new TextWatcher() { + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + // TODO Auto-generated method stub + + } + + public void onTextChanged(CharSequence s, int start, int before, int count) { + if (TextUtils.isEmpty(etName.getText())) { + positive.setEnabled(false); + } else { + positive.setEnabled(true); + } + } + + public void afterTextChanged(Editable s) { + // TODO Auto-generated method stub + + } + }); + } + + @Override + public void onBackPressed() { + switch (mState) { + case SUB_FOLDER: + mCurrentFolderId = Notes.ID_ROOT_FOLDER; + mState = ListEditState.NOTE_LIST; + startAsyncNotesListQuery(); + mTitleBar.setVisibility(View.GONE); + break; + case CALL_RECORD_FOLDER: + mCurrentFolderId = Notes.ID_ROOT_FOLDER; + mState = ListEditState.NOTE_LIST; + mAddNewNote.setVisibility(View.VISIBLE); + mTitleBar.setVisibility(View.GONE); + startAsyncNotesListQuery(); + break; + case NOTE_LIST: + super.onBackPressed(); + break; + default: + break; + } + } + + private void updateWidget(int appWidgetId, int appWidgetType) { + Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_UPDATE); + if (appWidgetType == Notes.TYPE_WIDGET_2X) { + intent.setClass(this, NoteWidgetProvider_2x.class); + } else if (appWidgetType == Notes.TYPE_WIDGET_4X) { + intent.setClass(this, NoteWidgetProvider_4x.class); + } else { + Log.e(TAG, "Unspported widget type"); + return; + } + + intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, new int[] { + appWidgetId + }); + + sendBroadcast(intent); + setResult(RESULT_OK, intent); + } + + private final OnCreateContextMenuListener mFolderOnCreateContextMenuListener = new OnCreateContextMenuListener() { + public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { + if (mFocusNoteDataItem != null) { + menu.setHeaderTitle(mFocusNoteDataItem.getSnippet()); + menu.add(0, MENU_FOLDER_VIEW, 0, R.string.menu_folder_view); + menu.add(0, MENU_FOLDER_DELETE, 0, R.string.menu_folder_delete); + menu.add(0, MENU_FOLDER_CHANGE_NAME, 0, R.string.menu_folder_change_name); + } + } + }; + + @Override + public void onContextMenuClosed(Menu menu) { + if (mNotesListView != null) { + mNotesListView.setOnCreateContextMenuListener(null); + } + super.onContextMenuClosed(menu); + } + + @Override + public boolean onContextItemSelected(MenuItem item) { + if (mFocusNoteDataItem == null) { + Log.e(TAG, "The long click data item is null"); + return false; + } + switch (item.getItemId()) { + case MENU_FOLDER_VIEW: + openFolder(mFocusNoteDataItem); + break; + case MENU_FOLDER_DELETE: + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle(getString(R.string.alert_title_delete)); + builder.setIcon(android.R.drawable.ic_dialog_alert); + builder.setMessage(getString(R.string.alert_message_delete_folder)); + builder.setPositiveButton(android.R.string.ok, + new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + deleteFolder(mFocusNoteDataItem.getId()); + } + }); + builder.setNegativeButton(android.R.string.cancel, null); + builder.show(); + break; + case MENU_FOLDER_CHANGE_NAME: + showCreateOrModifyFolderDialog(false); + break; + default: + break; + } + + return true; + } + + @Override + public boolean onPrepareOptionsMenu(Menu menu) { + menu.clear(); + if (mState == ListEditState.NOTE_LIST) { + getMenuInflater().inflate(R.menu.note_list, menu); + // set sync or sync_cancel + menu.findItem(R.id.menu_sync).setTitle( + GTaskSyncService.isSyncing() ? R.string.menu_sync_cancel : R.string.menu_sync); + } else if (mState == ListEditState.SUB_FOLDER) { + getMenuInflater().inflate(R.menu.sub_folder, menu); + } else if (mState == ListEditState.CALL_RECORD_FOLDER) { + getMenuInflater().inflate(R.menu.call_record_folder, menu); + } else { + Log.e(TAG, "Wrong state:" + mState); + } + return true; + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case R.id.menu_new_folder: { + showCreateOrModifyFolderDialog(true); + break; + } + case R.id.menu_export_text: { + exportNoteToText(); + break; + } + case R.id.menu_sync: { + if (isSyncMode()) { + if (TextUtils.equals(item.getTitle(), getString(R.string.menu_sync))) { + GTaskSyncService.startSync(this); + } else { + GTaskSyncService.cancelSync(this); + } + } else { + startPreferenceActivity(); + } + break; + } + case R.id.menu_setting: { + startPreferenceActivity(); + break; + } + case R.id.menu_new_note: { + createNewNote(); + break; + } + case R.id.menu_search: + onSearchRequested(); + break; + default: + break; + } + return true; + } + + @Override + public boolean onSearchRequested() { + startSearch(null, false, null /* appData */, false); + return true; + } + + private void exportNoteToText() { + final BackupUtils backup = BackupUtils.getInstance(NotesListActivity.this); + new AsyncTask() { + + @Override + protected Integer doInBackground(Void... unused) { + return backup.exportToText(); + } + + @Override + protected void onPostExecute(Integer result) { + if (result == BackupUtils.STATE_SD_CARD_UNMOUONTED) { + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(NotesListActivity.this + .getString(R.string.failed_sdcard_export)); + builder.setMessage(NotesListActivity.this + .getString(R.string.error_sdcard_unmounted)); + builder.setPositiveButton(android.R.string.ok, null); + builder.show(); + } else if (result == BackupUtils.STATE_SUCCESS) { + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(NotesListActivity.this + .getString(R.string.success_sdcard_export)); + builder.setMessage(NotesListActivity.this.getString( + R.string.format_exported_file_location, backup + .getExportedTextFileName(), backup.getExportedTextFileDir())); + builder.setPositiveButton(android.R.string.ok, null); + builder.show(); + } else if (result == BackupUtils.STATE_SYSTEM_ERROR) { + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(NotesListActivity.this + .getString(R.string.failed_sdcard_export)); + builder.setMessage(NotesListActivity.this + .getString(R.string.error_sdcard_export)); + builder.setPositiveButton(android.R.string.ok, null); + builder.show(); + } + } + + }.execute(); + } + + private boolean isSyncMode() { + return NotesPreferenceActivity.getSyncAccountName(this).trim().length() > 0; + } + + private void startPreferenceActivity() { + Activity from = getParent() != null ? getParent() : this; + Intent intent = new Intent(from, NotesPreferenceActivity.class); + from.startActivityIfNeeded(intent, -1); + } + + private class OnListItemClickListener implements OnItemClickListener { + + public void onItemClick(AdapterView parent, View view, int position, long id) { + if (view instanceof NotesListItem) { + NoteItemData item = ((NotesListItem) view).getItemData(); + if (mNotesListAdapter.isInChoiceMode()) { + if (item.getType() == Notes.TYPE_NOTE) { + position = position - mNotesListView.getHeaderViewsCount(); + mModeCallBack.onItemCheckedStateChanged(null, position, id, + !mNotesListAdapter.isSelectedItem(position)); + } + return; + } + + switch (mState) { + case NOTE_LIST: + if (item.getType() == Notes.TYPE_FOLDER + || item.getType() == Notes.TYPE_SYSTEM) { + openFolder(item); + } else if (item.getType() == Notes.TYPE_NOTE) { + openNode(item); + } else { + Log.e(TAG, "Wrong note type in NOTE_LIST"); + } + break; + case SUB_FOLDER: + case CALL_RECORD_FOLDER: + if (item.getType() == Notes.TYPE_NOTE) { + openNode(item); + } else { + Log.e(TAG, "Wrong note type in SUB_FOLDER"); + } + break; + default: + break; + } + } + } + + } + + private void startQueryDestinationFolders() { + String selection = NoteColumns.TYPE + "=? AND " + NoteColumns.PARENT_ID + "<>? AND " + NoteColumns.ID + "<>?"; + selection = (mState == ListEditState.NOTE_LIST) ? selection: + "(" + selection + ") OR (" + NoteColumns.ID + "=" + Notes.ID_ROOT_FOLDER + ")"; + + mBackgroundQueryHandler.startQuery(FOLDER_LIST_QUERY_TOKEN, + null, + Notes.CONTENT_NOTE_URI, + FoldersListAdapter.PROJECTION, + selection, + new String[] { + String.valueOf(Notes.TYPE_FOLDER), + String.valueOf(Notes.ID_TRASH_FOLER), + String.valueOf(mCurrentFolderId) + }, + NoteColumns.MODIFIED_DATE + " DESC"); + } + + public boolean onItemLongClick(AdapterView parent, View view, int position, long id) { + if (view instanceof NotesListItem) { + mFocusNoteDataItem = ((NotesListItem) view).getItemData(); + if (mFocusNoteDataItem.getType() == Notes.TYPE_NOTE && !mNotesListAdapter.isInChoiceMode()) { + if (mNotesListView.startActionMode(mModeCallBack) != null) { + mModeCallBack.onItemCheckedStateChanged(null, position, id, true); + mNotesListView.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS); + } else { + Log.e(TAG, "startActionMode fails"); + } + } else if (mFocusNoteDataItem.getType() == Notes.TYPE_FOLDER) { + mNotesListView.setOnCreateContextMenuListener(mFolderOnCreateContextMenuListener); + } + } + return false; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/NotesListAdapter.java b/src/test01/app/src/main/java/net/micode/notes/ui/NotesListAdapter.java new file mode 100644 index 0000000..51c9cb9 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/NotesListAdapter.java @@ -0,0 +1,184 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.content.Context; +import android.database.Cursor; +import android.util.Log; +import android.view.View; +import android.view.ViewGroup; +import android.widget.CursorAdapter; + +import net.micode.notes.data.Notes; + +import java.util.Collection; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; + + +public class NotesListAdapter extends CursorAdapter { + private static final String TAG = "NotesListAdapter"; + private Context mContext; + private HashMap mSelectedIndex; + private int mNotesCount; + private boolean mChoiceMode; + + public static class AppWidgetAttribute { + public int widgetId; + public int widgetType; + }; + + public NotesListAdapter(Context context) { + super(context, null); + mSelectedIndex = new HashMap(); + mContext = context; + mNotesCount = 0; + } + + @Override + public View newView(Context context, Cursor cursor, ViewGroup parent) { + return new NotesListItem(context); + } + + @Override + public void bindView(View view, Context context, Cursor cursor) { + if (view instanceof NotesListItem) { + NoteItemData itemData = new NoteItemData(context, cursor); + ((NotesListItem) view).bind(context, itemData, mChoiceMode, + isSelectedItem(cursor.getPosition())); + } + } + + public void setCheckedItem(final int position, final boolean checked) { + mSelectedIndex.put(position, checked); + notifyDataSetChanged(); + } + + public boolean isInChoiceMode() { + return mChoiceMode; + } + + public void setChoiceMode(boolean mode) { + mSelectedIndex.clear(); + mChoiceMode = mode; + } + + public void selectAll(boolean checked) { + Cursor cursor = getCursor(); + for (int i = 0; i < getCount(); i++) { + if (cursor.moveToPosition(i)) { + if (NoteItemData.getNoteType(cursor) == Notes.TYPE_NOTE) { + setCheckedItem(i, checked); + } + } + } + } + + public HashSet getSelectedItemIds() { + HashSet itemSet = new HashSet(); + for (Integer position : mSelectedIndex.keySet()) { + if (mSelectedIndex.get(position) == true) { + Long id = getItemId(position); + if (id == Notes.ID_ROOT_FOLDER) { + Log.d(TAG, "Wrong item id, should not happen"); + } else { + itemSet.add(id); + } + } + } + + return itemSet; + } + + public HashSet getSelectedWidget() { + HashSet itemSet = new HashSet(); + for (Integer position : mSelectedIndex.keySet()) { + if (mSelectedIndex.get(position) == true) { + Cursor c = (Cursor) getItem(position); + if (c != null) { + AppWidgetAttribute widget = new AppWidgetAttribute(); + NoteItemData item = new NoteItemData(mContext, c); + widget.widgetId = item.getWidgetId(); + widget.widgetType = item.getWidgetType(); + itemSet.add(widget); + /** + * Don't close cursor here, only the adapter could close it + */ + } else { + Log.e(TAG, "Invalid cursor"); + return null; + } + } + } + return itemSet; + } + + public int getSelectedCount() { + Collection values = mSelectedIndex.values(); + if (null == values) { + return 0; + } + Iterator iter = values.iterator(); + int count = 0; + while (iter.hasNext()) { + if (true == iter.next()) { + count++; + } + } + return count; + } + + public boolean isAllSelected() { + int checkedCount = getSelectedCount(); + return (checkedCount != 0 && checkedCount == mNotesCount); + } + + public boolean isSelectedItem(final int position) { + if (null == mSelectedIndex.get(position)) { + return false; + } + return mSelectedIndex.get(position); + } + + @Override + protected void onContentChanged() { + super.onContentChanged(); + calcNotesCount(); + } + + @Override + public void changeCursor(Cursor cursor) { + super.changeCursor(cursor); + calcNotesCount(); + } + + private void calcNotesCount() { + mNotesCount = 0; + for (int i = 0; i < getCount(); i++) { + Cursor c = (Cursor) getItem(i); + if (c != null) { + if (NoteItemData.getNoteType(c) == Notes.TYPE_NOTE) { + mNotesCount++; + } + } else { + Log.e(TAG, "Invalid cursor"); + return; + } + } + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/NotesListItem.java b/src/test01/app/src/main/java/net/micode/notes/ui/NotesListItem.java new file mode 100644 index 0000000..1221e80 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/NotesListItem.java @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.content.Context; +import android.text.format.DateUtils; +import android.view.View; +import android.widget.CheckBox; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.TextView; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.tool.DataUtils; +import net.micode.notes.tool.ResourceParser.NoteItemBgResources; + + +public class NotesListItem extends LinearLayout { + private ImageView mAlert; + private TextView mTitle; + private TextView mTime; + private TextView mCallName; + private NoteItemData mItemData; + private CheckBox mCheckBox; + + public NotesListItem(Context context) { + super(context); + inflate(context, R.layout.note_item, this); + mAlert = (ImageView) findViewById(R.id.iv_alert_icon); + mTitle = (TextView) findViewById(R.id.tv_title); + mTime = (TextView) findViewById(R.id.tv_time); + mCallName = (TextView) findViewById(R.id.tv_name); + mCheckBox = (CheckBox) findViewById(android.R.id.checkbox); + } + + public void bind(Context context, NoteItemData data, boolean choiceMode, boolean checked) { + if (choiceMode && data.getType() == Notes.TYPE_NOTE) { + mCheckBox.setVisibility(View.VISIBLE); + mCheckBox.setChecked(checked); + } else { + mCheckBox.setVisibility(View.GONE); + } + + mItemData = data; + if (data.getId() == Notes.ID_CALL_RECORD_FOLDER) { + mCallName.setVisibility(View.GONE); + mAlert.setVisibility(View.VISIBLE); + mTitle.setTextAppearance(context, R.style.TextAppearancePrimaryItem); + mTitle.setText(context.getString(R.string.call_record_folder_name) + + context.getString(R.string.format_folder_files_count, data.getNotesCount())); + mAlert.setImageResource(R.drawable.call_record); + } else if (data.getParentId() == Notes.ID_CALL_RECORD_FOLDER) { + mCallName.setVisibility(View.VISIBLE); + mCallName.setText(data.getCallName()); + mTitle.setTextAppearance(context,R.style.TextAppearanceSecondaryItem); + mTitle.setText(DataUtils.getFormattedSnippet(data.getSnippet())); + if (data.hasAlert()) { + mAlert.setImageResource(R.drawable.clock); + mAlert.setVisibility(View.VISIBLE); + } else { + mAlert.setVisibility(View.GONE); + } + } else { + mCallName.setVisibility(View.GONE); + mTitle.setTextAppearance(context, R.style.TextAppearancePrimaryItem); + + if (data.getType() == Notes.TYPE_FOLDER) { + mTitle.setText(data.getSnippet() + + context.getString(R.string.format_folder_files_count, + data.getNotesCount())); + mAlert.setVisibility(View.GONE); + } else { + mTitle.setText(DataUtils.getFormattedSnippet(data.getSnippet())); + if (data.hasAlert()) { + mAlert.setImageResource(R.drawable.clock); + mAlert.setVisibility(View.VISIBLE); + } else { + mAlert.setVisibility(View.GONE); + } + } + } + mTime.setText(DateUtils.getRelativeTimeSpanString(data.getModifiedDate())); + + setBackground(data); + } + + private void setBackground(NoteItemData data) { + int id = data.getBgColorId(); + if (data.getType() == Notes.TYPE_NOTE) { + if (data.isSingle() || data.isOneFollowingFolder()) { + setBackgroundResource(NoteItemBgResources.getNoteBgSingleRes(id)); + } else if (data.isLast()) { + setBackgroundResource(NoteItemBgResources.getNoteBgLastRes(id)); + } else if (data.isFirst() || data.isMultiFollowingFolder()) { + setBackgroundResource(NoteItemBgResources.getNoteBgFirstRes(id)); + } else { + setBackgroundResource(NoteItemBgResources.getNoteBgNormalRes(id)); + } + } else { + setBackgroundResource(NoteItemBgResources.getFolderBgRes()); + } + } + + public NoteItemData getItemData() { + return mItemData; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/ui/NotesPreferenceActivity.java b/src/test01/app/src/main/java/net/micode/notes/ui/NotesPreferenceActivity.java new file mode 100644 index 0000000..07c5f7e --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/ui/NotesPreferenceActivity.java @@ -0,0 +1,388 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.ui; + +import android.accounts.Account; +import android.accounts.AccountManager; +import android.app.ActionBar; +import android.app.AlertDialog; +import android.content.BroadcastReceiver; +import android.content.ContentValues; +import android.content.Context; +import android.content.DialogInterface; +import android.content.Intent; +import android.content.IntentFilter; +import android.content.SharedPreferences; +import android.os.Bundle; +import android.preference.Preference; +import android.preference.Preference.OnPreferenceClickListener; +import android.preference.PreferenceActivity; +import android.preference.PreferenceCategory; +import android.text.TextUtils; +import android.text.format.DateFormat; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuItem; +import android.view.View; +import android.widget.Button; +import android.widget.TextView; +import android.widget.Toast; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.gtask.remote.GTaskSyncService; + + +public class NotesPreferenceActivity extends PreferenceActivity { + public static final String PREFERENCE_NAME = "notes_preferences"; + + public static final String PREFERENCE_SYNC_ACCOUNT_NAME = "pref_key_account_name"; + + public static final String PREFERENCE_LAST_SYNC_TIME = "pref_last_sync_time"; + + public static final String PREFERENCE_SET_BG_COLOR_KEY = "pref_key_bg_random_appear"; + + private static final String PREFERENCE_SYNC_ACCOUNT_KEY = "pref_sync_account_key"; + + private static final String AUTHORITIES_FILTER_KEY = "authorities"; + + private PreferenceCategory mAccountCategory; + + private GTaskReceiver mReceiver; + + private Account[] mOriAccounts; + + private boolean mHasAddedAccount; + + @Override + protected void onCreate(Bundle icicle) { + super.onCreate(icicle); + + /* using the app icon for navigation */ + getActionBar().setDisplayHomeAsUpEnabled(true); + + addPreferencesFromResource(R.xml.preferences); + mAccountCategory = (PreferenceCategory) findPreference(PREFERENCE_SYNC_ACCOUNT_KEY); + mReceiver = new GTaskReceiver(); + IntentFilter filter = new IntentFilter(); + filter.addAction(GTaskSyncService.GTASK_SERVICE_BROADCAST_NAME); + registerReceiver(mReceiver, filter); + + mOriAccounts = null; + View header = LayoutInflater.from(this).inflate(R.layout.settings_header, null); + getListView().addHeaderView(header, null, true); + } + + @Override + protected void onResume() { + super.onResume(); + + // need to set sync account automatically if user has added a new + // account + if (mHasAddedAccount) { + Account[] accounts = getGoogleAccounts(); + if (mOriAccounts != null && accounts.length > mOriAccounts.length) { + for (Account accountNew : accounts) { + boolean found = false; + for (Account accountOld : mOriAccounts) { + if (TextUtils.equals(accountOld.name, accountNew.name)) { + found = true; + break; + } + } + if (!found) { + setSyncAccount(accountNew.name); + break; + } + } + } + } + + refreshUI(); + } + + @Override + protected void onDestroy() { + if (mReceiver != null) { + unregisterReceiver(mReceiver); + } + super.onDestroy(); + } + + private void loadAccountPreference() { + mAccountCategory.removeAll(); + + Preference accountPref = new Preference(this); + final String defaultAccount = getSyncAccountName(this); + accountPref.setTitle(getString(R.string.preferences_account_title)); + accountPref.setSummary(getString(R.string.preferences_account_summary)); + accountPref.setOnPreferenceClickListener(new OnPreferenceClickListener() { + public boolean onPreferenceClick(Preference preference) { + if (!GTaskSyncService.isSyncing()) { + if (TextUtils.isEmpty(defaultAccount)) { + // the first time to set account + showSelectAccountAlertDialog(); + } else { + // if the account has already been set, we need to promp + // user about the risk + showChangeAccountConfirmAlertDialog(); + } + } else { + Toast.makeText(NotesPreferenceActivity.this, + R.string.preferences_toast_cannot_change_account, Toast.LENGTH_SHORT) + .show(); + } + return true; + } + }); + + mAccountCategory.addPreference(accountPref); + } + + private void loadSyncButton() { + Button syncButton = (Button) findViewById(R.id.preference_sync_button); + TextView lastSyncTimeView = (TextView) findViewById(R.id.prefenerece_sync_status_textview); + + // set button state + if (GTaskSyncService.isSyncing()) { + syncButton.setText(getString(R.string.preferences_button_sync_cancel)); + syncButton.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + GTaskSyncService.cancelSync(NotesPreferenceActivity.this); + } + }); + } else { + syncButton.setText(getString(R.string.preferences_button_sync_immediately)); + syncButton.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + GTaskSyncService.startSync(NotesPreferenceActivity.this); + } + }); + } + syncButton.setEnabled(!TextUtils.isEmpty(getSyncAccountName(this))); + + // set last sync time + if (GTaskSyncService.isSyncing()) { + lastSyncTimeView.setText(GTaskSyncService.getProgressString()); + lastSyncTimeView.setVisibility(View.VISIBLE); + } else { + long lastSyncTime = getLastSyncTime(this); + if (lastSyncTime != 0) { + lastSyncTimeView.setText(getString(R.string.preferences_last_sync_time, + DateFormat.format(getString(R.string.preferences_last_sync_time_format), + lastSyncTime))); + lastSyncTimeView.setVisibility(View.VISIBLE); + } else { + lastSyncTimeView.setVisibility(View.GONE); + } + } + } + + private void refreshUI() { + loadAccountPreference(); + loadSyncButton(); + } + + private void showSelectAccountAlertDialog() { + AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this); + + View titleView = LayoutInflater.from(this).inflate(R.layout.account_dialog_title, null); + TextView titleTextView = (TextView) titleView.findViewById(R.id.account_dialog_title); + titleTextView.setText(getString(R.string.preferences_dialog_select_account_title)); + TextView subtitleTextView = (TextView) titleView.findViewById(R.id.account_dialog_subtitle); + subtitleTextView.setText(getString(R.string.preferences_dialog_select_account_tips)); + + dialogBuilder.setCustomTitle(titleView); + dialogBuilder.setPositiveButton(null, null); + + Account[] accounts = getGoogleAccounts(); + String defAccount = getSyncAccountName(this); + + mOriAccounts = accounts; + mHasAddedAccount = false; + + if (accounts.length > 0) { + CharSequence[] items = new CharSequence[accounts.length]; + final CharSequence[] itemMapping = items; + int checkedItem = -1; + int index = 0; + for (Account account : accounts) { + if (TextUtils.equals(account.name, defAccount)) { + checkedItem = index; + } + items[index++] = account.name; + } + dialogBuilder.setSingleChoiceItems(items, checkedItem, + new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + setSyncAccount(itemMapping[which].toString()); + dialog.dismiss(); + refreshUI(); + } + }); + } + + View addAccountView = LayoutInflater.from(this).inflate(R.layout.add_account_text, null); + dialogBuilder.setView(addAccountView); + + final AlertDialog dialog = dialogBuilder.show(); + addAccountView.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + mHasAddedAccount = true; + Intent intent = new Intent("android.settings.ADD_ACCOUNT_SETTINGS"); + intent.putExtra(AUTHORITIES_FILTER_KEY, new String[] { + "gmail-ls" + }); + startActivityForResult(intent, -1); + dialog.dismiss(); + } + }); + } + + private void showChangeAccountConfirmAlertDialog() { + AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this); + + View titleView = LayoutInflater.from(this).inflate(R.layout.account_dialog_title, null); + TextView titleTextView = (TextView) titleView.findViewById(R.id.account_dialog_title); + titleTextView.setText(getString(R.string.preferences_dialog_change_account_title, + getSyncAccountName(this))); + TextView subtitleTextView = (TextView) titleView.findViewById(R.id.account_dialog_subtitle); + subtitleTextView.setText(getString(R.string.preferences_dialog_change_account_warn_msg)); + dialogBuilder.setCustomTitle(titleView); + + CharSequence[] menuItemArray = new CharSequence[] { + getString(R.string.preferences_menu_change_account), + getString(R.string.preferences_menu_remove_account), + getString(R.string.preferences_menu_cancel) + }; + dialogBuilder.setItems(menuItemArray, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + if (which == 0) { + showSelectAccountAlertDialog(); + } else if (which == 1) { + removeSyncAccount(); + refreshUI(); + } + } + }); + dialogBuilder.show(); + } + + private Account[] getGoogleAccounts() { + AccountManager accountManager = AccountManager.get(this); + return accountManager.getAccountsByType("com.google"); + } + + private void setSyncAccount(String account) { + if (!getSyncAccountName(this).equals(account)) { + SharedPreferences settings = getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE); + SharedPreferences.Editor editor = settings.edit(); + if (account != null) { + editor.putString(PREFERENCE_SYNC_ACCOUNT_NAME, account); + } else { + editor.putString(PREFERENCE_SYNC_ACCOUNT_NAME, ""); + } + editor.commit(); + + // clean up last sync time + setLastSyncTime(this, 0); + + // clean up local gtask related info + new Thread(new Runnable() { + public void run() { + ContentValues values = new ContentValues(); + values.put(NoteColumns.GTASK_ID, ""); + values.put(NoteColumns.SYNC_ID, 0); + getContentResolver().update(Notes.CONTENT_NOTE_URI, values, null, null); + } + }).start(); + + Toast.makeText(NotesPreferenceActivity.this, + getString(R.string.preferences_toast_success_set_accout, account), + Toast.LENGTH_SHORT).show(); + } + } + + private void removeSyncAccount() { + SharedPreferences settings = getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE); + SharedPreferences.Editor editor = settings.edit(); + if (settings.contains(PREFERENCE_SYNC_ACCOUNT_NAME)) { + editor.remove(PREFERENCE_SYNC_ACCOUNT_NAME); + } + if (settings.contains(PREFERENCE_LAST_SYNC_TIME)) { + editor.remove(PREFERENCE_LAST_SYNC_TIME); + } + editor.commit(); + + // clean up local gtask related info + new Thread(new Runnable() { + public void run() { + ContentValues values = new ContentValues(); + values.put(NoteColumns.GTASK_ID, ""); + values.put(NoteColumns.SYNC_ID, 0); + getContentResolver().update(Notes.CONTENT_NOTE_URI, values, null, null); + } + }).start(); + } + + public static String getSyncAccountName(Context context) { + SharedPreferences settings = context.getSharedPreferences(PREFERENCE_NAME, + Context.MODE_PRIVATE); + return settings.getString(PREFERENCE_SYNC_ACCOUNT_NAME, ""); + } + + public static void setLastSyncTime(Context context, long time) { + SharedPreferences settings = context.getSharedPreferences(PREFERENCE_NAME, + Context.MODE_PRIVATE); + SharedPreferences.Editor editor = settings.edit(); + editor.putLong(PREFERENCE_LAST_SYNC_TIME, time); + editor.commit(); + } + + public static long getLastSyncTime(Context context) { + SharedPreferences settings = context.getSharedPreferences(PREFERENCE_NAME, + Context.MODE_PRIVATE); + return settings.getLong(PREFERENCE_LAST_SYNC_TIME, 0); + } + + private class GTaskReceiver extends BroadcastReceiver { + + @Override + public void onReceive(Context context, Intent intent) { + refreshUI(); + if (intent.getBooleanExtra(GTaskSyncService.GTASK_SERVICE_BROADCAST_IS_SYNCING, false)) { + TextView syncStatus = (TextView) findViewById(R.id.prefenerece_sync_status_textview); + syncStatus.setText(intent + .getStringExtra(GTaskSyncService.GTASK_SERVICE_BROADCAST_PROGRESS_MSG)); + } + + } + } + + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case android.R.id.home: + Intent intent = new Intent(this, NotesListActivity.class); + intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); + startActivity(intent); + return true; + default: + return false; + } + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider.java b/src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider.java new file mode 100644 index 0000000..ec6f819 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider.java @@ -0,0 +1,132 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.widget; +import android.app.PendingIntent; +import android.appwidget.AppWidgetManager; +import android.appwidget.AppWidgetProvider; +import android.content.ContentValues; +import android.content.Context; +import android.content.Intent; +import android.database.Cursor; +import android.util.Log; +import android.widget.RemoteViews; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.tool.ResourceParser; +import net.micode.notes.ui.NoteEditActivity; +import net.micode.notes.ui.NotesListActivity; + +public abstract class NoteWidgetProvider extends AppWidgetProvider { + public static final String [] PROJECTION = new String [] { + NoteColumns.ID, + NoteColumns.BG_COLOR_ID, + NoteColumns.SNIPPET + }; + + public static final int COLUMN_ID = 0; + public static final int COLUMN_BG_COLOR_ID = 1; + public static final int COLUMN_SNIPPET = 2; + + private static final String TAG = "NoteWidgetProvider"; + + @Override + public void onDeleted(Context context, int[] appWidgetIds) { + ContentValues values = new ContentValues(); + values.put(NoteColumns.WIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID); + for (int i = 0; i < appWidgetIds.length; i++) { + context.getContentResolver().update(Notes.CONTENT_NOTE_URI, + values, + NoteColumns.WIDGET_ID + "=?", + new String[] { String.valueOf(appWidgetIds[i])}); + } + } + + private Cursor getNoteWidgetInfo(Context context, int widgetId) { + return context.getContentResolver().query(Notes.CONTENT_NOTE_URI, + PROJECTION, + NoteColumns.WIDGET_ID + "=? AND " + NoteColumns.PARENT_ID + "<>?", + new String[] { String.valueOf(widgetId), String.valueOf(Notes.ID_TRASH_FOLER) }, + null); + } + + protected void update(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { + update(context, appWidgetManager, appWidgetIds, false); + } + + private void update(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds, + boolean privacyMode) { + for (int i = 0; i < appWidgetIds.length; i++) { + if (appWidgetIds[i] != AppWidgetManager.INVALID_APPWIDGET_ID) { + int bgId = ResourceParser.getDefaultBgId(context); + String snippet = ""; + Intent intent = new Intent(context, NoteEditActivity.class); + intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); + intent.putExtra(Notes.INTENT_EXTRA_WIDGET_ID, appWidgetIds[i]); + intent.putExtra(Notes.INTENT_EXTRA_WIDGET_TYPE, getWidgetType()); + + Cursor c = getNoteWidgetInfo(context, appWidgetIds[i]); + if (c != null && c.moveToFirst()) { + if (c.getCount() > 1) { + Log.e(TAG, "Multiple message with same widget id:" + appWidgetIds[i]); + c.close(); + return; + } + snippet = c.getString(COLUMN_SNIPPET); + bgId = c.getInt(COLUMN_BG_COLOR_ID); + intent.putExtra(Intent.EXTRA_UID, c.getLong(COLUMN_ID)); + intent.setAction(Intent.ACTION_VIEW); + } else { + snippet = context.getResources().getString(R.string.widget_havenot_content); + intent.setAction(Intent.ACTION_INSERT_OR_EDIT); + } + + if (c != null) { + c.close(); + } + + RemoteViews rv = new RemoteViews(context.getPackageName(), getLayoutId()); + rv.setImageViewResource(R.id.widget_bg_image, getBgResourceId(bgId)); + intent.putExtra(Notes.INTENT_EXTRA_BACKGROUND_ID, bgId); + /** + * Generate the pending intent to start host for the widget + */ + PendingIntent pendingIntent = null; + if (privacyMode) { + rv.setTextViewText(R.id.widget_text, + context.getString(R.string.widget_under_visit_mode)); + pendingIntent = PendingIntent.getActivity(context, appWidgetIds[i], new Intent( + context, NotesListActivity.class), PendingIntent.FLAG_UPDATE_CURRENT); + } else { + rv.setTextViewText(R.id.widget_text, snippet); + pendingIntent = PendingIntent.getActivity(context, appWidgetIds[i], intent, + PendingIntent.FLAG_UPDATE_CURRENT); + } + + rv.setOnClickPendingIntent(R.id.widget_text, pendingIntent); + appWidgetManager.updateAppWidget(appWidgetIds[i], rv); + } + } + } + + protected abstract int getBgResourceId(int bgId); + + protected abstract int getLayoutId(); + + protected abstract int getWidgetType(); +} diff --git a/src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_2x.java b/src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_2x.java new file mode 100644 index 0000000..adcb2f7 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_2x.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.widget; + +import android.appwidget.AppWidgetManager; +import android.content.Context; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.tool.ResourceParser; + + +public class NoteWidgetProvider_2x extends NoteWidgetProvider { + @Override + public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { + super.update(context, appWidgetManager, appWidgetIds); + } + + @Override + protected int getLayoutId() { + return R.layout.widget_2x; + } + + @Override + protected int getBgResourceId(int bgId) { + return ResourceParser.WidgetBgResources.getWidget2xBgResource(bgId); + } + + @Override + protected int getWidgetType() { + return Notes.TYPE_WIDGET_2X; + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_4x.java b/src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_4x.java new file mode 100644 index 0000000..c12a02e --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_4x.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.widget; + +import android.appwidget.AppWidgetManager; +import android.content.Context; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.tool.ResourceParser; + + +public class NoteWidgetProvider_4x extends NoteWidgetProvider { + @Override + public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { + super.update(context, appWidgetManager, appWidgetIds); + } + + protected int getLayoutId() { + return R.layout.widget_4x; + } + + @Override + protected int getBgResourceId(int bgId) { + return ResourceParser.WidgetBgResources.getWidget4xBgResource(bgId); + } + + @Override + protected int getWidgetType() { + return Notes.TYPE_WIDGET_4X; + } +} diff --git a/src/test01/app/src/main/res/color/primary_text_dark.xml b/src/test01/app/src/main/res/color/primary_text_dark.xml new file mode 100644 index 0000000..8ad98e3 --- /dev/null +++ b/src/test01/app/src/main/res/color/primary_text_dark.xml @@ -0,0 +1,22 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/test01/app/src/main/res/color/secondary_text_dark.xml b/src/test01/app/src/main/res/color/secondary_text_dark.xml new file mode 100644 index 0000000..9cf8a1a --- /dev/null +++ b/src/test01/app/src/main/res/color/secondary_text_dark.xml @@ -0,0 +1,20 @@ + + + + + + + \ No newline at end of file diff --git a/src/test01/app/src/main/res/drawable-hdpi/bg_btn_set_color.png b/src/test01/app/src/main/res/drawable-hdpi/bg_btn_set_color.png new file mode 100644 index 0000000000000000000000000000000000000000..5eb5d44f561b5484eb094e18159ac10e0a32b53d GIT binary patch literal 3588 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 QZ~y=R07*qoM6N<$g4u_m#{d8T literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/dropdown_icon.9.png b/src/test01/app/src/main/res/drawable-hdpi/dropdown_icon.9.png new file mode 100644 index 0000000000000000000000000000000000000000..55250257a0cd618f2dd365cfa27a38d323c7975b GIT binary patch literal 443 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/edit_red.9.png b/src/test01/app/src/main/res/drawable-hdpi/edit_red.9.png new file mode 100644 index 0000000000000000000000000000000000000000..bae944a5f822df5d030a91466d439b5a7f7259e3 GIT binary patch literal 3458 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 Glm7#CUYk+? literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/edit_title_blue.9.png b/src/test01/app/src/main/res/drawable-hdpi/edit_title_blue.9.png new file mode 100644 index 0000000000000000000000000000000000000000..96e60925b9ddf7115029b6c3a5eab53ab509b0d4 GIT binary patch literal 5100 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/edit_title_yellow.9.png b/src/test01/app/src/main/res/drawable-hdpi/edit_title_yellow.9.png new file mode 100644 index 0000000000000000000000000000000000000000..bf8f580aaf01a744d9e7ad6b1464883eb2ed2b60 GIT binary patch literal 6000 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/edit_white.9.png b/src/test01/app/src/main/res/drawable-hdpi/edit_white.9.png new file mode 100644 index 0000000000000000000000000000000000000000..918f7a6b19dbddf940ff3e75b9558779ef570d57 GIT binary patch literal 3441 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/edit_yellow.9.png b/src/test01/app/src/main/res/drawable-hdpi/edit_yellow.9.png new file mode 100644 index 0000000000000000000000000000000000000000..10cb64213f33586622830edd55bf8ed6349fca16 GIT binary patch literal 3634 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/font_large.png b/src/test01/app/src/main/res/drawable-hdpi/font_large.png new file mode 100644 index 0000000000000000000000000000000000000000..78cf2e6fcc38567b27f1fba2d5518eb3b71b2682 GIT binary patch literal 3161 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/font_normal.png b/src/test01/app/src/main/res/drawable-hdpi/font_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..9de7ced77ee2bd01542f6853b52f05e9301a81e5 GIT binary patch literal 3097 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/font_small.png b/src/test01/app/src/main/res/drawable-hdpi/font_small.png new file mode 100644 index 0000000000000000000000000000000000000000..d3ff104884a11386b10830b13b34e430e1b22a45 GIT binary patch literal 3099 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/font_super.png b/src/test01/app/src/main/res/drawable-hdpi/font_super.png new file mode 100644 index 0000000000000000000000000000000000000000..85b13a1d31218ac8e264808e743f14cdfaada1ec GIT binary patch literal 3188 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_background.png b/src/test01/app/src/main/res/drawable-hdpi/list_background.png new file mode 100644 index 0000000000000000000000000000000000000000..087e1f97a35a36bd5c168d62996e54573446c2d9 GIT binary patch literal 567323 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

bugsGA_N!+86-i*}5>zZ*_* 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 z

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

K~e=Xj^!m==^?uA2#d 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

plp!9Ko0*47^YF?b4}}i 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 z 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

XkNud$|rS*`LI7vgK=*tU3ARJEPi<$PE2 zkbqK2f*TXcOM%kXdH$AP?ntSC+^e3Pu)yWDMoCAFoDl#h`;4E_ySw$-TN(L#jXW2M zLJcR!$_i*{24f->L zXLmEGfxbSX%r=rss0;hd3Z+p>8pyvIw~4fe|L`{9(22j)TjGSZYlydIrA$^#-H##! zKw?=COpSJXtzuA_z7)|NcT!?v4ge@nfm^GdC?_;HWv#|k%256N8<(U@RFh;TW9h>$ z8%cFeG!#SewpB6DjCq03GnJPn;ZP31ePLY9e3*7`iqblZ6_KCtg<;hMBlp>5%>?*t zR%HXM+@wo%8y5Zaaml!k)+2^pH)G{|XPP#{B_*IhOPdVC4KQq__-{<)L>HAhFA3x~BeO7aBx%m=Ov!p__NXxq6!xg=-`35LlsPAreal8j2! z)JY`u?R*O=u0~hRq#vMeCnN$1EmlroWru%T^F`b~)!j>Lcor#;Nf7Z4_Mh#J zAiQ`t>c_)ULz=Rw_`xf^#n_MFg4ouD5%c`Q-cZGdvE!(^o^3plHVZ5y>j9o7GdngzJ7JIT3T?Oa*n%^=_i<~@wVI`;b#(=GNDZlg@jBY_em;M(O$EMVp|_(+efw%YwF(-egT9^e`(0zPk2 z)rzQEB>{u@bLF#3(5e#1iN?_O@&MDM@({0QNMy}BA9Q?X)QM~Effb(bI1mQuHM++= zpOSM8Ayy~Sviz$1es?WIw}pT5t*el>BxBlhqA{!2}=>3v0rP}Z8B7N)p-Fmp>Te1 z@=#2-sUQphs@vDm9j1vutd@Jz#e_u7V3>y&6p_8GwvjhE9_KC%WDDa|?98f}uPKku z7W_(AfmG>*RZ!@Y{-b(&{F2h|&XTd00s_x}&knYNZg!pGxGl`@p*^0xv#sy&9Q-&L z$cRq)Y-WA`RUAeMF>QT+x^EyG4%34bjqtdeSXrLP2t*=`JxsAr zI5>o@WdMWJJV6d~Ds?)-nHFj2(%p?I6e_;`{85{Vu(4T#rCq9q7AGe(^tEjEyb6|% z%HpNCkIR$S+Zg!#`lMU)G;b4gY!+_PPorYNdIYVTx=CwJJ1^x?9pDdng51JMfc#A~ ztU+y$(`ZhLPa!5vB~OXTe1OM8&q^yyvFSlk1D!9PrU!f7ZDpOss3@Ki_r2U5M_zll zW#-EPF-mq+?<9Bd%WMQO?vDJG=SGw6%pdTr;2yE`t7ry-XzBbrv4(iGZv=XlHJ6nUQZ*@2rQ>ZE9j|2fX;CfHEo znYXQvJ1ZqzS*jn*n{y znWiIF=a9pG0<)X0J%7lA6CjV3l)Z8nQ*-+l7sO=!XKvWzY`8VB3Glyd^XOw92C}XI zqhe7b7&C@o(t>+2vJz97j4$#xf1@HH?7jnU5)P}6{SO`#J+j`swAXc^Tz3ON4Q-!B zpnY#gt0^?Xv|)G8TW!t@Bb@-UH<2?3`eV+<0w*vYO8&+H^4o82oTI5=1zsgi7Lg}H za$krtLpd>|Y=;m5_pwU@2siq4nYp?!8piY8#ejxN7$1Rgt8GaYHay#$w)x!T;(zSo z%y_oCY>Dc%h-z&jvWns5?mCHGcTrL5opxrJ5R?_m^0c;V-=F6)@40z7{TK{UW@jL` zx)Tu+&R@OmjMy~2CXqZc)bTOFYyVtBwC

v16tv1~dCNXheHF>5(*JP`az`0m`!I z_=tom@xE%kP0l2etoJ*PUyJ@Nh47&N@+EtKD zN#V+_23(2ktAZ$1PY=BXc`($$;NGI#k&h}^qS|yu{p0fTalsG8neqt-nhjU}G zJ1^=){o2iNG>2mMX}1q6AsnT*q)LEw7z(I>uIY2+JD;5E0zf!sS+-np~89Q&@_e2!dhF^#$7CCplW%$EQCwuzrz+UT?aR^}mTv2vU`f z0gZae)cdEbd)OtpAFvN<-%;leB67z;0x~l7$QxYDtmjuav|#@04L^0#?|$n=^Zar_ z>fFs;U39S$es41<<7My7yLsMee?eKkI53VS5W z^aBJ-zpCbF=;Pj$MEbOI{&6}rHFUtQapLJj4?x zK`J&4lRQa{5(s7n_;caJKKePQG$hqhdH9~DuYG%A95G!&{%8k*7v6npZVKj*_k_B6 z4u_S85!f0%D<=7a48-pjSn1Ljr>PB>gtFC5PcBhEpYKRX7$B4WMn&MAdcKyV=!@EJ?tCpcTEu-RS_<#%Kj&=M8J1y5R7U8;or(fOfn zVSm10NoS=aGs|3|0}k=(S};dm1K3P2zMMI!6w<7ctYMQn^XpM=(yc4KPlP7dkn&zv z%R`;nGxt8s3JSq?A2N?d|9>G)i`!4N6Ak5*4?ycQUxD2Yvw3K}7=Td}!>HZn%&

e6V5FRup@?R_P~$5#0ato4?dx|UT+YZe!uO{R^{ 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
ccgGPtth9g(3C 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%0DofVu@{9+M?15 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_blue_down.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_blue_down.9.png new file mode 100644 index 0000000000000000000000000000000000000000..b88eebf67ab0a5e65237187408873878ef7130cb GIT binary patch literal 4361 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_blue_single.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_blue_single.9.png new file mode 100644 index 0000000000000000000000000000000000000000..d7e7206fc2e942f9cdb0645af8855bb2bbd24206 GIT binary patch literal 4618 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 B+)@Al literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_blue_up.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_blue_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..632e88c844ee1d377841adb49c0a80ffe3957a2d GIT binary patch literal 3301 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_green_down.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_green_down.9.png new file mode 100644 index 0000000000000000000000000000000000000000..64a39d9516f8c9df1034a1830235a64db4c663ea GIT binary patch literal 4488 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 Ee?o7YP5=M^ literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_green_middle.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_green_middle.9.png new file mode 100644 index 0000000000000000000000000000000000000000..897325a4f62defad10d745c527cf39b6acf2c833 GIT binary patch literal 3179 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 Ofr_H$lTvxh*Z%`qbR0MU literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_green_up.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_green_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..141f9e1678a0b34a5343614e38d3fda52ed47cfb GIT binary patch literal 3351 zcmV+y4e0WTP)KLZ*U+5Lu!Sk^o_Z5E4Meg@_7P6crJiNL9pw)e1;Xm069{HJUZAPk55R%$-RIA z6-eL&AQ0xu!e<4=008gy@A0LT~suv4>S3ILP<0Bm`DLLvaF4FK%)Nj?Pt*r}7;7Xa9z9H|HZjR63e zC`Tj$K)V27Re@400>HumpsYY5E(E}?0f1SyGDiY{y#)Yvj#!WnKwtoXnL;eg03bL5 z07D)V%>y7z1E4U{zu>7~aD})?0RX_umCct+(lZpemCzb@^6=o|A>zVpu|i=NDG+7} zl4`aK{0#b-!z=TL9Wt0BGO&T{GJWpjryhdijfaIQ&2!o}p04JRKYg3k&Tf zVxhe-O!X z{f;To;xw^bEES6JSc$k$B2CA6xl)ltA<32E66t?3@gJ7`36pmX0IY^jz)rRYwaaY4 ze(nJRiw;=Qb^t(r^DT@T3y}a2XEZW-_W%Hszxj_qD**t_m!#tW0KDiJT&R>6OvVTR z07RgHDzHHZ48atvzz&?j9lXF70$~P3Knx_nJP<+#`N z#-MZ2bTkiLfR>_b(HgWKJ%F~Nr_oF3b#wrIijHG|(J>BYjM-sajE6;FiC7vY#};Gd zST$CUHDeuEH+B^pz@B062qXfFfD`NpUW5?BY=V%GM_5c)L#QR}BeW8_2v-S%gfYS= zB9o|3v?Y2H`NVi)In3rTB8+ej^> zQ=~r95NVuDChL%G$=>7$vVg20myx%S50Foi`^m%Pw-h?Xh~i8Mq9jtJloCocWk2Nv zrJpiFnV_ms&8eQ$2&#xWpIS+6pmtC%Q-`S&GF4Q#^mhymh7E(qNMa}%YZ-ePrx>>xFPTiH1=E+A$W$=bG8>s^ zm=Bn5Rah$aDtr}@$`X}2l~$F0mFKEdRdZE8)p@E5RI61Ft6o-prbbn>P~)iy)E2AN zsU20jsWz_8Qg>31P|s0cqrPALg8E|(vWA65poU1JRAaZs8I2(p#xiB`SVGovRs-uS zYnV-9TeA7=Om+qP8+I>yOjAR1s%ETak!GFdam@h^# z)@rS0t$wXH+Irf)+G6c;?H29p+V6F6oj{!|o%K3xI`?%6x;DB|x`n#ibhIR?(H}Q3Gzd138Ei2)WAMz7W9Vy`X}HnwgyEn!VS)>mv$8&{hQn>w4zwy3R}t;BYlZQm5)6pty=DfLrs+A-|>>;~;Q z_F?uV_HFjh9n2gO9o9Q^JA86v({H5aB!kjoO6 zc9$1ZZKsN-Zl8L~mE{`ly3)1N^`o1+o7}D0ZPeY&J;i;i`%NyJ8_8Y6J?}yE@b_5a zam?eLr<8@mESk|3$_SkmS{wQ>%qC18))9_|&j{ZT zes8AvOzF(F2#DZEY>2oYX&IRp`F#{ADl)1r>QS^)ba8a|EY_^#S^HO&t^Rgqwv=MZThqqEWH8 zxJo>d=ABlR_Bh=;eM9Tw|Ih34~oTE|= zX_mAr*D$vzw@+p(E0Yc6dFE}(8oqt`+R{gE3x4zjX+Sb3_cYE^= zgB=w+-tUy`ytONMS8KgRef4hA?t0j zufM;t32jm~jUGrkaOInTZ`zyfns>EuS}G30LFK_G-==(f<51|K&cocp&EJ`SxAh3? zNO>#LI=^+SEu(FqJ)ynt=!~PC9bO$rzPJB=?=j6w@a-(u02P7 zaQ)#(uUl{HW%tYNS3ItC^iAtK(eKlL`f9+{bJzISE?u8_z3;~C8@FyI-5j_jy7l;W z_U#vU3hqqYU3!mrul&B+{ptt$59)uk{;_4iZQ%G|z+lhASr6|H35TBkl>gI*;nGLU zN7W-nBaM%pA0HbH8olyl&XeJ%vZoWz%6?Y=dFykl=imL}`%BMQ{Mhgd`HRoLu6e2R za__6DuR6yg#~-}Tc|Gx_{H@O0eebyMy5GmWADJlpK>kqk(fVV@r_fLLKIeS?{4e)} z^ZO;zpECde03c&XQcVB=dL;k=fP(-4`Tqa_faw4Lbua(`>RI+y?e7jKeZ#YO-C z0z^qfK~#9!?43Jq6JZpEzw2=x1VTY%ETTA~V+B++X=&L6Vh1dN9RQo4g)$8l6(t>t zqacHz;3cEPb7+QF=XfTb>)~9<)>PKjr*j|Y_eg(8B1=SsBn62gG6BjMJtHt612P~3 zG9UvoAOmt3kO3Lc(xYF~eFsofzq3|7x9!FS%z#ti44A2gBVX9fS8&#VE#N9}1=vWS z$`beid<8xO-+|LbA=Ob(0c?$K?(QAFe13m;V|Xtjb~BWPq?5_J$+Lqycb|^mo*Y-O z&K3}X>L_Rvxc=to)x*8f{(~u>D9@k61vS<_n_S~~eDwI%{_RJ=dr8w}1KI{g-!wU# z@^O#_&cBd$K3tCB0Wg;IWf4HVnkBXY3`%C{rcagApvtjmW6Z~jtO>n3lhu3BMead= z){bAFY@tTv=P)1x%G`r;b{{LqfDFih49HXLyxX)DWCe9<5eh5FC1yYdWI&!`^X))B zQFMtp49I{C$Zp;W`o9#ESv#_VTw(@fKpyipt1dBz0U1!p_|oqk%g^8heQ|=b3Z@ zKmsH+ao=KyOA$sU5!T0H;&002ovPDHLkV1oBKQqBMX literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_red_down.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_red_down.9.png new file mode 100644 index 0000000000000000000000000000000000000000..42243095f3c249d529d55523ff1aba2823ff61f9 GIT binary patch literal 4307 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_red_up.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_red_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..46b475797d7636ee9ac20ffdab422853612ea876 GIT binary patch literal 3277 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 UYW(2rmj(cxy9Rfv)$POo2Q$;Ge*gdg literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_white_up.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_white_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..e23cd5cb09c271ccd56716f3d61d11892f70151a GIT binary patch literal 3220 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_yellow_middle.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_yellow_middle.9.png new file mode 100644 index 0000000000000000000000000000000000000000..b6549b2945d0d92247366118297633d69031cbe9 GIT binary patch literal 3150 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 XsAQrV2j1U2(LhB}^J$5^Meu(B#^L)R literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/list_yellow_up.9.png b/src/test01/app/src/main/res/drawable-hdpi/list_yellow_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..4ae791cecb795142f46ceb5fb2352ac0af82ee2a GIT binary patch literal 3335 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/menu_delete.png b/src/test01/app/src/main/res/drawable-hdpi/menu_delete.png new file mode 100644 index 0000000000000000000000000000000000000000..ccdfc4ba5468ad2a5c865f2e2c9bd1f210c69b67 GIT binary patch literal 3426 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/new_note_normal.png b/src/test01/app/src/main/res/drawable-hdpi/new_note_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..e24e0d142cb9685ba598a2f838c6697d8a1f12b5 GIT binary patch literal 89221 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
>ZVDwitaE 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�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%0A_#trX&}SgOfFQUml39{ezh%g|F$RNFw0xo} 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/new_note_pressed.png b/src/test01/app/src/main/res/drawable-hdpi/new_note_pressed.png new file mode 100644 index 0000000000000000000000000000000000000000..c7489362c9809fff748149c72fd927b27c9871d3 GIT binary patch literal 90126 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 BQtE)ii5P5i05$W&ov$xCC9R2x(7B)oHDR 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 QxT6g~Q&mr;TFLJHe@{=aV*mgE literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/notification.png b/src/test01/app/src/main/res/drawable-hdpi/notification.png new file mode 100644 index 0000000000000000000000000000000000000000..b13ab4a9232b11f23a3eda4c4c80e543e6802c7d GIT binary patch literal 3107 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 Y0NbM{;)bwtBLDyZ07*qoM6N<$f~1kZuK)l5 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/selected.png b/src/test01/app/src/main/res/drawable-hdpi/selected.png new file mode 100644 index 0000000000000000000000000000000000000000..b889bef091f6f8bb3630195a02f908db4b0b17de GIT binary patch literal 4959 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/title_alert.png b/src/test01/app/src/main/res/drawable-hdpi/title_alert.png new file mode 100644 index 0000000000000000000000000000000000000000..544ee9ca6c956b580dce42e5bc1bf3192b64face GIT binary patch literal 3696 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/widget_2x_blue.png b/src/test01/app/src/main/res/drawable-hdpi/widget_2x_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..a1707f4232b0715116a668fe3792d376ba2a1fe6 GIT binary patch literal 1946 zcmeIz>pv5U9|!QsWz}&fx8=B;D23Issr@9fxsIb!b3Z0claX8&5+i0|tmWj|Tu!Fk zj%$7{A(wG7j>}9$Ih;)<_v_|z>g7E7{SUtf@9+2Z`aJkN_&)iP9UZKsj;b96002@p z)`)B0_V{;)CBDs>xEV750En?cm^(f2oF8xVQ@E-aGZoCRId@82S-WAr=%z*+V?)(_ z8{jIGG;Hw4(JoGA)+CsJoKUsfGQA-7RNr=r*Q*ZE*=T^5EZ6GfRaC2czQ5%Kp7S>Z z8yec_F$Nsbwq%H<`(K*V+nIY&R`2$sT%zcW51wUiqB$J2T#y?tV7-0-76{YmfBR6l z2h9>OZ4rj-@i(lT#u;|Z^^)~*TJfVvglH>?BWHnz)~)~Pq8zCMaTQ&;hxj7BSj&>i z2xGItVd9XzCkE%U4i$NXRvykvLf!;9<0l@TglX@#ccNudV@X!$xuOpE68Oo` zk@2Sg7*K;ADM+8F}D|7l#y2JW7eR z_d)V?9&ZI2Z}d40)Q&e#WZ9NfDjgyF+tK+Y6@FOPOS|~gWTjl~nU{Y9f<0s6r|~sn z-YHrzkP8aD6~s&L%O;ra%*L?@i*KuMC``EpehRmUfah+oJXk$;2G4g| z_;zt;Z6~jM?i^sLb0~?){MkW6TYGUgBswtSV)M>I_9BTMz0uh%c+&Zck{IM<5?@;V zERtAcpjLpwZcYG6wfwu_j5|&~sJW$5vQ$t(m+JIu8eFETz8DR1 zfnmt#+2<+ruk>tDtzDE85-*uLL>p?+o$mRfFVeok>$ggk2A8R}a*% zkM^dX?=C;sQLM~s)`;GnE&;dvNF>puZm?E8EMOzOY!qXAA8pJ4NDsll*^a2K$%#$j zE^9A~)s}fI-YsK-LuhQ?OBhZLO1Q231{jyUp}3%5)1floG;-#BnB4>E+aL7mJSXQe zc@I&#wD*NmOEdHh`f)mnl3?WvXzhO;85Lp#2c=l@ey!qMN{}J>wrCvBadx-{G`kNS z+sE&3O}^QD;oPj0s5k0(`(ik&x29p`zZK__B%U_Hf2bIBtp2pxiPQPWm$R1ra-BTs zuafV$gk5PKi;uaHf1`%W0bB2rVs7UM-7$uuguE%mHjAZMe@;p>&Jq1&Sv1#wz zj6qSPT{+M~K}}bRr^9Zd&j`YdOt?Z}ICh%2^jkgAK2yFa$=|m$Gj0*?X(7-tY$cSlwg|qrc zG;-Fy;!|i@!So-=bFDp>E~nmHk%&;RSi5&;_-f{>MC(td!o*&=gBxHJQeQ1~ zC62X!xAjys|_Tsfj?a+wunHJX->@AX)Zq(^~WV+x+(-?!; zw@zp@)q-%c#CSTrZQSkSO~2W!hUQvWil+0`u;o6}@rwNi#(0y5 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/widget_2x_green.png b/src/test01/app/src/main/res/drawable-hdpi/widget_2x_green.png new file mode 100644 index 0000000000000000000000000000000000000000..f86886c142f3650dbd9b06818fd3dd1b9c0696d5 GIT binary patch literal 1954 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/widget_2x_white.png b/src/test01/app/src/main/res/drawable-hdpi/widget_2x_white.png new file mode 100644 index 0000000000000000000000000000000000000000..5f0619a37a8e5ea3ddfaa84b3ef0f925e54ac887 GIT binary patch literal 1901 zcmeIz|34Fm9|!Qwv_uZO(>~eCmvZtw-woB$Y~*VZB}SVlM!sJ85*uRe40o;%GOmwG zWxj+@TRTLyw!W}cL(W>v*9y~UMvUvu{d9lB{qTIfACLDB?;l>jysrlMVKmkC)Bym1 zrk5w`_}3}=lN$JIPUKA>0f4RcUZ}%Cm$0*<$Mr(wcSMO@iV$~L>X&aN&i_rOd~=Xw zgk9J!75&KAWuid0swG6}QL^;mD&g091eK=oln|Dm(*Y5%DUCmF=S%9m*XH_JX?Xkp z)Pm%rrmwv@rqRYyfwHSBXCfs+AP=>&F}=N(rB`r=>^zVzt)ntBnXAjoa#6Y9)%N>2 zYo8^&51B#JhcLW8QQvCe-GVdPNYG2g<)ZL`AxC@+0(*PkE4_fJo5?j1apkc4vt}a; z3F^O`v>`>-6`8*b@zdS;Lap~Lr(UQ0C~-O#;} zZKS@zR>w%`$8{&z!#1Fl@YiPjO=x#39Zsk1d5o}auF+dwd~X>CVltZeN2>c+ZWl^; z_*q3J&>n#IFJFk8ojIG_pt9VB2epuf0DnUgh(ntU9Fc@g+AsshO=L}N*d`8`thosX z;(#}`0CAwd{Cn;n-M#b`9G|}E8r%lM=;XI&E@80vm^lZus^r%^9mEaKw?+$qFoaBv zR(eT4!42R(#yNuI7^>z%e8@e~-@13i%@4QRg$FhM_V(tAeXJ-GNntkl%TJt8q|)yk zRGjm@BeX%;7gi{+G|qDeYs6j47EV=>#S5YaErlCO52JAmF$@bwK}Gc|`qB@pOO1kq z8>usVamj@pj}rC8kL3R=I{%<*rm9oAii+wq5zRHtFXH0ag9L|mI-M>$Ygm6Taez`A zKymjlv~J-T1?cpvqdg4A`+q4{z1ivFir9VV_3$}ox8B99-ZU52>PIda2Qs)RADCN9 zcJu32KEEqbtd3+U=ZI+@wblj9S}5A&Mtr&}-`<$_f)N$7)4K9h6+*%-ZL2d(#}wS+ zCibxWsMcLy#)ux*uAWpVE;1P->6wA3>kh3`@80o?6Q2wZpN9Xg^#RKFsd^KKzzUIG)(&J%DDv>Kd0tefM$i`s9n88o%H7MoU&cq&g~R zo(WBQj1{Bn>_gmf*}as?4SD%UMAn8_3xs_zs@vgYCwOaTVw-MQZDNFr(4JiEaEf^i zxBc&bjBFoQ*tGbxCbA!JwnpV9H$2LXzBk2j6;`B-U3W;ZLhoYd>dvbg`Pelhz~`}C z*CPx!{^ewaUo&&yv}7nl$M`4V%*tq9UP3dI1=#{qN~QcSR4H{Sy@|WDbkQlaF&Jb{ z{()XC&YBl%ru4*bnH2c_>?DKN;#Wyh9%*b81@N(;nw@W4mmUOo5J>F6U2P9N&^i*;)CX2i-FN3$i`A;$P z(|B)Icca#b*|gC%9;8F?EZ`I>ok&3~+FdOT0S{&I50>RFAp$t|0E-p@}Pm{sEA_VKHS86 zc|$yMBEg;z{=OnPM~iwtRh3OsYPJlQ56@0>&SKg? z->}_gHK?U{A>CkqF&07Av7+^VId31UPxK{t|0p^tCRIFFIqIZ7&}?3idsi2_+eIBi zvQamUk9ud(R{m7v(occRG!TJ!UEanfk~yT8ngz*KAbo7eew=m1B(NK+wvDqTEqKquS=N z(~;R%jn`v-!qc#YKOZ!#pQPUBK%h{XuY4niHdo?ZR(po<^^F3&Jp52i?vc5F00d`# ATL1t6 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/widget_2x_yellow.png b/src/test01/app/src/main/res/drawable-hdpi/widget_2x_yellow.png new file mode 100644 index 0000000000000000000000000000000000000000..12d1c2ba7b40158b5115b7bbc6ce8b6d07b67893 GIT binary patch literal 1978 zcmeIz**n{b8VB%SL{e*IP+QU^s+^X=DNT!7Y71JiCAAePN+%)cRJ6n#%R$uEmX<-w zFmq6nP@+|Wl%j}GQd?swrNmOT6(@2!<2g6yZ#Wm9_kEu4#rNX9c~hM+Xjv&WDF6Uu z?d_~xzwhxsNkG5P*~D2305}wHZ+!`S$9HM`?_q-$Dsj`RbbI6x{Ui5PJfA%u^y}<0 z53sr-gB8kFBl90>n)Ovw9#)bzE+~&aws8Alt@Q)nSTk)*gw`-qWs4j~r-!zbA*;(G zX?@(jJ~xNX0cXrN94+0mC{*?$@m~j#AMw+ZF@djZ_E}Gp_>h>Or z2~B&Ix#≥Y4(EXJ$88fLdI0nNP#=-WUT>3ml6IIe~(~|BEUMgCA&zQe_YLgWI78 zYC!(rzr>FKH3uw0;zkafKv{gR`qTgG{^xc|ZN4SlPP&U^xC?4Po4@&GfKC#;bbnQ} zM`XGFg1+7IF(T1?Igdj^*udf{30r7l=hiM-$wB}5Nt<{uRa#l`@Lh;5;x4#-FML|| z{)O;aNoSb+YtZQkJLi9EE0_rQoRureK8^ee7v-7Jn{sx6J!g1fPTY-+7p7-HK|Zn( z5Lhj&j(KU==f%)lsC0W#qh|E4c-$HXO_5D~;u6ai(WnfUI*Ui+|_QSFc)9JfbCB3E}%r6M{8;?7|ssW36{8GR7 zs)3cSzP_~egi`O0#_H6gRmj2(#th&!DF7hF;jfwPP)-5?5mLf&&1jc5)HK^u6LZ9; zn^J%E$Un1ZR`I|+^X`HcUT1rN6;l*KBGIBK=_IK$NwsP#6D&S|5?4hz>qFaZ6PuxwNz`yT@}+PuK5oW+oqVvxihNOE4HJ-sUcLF|2K zm1_0m4OjKr*m2=-8SV=c%@8>3)Qm{LE7Xb=HJ5P!FWJp?=yhJZqEPWFXMrN2p>#5i zEoY=YlrI6zpeZV8cu_ZD1|7&VRbH7h_;(&jf>^_uFJpqwtXtJ#I>s4hfdrmY40d^Q zRL1d#YUfJC2K35sJLFO8$5N^y1{aaHrHuisKvt7xWTdP zo=}Xid~5hxn(o`O0+f6qr0ApgsheNLyCNk2OwH$Hr zGHwVZ_B{dSV}v3g>zkP+Sh2Xd1jk48)YIjhakV_Nf|=jlK?Z<3BULPTGBv@yqG8Q3 zR#V{cI3sLZW?W?3r&Z{2$}4~~s-ReUPH&(|M>@r2-Lj6WlZR{csE0z0E0xq@M4L5I znq<W1COXU5#FY*U>o~;}ANx>&WqLbP>2)y(9izbYMf7t$n^=&2j>o{iG zKhe1&)h`22X8fxBEWWyW#OB3RdHzTOR!>Hx$3EW`@aU@LPXg?;Hii8nfHvmjA&ure zEjMOiiOpVw>w}l1vP~b^l{5Bng~GvN^<;4!dVKZVQ2$e-Df}Iir1^i=HIo9W-u{*v znnCEGI`f4?%Q)#u4lcc-`E4|H3Cf^05Ypf31tLYJvnYB|3Ncg`o2GD`?Aaw2QZ+6T Z0id*>$9^567LLvldQba%ykQSPtxC)Ub2@q*PX)#C@2+c*R zAkw4+L`bLsg+-((1`q)w2}Ptm>^$@C%cB7p;=Zng0#7&hk;X#bR5^@g@$STdY%%-&O@TBi~AIF#5 zVeooVq)kX<*zWwmlA;U|TcHR|-P!X+U{=4ZkRyFOfNx_xtc?9%7WNhIM#2hreoOtN zmr5sxWC;O?@SNqa;5@HHzm%lhEfA9NGX3GHv;$-A4b{~r0vOt+R*C?L%eLNOfK^(w zggqGL?ASyG+GQ>Q`HZD(Nx&hM4e&!BEak--FyN^ZiLT6I!%d9Q%QVgbPwQhp;DC4M z34bcq2YB201OrxegC`CGD?&81fwgne_F!DVG2qCb!dZ(TWaZkj8Su2&KCD6v7%_wT zLU6tANvA++RsG7K4^K)<1FvxcX}XyQDcxz0E%m57Kt3^%4YtY-{Bp6<0t%E7({4dH zabH9whxiUc4upTNRX&)jM1Y&mFHe-S=qVQ5z>SbfmZ<>nRS^xy{txkzz)vIsI4bBT z{tExg_$leYmFN6BKgk@pe+m3${9Wmv3M7GldhlP-gXRCX7Q0#!Az|TBn1O7Ki zI`9*MFyQa}pOpUd73kEm;ofiFtc5zS_gK$0KY^PsaGK9le8@Pa)fO_`wBA6 z3m#xJ{6>%e1UENhKBGRTzc&3!fQ0CWog5OOc8WG0R(g+bTYD0DW0>MP3^tl5DYSQ% zMt_rQD#ye}zD}=vXRUI7@}#}u8L*F-FfqQ6GvXdcUG0q2!#GVD{?ha-W}P02x%gy< z`~V-S+~NRR zOvvpiM<=%lhqd(|6Aez4{+CZbm4d8Hxo#@h3Cfop5f%0bvr&xl?iaf$;FCwS$|<)l zGES1%F!@ z{pyrc^Z6M)-s0@PuF$XE!%Dmtz_ zGKXLCygnE$whtF?lW-+!t?#e&k!9Kt+7dnsad#2jPrbdhF5}^+y4;|k_h-;hFKLG(9Z@E=jiPhhJQ#fg z!53@SPQ*$pO6Nq|lq2!nNNe|Ot?2Z)Y7S-JlIx3;Dp*bSf~ngJj?x#HFMuf72@-z{ zEpm&cAK5@o_Qkb7T`QubK#o2>nmcl-8vAWL`mz3zIPu8>uD2ceg}lcSEk;oxvdY2*4~hbldxiq8&dk0; zA@GobLlzZ0;YojvCE$ zl6FFyM|tWv>#H?BKUp%EE{@khRcjr++QRE2ExR;^u}SS4*!``~vpcWA z!1Z5REkB&yrIFht9KYef22EV5hq<&lK}VD-j^PcDs~^@aO&l=DYZ?wdmkK_zJV*tf zz_V>#6v^^qzRlBqOcD6}TBO9G!vK?+ffhj(XQp&0wxcB!}JFufk8`Ci7jh07AxxM8D4cr8yTG&Re{m8blF1lHF7Nn-agAqo}RNw zhC)wl(>5rR=IYuB1l_|9YjWL?w1UDuX8!#%*{hl_A}WWLU(6#i~_<|{^mSFBJX%oN!opHl!t(q zYq}RUuiKfTdK(wbjilsSFc~`Kqgv?c@3E|3m45YR$x2wjp~rJs6jt2UdI6_1Qs0x$ zxCV;mQ+go~3&RW`Uxz>FpmM{QTz9xp#!NLq^`}j(>U64tOG>rz&=!(s^b0pH@^UP! zYjUYQ8Jpsc9PpGp+XxsM1Z49X!1JHn1<8^*wR>x1PR_H4W>w;ND4((A_axUW zlY5{JgIWJ>^+%=LJfSn~?p+xxm1$y`Bz^s9`=Ts5*wCDqj*3`& z&k|=V^B$Ql#!~_Cij2`;vAuD1hrSg89Ijl2;P^t^RgtEE6zjRd_5|-X5?AzSOh7?D zJ$&A5Z~qNSoiAPeEZ=|;SMMEh*U!2pj&?iDg*)qVC!#G?tFTG5EotH^7TG?*Z>`#S z+YOBz&f#CcG`jVjDFu3BAMd+_pZVhs3vVRo zlHDLA3fr-BRzBp-9B;z)`80T>AfObUmk3;B!sMu&Tde_?g|dyQeK(@~MnIpRlfB}C z?#(xa$M@47s4f*EVjp9$v^r-sronw||D`hQDJ!P>5!0b>om?@Imc-75Rbff*4+VT@ zzX~H2+f?;3Jo~;bYqK|gX;1V(x9~Z8W%g8;aTpTQcbPCQ7-1{s>IET0gu{^aM%MWp z5A_k-+^QORt~nh!-g13QNUpO*=w?hmgA*E$n)O5HBs+Yp=QnEr#YXkCh`yBW^hBhv z>wUa1ErC3=F?Ro>(92V{ePXubmqS_uwWu7g{FE3Odd))b*a>ORjp^n;m}GTmq;(5e|NMe%}Y z`z59UPYgoR7R{%aNgZ<~FO{Z7#_Gp1KW^eStV_-0So34GOG&h2)H>hTi6)2!0o_Sv25ggV; z@VJkklkGI!6SdzhJZb~rBJy*+$R?7R>&k1o&iU&P!^h6o*8>ruz%D5A@O)`JRKs&;@Y5H*K<`_#G!Qg*7i%;j3r0>0gYQKG9Li)MWJ_e%%Vj*n8WI$jL}_MwL)`vVD@ Sc&UT$0l?JA(y;10D(YW+)3Aa7 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/widget_4x_green.png b/src/test01/app/src/main/res/drawable-hdpi/widget_4x_green.png new file mode 100644 index 0000000000000000000000000000000000000000..fa8b4526faa77582794ac18bca85e8b5d7ebf512 GIT binary patch literal 4192 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 literal 0 HcmV?d00001 diff --git a/src/test01/app/src/main/res/drawable-hdpi/widget_4x_yellow.png b/src/test01/app/src/main/res/drawable-hdpi/widget_4x_yellow.png new file mode 100644 index 0000000000000000000000000000000000000000..d7c5fa48dfa1fa767ce494df9555e59565b251f9 GIT binary patch literal 4199 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 sIa#C5eWch*7HE)@p6Z1vu~7Db^~Amb#kVB + + + + + + + diff --git a/src/test01/app/src/main/res/layout/account_dialog_title.xml b/src/test01/app/src/main/res/layout/account_dialog_title.xml new file mode 100644 index 0000000..7717112 --- /dev/null +++ b/src/test01/app/src/main/res/layout/account_dialog_title.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/test01/app/src/main/res/layout/add_account_text.xml b/src/test01/app/src/main/res/layout/add_account_text.xml new file mode 100644 index 0000000..c799178 --- /dev/null +++ b/src/test01/app/src/main/res/layout/add_account_text.xml @@ -0,0 +1,32 @@ + + + + + + + + \ No newline at end of file diff --git a/src/test01/app/src/main/res/layout/datetime_picker.xml b/src/test01/app/src/main/res/layout/datetime_picker.xml new file mode 100644 index 0000000..f10d592 --- /dev/null +++ b/src/test01/app/src/main/res/layout/datetime_picker.xml @@ -0,0 +1,56 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/test01/app/src/main/res/layout/dialog_edit_text.xml b/src/test01/app/src/main/res/layout/dialog_edit_text.xml new file mode 100644 index 0000000..361b39a --- /dev/null +++ b/src/test01/app/src/main/res/layout/dialog_edit_text.xml @@ -0,0 +1,23 @@ + + + + + \ No newline at end of file diff --git a/src/test01/app/src/main/res/layout/folder_list_item.xml b/src/test01/app/src/main/res/layout/folder_list_item.xml new file mode 100644 index 0000000..77e8148 --- /dev/null +++ b/src/test01/app/src/main/res/layout/folder_list_item.xml @@ -0,0 +1,29 @@ + + + + + + + + \ No newline at end of file diff --git a/src/test01/app/src/main/res/layout/note_edit.xml b/src/test01/app/src/main/res/layout/note_edit.xml new file mode 100644 index 0000000..10b2aa7 --- /dev/null +++ b/src/test01/app/src/main/res/layout/note_edit.xml @@ -0,0 +1,400 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/test01/app/src/main/res/layout/note_edit_list_item.xml b/src/test01/app/src/main/res/layout/note_edit_list_item.xml new file mode 100644 index 0000000..a885f9c --- /dev/null +++ b/src/test01/app/src/main/res/layout/note_edit_list_item.xml @@ -0,0 +1,39 @@ + + + + + + + + + + diff --git a/src/test01/app/src/main/res/layout/note_item.xml b/src/test01/app/src/main/res/layout/note_item.xml new file mode 100644 index 0000000..d541f6a --- /dev/null +++ b/src/test01/app/src/main/res/layout/note_item.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/test01/app/src/main/res/layout/note_list.xml b/src/test01/app/src/main/res/layout/note_list.xml new file mode 100644 index 0000000..6b25d38 --- /dev/null +++ b/src/test01/app/src/main/res/layout/note_list.xml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + +

_A4y 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 literal 0 HcmV?d00001 diff --git a/doc/~$aomi_note_read_through_report.docx b/doc/~$aomi_note_read_through_report.docx new file mode 100644 index 0000000000000000000000000000000000000000..82329439e9928c164ce8e7570e5cc59e0a9f45c3 GIT binary patch literal 162 zcmZR|C}1ERFfn8>fb<;+|Ev3>o`FFGYDC0L`6w44`@ofhCYg*33}NETD26jZd2n(6 g_NHx%uQSfQXlW$9hk>E6anj^nKt4=Um-|ay0Pr^#bN~PV literal 0 HcmV?d00001 diff --git a/src/test01/.gitignore b/src/test01/.gitignore new file mode 100644 index 0000000..aa724b7 --- /dev/null +++ b/src/test01/.gitignore @@ -0,0 +1,15 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +/build +/captures +.externalNativeBuild +.cxx +local.properties diff --git a/src/test01/.idea/.gitignore b/src/test01/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/src/test01/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/src/test01/.idea/compiler.xml b/src/test01/.idea/compiler.xml new file mode 100644 index 0000000..fb7f4a8 --- /dev/null +++ b/src/test01/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/test01/.idea/gradle.xml b/src/test01/.idea/gradle.xml new file mode 100644 index 0000000..4e3844e --- /dev/null +++ b/src/test01/.idea/gradle.xml @@ -0,0 +1,19 @@ + + + + + + \ No newline at end of file diff --git a/src/test01/.idea/misc.xml b/src/test01/.idea/misc.xml new file mode 100644 index 0000000..09bf32e --- /dev/null +++ b/src/test01/.idea/misc.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/test01/app/.gitignore b/src/test01/app/.gitignore new file mode 100644 index 0000000..42afabf --- /dev/null +++ b/src/test01/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/src/test01/app/build.gradle b/src/test01/app/build.gradle new file mode 100644 index 0000000..b8bc5a2 --- /dev/null +++ b/src/test01/app/build.gradle @@ -0,0 +1,22 @@ +apply plugin: 'com.android.application' + +android { + compileSdkVersion 26 + buildToolsVersion "30.0.3" + + defaultConfig { + applicationId "net.micode.notes" + minSdkVersion 16 + //noinspection ExpiredTargetSdkVersion + targetSdkVersion 26 + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + } + } + + useLibrary 'org.apache.http.legacy' +} \ No newline at end of file diff --git a/src/test01/app/proguard-rules.pro b/src/test01/app/proguard-rules.pro new file mode 100644 index 0000000..481bb43 --- /dev/null +++ b/src/test01/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/src/test01/app/src/androidTest/java/com/example/test01/ExampleInstrumentedTest.java b/src/test01/app/src/androidTest/java/com/example/test01/ExampleInstrumentedTest.java new file mode 100644 index 0000000..48c8c4a --- /dev/null +++ b/src/test01/app/src/androidTest/java/com/example/test01/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.example.test01; + +import android.content.Context; + +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + assertEquals("com.example.test01", appContext.getPackageName()); + } +} \ No newline at end of file diff --git a/src/test01/app/src/main/AndroidManifest.xml b/src/test01/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..e5c7d47 --- /dev/null +++ b/src/test01/app/src/main/AndroidManifest.xml @@ -0,0 +1,150 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/test01/app/src/main/java/net/micode/notes/data/Contact.java b/src/test01/app/src/main/java/net/micode/notes/data/Contact.java new file mode 100644 index 0000000..d97ac5d --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/data/Contact.java @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.data; + +import android.content.Context; +import android.database.Cursor; +import android.provider.ContactsContract.CommonDataKinds.Phone; +import android.provider.ContactsContract.Data; +import android.telephony.PhoneNumberUtils; +import android.util.Log; + +import java.util.HashMap; + +public class Contact { + private static HashMap sContactCache; + private static final String TAG = "Contact"; + + private static final String CALLER_ID_SELECTION = "PHONE_NUMBERS_EQUAL(" + Phone.NUMBER + + ",?) AND " + Data.MIMETYPE + "='" + Phone.CONTENT_ITEM_TYPE + "'" + + " AND " + Data.RAW_CONTACT_ID + " IN " + + "(SELECT raw_contact_id " + + " FROM phone_lookup" + + " WHERE min_match = '+')"; + + public static String getContact(Context context, String phoneNumber) { + if(sContactCache == null) { + sContactCache = new HashMap(); + } + + if(sContactCache.containsKey(phoneNumber)) { + return sContactCache.get(phoneNumber); + } + + String selection = CALLER_ID_SELECTION.replace("+", + PhoneNumberUtils.toCallerIDMinMatch(phoneNumber)); + Cursor cursor = context.getContentResolver().query( + Data.CONTENT_URI, + new String [] { Phone.DISPLAY_NAME }, + selection, + new String[] { phoneNumber }, + null); + + if (cursor != null && cursor.moveToFirst()) { + try { + String name = cursor.getString(0); + sContactCache.put(phoneNumber, name); + return name; + } catch (IndexOutOfBoundsException e) { + Log.e(TAG, " Cursor get string error " + e.toString()); + return null; + } finally { + cursor.close(); + } + } else { + Log.d(TAG, "No contact matched with number:" + phoneNumber); + return null; + } + } +} diff --git a/src/test01/app/src/main/java/net/micode/notes/data/Notes.java b/src/test01/app/src/main/java/net/micode/notes/data/Notes.java new file mode 100644 index 0000000..f240604 --- /dev/null +++ b/src/test01/app/src/main/java/net/micode/notes/data/Notes.java @@ -0,0 +1,279 @@ +/* + * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package net.micode.notes.data; + +import android.net.Uri; +public class Notes { + public static final String AUTHORITY = "micode_notes"; + public static final String TAG = "Notes"; + public static final int TYPE_NOTE = 0; + public static final int TYPE_FOLDER = 1; + public static final int TYPE_SYSTEM = 2; + + /** + * Following IDs are system folders' identifiers + * {@link Notes#ID_ROOT_FOLDER } is default folder + * {@link Notes#ID_TEMPARAY_FOLDER } is for notes belonging no folder + * {@link Notes#ID_CALL_RECORD_FOLDER} is to store call records + */ + public static final int ID_ROOT_FOLDER = 0; + public static final int ID_TEMPARAY_FOLDER = -1; + public static final int ID_CALL_RECORD_FOLDER = -2; + public static final int ID_TRASH_FOLER = -3; + + public static final String INTENT_EXTRA_ALERT_DATE = "net.micode.notes.alert_date"; + public static final String INTENT_EXTRA_BACKGROUND_ID = "net.micode.notes.background_color_id"; + public static final String INTENT_EXTRA_WIDGET_ID = "net.micode.notes.widget_id"; + public static final String INTENT_EXTRA_WIDGET_TYPE = "net.micode.notes.widget_type"; + public static final String INTENT_EXTRA_FOLDER_ID = "net.micode.notes.folder_id"; + public static final String INTENT_EXTRA_CALL_DATE = "net.micode.notes.call_date"; + + public static final int TYPE_WIDGET_INVALIDE = -1; + public static final int TYPE_WIDGET_2X = 0; + public static final int TYPE_WIDGET_4X = 1; + + public static class DataConstants { + public static final String NOTE = TextNote.CONTENT_ITEM_TYPE; + public static final String CALL_NOTE = CallNote.CONTENT_ITEM_TYPE; + } + + /** + * Uri to query all notes and folders + */ + public static final Uri CONTENT_NOTE_URI = Uri.parse("content://" + AUTHORITY + "/note"); + + /** + * Uri to query data + */ + public static final Uri CONTENT_DATA_URI = Uri.parse("content://" + AUTHORITY + "/data"); + + public interface NoteColumns { + /** + * The unique ID for a row + *