├── .buildkite ├── commands │ ├── build-prototype.sh │ ├── checkout-release-branch.sh │ ├── release-build.sh │ ├── release-create-on-github.sh │ └── release-upload.sh ├── pipeline.yml ├── release-build.yml ├── release-pipelines │ ├── complete-code-freeze.yml │ ├── finalize-release.yml │ ├── new-beta-release.yml │ ├── publish-release.yml │ └── start-code-freeze.yml └── shared-pipeline-vars ├── .bundle └── config ├── .configure ├── .configure-files ├── automattic.jks.enc ├── debug.keystore.enc ├── debug_a8c.keystore.enc ├── google-upload-credentials.json.enc ├── gradle.properties.enc ├── release.jks.enc └── sentry.properties.enc ├── .editorconfig ├── .gitattributes ├── .github ├── ISSUE_TEMPLATE │ ├── ---bug-report.md │ └── ---feature-request.md ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── gradle-wrapper-validation.yml │ ├── run-danger.yml │ ├── submit-gradle-dependencies.yml │ └── validate-issues.yml ├── .gitignore ├── .java-version ├── .rubocop.yml ├── .ruby-version ├── CONTRIBUTING.md ├── Dangerfile ├── Gemfile ├── Gemfile.lock ├── LICENSE.md ├── PasscodeLock ├── .gitignore ├── build.gradle ├── consumer-rules.pro ├── gradle.properties ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── org │ │ └── wordpress │ │ └── passcodelock │ │ ├── AbstractAppLock.java │ │ ├── AbstractPasscodeKeyboardActivity.java │ │ ├── AppLockManager.java │ │ ├── DefaultAppLock.java │ │ ├── PasscodeManagePasswordActivity.java │ │ ├── PasscodePreferenceFragment.java │ │ ├── PasscodePreferenceFragmentCompat.java │ │ ├── PasscodeUnlockActivity.java │ │ └── StringUtils.java │ └── res │ ├── anim │ ├── cycle_5.xml │ ├── do_nothing.xml │ ├── shake.xml │ └── slide_up.xml │ ├── drawable-hdpi │ ├── ic_backspace_white_24dp.png │ └── ic_fingerprint_white_24dp.png │ ├── drawable-mdpi │ ├── ic_backspace_white_24dp.png │ └── ic_fingerprint_white_24dp.png │ ├── drawable-xhdpi │ ├── ic_backspace_white_24dp.png │ └── ic_fingerprint_white_24dp.png │ ├── drawable-xxhdpi │ ├── ic_backspace_white_24dp.png │ └── ic_fingerprint_white_24dp.png │ ├── drawable-xxxhdpi │ ├── ic_backspace_white_24dp.png │ └── ic_fingerprint_white_24dp.png │ ├── layout-sw600dp │ └── app_passcode_keyboard.xml │ ├── layout │ └── app_passcode_keyboard.xml │ ├── values-sw600dp │ └── bools.xml │ ├── values-xlarge │ └── bools.xml │ ├── values │ ├── bools.xml │ ├── colors.xml │ ├── dimens.xml │ ├── strings.xml │ └── styles.xml │ └── xml │ └── passcode_preferences.xml ├── README.md ├── RELEASE-NOTES.txt ├── Simplenote ├── .gitignore ├── build.gradle ├── gradle.properties-example ├── lint.xml ├── metadata │ └── PlayStoreStrings.pot ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── automattic │ │ └── simplenote │ │ ├── BaseUITest.kt │ │ ├── NoteListFragmentTest.java │ │ ├── SimplenoteAppRunner.kt │ │ ├── SimplenoteTest.kt │ │ ├── integration │ │ ├── AddTagActivityTest.kt │ │ ├── TagDialogFragmentTest.kt │ │ └── TagsActivityTest.kt │ │ ├── models │ │ └── NoteIndexerTest.java │ │ ├── screenshots │ │ └── ScreenshotTest.java │ │ └── utils │ │ ├── AutoBulletTest.java │ │ ├── ChecklistsTest.java │ │ ├── EspressoUtils.kt │ │ ├── HiltUtils.kt │ │ ├── MatchOffsetHighlighterTest.java │ │ ├── SearchSnippetFormatterTest.java │ │ ├── SearchTokenizerTest.java │ │ ├── StringUtils.kt │ │ └── TestBucket.kt │ ├── debug │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── automattic │ │ │ └── simplenote │ │ │ └── HiltTestActivity.kt │ └── res │ │ ├── drawable │ │ └── ic_launcher_foreground.xml │ │ ├── mipmap-hdpi │ │ └── ic_launcher.png │ │ ├── mipmap-mdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxxhdpi │ │ └── ic_launcher.png │ │ ├── values │ │ └── strings.xml │ │ └── xml │ │ └── shortcuts.xml │ ├── main │ ├── AndroidManifest.xml │ ├── assets │ │ ├── dark_black.css │ │ ├── dark_classic.css │ │ ├── dark_default.css │ │ ├── dark_matrix.css │ │ ├── dark_mono.css │ │ ├── dark_publication.css │ │ ├── dark_sepia.css │ │ ├── fonts │ │ │ ├── Roboto-Light.ttf │ │ │ ├── Roboto-Medium.ttf │ │ │ └── Roboto-Regular.ttf │ │ ├── light_black.css │ │ ├── light_classic.css │ │ ├── light_default.css │ │ ├── light_matrix.css │ │ ├── light_mono.css │ │ ├── light_publication.css │ │ └── light_sepia.css │ ├── java │ │ └── com │ │ │ └── automattic │ │ │ └── simplenote │ │ │ ├── AboutActivity.java │ │ │ ├── AboutFragment.java │ │ │ ├── AddCollaboratorFragment.kt │ │ │ ├── AddTagActivity.kt │ │ │ ├── BottomSheetDialogBase.java │ │ │ ├── CollaboratorsActivity.kt │ │ │ ├── DeepLinkActivity.kt │ │ │ ├── FullScreenDialogFragment.java │ │ │ ├── HistoryBottomSheetDialog.java │ │ │ ├── Importer.java │ │ │ ├── InfoBottomSheetDialog.java │ │ │ ├── NoteEditorActivity.java │ │ │ ├── NoteEditorFragment.java │ │ │ ├── NoteListFragment.java │ │ │ ├── NoteListWidgetDark.java │ │ │ ├── NoteListWidgetDarkService.java │ │ │ ├── NoteListWidgetFactory.java │ │ │ ├── NoteListWidgetLight.java │ │ │ ├── NoteListWidgetLightService.java │ │ │ ├── NoteMarkdownFragment.java │ │ │ ├── NoteWidgetDark.java │ │ │ ├── NoteWidgetDarkConfigureActivity.java │ │ │ ├── NoteWidgetLight.java │ │ │ ├── NoteWidgetLightConfigureActivity.java │ │ │ ├── NotesActivity.java │ │ │ ├── PreferencesActivity.java │ │ │ ├── PreferencesFragment.java │ │ │ ├── ReviewAccountVerifyEmailFragment.java │ │ │ ├── ShareBottomSheetDialog.java │ │ │ ├── ShortcutDialogFragment.java │ │ │ ├── Simplenote.java │ │ │ ├── SimplenoteAppLock.java │ │ │ ├── StyleActivity.java │ │ │ ├── SyncTimes.java │ │ │ ├── TagDialogFragment.kt │ │ │ ├── TagsActivity.kt │ │ │ ├── ThemedAppCompatActivity.java │ │ │ ├── WordPressDialogFragment.java │ │ │ ├── analytics │ │ │ ├── AnalyticsTracker.java │ │ │ └── AnalyticsTrackerNosara.java │ │ │ ├── authentication │ │ │ ├── ConfirmationFragment.java │ │ │ ├── MagicLinkableFragment.kt │ │ │ ├── NewCredentialsActivity.kt │ │ │ ├── SessionManager.kt │ │ │ ├── SignInFragment.kt │ │ │ ├── SignupFragment.java │ │ │ ├── SimplenoteAuthenticationActivity.java │ │ │ ├── SimplenoteSignupActivity.java │ │ │ └── magiclink │ │ │ │ ├── MagicLinkAuthError.kt │ │ │ │ ├── MagicLinkConfirmationFragment.kt │ │ │ │ └── OkHttpMagicLinkRepository.kt │ │ │ ├── di │ │ │ ├── AppModule.kt │ │ │ ├── DataModule.kt │ │ │ ├── NetworkModule.kt │ │ │ └── ThreadModule.kt │ │ │ ├── models │ │ │ ├── Account.java │ │ │ ├── Note.java │ │ │ ├── NoteCountIndexer.java │ │ │ ├── NoteFullTextIndexer.java │ │ │ ├── NoteIndexer.java │ │ │ ├── NoteTagger.java │ │ │ ├── Preferences.java │ │ │ ├── Reference.java │ │ │ ├── Suggestion.java │ │ │ ├── Tag.java │ │ │ └── TagItem.kt │ │ │ ├── networking │ │ │ ├── HeadersInterceptor.kt │ │ │ └── SimpleHttp.kt │ │ │ ├── repositories │ │ │ ├── CollaboratorsRepository.kt │ │ │ ├── MagicLinkRepository.kt │ │ │ ├── SimperiumCollaboratorsRepository.kt │ │ │ ├── SimperiumTagsRepository.kt │ │ │ └── TagsRepository.kt │ │ │ ├── usecases │ │ │ ├── GetTagsUseCase.kt │ │ │ └── ValidateTagUseCase.kt │ │ │ ├── utils │ │ │ ├── AccountNetworkUtils.java │ │ │ ├── AccountVerificationEmailHandler.java │ │ │ ├── AccountVerificationWatcher.java │ │ │ ├── AniUtils.java │ │ │ ├── AppLog.java │ │ │ ├── AuthUtils.java │ │ │ ├── AutoBullet.java │ │ │ ├── BaseCursorAdapter.java │ │ │ ├── BaseExt.kt │ │ │ ├── BrowserUtils.java │ │ │ ├── ChecklistUtils.java │ │ │ ├── CollaboratorsAdapter.kt │ │ │ ├── ContextUtils.java │ │ │ ├── DateTimeUtils.java │ │ │ ├── DeleteAccountRequestHandler.java │ │ │ ├── DialogUtils.java │ │ │ ├── DisplayUtils.java │ │ │ ├── DrawableUtils.java │ │ │ ├── Either.kt │ │ │ ├── FileUtils.java │ │ │ ├── HtmlCompat.java │ │ │ ├── IconResizer.java │ │ │ ├── IntentUtils.java │ │ │ ├── LinkTokenizer.java │ │ │ ├── MatchOffsetHighlighter.java │ │ │ ├── NetworkUtils.java │ │ │ ├── NoteUtils.java │ │ │ ├── PrefUtils.java │ │ │ ├── SearchSnippetFormatter.java │ │ │ ├── SearchTokenizer.java │ │ │ ├── ShareButtonAdapter.java │ │ │ ├── SimplenoteLinkify.java │ │ │ ├── SimplenoteMovementMethod.java │ │ │ ├── SimplenoteProgressDialogFragment.java │ │ │ ├── SimplenoteWearListenerService.java │ │ │ ├── SpaceTokenizer.java │ │ │ ├── StrUtils.java │ │ │ ├── SyncWorker.java │ │ │ ├── TagItemAdapter.kt │ │ │ ├── TagUtils.java │ │ │ ├── TagsAdapter.java │ │ │ ├── TagsMultiAutoCompleteTextView.java │ │ │ ├── TextHighlighter.java │ │ │ ├── ThemeUtils.java │ │ │ ├── UndoBarController.java │ │ │ ├── WidgetUtils.java │ │ │ ├── WordPressUtils.java │ │ │ ├── crashlogging │ │ │ │ ├── CrashLoggingModule.kt │ │ │ │ └── SimplenoteCrashLoggingDataProvider.kt │ │ │ └── locale │ │ │ │ ├── ContextBasedLocaleProvider.kt │ │ │ │ └── LocaleProvider.kt │ │ │ ├── viewmodels │ │ │ ├── AddCollaboratorViewModel.kt │ │ │ ├── AddTagViewModel.kt │ │ │ ├── CollaboratorsViewModel.kt │ │ │ ├── CompleteMagicLinkViewModel.kt │ │ │ ├── NoteEditorViewModel.kt │ │ │ ├── RequestMagicLinkViewModel.kt │ │ │ ├── SingleLiveEvent.kt │ │ │ ├── TagDialogViewModel.kt │ │ │ └── TagsViewModel.kt │ │ │ └── widgets │ │ │ ├── CenteredImageSpan.java │ │ │ ├── CheckableSpan.java │ │ │ ├── EmptyViewRecyclerView.java │ │ │ ├── MorphCircleToRectangle.java │ │ │ ├── MorphDrawable.java │ │ │ ├── MorphRectangleToCircle.java │ │ │ ├── MorphSetup.java │ │ │ ├── NoteEditorViewPager.java │ │ │ ├── RobotoLightTextView.java │ │ │ ├── RobotoMediumTextView.java │ │ │ ├── RobotoRegularTextView.java │ │ │ ├── SamsungInputConnection.kt │ │ │ ├── SimplenoteEditText.java │ │ │ ├── SpinningImageButton.java │ │ │ └── TypefaceCache.java │ └── res │ │ ├── anim │ │ ├── full_screen_dialog_fragment_none.xml │ │ ├── full_screen_dialog_fragment_slide_down.xml │ │ └── full_screen_dialog_fragment_slide_up.xml │ │ ├── animator │ │ └── button_raise.xml │ │ ├── color │ │ ├── accent_text_button_disabled_selector.xml │ │ ├── bg_drawer_selector_accent.xml │ │ ├── bg_drawer_selector_dark.xml │ │ ├── bg_drawer_selector_light.xml │ │ ├── button_disabled_selector.xml │ │ └── toolbar_icon_alpha_40_selector.xml │ │ ├── drawable-hdpi │ │ └── logo_login.png │ │ ├── drawable-large-land │ │ └── divider_light.xml │ │ ├── drawable-ldrtl │ │ ├── ic_arrow_top_right_24dp.xml │ │ ├── ic_chevron_left_24dp.xml │ │ └── ic_chevron_right_24dp.xml │ │ ├── drawable-mdpi │ │ └── logo_login.png │ │ ├── drawable-night │ │ ├── bg_style_black.xml │ │ ├── bg_style_default.xml │ │ └── bg_style_sepia.xml │ │ ├── drawable-nodpi │ │ ├── note_list_widget_preview_dark.png │ │ ├── note_list_widget_preview_light.png │ │ ├── note_widget_preview_dark.png │ │ └── note_widget_preview_light.png │ │ ├── drawable-xhdpi │ │ └── logo_login.png │ │ ├── drawable-xxhdpi │ │ └── logo_login.png │ │ ├── drawable-xxxhdpi │ │ └── logo_login.png │ │ ├── drawable │ │ ├── av_checklist_24dp.xml │ │ ├── av_info_24dp.xml │ │ ├── av_list_hide_show_24dp.xml │ │ ├── av_list_show_hide_24dp.xml │ │ ├── av_trash_empty_24dp.xml │ │ ├── av_visibility_off_on_24dp.xml │ │ ├── av_visibility_on_off_24dp.xml │ │ ├── bg_bottom_sheet_handle.xml │ │ ├── bg_key.xml │ │ ├── bg_list_black.xml │ │ ├── bg_list_classic.xml │ │ ├── bg_list_default.xml │ │ ├── bg_list_matrix.xml │ │ ├── bg_list_mono.xml │ │ ├── bg_list_popup.xml │ │ ├── bg_list_publication.xml │ │ ├── bg_list_sepia.xml │ │ ├── bg_list_style_black.xml │ │ ├── bg_list_style_default.xml │ │ ├── bg_list_style_matrix.xml │ │ ├── bg_list_style_sepia.xml │ │ ├── bg_pin_dark.xml │ │ ├── bg_pin_light.xml │ │ ├── bg_pin_selector_dark.xml │ │ ├── bg_pin_selector_light.xml │ │ ├── bg_pinned_dark.xml │ │ ├── bg_pinned_light.xml │ │ ├── bg_ripple_oval_black.xml │ │ ├── bg_ripple_oval_classic_dark.xml │ │ ├── bg_ripple_oval_classic_light.xml │ │ ├── bg_ripple_oval_default_dark.xml │ │ ├── bg_ripple_oval_default_light.xml │ │ ├── bg_ripple_oval_fab_color.xml │ │ ├── bg_ripple_oval_matrix_dark.xml │ │ ├── bg_ripple_oval_matrix_light.xml │ │ ├── bg_ripple_oval_mono_dark.xml │ │ ├── bg_ripple_oval_mono_light.xml │ │ ├── bg_ripple_oval_publication_dark.xml │ │ ├── bg_ripple_oval_publication_light.xml │ │ ├── bg_ripple_oval_sepia_dark.xml │ │ ├── bg_ripple_oval_sepia_light.xml │ │ ├── bg_splash.xml │ │ ├── bg_style_activated.xml │ │ ├── bg_style_black.xml │ │ ├── bg_style_default.xml │ │ ├── bg_style_locked.xml │ │ ├── bg_style_sepia.xml │ │ ├── divider_dark.xml │ │ ├── divider_light.xml │ │ ├── ic_add_24dp.xml │ │ ├── ic_arrow_left_24dp.xml │ │ ├── ic_arrow_top_right_24dp.xml │ │ ├── ic_arrow_up_16dp.xml │ │ ├── ic_backspace_24dp.xml │ │ ├── ic_browser_24dp.xml │ │ ├── ic_call_white_24dp.xml │ │ ├── ic_checkbox_editor_checked_24dp.xml │ │ ├── ic_checkbox_editor_unchecked_24dp.xml │ │ ├── ic_checkbox_list_checked_24dp.xml │ │ ├── ic_checkbox_list_unchecked_24dp.xml │ │ ├── ic_checklist_24dp.xml │ │ ├── ic_chevron_left_24dp.xml │ │ ├── ic_chevron_right_24dp.xml │ │ ├── ic_collaborate_16dp.xml │ │ ├── ic_collaborate_24dp.xml │ │ ├── ic_copy_24dp.xml │ │ ├── ic_cross_24dp.xml │ │ ├── ic_cut_24dp.xml │ │ ├── ic_email_24dp.xml │ │ ├── ic_fingerprint_24dp.xml │ │ ├── ic_history_24dp.xml │ │ ├── ic_info_24dp.xml │ │ ├── ic_launcher_background.xml │ │ ├── ic_launcher_foreground.xml │ │ ├── ic_launcher_foreground_green.xml │ │ ├── ic_launcher_mono.xml │ │ ├── ic_link_24dp.xml │ │ ├── ic_lock_24dp.xml │ │ ├── ic_mail.xml │ │ ├── ic_mail_24dp.xml │ │ ├── ic_map_24dp.xml │ │ ├── ic_new_note_24dp.xml │ │ ├── ic_note_24dp.xml │ │ ├── ic_notes_24dp.xml │ │ ├── ic_paste_24dp.xml │ │ ├── ic_pinned_16dp.xml │ │ ├── ic_pinned_24dp.xml │ │ ├── ic_publish_16dp.xml │ │ ├── ic_publish_24dp.xml │ │ ├── ic_search_24dp.xml │ │ ├── ic_select_all_24dp.xml │ │ ├── ic_settings_24dp.xml │ │ ├── ic_share_24dp.xml │ │ ├── ic_share_alt_24dp.xml │ │ ├── ic_share_collaborate_48dp.xml │ │ ├── ic_share_publish_48dp.xml │ │ ├── ic_share_unpublish_48dp.xml │ │ ├── ic_share_wordpress_48dp.xml │ │ ├── ic_shortcut_create_48dp.xml │ │ ├── ic_simplenote_24dp.xml │ │ ├── ic_simplenote_blue_24dp.xml │ │ ├── ic_tag_24dp.xml │ │ ├── ic_tags_close_24dp.xml │ │ ├── ic_tags_open_24dp.xml │ │ ├── ic_themes_24dp.xml │ │ ├── ic_trash_24dp.xml │ │ ├── ic_trash_disabled_24dp.xml │ │ ├── ic_trash_restore_24dp.xml │ │ ├── ic_untagged_24dp.xml │ │ ├── ic_visibility_off_24dp.xml │ │ ├── ic_visibility_on_24dp.xml │ │ ├── ic_warning_24dp.xml │ │ ├── ic_wordpress_24dp.xml │ │ ├── note_widget_background_dark.xml │ │ ├── note_widget_background_dark_black.xml │ │ ├── note_widget_background_dark_sepia.xml │ │ ├── note_widget_background_light.xml │ │ └── note_widget_background_light_sepia.xml │ │ ├── layout-large-land │ │ └── fragment_note_editor.xml │ │ ├── layout │ │ ├── activity_about.xml │ │ ├── activity_collaborators.xml │ │ ├── activity_note_editor.xml │ │ ├── activity_notes.xml │ │ ├── activity_preferences.xml │ │ ├── activity_signup.xml │ │ ├── activity_style.xml │ │ ├── activity_tag_add.xml │ │ ├── activity_tags.xml │ │ ├── add_collaborator.xml │ │ ├── authentication_fancy_or.xml │ │ ├── autocomplete_list_item.xml │ │ ├── bottom_sheet_history.xml │ │ ├── bottom_sheet_info.xml │ │ ├── bottom_sheet_share.xml │ │ ├── collaborator_row.xml │ │ ├── collaborators_header.xml │ │ ├── dialog_shortcuts_all.xml │ │ ├── dialog_shortcuts_editor_edit.xml │ │ ├── dialog_shortcuts_editor_preview.xml │ │ ├── dialog_shortcuts_list.xml │ │ ├── dialog_wordpress_post.xml │ │ ├── drawer_action_edit.xml │ │ ├── edit_tag.xml │ │ ├── empty_view.xml │ │ ├── empty_view_message.xml │ │ ├── fragment_about.xml │ │ ├── fragment_confirmation.xml │ │ ├── fragment_full_screen_dialog.xml │ │ ├── fragment_login.xml │ │ ├── fragment_magic_link_code.xml │ │ ├── fragment_note_editor.xml │ │ ├── fragment_note_error.xml │ │ ├── fragment_note_markdown.xml │ │ ├── fragment_note_webview.xml │ │ ├── fragment_notes_list.xml │ │ ├── fragment_review_account_verify_email.xml │ │ ├── fragment_signup.xml │ │ ├── list_item_single_choice.xml │ │ ├── new_activity_credentials.xml │ │ ├── note_list_row.xml │ │ ├── note_list_widget_dark_black.xml │ │ ├── note_list_widget_dark_classic.xml │ │ ├── note_list_widget_dark_default.xml │ │ ├── note_list_widget_dark_matrix.xml │ │ ├── note_list_widget_dark_mono.xml │ │ ├── note_list_widget_dark_publication.xml │ │ ├── note_list_widget_dark_sepia.xml │ │ ├── note_list_widget_item_dark.xml │ │ ├── note_list_widget_item_dark_monospace.xml │ │ ├── note_list_widget_item_dark_serif.xml │ │ ├── note_list_widget_item_light.xml │ │ ├── note_list_widget_item_light_monospace.xml │ │ ├── note_list_widget_item_light_serif.xml │ │ ├── note_list_widget_light_black.xml │ │ ├── note_list_widget_light_classic.xml │ │ ├── note_list_widget_light_default.xml │ │ ├── note_list_widget_light_matrix.xml │ │ ├── note_list_widget_light_mono.xml │ │ ├── note_list_widget_light_publication.xml │ │ ├── note_list_widget_light_sepia.xml │ │ ├── note_widget_configure.xml │ │ ├── note_widget_configure_list.xml │ │ ├── note_widget_dark.xml │ │ ├── note_widget_dark_black.xml │ │ ├── note_widget_dark_matrix.xml │ │ ├── note_widget_dark_mono.xml │ │ ├── note_widget_dark_publication.xml │ │ ├── note_widget_dark_sepia.xml │ │ ├── note_widget_light.xml │ │ ├── note_widget_light_mono.xml │ │ ├── note_widget_light_publication.xml │ │ ├── note_widget_light_sepia.xml │ │ ├── preference_button.xml │ │ ├── preference_default.xml │ │ ├── preference_red.xml │ │ ├── progressbar_dialog.xml │ │ ├── progressbar_toolbar.xml │ │ ├── reference_list_row.xml │ │ ├── search_suggestion.xml │ │ ├── share_button_item.xml │ │ ├── style_list_row_black.xml │ │ ├── style_list_row_default.xml │ │ ├── style_list_row_matrix.xml │ │ ├── style_list_row_mono.xml │ │ ├── style_list_row_publication.xml │ │ ├── style_list_row_sepia.xml │ │ ├── subscription_duration_list_row.xml │ │ ├── tags_list_row.xml │ │ └── toolbar.xml │ │ ├── menu │ │ ├── bulk_edit.xml │ │ ├── note_editor.xml │ │ ├── note_markdown.xml │ │ ├── notes_list.xml │ │ ├── sort_bar.xml │ │ ├── tags_list.xml │ │ └── view_link.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_green.xml │ │ ├── mipmap-hdpi │ │ └── ic_launcher.png │ │ ├── mipmap-mdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxxhdpi │ │ └── ic_launcher.png │ │ ├── values-ar │ │ └── strings.xml │ │ ├── values-cy │ │ └── strings.xml │ │ ├── values-de │ │ └── strings.xml │ │ ├── values-es │ │ └── strings.xml │ │ ├── values-fr │ │ └── strings.xml │ │ ├── values-he │ │ └── strings.xml │ │ ├── values-id │ │ └── strings.xml │ │ ├── values-in │ │ └── strings.xml │ │ ├── values-it │ │ └── strings.xml │ │ ├── values-iw │ │ └── strings.xml │ │ ├── values-ja │ │ └── strings.xml │ │ ├── values-ko │ │ └── strings.xml │ │ ├── values-large │ │ └── dimens.xml │ │ ├── values-night-v27 │ │ └── styles.xml │ │ ├── values-night │ │ ├── colors.xml │ │ └── styles.xml │ │ ├── values-nl │ │ └── strings.xml │ │ ├── values-pl │ │ └── strings.xml │ │ ├── values-pt-rBR │ │ └── strings.xml │ │ ├── values-ru │ │ └── strings.xml │ │ ├── values-sv │ │ └── strings.xml │ │ ├── values-tr │ │ └── strings.xml │ │ ├── values-v27 │ │ └── styles.xml │ │ ├── values-v29 │ │ └── arrays.xml │ │ ├── values-zh │ │ ├── values-zh-rCN │ │ └── strings.xml │ │ ├── values-zh-rTW │ │ └── strings.xml │ │ ├── values │ │ ├── arrays.xml │ │ ├── attrs.xml │ │ ├── available_languages.xml │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── drawables.xml │ │ ├── integers.xml │ │ ├── plurals.xml │ │ ├── strings.xml │ │ └── styles.xml │ │ └── xml │ │ ├── note_list_widget_info_dark.xml │ │ ├── note_list_widget_info_light.xml │ │ ├── note_widget_info_dark.xml │ │ ├── note_widget_info_light.xml │ │ ├── preferences.xml │ │ └── shortcuts.xml │ ├── screenshots │ └── AndroidManifest.xml │ └── test │ └── java │ └── com │ └── automattic │ └── simplenote │ ├── authentication │ └── SessionManagerTest.kt │ ├── models │ └── NoteTest.java │ ├── repositories │ └── SimperiumCollaboratorsRepositoryTest.kt │ ├── usecases │ ├── GetTagsUseCaseTest.kt │ └── ValidateTagUseCaseTest.kt │ ├── utils │ └── StringUtils.kt │ └── viewmodels │ ├── AddCollaboratorViewModelTest.kt │ ├── AddTagViewModelTest.kt │ ├── CollaboratorsViewModelTest.kt │ ├── CompleteMagicLinkViewModelTest.kt │ ├── NoteEditorViewModelTest.kt │ ├── RequestMagicLinkViewModelTest.kt │ ├── TagDialogViewModelTest.kt │ └── TagsViewModelTest.kt ├── TESTING-CHECKLIST.md ├── Wear ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── com │ │ └── automattic │ │ └── simplenote │ │ └── CreateNoteActivity.java │ └── res │ ├── drawable-hdpi │ └── ic_launcher.png │ ├── drawable-mdpi │ └── ic_launcher.png │ ├── drawable-xhdpi │ └── ic_launcher.png │ ├── drawable-xxhdpi │ └── ic_launcher.png │ ├── values-ar │ └── strings.xml │ ├── values-de │ └── strings.xml │ ├── values-es │ └── strings.xml │ ├── values-fr │ └── strings.xml │ ├── values-he │ └── strings.xml │ ├── values-id │ └── strings.xml │ ├── values-it │ └── strings.xml │ ├── values-iw │ └── strings.xml │ ├── values-ja │ └── strings.xml │ ├── values-ko │ └── strings.xml │ ├── values-pl │ └── strings.xml │ ├── values-ru │ └── strings.xml │ ├── values-tr │ └── strings.xml │ ├── values-zh │ ├── values-zh-rCN │ └── strings.xml │ ├── values-zh-rTW │ └── strings.xml │ └── values │ └── strings.xml ├── build.gradle ├── build.xml ├── fastlane ├── Fastfile ├── env.example ├── lanes │ ├── build.rb │ ├── localization.rb │ └── release.rb ├── lib │ └── release_helpers.rb ├── metadata │ └── android │ │ ├── ar │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── de-DE │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── en-US │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── release_notes.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── es-ES │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── fr-FR │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ └── title.txt │ │ ├── id │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── it-IT │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── iw-IL │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── ja-JP │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── ko-KR │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── nl-NL │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── pt-BR │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── release_notes.xml │ │ ├── ru-RU │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── sv-SE │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ ├── tr-TR │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ └── title.txt │ │ ├── zh-CN │ │ ├── changelogs │ │ │ ├── .gitkeep │ │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt │ │ └── zh-TW │ │ ├── changelogs │ │ ├── .gitkeep │ │ └── default.txt │ │ ├── full_description.txt │ │ ├── short_description.txt │ │ └── title.txt └── resources │ └── values │ └── strings.xml ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── metadata ├── ic_launcher.svg └── ic_launcher_web.png ├── proguard-project.txt ├── settings.gradle ├── tools ├── exported-language-codes.csv ├── extract_release_notes.rb ├── get-translated-release-notes.sh ├── release-notes-language-codes.csv └── update-translations.sh └── version.properties /.buildkite/commands/build-prototype.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | set -eu 4 | 5 | echo "--- :rubygems: Setting up Gems" 6 | install_gems 7 | 8 | echo "--- :closed_lock_with_key: Installing Secrets" 9 | bundle exec fastlane run configure_apply 10 | 11 | echo "--- :hammer_and_wrench: Build and Test" 12 | bundle exec fastlane build_and_upload_prototype_build 13 | -------------------------------------------------------------------------------- /.buildkite/commands/checkout-release-branch.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -eu 2 | 3 | if [[ -z "${RELEASE_VERSION}" ]]; then 4 | echo "RELEASE_VERSION is not set." 5 | exit 1 6 | fi 7 | 8 | # Buildkite, by default, checks out a specific commit. 9 | # For many release actions, we need to be on a release branch instead. 10 | BRANCH_NAME="release/${RELEASE_VERSION}" 11 | git fetch origin "$BRANCH_NAME" 12 | git checkout "$BRANCH_NAME" 13 | -------------------------------------------------------------------------------- /.buildkite/commands/release-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -eu 2 | 3 | echo "--- :rubygems: Setting up Gems" 4 | install_gems 5 | 6 | echo "--- :closed_lock_with_key: Installing Secrets" 7 | bundle exec fastlane run configure_apply 8 | 9 | echo "--- :hammer_and_wrench: Building app" 10 | bundle exec fastlane build_for_distribution 11 | 12 | echo "--- :computer: Use deterministic APK name for next steps" 13 | 14 | OUTPUT_DIR="build" 15 | if [ "$(find "$OUTPUT_DIR" -maxdepth 1 -name "*.apk" | wc -l)" -gt 1 ]; then 16 | echo "Found more than one APK in $OUTPUT_DIR." 17 | exit 1 18 | fi 19 | 20 | ORIGINAL_APK_PATH=$(find "$OUTPUT_DIR" -name "*.apk" -maxdepth 1 | head -1) 21 | 22 | set -x 23 | mv "$ORIGINAL_APK_PATH" $OUTPUT_DIR/simplenote.apk 24 | set +x 25 | -------------------------------------------------------------------------------- /.buildkite/commands/release-create-on-github.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -eu 2 | 3 | echo "--- :arrow_down: Downloading Artifacts" 4 | ARTIFACT_PATH='build/simplenote.apk' # Must be the same as release-build.sh 5 | STEP=build 6 | buildkite-agent artifact download "$ARTIFACT_PATH" . --step $STEP 7 | 8 | echo "--- :rubygems: Setting up Gems" 9 | install_gems 10 | 11 | echo "--- :closed_lock_with_key: Installing Secrets" 12 | bundle exec fastlane run configure_apply 13 | 14 | echo "--- :android: Upload to Play Store" 15 | bundle exec fastlane create_release_on_github \ 16 | apk_path:"$ARTIFACT_PATH" \ 17 | "beta:${1:-true}" # use first call param, default to true for safety 18 | -------------------------------------------------------------------------------- /.buildkite/commands/release-upload.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -eu 2 | 3 | echo "--- :arrow_down: Downloading Artifacts" 4 | ARTIFACT_PATH='build/simplenote.apk' # Must be the same as release-build.sh 5 | STEP=build 6 | buildkite-agent artifact download "$ARTIFACT_PATH" . --step $STEP 7 | 8 | echo "--- :rubygems: Setting up Gems" 9 | install_gems 10 | 11 | echo "--- :closed_lock_with_key: Installing Secrets" 12 | bundle exec fastlane run configure_apply 13 | 14 | echo "--- :android: Upload to Play Store" 15 | bundle exec fastlane upload_build_to_play_store \ 16 | apk_path:"$ARTIFACT_PATH" \ 17 | "beta:${1:-true}" # use first call param, default to true for safety 18 | -------------------------------------------------------------------------------- /.buildkite/release-pipelines/finalize-release.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json 2 | --- 3 | 4 | steps: 5 | - label: Finalize Release 6 | plugins: [$CI_TOOLKIT_PLUGIN] 7 | command: | 8 | echo '--- :robot_face: Use bot for git operations' 9 | source use-bot-for-git 10 | 11 | echo '--- :git: Checkout Release Branch' 12 | .buildkite/commands/checkout-release-branch.sh 13 | 14 | echo '--- :ruby: Set up Ruby Tools' 15 | install_gems 16 | 17 | echo '--- :shipit: Finalize Release' 18 | bundle exec fastlane finalize_release skip_confirm:true 19 | agents: 20 | queue: tumblr-metal 21 | retry: 22 | manual: 23 | # If those jobs fail, one should always prefer re-triggering a new build from ReleaseV2 rather than retrying the individual job from Buildkite 24 | allowed: false 25 | -------------------------------------------------------------------------------- /.buildkite/release-pipelines/new-beta-release.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json 2 | --- 3 | 4 | steps: 5 | - label: "New Beta Release" 6 | plugins: [$CI_TOOLKIT_PLUGIN] 7 | command: | 8 | echo '--- :robot_face: Use bot for Git operations' 9 | source use-bot-for-git 10 | 11 | echo '--- :git: Checkout release branch' 12 | .buildkite/commands/checkout-release-branch.sh 13 | 14 | echo '--- :ruby: Set up Ruby Tools' 15 | install_gems 16 | 17 | echo '--- :closed_lock_with_key: Access secrets' 18 | bundle exec fastlane run configure_apply 19 | 20 | echo '--- :shipit: New Beta Release' 21 | bundle exec fastlane new_beta_release skip_confirm:true 22 | agents: 23 | queue: tumblr-metal 24 | retry: 25 | manual: 26 | # If failed, we prefer retrying via ReleaseV2 rather than Buildkite. 27 | # Rationale: ReleaseV2 is the source of truth for the process and track links to the various builds. 28 | allowed: false 29 | -------------------------------------------------------------------------------- /.buildkite/release-pipelines/publish-release.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json 2 | --- 3 | 4 | steps: 5 | - label: Publish Release 6 | plugins: [$CI_TOOLKIT_PLUGIN] 7 | command: | 8 | echo '--- :robot_face: Use bot for git operations' 9 | source use-bot-for-git 10 | 11 | echo '--- :git: Checkout Release Branch' 12 | .buildkite/commands/checkout-release-branch.sh 13 | 14 | echo '--- :ruby: Setup Ruby Tools' 15 | install_gems 16 | 17 | echo '--- :package: Publish Release' 18 | bundle exec fastlane publish_release skip_confirm:true 19 | agents: 20 | queue: tumblr-metal 21 | retry: 22 | manual: 23 | # If those jobs fail, one should always prefer re-triggering a new build from ReleaseV2 rather than retrying the individual job from Buildkite 24 | allowed: false 25 | -------------------------------------------------------------------------------- /.buildkite/release-pipelines/start-code-freeze.yml: -------------------------------------------------------------------------------- 1 | # yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json 2 | --- 3 | 4 | # Variables used in this pipeline are defined in `shared-pipeline-vars`, which is `source`'d before calling `buildkite-agent pipeline upload` 5 | 6 | steps: 7 | - label: Start Code Freeze 8 | plugins: 9 | - $CI_TOOLKIT_PLUGIN 10 | agents: 11 | queue: tumblr-metal 12 | command: | 13 | echo '--- :robot_face: Use bot for Git operations' 14 | source use-bot-for-git 15 | 16 | echo '--- :ruby: Setup Ruby Tools' 17 | install_gems 18 | 19 | echo '--- :shipit: Start code freeze' 20 | bundle exec fastlane start_code_freeze skip_confirm:true 21 | retry: 22 | manual: 23 | # If failed, we prefer retrying via ReleaseV2 rather than Buildkite. 24 | # Rationale: ReleaseV2 is the source of truth for the process and track links to the various builds. 25 | allowed: false 26 | -------------------------------------------------------------------------------- /.buildkite/shared-pipeline-vars: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # This file is `source`'d before calling `buildkite-agent pipeline upload`, and can be used 4 | # to set up some variables that will be interpolated in the `.yml` pipeline before uploading it. 5 | 6 | export CI_TOOLKIT_PLUGIN_VERSION="3.5.1" 7 | 8 | export CI_TOOLKIT_PLUGIN="automattic/a8c-ci-toolkit#$CI_TOOLKIT_PLUGIN_VERSION" 9 | -------------------------------------------------------------------------------- /.bundle/config: -------------------------------------------------------------------------------- 1 | --- 2 | BUNDLE_PATH: "vendor/bundle" 3 | BUNDLE_SPECIFIC_PLATFORM: "false" 4 | -------------------------------------------------------------------------------- /.configure: -------------------------------------------------------------------------------- 1 | { 2 | "project_name": "Simplenote-Android", 3 | "branch": "trunk", 4 | "pinned_hash": "1761b0a77a5371f9127c5d0575c90f938d864537", 5 | "files_to_copy": [ 6 | { 7 | "file": "android/simplenote/Simplenote/gradle.properties", 8 | "destination": "Simplenote/gradle.properties", 9 | "encrypt": true 10 | }, 11 | { 12 | "file": "android/simplenote/sentry.properties", 13 | "destination": "sentry.properties", 14 | "encrypt": true 15 | }, 16 | { 17 | "file": "android/automattic.jks", 18 | "destination": ".configure-files/release.jks", 19 | "encrypt": true 20 | }, 21 | { 22 | "file": "android/debug.keystore", 23 | "destination": ".configure-files/debug_a8c.keystore", 24 | "encrypt": true 25 | }, 26 | { 27 | "file": "android/Simplenote/google-upload-credentials.json", 28 | "destination": "~/.configure/simplenote-android/secrets/google-upload-credentials.json", 29 | "encrypt": true 30 | } 31 | ], 32 | "file_dependencies": [ 33 | 34 | ] 35 | } -------------------------------------------------------------------------------- /.configure-files/automattic.jks.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/.configure-files/automattic.jks.enc -------------------------------------------------------------------------------- /.configure-files/debug.keystore.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/.configure-files/debug.keystore.enc -------------------------------------------------------------------------------- /.configure-files/debug_a8c.keystore.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/.configure-files/debug_a8c.keystore.enc -------------------------------------------------------------------------------- /.configure-files/google-upload-credentials.json.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/.configure-files/google-upload-credentials.json.enc -------------------------------------------------------------------------------- /.configure-files/gradle.properties.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/.configure-files/gradle.properties.enc -------------------------------------------------------------------------------- /.configure-files/release.jks.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/.configure-files/release.jks.enc -------------------------------------------------------------------------------- /.configure-files/sentry.properties.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/.configure-files/sentry.properties.enc -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # Apply to all files 2 | [*] 3 | end_of_line = lf 4 | insert_final_newline = true 5 | trim_trailing_whitespace = true 6 | 7 | # Ruby specific rules 8 | [{*.rb,Fastfile,Gemfile}] 9 | indent_style = space 10 | indent_size = 2 11 | 12 | [*.{kt,kts}] 13 | max_line_length=120 14 | 15 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | .configure-files/*.enc binary 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/---feature-request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: "\U0001F680 Feature Request" 3 | about: "Suggest a new feature or enhancement to an existing one in the Simplenote Android app." 4 | title: "" 5 | labels: feature request 6 | assignees: "" 7 | --- 8 | 9 | 12 | 13 | ### What 14 | 17 | 18 | ### Why 19 | 22 | 23 | ### How 24 | 27 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ### Fix 2 | 5 | 6 | ### Test 7 | 13 | 14 | ### Review 15 | 19 | 20 | ### Release 21 | 26 | 30 | -------------------------------------------------------------------------------- /.github/workflows/gradle-wrapper-validation.yml: -------------------------------------------------------------------------------- 1 | name: "Validate Gradle Wrapper" 2 | on: [push, pull_request] 3 | 4 | jobs: 5 | validation: 6 | name: "Validation" 7 | runs-on: ubuntu-latest 8 | steps: 9 | - uses: actions/checkout@v4 10 | - uses: gradle/actions/wrapper-validation@v4 11 | -------------------------------------------------------------------------------- /.github/workflows/run-danger.yml: -------------------------------------------------------------------------------- 1 | name: ☢️ Trigger Danger On Buildkite 2 | 3 | on: 4 | pull_request: 5 | types: [labeled, unlabeled, milestoned, demilestoned, ready_for_review] 6 | 7 | jobs: 8 | dangermattic: 9 | if: ${{ (github.event.pull_request.draft == false) }} 10 | uses: Automattic/dangermattic/.github/workflows/reusable-retry-buildkite-step-on-events.yml@v1.1.2 11 | with: 12 | org-slug: "automattic" 13 | pipeline-slug: "simplenote-android" 14 | retry-step-key: "danger" 15 | build-commit-sha: "${{ github.event.pull_request.head.sha }}" 16 | secrets: 17 | buildkite-api-token: ${{ secrets.TRIGGER_BK_BUILD_TOKEN }} 18 | -------------------------------------------------------------------------------- /.github/workflows/submit-gradle-dependencies.yml: -------------------------------------------------------------------------------- 1 | name: Submit dependencies to GitHub Dependency Graph 2 | on: 3 | push: 4 | branches: 5 | - trunk 6 | - release/* 7 | permissions: 8 | contents: write 9 | jobs: 10 | build: 11 | runs-on: ubuntu-latest 12 | steps: 13 | - uses: actions/checkout@v4 14 | - uses: actions/setup-java@v3 15 | with: 16 | distribution: 'temurin' 17 | java-version: '17' 18 | - name: Setup Gradle to generate and submit dependency graphs 19 | uses: gradle/gradle-build-action@v2 20 | with: 21 | dependency-graph: generate-and-submit 22 | - name: Generate the dependency graph which will be submitted post-job 23 | run: ./gradlew :Simplenote:dependencies :Wear:dependencies 24 | -------------------------------------------------------------------------------- /.github/workflows/validate-issues.yml: -------------------------------------------------------------------------------- 1 | name: 📝 Validate Issues 2 | 3 | on: 4 | issues: 5 | types: [opened, labeled, unlabeled] 6 | 7 | jobs: 8 | check-labels-on-issues: 9 | uses: Automattic/dangermattic/.github/workflows/reusable-check-labels-on-issues.yml@v1.0.0 10 | with: 11 | label-format-list: '[ 12 | "^\[.+\]", 13 | "^[[:alnum:]]" 14 | ]' 15 | label-error-message: '🚫 Please add a type label (e.g. **[Type] Enhancement**) and a feature label (e.g. **Stats**) to this issue.' 16 | label-success-message: 'Thanks for reporting! 👍' 17 | secrets: 18 | github-token: ${{ secrets.DANGERMATTIC_GITHUB_TOKEN }} 19 | -------------------------------------------------------------------------------- /.java-version: -------------------------------------------------------------------------------- 1 | 17.0 -------------------------------------------------------------------------------- /.rubocop.yml: -------------------------------------------------------------------------------- 1 | AllCops: 2 | Exclude: 3 | - vendor/**/* 4 | NewCops: enable 5 | SuggestExtensions: 6 | rubocop-rake: false 7 | 8 | Layout/LineLength: 9 | Max: 180 10 | 11 | Layout/MultilineMethodCallIndentation: 12 | EnforcedStyle: indented 13 | 14 | Metrics/MethodLength: 15 | Max: 30 16 | 17 | Metrics/BlockLength: 18 | Exclude: &fastlane 19 | - fastlane/Fastfile 20 | - fastlane/lanes/*.rb 21 | 22 | Style/HashSyntax: 23 | EnforcedShorthandSyntax: never 24 | -------------------------------------------------------------------------------- /.ruby-version: -------------------------------------------------------------------------------- 1 | 3.2.2 2 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | 3 | source 'https://rubygems.org' 4 | 5 | gem 'danger-dangermattic', '~> 1.0' 6 | gem 'fastlane', '~> 2.219' 7 | # This comment avoids typing to switch to a development version for testing. 8 | # 9 | # gem 'fastlane-plugin-wpmreleasetoolkit', git: 'https://github.com/wordpress-mobile/release-toolkit', ref: '' 10 | gem 'fastlane-plugin-wpmreleasetoolkit', '~> 12.0' 11 | -------------------------------------------------------------------------------- /PasscodeLock/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /PasscodeLock/consumer-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/consumer-rules.pro -------------------------------------------------------------------------------- /PasscodeLock/gradle.properties: -------------------------------------------------------------------------------- 1 | android.enableJetifier=true 2 | android.useAndroidX=true 3 | 4 | passcodelock.password_preference_key=passcode_lock_prefs_password_key 5 | passcodelock.password_enc_secret=5-maggio-2002-Karel-Poborsky 6 | passcodelock.fingerprint_enabled_key=passcode_lock_prefs_fingerprint_enabled_key 7 | 8 | ossrhUsername=hello 9 | ossrhPassword=world 10 | 11 | signing.keyId=byebye 12 | signing.password=secret 13 | signing.secretKeyRingFile=/home/user/secret.gpg 14 | -------------------------------------------------------------------------------- /PasscodeLock/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile -------------------------------------------------------------------------------- /PasscodeLock/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/java/org/wordpress/passcodelock/StringUtils.java: -------------------------------------------------------------------------------- 1 | package org.wordpress.passcodelock; 2 | 3 | import java.math.BigInteger; 4 | import java.security.MessageDigest; 5 | import java.security.NoSuchAlgorithmException; 6 | 7 | import android.util.Log; 8 | 9 | public class StringUtils { 10 | public static String getMd5Hash(String input) { 11 | try { 12 | MessageDigest md = MessageDigest.getInstance("MD5"); 13 | byte[] messageDigest = md.digest(input.getBytes()); 14 | BigInteger number = new BigInteger(1, messageDigest); 15 | String md5 = number.toString(16); 16 | 17 | while (md5.length() < 32) 18 | md5 = "0" + md5; 19 | 20 | return md5; 21 | } catch (NoSuchAlgorithmException e) { 22 | Log.e("MD5", e.getLocalizedMessage()); 23 | return null; 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/anim/cycle_5.xml: -------------------------------------------------------------------------------- 1 | 2 | 14 | 15 | 18 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/anim/do_nothing.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/anim/shake.xml: -------------------------------------------------------------------------------- 1 | 2 | 14 | 15 | 21 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/anim/slide_up.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-hdpi/ic_backspace_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-hdpi/ic_backspace_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-hdpi/ic_fingerprint_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-hdpi/ic_fingerprint_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-mdpi/ic_backspace_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-mdpi/ic_backspace_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-mdpi/ic_fingerprint_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-mdpi/ic_fingerprint_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-xhdpi/ic_backspace_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-xhdpi/ic_backspace_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-xhdpi/ic_fingerprint_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-xhdpi/ic_fingerprint_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-xxhdpi/ic_backspace_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-xxhdpi/ic_backspace_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-xxhdpi/ic_fingerprint_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-xxhdpi/ic_fingerprint_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-xxxhdpi/ic_backspace_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-xxxhdpi/ic_backspace_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/drawable-xxxhdpi/ic_fingerprint_white_24dp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/PasscodeLock/src/main/res/drawable-xxxhdpi/ic_fingerprint_white_24dp.png -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/values-sw600dp/bools.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | true 5 | 6 | 7 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/values-xlarge/bools.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | true 5 | 6 | 7 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/values/bools.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | false 5 | 6 | 7 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | #ff444444 6 | #ff5f5f5f 7 | #ffcccccc 8 | #ffe5e5e5 9 | 10 | @color/gray_e5 11 | @android:color/black 12 | @android:color/black 13 | @color/gray_c 14 | @android:color/white 15 | @color/gray_5f 16 | @color/gray_4 17 | @android:color/black 18 | 19 | 20 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 24sp 6 | 1dp 7 | 18dp 8 | 9 | 10 | -------------------------------------------------------------------------------- /PasscodeLock/src/main/res/xml/passcode_preferences.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 10 | 11 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Simplenote/.gitignore: -------------------------------------------------------------------------------- 1 | build/* -------------------------------------------------------------------------------- /Simplenote/gradle.properties-example: -------------------------------------------------------------------------------- 1 | crashlyticsApiKey = 0 2 | googleAnalyticsId = 3 | loginEmail = 4 | loginPassword = 5 | sentryDsn=https://00000000000000000000000000000000@sentry.io/00000000 6 | simperiumAppId = history-analyst-dad 7 | simperiumAppKey = dccacc59bbef4982a15abaeafaf7bc8a 8 | wpcomClientId = 9 | screenshotEmail= 10 | screenshotPassword= 11 | -------------------------------------------------------------------------------- /Simplenote/lint.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Simplenote/src/androidTest/java/com/automattic/simplenote/SimplenoteAppRunner.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote 2 | 3 | import android.app.Application 4 | import android.content.Context 5 | import androidx.test.runner.AndroidJUnitRunner 6 | 7 | class SimplenoteAppRunner : AndroidJUnitRunner() { 8 | override fun newApplication(cl: ClassLoader, className: String, context: Context): Application { 9 | return super.newApplication(cl, SimplenoteTest::class.java.name, context) 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Simplenote/src/androidTest/java/com/automattic/simplenote/SimplenoteTest.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote 2 | 3 | import com.automattic.simplenote.models.Note 4 | import com.automattic.simplenote.models.Tag 5 | import com.automattic.simplenote.utils.TestBucket 6 | import com.simperium.client.Bucket 7 | 8 | class SimplenoteTest : Simplenote() { 9 | var useTestBucket = false // Decides whether to use the test bucket implementation or the default. 10 | 11 | private val tagsBucket = object : TestBucket("tags") { 12 | override fun build(key: String?): Tag { 13 | return Tag(key) 14 | } 15 | } 16 | 17 | private val notesBucket = object : TestBucket("notes") { 18 | override fun build(key: String?): Note { 19 | return Note(key) 20 | } 21 | } 22 | 23 | override fun getTagsBucket(): Bucket = if (useTestBucket) tagsBucket else super.getTagsBucket() 24 | 25 | override fun getNotesBucket(): Bucket = if (useTestBucket) notesBucket else super.getNotesBucket() 26 | } 27 | 28 | -------------------------------------------------------------------------------- /Simplenote/src/androidTest/java/com/automattic/simplenote/utils/StringUtils.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils 2 | 3 | import java.security.SecureRandom 4 | 5 | val charPool: List = ('a'..'z') + ('A'..'Z') + ('0'..'9') 6 | 7 | fun getRandomStringOfLen(len: Int): String { 8 | val random = SecureRandom() 9 | val bytes = ByteArray(len) 10 | random.nextBytes(bytes) 11 | 12 | return (bytes.indices) 13 | .map { charPool[random.nextInt(charPool.size)] } 14 | .joinToString("") 15 | } 16 | -------------------------------------------------------------------------------- /Simplenote/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/debug/java/com/automattic/simplenote/HiltTestActivity.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote 2 | 3 | import dagger.hilt.android.AndroidEntryPoint 4 | 5 | @AndroidEntryPoint 6 | class HiltTestActivity : ThemedAppCompatActivity() -------------------------------------------------------------------------------- /Simplenote/src/debug/res/drawable/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/debug/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/debug/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/debug/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/debug/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/debug/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/debug/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/debug/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/debug/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/debug/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/debug/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/debug/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Simplenote (Debug) 4 | 5 | -------------------------------------------------------------------------------- /Simplenote/src/debug/res/xml/shortcuts.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 10 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/assets/fonts/Roboto-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/assets/fonts/Roboto-Light.ttf -------------------------------------------------------------------------------- /Simplenote/src/main/assets/fonts/Roboto-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/assets/fonts/Roboto-Medium.ttf -------------------------------------------------------------------------------- /Simplenote/src/main/assets/fonts/Roboto-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/assets/fonts/Roboto-Regular.ttf -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/NoteListWidgetDarkService.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote; 2 | 3 | import android.content.Intent; 4 | import android.widget.RemoteViewsService; 5 | 6 | public class NoteListWidgetDarkService extends RemoteViewsService { 7 | @Override 8 | public RemoteViewsFactory onGetViewFactory(Intent intent) { 9 | return new NoteListWidgetFactory(getApplicationContext(), intent); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/NoteListWidgetLightService.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote; 2 | 3 | import android.content.Intent; 4 | import android.widget.RemoteViewsService; 5 | 6 | public class NoteListWidgetLightService extends RemoteViewsService { 7 | @Override 8 | public RemoteViewsFactory onGetViewFactory(Intent intent) { 9 | return new NoteListWidgetFactory(getApplicationContext(), intent); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/authentication/SessionManager.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.authentication 2 | 3 | import com.simperium.Simperium 4 | import com.simperium.client.User 5 | import javax.inject.Inject 6 | 7 | sealed class UserSession { 8 | object UnauthorizedUser : UserSession() 9 | data class AuthorizedUser(val user: User) : UserSession() 10 | } 11 | 12 | class SessionManager @Inject constructor(private val simperium: Simperium) { 13 | fun getCurrentUser(): UserSession { 14 | val currentUser = simperium.user ?: return UserSession.UnauthorizedUser 15 | 16 | return when (currentUser.email != null && !currentUser.needsAuthorization()) { 17 | true -> UserSession.AuthorizedUser(currentUser) 18 | false -> UserSession.UnauthorizedUser 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/authentication/magiclink/MagicLinkAuthError.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.authentication.magiclink 2 | 3 | enum class MagicLinkAuthError(val str: String) { 4 | INVALID_CODE("invalid-code"), 5 | REQUEST_NOT_FOUND("request-not-found"), 6 | UNKNOWN_ERROR("") 7 | } 8 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/di/AppModule.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.di 2 | 3 | import android.content.Context 4 | import com.automattic.simplenote.Simplenote 5 | import dagger.Module 6 | import dagger.Provides 7 | import dagger.hilt.InstallIn 8 | import dagger.hilt.android.qualifiers.ApplicationContext 9 | import dagger.hilt.components.SingletonComponent 10 | 11 | @Module 12 | @InstallIn(SingletonComponent::class) 13 | object AppModule { 14 | @Provides 15 | fun provideSimplenote(@ApplicationContext appContext: Context): Simplenote = appContext as Simplenote 16 | } 17 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/di/NetworkModule.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.di 2 | 3 | import com.automattic.simplenote.networking.HeadersInterceptor 4 | import com.automattic.simplenote.networking.SimpleHttp 5 | import dagger.Module 6 | import dagger.Provides 7 | import dagger.hilt.InstallIn 8 | import dagger.hilt.components.SingletonComponent 9 | import okhttp3.OkHttpClient 10 | import java.util.concurrent.TimeUnit 11 | 12 | private const val TIMEOUT_SECS = 30 13 | 14 | @Module 15 | @InstallIn(SingletonComponent::class) 16 | object NetworkModule { 17 | @Provides 18 | fun provideOkHttp(): OkHttpClient = OkHttpClient().newBuilder() 19 | .addInterceptor(HeadersInterceptor()) 20 | .readTimeout(TIMEOUT_SECS.toLong(), TimeUnit.SECONDS) 21 | .build() 22 | 23 | @Provides 24 | fun provideSimpleHttp(okHttpClient: OkHttpClient): SimpleHttp = SimpleHttp(okHttpClient) 25 | } 26 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/di/ThreadModule.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.di 2 | 3 | import dagger.Module 4 | import dagger.Provides 5 | import dagger.hilt.InstallIn 6 | import dagger.hilt.components.SingletonComponent 7 | import kotlinx.coroutines.CoroutineDispatcher 8 | import kotlinx.coroutines.Dispatchers 9 | import javax.inject.Named 10 | 11 | const val IO_THREAD = "IO_THREAD" 12 | 13 | @Module 14 | @InstallIn(SingletonComponent::class) 15 | abstract class ThreadModule { 16 | companion object { 17 | @Provides 18 | @Named(IO_THREAD) 19 | fun provideIODispatcher(): CoroutineDispatcher { 20 | return Dispatchers.IO 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/models/NoteCountIndexer.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.models; 2 | 3 | import com.simperium.client.Bucket; 4 | import com.simperium.client.BucketSchema.Index; 5 | import com.simperium.client.BucketSchema.Indexer; 6 | 7 | import java.util.ArrayList; 8 | import java.util.List; 9 | 10 | public class NoteCountIndexer implements Indexer { 11 | 12 | private Bucket mNotesBucket; 13 | 14 | public NoteCountIndexer(Bucket notesBucket) { 15 | mNotesBucket = notesBucket; 16 | } 17 | 18 | @Override 19 | public List index(Tag tag) { 20 | List indexes = new ArrayList<>(1); 21 | int count = Note.allInTag(mNotesBucket, tag.getSimperiumKey()).count(); 22 | indexes.add(new Index(Tag.NOTE_COUNT_INDEX_NAME, count)); 23 | return indexes; 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/models/NoteFullTextIndexer.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.models; 2 | 3 | import com.simperium.client.FullTextIndex; 4 | 5 | import java.util.HashMap; 6 | import java.util.Map; 7 | 8 | public class NoteFullTextIndexer implements FullTextIndex.Indexer { 9 | 10 | @SuppressWarnings("unused") 11 | static public final String COMMA = ", "; 12 | static public final String[] INDEXES = Note.FULL_TEXT_INDEXES; 13 | 14 | @Override 15 | public Map index(String[] keys, Note note) { 16 | Map values = new HashMap<>(keys.length); 17 | values.put(INDEXES[0], note.getTitle()); 18 | values.put(INDEXES[1], note.getContent()); 19 | return values; 20 | } 21 | 22 | } -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/models/NoteIndexer.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.models; 2 | 3 | import com.simperium.client.BucketSchema.Index; 4 | import com.simperium.client.BucketSchema.Indexer; 5 | 6 | import java.util.ArrayList; 7 | import java.util.List; 8 | 9 | public class NoteIndexer implements Indexer { 10 | 11 | @Override 12 | public List index(Note note) { 13 | 14 | List indexes = new ArrayList<>(); 15 | indexes.add(new Index(Note.PINNED_INDEX_NAME, note.isPinned())); 16 | indexes.add(new Index(Note.CONTENT_PREVIEW_INDEX_NAME, note.getContentPreview())); 17 | indexes.add(new Index(Note.TITLE_INDEX_NAME, note.getTitle())); 18 | indexes.add(new Index(Note.MODIFIED_INDEX_NAME, note.getModificationDate().getTimeInMillis())); 19 | indexes.add(new Index(Note.CREATED_INDEX_NAME, note.getCreationDate().getTimeInMillis())); 20 | return indexes; 21 | 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/models/Suggestion.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.models; 2 | 3 | import androidx.annotation.IntDef; 4 | 5 | import java.lang.annotation.Retention; 6 | 7 | import static java.lang.annotation.RetentionPolicy.SOURCE; 8 | 9 | @SuppressWarnings("unused") 10 | public class Suggestion { 11 | @Retention(SOURCE) 12 | @IntDef({ 13 | Type.HISTORY, 14 | Type.QUERY, 15 | Type.TAG 16 | }) 17 | public @interface Type { 18 | int HISTORY = 0; 19 | int QUERY = 1; 20 | int TAG = 2; 21 | } 22 | 23 | private String mName; 24 | private @Type int mType; 25 | 26 | public Suggestion(String name, @Type int type) { 27 | mName = name; 28 | mType = type; 29 | } 30 | 31 | public String getName() { 32 | return mName; 33 | } 34 | 35 | public @Type int getType() { 36 | return mType; 37 | } 38 | 39 | public void setName(String name) { 40 | mName = name; 41 | } 42 | 43 | public void setType(@Type int type) { 44 | mType = type; 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/models/TagItem.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.models 2 | 3 | data class TagItem(val tag: Tag, val noteCount: Int) 4 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/networking/HeadersInterceptor.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.networking 2 | 3 | import okhttp3.Interceptor 4 | import okhttp3.Response 5 | import java.util.Locale 6 | 7 | /** 8 | * Interceptor used to add headers we expect on all OkHttp calls. 9 | */ 10 | class HeadersInterceptor : Interceptor { 11 | override fun intercept(chain: Interceptor.Chain): Response { 12 | val newRequest = chain.request().newBuilder() 13 | .header("Accept-Language", Locale.getDefault().toLanguageTag()) 14 | .build() 15 | return chain.proceed(newRequest) 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/repositories/MagicLinkRepository.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.repositories 2 | 3 | import androidx.annotation.StringRes 4 | import com.automattic.simplenote.authentication.magiclink.MagicLinkAuthError 5 | 6 | interface MagicLinkRepository { 7 | suspend fun completeLogin(username: String, authCode: String): MagicLinkResponseResult 8 | suspend fun requestLogin(username: String): MagicLinkResponseResult 9 | } 10 | 11 | sealed class MagicLinkResponseResult { 12 | data class MagicLinkCompleteSuccess(val username: String, val syncToken: String) : MagicLinkResponseResult() 13 | data class MagicLinkRequestSuccess(val code: Int) : MagicLinkResponseResult() 14 | data class MagicLinkError(val code: Int, val authError: MagicLinkAuthError = MagicLinkAuthError.UNKNOWN_ERROR, @StringRes val errorMessage: Int? = null) : MagicLinkResponseResult() 15 | } 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/repositories/TagsRepository.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.repositories 2 | 3 | import com.automattic.simplenote.models.Tag 4 | import com.automattic.simplenote.models.TagItem 5 | import kotlinx.coroutines.flow.Flow 6 | 7 | interface TagsRepository { 8 | fun saveTag(tagName: String): Boolean 9 | fun isTagValid(tagName: String): Boolean 10 | fun isTagMissing(tagName: String): Boolean 11 | fun isTagConflict(tagName: String, oldTagName: String): Boolean 12 | fun getCanonicalTagName(tagName: String): String 13 | fun renameTag(tagName: String, oldTag: Tag): Boolean 14 | suspend fun allTags(): List 15 | suspend fun searchTags(query: String): List 16 | suspend fun deleteTag(tag: Tag) 17 | suspend fun tagsChanged(): Flow 18 | } 19 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/utils/AccountVerificationEmailHandler.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils; 2 | 3 | import androidx.annotation.NonNull; 4 | 5 | public interface AccountVerificationEmailHandler { 6 | void onSuccess(@NonNull String url); 7 | void onFailure(@NonNull Exception e, @NonNull String url); 8 | } 9 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/utils/BaseExt.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils 2 | 3 | import android.widget.Toast 4 | import androidx.annotation.ColorRes 5 | import androidx.annotation.StringRes 6 | import androidx.appcompat.app.AppCompatActivity 7 | import androidx.core.content.ContextCompat 8 | 9 | fun AppCompatActivity.toast(@StringRes resId: Int, length: Int = Toast.LENGTH_SHORT) { 10 | Toast.makeText(this, getString(resId), length).show() 11 | } 12 | 13 | fun AppCompatActivity.getColorStr(@ColorRes color: Int): String { 14 | val hintColor = ContextCompat.getColor(this, color) 15 | val hintHexColor = hintColor.toHexString().replace("ff", "") 16 | return "#$hintHexColor" 17 | } 18 | 19 | fun Int.toHexString(): String { 20 | return Integer.toHexString(this) 21 | } 22 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/utils/DeleteAccountRequestHandler.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils; 2 | 3 | public interface DeleteAccountRequestHandler { 4 | void onSuccess(); 5 | void onFailure(); 6 | } 7 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/utils/Either.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils 2 | 3 | sealed class Either { 4 | 5 | data class Left(val l: L) : Either() 6 | 7 | data class Right(val r: R) : Either() 8 | 9 | fun fold(fnL: (L) -> T, fnR: (R) -> T): T { 10 | return when (this) { 11 | is Left -> fnL(l) 12 | is Right -> fnR(r) 13 | } 14 | } 15 | 16 | fun map(fn: (R) -> R2): Either { 17 | return when (this) { 18 | is Left -> this 19 | is Right -> Right(fn(r)) 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/utils/FileUtils.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils; 2 | 3 | import android.content.Context; 4 | import android.net.Uri; 5 | import android.webkit.MimeTypeMap; 6 | 7 | import java.io.BufferedReader; 8 | import java.io.IOException; 9 | import java.io.InputStream; 10 | import java.io.InputStreamReader; 11 | 12 | public class FileUtils { 13 | 14 | public static String readFile(Context context, Uri uri) throws IOException { 15 | StringBuilder stringBuilder = new StringBuilder(); 16 | InputStream inputStream = context.getContentResolver().openInputStream(uri); 17 | BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); 18 | String line; 19 | while ((line = reader.readLine()) != null) { 20 | stringBuilder.append(line); 21 | stringBuilder.append("\n"); 22 | } 23 | inputStream.close(); 24 | return stringBuilder.toString(); 25 | } 26 | 27 | public static String getFileExtension(Context context, Uri uri) { 28 | return MimeTypeMap.getSingleton().getExtensionFromMimeType(context.getContentResolver().getType(uri)); 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/utils/HtmlCompat.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils; 2 | 3 | import android.os.Build; 4 | import android.text.Html; 5 | import android.text.Spanned; 6 | 7 | public class HtmlCompat { 8 | @SuppressWarnings("deprecation") 9 | public static Spanned fromHtml(String source) { 10 | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { 11 | return Html.fromHtml(source, Html.FROM_HTML_MODE_LEGACY); 12 | } else { 13 | return Html.fromHtml(source); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/utils/IntentUtils.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils; 2 | 3 | import android.content.ComponentName; 4 | import android.content.Context; 5 | import android.content.Intent; 6 | 7 | public class IntentUtils { 8 | public static String getMainActivityClassName(Context context) { 9 | String packageName = context.getPackageName(); 10 | Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(packageName); 11 | if (launchIntent != null && launchIntent.getComponent() != null) { 12 | ComponentName componentName = launchIntent.getComponent(); 13 | return componentName.getClassName(); 14 | } 15 | 16 | return "com.simplenote.automattic.NotesActivity"; 17 | } 18 | 19 | public static Intent maybeAliasedIntent(Context context) { 20 | String packageName = context.getPackageName(); 21 | 22 | Intent intent = new Intent(); 23 | intent.setComponent(new ComponentName(packageName, getMainActivityClassName(context))); 24 | 25 | return intent; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/utils/locale/ContextBasedLocaleProvider.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils.locale 2 | 3 | import android.content.Context 4 | import androidx.core.os.ConfigurationCompat 5 | import dagger.hilt.android.qualifiers.ApplicationContext 6 | import java.util.Locale 7 | import javax.inject.Inject 8 | 9 | class ContextBasedLocaleProvider @Inject constructor( 10 | @ApplicationContext private val context: Context 11 | ) : LocaleProvider { 12 | override fun provideLocale(): Locale? { 13 | return ConfigurationCompat.getLocales(context.resources.configuration)[0] 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/utils/locale/LocaleProvider.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils.locale 2 | 3 | import java.util.Locale 4 | 5 | interface LocaleProvider { 6 | fun provideLocale(): Locale? 7 | } 8 | -------------------------------------------------------------------------------- /Simplenote/src/main/java/com/automattic/simplenote/widgets/CheckableSpan.java: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.widgets; 2 | 3 | import android.text.style.ClickableSpan; 4 | import android.view.View; 5 | 6 | import androidx.annotation.NonNull; 7 | 8 | public class CheckableSpan extends ClickableSpan { 9 | 10 | private boolean isChecked; 11 | 12 | public boolean isChecked() { 13 | return isChecked; 14 | } 15 | 16 | public void setChecked(boolean checked) { 17 | isChecked = checked; 18 | } 19 | 20 | @Override 21 | public void onClick(@NonNull View view) { 22 | setChecked(!isChecked); 23 | if (view instanceof SimplenoteEditText) { 24 | try { 25 | ((SimplenoteEditText)view).toggleCheckbox(this); 26 | } catch (Exception e) { 27 | e.printStackTrace(); 28 | } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/anim/full_screen_dialog_fragment_none.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/anim/full_screen_dialog_fragment_slide_down.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/anim/full_screen_dialog_fragment_slide_up.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 11 | 12 | 13 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/animator/button_raise.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/color/accent_text_button_disabled_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/color/bg_drawer_selector_accent.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/color/bg_drawer_selector_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/color/bg_drawer_selector_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/color/button_disabled_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/color/toolbar_icon_alpha_40_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-hdpi/logo_login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/drawable-hdpi/logo_login.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-large-land/divider_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-ldrtl/ic_arrow_top_right_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-ldrtl/ic_chevron_left_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-ldrtl/ic_chevron_right_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-mdpi/logo_login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/drawable-mdpi/logo_login.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-night/bg_style_black.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-night/bg_style_default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-night/bg_style_sepia.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-nodpi/note_list_widget_preview_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/drawable-nodpi/note_list_widget_preview_dark.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-nodpi/note_list_widget_preview_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/drawable-nodpi/note_list_widget_preview_light.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-nodpi/note_widget_preview_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/drawable-nodpi/note_widget_preview_dark.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-nodpi/note_widget_preview_light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/drawable-nodpi/note_widget_preview_light.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-xhdpi/logo_login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/drawable-xhdpi/logo_login.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-xxhdpi/logo_login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/drawable-xxhdpi/logo_login.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable-xxxhdpi/logo_login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/drawable-xxxhdpi/logo_login.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_bottom_sheet_handle.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_key.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_black.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_classic.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_matrix.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_mono.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_popup.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 9 | 10 | 11 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_publication.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_sepia.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_style_black.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 11 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_style_default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 11 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_style_matrix.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 11 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_list_style_sepia.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 11 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_pin_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 11 | 12 | 14 | 15 | 18 | 19 | 20 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_pin_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 11 | 12 | 14 | 15 | 18 | 19 | 20 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_pin_selector_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_pin_selector_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_pinned_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 11 | 12 | 14 | 15 | 18 | 19 | 20 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 33 | 34 | 36 | 37 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_pinned_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 11 | 12 | 14 | 15 | 18 | 19 | 20 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 33 | 34 | 36 | 37 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_black.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_classic_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_classic_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_default_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_default_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_fab_color.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_matrix_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_matrix_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_mono_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_mono_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_publication_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_publication_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_sepia_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_ripple_oval_sepia_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 9 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_splash.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 9 | 10 | 11 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_style_activated.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_style_black.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_style_default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_style_locked.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/bg_style_sepia.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/divider_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/divider_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_add_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_arrow_left_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_arrow_top_right_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_arrow_up_16dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_backspace_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_browser_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_call_white_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_checkbox_editor_checked_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_checkbox_editor_unchecked_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_checkbox_list_checked_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_checkbox_list_unchecked_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_checklist_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 23 | 24 | 25 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_chevron_left_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_chevron_right_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_collaborate_16dp.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_collaborate_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_copy_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_cross_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_cut_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_email_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_history_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_info_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_launcher_foreground_green.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_launcher_mono.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_link_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_lock_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_mail.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_mail_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_map_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_new_note_24dp.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_note_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_notes_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_paste_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_pinned_16dp.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_pinned_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_publish_16dp.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_publish_24dp.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_search_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_select_all_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_share_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_share_alt_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_share_collaborate_48dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 12 | 13 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_share_publish_48dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 12 | 13 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_share_unpublish_48dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 12 | 13 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_share_wordpress_48dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 12 | 13 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_shortcut_create_48dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_simplenote_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_simplenote_blue_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_tag_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_tags_close_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_tags_open_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_themes_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_trash_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 23 | 24 | 25 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_trash_disabled_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 14 | 15 | 16 | 20 | 21 | 22 | 26 | 27 | 28 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_trash_restore_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_untagged_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_visibility_off_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 12 | 13 | 14 | 17 | 18 | 19 | 22 | 23 | 24 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_visibility_on_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_warning_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 18 | 19 | 20 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/ic_wordpress_24dp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/note_widget_background_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/note_widget_background_dark_black.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/note_widget_background_dark_sepia.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/note_widget_background_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/drawable/note_widget_background_light_sepia.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/activity_about.xml: -------------------------------------------------------------------------------- 1 | 8 | 9 | 16 | 17 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/activity_preferences.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 12 | 13 | 14 | 17 | 18 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/activity_signup.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 19 | 20 | 24 | 25 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/authentication_fancy_or.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 17 | 23 | 29 | 30 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/autocomplete_list_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/collaborators_header.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/drawer_action_edit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/fragment_note_markdown.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/fragment_note_webview.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 11 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/list_item_single_choice.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 20 | 21 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/note_widget_configure.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/note_widget_configure_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/progressbar_dialog.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 14 | 20 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/progressbar_toolbar.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/share_button_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 17 | 18 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/layout/toolbar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/menu/bulk_edit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 14 | 15 | 16 | 21 | 22 | 23 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/menu/sort_bar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 9 | 10 | 11 | 14 | 15 | 16 | 19 | 20 | 21 | 24 | 25 | 26 | 29 | 30 | 31 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/menu/tags_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/menu/view_link.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 10 | 15 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/mipmap-anydpi-v26/ic_launcher_green.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Simplenote/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Simplenote/src/main/res/values-large/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 560dp 7 | 24dp 8 | 80dp 9 | 10 | 11 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/values-zh: -------------------------------------------------------------------------------- 1 | values-zh-rCN -------------------------------------------------------------------------------- /Simplenote/src/main/res/values/available_languages.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | en_US 6 | ar 7 | de 8 | es 9 | fr 10 | he 11 | id 12 | it 13 | ja 14 | ko 15 | nl 16 | pt_BR 17 | ru 18 | sv 19 | tr 20 | zh_CN 21 | zh_TW 22 | 23 | 24 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/values/drawables.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | @drawable/ic_simplenote_blue_24dp 7 | 8 | 9 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/values/integers.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 16 6 | 12 7 | 400 8 | 50 9 | 250 10 | 150 11 | 80 12 | 320 13 | 100 14 | 300 15 | 200 16 | 133 17 | 266 18 | 19 | 20 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/values/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | @string/note_selected 7 | @string/notes_selected 8 | 9 | 10 | 11 | @string/note_deleted 12 | @string/notes_trashed 13 | 14 | 15 | 16 | @string/word 17 | @string/words 18 | 19 | 20 | 21 | @string/character 22 | @string/characters 23 | 24 | 25 | 26 | @string/references_one 27 | @string/references_other 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/xml/note_list_widget_info_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/xml/note_list_widget_info_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/xml/note_widget_info_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/xml/note_widget_info_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 15 | 16 | -------------------------------------------------------------------------------- /Simplenote/src/main/res/xml/shortcuts.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 10 | 14 | 15 | -------------------------------------------------------------------------------- /Simplenote/src/test/java/com/automattic/simplenote/utils/StringUtils.kt: -------------------------------------------------------------------------------- 1 | package com.automattic.simplenote.utils 2 | 3 | import java.security.SecureRandom 4 | 5 | 6 | fun getLocalRandomStringOfLen(len: Int): String { 7 | val charPool: List = ('a'..'z') + ('A'..'Z') + ('0'..'9') 8 | val random = SecureRandom() 9 | val bytes = ByteArray(len) 10 | random.nextBytes(bytes) 11 | 12 | return (bytes.indices) 13 | .map { charPool[random.nextInt(charPool.size)] } 14 | .joinToString("") 15 | } 16 | -------------------------------------------------------------------------------- /Wear/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Wear/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /Users/dan/Documents/AndroidSDK/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | -------------------------------------------------------------------------------- /Wear/src/main/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Wear/src/main/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Wear/src/main/res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Wear/src/main/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Wear/src/main/res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Wear/src/main/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Wear/src/main/res/drawable-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/Wear/src/main/res/drawable-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Wear/src/main/res/values-ar/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | تمت الملاحظة 6 | خطأ 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-de/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | Notiert 6 | Fehler 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-es/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | Anotado 6 | Error 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-fr/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | Avec note 6 | Erreur 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-he/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | נוסף פתק 6 | שגיאה 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-id/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | Dicatat 6 | Kesalahan 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-it/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | Con nota 6 | Errore 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-iw/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | נוסף פתק 6 | שגיאה 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-ja/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | ノート作成 6 | エラー 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-ko/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | 메모가 작성됨 6 | 오류 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-pl/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | Noted 6 | Błąd 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-ru/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | Записано 6 | Ошибка 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-tr/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | Not alındı 6 | Hata 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-zh: -------------------------------------------------------------------------------- 1 | values-zh-rCN -------------------------------------------------------------------------------- /Wear/src/main/res/values-zh-rCN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | 已添加笔记 6 | 错误 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values-zh-rTW/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | 已記下 6 | 錯誤 7 | 8 | 9 | -------------------------------------------------------------------------------- /Wear/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simplenote 5 | Noted 6 | Error 7 | 8 | 9 | -------------------------------------------------------------------------------- /fastlane/env.example: -------------------------------------------------------------------------------- 1 | GITHUB_TOKEN= 2 | FASTLANE_SKIP_UPDATE_CHECK=true 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ar/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/ar/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/ar/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 23.5: 2 | - تم تحديث رابط إشعار الخصوصية الخاص بالمستخدمين في كاليفورنيا 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ar/short_description.txt: -------------------------------------------------------------------------------- 1 | يمكنك تدوين الملحوظات، وإنشاء قوائم المهام، وتسجيل الأفكار، والمزيد. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ar/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/de-DE/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/de-DE/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/de-DE/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | Link zur Datenschutzerklärung für Benutzer in Kalifornien aktualisiert. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/de-DE/short_description.txt: -------------------------------------------------------------------------------- 1 | Erstelle Notizen, schreibe Aufgabenlisten, notiere Ideen und mehr. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/de-DE/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/en-US/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | Updated privacy policy link for California users. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/release_notes.txt: -------------------------------------------------------------------------------- 1 | * Added support for logging in with magic links for a passwordless experience. 2 | 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/short_description.txt: -------------------------------------------------------------------------------- 1 | Take notes, create to-do lists, capture ideas, and more. -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote -------------------------------------------------------------------------------- /fastlane/metadata/android/es-ES/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/es-ES/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/es-ES/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | Se ha actualizado el enlace que lleva a la política de privacidad para usuarios de California. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/es-ES/short_description.txt: -------------------------------------------------------------------------------- 1 | Toma notas, crea listas de tareas, captura ideas y mucho más. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/es-ES/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/fr-FR/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/fr-FR/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/fr-FR/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35 : 2 | Mise à jour du lien vers la politique de confidentialité pour les utilisateurs californiens. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/fr-FR/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/id/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/id/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/id/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | - Tautan kebijakan privasi diperbarui untuk pengguna di California. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/id/short_description.txt: -------------------------------------------------------------------------------- 1 | Tulis catatan, buat daftar tugas, kembangan ide, dan banyak lagi. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/id/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/it-IT/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/it-IT/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/it-IT/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | Aggiornato il link all'informativa sulla privacy per utenti in California. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/it-IT/short_description.txt: -------------------------------------------------------------------------------- 1 | Prendi appunti, crea elenchi di cose da fare, acquisisci idee e molto altro. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/it-IT/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/iw-IL/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/iw-IL/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/iw-IL/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | עדכנו קישור למדיניות פרטיות למשתמשים בקליפורניה. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/iw-IL/short_description.txt: -------------------------------------------------------------------------------- 1 | לרשום פתקים, ליצור רשימת משימות, לתעד רעיונות ועוד. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/iw-IL/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ja-JP/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/ja-JP/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/ja-JP/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 23.5: 2 | カリフォルニア州のユーザー用のプライバシーポリシーのリンクを更新しました。 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ja-JP/full_description.txt: -------------------------------------------------------------------------------- 1 | Simplenote では、メモ書き、ToDo リストの作成、アイデアのメモなどを簡単に行うことができます。開いたら、あとは思い付いたことを書き込むだけ。メモが増えても、タグやピンを使ってわかりやすくまとめることができます。クイック検索を使えば必要なものが見つかります。メモは使用しているデバイスに無料で同期されるため、いつでも確認できます。 2 | 3 | - 手軽にメモできる 4 | - すべての内容をすべてのデバイスと同期 5 | - ノートを共同編集し共有する 6 | - タグを使ってまとめられる 7 | - メールアドレスまたは WordPress.com アカウントでログイン 8 | 9 | 確実に同期 10 | - あらゆる PC、スマホ、タブレットともシームレスに自動で同期します。 11 | - 使用中にバックアップと同期を実行するため、データを紛失することはありません。 12 | 13 | 共同編集機能と共有機能 14 | - 複数で作業できる共同編集機能 - アイデアを仲間とシェアしたり、ルームメイトと一緒に買い物リストを作成したりできます。 15 | - コンテンツのウェブ公開と、特定の相手とのリンクのシェアから選択できます。 16 | - WordPress アカウントと連携させることで、WordPress サイトに直接公開できます。 17 | - サードパーティ製アプリとすばやく簡単に共有できます。 18 | 19 | 整理と検索 20 | - ノートにタグ付けしてわかりやすく整理。タグを使ってすばやく検索や分類ができます。 21 | - キーワードのハイライト表示で、探している部分がすばやく見つかります。 22 | - マークダウン機能による書式設定。 23 | - やることリストの作成。 24 | - ノートとタグのソート順序を選択。 25 | - よく使うノートをピンで固定。 26 | - 名前の編集と順序の並べ替えでタグを直接編集。 27 | - パスコードによるロック機能でコンテンツを保護。 28 | 29 | -- 30 | 31 | プライバシーポリシー :https://automattic.com/privacy/ 32 | 利用規約 :https://simplenote.com/terms/ 33 | 34 | -- 35 | 36 | simplenote.com にアクセスして、他のデバイス用の Simplenote をダウンロードしてください。 37 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ja-JP/short_description.txt: -------------------------------------------------------------------------------- 1 | メモしたり、ToDo リストを作ったり、アイデアを書き留めたり、いろいろな使い方ができます。 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ja-JP/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ko-KR/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/ko-KR/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/ko-KR/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | - 캘리포니아 사용자를 위한 개인정보 취급방침 링크가 업데이트됨 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ko-KR/full_description.txt: -------------------------------------------------------------------------------- 1 | Simplenote로 손쉽게 메모를 작성하고, 할 일 목록을 만들고 아이디어를 보관할 수 있습니다. 메모를 열고 생각나는 아이디어를 적으면 끝입니다. 컬렉션의 내용이 다양해지면 태그와 핀으로 내용을 정리하고 빠른 검색 기능으로 필요한 내용을 찾을 수 있습니다. Simplenote는 여러 기기에서 무료로 동기화되기 때문에 내가 작성한 메모를 언제든지 확인할 수 있습니다. 2 | 3 | - 간단한 메모 작성 환경 4 | - 모든 기기에서 모든 콘텐츠 동기화 5 | - 공동 작업 및 공유 6 | - 태그로 깔끔하게 정리 7 | - 이메일 또는 워드프레스닷컴 계정으로 로그인 8 | 9 | 자신 있게 동기화 10 | - 모든 컴퓨터, 휴대폰 또는 태블릿에서 자동으로 원활하게 동기화됩니다. 11 | - 메모 작성과 동시에 모든 내용이 백업 및 동기화되므로 손실되는 내용이 없습니다. 12 | 13 | 공동 작업 및 공유 14 | - 공동으로 협력하여 작업하세요. 동료와 아이디어를 공유하거나 룸메이트와 함께 장보기 목록을 작성해 보세요. 15 | - 콘텐츠의 웹 게시 여부를 결정하고 원하는 사람과 링크를 공유하세요. 16 | - 워드프레스닷컴 계정에 연결하여 워드프레스 사이트에 바로 게시하세요. 17 | - 타사 앱과 빠르고 쉽게 공유할 수 있습니다. 18 | 19 | 정리 및 검색 20 | - 태그로 깔끔하게 정리하여 빠르게 검색하고 정렬해 보세요. 21 | - 키워드 강조 표시로 원하는 항목을 즉시 찾을 수 있습니다. 22 | - 마크다운을 사용하여 서식을 추가하세요. 23 | - 할 일 목록을 만드세요. 24 | - 메모 및 태그 정렬 순서를 선택하세요. 25 | - 가장 많이 사용하는 메모를 고정하세요. 26 | - 이름을 바꾸고 순서를 변경하여 직접 태그를 편집하세요. 27 | - 암호 잠금으로 콘텐츠를 보호하세요. 28 | 29 | -- 30 | 31 | 개인정보 취급방침: https://automattic.com/privacy/ 32 | 서비스 약관: https://simplenote.com/terms/ 33 | 34 | -- 35 | 36 | simplenote.com으로 이동하여 다른 기기에 Simplenote를 다운로드하세요. 37 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ko-KR/short_description.txt: -------------------------------------------------------------------------------- 1 | 메모하고, 할 일 목록을 만들고, 아이디어를 포착하는 등의 작업을 수행하세요. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ko-KR/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/nl-NL/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/nl-NL/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/nl-NL/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | Bijgewerkte link naar privacybeleid voor gebruikers in Californië. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/nl-NL/short_description.txt: -------------------------------------------------------------------------------- 1 | Maak aantekeningen, stel takenlijsten op, leg ideeën vast en meer. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/nl-NL/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/pt-BR/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/pt-BR/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/pt-BR/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | Link da política de privacidade para usuários residentes da Califórnia atualizado. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/pt-BR/short_description.txt: -------------------------------------------------------------------------------- 1 | Faça anotações, crie listas de tarefas, capte ideias e muito mais. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/pt-BR/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ru-RU/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/ru-RU/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/ru-RU/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | Обновлена ссылка на политику защиты конфиденциальности для пользователей из Калифорнии. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ru-RU/short_description.txt: -------------------------------------------------------------------------------- 1 | Делайте заметки, создавайте списки дел, записывайте идеи и так далее. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/ru-RU/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/sv-SE/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/sv-SE/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/sv-SE/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | Uppdaterad länk till integritetspolicy för användare i Kalifornien. 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/sv-SE/short_description.txt: -------------------------------------------------------------------------------- 1 | Gör anteckningar, skapa att-göra-listor, skriv ner idéer med mera. 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/sv-SE/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/tr-TR/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/tr-TR/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/tr-TR/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | Kaliforniya'daki kullanıcılar için gizlilik politikası bağlantısı güncellendi 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/tr-TR/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-CN/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/zh-CN/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-CN/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | 更新了面向加州用户的隐私政策链接。 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-CN/full_description.txt: -------------------------------------------------------------------------------- 1 | Simplenote 可帮助您轻松记录笔记、创建任务清单、捕捉想法等。只需打开并写下一些想法即可。随着合集增多,您可以使用标签和固定按钮对其进行整理,通过快速搜索找到您需要的内容。因为 Simplenote 会在您的设备之间免费同步,所以您可以随时随地访问您的笔记。 2 | 3 | - 轻松的笔记记录体验 4 | - 在所有设备之间同步 5 | - 协作与共享 6 | - 使用标签保持井井有条 7 | - 使用您的电子邮件或 WordPress.com 帐户登录 8 | 9 | 同步无忧 10 | - 自动在所有计算机、手机或平板电脑之间无缝同步。 11 | - 在您记录笔记时备份并同步所有内容,因此您永远不会丢失内容。 12 | 13 | 协作与共享 14 | - 协作与合作:与同事分享想法或与室友一起写购物清单。 15 | - 选择是否在网络上发布您的内容,并与您的理想对象共享链接。 16 | - 连接至您的 WordPress.com 帐户,可直接在 WordPress 站点上发布。 17 | - 快速轻松地与第三方应用共享。 18 | 19 | 整理与搜索 20 | - 使用标签保持井井有条,并通过标签进行快速搜索和排序。 21 | - 通过高亮显示关键字,快速找到您所需的内容。 22 | - 使用 Markdown 添加格式。 23 | - 创建任务清单。 24 | - 选择笔记和标签的排序顺序。 25 | - 固定您最常使用的笔记。 26 | - 通过重命名和重新排序直接编辑标签。 27 | - 使用密码锁保护您的内容。 28 | 29 | -- 30 | 31 | 隐私政策:https://automattic.com/privacy/ 32 | 服务条款:https://simplenote.com/terms/ 33 | 34 | -- 35 | 36 | 访问 simplenote.com,将 Simplenote 下载至您的其他设备上。 37 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-CN/short_description.txt: -------------------------------------------------------------------------------- 1 | 记录笔记、创建任务清单、捕捉想法等。 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-CN/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-TW/changelogs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/fastlane/metadata/android/zh-TW/changelogs/.gitkeep -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-TW/changelogs/default.txt: -------------------------------------------------------------------------------- 1 | 2.35: 2 | - 為加州使用者更新了隱私權政策連結。 3 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-TW/full_description.txt: -------------------------------------------------------------------------------- 1 | Simplenote 讓你輕鬆做筆記、建立待辦事項清單、記下想法等等。開啟程式、寫下想法,這樣就大功告成囉。隨著收集的資料越來越多,標籤和釘選功能可讓你保持井井有條,你也可以使用即時搜尋功能尋找所需資料。Simplenote 提供免費跨裝置同步,讓你隨時隨地將筆記帶在身邊。 2 | 3 | - 享受輕鬆做筆記的經驗 4 | - 所有內容會同步到所有裝置 5 | - 協作與共用 6 | - 使用標籤統整資料 7 | - 使用電子郵件或 WordPress.com 帳號即可登入 8 | 9 | 放心同步 10 | - 順利自動同步到任何電腦、手機或平板電腦。 11 | - 做筆記的當下同時備份和同步,讓你永遠不會遺失內容。 12 | 13 | 協作與共用 14 | - 共同作業,與同事分享想法,或與室友合寫購物清單。 15 | - 能夠選擇是否將筆記內容發佈到網路,並與任何人分享連結。 16 | - 連結 WordPress.com 帳號即可直接在 WordPress 網站上發表。 17 | - 與第三方應用程式共享,快速又輕鬆。 18 | 19 | 整理和搜尋 20 | - 使用標籤即可讓一切保持井井有條,還能快速搜尋和排序。 21 | - 輸入關鍵字即可立即找到所需內容。 22 | - 使用 Markdown 即可新增格式。 23 | - 能夠建立待辦事項清單。 24 | - 能夠為筆記和標籤選擇排序順序。 25 | - 能夠釘選最常用的筆記。 26 | - 重新命名和重新排序即可直接編輯標籤。 27 | - 使用密碼鎖定保護你的內容。 28 | 29 | -- 30 | 31 | 隱私權政策:https://automattic.com/privacy/ 32 | 服務條款:https://simplenote.com/terms/ 33 | 34 | -- 35 | 36 | 如需為其他裝置下載 Simplenote,請造訪 simplenote.com。 37 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-TW/short_description.txt: -------------------------------------------------------------------------------- 1 | 做筆記、建立待辦事項清單、記下想法等等。 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/zh-TW/title.txt: -------------------------------------------------------------------------------- 1 | Simplenote 2 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | org.gradle.jvmargs=-Xmx1536m 2 | 3 | android.enableJetifier = true 4 | android.useAndroidX = true 5 | android.defaults.buildfeatures.buildconfig=true 6 | android.nonTransitiveRClass=false 7 | android.nonFinalResIds=false 8 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /metadata/ic_launcher_web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Automattic/simplenote-android/34f191889b02370e10d5e617692aad64a3978df6/metadata/ic_launcher_web.png -------------------------------------------------------------------------------- /proguard-project.txt: -------------------------------------------------------------------------------- 1 | # To enable ProGuard in your project, edit project.properties 2 | # to define the proguard.config property as described in that file. 3 | # 4 | # Add project specific ProGuard rules here. 5 | # By default, the flags in this file are appended to flags specified 6 | # in ${sdk.dir}/tools/proguard/proguard-android.txt 7 | # You can edit the include path and order by changing the ProGuard 8 | # include property in project.properties. 9 | # 10 | # For more details, see 11 | # http://developer.android.com/guide/developing/tools/proguard.html 12 | 13 | # Add any project specific keep options here: 14 | 15 | # If your project uses WebView with JS, uncomment the following 16 | # and specify the fully qualified class name to the JavaScript interface 17 | # class: 18 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 19 | # public *; 20 | #} 21 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':Simplenote', ':Wear' 2 | include ':PasscodeLock' 3 | -------------------------------------------------------------------------------- /tools/exported-language-codes.csv: -------------------------------------------------------------------------------- 1 | en-us,en-rUS,English(US) 2 | ar,ar,Arabic 3 | zh-cn,zh-rCN,Chinese(Simplified) 4 | zh-tw,zh-rTW,Chinese(Traditional) 5 | nl,nl,Dutch 6 | fr,fr,French 7 | de,de,German 8 | he,he,Hebrew 9 | id,id,Indonesian 10 | it,it,Italian 11 | ko,ko,Korean 12 | pt-br,pt-rBR,Portuguese(Brazil) 13 | es,es,Spanish 14 | tr,tr,Turkish 15 | ru,ru,Russian 16 | sv,sv,Swedish 17 | ja,ja,Japanese 18 | cy,cy,Welsh 19 | tr,tr,Turkish 20 | -------------------------------------------------------------------------------- /tools/release-notes-language-codes.csv: -------------------------------------------------------------------------------- 1 | ar,ar,ar,Arabic 2 | zh-cn,zh-rCN,zh-CN,Chinese(Simplified) 3 | zh-tw,zh-rTW,zh-TW,Chinese(Traditional) 4 | nl,nl,nl-NL,Dutch 5 | fr,fr,fr-FR,French 6 | de,de,de-DE,German 7 | he,he,iw-IL,Hebrew 8 | id,id,id,Indonesian 9 | it,it,it-IT,Italian 10 | ko,ko,ko-KR,Korean 11 | pt-br,pt-rBR,pt-BR,Portuguese(Brazil) 12 | es,es,es-ES,Spanish 13 | tr,tr,tr-TR,Turkish 14 | ru,ru,ru-RU,Russian 15 | sv,sv,sv-SE,Swedish 16 | ja,ja,ja-JP,Japanese 17 | 18 | -------------------------------------------------------------------------------- /version.properties: -------------------------------------------------------------------------------- 1 | versionName=2.35 2 | versionCode=179 --------------------------------------------------------------------------------