From 04153aa7642f324d83645d7ccb1a502bd93c118c Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Fri, 2 Aug 2013 11:51:31 -0500 Subject: [PATCH] Remove Astrid.com integration --- .idea/compiler.xml | 1 - .idea/modules.xml | 1 - .idea/scopes/Astrid.xml | 2 +- astrid/AndroidManifest.xml | 23 - astrid/astrid.iml | 1 - .../astrid/actfm/ActFmLoginActivity.java | 960 --------- .../astrid/actfm/ActFmPreferences.java | 212 -- .../astrid/actfm/CommentsFragment.java | 8 - .../astrid/actfm/EditPeopleControlSet.java | 22 +- .../astrid/actfm/TagSettingsActivity.java | 24 +- .../astrid/actfm/sync/ActFmInvoker.java | 1 - .../actfm/sync/ActFmSyncV2Provider.java | 5 - .../astrid/actfm/sync/SyncUpgradePrompt.java | 55 - .../astrid/backup/BackupPreferences.java | 20 - .../astrid/core/OldTaskPreferences.java | 5 - astrid/proguard.cfg | 4 - astrid/project.properties | 7 +- .../res/layout-land/actfm_login_activity.xml | 150 -- astrid/res/layout/actfm_login_activity.xml | 133 -- astrid/res/values/keys.xml | 2 - astrid/res/xml/preferences_actfm.xml | 59 - astrid/res/xml/preferences_backup.xml | 6 - .../astrid/activity/EditPreferences.java | 3 - .../astrid/activity/TaskListFragment.java | 1 - .../com/todoroo/astrid/ui/QuickAddBar.java | 21 +- facebook/CONTRIBUTING.mdown | 15 - facebook/Facebook.apk | Bin 2649014 -> 0 bytes facebook/LICENSE.txt | 201 -- facebook/NOTICE.txt | 61 - facebook/README.mdown | 32 - facebook/facebook.iml | 12 - facebook/facebook/AndroidManifest.xml | 22 - facebook/facebook/TestApp/AndroidManifest.xml | 15 - facebook/facebook/TestApp/SdkTestApp.eml | 5 - .../facebook/TestApp/proguard-project.txt | 20 - facebook/facebook/TestApp/project.properties | 15 - .../TestApp/res/drawable-hdpi/ic_launcher.png | Bin 4147 -> 0 bytes .../TestApp/res/drawable-ldpi/ic_launcher.png | Bin 1723 -> 0 bytes .../TestApp/res/drawable-mdpi/ic_launcher.png | Bin 2574 -> 0 bytes facebook/facebook/TestApp/res/layout/main.xml | 29 - .../facebook/TestApp/res/values/strings.xml | 20 - .../src/com/facebook/sdk/StatusActivity.java | 31 - facebook/facebook/android-sdk.eml | 5 - facebook/facebook/facebook.iml | 21 - facebook/facebook/libs | 1 - facebook/facebook/proguard-project.txt | 20 - facebook/facebook/project.properties | 16 - .../com_facebook_button_grey_focused.9.png | Bin 624 -> 0 bytes .../com_facebook_button_grey_normal.9.png | Bin 520 -> 0 bytes .../com_facebook_button_grey_pressed.9.png | Bin 385 -> 0 bytes .../res/drawable-hdpi/com_facebook_close.png | Bin 5250 -> 0 bytes .../res/drawable-hdpi/com_facebook_icon.png | Bin 255 -> 0 bytes .../com_facebook_loginbutton_blue_focused.png | Bin 1586 -> 0 bytes .../com_facebook_loginbutton_blue_normal.png | Bin 1799 -> 0 bytes .../com_facebook_loginbutton_blue_pressed.png | Bin 1586 -> 0 bytes .../res/drawable-hdpi/com_facebook_logo.png | Bin 10084 -> 0 bytes .../res/drawable-ldpi/com_facebook_close.png | Bin 3797 -> 0 bytes .../res/drawable-ldpi/com_facebook_icon.png | Bin 253 -> 0 bytes .../com_facebook_button_grey_focused.9.png | Bin 841 -> 0 bytes .../com_facebook_button_grey_normal.9.png | Bin 714 -> 0 bytes .../com_facebook_button_grey_pressed.9.png | Bin 495 -> 0 bytes .../res/drawable-xhdpi/com_facebook_close.png | Bin 5554 -> 0 bytes .../com_facebook_loginbutton_blue_focused.png | Bin 1715 -> 0 bytes .../com_facebook_loginbutton_blue_normal.png | Bin 1951 -> 0 bytes .../com_facebook_loginbutton_blue_pressed.png | Bin 1715 -> 0 bytes .../res/drawable-xhdpi/com_facebook_logo.png | Bin 12909 -> 0 bytes .../drawable/com_facebook_button_check.xml | 20 - .../com_facebook_button_check_off.png | Bin 549 -> 0 bytes .../drawable/com_facebook_button_check_on.png | Bin 733 -> 0 bytes .../com_facebook_button_grey_focused.9.png | Bin 462 -> 0 bytes .../com_facebook_button_grey_normal.9.png | Bin 381 -> 0 bytes .../com_facebook_button_grey_pressed.9.png | Bin 303 -> 0 bytes .../res/drawable/com_facebook_close.png | Bin 4401 -> 0 bytes .../res/drawable/com_facebook_icon.png | Bin 226 -> 0 bytes .../drawable/com_facebook_list_divider.9.png | Bin 76 -> 0 bytes ...ebook_list_section_header_background.9.png | Bin 153 -> 0 bytes .../com_facebook_loginbutton_blue.xml | 23 - .../com_facebook_loginbutton_blue_focused.png | Bin 1621 -> 0 bytes .../com_facebook_loginbutton_blue_normal.png | Bin 1801 -> 0 bytes .../com_facebook_loginbutton_blue_pressed.png | Bin 1621 -> 0 bytes .../com_facebook_loginbutton_silver.xml | 23 - .../res/drawable/com_facebook_logo.png | Bin 6416 -> 0 bytes .../com_facebook_picker_item_background.xml | 26 - .../com_facebook_picker_list_focused.9.png | Bin 158 -> 0 bytes ...com_facebook_picker_list_longpressed.9.png | Bin 151 -> 0 bytes .../com_facebook_picker_list_pressed.9.png | Bin 158 -> 0 bytes .../com_facebook_picker_list_selector.xml | 27 - ...er_list_selector_background_transition.xml | 20 - ...cebook_picker_list_selector_disabled.9.png | Bin 171 -> 0 bytes .../com_facebook_picker_top_button.xml | 22 - .../com_facebook_place_default_icon.png | Bin 813 -> 0 bytes .../com_facebook_profile_default_icon.png | Bin 358 -> 0 bytes ...acebook_profile_picture_blank_portrait.png | Bin 3945 -> 0 bytes ..._facebook_profile_picture_blank_square.png | Bin 3784 -> 0 bytes .../drawable/com_facebook_top_background.xml | 22 - .../res/drawable/com_facebook_top_button.xml | 27 - ...ersettingsfragment_background_gradient.xml | 23 - .../com_facebook_friendpickerfragment.xml | 44 - .../com_facebook_login_activity_layout.xml | 15 - ...om_facebook_picker_activity_circle_row.xml | 32 - .../layout/com_facebook_picker_checkbox.xml | 25 - .../res/layout/com_facebook_picker_image.xml | 24 - .../layout/com_facebook_picker_list_row.xml | 48 - ...om_facebook_picker_list_section_header.xml | 34 - .../layout/com_facebook_picker_search_box.xml | 21 - .../layout/com_facebook_picker_title_bar.xml | 63 - .../com_facebook_picker_title_bar_stub.xml | 25 - .../com_facebook_placepickerfragment.xml | 53 - ..._facebook_placepickerfragment_list_row.xml | 70 - .../com_facebook_usersettingsfragment.xml | 59 - facebook/facebook/res/values-es/strings.xml | 44 - facebook/facebook/res/values-he/strings.xml | 44 - facebook/facebook/res/values-iw/strings.xml | 44 - facebook/facebook/res/values/attrs.xml | 52 - facebook/facebook/res/values/strings.xml | 44 - facebook/facebook/res/values/styles.xml | 59 - .../src/com/facebook/AccessToken.java | 359 ---- .../src/com/facebook/AccessTokenSource.java | 63 - .../src/com/facebook/AuthorizationClient.java | 806 ------- .../FacebookAuthorizationException.java | 65 - .../com/facebook/FacebookDialogException.java | 53 - .../src/com/facebook/FacebookException.java | 63 - .../FacebookGraphObjectException.java | 63 - .../FacebookOperationCanceledException.java | 59 - .../com/facebook/FacebookRequestError.java | 451 ---- .../src/com/facebook/FacebookSdkVersion.java | 22 - .../facebook/FacebookServiceException.java | 63 - .../src/com/facebook/GetTokenClient.java | 128 -- .../facebook/src/com/facebook/HttpMethod.java | 37 - .../src/com/facebook/LegacyHelper.java | 31 - .../src/com/facebook/LoggingBehavior.java | 41 - .../src/com/facebook/LoginActivity.java | 142 -- .../src/com/facebook/NativeProtocol.java | 254 --- .../NonCachingTokenCachingStrategy.java | 39 - .../facebook/src/com/facebook/Request.java | 1823 ---------------- .../src/com/facebook/RequestAsyncTask.java | 189 -- .../src/com/facebook/RequestBatch.java | 227 -- .../facebook/src/com/facebook/Response.java | 461 ---- .../facebook/src/com/facebook/Session.java | 1887 ----------------- .../com/facebook/SessionDefaultAudience.java | 55 - .../com/facebook/SessionLoginBehavior.java | 59 - .../src/com/facebook/SessionState.java | 117 - .../facebook/src/com/facebook/Settings.java | 306 --- ...SharedPreferencesTokenCachingStrategy.java | 403 ---- .../src/com/facebook/TestSession.java | 516 ----- .../com/facebook/TokenCachingStrategy.java | 378 ---- .../src/com/facebook/UiLifecycleHelper.java | 167 -- .../facebook/android/AsyncFacebookRunner.java | 341 --- .../src/com/facebook/android/DialogError.java | 64 - .../src/com/facebook/android/Facebook.java | 1357 ------------ .../com/facebook/android/FacebookError.java | 64 - .../src/com/facebook/android/FbDialog.java | 83 - .../src/com/facebook/android/Util.java | 315 --- .../internal/CacheableRequestBatch.java | 57 - .../com/facebook/internal/FileLruCache.java | 606 ------ .../src/com/facebook/internal/Logger.java | 138 -- .../com/facebook/internal/ServerProtocol.java | 48 - .../internal/SessionAuthorizationType.java | 27 - .../com/facebook/internal/SessionTracker.java | 239 --- .../src/com/facebook/internal/Utility.java | 290 --- .../src/com/facebook/internal/Validate.java | 73 - .../com/facebook/internal/package-info.java | 6 - .../src/com/facebook/model/GraphLocation.java | 130 -- .../com/facebook/model/GraphMultiResult.java | 32 - .../src/com/facebook/model/GraphObject.java | 746 ------- .../com/facebook/model/GraphObjectList.java | 47 - .../src/com/facebook/model/GraphPlace.java | 69 - .../src/com/facebook/model/GraphUser.java | 124 -- .../src/com/facebook/model/JsonUtil.java | 122 -- .../com/facebook/model/OpenGraphAction.java | 213 -- .../src/com/facebook/model/PropertyName.java | 34 - .../com/facebook/widget/FacebookFragment.java | 297 --- .../facebook/widget/FriendPickerFragment.java | 257 --- .../facebook/widget/GraphObjectAdapter.java | 799 ------- .../facebook/widget/GraphObjectCursor.java | 55 - .../widget/GraphObjectPagingLoader.java | 226 -- .../com/facebook/widget/ImageDownloader.java | 343 --- .../src/com/facebook/widget/ImageRequest.java | 145 -- .../com/facebook/widget/ImageResponse.java | 50 - .../facebook/widget/ImageResponseCache.java | 113 - .../src/com/facebook/widget/LoginButton.java | 673 ------ .../com/facebook/widget/PickerFragment.java | 1040 --------- .../facebook/widget/PlacePickerFragment.java | 530 ----- .../facebook/widget/ProfilePictureView.java | 520 ----- .../widget/SimpleGraphObjectCursor.java | 162 -- .../com/facebook/widget/UrlRedirectCache.java | 101 - .../facebook/widget/UserSettingsFragment.java | 394 ---- .../src/com/facebook/widget/WebDialog.java | 733 ------- .../src/com/facebook/widget/WorkQueue.java | 221 -- facebook/facebook/tests/AndroidManifest.xml | 31 - facebook/facebook/tests/SdkTests.eml | 6 - facebook/facebook/tests/assets/DarkScreen.mov | Bin 1932 -> 0 bytes facebook/facebook/tests/proguard-project.txt | 20 - facebook/facebook/tests/project.properties | 16 - .../layout/friend_picker_test_layout_1.xml | 32 - .../res/layout/place_picker_test_layout_1.xml | 34 - .../facebook/tests/res/values/strings.xml | 20 - .../src/com/facebook/AccessTokenTests.java | 279 --- .../src/com/facebook/AsyncRequestTests.java | 312 --- .../facebook/AuthorizationClientTests.java | 684 ------ .../src/com/facebook/BatchRequestTests.java | 537 ----- .../facebook/FacebookActivityTestCase.java | 680 ------ .../com/facebook/FacebookActivityTests.java | 75 - .../facebook/FacebookRequestErrorTests.java | 321 --- .../src/com/facebook/FacebookTestCase.java | 31 - .../src/com/facebook/GraphRequestTests.java | 90 - .../tests/src/com/facebook/RequestTests.java | 684 ------ .../tests/src/com/facebook/SessionTests.java | 818 ------- .../src/com/facebook/SessionTestsBase.java | 316 --- .../tests/src/com/facebook/SettingsTests.java | 74 - .../SharedPreferencesTokenCacheTests.java | 349 --- .../tests/src/com/facebook/TestBlocker.java | 115 - .../src/com/facebook/TestSessionTests.java | 151 -- .../tests/src/com/facebook/TestUtils.java | 95 - .../facebook/internal/FileLruCacheTests.java | 359 ---- .../internal/SessionTrackerTests.java | 183 -- .../com/facebook/internal/ValidateTests.java | 105 - .../model/GraphObjectFactoryTests.java | 1145 ---------- .../src/com/facebook/model/JsonUtilTests.java | 103 - .../com/facebook/widget/FragmentTestCase.java | 98 - .../widget/FriendPickerFragmentTests.java | 175 -- .../widget/GraphObjectPagingLoaderTests.java | 162 -- .../widget/ImageResponseCacheTests.java | 108 - .../com/facebook/widget/LoginButtonTest.java | 313 --- .../widget/PlacePickerFragmentTests.java | 279 --- .../widget/UserSettingsFragmentTests.java | 65 - .../com/facebook/widget/WorkQueueTests.java | 345 --- facebook/scripts/build_and_test.sh | 51 - facebook/scripts/configure_unit_tests.sh | 50 - 229 files changed, 10 insertions(+), 33812 deletions(-) delete mode 100644 astrid/plugin-src/com/todoroo/astrid/actfm/ActFmLoginActivity.java delete mode 100644 astrid/plugin-src/com/todoroo/astrid/actfm/ActFmPreferences.java delete mode 100644 astrid/res/layout-land/actfm_login_activity.xml delete mode 100644 astrid/res/layout/actfm_login_activity.xml delete mode 100644 astrid/res/xml/preferences_actfm.xml delete mode 100644 facebook/CONTRIBUTING.mdown delete mode 100644 facebook/Facebook.apk delete mode 100644 facebook/LICENSE.txt delete mode 100644 facebook/NOTICE.txt delete mode 100644 facebook/README.mdown delete mode 100644 facebook/facebook.iml delete mode 100644 facebook/facebook/AndroidManifest.xml delete mode 100644 facebook/facebook/TestApp/AndroidManifest.xml delete mode 100644 facebook/facebook/TestApp/SdkTestApp.eml delete mode 100644 facebook/facebook/TestApp/proguard-project.txt delete mode 100644 facebook/facebook/TestApp/project.properties delete mode 100644 facebook/facebook/TestApp/res/drawable-hdpi/ic_launcher.png delete mode 100644 facebook/facebook/TestApp/res/drawable-ldpi/ic_launcher.png delete mode 100644 facebook/facebook/TestApp/res/drawable-mdpi/ic_launcher.png delete mode 100644 facebook/facebook/TestApp/res/layout/main.xml delete mode 100644 facebook/facebook/TestApp/res/values/strings.xml delete mode 100644 facebook/facebook/TestApp/src/com/facebook/sdk/StatusActivity.java delete mode 100644 facebook/facebook/android-sdk.eml delete mode 100644 facebook/facebook/facebook.iml delete mode 120000 facebook/facebook/libs delete mode 100644 facebook/facebook/proguard-project.txt delete mode 100644 facebook/facebook/project.properties delete mode 100644 facebook/facebook/res/drawable-hdpi/com_facebook_button_grey_focused.9.png delete mode 100644 facebook/facebook/res/drawable-hdpi/com_facebook_button_grey_normal.9.png delete mode 100644 facebook/facebook/res/drawable-hdpi/com_facebook_button_grey_pressed.9.png delete mode 100644 facebook/facebook/res/drawable-hdpi/com_facebook_close.png delete mode 100644 facebook/facebook/res/drawable-hdpi/com_facebook_icon.png delete mode 100644 facebook/facebook/res/drawable-hdpi/com_facebook_loginbutton_blue_focused.png delete mode 100644 facebook/facebook/res/drawable-hdpi/com_facebook_loginbutton_blue_normal.png delete mode 100644 facebook/facebook/res/drawable-hdpi/com_facebook_loginbutton_blue_pressed.png delete mode 100644 facebook/facebook/res/drawable-hdpi/com_facebook_logo.png delete mode 100644 facebook/facebook/res/drawable-ldpi/com_facebook_close.png delete mode 100644 facebook/facebook/res/drawable-ldpi/com_facebook_icon.png delete mode 100644 facebook/facebook/res/drawable-xhdpi/com_facebook_button_grey_focused.9.png delete mode 100644 facebook/facebook/res/drawable-xhdpi/com_facebook_button_grey_normal.9.png delete mode 100644 facebook/facebook/res/drawable-xhdpi/com_facebook_button_grey_pressed.9.png delete mode 100755 facebook/facebook/res/drawable-xhdpi/com_facebook_close.png delete mode 100644 facebook/facebook/res/drawable-xhdpi/com_facebook_loginbutton_blue_focused.png delete mode 100644 facebook/facebook/res/drawable-xhdpi/com_facebook_loginbutton_blue_normal.png delete mode 100644 facebook/facebook/res/drawable-xhdpi/com_facebook_loginbutton_blue_pressed.png delete mode 100644 facebook/facebook/res/drawable-xhdpi/com_facebook_logo.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_button_check.xml delete mode 100644 facebook/facebook/res/drawable/com_facebook_button_check_off.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_button_check_on.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_button_grey_focused.9.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_button_grey_normal.9.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_button_grey_pressed.9.png delete mode 100755 facebook/facebook/res/drawable/com_facebook_close.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_icon.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_list_divider.9.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_list_section_header_background.9.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_loginbutton_blue.xml delete mode 100644 facebook/facebook/res/drawable/com_facebook_loginbutton_blue_focused.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_loginbutton_blue_normal.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_loginbutton_blue_pressed.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_loginbutton_silver.xml delete mode 100644 facebook/facebook/res/drawable/com_facebook_logo.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_picker_item_background.xml delete mode 100644 facebook/facebook/res/drawable/com_facebook_picker_list_focused.9.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_picker_list_longpressed.9.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_picker_list_pressed.9.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_picker_list_selector.xml delete mode 100644 facebook/facebook/res/drawable/com_facebook_picker_list_selector_background_transition.xml delete mode 100644 facebook/facebook/res/drawable/com_facebook_picker_list_selector_disabled.9.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_picker_top_button.xml delete mode 100644 facebook/facebook/res/drawable/com_facebook_place_default_icon.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_profile_default_icon.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_profile_picture_blank_portrait.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_profile_picture_blank_square.png delete mode 100644 facebook/facebook/res/drawable/com_facebook_top_background.xml delete mode 100644 facebook/facebook/res/drawable/com_facebook_top_button.xml delete mode 100644 facebook/facebook/res/drawable/com_facebook_usersettingsfragment_background_gradient.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_friendpickerfragment.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_login_activity_layout.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_picker_activity_circle_row.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_picker_checkbox.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_picker_image.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_picker_list_row.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_picker_list_section_header.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_picker_search_box.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_picker_title_bar.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_picker_title_bar_stub.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_placepickerfragment.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_placepickerfragment_list_row.xml delete mode 100644 facebook/facebook/res/layout/com_facebook_usersettingsfragment.xml delete mode 100644 facebook/facebook/res/values-es/strings.xml delete mode 100644 facebook/facebook/res/values-he/strings.xml delete mode 100644 facebook/facebook/res/values-iw/strings.xml delete mode 100644 facebook/facebook/res/values/attrs.xml delete mode 100644 facebook/facebook/res/values/strings.xml delete mode 100644 facebook/facebook/res/values/styles.xml delete mode 100644 facebook/facebook/src/com/facebook/AccessToken.java delete mode 100644 facebook/facebook/src/com/facebook/AccessTokenSource.java delete mode 100644 facebook/facebook/src/com/facebook/AuthorizationClient.java delete mode 100644 facebook/facebook/src/com/facebook/FacebookAuthorizationException.java delete mode 100644 facebook/facebook/src/com/facebook/FacebookDialogException.java delete mode 100644 facebook/facebook/src/com/facebook/FacebookException.java delete mode 100644 facebook/facebook/src/com/facebook/FacebookGraphObjectException.java delete mode 100644 facebook/facebook/src/com/facebook/FacebookOperationCanceledException.java delete mode 100644 facebook/facebook/src/com/facebook/FacebookRequestError.java delete mode 100644 facebook/facebook/src/com/facebook/FacebookSdkVersion.java delete mode 100644 facebook/facebook/src/com/facebook/FacebookServiceException.java delete mode 100644 facebook/facebook/src/com/facebook/GetTokenClient.java delete mode 100644 facebook/facebook/src/com/facebook/HttpMethod.java delete mode 100644 facebook/facebook/src/com/facebook/LegacyHelper.java delete mode 100644 facebook/facebook/src/com/facebook/LoggingBehavior.java delete mode 100644 facebook/facebook/src/com/facebook/LoginActivity.java delete mode 100644 facebook/facebook/src/com/facebook/NativeProtocol.java delete mode 100644 facebook/facebook/src/com/facebook/NonCachingTokenCachingStrategy.java delete mode 100644 facebook/facebook/src/com/facebook/Request.java delete mode 100644 facebook/facebook/src/com/facebook/RequestAsyncTask.java delete mode 100644 facebook/facebook/src/com/facebook/RequestBatch.java delete mode 100644 facebook/facebook/src/com/facebook/Response.java delete mode 100644 facebook/facebook/src/com/facebook/Session.java delete mode 100644 facebook/facebook/src/com/facebook/SessionDefaultAudience.java delete mode 100644 facebook/facebook/src/com/facebook/SessionLoginBehavior.java delete mode 100644 facebook/facebook/src/com/facebook/SessionState.java delete mode 100644 facebook/facebook/src/com/facebook/Settings.java delete mode 100644 facebook/facebook/src/com/facebook/SharedPreferencesTokenCachingStrategy.java delete mode 100644 facebook/facebook/src/com/facebook/TestSession.java delete mode 100644 facebook/facebook/src/com/facebook/TokenCachingStrategy.java delete mode 100644 facebook/facebook/src/com/facebook/UiLifecycleHelper.java delete mode 100644 facebook/facebook/src/com/facebook/android/AsyncFacebookRunner.java delete mode 100644 facebook/facebook/src/com/facebook/android/DialogError.java delete mode 100644 facebook/facebook/src/com/facebook/android/Facebook.java delete mode 100644 facebook/facebook/src/com/facebook/android/FacebookError.java delete mode 100644 facebook/facebook/src/com/facebook/android/FbDialog.java delete mode 100644 facebook/facebook/src/com/facebook/android/Util.java delete mode 100644 facebook/facebook/src/com/facebook/internal/CacheableRequestBatch.java delete mode 100644 facebook/facebook/src/com/facebook/internal/FileLruCache.java delete mode 100644 facebook/facebook/src/com/facebook/internal/Logger.java delete mode 100644 facebook/facebook/src/com/facebook/internal/ServerProtocol.java delete mode 100644 facebook/facebook/src/com/facebook/internal/SessionAuthorizationType.java delete mode 100644 facebook/facebook/src/com/facebook/internal/SessionTracker.java delete mode 100644 facebook/facebook/src/com/facebook/internal/Utility.java delete mode 100644 facebook/facebook/src/com/facebook/internal/Validate.java delete mode 100644 facebook/facebook/src/com/facebook/internal/package-info.java delete mode 100644 facebook/facebook/src/com/facebook/model/GraphLocation.java delete mode 100644 facebook/facebook/src/com/facebook/model/GraphMultiResult.java delete mode 100644 facebook/facebook/src/com/facebook/model/GraphObject.java delete mode 100644 facebook/facebook/src/com/facebook/model/GraphObjectList.java delete mode 100644 facebook/facebook/src/com/facebook/model/GraphPlace.java delete mode 100644 facebook/facebook/src/com/facebook/model/GraphUser.java delete mode 100644 facebook/facebook/src/com/facebook/model/JsonUtil.java delete mode 100644 facebook/facebook/src/com/facebook/model/OpenGraphAction.java delete mode 100644 facebook/facebook/src/com/facebook/model/PropertyName.java delete mode 100644 facebook/facebook/src/com/facebook/widget/FacebookFragment.java delete mode 100644 facebook/facebook/src/com/facebook/widget/FriendPickerFragment.java delete mode 100644 facebook/facebook/src/com/facebook/widget/GraphObjectAdapter.java delete mode 100644 facebook/facebook/src/com/facebook/widget/GraphObjectCursor.java delete mode 100644 facebook/facebook/src/com/facebook/widget/GraphObjectPagingLoader.java delete mode 100644 facebook/facebook/src/com/facebook/widget/ImageDownloader.java delete mode 100644 facebook/facebook/src/com/facebook/widget/ImageRequest.java delete mode 100644 facebook/facebook/src/com/facebook/widget/ImageResponse.java delete mode 100644 facebook/facebook/src/com/facebook/widget/ImageResponseCache.java delete mode 100644 facebook/facebook/src/com/facebook/widget/LoginButton.java delete mode 100644 facebook/facebook/src/com/facebook/widget/PickerFragment.java delete mode 100644 facebook/facebook/src/com/facebook/widget/PlacePickerFragment.java delete mode 100644 facebook/facebook/src/com/facebook/widget/ProfilePictureView.java delete mode 100644 facebook/facebook/src/com/facebook/widget/SimpleGraphObjectCursor.java delete mode 100644 facebook/facebook/src/com/facebook/widget/UrlRedirectCache.java delete mode 100644 facebook/facebook/src/com/facebook/widget/UserSettingsFragment.java delete mode 100644 facebook/facebook/src/com/facebook/widget/WebDialog.java delete mode 100644 facebook/facebook/src/com/facebook/widget/WorkQueue.java delete mode 100644 facebook/facebook/tests/AndroidManifest.xml delete mode 100644 facebook/facebook/tests/SdkTests.eml delete mode 100644 facebook/facebook/tests/assets/DarkScreen.mov delete mode 100644 facebook/facebook/tests/proguard-project.txt delete mode 100644 facebook/facebook/tests/project.properties delete mode 100644 facebook/facebook/tests/res/layout/friend_picker_test_layout_1.xml delete mode 100644 facebook/facebook/tests/res/layout/place_picker_test_layout_1.xml delete mode 100644 facebook/facebook/tests/res/values/strings.xml delete mode 100644 facebook/facebook/tests/src/com/facebook/AccessTokenTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/AsyncRequestTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/AuthorizationClientTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/BatchRequestTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/FacebookActivityTestCase.java delete mode 100644 facebook/facebook/tests/src/com/facebook/FacebookActivityTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/FacebookRequestErrorTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/FacebookTestCase.java delete mode 100644 facebook/facebook/tests/src/com/facebook/GraphRequestTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/RequestTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/SessionTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/SessionTestsBase.java delete mode 100644 facebook/facebook/tests/src/com/facebook/SettingsTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/SharedPreferencesTokenCacheTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/TestBlocker.java delete mode 100644 facebook/facebook/tests/src/com/facebook/TestSessionTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/TestUtils.java delete mode 100644 facebook/facebook/tests/src/com/facebook/internal/FileLruCacheTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/internal/SessionTrackerTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/internal/ValidateTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/model/GraphObjectFactoryTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/model/JsonUtilTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/widget/FragmentTestCase.java delete mode 100644 facebook/facebook/tests/src/com/facebook/widget/FriendPickerFragmentTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/widget/GraphObjectPagingLoaderTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/widget/ImageResponseCacheTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/widget/LoginButtonTest.java delete mode 100644 facebook/facebook/tests/src/com/facebook/widget/PlacePickerFragmentTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/widget/UserSettingsFragmentTests.java delete mode 100644 facebook/facebook/tests/src/com/facebook/widget/WorkQueueTests.java delete mode 100755 facebook/scripts/build_and_test.sh delete mode 100755 facebook/scripts/configure_unit_tests.sh diff --git a/.idea/compiler.xml b/.idea/compiler.xml index e035e2a3a..1959ac687 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -11,7 +11,6 @@ - diff --git a/.idea/modules.xml b/.idea/modules.xml index 1eccb6c79..e4f34109f 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -8,7 +8,6 @@ - diff --git a/.idea/scopes/Astrid.xml b/.idea/scopes/Astrid.xml index cf1e37295..d6058e323 100644 --- a/.idea/scopes/Astrid.xml +++ b/.idea/scopes/Astrid.xml @@ -1,3 +1,3 @@ - + \ No newline at end of file diff --git a/astrid/AndroidManifest.xml b/astrid/AndroidManifest.xml index 3796bdbc9..8bf032198 100644 --- a/astrid/AndroidManifest.xml +++ b/astrid/AndroidManifest.xml @@ -105,9 +105,6 @@ android:hardwareAccelerated="false" android:manageSpaceActivity="com.todoroo.astrid.core.OldTaskPreferences"> - @@ -402,26 +399,6 @@ - - - - - - - - - - - - diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/ActFmLoginActivity.java b/astrid/plugin-src/com/todoroo/astrid/actfm/ActFmLoginActivity.java deleted file mode 100644 index a8ecff720..000000000 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/ActFmLoginActivity.java +++ /dev/null @@ -1,960 +0,0 @@ -/** - * Copyright (c) 2012 Todoroo Inc - * - * See the file "LICENSE" for the full license governing this code. - */ -package com.todoroo.astrid.actfm; - -import android.app.AlertDialog; -import android.app.ProgressDialog; -import android.content.DialogInterface; -import android.content.Intent; -import android.content.res.Configuration; -import android.graphics.Color; -import android.graphics.PixelFormat; -import android.os.Build; -import android.os.Bundle; -import android.text.InputType; -import android.text.SpannableString; -import android.text.Spanned; -import android.text.TextPaint; -import android.text.TextUtils; -import android.text.method.PasswordTransformationMethod; -import android.text.style.ClickableSpan; -import android.text.style.UnderlineSpan; -import android.util.DisplayMetrics; -import android.util.Log; -import android.view.View; -import android.view.View.OnClickListener; -import android.view.ViewGroup.LayoutParams; -import android.view.WindowManager; -import android.widget.EditText; -import android.widget.LinearLayout; -import android.widget.ScrollView; -import android.widget.TextView; -import android.widget.Toast; - -import com.actionbarsherlock.app.SherlockFragmentActivity; -import com.facebook.Request; -import com.facebook.Request.GraphUserCallback; -import com.facebook.Response; -import com.facebook.Session; -import com.facebook.SessionState; -import com.facebook.UiLifecycleHelper; -import com.facebook.model.GraphUser; -import com.facebook.widget.LoginButton; -import com.google.android.googlelogin.GoogleLoginServiceConstants; -import com.google.android.googlelogin.GoogleLoginServiceHelper; -import com.timsu.astrid.GCMIntentService; -import com.timsu.astrid.R; -import com.todoroo.andlib.data.TodorooCursor; -import com.todoroo.andlib.service.Autowired; -import com.todoroo.andlib.service.ContextManager; -import com.todoroo.andlib.service.DependencyInjectionService; -import com.todoroo.andlib.service.ExceptionService; -import com.todoroo.andlib.sql.Criterion; -import com.todoroo.andlib.sql.Query; -import com.todoroo.andlib.utility.AndroidUtilities; -import com.todoroo.andlib.utility.DateUtilities; -import com.todoroo.andlib.utility.DialogUtilities; -import com.todoroo.andlib.utility.Preferences; -import com.todoroo.astrid.actfm.sync.ActFmInvoker; -import com.todoroo.astrid.actfm.sync.ActFmPreferenceService; -import com.todoroo.astrid.actfm.sync.ActFmServiceException; -import com.todoroo.astrid.actfm.sync.ActFmSyncMonitor; -import com.todoroo.astrid.actfm.sync.ActFmSyncThread; -import com.todoroo.astrid.actfm.sync.messages.ConstructOutstandingTableFromMasterTable; -import com.todoroo.astrid.actfm.sync.messages.ConstructTaskOutstandingTableFromMasterTable; -import com.todoroo.astrid.actfm.sync.messages.NameMaps; -import com.todoroo.astrid.activity.Eula; -import com.todoroo.astrid.dao.Database; -import com.todoroo.astrid.dao.MetadataDao; -import com.todoroo.astrid.dao.MetadataDao.MetadataCriteria; -import com.todoroo.astrid.dao.RemoteModelDao; -import com.todoroo.astrid.dao.TagDataDao; -import com.todoroo.astrid.dao.TagMetadataDao; -import com.todoroo.astrid.dao.TagOutstandingDao; -import com.todoroo.astrid.dao.TaskAttachmentDao; -import com.todoroo.astrid.dao.TaskAttachmentOutstandingDao; -import com.todoroo.astrid.dao.TaskDao; -import com.todoroo.astrid.dao.TaskListMetadataDao; -import com.todoroo.astrid.dao.TaskListMetadataOutstandingDao; -import com.todoroo.astrid.dao.TaskOutstandingDao; -import com.todoroo.astrid.dao.UserActivityDao; -import com.todoroo.astrid.dao.UserActivityOutstandingDao; -import com.todoroo.astrid.dao.UserDao; -import com.todoroo.astrid.data.Metadata; -import com.todoroo.astrid.data.RemoteModel; -import com.todoroo.astrid.data.TagData; -import com.todoroo.astrid.data.TagOutstanding; -import com.todoroo.astrid.data.Task; -import com.todoroo.astrid.data.TaskListMetadata; -import com.todoroo.astrid.data.TaskListMetadataOutstanding; -import com.todoroo.astrid.data.UserActivity; -import com.todoroo.astrid.data.UserActivityOutstanding; -import com.todoroo.astrid.gtasks.auth.ModernAuthManager; -import com.todoroo.astrid.helper.UUIDHelper; -import com.todoroo.astrid.service.AstridDependencyInjector; -import com.todoroo.astrid.service.MarketStrategy.AmazonMarketStrategy; -import com.todoroo.astrid.service.SyncV2Service; -import com.todoroo.astrid.service.TaskService; -import com.todoroo.astrid.subtasks.AstridOrderedListUpdater; -import com.todoroo.astrid.subtasks.AstridOrderedListUpdater.Node; -import com.todoroo.astrid.subtasks.SubtasksHelper; -import com.todoroo.astrid.subtasks.SubtasksHelper.TreeRemapHelper; -import com.todoroo.astrid.tags.TaskToTagMetadata; - -import org.json.JSONObject; - -import java.io.IOException; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Map.Entry; -import java.util.Random; -import java.util.Set; - -/** - * This activity allows users to sign in or log in to Astrid.com - * - * @author Tim Su - */ -public class ActFmLoginActivity extends SherlockFragmentActivity { - - @Autowired - protected Database database; - @Autowired - protected ExceptionService exceptionService; - @Autowired - protected TaskService taskService; - @Autowired - protected ActFmPreferenceService actFmPreferenceService; - - @Autowired - private TaskDao taskDao; - @Autowired - private TaskOutstandingDao taskOutstandingDao; - @Autowired - private TaskAttachmentDao taskAttachmentDao; - @Autowired - private TaskAttachmentOutstandingDao taskAttachmentOutstandingDao; - @Autowired - private TagDataDao tagDataDao; - @Autowired - private TagOutstandingDao tagOutstandingDao; - @Autowired - private UserDao userDao; - @Autowired - private UserActivityDao userActivityDao; - @Autowired - private UserActivityOutstandingDao userActivityOutstandingDao; - @Autowired - private TaskListMetadataDao taskListMetadataDao; - @Autowired - private TaskListMetadataOutstandingDao taskListMetadataOutstandingDao; - @Autowired - private MetadataDao metadataDao; - @Autowired - private TagMetadataDao tagMetadataDao; - - - @Autowired - protected SyncV2Service syncService; - private final ActFmInvoker actFmInvoker = new ActFmInvoker(); - private Random rand; - - protected TextView errors; - - public static final String SHOW_TOAST = "show_toast"; //$NON-NLS-1$ - - // --- ui initialization - - private static final int REQUEST_CODE_GOOGLE_ACCOUNTS = 1; - private static final int REQUEST_CODE_GOOGLE = 2; - - static { - AstridDependencyInjector.initialize(); - } - - protected int getContentViewResource() { - return R.layout.actfm_login_activity; - } - - protected int getTitleResource() { - return R.string.actfm_ALA_title; - } - - public ActFmLoginActivity() { - DependencyInjectionService.getInstance().inject(this); - } - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - ContextManager.setContext(this); - - setContentView(getContentViewResource()); - if (getTitleResource() != 0) { - setTitle(getTitleResource()); - } - - if (getSupportActionBar() != null) { - getSupportActionBar().hide(); - } - - rand = new Random(DateUtilities.now()); - - uiHelper = new UiLifecycleHelper(this, callback); - uiHelper.onCreate(savedInstanceState); - initializeUI(); - - getWindow().setFormat(PixelFormat.RGBA_8888); - getWindow().addFlags(WindowManager.LayoutParams.FLAG_DITHER); - - setResult(RESULT_CANCELED); - } - - - /* (non-Javadoc) - * @see android.app.Activity#onConfigurationChanged(android.content.res.Configuration) - */ - @Override - public void onConfigurationChanged(Configuration newConfig) { - super.onConfigurationChanged(newConfig); - setContentView(getContentViewResource()); - } - - @Override - protected void onResume() { - super.onResume(); - uiHelper.onResume(); - } - - @Override - protected void onPause() { - super.onPause(); - uiHelper.onPause(); - } - - @Override - protected void onDestroy() { - super.onDestroy(); - uiHelper.onDestroy(); - } - - protected void setupTermsOfService(TextView tos) { - OnClickListener showTosListener = new OnClickListener() { - @Override - public void onClick(View v) { - Eula.showEulaBasic(ActFmLoginActivity.this); - } - }; - - tos.setOnClickListener(showTosListener); - - String tosBase = getString(R.string.welcome_login_tos_base); - String tosLink = getString(R.string.welcome_login_tos_link); - SpannableString link = getLinkStringWithCustomInterval(tosBase, tosLink, tosBase.length() + 1, 0, - showTosListener); - tos.setText(link); - } - - - protected SpannableString getLinkStringWithCustomInterval(String base, String linkComponent, - int start, int endOffset, final OnClickListener listener) { - SpannableString link = new SpannableString(String.format("%s %s", //$NON-NLS-1$ - base, linkComponent)); - ClickableSpan linkSpan = new ClickableSpan() { - @Override - public void onClick(View widget) { - listener.onClick(widget); - } - - @Override - public void updateDrawState(TextPaint ds) { - ds.setUnderlineText(true); - ds.setColor(Color.rgb(68, 68, 68)); - } - }; - link.setSpan(linkSpan, start, link.length() + endOffset, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); - return link; - } - - @SuppressWarnings("nls") - protected void initializeUI() { - errors = (TextView) findViewById(R.id.error); - LoginButton loginButton = (LoginButton) findViewById(R.id.fb_login); - if (loginButton == null) { - return; - } - - loginButton.setReadPermissions(Arrays.asList("email", "offline_access")); - - View googleLogin = findViewById(R.id.gg_login); - if (AmazonMarketStrategy.isKindleFire()) { - googleLogin.setVisibility(View.GONE); - } - googleLogin.setOnClickListener(googleListener); - - View fbLogin = findViewById(R.id.fb_login_dummy); - fbLogin.setOnClickListener(facebookListener); - - TextView signUp = (TextView) findViewById(R.id.pw_signup); - signUp.setOnClickListener(signUpListener); - - TextView signIn = (TextView) findViewById(R.id.pw_login); - signIn.setOnClickListener(signInListener); - - setupTermsOfService((TextView) findViewById(R.id.tos)); - } - - // --- event handler - - protected final OnClickListener googleListener = new OnClickListener() { - @Override - public void onClick(View arg0) { - Intent intent = new Intent(ActFmLoginActivity.this, - ActFmGoogleAuthActivity.class); - startActivityForResult(intent, REQUEST_CODE_GOOGLE); - } - }; - - protected final OnClickListener facebookListener = new OnClickListener() { - @Override - public void onClick(View v) { - Session session = Session.getActiveSession(); - if (session != null && session.isOpened()) { - facebookSuccess(session); - } else { - View fbLogin = findViewById(R.id.fb_login); - fbLogin.performClick(); - } - } - }; - - protected final OnClickListener signUpListener = new OnClickListener() { - @Override - public void onClick(View v) { - final LinearLayout body = new LinearLayout(ActFmLoginActivity.this); - body.setOrientation(LinearLayout.VERTICAL); - body.setPadding(10, 0, 10, 0); - - final EditText firstNameField = addEditField(body, - R.string.actfm_ALA_firstname_label); - firstNameField.setInputType(InputType.TYPE_CLASS_TEXT | - InputType.TYPE_TEXT_VARIATION_PERSON_NAME | - InputType.TYPE_TEXT_FLAG_CAP_WORDS); - - final EditText lastNameField = addEditField(body, - R.string.actfm_ALA_lastname_label); - lastNameField.setInputType(InputType.TYPE_CLASS_TEXT | - InputType.TYPE_TEXT_VARIATION_PERSON_NAME | - InputType.TYPE_TEXT_FLAG_CAP_WORDS); - - final EditText email = addEditField(body, - R.string.actfm_ALA_email_label); - email.setInputType(InputType.TYPE_CLASS_TEXT | - InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS); - getCredentials(new OnGetCredentials() { - @Override - public void getCredentials(String[] accounts) { - if (accounts != null && accounts.length > 0) { - email.setText(accounts[0]); - } - } - }); - - ScrollView bodyScroll = new ScrollView(ActFmLoginActivity.this); - bodyScroll.addView(body); - - new AlertDialog.Builder(ActFmLoginActivity.this).setView( - bodyScroll).setIcon(R.drawable.icon_32).setTitle( - R.string.actfm_ALA_signup_title).setPositiveButton( - android.R.string.ok, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dlg, int which) { - String firstName = firstNameField.getText().toString(); - String lastName = lastNameField.getText().toString(); - - AndroidUtilities.hideSoftInputForViews(ActFmLoginActivity.this, firstNameField, lastNameField, email); - authenticate(email.getText().toString(), - firstName, lastName, ActFmInvoker.PROVIDER_PASSWORD, generateRandomPassword()); - } - }).setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dlg, int which) { - AndroidUtilities.hideSoftInputForViews(ActFmLoginActivity.this, firstNameField, lastNameField, email); - } - }).show(); - } - }; - - protected final OnClickListener signInListener = new OnClickListener() { - @Override - public void onClick(View v) { - final LinearLayout body = new LinearLayout(ActFmLoginActivity.this); - body.setOrientation(LinearLayout.VERTICAL); - body.setPadding(10, 0, 10, 0); - - final EditText email = addEditField(body, - R.string.actfm_ALA_email_label); - email.setInputType(InputType.TYPE_CLASS_TEXT | - InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS); - getCredentials(new OnGetCredentials() { - @Override - public void getCredentials(String[] accounts) { - if (accounts != null && accounts.length > 0) { - email.setText(accounts[0]); - } - } - }); - - final EditText password = addEditField(body, - R.string.actfm_ALA_password_label); - password.setInputType(InputType.TYPE_CLASS_TEXT | - InputType.TYPE_TEXT_VARIATION_PASSWORD); - password.setTransformationMethod(new PasswordTransformationMethod()); - - TextView forgotPassword = new TextView(ActFmLoginActivity.this); - SpannableString text = new SpannableString(getString(R.string.actfm_ALA_forgot_password)); - text.setSpan(new UnderlineSpan(), 0, text.length(), 0); - forgotPassword.setText(text); - LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); - DisplayMetrics metrics = getResources().getDisplayMetrics(); - lp.setMargins(0, (int) (8 * metrics.density), 0, (int) (8 * metrics.density)); - forgotPassword.setLayoutParams(lp); - forgotPassword.setOnClickListener(new OnClickListener() { - @Override - public void onClick(View view) { - forgotPassword(email.getText().toString()); - } - }); - body.addView(forgotPassword); - - - ScrollView bodyScroll = new ScrollView(ActFmLoginActivity.this); - bodyScroll.addView(body); - - new AlertDialog.Builder(ActFmLoginActivity.this).setView( - bodyScroll).setIcon(R.drawable.icon_32).setTitle( - R.string.actfm_ALA_login_title).setPositiveButton( - android.R.string.ok, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dlg, int which) { - AndroidUtilities.hideSoftInputForViews(ActFmLoginActivity.this, email, password); - authenticate(email.getText().toString(), - "", "", ActFmInvoker.PROVIDER_PASSWORD, //$NON-NLS-1$//$NON-NLS-2$ - password.getText().toString()); - } - }).setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dlg, int which) { - AndroidUtilities.hideSoftInputForViews(ActFmLoginActivity.this, email, password); - } - }).show(); - } - }; - - private void forgotPassword(final String email) { - if (TextUtils.isEmpty(email)) { - DialogUtilities.okDialog(this, getString(R.string.actfm_ALA_enter_email), null); - } else { - final ProgressDialog pd = DialogUtilities.progressDialog(this, getString(R.string.DLG_please_wait)); - new Thread(new Runnable() { - @Override - public void run() { - try { - actFmInvoker.invoke("user_reset_password", "email", email); //$NON-NLS-1$ //$NON-NLS-2$ - DialogUtilities.okDialog(ActFmLoginActivity.this, getString(R.string.actfm_ALA_reset_sent, email), null); - } catch (IOException e) { - handleError(e); - } finally { - DialogUtilities.dismissDialog(ActFmLoginActivity.this, pd); - } - } - }).start(); - } - } - - private String generateRandomPassword() { - String acceptable = "abcdefghijklmnopqrstuvwxyz1234567890"; //$NON-NLS-1$ - char[] chars = new char[8]; - char last = 'a'; - for (int i = 0; i < chars.length; i++) { - char r = acceptable.charAt(rand.nextInt(acceptable.length())); - while (!checkSimilar(last, r)) { - r = acceptable.charAt(rand.nextInt(acceptable.length())); - } - last = r; - chars[i] = r; - } - return new String(chars); - } - - @SuppressWarnings("nls") - private boolean checkSimilar(char last, char check) { - String iSimilar = "ijl1!"; - String oSimilar = "oO0"; - String puncSimilar = ".,"; - - boolean match = iSimilar.indexOf(last) > 0 && iSimilar.indexOf(check) > 0 - || oSimilar.indexOf(last) > 0 && oSimilar.indexOf(check) > 0 - || puncSimilar.indexOf(last) > 0 && puncSimilar.indexOf(check) > 0; - - if (match) { - return false; - } - return true; - } - - private EditText addEditField(LinearLayout body, int hint) { - TextView label = new TextView(ActFmLoginActivity.this); - label.setText(hint); - body.addView(label); - EditText field = new EditText(ActFmLoginActivity.this); - field.setHint(hint); - body.addView(field); - return field; - } - - // --- facebook handler - - @SuppressWarnings("nls") - private void onSessionStateChange(Session session, SessionState state, Exception exception) { - if (state.isOpened()) { - Log.e("fb-login", "State opened"); - facebookSuccess(session); - } else if (state.isClosed()) { - Log.e("fb-login", "State closed"); - } - } - - private void facebookSuccess(Session session) { - progressDialog = DialogUtilities.progressDialog(this, - getString(R.string.DLG_please_wait)); - Request request = Request.newMeRequest(session, new GraphUserCallback() { - @Override - public void onCompleted(GraphUser user, Response response) { - try { - String email = user.getInnerJSONObject().optString("email"); //$NON-NLS-1$ - authenticate(email, user.getFirstName(), user.getLastName(), ActFmInvoker.PROVIDER_FACEBOOK, Session.getActiveSession().getAccessToken()); - } catch (Exception e) { - handleError(e); - } - } - }); - request.executeAsync(); - } - - private UiLifecycleHelper uiHelper; - - private final Session.StatusCallback callback = new Session.StatusCallback() { - @Override - public void call(Session session, SessionState state, Exception exception) { - onSessionStateChange(session, state, exception); - } - }; - - private ProgressDialog progressDialog; - - // --- utilities - - @SuppressWarnings("nls") - public void authenticate(final String email, final String firstName, final String lastName, final String provider, - final String secret) { - if (progressDialog == null) { - progressDialog = DialogUtilities.progressDialog(this, - getString(R.string.DLG_please_wait)); - } - - new Thread() { - @Override - public void run() { - try { - final JSONObject result = actFmInvoker.authenticate(email, firstName, lastName, - provider, secret); - final String token = actFmInvoker.getToken(); - - if (result.optBoolean("new")) { // Report new user statistic - } - // Successful login, create outstanding entries - String lastId = ActFmPreferenceService.userId(); //Preferences.getLong(ActFmPreferenceService.PREF_USER_ID, 0); - - if (!TextUtils.isEmpty(token) && !RemoteModel.isValidUuid(lastId)) { - constructOutstandingTables(); - } - runOnUiThread(new Runnable() { - @Override - public void run() { - DialogUtilities.dismissDialog(ActFmLoginActivity.this, progressDialog); - progressDialog = null; - postAuthenticate(result, token); - } - }); - } catch (IOException e) { - handleError(e); - } finally { - runOnUiThread(new Runnable() { - @Override - public void run() { - if (progressDialog != null) { - DialogUtilities.dismissDialog(ActFmLoginActivity.this, progressDialog); - } - } - }); - } - } - }.start(); - } - - private void constructOutstandingTables() { - new ConstructTaskOutstandingTableFromMasterTable(NameMaps.TABLE_ID_TASKS, taskDao, taskOutstandingDao, metadataDao, Task.CREATION_DATE).execute(); - new ConstructOutstandingTableFromMasterTable(NameMaps.TABLE_ID_TAGS, tagDataDao, tagOutstandingDao, TagData.CREATION_DATE).execute(); - new ConstructOutstandingTableFromMasterTable(NameMaps.TABLE_ID_USER_ACTIVITY, userActivityDao, userActivityOutstandingDao, UserActivity.CREATED_AT).execute(); - new ConstructOutstandingTableFromMasterTable(NameMaps.TABLE_ID_TASK_LIST_METADATA, taskListMetadataDao, taskListMetadataOutstandingDao, null).execute(); - } - - @SuppressWarnings("nls") - private void postAuthenticate(final JSONObject result, final String token) { - String lastLoggedInUser = ActFmPreferenceService.userId(); - - if (RemoteModel.isValidUuid(lastLoggedInUser)) { - String newUserId = Long.toString(result.optLong("id")); - if (!lastLoggedInUser.equals(newUserId)) { - // In this case, we need to either make all data private or clear all data - // Prompt for choice - DialogUtilities.okCancelCustomDialog(this, - getString(R.string.actfm_logged_in_different_user_title), - getString(R.string.actfm_logged_in_different_user_body), - R.string.actfm_logged_in_different_user_clear_data, - R.string.actfm_logged_in_different_user_keep_data, - android.R.drawable.ic_dialog_alert, - new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - ActFmSyncThread.clearTablePushedAtValues(); - deleteDatabase(database.getName()); - finishSignIn(result, token, true); - } - }, - new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - final ProgressDialog pd = DialogUtilities.progressDialog(ActFmLoginActivity.this, getString(R.string.actfm_logged_in_different_user_processing)); - - new Thread(new Runnable() { - @Override - public void run() { - rebuildAllSyncData(); - runOnUiThread(new Runnable() { - @Override - public void run() { - finishSignIn(result, token, true); - } - }); - pd.dismiss(); - } - }).start(); - } - } - ); - } else { - finishSignIn(result, token, false); - } - } else { - finishSignIn(result, token, false); - } - } - - private void rebuildAllSyncData() { - // Delete all tasks not assigned to self - taskService.deleteWhere(Criterion.or(Task.USER_ID.neq(0), Task.DELETION_DATE.gt(0))); - // Delete user table - userDao.deleteWhere(Criterion.all); - // Delete comments this user didn't make - userActivityDao.deleteWhere(Criterion.or(UserActivity.USER_UUID.neq(0), UserActivity.DELETED_AT.gt(0))); - // Delete attachments table - taskAttachmentDao.deleteWhere(Criterion.all); - // Delete deleted tags - tagDataDao.deleteWhere(TagData.DELETION_DATE.gt(0)); - // Delete deleted metadata - metadataDao.deleteWhere(Metadata.DELETION_DATE.gt(0)); - - // Clear all outstanding tables - taskOutstandingDao.deleteWhere(Criterion.all); - tagOutstandingDao.deleteWhere(Criterion.all); - userActivityOutstandingDao.deleteWhere(Criterion.all); - taskListMetadataOutstandingDao.deleteWhere(Criterion.all); - taskAttachmentOutstandingDao.deleteWhere(Criterion.all); - - // Make all tags private - tagMetadataDao.deleteWhere(Criterion.all); - - // Generate new uuids for all tasks/tags/user activity/task list metadata and update links - generateNewUuids(); - ActFmSyncThread.clearTablePushedAtValues(); - - constructOutstandingTables(); - } - - private void generateNewUuids() { - final HashMap uuidTaskMap = new HashMap(); - HashMap uuidTagMap = new HashMap(); - HashMap uuidUserActivityMap = new HashMap(); - HashMap uuidTaskListMetadataMap = new HashMap(); - - mapUuids(taskDao, uuidTaskMap); - mapUuids(tagDataDao, uuidTagMap); - mapUuids(userActivityDao, uuidUserActivityMap); - mapUuids(taskListMetadataDao, uuidTaskListMetadataMap); - - Task t = new Task(); - TagData td = new TagData(); - Metadata m = new Metadata(); - UserActivity ua = new UserActivity(); - TaskListMetadata tlm = new TaskListMetadata(); - - Set> entries = uuidTaskMap.entrySet(); - for (Entry e : entries) { - t.clear(); - m.clear(); - ua.clear(); - - String oldUuid = e.getKey(); - String newUuid = e.getValue(); - - t.setValue(Task.UUID, newUuid); - t.setValue(Task.PUSHED_AT, 0L); - t.setValue(Task.ATTACHMENTS_PUSHED_AT, 0L); - t.setValue(Task.USER_ACTIVITIES_PUSHED_AT, 0L); - t.setValue(Task.HISTORY_FETCH_DATE, 0L); - ua.setValue(UserActivity.TARGET_ID, newUuid); - m.setValue(TaskToTagMetadata.TASK_UUID, newUuid); - - taskDao.update(Task.UUID.eq(oldUuid), t); - metadataDao.update(Criterion.and(MetadataCriteria.withKey(TaskToTagMetadata.KEY), TaskToTagMetadata.TASK_UUID.eq(oldUuid)), m); - userActivityDao.update(UserActivity.TARGET_ID.eq(oldUuid), ua); - } - - entries = uuidTagMap.entrySet(); - for (Entry e : entries) { - td.clear(); - ua.clear(); - m.clear(); - tlm.clear(); - - String oldUuid = e.getKey(); - String newUuid = e.getValue(); - - td.setValue(TagData.UUID, newUuid); - td.setValue(TagData.USER_ID, Task.USER_ID_SELF); - td.setValue(TagData.PUSHED_AT, 0L); - td.setValue(TagData.TASKS_PUSHED_AT, 0L); - td.setValue(TagData.METADATA_PUSHED_AT, 0L); - td.setValue(TagData.USER_ACTIVITIES_PUSHED_AT, 0L); - ua.setValue(UserActivity.TARGET_ID, newUuid); - m.setValue(TaskToTagMetadata.TAG_UUID, newUuid); - tlm.setValue(TaskListMetadata.TAG_UUID, newUuid); - - tagDataDao.update(TagData.UUID.eq(oldUuid), td); - userActivityDao.update(UserActivity.TARGET_ID.eq(oldUuid), ua); - metadataDao.update(Criterion.and(MetadataCriteria.withKey(TaskToTagMetadata.KEY), TaskToTagMetadata.TAG_UUID.eq(oldUuid)), m); - taskListMetadataDao.update(TaskListMetadata.TAG_UUID.eq(oldUuid), tlm); - } - - entries = uuidUserActivityMap.entrySet(); - for (Entry e : entries) { - ua.clear(); - - String oldUuid = e.getKey(); - String newUuid = e.getValue(); - - ua.setValue(UserActivity.UUID, newUuid); - ua.setValue(UserActivity.PUSHED_AT, 0L); - userActivityDao.update(UserActivity.UUID.eq(oldUuid), ua); - } - - TodorooCursor tlmCursor = taskListMetadataDao.query(Query.select(TaskListMetadata.ID, TaskListMetadata.UUID, TaskListMetadata.FILTER, TaskListMetadata.TAG_UUID, - TaskListMetadata.TASK_IDS, TaskListMetadata.CHILD_TAG_IDS)); - try { - for (tlmCursor.moveToFirst(); !tlmCursor.isAfterLast(); tlmCursor.moveToNext()) { - tlm.clear(); - tlm.readFromCursor(tlmCursor); - String filterId = tlm.getValue(TaskListMetadata.FILTER); - String tagUuid = tlm.getValue(TaskListMetadata.TAG_UUID); - - // Hack to make sure outstanding entry gets created for filter or uuid - if (!TextUtils.isEmpty(filterId)) { - tlm.setValue(TaskListMetadata.FILTER, ""); //$NON-NLS-1$ - tlm.setValue(TaskListMetadata.FILTER, filterId); - } else if (!RemoteModel.isUuidEmpty(tagUuid)) { - tlm.setValue(TaskListMetadata.TAG_UUID, ""); //$NON-NLS-1$ - tlm.setValue(TaskListMetadata.TAG_UUID, tagUuid); - } - - tlm.setValue(TaskListMetadata.UUID, uuidTaskListMetadataMap.get(tlm.getUuid())); - tlm.setValue(TaskListMetadata.PUSHED_AT, 0L); - String taskIds = tlm.getValue(TaskListMetadata.TASK_IDS); - if (!TaskListMetadata.taskIdsIsEmpty(taskIds)) { - Node root = AstridOrderedListUpdater.buildTreeModel(taskIds, null); - SubtasksHelper.remapTree(root, uuidTaskMap, new TreeRemapHelper() { - @Override - public String getKeyFromOldUuid(String uuid) { - return uuid; // Old uuids are the keys - } - }); - taskIds = AstridOrderedListUpdater.serializeTree(root); - tlm.setValue(TaskListMetadata.TASK_IDS, taskIds); - } - taskListMetadataDao.saveExisting(tlm); - } - } finally { - tlmCursor.close(); - } - - } - - private void mapUuids(RemoteModelDao dao, HashMap map) { - TodorooCursor items = dao.query(Query.select(RemoteModel.UUID_PROPERTY)); - try { - for (items.moveToFirst(); !items.isAfterLast(); items.moveToNext()) { - map.put(items.get(RemoteModel.UUID_PROPERTY), UUIDHelper.newUUID()); - } - } finally { - items.close(); - } - } - - @SuppressWarnings("nls") - private void finishSignIn(JSONObject result, String token, boolean restart) { - actFmPreferenceService.setToken(token); - - Preferences.setString(ActFmPreferenceService.PREF_USER_ID, - Long.toString(result.optLong("id"))); - Preferences.setString(ActFmPreferenceService.PREF_NAME, - result.optString("name")); - Preferences.setString(ActFmPreferenceService.PREF_FIRST_NAME, - result.optString("first_name")); - Preferences.setString(ActFmPreferenceService.PREF_LAST_NAME, - result.optString("last_name")); - Preferences.setBoolean(ActFmPreferenceService.PREF_PREMIUM, - result.optBoolean("premium")); - Preferences.setString(ActFmPreferenceService.PREF_EMAIL, - result.optString("email")); - Preferences.setString(ActFmPreferenceService.PREF_PICTURE, - result.optString("picture")); - - if (!result.optBoolean("new")) { - Toast.makeText(this, R.string.actfm_ALA_user_exists_sync_alert, Toast.LENGTH_LONG).show(); - } - - ActFmPreferenceService.reloadThisUser(); - - GCMIntentService.register(this); - - - if (restart) { - System.exit(0); - return; - } else { - setResult(RESULT_OK); - finish(); - } - - ActFmSyncMonitor monitor = ActFmSyncMonitor.getInstance(); - synchronized (monitor) { - monitor.notifyAll(); - } - } - - @SuppressWarnings("nls") - private void handleError(final Throwable e) { - DialogUtilities.dismissDialog(this, progressDialog); - exceptionService.reportError("astrid-sharing-login", e); //$NON-NLS-1$ - - runOnUiThread(new Runnable() { - @Override - public void run() { - String message = e.getMessage(); - if (e instanceof ActFmServiceException) { - ActFmServiceException ae = (ActFmServiceException) e; - JSONObject result = ae.result; - if (result != null && result.has("code")) { - String code = result.optString("code"); - if ("user_exists".equals(code)) { - message = getString(R.string.actfm_ALA_error_user_exists); - } else if ("incorrect_password".equals(code)) { - message = getString(R.string.actfm_ALA_error_wrong_password); - } else if ("user_not_found".equals(code) || "missing_param".equals(code)) { - message = getString(R.string.actfm_ALA_error_user_not_found); - } - } - } - errors.setText(message); - errors.setVisibility(View.VISIBLE); - } - }); - } - - // --- google account manager - - @SuppressWarnings("nls") - @Override - protected void onActivityResult(int requestCode, int resultCode, Intent data) { - super.onActivityResult(requestCode, resultCode, data); - uiHelper.onActivityResult(requestCode, resultCode, data); - - if (resultCode == RESULT_CANCELED) { - return; - } - - if (requestCode == REQUEST_CODE_GOOGLE_ACCOUNTS && data != null && credentialsListener != null) { - String accounts[] = data.getStringArrayExtra( - GoogleLoginServiceConstants.ACCOUNTS_KEY); - credentialsListener.getCredentials(accounts); - } -// else if (requestCode == LoginButton.REQUEST_CODE_FACEBOOK) { -// if (data == null) -// return; -// -// String error = data.getStringExtra("error"); -// if (error == null) { -// error = data.getStringExtra("error_type"); -// } -// String token = data.getStringExtra("access_token"); -// if (error != null) { -// onFBAuthFail(error); -// } else if (token == null) { -// onFBAuthFail("Something went wrong! Please try again."); -// } else { -// facebook.setAccessToken(token); -// onFBAuthSucceed(); -// } -// errors.setVisibility(View.GONE); -// } - else if (requestCode == REQUEST_CODE_GOOGLE) { - if (data == null) { - return; - } - String email = data.getStringExtra(ActFmGoogleAuthActivity.RESULT_EMAIL); - String token = data.getStringExtra(ActFmGoogleAuthActivity.RESULT_TOKEN); - authenticate(email, email, "", "google", token); - } - } - - public interface OnGetCredentials { - public void getCredentials(String[] accounts); - } - - private OnGetCredentials credentialsListener; - - public void getCredentials(OnGetCredentials onGetCredentials) { - credentialsListener = onGetCredentials; - if (Integer.parseInt(Build.VERSION.SDK) >= 7) { - credentialsListener.getCredentials(ModernAuthManager.getAccounts(this)); - } else { - GoogleLoginServiceHelper.getAccount(this, - REQUEST_CODE_GOOGLE_ACCOUNTS, false); - } - } - -} diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/ActFmPreferences.java b/astrid/plugin-src/com/todoroo/astrid/actfm/ActFmPreferences.java deleted file mode 100644 index b532abebf..000000000 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/ActFmPreferences.java +++ /dev/null @@ -1,212 +0,0 @@ -/** - * Copyright (c) 2012 Todoroo Inc - * - * See the file "LICENSE" for the full license governing this code. - */ -package com.todoroo.astrid.actfm; - -import android.content.ActivityNotFoundException; -import android.content.DialogInterface; -import android.content.DialogInterface.OnClickListener; -import android.content.Intent; -import android.content.res.Resources; -import android.net.Uri; -import android.os.Bundle; -import android.preference.Preference; -import android.preference.Preference.OnPreferenceClickListener; -import android.preference.PreferenceCategory; -import android.preference.PreferenceScreen; -import android.text.TextUtils; -import android.widget.Toast; - -import com.timsu.astrid.R; -import com.todoroo.andlib.service.Autowired; -import com.todoroo.andlib.utility.DialogUtilities; -import com.todoroo.andlib.utility.Preferences; -import com.todoroo.astrid.actfm.sync.ActFmPreferenceService; -import com.todoroo.astrid.actfm.sync.ActFmSyncV2Provider; -import com.todoroo.astrid.billing.BillingActivity; -import com.todoroo.astrid.gtasks.GtasksPreferenceService; -import com.todoroo.astrid.service.PremiumUnlockService; -import com.todoroo.astrid.sync.SyncProviderPreferences; -import com.todoroo.astrid.sync.SyncProviderUtilities; -import com.todoroo.astrid.utility.Constants; - -/** - * Displays synchronization preferences and an action panel so users can - * initiate actions from the menu. - * - * @author timsu - */ -public class ActFmPreferences extends SyncProviderPreferences { - - @Autowired - ActFmPreferenceService actFmPreferenceService; - @Autowired - GtasksPreferenceService gtasksPreferenceService; - - @Override - public int getPreferenceResource() { - return R.xml.preferences_actfm; - } - - @Override - public void startSync() { - if (!actFmPreferenceService.isLoggedIn()) { - if (gtasksPreferenceService.isLoggedIn()) { - DialogUtilities.okCancelDialog(this, getString(R.string.DLG_warning), getString(R.string.actfm_dual_sync_warning), - new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - startLogin(); - } - }, null); - } else { - startLogin(); - } - } else { - setResult(RESULT_CODE_SYNCHRONIZE); - finish(); - } - } - - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - - PreferenceScreen screen = getPreferenceScreen(); - Preference inAppBilling = findPreference(getString(R.string.actfm_inapp_billing)); - if (Constants.ASTRID_LITE || Preferences.getBoolean(PremiumUnlockService.PREF_KILL_SWITCH, false)) { - screen.removePreference(inAppBilling); - } else { - inAppBilling.setOnPreferenceClickListener(new OnPreferenceClickListener() { - @Override - public boolean onPreferenceClick(Preference preference) { - handleInAppBillingClicked(); - return true; - } - }); - } - - findPreference(getString(R.string.actfm_account_type)).setOnPreferenceClickListener(new OnPreferenceClickListener() { - @Override - public boolean onPreferenceClick(Preference preference) { - startSync(); - return true; - } - }); - } - - private void startLogin() { - Intent intent = new Intent(this, ActFmLoginActivity.class); - startActivityForResult(intent, REQUEST_LOGIN); - } - - @Override - public void logOut() { - new ActFmSyncV2Provider().signOut(this); - } - - @Override - public SyncProviderUtilities getUtilities() { - return actFmPreferenceService; - } - - @Override - protected void onResume() { - super.onResume(); - - Preference premiumUpgrade = findPreference(getString(R.string.actfm_inapp_billing)); - if (premiumUpgrade != null && - (!Constants.MARKET_STRATEGY.billingSupported() || !actFmPreferenceService.isLoggedIn() || ActFmPreferenceService.isPremiumUser())) { - getPreferenceScreen().removePreference(premiumUpgrade); - } - } - - @Override - protected void onPause() { - super.onPause(); - new ActFmBackgroundService().scheduleService(); - } - - @Override - public void updatePreferences(Preference preference, Object value) { - final Resources r = getResources(); - - boolean loggedIn = getUtilities().isLoggedIn(); - PreferenceCategory status = (PreferenceCategory) findPreference(r.getString(R.string.sync_SPr_group_status)); - - if (loggedIn) { - String title = actFmPreferenceService.getLoggedInUserName(); - String email = Preferences.getStringValue(ActFmPreferenceService.PREF_EMAIL); - if (!TextUtils.isEmpty(email)) { - if (!TextUtils.isEmpty(title)) { - title += "\n"; //$NON-NLS-1$ - } - title += email; - } - status.setTitle(getString(R.string.actfm_status_title_logged_in, title)); - } else { - status.setTitle(R.string.sync_SPr_group_status); - } - - if (r.getString(R.string.actfm_https_key).equals(preference.getKey())) { - if ((Boolean) value) { - preference.setSummary(R.string.actfm_https_enabled); - } else { - preference.setSummary(R.string.actfm_https_disabled); - } - } else if (r.getString(R.string.actfm_account_type).equals(preference.getKey())) { - if (ActFmPreferenceService.isPremiumUser()) { - // Premium user - preference.setSummary(R.string.actfm_account_premium); - } else if (actFmPreferenceService.isLoggedIn()) { - // Non premium user - preference.setSummary(R.string.actfm_account_basic); - } else { - // Not logged in - preference.setEnabled(true); - preference.setTitle(R.string.account_type_title_not_logged_in); - preference.setSummary(R.string.account_type_summary_not_logged_in); - } - } else if (r.getString(R.string.sync_SPr_forget_key).equals(preference.getKey())) { - preference.setOnPreferenceClickListener(new OnPreferenceClickListener() { - @Override - public boolean onPreferenceClick(Preference p) { - DialogUtilities.okCancelDialog(ActFmPreferences.this, - r.getString(R.string.sync_forget_confirm), new OnClickListener() { - @Override - public void onClick(DialogInterface dialog, - int which) { - logOut(); - initializePreference(getPreferenceScreen()); - } - }, null); - return true; - } - }); - if (!loggedIn) { - getPreferenceScreen().removePreference(preference); - } - - } else { - super.updatePreferences(preference, value); - } - } - - private void handleInAppBillingClicked() { - if (ActFmPreferenceService.isPremiumUser()) { - Intent intent = new Intent(Intent.ACTION_VIEW); - intent.setData(Uri.parse("market://details?id=" + Constants.PACKAGE)); //$NON-NLS-1$ - try { - startActivity(intent); - } catch (ActivityNotFoundException e) { - Toast.makeText(this, R.string.market_unavailable, Toast.LENGTH_LONG).show(); - } - } else { - Intent intent = new Intent(this, BillingActivity.class); - startActivity(intent); - } - } - -} diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/CommentsFragment.java b/astrid/plugin-src/com/todoroo/astrid/actfm/CommentsFragment.java index 6c2cc1abb..ef99e2392 100644 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/CommentsFragment.java +++ b/astrid/plugin-src/com/todoroo/astrid/actfm/CommentsFragment.java @@ -271,14 +271,6 @@ public abstract class CommentsFragment extends SherlockListFragment { textView.setText(activity.getString(R.string.ENA_no_comments)); } else { textView.setText(activity.getString(R.string.UpS_no_activity_log_in)); - activityContainer.setOnClickListener(new OnClickListener() { - - @Override - public void onClick(View v) { - startActivityForResult(new Intent(getActivity(), ActFmLoginActivity.class), - TagSettingsActivity.REQUEST_ACTFM_LOGIN); - } - }); } listView.setVisibility(View.GONE); } else { diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/EditPeopleControlSet.java b/astrid/plugin-src/com/todoroo/astrid/actfm/EditPeopleControlSet.java index e397416cd..07d6e58ba 100644 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/EditPeopleControlSet.java +++ b/astrid/plugin-src/com/todoroo/astrid/actfm/EditPeopleControlSet.java @@ -692,26 +692,8 @@ public class EditPeopleControlSet extends PopupControlSet { } if (dirty && !actFmPreferenceService.isLoggedIn()) { - DialogInterface.OnClickListener okListener = new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface d, int which) { - fragment.startActivityForResult(new Intent(activity, ActFmLoginActivity.class), - loginRequestCode); - } - }; - - DialogInterface.OnClickListener cancelListener = new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface d, int which) { - makePrivateTask(); - task.setValue(Task.USER_ID, Task.USER_ID_SELF); - } - }; - DialogUtilities.okCancelCustomDialog(activity, activity.getString(R.string.actfm_EPA_login_button), - activity.getString(R.string.actfm_EPA_login_to_share), R.string.actfm_EPA_login_button, - R.string.actfm_EPA_dont_share_button, android.R.drawable.ic_dialog_alert, - okListener, cancelListener); - + makePrivateTask(); + task.setValue(Task.USER_ID, Task.USER_ID_SELF); return false; } diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/TagSettingsActivity.java b/astrid/plugin-src/com/todoroo/astrid/actfm/TagSettingsActivity.java index 9e2627ff0..72e795b80 100644 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/TagSettingsActivity.java +++ b/astrid/plugin-src/com/todoroo/astrid/actfm/TagSettingsActivity.java @@ -352,28 +352,8 @@ public class TagSettingsActivity extends SherlockFragmentActivity { if (newName.length() > 0 && oldName.length() == 0) { tagDataService.save(tagData); } - - DialogInterface.OnClickListener okListener = new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface d, int which) { - startActivityForResult(new Intent(TagSettingsActivity.this, ActFmLoginActivity.class), - REQUEST_ACTFM_LOGIN); - } - }; - - DialogInterface.OnClickListener cancelListener = new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface d, int which) { - - tagMembers.removeAllViews(); - tagMembers.addPerson("", "", false); //$NON-NLS-1$ - } - }; - DialogUtilities.okCancelCustomDialog(TagSettingsActivity.this, getString(R.string.actfm_EPA_login_button), - getString(R.string.actfm_TVA_login_to_share), R.string.actfm_EPA_login_button, - R.string.actfm_EPA_dont_share_button, android.R.drawable.ic_dialog_alert, - okListener, cancelListener); - + tagMembers.removeAllViews(); + tagMembers.addPerson("", "", false); //$NON-NLS-1$ return; } diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmInvoker.java b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmInvoker.java index 013915f0d..b1d36a6c6 100644 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmInvoker.java +++ b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmInvoker.java @@ -46,7 +46,6 @@ public class ActFmInvoker { private static final String APP_ID = "a4732a32859dbcd3e684331acd36432c"; private static final String APP_SECRET = "e389bfc82a0d932332f9a8bd8203735f"; - public static final String PROVIDER_FACEBOOK = "facebook"; public static final String PROVIDER_GOOGLE = "google"; public static final String PROVIDER_PASSWORD = "password"; diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncV2Provider.java b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncV2Provider.java index ca5c75bea..e944b11c3 100644 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncV2Provider.java +++ b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncV2Provider.java @@ -8,7 +8,6 @@ package com.todoroo.astrid.actfm.sync; import android.app.Activity; import android.content.DialogInterface; -import com.facebook.Session; import com.timsu.astrid.GCMIntentService; import com.timsu.astrid.R; import com.todoroo.andlib.service.Autowired; @@ -60,10 +59,6 @@ public class ActFmSyncV2Provider extends SyncV2Provider { actFmPreferenceService.clearLastSyncDate(); ActFmPreferenceService.premiumLogout(); GCMIntentService.unregister(ContextManager.getContext()); - Session activeSession = Session.getActiveSession(); - if (activeSession != null) { - activeSession.closeAndClearTokenInformation(); - } DialogUtilities.okCancelCustomDialog(activity, activity.getString(R.string.actfm_logout_clear_tasks_title), diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/SyncUpgradePrompt.java b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/SyncUpgradePrompt.java index 8cfdd62ce..dffd37540 100644 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/SyncUpgradePrompt.java +++ b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/SyncUpgradePrompt.java @@ -13,7 +13,6 @@ import android.widget.Toast; import com.timsu.astrid.R; import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.Preferences; -import com.todoroo.astrid.actfm.ActFmLoginActivity; import com.todoroo.astrid.core.PluginServices; public class SyncUpgradePrompt { @@ -21,60 +20,6 @@ public class SyncUpgradePrompt { private static final String P_SYNC_UPGRADE_PROMPT = "p_sync_upgr_prompt"; //$NON-NLS-1$ private static long lastPromptDate = -1; - public static void showSyncUpgradePrompt(final Activity activity) { - if (lastPromptDate == -1) { - lastPromptDate = Preferences.getLong(P_SYNC_UPGRADE_PROMPT, 0L); - } - - Dialog d = null; - if (DateUtilities.now() - lastPromptDate > DateUtilities.ONE_WEEK * 3) { - if (!PluginServices.getActFmPreferenceService().isLoggedIn()) { - if (PluginServices.getGtasksPreferenceService().isLoggedIn()) { - // Logged into google but not astrid - d = getDialog(activity, R.string.sync_upgr_gtasks_only_title, R.string.sync_upgr_gtasks_only_body, - R.string.sync_upgr_gtasks_only_btn1, new Runnable() { - @Override - public void run() { - activity.startActivity(new Intent(activity, ActFmLoginActivity.class)); - } - }, - R.string.sync_upgr_gtasks_only_btn2, - null); - } else { - // Logged into neither - d = getDialog(activity, R.string.sync_upgr_neither_title, R.string.sync_upgr_neither_body, - R.string.sync_upgr_neither_btn1, new Runnable() { - @Override - public void run() { - activity.startActivity(new Intent(activity, ActFmLoginActivity.class)); - } - }); - } - setLastPromptDate(DateUtilities.now()); - } else if (PluginServices.getGtasksPreferenceService().isLoggedIn()) { - // Logged into both - d = getDialog(activity, R.string.sync_upgr_both_title, R.string.sync_upgr_both_body, - R.string.sync_upgr_both_btn1, - null, - R.string.sync_upgr_both_btn2, new Runnable() { - @Override - public void run() { - new ActFmSyncV2Provider().signOut(activity); - Toast.makeText(activity, R.string.sync_upgr_logged_out, Toast.LENGTH_LONG).show(); - } - }); - setLastPromptDate(Long.MAX_VALUE); - } else { - // Logged into just astrid--don't need to show prompts anymore - setLastPromptDate(Long.MAX_VALUE); - } - } - - if (d != null) { - d.show(); - } - } - private static void setLastPromptDate(long date) { lastPromptDate = date; Preferences.setLong(P_SYNC_UPGRADE_PROMPT, lastPromptDate); diff --git a/astrid/plugin-src/com/todoroo/astrid/backup/BackupPreferences.java b/astrid/plugin-src/com/todoroo/astrid/backup/BackupPreferences.java index 921e04d31..32317bc72 100644 --- a/astrid/plugin-src/com/todoroo/astrid/backup/BackupPreferences.java +++ b/astrid/plugin-src/com/todoroo/astrid/backup/BackupPreferences.java @@ -21,7 +21,6 @@ import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.DialogUtilities; import com.todoroo.andlib.utility.Preferences; import com.todoroo.andlib.utility.TodorooPreferenceActivity; -import com.todoroo.astrid.actfm.ActFmLoginActivity; import com.todoroo.astrid.actfm.sync.ActFmPreferenceService; import java.util.Date; @@ -76,14 +75,6 @@ public class BackupPreferences extends TodorooPreferenceActivity { return false; } }); - - findPreference(getString(R.string.backup_BAc_cloud)).setOnPreferenceClickListener(new OnPreferenceClickListener() { - @Override - public boolean onPreferenceClick(Preference preference) { - initiateCloudBackup(); - return false; - } - }); } @Override @@ -149,15 +140,4 @@ public class BackupPreferences extends TodorooPreferenceActivity { } } - - private void initiateCloudBackup() { - if (actFmPreferenceService.isLoggedIn()) { - DialogUtilities.okDialog(this, getString(R.string.DLG_information_title), 0, - getString(R.string.backup_BPr_cloud_already_logged_in), null); - } else { - Intent intent = new Intent(this, ActFmLoginActivity.class); - startActivity(intent); - } - } - } diff --git a/astrid/plugin-src/com/todoroo/astrid/core/OldTaskPreferences.java b/astrid/plugin-src/com/todoroo/astrid/core/OldTaskPreferences.java index 472d498c7..4b0a4ad77 100644 --- a/astrid/plugin-src/com/todoroo/astrid/core/OldTaskPreferences.java +++ b/astrid/plugin-src/com/todoroo/astrid/core/OldTaskPreferences.java @@ -14,7 +14,6 @@ import android.preference.Preference; import android.preference.Preference.OnPreferenceClickListener; import android.preference.PreferenceScreen; -import com.facebook.Session; import com.timsu.astrid.GCMIntentService; import com.timsu.astrid.R; import com.todoroo.andlib.data.TodorooCursor; @@ -134,10 +133,6 @@ public class OldTaskPreferences extends TodorooPreferenceActivity { editor.commit(); deleteDatabase(database.getName()); - Session activeSession = Session.getActiveSession(); - if (activeSession != null) { - activeSession.closeAndClearTokenInformation(); - } AstridPreferences.setPreferenceDefaults(); GCMIntentService.unregister(OldTaskPreferences.this); diff --git a/astrid/proguard.cfg b/astrid/proguard.cfg index b9bf134da..47e81b3ee 100644 --- a/astrid/proguard.cfg +++ b/astrid/proguard.cfg @@ -41,10 +41,6 @@ -keep public class * extends android.app.backup.BackupAgentHelper -keep public class * extends android.preference.Preference --keep class com.facebook.** { - *; -} - -keepclassmembers public class com.todoroo.astrid.data.* { *; } diff --git a/astrid/project.properties b/astrid/project.properties index fe03edd74..2e83c80e4 100644 --- a/astrid/project.properties +++ b/astrid/project.properties @@ -9,12 +9,11 @@ # Indicates whether an apk should be generated for each density. split.density=false -android.library.reference.3=../facebook/facebook/ android.library.reference.1=../api/ android.library.reference.2=../actionbarsherlock/library # Project target. target=Google Inc.:Google APIs:14 apk-configurations= -android.library.reference.4=../viewPagerIndicator/library -android.library.reference.5=../greendroid/GreenDroid -android.library.reference.6=../android-aac-enc +android.library.reference.3=../viewPagerIndicator/library +android.library.reference.4=../greendroid/GreenDroid +android.library.reference.5=../android-aac-enc diff --git a/astrid/res/layout-land/actfm_login_activity.xml b/astrid/res/layout-land/actfm_login_activity.xml deleted file mode 100644 index 7c680c8e5..000000000 --- a/astrid/res/layout-land/actfm_login_activity.xml +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - - - - - - - - -