├── .codecov.yml
├── .github
├── CONTRIBUTING.md
├── FUNDING.yml
├── ISSUE_TEMPLATE
│ ├── bug_report.md
│ └── feature_request.md
└── assets
│ ├── direct-apk-download.png
│ ├── feature_graphic.png
│ ├── first.png
│ ├── fourth.png
│ ├── sec.png
│ ├── third.png
│ └── web_hi_res_512.png
├── .github_changelog_generator
├── .gitignore
├── CODE_OF_CONDUCT.md
├── LICENSE
├── README.md
├── app
├── .gitignore
├── build.gradle
├── fastaccess-public
├── proguard-rules.pro
└── src
│ ├── debug
│ ├── google-services.json
│ └── res
│ │ ├── 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
│ │ ├── secrets.xml
│ │ └── strings.xml
│ └── main
│ ├── AndroidManifest.xml
│ ├── assets
│ ├── colors.json
│ ├── emojis.json
│ ├── fonts
│ │ └── app_font.ttf
│ ├── highlight
│ │ ├── js
│ │ │ ├── prettify.js
│ │ │ ├── prettify_line_number.js
│ │ │ └── scrollto.js
│ │ └── styles
│ │ │ ├── prettify.css
│ │ │ ├── prettify_dark.css
│ │ │ └── themes
│ │ │ ├── agate.css
│ │ │ ├── androidstudio.css
│ │ │ ├── arduino-light.css
│ │ │ ├── arta.css
│ │ │ ├── ascetic.css
│ │ │ ├── atelier-cave-dark.css
│ │ │ ├── atelier-cave-light.css
│ │ │ ├── atelier-dune-dark.css
│ │ │ ├── atelier-dune-light.css
│ │ │ ├── atelier-estuary-dark.css
│ │ │ ├── atelier-estuary-light.css
│ │ │ ├── atelier-forest-dark.css
│ │ │ ├── atelier-forest-light.css
│ │ │ ├── atelier-heath-dark.css
│ │ │ ├── atelier-heath-light.css
│ │ │ ├── atelier-lakeside-dark.css
│ │ │ ├── atelier-lakeside-light.css
│ │ │ ├── atelier-plateau-dark.css
│ │ │ ├── atelier-plateau-light.css
│ │ │ ├── atelier-savanna-dark.css
│ │ │ ├── atelier-savanna-light.css
│ │ │ ├── atelier-seaside-dark.css
│ │ │ ├── atelier-seaside-light.css
│ │ │ ├── atelier-sulphurpool-dark.css
│ │ │ ├── atelier-sulphurpool-light.css
│ │ │ ├── atom-one-dark.css
│ │ │ ├── atom-one-light.css
│ │ │ ├── brown-paper.css
│ │ │ ├── codepen-embed.css
│ │ │ ├── color-brewer.css
│ │ │ ├── darcula.css
│ │ │ ├── dark.css
│ │ │ ├── darkula.css
│ │ │ ├── default.css
│ │ │ ├── docco.css
│ │ │ ├── dracula.css
│ │ │ ├── far.css
│ │ │ ├── foundation.css
│ │ │ ├── github-gist.css
│ │ │ ├── github.css
│ │ │ ├── googlecode.css
│ │ │ ├── grayscale.css
│ │ │ ├── gruvbox-dark.css
│ │ │ ├── gruvbox-light.css
│ │ │ ├── hopscotch.css
│ │ │ ├── hybrid.css
│ │ │ ├── idea.css
│ │ │ ├── ir-black.css
│ │ │ ├── kimbie.dark.css
│ │ │ ├── kimbie.light.css
│ │ │ ├── magula.css
│ │ │ ├── mono-blue.css
│ │ │ ├── monokai-sublime.css
│ │ │ ├── monokai.css
│ │ │ ├── obsidian.css
│ │ │ ├── ocean.css
│ │ │ ├── paraiso-dark.css
│ │ │ ├── paraiso-light.css
│ │ │ ├── pojoaque.css
│ │ │ ├── purebasic.css
│ │ │ ├── qtcreator_dark.css
│ │ │ ├── qtcreator_light.css
│ │ │ ├── railscasts.css
│ │ │ ├── rainbow.css
│ │ │ ├── routeros.css
│ │ │ ├── school-book.css
│ │ │ ├── solarized-dark.css
│ │ │ ├── solarized-light.css
│ │ │ ├── sunburst.css
│ │ │ ├── tomorrow-night-blue.css
│ │ │ ├── tomorrow-night-bright.css
│ │ │ ├── tomorrow-night-eighties.css
│ │ │ ├── tomorrow-night.css
│ │ │ ├── tomorrow.css
│ │ │ ├── vs.css
│ │ │ ├── vs2015.css
│ │ │ ├── xcode.css
│ │ │ ├── xt256.css
│ │ │ └── zenburn.css
│ └── md
│ │ ├── github.css
│ │ ├── github_dark.css
│ │ ├── intercept-hash.js
│ │ └── intercept-touch.js
│ ├── graphql
│ └── github
│ │ ├── PinnedRepos.graphql
│ │ ├── PullRequestTimeline.graphql
│ │ ├── RepoProject.graphql
│ │ └── schema.json
│ ├── java
│ └── com
│ │ ├── fastaccess
│ │ ├── App.java
│ │ ├── GlideModule.kt
│ │ ├── data
│ │ │ ├── dao
│ │ │ │ ├── AccessTokenModel.java
│ │ │ │ ├── AppLanguageModel.java
│ │ │ │ ├── AssigneesRequestModel.java
│ │ │ │ ├── AuthModel.java
│ │ │ │ ├── BranchesModel.java
│ │ │ │ ├── CommentRequestModel.java
│ │ │ │ ├── CommitCountModel.java
│ │ │ │ ├── CommitFileChanges.java
│ │ │ │ ├── CommitFileListModel.java
│ │ │ │ ├── CommitFileModel.java
│ │ │ │ ├── CommitLinesModel.java
│ │ │ │ ├── CommitListModel.java
│ │ │ │ ├── CommitRequestModel.java
│ │ │ │ ├── CreateGistModel.java
│ │ │ │ ├── CreateIssueModel.java
│ │ │ │ ├── CreateMilestoneModel.java
│ │ │ │ ├── EditRepoFileModel.kt
│ │ │ │ ├── EditReviewCommentModel.java
│ │ │ │ ├── FilesListModel.java
│ │ │ │ ├── FilterOptionsModel.java
│ │ │ │ ├── FirebaseTrendingConfigModel.kt
│ │ │ │ ├── FragmentPagerAdapterModel.java
│ │ │ │ ├── GistHubErrorsModel.java
│ │ │ │ ├── GitCommitListModel.java
│ │ │ │ ├── GitCommitModel.java
│ │ │ │ ├── GitHubErrorResponse.java
│ │ │ │ ├── GitHubStatusModel.kt
│ │ │ │ ├── GithubFileModel.java
│ │ │ │ ├── GithubState.java
│ │ │ │ ├── GroupedNotificationModel.java
│ │ │ │ ├── GroupedReviewModel.java
│ │ │ │ ├── ImgurReponseModel.java
│ │ │ │ ├── IssueEventAdapterModel.java
│ │ │ │ ├── IssueRequestModel.java
│ │ │ │ ├── IssuesPageable.java
│ │ │ │ ├── LabelListModel.java
│ │ │ │ ├── LabelModel.java
│ │ │ │ ├── LanguageColorModel.java
│ │ │ │ ├── LicenseModel.java
│ │ │ │ ├── LockIssuePrModel.java
│ │ │ │ ├── MarkdownModel.java
│ │ │ │ ├── MergeRequestModel.java
│ │ │ │ ├── MergeResponseModel.java
│ │ │ │ ├── MilestoneModel.java
│ │ │ │ ├── NameParser.java
│ │ │ │ ├── NotificationSoundModel.kt
│ │ │ │ ├── NotificationSubjectModel.java
│ │ │ │ ├── NotificationSubscriptionBodyModel.java
│ │ │ │ ├── Pageable.java
│ │ │ │ ├── PayloadModel.java
│ │ │ │ ├── PostReactionModel.java
│ │ │ │ ├── ProUsersModel.java
│ │ │ │ ├── ProjectCardModel.java
│ │ │ │ ├── ProjectColumnModel.java
│ │ │ │ ├── ProjectsModel.java
│ │ │ │ ├── PullRequestAdapterModel.java
│ │ │ │ ├── PullRequestStatusModel.java
│ │ │ │ ├── PullsIssuesParser.java
│ │ │ │ ├── ReactionsModel.java
│ │ │ │ ├── ReleasesAssetsListModel.java
│ │ │ │ ├── ReleasesAssetsModel.java
│ │ │ │ ├── RenameModel.java
│ │ │ │ ├── RepoPathsManager.java
│ │ │ │ ├── RepoPermissionsModel.java
│ │ │ │ ├── RepoSubscriptionModel.java
│ │ │ │ ├── ReviewCommentModel.java
│ │ │ │ ├── ReviewModel.java
│ │ │ │ ├── ReviewRequestModel.java
│ │ │ │ ├── SearchCodeModel.java
│ │ │ │ ├── SettingsModel.java
│ │ │ │ ├── SimpleUrlsModel.java
│ │ │ │ ├── SparseBooleanArrayParcelable.java
│ │ │ │ ├── StatusesModel.java
│ │ │ │ ├── TabsCountStateModel.java
│ │ │ │ ├── TeamsModel.java
│ │ │ │ ├── TimelineModel.java
│ │ │ │ ├── TopicsModel.java
│ │ │ │ ├── TreeResponseModel.java
│ │ │ │ ├── TrendingModel.kt
│ │ │ │ ├── UsersListModel.java
│ │ │ │ ├── WikiModel.java
│ │ │ │ ├── converters
│ │ │ │ │ ├── BaseConverter.java
│ │ │ │ │ ├── CommitConverter.java
│ │ │ │ │ ├── CommitFilesConverter.java
│ │ │ │ │ ├── CommitsConverter.java
│ │ │ │ │ ├── GistConverter.java
│ │ │ │ │ ├── GitCommitConverter.java
│ │ │ │ │ ├── GitHubFilesConverter.java
│ │ │ │ │ ├── GitHubStateConverter.java
│ │ │ │ │ ├── IssueConverter.java
│ │ │ │ │ ├── LabelConverter.java
│ │ │ │ │ ├── LabelsListConverter.java
│ │ │ │ │ ├── LicenseConverter.java
│ │ │ │ │ ├── MilestoneConverter.java
│ │ │ │ │ ├── NotificationSubjectConverter.java
│ │ │ │ │ ├── PayloadConverter.java
│ │ │ │ │ ├── PullRequestConverter.java
│ │ │ │ │ ├── ReactionsConverter.java
│ │ │ │ │ ├── ReleasesAssetsConverter.java
│ │ │ │ │ ├── RenameConverter.java
│ │ │ │ │ ├── RepoConverter.java
│ │ │ │ │ ├── RepoPermissionConverter.java
│ │ │ │ │ ├── TeamConverter.java
│ │ │ │ │ ├── TopicsConverter.java
│ │ │ │ │ ├── UserConverter.java
│ │ │ │ │ └── UsersConverter.java
│ │ │ │ ├── model
│ │ │ │ │ ├── AbstractComment.java
│ │ │ │ │ ├── AbstractCommit.java
│ │ │ │ │ ├── AbstractEvent.java
│ │ │ │ │ ├── AbstractFastHubNotification.java
│ │ │ │ │ ├── AbstractGist.java
│ │ │ │ │ ├── AbstractIssue.java
│ │ │ │ │ ├── AbstractIssueEvent.java
│ │ │ │ │ ├── AbstractLogin.java
│ │ │ │ │ ├── AbstractNotification.java
│ │ │ │ │ ├── AbstractNotificationQueue.java
│ │ │ │ │ ├── AbstractPinnedGists.java
│ │ │ │ │ ├── AbstractPinnedIssues.java
│ │ │ │ │ ├── AbstractPinnedPullRequests.java
│ │ │ │ │ ├── AbstractPinnedRepos.java
│ │ │ │ │ ├── AbstractPullRequest.java
│ │ │ │ │ ├── AbstractRelease.java
│ │ │ │ │ ├── AbstractRepo.java
│ │ │ │ │ ├── AbstractRepoFile.java
│ │ │ │ │ ├── AbstractSearchHistory.java
│ │ │ │ │ ├── AbstractUser.java
│ │ │ │ │ └── AbstractViewerFile.java
│ │ │ │ ├── timeline
│ │ │ │ │ ├── AuthorModel.java
│ │ │ │ │ ├── CommentEvent.java
│ │ │ │ │ ├── GenericEvent.java
│ │ │ │ │ ├── ParentsModel.java
│ │ │ │ │ ├── PullRequestCommitModel.java
│ │ │ │ │ └── SourceModel.java
│ │ │ │ ├── types
│ │ │ │ │ ├── EventsType.java
│ │ │ │ │ ├── FilesType.java
│ │ │ │ │ ├── GitEntryType.java
│ │ │ │ │ ├── IssueEventType.java
│ │ │ │ │ ├── IssueState.java
│ │ │ │ │ ├── MyIssuesType.java
│ │ │ │ │ ├── NotificationReason.java
│ │ │ │ │ ├── NotificationType.java
│ │ │ │ │ ├── ReactionTypes.java
│ │ │ │ │ ├── ReviewStateType.java
│ │ │ │ │ └── StatusStateType.java
│ │ │ │ └── wiki
│ │ │ │ │ ├── FirebaseWikiConfigModel.kt
│ │ │ │ │ ├── WikiContentModel.kt
│ │ │ │ │ └── WikiSideBarModel.kt
│ │ │ └── service
│ │ │ │ ├── ContentService.kt
│ │ │ │ ├── GistService.java
│ │ │ │ ├── ImgurService.java
│ │ │ │ ├── IssueService.java
│ │ │ │ ├── LoginRestService.java
│ │ │ │ ├── NotificationService.java
│ │ │ │ ├── OrganizationService.java
│ │ │ │ ├── ProjectsService.kt
│ │ │ │ ├── PullRequestService.java
│ │ │ │ ├── ReactionsService.java
│ │ │ │ ├── RepoService.java
│ │ │ │ ├── ReviewService.java
│ │ │ │ ├── ScrapService.kt
│ │ │ │ ├── SearchService.java
│ │ │ │ └── UserRestService.java
│ │ ├── helper
│ │ │ ├── ActivityHelper.java
│ │ │ ├── AnimHelper.java
│ │ │ ├── AppHelper.java
│ │ │ ├── BundleConstant.java
│ │ │ ├── Bundler.java
│ │ │ ├── CustomTabsHelper.java
│ │ │ ├── DeviceNameGetter.java
│ │ │ ├── FileHelper.java
│ │ │ ├── GithubConfigHelper.java
│ │ │ ├── InputHelper.java
│ │ │ ├── Logger.java
│ │ │ ├── ObjectsCompat.java
│ │ │ ├── ParcelableHelper.kt
│ │ │ ├── ParseDateFormat.java
│ │ │ ├── PrefGetter.java
│ │ │ ├── PrefHelper.java
│ │ │ ├── RxHelper.java
│ │ │ ├── TypeFaceHelper.java
│ │ │ └── ViewHelper.java
│ │ ├── provider
│ │ │ ├── colors
│ │ │ │ └── ColorsProvider.java
│ │ │ ├── emoji
│ │ │ │ ├── Emoji.java
│ │ │ │ ├── EmojiLoader.java
│ │ │ │ ├── EmojiManager.java
│ │ │ │ ├── EmojiParser.java
│ │ │ │ ├── EmojiTrie.java
│ │ │ │ └── Fitzpatrick.java
│ │ │ ├── fabric
│ │ │ │ └── FabricProvider.kt
│ │ │ ├── fcm
│ │ │ │ └── PushNotificationService.java
│ │ │ ├── gson
│ │ │ │ └── ToGsonProvider.java
│ │ │ ├── markdown
│ │ │ │ ├── CachedComments.kt
│ │ │ │ ├── MarkDownProvider.java
│ │ │ │ └── extension
│ │ │ │ │ ├── emoji
│ │ │ │ │ ├── Emoji.java
│ │ │ │ │ ├── EmojiExtension.java
│ │ │ │ │ └── internal
│ │ │ │ │ │ ├── EmojiDelimiterProcessor.java
│ │ │ │ │ │ └── EmojiNodeRenderer.java
│ │ │ │ │ └── mention
│ │ │ │ │ ├── Mention.java
│ │ │ │ │ ├── MentionExtension.java
│ │ │ │ │ └── internal
│ │ │ │ │ ├── MentionDelimiterProcessor.java
│ │ │ │ │ └── MentionNodeRenderer.java
│ │ │ ├── rest
│ │ │ │ ├── ApolloProdivder.kt
│ │ │ │ ├── ImgurProvider.java
│ │ │ │ ├── LoginProvider.java
│ │ │ │ ├── RepoQueryProvider.java
│ │ │ │ ├── RestProvider.java
│ │ │ │ ├── converters
│ │ │ │ │ └── GithubResponseConverter.java
│ │ │ │ ├── interceptors
│ │ │ │ │ ├── AuthenticationInterceptor.kt
│ │ │ │ │ ├── ContentTypeInterceptor.kt
│ │ │ │ │ └── PaginationInterceptor.java
│ │ │ │ ├── jsoup
│ │ │ │ │ └── JsoupProvider.java
│ │ │ │ └── loadmore
│ │ │ │ │ └── OnLoadMore.java
│ │ │ ├── scheme
│ │ │ │ ├── LinkParserHelper.java
│ │ │ │ └── SchemeParser.java
│ │ │ ├── tasks
│ │ │ │ ├── git
│ │ │ │ │ └── GithubActionService.java
│ │ │ │ ├── notification
│ │ │ │ │ ├── NotificationSchedulerJobTask.java
│ │ │ │ │ └── ReadNotificationService.java
│ │ │ │ └── version
│ │ │ │ │ └── CheckVersionService.kt
│ │ │ ├── theme
│ │ │ │ └── ThemeEngine.kt
│ │ │ └── timeline
│ │ │ │ ├── CommentsHelper.java
│ │ │ │ ├── HtmlHelper.java
│ │ │ │ ├── ReactionsProvider.java
│ │ │ │ ├── TimelineConverter.kt
│ │ │ │ ├── TimelineProvider.java
│ │ │ │ └── handler
│ │ │ │ ├── BetterLinkMovementExtended.java
│ │ │ │ ├── CodeBackgroundRoundedSpan.java
│ │ │ │ ├── DrawableHandler.java
│ │ │ │ ├── EmojiHandler.java
│ │ │ │ ├── HeaderHandler.kt
│ │ │ │ ├── HrHandler.java
│ │ │ │ ├── HrSpan.java
│ │ │ │ ├── ItalicHandler.java
│ │ │ │ ├── LinkHandler.java
│ │ │ │ ├── ListsHandler.java
│ │ │ │ ├── MarginHandler.java
│ │ │ │ ├── PreTagHandler.java
│ │ │ │ ├── QuoteHandler.java
│ │ │ │ ├── StrikethroughHandler.java
│ │ │ │ ├── SubScriptHandler.java
│ │ │ │ ├── SuperScriptHandler.java
│ │ │ │ ├── TableHandler.java
│ │ │ │ ├── UnderlineHandler.java
│ │ │ │ └── drawable
│ │ │ │ ├── DrawableGetter.java
│ │ │ │ ├── GlideDrawableTarget.java
│ │ │ │ └── UrlDrawable.java
│ │ └── ui
│ │ │ ├── adapter
│ │ │ ├── AssigneesAdapter.java
│ │ │ ├── BranchesAdapter.java
│ │ │ ├── ColumnCardAdapter.kt
│ │ │ ├── CommentsAdapter.java
│ │ │ ├── CommitCommentsAdapter.kt
│ │ │ ├── CommitFilesAdapter.java
│ │ │ ├── CommitLinesAdapter.java
│ │ │ ├── CommitsAdapter.java
│ │ │ ├── EmojiAdapter.kt
│ │ │ ├── FastHubNotificationsAdapter.kt
│ │ │ ├── FeedsAdapter.java
│ │ │ ├── FragmentsPagerAdapter.java
│ │ │ ├── GistFilesAdapter.java
│ │ │ ├── GistsAdapter.java
│ │ │ ├── IssuesAdapter.java
│ │ │ ├── IssuesTimelineAdapter.java
│ │ │ ├── LabelColorsAdapter.java
│ │ │ ├── LabelsAdapter.java
│ │ │ ├── LoginAdapter.kt
│ │ │ ├── MilestonesAdapter.java
│ │ │ ├── NotificationsAdapter.java
│ │ │ ├── PinnedReposAdapter.java
│ │ │ ├── ProfileOrgsAdapter.java
│ │ │ ├── ProfilePinnedReposAdapter.kt
│ │ │ ├── ProjectsAdapter.kt
│ │ │ ├── PullRequestAdapter.java
│ │ │ ├── ReleasesAdapter.java
│ │ │ ├── RepoFilePathsAdapter.java
│ │ │ ├── RepoFilesAdapter.java
│ │ │ ├── ReposAdapter.java
│ │ │ ├── ReviewCommentsAdapter.java
│ │ │ ├── SearchCodeAdapter.java
│ │ │ ├── SettingsAdapter.java
│ │ │ ├── SimpleListAdapter.java
│ │ │ ├── SpinnerAdapter.java
│ │ │ ├── TeamsAdapter.java
│ │ │ ├── TopicsAdapter.java
│ │ │ ├── TrendingAdapter.kt
│ │ │ ├── UsersAdapter.java
│ │ │ ├── callback
│ │ │ │ ├── OnToggleView.java
│ │ │ │ └── ReactionsCallback.java
│ │ │ └── viewholder
│ │ │ │ ├── AssigneesViewHolder.java
│ │ │ │ ├── ColumnCardViewHolder.kt
│ │ │ │ ├── CommentsViewHolder.java
│ │ │ │ ├── CommitCommentsViewHolder.kt
│ │ │ │ ├── CommitLinesViewHolder.java
│ │ │ │ ├── CommitThreadViewHolder.kt
│ │ │ │ ├── CommitsViewHolder.java
│ │ │ │ ├── EmojiViewHolder.kt
│ │ │ │ ├── FastHubNotificationViewHolder.kt
│ │ │ │ ├── FeedsViewHolder.java
│ │ │ │ ├── GistFilesViewHolder.java
│ │ │ │ ├── GistsViewHolder.java
│ │ │ │ ├── GroupedReviewsViewHolder.java
│ │ │ │ ├── IssueDetailsViewHolder.java
│ │ │ │ ├── IssueTimelineViewHolder.java
│ │ │ │ ├── IssuesViewHolder.java
│ │ │ │ ├── LabelColorsViewHolder.java
│ │ │ │ ├── LabelsViewHolder.java
│ │ │ │ ├── LoginViewHolder.kt
│ │ │ │ ├── MilestonesViewHolder.java
│ │ │ │ ├── NotificationsHeaderViewHolder.java
│ │ │ │ ├── NotificationsViewHolder.java
│ │ │ │ ├── PinnedReposViewHolder.java
│ │ │ │ ├── ProfileOrgsViewHolder.java
│ │ │ │ ├── ProfilePinnedReposViewHolder.kt
│ │ │ │ ├── ProjectViewHolder.kt
│ │ │ │ ├── PullRequestFilesViewHolder.java
│ │ │ │ ├── PullRequestViewHolder.java
│ │ │ │ ├── PullStatusViewHolder.java
│ │ │ │ ├── ReleasesViewHolder.java
│ │ │ │ ├── RepoFilePathsViewHolder.java
│ │ │ │ ├── RepoFilesViewHolder.java
│ │ │ │ ├── ReposViewHolder.java
│ │ │ │ ├── ReviewCommentsViewHolder.java
│ │ │ │ ├── ReviewsViewHolder.kt
│ │ │ │ ├── SearchCodeViewHolder.java
│ │ │ │ ├── SimpleViewHolder.java
│ │ │ │ ├── TeamsViewHolder.java
│ │ │ │ ├── TimelineCommentsViewHolder.java
│ │ │ │ ├── TrendingViewHolder.kt
│ │ │ │ ├── UnknownTypeViewHolder.kt
│ │ │ │ └── UsersViewHolder.java
│ │ │ ├── base
│ │ │ ├── BaseActivity.java
│ │ │ ├── BaseBottomSheetDialog.java
│ │ │ ├── BaseDialogFragment.java
│ │ │ ├── BaseFragment.java
│ │ │ ├── BaseMvpBottomSheetDialogFragment.java
│ │ │ ├── MainNavDrawer.kt
│ │ │ └── mvp
│ │ │ │ ├── BaseMvp.java
│ │ │ │ └── presenter
│ │ │ │ └── BasePresenter.java
│ │ │ ├── modules
│ │ │ ├── about
│ │ │ │ └── FastHubAboutActivity.java
│ │ │ ├── changelog
│ │ │ │ ├── ChangelogBottomSheetDialog.java
│ │ │ │ ├── ChangelogMvp.java
│ │ │ │ └── ChangelogPresenter.java
│ │ │ ├── code
│ │ │ │ └── CodeViewerActivity.java
│ │ │ ├── editor
│ │ │ │ ├── EditorActivity.kt
│ │ │ │ ├── EditorMvp.kt
│ │ │ │ ├── EditorPresenter.kt
│ │ │ │ ├── comment
│ │ │ │ │ └── CommentEditorFragment.kt
│ │ │ │ ├── emoji
│ │ │ │ │ ├── EmojiBottomSheet.kt
│ │ │ │ │ ├── EmojiMvp.kt
│ │ │ │ │ └── EmojiPresenter.kt
│ │ │ │ └── popup
│ │ │ │ │ ├── EditorLinkImageDialogFragment.java
│ │ │ │ │ ├── EditorLinkImageMvp.java
│ │ │ │ │ └── EditorLinkImagePresenter.java
│ │ │ ├── feeds
│ │ │ │ ├── FeedsFragment.java
│ │ │ │ ├── FeedsMvp.java
│ │ │ │ └── FeedsPresenter.java
│ │ │ ├── filter
│ │ │ │ ├── chooser
│ │ │ │ │ ├── FilterAddChooserListener.java
│ │ │ │ │ └── FilterChooserBottomSheetDialog.java
│ │ │ │ └── issues
│ │ │ │ │ ├── FilterIssuesActivity.java
│ │ │ │ │ ├── FilterIssuesActivityMvp.java
│ │ │ │ │ ├── FilterIssuesActivityPresenter.java
│ │ │ │ │ └── fragment
│ │ │ │ │ ├── FilterIssueFragment.java
│ │ │ │ │ ├── FilterIssuePresenter.java
│ │ │ │ │ └── FilterIssuesMvp.java
│ │ │ ├── gists
│ │ │ │ ├── GistsFragment.java
│ │ │ │ ├── GistsListActivity.java
│ │ │ │ ├── GistsMvp.java
│ │ │ │ ├── GistsPresenter.java
│ │ │ │ ├── create
│ │ │ │ │ ├── CreateGistActivity.java
│ │ │ │ │ ├── CreateGistMvp.java
│ │ │ │ │ ├── CreateGistPresenter.java
│ │ │ │ │ └── dialog
│ │ │ │ │ │ ├── AddGistBottomSheetDialog.kt
│ │ │ │ │ │ ├── AddGistMvp.kt
│ │ │ │ │ │ └── AddGistPresenter.kt
│ │ │ │ ├── gist
│ │ │ │ │ ├── GistActivity.java
│ │ │ │ │ ├── GistMvp.java
│ │ │ │ │ ├── GistPresenter.java
│ │ │ │ │ ├── comments
│ │ │ │ │ │ ├── GistCommentsFragment.java
│ │ │ │ │ │ ├── GistCommentsMvp.java
│ │ │ │ │ │ └── GistCommentsPresenter.java
│ │ │ │ │ └── files
│ │ │ │ │ │ ├── GistFilesListFragment.java
│ │ │ │ │ │ ├── GistFilesListMvp.java
│ │ │ │ │ │ └── GistFilesListPresenter.java
│ │ │ │ └── starred
│ │ │ │ │ ├── StarredGistsFragment.java
│ │ │ │ │ ├── StarredGistsMvp.java
│ │ │ │ │ └── StarredGistsPresenter.java
│ │ │ ├── login
│ │ │ │ ├── LoginActivity.java
│ │ │ │ ├── LoginMvp.java
│ │ │ │ ├── LoginPresenter.java
│ │ │ │ └── chooser
│ │ │ │ │ ├── LoginChooserActivity.kt
│ │ │ │ │ ├── LoginChooserMvp.kt
│ │ │ │ │ └── LoginChooserPresenter.kt
│ │ │ ├── main
│ │ │ │ ├── MainActivity.java
│ │ │ │ ├── MainMvp.java
│ │ │ │ ├── MainPresenter.java
│ │ │ │ ├── donation
│ │ │ │ │ ├── CheckPurchaseActivity.kt
│ │ │ │ │ ├── DonateActivity.kt
│ │ │ │ │ └── DonationActivity.java
│ │ │ │ ├── drawer
│ │ │ │ │ ├── AccountDrawerFragment.kt
│ │ │ │ │ └── MainDrawerFragment.kt
│ │ │ │ ├── issues
│ │ │ │ │ ├── MyIssuesFragment.java
│ │ │ │ │ ├── MyIssuesMvp.java
│ │ │ │ │ ├── MyIssuesPresenter.java
│ │ │ │ │ └── pager
│ │ │ │ │ │ ├── MyIssuesPagerFragment.java
│ │ │ │ │ │ ├── MyIssuesPagerMvp.java
│ │ │ │ │ │ └── MyIssuesPagerPresenter.java
│ │ │ │ ├── notifications
│ │ │ │ │ └── FastHubNotificationDialog.kt
│ │ │ │ ├── orgs
│ │ │ │ │ ├── OrgListDialogFragment.java
│ │ │ │ │ ├── OrgListDialogMvp.java
│ │ │ │ │ └── OrgListDialogPresenter.java
│ │ │ │ ├── playstore
│ │ │ │ │ └── PlayStoreWarningActivity.kt
│ │ │ │ ├── premium
│ │ │ │ │ ├── GmsTaskListeners.java
│ │ │ │ │ ├── PremiumActivity.kt
│ │ │ │ │ ├── PremiumMvp.kt
│ │ │ │ │ └── PremiumPresenter.kt
│ │ │ │ └── pullrequests
│ │ │ │ │ ├── MyPullRequestFragment.java
│ │ │ │ │ ├── MyPullRequestsMvp.java
│ │ │ │ │ ├── MyPullRequestsPresenter.java
│ │ │ │ │ └── pager
│ │ │ │ │ ├── MyPullsPagerFragment.java
│ │ │ │ │ ├── MyPullsPagerMvp.java
│ │ │ │ │ └── MyPullsPagerPresenter.java
│ │ │ ├── notification
│ │ │ │ ├── NotificationActivity.java
│ │ │ │ ├── all
│ │ │ │ │ ├── AllNotificationsFragment.java
│ │ │ │ │ ├── AllNotificationsMvp.java
│ │ │ │ │ └── AllNotificationsPresenter.java
│ │ │ │ ├── callback
│ │ │ │ │ └── OnNotificationChangedListener.java
│ │ │ │ ├── fasthub
│ │ │ │ │ ├── FastHubNotificationsFragment.kt
│ │ │ │ │ ├── FastHubNotificationsMvp.kt
│ │ │ │ │ └── FastHubNotificationsPresenter.kt
│ │ │ │ └── unread
│ │ │ │ │ ├── UnreadNotificationMvp.java
│ │ │ │ │ ├── UnreadNotificationsFragment.java
│ │ │ │ │ └── UnreadNotificationsPresenter.java
│ │ │ ├── parser
│ │ │ │ └── LinksParserActivity.java
│ │ │ ├── pinned
│ │ │ │ ├── PinnedReposActivity.java
│ │ │ │ ├── gist
│ │ │ │ │ ├── PinnedGistFragment.java
│ │ │ │ │ ├── PinnedGistMvp.java
│ │ │ │ │ └── PinnedGistPresenter.java
│ │ │ │ ├── issue
│ │ │ │ │ ├── PinnedIssueFragment.java
│ │ │ │ │ ├── PinnedIssueMvp.java
│ │ │ │ │ └── PinnedIssuePresenter.java
│ │ │ │ ├── pullrequest
│ │ │ │ │ ├── PinnedPullRequestFragment.java
│ │ │ │ │ ├── PinnedPullRequestMvp.java
│ │ │ │ │ └── PinnedPullRequestPresenter.java
│ │ │ │ └── repo
│ │ │ │ │ ├── PinnedReposFragment.java
│ │ │ │ │ ├── PinnedReposMvp.java
│ │ │ │ │ └── PinnedReposPresenter.java
│ │ │ ├── profile
│ │ │ │ ├── ProfilePagerFragment.java
│ │ │ │ ├── ProfilePagerMvp.java
│ │ │ │ ├── ProfilePagerPresenter.java
│ │ │ │ ├── followers
│ │ │ │ │ ├── ProfileFollowersFragment.java
│ │ │ │ │ ├── ProfileFollowersMvp.java
│ │ │ │ │ └── ProfileFollowersPresenter.java
│ │ │ │ ├── following
│ │ │ │ │ ├── ProfileFollowingFragment.java
│ │ │ │ │ ├── ProfileFollowingMvp.java
│ │ │ │ │ └── ProfileFollowingPresenter.java
│ │ │ │ ├── gists
│ │ │ │ │ ├── ProfileGistsFragment.java
│ │ │ │ │ ├── ProfileGistsMvp.java
│ │ │ │ │ └── ProfileGistsPresenter.java
│ │ │ │ ├── org
│ │ │ │ │ ├── OrgProfileOverviewFragment.java
│ │ │ │ │ ├── OrgProfileOverviewMvp.java
│ │ │ │ │ ├── OrgProfileOverviewPresenter.java
│ │ │ │ │ ├── members
│ │ │ │ │ │ ├── OrgMembersFragment.java
│ │ │ │ │ │ ├── OrgMembersMvp.java
│ │ │ │ │ │ └── OrgMembersPresenter.java
│ │ │ │ │ ├── project
│ │ │ │ │ │ └── OrgProjectActivity.kt
│ │ │ │ │ ├── repos
│ │ │ │ │ │ ├── OrgReposFragment.java
│ │ │ │ │ │ ├── OrgReposMvp.java
│ │ │ │ │ │ └── OrgReposPresenter.java
│ │ │ │ │ └── teams
│ │ │ │ │ │ ├── OrgTeamFragment.java
│ │ │ │ │ │ ├── OrgTeamMvp.java
│ │ │ │ │ │ ├── OrgTeamPresenter.java
│ │ │ │ │ │ └── details
│ │ │ │ │ │ ├── TeamPagerActivity.java
│ │ │ │ │ │ ├── members
│ │ │ │ │ │ ├── TeamMembersFragment.java
│ │ │ │ │ │ ├── TeamMembersMvp.java
│ │ │ │ │ │ └── TeamMembersPresenter.java
│ │ │ │ │ │ └── repos
│ │ │ │ │ │ ├── TeamReposFragment.java
│ │ │ │ │ │ ├── TeamReposMvp.java
│ │ │ │ │ │ └── TeamReposPresenter.java
│ │ │ │ ├── overview
│ │ │ │ │ ├── ProfileOverviewFragment.java
│ │ │ │ │ ├── ProfileOverviewMvp.java
│ │ │ │ │ └── ProfileOverviewPresenter.java
│ │ │ │ ├── repos
│ │ │ │ │ ├── ProfileReposFilterBottomSheetDialog.java
│ │ │ │ │ ├── ProfileReposFragment.java
│ │ │ │ │ ├── ProfileReposMvp.java
│ │ │ │ │ └── ProfileReposPresenter.java
│ │ │ │ └── starred
│ │ │ │ │ ├── ProfileStarredFragment.java
│ │ │ │ │ ├── ProfileStarredMvp.java
│ │ │ │ │ └── ProfileStarredPresenter.java
│ │ │ ├── repos
│ │ │ │ ├── DummyFragment.java
│ │ │ │ ├── RepoPagerActivity.java
│ │ │ │ ├── RepoPagerMvp.java
│ │ │ │ ├── RepoPagerPresenter.java
│ │ │ │ ├── code
│ │ │ │ │ ├── RepoCodePagerFragment.java
│ │ │ │ │ ├── RepoCodePagerMvp.java
│ │ │ │ │ ├── RepoCodePagerPresenter.java
│ │ │ │ │ ├── commit
│ │ │ │ │ │ ├── RepoCommitsFragment.java
│ │ │ │ │ │ ├── RepoCommitsMvp.java
│ │ │ │ │ │ ├── RepoCommitsPresenter.java
│ │ │ │ │ │ ├── details
│ │ │ │ │ │ │ ├── CommitPagerActivity.java
│ │ │ │ │ │ │ ├── CommitPagerMvp.java
│ │ │ │ │ │ │ ├── CommitPagerPresenter.java
│ │ │ │ │ │ │ ├── comments
│ │ │ │ │ │ │ │ ├── CommitCommentsFragment.java
│ │ │ │ │ │ │ │ ├── CommitCommentsMvp.java
│ │ │ │ │ │ │ │ └── CommitCommentsPresenter.java
│ │ │ │ │ │ │ └── files
│ │ │ │ │ │ │ │ ├── CommitFilesFragment.java
│ │ │ │ │ │ │ │ ├── CommitFilesMvp.java
│ │ │ │ │ │ │ │ ├── CommitFilesPresenter.java
│ │ │ │ │ │ │ │ └── CommitFilesSingleton.java
│ │ │ │ │ │ ├── history
│ │ │ │ │ │ │ └── FileCommitHistoryActivity.kt
│ │ │ │ │ │ └── viewer
│ │ │ │ │ │ │ └── FullCommitFileActivity.java
│ │ │ │ │ ├── contributors
│ │ │ │ │ │ ├── RepoContributorsFragment.java
│ │ │ │ │ │ ├── RepoContributorsMvp.java
│ │ │ │ │ │ └── RepoContributorsPresenter.java
│ │ │ │ │ ├── files
│ │ │ │ │ │ ├── RepoFilesFragment.java
│ │ │ │ │ │ ├── RepoFilesMvp.java
│ │ │ │ │ │ ├── RepoFilesPresenter.java
│ │ │ │ │ │ ├── activity
│ │ │ │ │ │ │ └── RepoFilesActivity.java
│ │ │ │ │ │ └── paths
│ │ │ │ │ │ │ ├── RepoFilePathFragment.java
│ │ │ │ │ │ │ ├── RepoFilePathMvp.java
│ │ │ │ │ │ │ └── RepoFilePathPresenter.java
│ │ │ │ │ ├── prettifier
│ │ │ │ │ │ ├── ViewerFragment.java
│ │ │ │ │ │ ├── ViewerMvp.java
│ │ │ │ │ │ └── ViewerPresenter.java
│ │ │ │ │ └── releases
│ │ │ │ │ │ ├── ReleasesListActivity.java
│ │ │ │ │ │ ├── RepoReleasesFragment.java
│ │ │ │ │ │ ├── RepoReleasesMvp.java
│ │ │ │ │ │ └── RepoReleasesPresenter.java
│ │ │ │ ├── extras
│ │ │ │ │ ├── assignees
│ │ │ │ │ │ ├── AssigneesDialogFragment.java
│ │ │ │ │ │ ├── AssigneesMvp.java
│ │ │ │ │ │ └── AssigneesPresenter.java
│ │ │ │ │ ├── branches
│ │ │ │ │ │ ├── BranchesFragment.kt
│ │ │ │ │ │ ├── BranchesMvp.kt
│ │ │ │ │ │ ├── BranchesPresenter.kt
│ │ │ │ │ │ └── pager
│ │ │ │ │ │ │ ├── BranchesPagerFragment.kt
│ │ │ │ │ │ │ └── BranchesPagerListener.kt
│ │ │ │ │ ├── labels
│ │ │ │ │ │ ├── LabelsDialogFragment.java
│ │ │ │ │ │ ├── LabelsMvp.java
│ │ │ │ │ │ ├── LabelsPresenter.java
│ │ │ │ │ │ └── create
│ │ │ │ │ │ │ ├── CreateLabelDialogFragment.java
│ │ │ │ │ │ │ ├── CreateLabelMvp.java
│ │ │ │ │ │ │ └── CreateLabelPresenter.java
│ │ │ │ │ ├── license
│ │ │ │ │ │ ├── RepoLicenseBottomSheet.kt
│ │ │ │ │ │ ├── RepoLicenseMvp.kt
│ │ │ │ │ │ └── RepoLicensePresenter.kt
│ │ │ │ │ ├── locking
│ │ │ │ │ │ ├── LockIssuePrBottomSheetDialog.kt
│ │ │ │ │ │ └── LockIssuePrCallback.kt
│ │ │ │ │ ├── milestone
│ │ │ │ │ │ ├── MilestoneDialogFragment.java
│ │ │ │ │ │ ├── MilestoneMvp.java
│ │ │ │ │ │ ├── MilestonePresenter.java
│ │ │ │ │ │ └── create
│ │ │ │ │ │ │ ├── CreateMilestoneDialogFragment.java
│ │ │ │ │ │ │ ├── CreateMilestoneMvp.java
│ │ │ │ │ │ │ ├── CreateMilestonePresenter.java
│ │ │ │ │ │ │ └── MilestoneDialogFragment.java
│ │ │ │ │ ├── misc
│ │ │ │ │ │ ├── RepoMiscDialogFragment.java
│ │ │ │ │ │ ├── RepoMiscMVp.java
│ │ │ │ │ │ └── RepoMiscPresenter.java
│ │ │ │ │ └── popup
│ │ │ │ │ │ ├── IssuePopupFragment.java
│ │ │ │ │ │ ├── IssuePopupMvp.java
│ │ │ │ │ │ └── IssuePopupPresenter.java
│ │ │ │ ├── git
│ │ │ │ │ ├── EditRepoFileActivity.kt
│ │ │ │ │ ├── EditRepoFileMvp.kt
│ │ │ │ │ ├── EditRepoFilePresenter.kt
│ │ │ │ │ └── delete
│ │ │ │ │ │ ├── DeleteContentFileCallback.kt
│ │ │ │ │ │ └── DeleteFileBottomSheetFragment.kt
│ │ │ │ ├── issues
│ │ │ │ │ ├── RepoIssuesPagerFragment.java
│ │ │ │ │ ├── RepoIssuesPagerMvp.java
│ │ │ │ │ ├── RepoIssuesPagerPresenter.java
│ │ │ │ │ ├── create
│ │ │ │ │ │ ├── CreateIssueActivity.java
│ │ │ │ │ │ ├── CreateIssueMvp.java
│ │ │ │ │ │ └── CreateIssuePresenter.java
│ │ │ │ │ └── issue
│ │ │ │ │ │ ├── RepoClosedIssuesFragment.java
│ │ │ │ │ │ ├── RepoIssuesMvp.java
│ │ │ │ │ │ ├── RepoIssuesPresenter.java
│ │ │ │ │ │ ├── RepoOpenedIssuesFragment.java
│ │ │ │ │ │ └── details
│ │ │ │ │ │ ├── IssuePagerActivity.java
│ │ │ │ │ │ ├── IssuePagerMvp.java
│ │ │ │ │ │ ├── IssuePagerPresenter.java
│ │ │ │ │ │ └── timeline
│ │ │ │ │ │ ├── IssueTimelineFragment.java
│ │ │ │ │ │ ├── IssueTimelineMvp.java
│ │ │ │ │ │ └── IssueTimelinePresenter.java
│ │ │ │ ├── projects
│ │ │ │ │ ├── RepoProjectsFragmentPager.kt
│ │ │ │ │ ├── columns
│ │ │ │ │ │ ├── ProjectColumnFragment.kt
│ │ │ │ │ │ ├── ProjectColumnMvp.kt
│ │ │ │ │ │ └── ProjectColumnPresenter.kt
│ │ │ │ │ ├── crud
│ │ │ │ │ │ └── ProjectCurdDialogFragment.kt
│ │ │ │ │ ├── details
│ │ │ │ │ │ ├── ProjectPagerActivity.kt
│ │ │ │ │ │ ├── ProjectPagerMvp.kt
│ │ │ │ │ │ └── ProjectPagerPresenter.kt
│ │ │ │ │ └── list
│ │ │ │ │ │ ├── RepoProjectFragment.kt
│ │ │ │ │ │ ├── RepoProjectMvp.kt
│ │ │ │ │ │ └── RepoProjectPresenter.kt
│ │ │ │ ├── pull_requests
│ │ │ │ │ ├── RepoPullRequestPagerFragment.java
│ │ │ │ │ ├── RepoPullRequestPagerMvp.java
│ │ │ │ │ ├── RepoPullRequestPagerPresenter.java
│ │ │ │ │ └── pull_request
│ │ │ │ │ │ ├── RepoPullRequestFragment.java
│ │ │ │ │ │ ├── RepoPullRequestMvp.java
│ │ │ │ │ │ ├── RepoPullRequestPresenter.java
│ │ │ │ │ │ ├── details
│ │ │ │ │ │ ├── PullRequestPagerActivity.java
│ │ │ │ │ │ ├── PullRequestPagerMvp.java
│ │ │ │ │ │ ├── PullRequestPagerPresenter.java
│ │ │ │ │ │ ├── commits
│ │ │ │ │ │ │ ├── PullRequestCommitsFragment.java
│ │ │ │ │ │ │ ├── PullRequestCommitsMvp.java
│ │ │ │ │ │ │ └── PullRequestCommitsPresenter.java
│ │ │ │ │ │ ├── files
│ │ │ │ │ │ │ ├── PullRequestFilesFragment.java
│ │ │ │ │ │ │ ├── PullRequestFilesMvp.java
│ │ │ │ │ │ │ ├── PullRequestFilesPresenter.java
│ │ │ │ │ │ │ └── fullscreen
│ │ │ │ │ │ │ │ ├── FullScreenFileChangeActivity.kt
│ │ │ │ │ │ │ │ ├── FullScreenFileChangeMvp.kt
│ │ │ │ │ │ │ │ └── FullScreenFileChangePresenter.kt
│ │ │ │ │ │ └── timeline
│ │ │ │ │ │ │ └── timeline
│ │ │ │ │ │ │ ├── PullRequestTimelineFragment.java
│ │ │ │ │ │ │ ├── PullRequestTimelineMvp.java
│ │ │ │ │ │ │ └── PullRequestTimelinePresenter.java
│ │ │ │ │ │ └── merge
│ │ │ │ │ │ ├── MergePullReqeustMvp.java
│ │ │ │ │ │ ├── MergePullRequestDialogFragment.java
│ │ │ │ │ │ └── MergePullRequestPresenter.java
│ │ │ │ ├── reactions
│ │ │ │ │ ├── ReactionsDialogFragment.java
│ │ │ │ │ ├── ReactionsDialogMvp.java
│ │ │ │ │ └── ReactionsDialogPresenter.java
│ │ │ │ └── wiki
│ │ │ │ │ ├── WikiActivity.kt
│ │ │ │ │ ├── WikiMvp.kt
│ │ │ │ │ └── WikiPresenter.kt
│ │ │ ├── reviews
│ │ │ │ ├── AddReviewDialogFragment.kt
│ │ │ │ ├── callback
│ │ │ │ │ └── ReviewCommentListener.kt
│ │ │ │ └── changes
│ │ │ │ │ ├── ReviewChangesActivity.kt
│ │ │ │ │ ├── ReviewChangesMvp.kt
│ │ │ │ │ └── ReviewChangesPresenter.kt
│ │ │ ├── search
│ │ │ │ ├── SearchActivity.java
│ │ │ │ ├── SearchMvp.java
│ │ │ │ ├── SearchPresenter.java
│ │ │ │ ├── SearchUserActivity.kt
│ │ │ │ ├── code
│ │ │ │ │ ├── SearchCodeFragment.java
│ │ │ │ │ ├── SearchCodeMvp.java
│ │ │ │ │ └── SearchCodePresenter.java
│ │ │ │ ├── issues
│ │ │ │ │ ├── SearchIssuesFragment.java
│ │ │ │ │ ├── SearchIssuesMvp.java
│ │ │ │ │ └── SearchIssuesPresenter.java
│ │ │ │ ├── repos
│ │ │ │ │ ├── SearchReposFragment.java
│ │ │ │ │ ├── SearchReposMvp.java
│ │ │ │ │ ├── SearchReposPresenter.java
│ │ │ │ │ └── files
│ │ │ │ │ │ ├── SearchFileActivity.java
│ │ │ │ │ │ ├── SearchFileMvp.java
│ │ │ │ │ │ └── SearchFilePresenter.java
│ │ │ │ └── users
│ │ │ │ │ ├── SearchUsersFragment.java
│ │ │ │ │ ├── SearchUsersMvp.java
│ │ │ │ │ └── SearchUsersPresenter.java
│ │ │ ├── settings
│ │ │ │ ├── LanguageBottomSheetDialog.java
│ │ │ │ ├── SettingsActivity.java
│ │ │ │ ├── category
│ │ │ │ │ ├── SettingsCategoryActivity.java
│ │ │ │ │ ├── SettingsCategoryFragment.java
│ │ │ │ │ ├── SettingsCategoryMvp.java
│ │ │ │ │ └── SettingsCategoryPresenter.java
│ │ │ │ └── sound
│ │ │ │ │ ├── NotificationSoundBottomSheet.kt
│ │ │ │ │ ├── NotificationSoundMvp.kt
│ │ │ │ │ └── NotificationSoundPresenter.kt
│ │ │ ├── theme
│ │ │ │ ├── ThemeActivity.kt
│ │ │ │ ├── code
│ │ │ │ │ ├── ThemeCodeActivity.kt
│ │ │ │ │ ├── ThemeCodeMvp.kt
│ │ │ │ │ └── ThemeCodePresenter.kt
│ │ │ │ └── fragment
│ │ │ │ │ ├── ThemeFragment.kt
│ │ │ │ │ ├── ThemeFragmentMvp.kt
│ │ │ │ │ └── ThemeFragmentPresenter.kt
│ │ │ ├── trending
│ │ │ │ ├── TrendingActivity.kt
│ │ │ │ ├── TrendingMvp.kt
│ │ │ │ ├── TrendingPresenter.kt
│ │ │ │ └── fragment
│ │ │ │ │ ├── TrendingFragment.kt
│ │ │ │ │ ├── TrendingFragmentMvp.kt
│ │ │ │ │ └── TrendingFragmentPresenter.kt
│ │ │ └── user
│ │ │ │ ├── UserPagerActivity.java
│ │ │ │ ├── UserPagerMvp.java
│ │ │ │ └── UserPagerPresenter.java
│ │ │ └── widgets
│ │ │ ├── AppbarRefreshLayout.java
│ │ │ ├── AutoLinearLayout.java
│ │ │ ├── AvatarLayout.java
│ │ │ ├── CardsPagerTransformerBasic.kt
│ │ │ ├── ColorPickerPreference.java
│ │ │ ├── DiffLineSpan.java
│ │ │ ├── FloatingActionButtonBehavior.java
│ │ │ ├── FontAutoCompleteEditText.java
│ │ │ ├── FontButton.java
│ │ │ ├── FontCheckbox.java
│ │ │ ├── FontEditText.java
│ │ │ ├── FontRadioButton.java
│ │ │ ├── FontSwitchView.java
│ │ │ ├── FontTextView.java
│ │ │ ├── ForegroundImageView.java
│ │ │ ├── ForegroundRelativeLayout.java
│ │ │ ├── LabelSpan.java
│ │ │ ├── NestedCoordinatorLayout.java
│ │ │ ├── SpannableBuilder.java
│ │ │ ├── StateLayout.java
│ │ │ ├── TabletBehavior.java
│ │ │ ├── ViewPagerView.java
│ │ │ ├── color
│ │ │ └── ColorGenerator.java
│ │ │ ├── contributions
│ │ │ ├── ContributionsDay.java
│ │ │ ├── ContributionsProvider.java
│ │ │ ├── GitHubContributionsView.java
│ │ │ └── utils
│ │ │ │ ├── ColorsUtils.java
│ │ │ │ └── DatesUtils.java
│ │ │ ├── dialog
│ │ │ ├── ListDialogView.java
│ │ │ ├── MessageDialogView.java
│ │ │ └── ProgressDialogFragment.java
│ │ │ ├── markdown
│ │ │ ├── MarkDownLayout.kt
│ │ │ └── MarkdownEditText.kt
│ │ │ └── recyclerview
│ │ │ ├── BaseRecyclerAdapter.java
│ │ │ ├── BaseViewHolder.java
│ │ │ ├── BottomPaddingDecoration.java
│ │ │ ├── DynamicRecyclerView.java
│ │ │ ├── InsetDividerDecoration.java
│ │ │ ├── ProgressBarViewHolder.java
│ │ │ ├── layout_manager
│ │ │ ├── GridManager.java
│ │ │ ├── LinearManager.java
│ │ │ └── StaggeredManager.java
│ │ │ └── scroll
│ │ │ ├── InfiniteScroll.java
│ │ │ └── RecyclerViewFastScroller.java
│ │ ├── prettifier
│ │ └── pretty
│ │ │ ├── NestedWebView.java
│ │ │ ├── PrettifyWebView.java
│ │ │ ├── callback
│ │ │ └── MarkDownInterceptorInterface.java
│ │ │ └── helper
│ │ │ ├── CodeThemesHelper.java
│ │ │ ├── GithubHelper.java
│ │ │ └── PrettifyHelper.java
│ │ └── zzhoujay
│ │ └── markdown
│ │ └── style
│ │ ├── CodeSpan.java
│ │ ├── FontSpan.java
│ │ ├── LinkSpan.java
│ │ └── MarkDownQuoteSpan.java
│ └── res
│ ├── animator
│ ├── cardview_selector.xml
│ ├── minus_to_plus.xml
│ ├── plus_minus_rotate.xml
│ └── plus_to_minus.xml
│ ├── color
│ └── search_tab_highlighter.xml
│ ├── drawable-nodpi
│ └── web_hi_res_512.png
│ ├── drawable-small
│ └── splash_screen_drawable.xml
│ ├── drawable-v26
│ ├── ic_app_shortcut_github.xml
│ ├── ic_app_shortcut_issues.xml
│ ├── ic_app_shortcut_pinned.xml
│ ├── ic_app_shortcut_profile.xml
│ └── ic_app_shortcut_pull_requests.xml
│ ├── drawable-xxxhdpi
│ ├── ic_edittext.9.png
│ └── ic_timeline_arrow_left.9.png
│ ├── drawable
│ ├── arrow_toggle_drawable.xml
│ ├── asl_follow.xml
│ ├── avd_follow.xml
│ ├── avd_unfollow.xml
│ ├── bottom_border.xml
│ ├── circle_shape.xml
│ ├── fastscroller_bubble.xml
│ ├── ic_add.xml
│ ├── ic_add_emoji.xml
│ ├── ic_announcement.xml
│ ├── ic_app_shortcut_github.xml
│ ├── ic_app_shortcut_github_foreground.xml
│ ├── ic_app_shortcut_issues.xml
│ ├── ic_app_shortcut_issues_foreground.xml
│ ├── ic_app_shortcut_pinned.xml
│ ├── ic_app_shortcut_pinned_foreground.xml
│ ├── ic_app_shortcut_profile.xml
│ ├── ic_app_shortcut_profile_foreground.xml
│ ├── ic_app_shortcut_pull_requests.xml
│ ├── ic_app_shortcut_pull_requests_foreground.xml
│ ├── ic_arrow_drop_down.xml
│ ├── ic_arrow_drop_up.xml
│ ├── ic_arrow_right.xml
│ ├── ic_at.xml
│ ├── ic_back.xml
│ ├── ic_backup.xml
│ ├── ic_blank.xml
│ ├── ic_block.xml
│ ├── ic_book.xml
│ ├── ic_bookmark.xml
│ ├── ic_branch.xml
│ ├── ic_brower.xml
│ ├── ic_brush.xml
│ ├── ic_bug.xml
│ ├── ic_check.xml
│ ├── ic_check_small.xml
│ ├── ic_checkbox.xml
│ ├── ic_checkbox_empty.xml
│ ├── ic_checkbox_empty_small.xml
│ ├── ic_checkbox_small.xml
│ ├── ic_circle_small.xml
│ ├── ic_clear.xml
│ ├── ic_clear_all.xml
│ ├── ic_clear_black.xml
│ ├── ic_code.xml
│ ├── ic_color_lens.xml
│ ├── ic_comment.xml
│ ├── ic_comment_small.xml
│ ├── ic_copy.xml
│ ├── ic_crop_square.xml
│ ├── ic_done.xml
│ ├── ic_download.xml
│ ├── ic_edit.xml
│ ├── ic_email.xml
│ ├── ic_eye.xml
│ ├── ic_eye_off.xml
│ ├── ic_fasthub_mascot.xml
│ ├── ic_feedback.xml
│ ├── ic_file_document.xml
│ ├── ic_file_multi.xml
│ ├── ic_filter.xml
│ ├── ic_folder.xml
│ ├── ic_follow.xml
│ ├── ic_fork.xml
│ ├── ic_fork_small.xml
│ ├── ic_format_bold.xml
│ ├── ic_format_italic.xml
│ ├── ic_format_list_bulleted.xml
│ ├── ic_format_quote.xml
│ ├── ic_format_strikethrough.xml
│ ├── ic_format_underlined.xml
│ ├── ic_fullscreen.xml
│ ├── ic_gists.xml
│ ├── ic_github.xml
│ ├── ic_github_dark.xml
│ ├── ic_github_shortcut.xml
│ ├── ic_group.xml
│ ├── ic_header_one.xml
│ ├── ic_header_three.xml
│ ├── ic_header_two.xml
│ ├── ic_heart.xml
│ ├── ic_heart_full.xml
│ ├── ic_home.xml
│ ├── ic_image.xml
│ ├── ic_incognito.xml
│ ├── ic_incognito_avatar.xml
│ ├── ic_info.xml
│ ├── ic_info_outline.xml
│ ├── ic_inline_code.xml
│ ├── ic_insert_link.xml
│ ├── ic_issue_closed.xml
│ ├── ic_issue_closed_small.xml
│ ├── ic_issue_opened.xml
│ ├── ic_issue_opened_small.xml
│ ├── ic_issues.xml
│ ├── ic_issues_shortcut.xml
│ ├── ic_issues_small.xml
│ ├── ic_label.xml
│ ├── ic_language.xml
│ ├── ic_language_small.xml
│ ├── ic_license.xml
│ ├── ic_lightblub.xml
│ ├── ic_list_numbers.xml
│ ├── ic_location.xml
│ ├── ic_lock.xml
│ ├── ic_logout.xml
│ ├── ic_menu.xml
│ ├── ic_merge.xml
│ ├── ic_milestone.xml
│ ├── ic_minus.xml
│ ├── ic_money.xml
│ ├── ic_newline.xml
│ ├── ic_notification.xml
│ ├── ic_notifications_none.xml
│ ├── ic_overflow.xml
│ ├── ic_people.xml
│ ├── ic_person.xml
│ ├── ic_pin.xml
│ ├── ic_pin_filled.xml
│ ├── ic_pin_shortcut.xml
│ ├── ic_profile.xml
│ ├── ic_profile_shortcut.xml
│ ├── ic_project.xml
│ ├── ic_pull_requests.xml
│ ├── ic_pull_requests_shortcut.xml
│ ├── ic_pull_requests_small.xml
│ ├── ic_push.xml
│ ├── ic_redo.xml
│ ├── ic_repo.xml
│ ├── ic_restore.xml
│ ├── ic_restricted.xml
│ ├── ic_ring.xml
│ ├── ic_ring_sound.xml
│ ├── ic_rocket.xml
│ ├── ic_search.xml
│ ├── ic_send.xml
│ ├── ic_settings.xml
│ ├── ic_share.xml
│ ├── ic_slack.xml
│ ├── ic_star.xml
│ ├── ic_star_filled.xml
│ ├── ic_star_small.xml
│ ├── ic_storage_small.xml
│ ├── ic_submodule.xml
│ ├── ic_subscribe.xml
│ ├── ic_support.xml
│ ├── ic_sync.xml
│ ├── ic_time.xml
│ ├── ic_time_small.xml
│ ├── ic_title.xml
│ ├── ic_track_changes.xml
│ ├── ic_trash.xml
│ ├── ic_trending.xml
│ ├── ic_undo.xml
│ ├── ic_unfollow.xml
│ ├── ic_unlock.xml
│ ├── ic_unsubscribe.xml
│ ├── ic_update.xml
│ ├── ic_wrap_text.xml
│ ├── left_border.xml
│ ├── rect_shape.xml
│ ├── right_border.xml
│ ├── scrim.xml
│ ├── splash_screen_drawable.xml
│ ├── toolbar_shadow_up.xml
│ └── top_border.xml
│ ├── layouts
│ ├── main_layouts
│ │ ├── layout-land
│ │ │ ├── bottom_fab.xml
│ │ │ ├── fragment_container.xml
│ │ │ ├── header_title_with_toolbar.xml
│ │ │ ├── issues_bottom_navigation.xml
│ │ │ ├── main_bottom_navigation.xml
│ │ │ ├── profile_follow_action_layout.xml
│ │ │ └── repo_file_header_layout.xml
│ │ ├── layout-sw600dp
│ │ │ ├── bottom_fab.xml
│ │ │ ├── fragment_container.xml
│ │ │ ├── header_title_with_toolbar.xml
│ │ │ ├── issues_bottom_navigation.xml
│ │ │ ├── main_bottom_navigation.xml
│ │ │ └── repo_file_header_layout.xml
│ │ └── layout
│ │ │ ├── accounts_menu_layout.xml
│ │ │ ├── activity_fragment_layout.xml
│ │ │ ├── activity_main_view.xml
│ │ │ ├── activity_search_file.xml
│ │ │ ├── activity_search_user.xml
│ │ │ ├── activity_settings.xml
│ │ │ ├── activity_settings_category.xml
│ │ │ ├── add_banner_layout.xml
│ │ │ ├── add_gist_file_layout.xml
│ │ │ ├── add_review_dialog_layout.xml
│ │ │ ├── bottom_fab.xml
│ │ │ ├── branches_tabbed_viewpager.xml
│ │ │ ├── centered_tabbed_viewpager.xml
│ │ │ ├── comment_box_layout.xml
│ │ │ ├── commit_file_full_layout.xml
│ │ │ ├── commit_pager_activity.xml
│ │ │ ├── commit_with_branch_layout.xml
│ │ │ ├── create_gist_layout.xml
│ │ │ ├── create_issue_layout.xml
│ │ │ ├── create_label_layout.xml
│ │ │ ├── create_milestone_layout.xml
│ │ │ ├── delete_repo_file_layout.xml
│ │ │ ├── dialog_picker.xml
│ │ │ ├── edit_project_column_note_layout.xml
│ │ │ ├── edit_repo_file_layout.xml
│ │ │ ├── editor_layout.xml
│ │ │ ├── emoji_popup_layout.xml
│ │ │ ├── fab_micro_grid_refresh_list.xml
│ │ │ ├── filter_bottom_sheet.xml
│ │ │ ├── filter_issues_popup.xml
│ │ │ ├── filter_issues_prs_layout.xml
│ │ │ ├── fragment_container.xml
│ │ │ ├── full_screen_file_changes_layout.xml
│ │ │ ├── general_viewer_layout.xml
│ │ │ ├── gists_activity_layout.xml
│ │ │ ├── gists_pager_layout.xml
│ │ │ ├── header_title_with_toolbar.xml
│ │ │ ├── icon_row_item.xml
│ │ │ ├── issue_pager_activity.xml
│ │ │ ├── issue_popup_layout.xml
│ │ │ ├── issues_bottom_navigation.xml
│ │ │ ├── license_viewer_layout.xml
│ │ │ ├── login_chooser_layout.xml
│ │ │ ├── login_form_layout.xml
│ │ │ ├── main_bottom_navigation.xml
│ │ │ ├── main_nav_fragment_layout.xml
│ │ │ ├── markdown_buttons_layout.xml
│ │ │ ├── markdown_link_image_dialog_layout.xml
│ │ │ ├── merge_dialog_layout.xml
│ │ │ ├── micro_grid_refresh_list.xml
│ │ │ ├── milestone_dialog_layout.xml
│ │ │ ├── notification_activity_layout.xml
│ │ │ ├── notifications_bottom_sheet_layout.xml
│ │ │ ├── picker_dialog.xml
│ │ │ ├── playstore_review_layout_warning.xml
│ │ │ ├── pro_features_layout.xml
│ │ │ ├── profile_follow_action_layout.xml
│ │ │ ├── project_columns_layout.xml
│ │ │ ├── projects_activity_layout.xml
│ │ │ ├── pull_request_files_layout.xml
│ │ │ ├── repo_file_header_layout.xml
│ │ │ ├── repo_file_layout.xml
│ │ │ ├── repo_header_icons_layout.xml
│ │ │ ├── repo_pager_activity.xml
│ │ │ ├── review_changes_bottom_layout.xml
│ │ │ ├── review_comment_dialog_layout.xml
│ │ │ ├── search_layout.xml
│ │ │ ├── settings_layout.xml
│ │ │ ├── small_grid_refresh_list.xml
│ │ │ ├── submit_review_layout.xml
│ │ │ ├── support_development_layout.xml
│ │ │ ├── tabbed_pager_layout.xml
│ │ │ ├── tabbed_viewpager.xml
│ │ │ ├── tending_buttons_layout.xml
│ │ │ ├── theme_code_layout.xml
│ │ │ ├── theme_layout.xml
│ │ │ ├── theme_viewpager.xml
│ │ │ ├── title_header_layout.xml
│ │ │ ├── toolbar_activity_layout.xml
│ │ │ ├── trending_activity_layout.xml
│ │ │ ├── vertical_refresh_list.xml
│ │ │ ├── view_pager_activity_layout.xml
│ │ │ └── wiki_activity_layout.xml
│ ├── other_layouts
│ │ ├── layout-land
│ │ │ └── appbar_start_margin.xml
│ │ ├── layout-sw600dp
│ │ │ └── appbar_start_margin.xml
│ │ └── layout
│ │ │ ├── appbar_elevation_dark.xml
│ │ │ ├── appbar_start_margin.xml
│ │ │ ├── appbar_tabbed_elevation.xml
│ │ │ ├── avatar_layout.xml
│ │ │ ├── dialog_guide_layout.xml
│ │ │ ├── drawer_header.xml
│ │ │ ├── empty_layout.xml
│ │ │ ├── fastscroller_layout.xml
│ │ │ ├── home_button.xml
│ │ │ ├── lock_issue_pr_dialog.xml
│ │ │ ├── message_dialog.xml
│ │ │ ├── nav_menu_layout.xml
│ │ │ ├── progress_dialog_layout.xml
│ │ │ ├── simple_footer_list_dialog.xml
│ │ │ ├── simple_list_dialog.xml
│ │ │ ├── single_container_layout.xml
│ │ │ └── state_layout.xml
│ └── row_layouts
│ │ ├── layout-sw600dp
│ │ ├── login_row_item_menu.xml
│ │ └── repos_row_item_menu.xml
│ │ └── layout
│ │ ├── add_filter_row_layout.xml
│ │ ├── branches_row_item.xml
│ │ ├── column_card_row_layout.xml
│ │ ├── comments_dropdown_layout.xml
│ │ ├── comments_row_item.xml
│ │ ├── commit_file_row_item.xml
│ │ ├── commit_line_row_item.xml
│ │ ├── emoji_row_item.xml
│ │ ├── fasthub_notification_row_item.xml
│ │ ├── feeds_row_item.xml
│ │ ├── feeds_row_no_image_item.xml
│ │ ├── file_path_row_item.xml
│ │ ├── gist_files_row_item.xml
│ │ ├── grouped_commit_comment_row.xml
│ │ ├── grouped_review_timeline_row_item.xml
│ │ ├── issue_detail_header_row_item.xml
│ │ ├── issue_no_image_row_item.xml
│ │ ├── issue_row_item.xml
│ │ ├── issue_timeline_row_item.xml
│ │ ├── label_row_item.xml
│ │ ├── login_row_item.xml
│ │ ├── login_row_item_menu.xml
│ │ ├── milestone_row_item.xml
│ │ ├── no_emojies_comments_row_item.xml
│ │ ├── notification_header_row_item.xml
│ │ ├── notifications_row_item.xml
│ │ ├── org_profile_overview_layout.xml
│ │ ├── preference_widget_color.xml
│ │ ├── profile_org_row_item.xml
│ │ ├── profile_overview_layout.xml
│ │ ├── profile_pinned_repo_row_item.xml
│ │ ├── progress_layout.xml
│ │ ├── pull_status_row_item.xml
│ │ ├── pullrequest_file_row_item.xml
│ │ ├── releases_row_item.xml
│ │ ├── repo_files_row_item.xml
│ │ ├── repos_row_item.xml
│ │ ├── repos_row_item_menu.xml
│ │ ├── repos_row_no_image_item.xml
│ │ ├── review_comments_row_item.xml
│ │ ├── review_timeline_row_item.xml
│ │ ├── simple_color_row_item.xml
│ │ ├── simple_row_item.xml
│ │ ├── topics_row_item.xml
│ │ ├── trending_row_item.xml
│ │ ├── unknown_row_item.xml
│ │ └── users_small_row_item.xml
│ ├── menu-land
│ └── bottom_nav_menu.xml
│ ├── menu-sw600dp
│ ├── bottom_nav_menu.xml
│ ├── repo_bottom_nav_menu.xml
│ └── repo_with_project_bottom_nav_menu.xml
│ ├── menu
│ ├── add_menu.xml
│ ├── bottom_nav_menu.xml
│ ├── comments_menu.xml
│ ├── commit_row_menu.xml
│ ├── done_menu.xml
│ ├── download_browser_menu.xml
│ ├── download_share_menu.xml
│ ├── drawer_menu.xml
│ ├── dynamic_trending_menu.xml
│ ├── filter_fab_menu.xml
│ ├── filter_issue_state_menu.xml
│ ├── gist_menu.xml
│ ├── issue_menu.xml
│ ├── link_popup_menu.xml
│ ├── notification_menu.xml
│ ├── project_card_menu.xml
│ ├── pull_request_menu.xml
│ ├── repo_bottom_nav_menu.xml
│ ├── repo_menu.xml
│ ├── repo_with_project_bottom_nav_menu.xml
│ ├── search_menu.xml
│ ├── share_menu.xml
│ ├── trending_menu.xml
│ └── wrap_menu_option.xml
│ ├── mipmap-anydpi-v26
│ └── ic_launcher.xml
│ ├── mipmap-hdpi
│ └── ic_launcher.png
│ ├── mipmap-mdpi
│ └── ic_launcher.png
│ ├── mipmap-nodpi
│ └── foreground.png
│ ├── mipmap-xhdpi
│ └── ic_launcher.png
│ ├── mipmap-xxhdpi
│ └── ic_launcher.png
│ ├── mipmap-xxxhdpi
│ └── ic_launcher.png
│ ├── raw
│ └── changelog.html
│ ├── values-ar
│ └── strings.xml
│ ├── values-bg
│ └── strings.xml
│ ├── values-cs
│ └── strings.xml
│ ├── values-de
│ └── strings.xml
│ ├── values-es
│ └── strings.xml
│ ├── values-fr
│ └── strings.xml
│ ├── values-in
│ └── strings.xml
│ ├── values-it
│ └── strings.xml
│ ├── values-ja
│ └── strings.xml
│ ├── values-ko
│ └── strings.xml
│ ├── values-land
│ └── dimens.xml
│ ├── values-lt
│ └── strings.xml
│ ├── values-pl
│ └── strings.xml
│ ├── values-pt-rBR
│ └── strings.xml
│ ├── values-pt-rPT
│ └── strings.xml
│ ├── values-ru
│ └── strings.xml
│ ├── values-sw600dp-land
│ └── dimens.xml
│ ├── values-sw600dp
│ └── dimens.xml
│ ├── values-sw720dp-land
│ └── dimens.xml
│ ├── values-sw720dp
│ └── dimens.xml
│ ├── values-tr
│ └── strings.xml
│ ├── values-w820dp-land
│ └── dimens.xml
│ ├── values-w820dp
│ └── dimens.xml
│ ├── values-zh-rCN
│ └── strings.xml
│ ├── values-zh-rTW
│ └── strings.xml
│ ├── values
│ ├── arrays.xml
│ ├── attrs.xml
│ ├── colors.xml
│ ├── dimens.xml
│ ├── paths.xml
│ ├── strings.xml
│ ├── styles.xml
│ ├── theme_amlod.xml
│ ├── theme_attrs.xml
│ ├── theme_bluish.xml
│ ├── theme_dark.xml
│ ├── theme_light.xml
│ ├── theme_midnight.xml
│ └── themes.xml
│ └── xml
│ ├── about_settings.xml
│ ├── backup_settings.xml
│ ├── behaviour_settings.xml
│ ├── customization_settings.xml
│ ├── fasthub_settings.xml
│ ├── language_settings.xml
│ └── notification_settings.xml
├── build.gradle
├── debug_gradle.properties
├── fasthub_as_settings.jar
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── privacy_policy.html
└── settings.gradle
/.codecov.yml:
--------------------------------------------------------------------------------
1 | codecov:
2 | token: b3275f76-a606-4c63-9b5c-1c58ef7acba0
3 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 |
3 | github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
4 | patreon: FastHub
5 | open_collective: # Replace with a single Open Collective username
6 | ko_fi: # Replace with a single Ko-fi username
7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9 | liberapay: # Replace with a single Liberapay username
10 | issuehunt: # Replace with a single IssueHunt username
11 | otechie: # Replace with a single Otechie username
12 | custom: https://paypal.me/imkosh
13 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 | title: "[FR]"
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Is your feature request related to a problem? Please describe.**
11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12 |
13 | **Describe the solution you'd like**
14 | A clear and concise description of what you want to happen.
15 |
16 | **Describe alternatives you've considered**
17 | A clear and concise description of any alternative solutions or features you've considered.
18 |
19 | **Additional context**
20 | Add any other context or screenshots about the feature request here.
21 |
--------------------------------------------------------------------------------
/.github/assets/direct-apk-download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/.github/assets/direct-apk-download.png
--------------------------------------------------------------------------------
/.github/assets/feature_graphic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/.github/assets/feature_graphic.png
--------------------------------------------------------------------------------
/.github/assets/first.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/.github/assets/first.png
--------------------------------------------------------------------------------
/.github/assets/fourth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/.github/assets/fourth.png
--------------------------------------------------------------------------------
/.github/assets/sec.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/.github/assets/sec.png
--------------------------------------------------------------------------------
/.github/assets/third.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/.github/assets/third.png
--------------------------------------------------------------------------------
/.github/assets/web_hi_res_512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/.github/assets/web_hi_res_512.png
--------------------------------------------------------------------------------
/.github_changelog_generator:
--------------------------------------------------------------------------------
1 | since-tag=4.5.6
2 | issues-wo-labels=false
3 | issue-line-labels=true
4 | exclude-labels=Type: Invalid,Type: Duplicate,Type: Unknown,Type: Question,Type: No API,Type: Work as Intended,Type: Can't Reproduce,Status: Won't Fix
5 | include-labels=Status: Completed
6 | bug-labels=Type: Bug
7 | enhancement-labels=Type: Enhancement,Type: Feature Request
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | .DS_Store
5 | /build
6 | /release_gradle.properties
7 | /.idea/
8 | /app/google-services.json
9 | /app/build/
10 | /app/src/main/res/values/secrets.xml
11 | /app/fastaccess-key
12 | /changelog_generator
13 |
--------------------------------------------------------------------------------
/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 | /google-services.json
3 |
--------------------------------------------------------------------------------
/app/fastaccess-public:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/fastaccess-public
--------------------------------------------------------------------------------
/app/src/debug/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/debug/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/debug/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/debug/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/debug/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/debug/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/debug/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/debug/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/debug/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/debug/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/debug/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | FastHub Debug
4 |
--------------------------------------------------------------------------------
/app/src/main/assets/fonts/app_font.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/assets/fonts/app_font.ttf
--------------------------------------------------------------------------------
/app/src/main/assets/highlight/styles/themes/ascetic.css:
--------------------------------------------------------------------------------
1 | /*
2 |
3 | Original style from softwaremaniacs.org (c) Ivan Sagalaev
4 |
5 | */
6 |
7 | .hljs {
8 | display: block;
9 | overflow-x: auto;
10 | padding: 0px;
11 | color: black;
12 | }
13 |
14 | .hljs-string,
15 | .hljs-variable,
16 | .hljs-template-variable,
17 | .hljs-symbol,
18 | .hljs-bullet,
19 | .hljs-section,
20 | .hljs-addition,
21 | .hljs-attribute,
22 | .hljs-link {
23 | color: #888;
24 | }
25 |
26 | .hljs-comment,
27 | .hljs-quote,
28 | .hljs-meta,
29 | .hljs-deletion {
30 | color: #ccc;
31 | }
32 |
33 | .hljs-keyword,
34 | .hljs-selector-tag,
35 | .hljs-section,
36 | .hljs-name,
37 | .hljs-type,
38 | .hljs-strong {
39 | font-weight: bold;
40 | }
41 |
42 | .hljs-emphasis {
43 | font-style: italic;
44 | }
45 |
--------------------------------------------------------------------------------
/app/src/main/assets/highlight/styles/themes/darkula.css:
--------------------------------------------------------------------------------
1 | /*
2 | Deprecated due to a typo in the name and left here for compatibility purpose only.
3 | Please use darcula.css instead.
4 | */
5 |
6 | @import url('darcula.css');
7 |
--------------------------------------------------------------------------------
/app/src/main/graphql/github/PinnedRepos.graphql:
--------------------------------------------------------------------------------
1 | query getPinnedRepos($login: String!) {
2 | user(login: $login) {
3 | pinnedRepositories(first: 100) {
4 | edges {
5 | node {
6 | name
7 | url
8 | issues(states: [OPEN]) {
9 | totalCount
10 | }
11 | pullRequests(states: [OPEN]) {
12 | totalCount
13 | }
14 | stargazers {
15 | totalCount
16 | }
17 | forks {
18 | totalCount
19 | }
20 | primaryLanguage {
21 | name
22 | color
23 | }
24 | }
25 | }
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/GlideModule.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess
2 |
3 | import com.bumptech.glide.annotation.GlideModule
4 | import com.bumptech.glide.module.AppGlideModule
5 |
6 |
7 | @GlideModule
8 | class GlideModule : AppGlideModule()
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/AssigneesRequestModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import java.util.List;
4 |
5 | import lombok.Getter;
6 | import lombok.NoArgsConstructor;
7 | import lombok.Setter;
8 |
9 | /**
10 | * Created by Kosh on 05 Mar 2017, 12:01 PM
11 | */
12 |
13 | @Getter @Setter @NoArgsConstructor
14 | public class AssigneesRequestModel {
15 | private List assignees;
16 | private List reviewers;
17 | }
18 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/CommitFileListModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import java.util.ArrayList;
4 |
5 | /**
6 | * Created by Kosh on 12 Feb 2017, 12:06 AM
7 | */
8 |
9 | public class CommitFileListModel extends ArrayList {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/CommitListModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import com.fastaccess.data.dao.model.Commit;
4 |
5 | import java.util.ArrayList;
6 |
7 | /**
8 | * Created by Kosh on 12 Feb 2017, 12:10 AM
9 | */
10 |
11 | public class CommitListModel extends ArrayList {}
12 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/CreateMilestoneModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import com.google.gson.annotations.SerializedName;
4 |
5 | import lombok.Getter;
6 | import lombok.NoArgsConstructor;
7 | import lombok.Setter;
8 |
9 | /**
10 | * Created by Kosh on 05 Mar 2017, 2:30 AM
11 | */
12 |
13 | @Getter @Setter @NoArgsConstructor
14 | public class CreateMilestoneModel {
15 | private String title;
16 | private String description;
17 | @SerializedName("due_on") private String dueOn;
18 | }
19 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/GistHubErrorsModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import lombok.Getter;
4 | import lombok.NoArgsConstructor;
5 | import lombok.Setter;
6 |
7 | /**
8 | * Created by Kosh on 18 Feb 2017, 2:10 PM
9 | */
10 |
11 | @Getter @Setter @NoArgsConstructor class GistHubErrorsModel {
12 | private String resource;
13 | private String field;
14 | private String code;
15 | }
16 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/GitCommitListModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import java.util.ArrayList;
4 |
5 | /**
6 | * Created by Kosh on 12 Feb 2017, 12:14 AM
7 | */
8 |
9 | public class GitCommitListModel extends ArrayList {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/GitHubErrorResponse.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import java.util.List;
4 |
5 | import lombok.Getter;
6 | import lombok.NoArgsConstructor;
7 | import lombok.Setter;
8 |
9 | /**
10 | * Created by Kosh on 18 Feb 2017, 2:09 PM
11 | */
12 |
13 | @Getter @Setter @NoArgsConstructor
14 | public class GitHubErrorResponse {
15 | private String message;
16 | private String documentation_url;
17 | private List errors;
18 |
19 | @Override public String toString() {
20 | return "GitHubErrorResponse{" +
21 | "message='" + message + '\'' +
22 | ", documentation_url='" + documentation_url + '\'' +
23 | ", errors=" + errors +
24 | '}';
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/GitHubStatusModel.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao
2 |
3 | import com.google.gson.annotations.SerializedName
4 |
5 | /**
6 | * Created by Hashemsergani on 18.10.17.
7 | */
8 | data class GitHubStatusModel(
9 | @SerializedName("status") var status: GithubStatus? = null
10 | )
11 |
12 | data class GithubStatus(
13 | @SerializedName("description") var description: String? = null,
14 | @SerializedName("indicator") var indicator: String? = null
15 | )
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/GithubFileModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import java.io.Serializable;
4 | import java.util.HashMap;
5 |
6 | /**
7 | * Created by Kosh on 10 Feb 2017, 9:46 PM
8 | */
9 |
10 |
11 | public class GithubFileModel extends HashMap implements Serializable {}
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/LabelListModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import java.util.ArrayList;
4 |
5 | /**
6 | * Created by Kosh on 12 Feb 2017, 1:32 PM
7 | */
8 |
9 | public class LabelListModel extends ArrayList {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/LockIssuePrModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Getter;
5 | import lombok.NoArgsConstructor;
6 | import lombok.Setter;
7 |
8 | /**
9 | * Created by Kosh on 10.02.18.
10 | */
11 | @NoArgsConstructor @AllArgsConstructor @Getter @Setter public class LockIssuePrModel {
12 | private boolean locked;
13 | private String activeLockReason;
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/NotificationSoundModel.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao
2 |
3 | import android.net.Uri
4 |
5 | /**
6 | * Created by kosh on 23/07/2017.
7 | */
8 | class NotificationSoundModel(val name: String? = null, val uri: Uri? = null, val isSelected: Boolean = false)
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/NotificationSubscriptionBodyModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Getter;
5 | import lombok.Setter;
6 |
7 | /**
8 | * Created by Hashemsergani on 14.10.17.
9 | */
10 |
11 | @AllArgsConstructor @Getter @Setter public class NotificationSubscriptionBodyModel {
12 | private Boolean subscribed;
13 | private Boolean ignored;
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/ReleasesAssetsListModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import java.util.ArrayList;
4 |
5 | /**
6 | * Created by Kosh on 31 Dec 2016, 1:28 PM
7 | */
8 |
9 | public class ReleasesAssetsListModel extends ArrayList {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/RepoSubscriptionModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import java.util.Date;
4 |
5 | import lombok.Getter;
6 | import lombok.NoArgsConstructor;
7 | import lombok.Setter;
8 |
9 | /**
10 | * Created by Kosh on 14 Mar 2017, 9:10 PM
11 | */
12 |
13 | @Getter @Setter @NoArgsConstructor
14 | public class RepoSubscriptionModel {
15 | private boolean subscribed;
16 | private boolean ignored;
17 | private Date createdAt;
18 | private String url;
19 | private String repositoryUrl;
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/TopicsModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import java.util.ArrayList;
4 |
5 | /**
6 | * Created by Kosh on 09 May 2017, 7:52 PM
7 | */
8 |
9 | public class TopicsModel extends ArrayList {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/TreeResponseModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import com.fastaccess.data.dao.model.RepoFile;
4 |
5 | import java.util.List;
6 |
7 | import lombok.Getter;
8 | import lombok.NoArgsConstructor;
9 | import lombok.Setter;
10 |
11 | /**
12 | * Created by Kosh on 12 Apr 2017, 1:12 PM
13 | */
14 |
15 | @NoArgsConstructor @Getter @Setter public class TreeResponseModel {
16 | private String sha;
17 | private String url;
18 | boolean truncated;
19 | List tree;
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/UsersListModel.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao;
2 |
3 | import com.fastaccess.data.dao.model.User;
4 |
5 | import java.util.ArrayList;
6 |
7 | /**
8 | * Created by Kosh on 12 Feb 2017, 1:33 PM
9 | */
10 |
11 | public class UsersListModel extends ArrayList {}
12 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/CommitConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.model.Commit;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 7:58 PM
7 | */
8 |
9 | public class CommitConverter extends BaseConverter {
10 |
11 | @Override protected Class extends Commit> getTypeClass() {
12 | return Commit.class;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/CommitFilesConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.CommitFileListModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:37 PM
7 | */
8 |
9 | public class CommitFilesConverter extends BaseConverter {
10 | @Override protected Class extends CommitFileListModel> getTypeClass() {
11 | return CommitFileListModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/CommitsConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.CommitListModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:37 PM
7 | */
8 |
9 | public class CommitsConverter extends BaseConverter {
10 | @Override protected Class extends CommitListModel> getTypeClass() {
11 | return CommitListModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/GistConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.model.Gist;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:30 PM
7 | */
8 |
9 | public class GistConverter extends BaseConverter {
10 | @Override protected Class extends Gist> getTypeClass() {
11 | return Gist.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/GitCommitConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.GitCommitModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:42 PM
7 | */
8 |
9 | public class GitCommitConverter extends BaseConverter {
10 | @Override protected Class extends GitCommitModel> getTypeClass() {
11 | return GitCommitModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/GitHubFilesConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.GithubFileModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:21 PM
7 | */
8 |
9 | public class GitHubFilesConverter extends BaseConverter {
10 | @Override protected Class extends GithubFileModel> getTypeClass() {
11 | return GithubFileModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/GitHubStateConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.GithubState;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:41 PM
7 | */
8 |
9 | public class GitHubStateConverter extends BaseConverter {
10 | @Override protected Class extends GithubState> getTypeClass() {
11 | return GithubState.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/IssueConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.model.Issue;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:30 PM
7 | */
8 |
9 | public class IssueConverter extends BaseConverter {
10 | @Override protected Class extends Issue> getTypeClass() {
11 | return Issue.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/LabelConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.LabelModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:30 PM
7 | */
8 |
9 | public class LabelConverter extends BaseConverter {
10 | @Override protected Class extends LabelModel> getTypeClass() {
11 | return LabelModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/LabelsListConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.LabelListModel;
4 |
5 | /**
6 | * Created by Kosh on 11 Feb 2017, 11:43 PM
7 | */
8 |
9 | public class LabelsListConverter extends BaseConverter {
10 |
11 | @Override protected Class extends LabelListModel> getTypeClass() {
12 | return LabelListModel.class;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/LicenseConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.LicenseModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:33 PM
7 | */
8 |
9 | public class LicenseConverter extends BaseConverter {
10 | @Override protected Class extends LicenseModel> getTypeClass() {
11 | return LicenseModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/MilestoneConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.MilestoneModel;
4 |
5 | /**
6 | * Created by Kosh on 11 Feb 2017, 11:43 PM
7 | */
8 |
9 | public class MilestoneConverter extends BaseConverter {
10 |
11 | @Override protected Class extends MilestoneModel> getTypeClass() {
12 | return MilestoneModel.class;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/NotificationSubjectConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.NotificationSubjectModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 7:58 PM
7 | */
8 |
9 | public class NotificationSubjectConverter extends BaseConverter {
10 |
11 | @Override protected Class extends NotificationSubjectModel> getTypeClass() {
12 | return NotificationSubjectModel.class;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/PayloadConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.PayloadModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:39 PM
7 | */
8 |
9 | public class PayloadConverter extends BaseConverter {
10 | @Override protected Class extends PayloadModel> getTypeClass() {
11 | return PayloadModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/PullRequestConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.model.PullRequest;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 7:58 PM
7 | */
8 |
9 | public class PullRequestConverter extends BaseConverter {
10 |
11 | @Override protected Class extends PullRequest> getTypeClass() {
12 | return PullRequest.class;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/ReactionsConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.ReactionsModel;
4 |
5 | /**
6 | * Created by Kosh on 06 May 2017, 4:53 PM
7 | */
8 |
9 | public class ReactionsConverter extends BaseConverter {
10 | @Override protected Class extends ReactionsModel> getTypeClass() {
11 | return ReactionsModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/ReleasesAssetsConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.ReleasesAssetsListModel;
4 |
5 | /**
6 | * Created by Kosh on 11 Feb 2017, 11:43 PM
7 | */
8 |
9 | public class ReleasesAssetsConverter extends BaseConverter {
10 |
11 | @Override protected Class extends ReleasesAssetsListModel> getTypeClass() {
12 | return ReleasesAssetsListModel.class;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/RenameConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.RenameModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:29 PM
7 | */
8 |
9 | public class RenameConverter extends BaseConverter {
10 | @Override protected Class extends RenameModel> getTypeClass() {
11 | return RenameModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/RepoConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.model.Repo;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 7:58 PM
7 | */
8 |
9 | public class RepoConverter extends BaseConverter {
10 |
11 | @Override protected Class extends Repo> getTypeClass() {
12 | return Repo.class;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/RepoPermissionConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.RepoPermissionsModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:33 PM
7 | */
8 |
9 | public class RepoPermissionConverter extends BaseConverter {
10 | @Override protected Class extends RepoPermissionsModel> getTypeClass() {
11 | return RepoPermissionsModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/TeamConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.TeamsModel;
4 | import com.fastaccess.data.dao.model.User;
5 |
6 | /**
7 | * Created by Kosh on 15 Mar 2017, 7:58 PM
8 | */
9 |
10 | public class TeamConverter extends BaseConverter {
11 |
12 | @Override protected Class extends TeamsModel> getTypeClass() {
13 | return TeamsModel.class;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/TopicsConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.TopicsModel;
4 |
5 | /**
6 | * Created by Kosh on 09 May 2017, 7:54 PM
7 | */
8 |
9 | public class TopicsConverter extends BaseConverter {
10 | @Override protected Class extends TopicsModel> getTypeClass() {
11 | return TopicsModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/UserConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.model.User;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 7:58 PM
7 | */
8 |
9 | public class UserConverter extends BaseConverter {
10 |
11 | @Override protected Class extends User> getTypeClass() {
12 | return User.class;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/converters/UsersConverter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.converters;
2 |
3 | import com.fastaccess.data.dao.UsersListModel;
4 |
5 | /**
6 | * Created by Kosh on 15 Mar 2017, 8:26 PM
7 | */
8 |
9 | public class UsersConverter extends BaseConverter {
10 | @Override protected Class extends UsersListModel> getTypeClass() {
11 | return UsersListModel.class;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/types/FilesType.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.types;
2 |
3 | import androidx.annotation.DrawableRes;
4 |
5 | import com.fastaccess.R;
6 |
7 | /**
8 | * Created by Kosh on 17 Feb 2017, 7:45 PM
9 | */
10 |
11 | public enum FilesType {
12 | file(R.drawable.ic_file_document),
13 | dir(R.drawable.ic_folder),
14 | blob(R.drawable.ic_file_document),
15 | tree(R.drawable.ic_folder),
16 | symlink(R.drawable.ic_submodule);
17 |
18 | int icon;
19 |
20 | FilesType(int icon) {
21 | this.icon = icon;
22 | }
23 |
24 | @DrawableRes public int getIcon() {
25 | return icon > 0 ? icon : R.drawable.ic_file_document;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/types/GitEntryType.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.types;
2 |
3 | public enum GitEntryType {
4 | commit,
5 | tree,
6 | blob
7 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/types/IssueState.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.types;
2 |
3 | import androidx.annotation.StringRes;
4 |
5 | import com.fastaccess.R;
6 |
7 | public enum IssueState {
8 | open(R.string.opened),
9 | closed(R.string.closed),
10 | all(R.string.all);
11 |
12 | int status;
13 |
14 | IssueState(@StringRes int status) {
15 | this.status = status;
16 | }
17 |
18 | @StringRes public int getStatus() {
19 | return status;
20 | }
21 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/types/MyIssuesType.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.types;
2 |
3 | /**
4 | * Created by Kosh on 30 Apr 2017, 1:03 PM
5 | */
6 |
7 | public enum MyIssuesType {
8 | CREATED,
9 | ASSIGNED,
10 | MENTIONED,
11 | REVIEW,
12 | PARTICIPATED
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/types/NotificationReason.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.types;
2 |
3 | public enum NotificationReason {
4 | subscribed,
5 | manual,
6 | author,
7 | comment,
8 | mention,
9 | team_mention,
10 | state_change,
11 | assign,
12 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/types/NotificationType.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.types;
2 |
3 | import com.fastaccess.R;
4 |
5 | /**
6 | * Created by Kosh on 19 Apr 2017, 7:57 PM
7 | */
8 |
9 | public enum NotificationType {
10 | PullRequest(R.drawable.ic_pull_requests),
11 | Issue(R.drawable.ic_issues),
12 | Commit(R.drawable.ic_push);
13 |
14 | int drawableRes;
15 |
16 | NotificationType(int drawableRes) {
17 | this.drawableRes = drawableRes;
18 | }
19 |
20 | public int getDrawableRes() {
21 | return drawableRes > 0 ? drawableRes : R.drawable.ic_issues;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/dao/wiki/WikiSideBarModel.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.dao.wiki
2 |
3 | import android.os.Parcel
4 | import com.fastaccess.helper.KotlinParcelable
5 | import com.fastaccess.helper.parcelableCreator
6 |
7 | /**
8 | * Created by Kosh on 13 Jun 2017, 8:03 PM
9 | */
10 | data class WikiSideBarModel(
11 | val title: String? = null,
12 | val link: String? = null
13 | ) : KotlinParcelable {
14 | companion object {
15 | @JvmField val CREATOR = parcelableCreator(::WikiSideBarModel)
16 | }
17 |
18 | constructor(source: Parcel) : this(
19 | source.readString(),
20 | source.readString()
21 | )
22 |
23 | override fun writeToParcel(dest: Parcel, flags: Int) = with(dest) {
24 | writeString(title)
25 | writeString(link)
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/service/ImgurService.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.service;
2 |
3 | import androidx.annotation.Nullable;
4 |
5 | import com.fastaccess.data.dao.ImgurReponseModel;
6 |
7 | import okhttp3.RequestBody;
8 | import retrofit2.http.Body;
9 | import retrofit2.http.POST;
10 | import retrofit2.http.Query;
11 | import io.reactivex.Observable;
12 |
13 | /**
14 | * Created by Kosh on 15 Apr 2017, 8:06 PM
15 | */
16 |
17 | public interface ImgurService {
18 | @POST("image")
19 | Observable postImage(@Nullable @Query("title") String title, @Body RequestBody body);
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/data/service/ScrapService.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.data.service
2 |
3 |
4 | import io.reactivex.Observable
5 | import retrofit2.Response
6 | import retrofit2.http.GET
7 | import retrofit2.http.Path
8 | import retrofit2.http.Query
9 |
10 | /**
11 | * Created by Kosh on 02 Jun 2017, 12:58 PM
12 | */
13 |
14 | interface ScrapService {
15 |
16 | @GET("{lan}") fun getTrending(@Path("lan") lan: String?, @Query("since") since: String?): Observable>
17 |
18 | @GET("{path}") fun getWiki(@Path(value = "path", encoded = true) path: String?): Observable
19 | }
20 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/helper/GithubConfigHelper.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.helper;
2 |
3 | import com.fastaccess.BuildConfig;
4 |
5 | /**
6 | * Created by thermatk on 12.04.17.
7 | */
8 |
9 | public class GithubConfigHelper {
10 | private static final String REDIRECT_URL = "fasthub://login";
11 |
12 | public static String getRedirectUrl() {
13 | return REDIRECT_URL;
14 | }
15 |
16 | public static String getClientId() {
17 | return BuildConfig.GITHUB_CLIENT_ID;
18 | }
19 |
20 | public static String getSecret() {
21 | return BuildConfig.GITHUB_SECRET;
22 | }
23 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/helper/ObjectsCompat.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.helper;
2 |
3 | import androidx.annotation.Nullable;
4 |
5 | /**
6 | * Created by Kosh on 18 Apr 2017, 10:57 PM
7 | */
8 |
9 | public class ObjectsCompat {
10 |
11 | public static boolean nonNull(@Nullable Object obj) {
12 | return obj != null;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/helper/ParcelableHelper.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.helper
2 |
3 | import android.os.Parcel
4 | import android.os.Parcelable
5 |
6 | interface KotlinParcelable : Parcelable {
7 | override fun describeContents() = 0
8 | override fun writeToParcel(dest: Parcel, flags: Int)
9 | }
10 |
11 | inline fun parcelableCreator(crossinline create: (Parcel) -> T) = object : Parcelable.Creator {
12 | override fun createFromParcel(source: Parcel) = create(source)
13 | override fun newArray(size: Int) = arrayOfNulls(size)
14 | }
15 |
16 | fun Parcel.readBooleanCompat() = readInt() != 0
17 |
18 | fun Parcel.writeBooleanCompat(value: Boolean) = writeInt(if (value) 1 else 0)
19 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/helper/TypeFaceHelper.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.helper;
2 |
3 | import android.content.Context;
4 | import android.graphics.Typeface;
5 | import android.widget.TextView;
6 |
7 | /**
8 | * Created by Kosh on 17/12/15 10:25 PM
9 | */
10 | public class TypeFaceHelper {
11 |
12 | private static Typeface typeFace;
13 |
14 | public static void generateTypeface(Context context) {
15 | typeFace = Typeface.createFromAsset(context.getAssets(), "fonts/app_font.ttf");
16 | }
17 |
18 | public static void applyTypeface(TextView textView) {
19 | textView.setTypeface(typeFace);
20 | }
21 |
22 | public static Typeface getTypeface() {
23 | return typeFace;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/provider/markdown/extension/emoji/Emoji.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.provider.markdown.extension.emoji;
2 |
3 | import org.commonmark.node.CustomNode;
4 | import org.commonmark.node.Delimited;
5 |
6 | /**
7 | * Created by kosh on 20/08/2017.
8 | */
9 |
10 | public class Emoji extends CustomNode implements Delimited {
11 |
12 | private static final String DELIMITER = ":";
13 |
14 | @Override public String getOpeningDelimiter() {
15 | return DELIMITER;
16 | }
17 |
18 | @Override public String getClosingDelimiter() {
19 | return DELIMITER;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/provider/markdown/extension/mention/Mention.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.provider.markdown.extension.mention;
2 |
3 | import org.commonmark.node.CustomNode;
4 | import org.commonmark.node.Delimited;
5 |
6 | /**
7 | * Created by kosh on 20/08/2017.
8 | */
9 |
10 | public class Mention extends CustomNode implements Delimited {
11 |
12 | private static final String DELIMITER = "@";
13 |
14 | @Override public String getOpeningDelimiter() {
15 | return DELIMITER;
16 | }
17 |
18 | @Override public String getClosingDelimiter() {
19 | return " ";
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/provider/rest/ApolloProdivder.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.provider.rest
2 |
3 | import com.apollographql.apollo.ApolloClient
4 | import com.fastaccess.BuildConfig
5 | import com.fastaccess.helper.PrefGetter
6 | import com.fastaccess.provider.scheme.LinkParserHelper
7 |
8 | /**
9 | * Created by Hashemsergani on 12.09.17.
10 | */
11 |
12 | object ApolloProdivder {
13 |
14 | fun getApollo(enterprise: Boolean) = ApolloClient.builder()
15 | .serverUrl("${if (enterprise && PrefGetter.isEnterprise()) {
16 | "${LinkParserHelper.getEndpoint(PrefGetter.getEnterpriseUrl())}/"
17 | } else {
18 | BuildConfig.REST_URL
19 | }}graphql")
20 | .okHttpClient(RestProvider.provideOkHttpClient())
21 | .build()
22 |
23 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/provider/rest/interceptors/ContentTypeInterceptor.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.provider.rest.interceptors
2 |
3 | import okhttp3.Interceptor
4 | import okhttp3.Response
5 |
6 | /**
7 | * Created by Kosh on 05 Jul 2017, 8:14 PM
8 | */
9 |
10 | class ContentTypeInterceptor : Interceptor {
11 | override fun intercept(chain: Interceptor.Chain): Response {
12 | val request = chain.request()
13 | return chain.proceed(request.newBuilder()
14 | .addHeader("Accept", "application/vnd.github.v3+json")
15 | .addHeader("Content-type", "application/vnd.github.v3+json")
16 | .method(request.method, request.body)
17 | .build())
18 | }
19 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/provider/timeline/handler/ItalicHandler.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.provider.timeline.handler;
2 |
3 | import android.graphics.Typeface;
4 | import android.text.SpannableStringBuilder;
5 |
6 | import com.zzhoujay.markdown.style.FontSpan;
7 |
8 | import net.nightwhistler.htmlspanner.TagNodeHandler;
9 |
10 | import org.htmlcleaner.TagNode;
11 |
12 | /**
13 | * Created by Kosh on 06 May 2017, 11:02 AM
14 | */
15 |
16 | public class ItalicHandler extends TagNodeHandler {
17 |
18 | public void handleTagNode(TagNode node, SpannableStringBuilder builder, int start, int end) {
19 | builder.setSpan(new FontSpan(1, Typeface.ITALIC), start, builder.length(), 33);
20 | }
21 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/provider/timeline/handler/StrikethroughHandler.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.provider.timeline.handler;
2 |
3 | import android.text.SpannableStringBuilder;
4 | import android.text.style.StrikethroughSpan;
5 |
6 | import net.nightwhistler.htmlspanner.TagNodeHandler;
7 |
8 | import org.htmlcleaner.TagNode;
9 |
10 | public class StrikethroughHandler extends TagNodeHandler {
11 |
12 | @Override public void handleTagNode(TagNode node, SpannableStringBuilder builder, int start, int end) {
13 | builder.setSpan(new StrikethroughSpan(), start, end, 33);
14 | }
15 |
16 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/provider/timeline/handler/SubScriptHandler.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.provider.timeline.handler;
2 |
3 | import android.text.SpannableStringBuilder;
4 | import android.text.style.RelativeSizeSpan;
5 | import android.text.style.SubscriptSpan;
6 |
7 | import net.nightwhistler.htmlspanner.TagNodeHandler;
8 |
9 | import org.htmlcleaner.TagNode;
10 |
11 | public class SubScriptHandler extends TagNodeHandler {
12 |
13 | @Override public void handleTagNode(TagNode node, SpannableStringBuilder builder, int start, int end) {
14 | builder.setSpan(new SubscriptSpan(), start, end, 33);
15 | builder.setSpan(new RelativeSizeSpan(0.8f), start, end, 33);
16 | }
17 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/provider/timeline/handler/SuperScriptHandler.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.provider.timeline.handler;
2 |
3 | import android.text.SpannableStringBuilder;
4 | import android.text.style.RelativeSizeSpan;
5 | import android.text.style.SuperscriptSpan;
6 |
7 | import net.nightwhistler.htmlspanner.TagNodeHandler;
8 |
9 | import org.htmlcleaner.TagNode;
10 |
11 | public class SuperScriptHandler extends TagNodeHandler {
12 |
13 | @Override public void handleTagNode(TagNode node, SpannableStringBuilder builder, int start, int end) {
14 | builder.setSpan(new SuperscriptSpan(), start, end, 33);
15 | builder.setSpan(new RelativeSizeSpan(0.8f), start, end, 33);
16 | }
17 |
18 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/provider/timeline/handler/UnderlineHandler.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.provider.timeline.handler;
2 |
3 | import android.text.SpannableStringBuilder;
4 | import android.text.style.UnderlineSpan;
5 |
6 | import net.nightwhistler.htmlspanner.TagNodeHandler;
7 |
8 | import org.htmlcleaner.TagNode;
9 |
10 | public class UnderlineHandler extends TagNodeHandler {
11 |
12 | @Override public void handleTagNode(TagNode tagNode, SpannableStringBuilder spannableStringBuilder, int start, int end) {
13 | spannableStringBuilder.setSpan(new UnderlineSpan(), start, end, 33);
14 | }
15 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/adapter/callback/OnToggleView.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.adapter.callback;
2 |
3 | public interface OnToggleView {
4 | void onToggle(long id, boolean isCollapsed);
5 |
6 | boolean isCollapsed(long id);
7 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/adapter/callback/ReactionsCallback.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.adapter.callback;
2 |
3 | /**
4 | * Created by Kosh on 03 Apr 2017, 2:52 PM
5 | */
6 |
7 | public interface ReactionsCallback {
8 | boolean isPreviouslyReacted(long id, int vId);
9 |
10 | boolean isCallingApi(long id, int vId);
11 | }
12 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/adapter/viewholder/UnknownTypeViewHolder.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.adapter.viewholder
2 |
3 | import android.view.View
4 | import com.fastaccess.ui.widgets.recyclerview.BaseViewHolder
5 |
6 | /**
7 | * Created by kosh on 07/08/2017.
8 | */
9 | class UnknownTypeViewHolder(view: View) : BaseViewHolder(view) {
10 | override fun bind(t: Any) {} //DO NOTHING
11 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/changelog/ChangelogMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.changelog;
2 |
3 | import androidx.annotation.Nullable;
4 |
5 | import com.fastaccess.ui.base.mvp.BaseMvp;
6 |
7 | /**
8 | * Created by Kosh on 28 May 2017, 10:53 AM
9 | */
10 |
11 | public interface ChangelogMvp {
12 |
13 | interface View extends BaseMvp.FAView {
14 | void onChangelogLoaded(@Nullable String html);
15 | }
16 |
17 | interface Presenter {
18 | void onLoadChangelog();
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/editor/emoji/EmojiMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.editor.emoji
2 |
3 | import com.fastaccess.provider.emoji.Emoji
4 | import com.fastaccess.ui.base.mvp.BaseMvp
5 | import com.fastaccess.ui.widgets.recyclerview.BaseViewHolder
6 |
7 | /**
8 | * Created by kosh on 17/08/2017.
9 | */
10 | interface EmojiMvp {
11 |
12 | interface View : BaseMvp.FAView, BaseViewHolder.OnItemClickListener {
13 | fun clearAdapter()
14 | fun onAddEmoji(emoji: Emoji)
15 | }
16 |
17 | interface Presenter {
18 | fun onLoadEmoji()
19 | }
20 |
21 | interface EmojiCallback {
22 | fun onEmojiAdded(emoji: Emoji?)
23 | }
24 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/editor/popup/EditorLinkImageMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.editor.popup;
2 |
3 | import androidx.annotation.NonNull;
4 | import androidx.annotation.Nullable;
5 |
6 | import com.fastaccess.ui.base.mvp.BaseMvp;
7 |
8 | import java.io.File;
9 |
10 | /**
11 | * Created by Kosh on 15 Apr 2017, 9:06 PM
12 | */
13 |
14 | public interface EditorLinkImageMvp {
15 |
16 | interface EditorLinkCallback {
17 | void onAppendLink(@Nullable String title, @Nullable String link, boolean isLink);
18 | }
19 |
20 | interface View extends BaseMvp.FAView {
21 | void onUploaded(@Nullable String title, @Nullable String link);
22 | }
23 |
24 | interface Presenter {
25 | void onSubmit(@Nullable String title, @NonNull File file);
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/filter/chooser/FilterAddChooserListener.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.filter.chooser;
2 |
3 | /**
4 | * Created by Kosh on 10 Apr 2017, 12:19 PM
5 | */
6 |
7 | public interface FilterAddChooserListener {
8 |
9 | void onAddSelected();
10 |
11 | void onSearchSelected();
12 | }
13 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/filter/issues/FilterIssuesActivityMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.filter.issues;
2 |
3 | import androidx.annotation.NonNull;
4 |
5 | import com.fastaccess.ui.base.mvp.BaseMvp;
6 |
7 | /**
8 | * Created by Kosh on 09 Apr 2017, 6:19 PM
9 | */
10 |
11 | public interface FilterIssuesActivityMvp {
12 |
13 | interface View extends BaseMvp.FAView {
14 | void onSetCount(int count, boolean isOpen);
15 | }
16 |
17 | interface Presenter {
18 | void onStart(@NonNull String login, @NonNull String repoId);
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/gists/create/dialog/AddGistMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.gists.create.dialog
2 |
3 | import com.fastaccess.data.dao.FilesListModel
4 | import com.fastaccess.ui.base.mvp.BaseMvp
5 | import com.fastaccess.ui.modules.editor.emoji.EmojiMvp
6 | import com.fastaccess.ui.modules.editor.popup.EditorLinkImageMvp
7 | import com.fastaccess.ui.widgets.markdown.MarkDownLayout
8 |
9 | /**
10 | * Created by kosh on 14/08/2017.
11 | */
12 | interface AddGistMvp {
13 |
14 | interface View : BaseMvp.FAView, EditorLinkImageMvp.EditorLinkCallback, MarkDownLayout.MarkdownListener, EmojiMvp.EmojiCallback
15 | interface Presenter
16 | interface AddGistFileListener {
17 | fun onFileAdded(file: FilesListModel, position: Int? = -1)
18 | }
19 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/gists/create/dialog/AddGistPresenter.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.gists.create.dialog
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter
4 |
5 | /**
6 | * Created by kosh on 14/08/2017.
7 | */
8 | class AddGistPresenter : BasePresenter(), AddGistMvp.Presenter
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/login/chooser/LoginChooserMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.login.chooser
2 |
3 | import com.fastaccess.data.dao.model.Login
4 | import com.fastaccess.ui.base.mvp.BaseMvp
5 | import com.fastaccess.ui.modules.settings.LanguageBottomSheetDialog
6 | import com.fastaccess.ui.widgets.recyclerview.BaseViewHolder
7 |
8 | interface LoginChooserMvp {
9 |
10 | interface View : BaseMvp.FAView, LanguageBottomSheetDialog.LanguageDialogListener,
11 | BaseViewHolder.OnItemClickListener {
12 | fun onAccountsLoaded(accounts: List?)
13 | }
14 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/login/chooser/LoginChooserPresenter.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.login.chooser
2 |
3 | import com.fastaccess.data.dao.model.Login
4 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter
5 |
6 | class LoginChooserPresenter : BasePresenter() {
7 | init {
8 | manageObservable(Login.getAccounts().toList()
9 | .toObservable()
10 | .doOnNext { sendToView { view -> view.onAccountsLoaded(it) } })
11 | }
12 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/main/issues/pager/MyIssuesPagerMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.main.issues.pager;
2 |
3 | import com.fastaccess.ui.base.mvp.BaseMvp;
4 | import com.fastaccess.ui.modules.repos.RepoPagerMvp;
5 |
6 | /**
7 | * Created by Kosh on 26 Mar 2017, 12:15 AM
8 | */
9 |
10 | public interface MyIssuesPagerMvp {
11 |
12 | interface View extends BaseMvp.FAView, RepoPagerMvp.TabsBadgeListener {}
13 |
14 | interface Presenter {}
15 | }
16 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/main/issues/pager/MyIssuesPagerPresenter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.main.issues.pager;
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter;
4 |
5 | /**
6 | * Created by Kosh on 26 Mar 2017, 12:17 AM
7 | */
8 |
9 | public class MyIssuesPagerPresenter extends BasePresenter implements MyIssuesPagerMvp.Presenter {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/main/orgs/OrgListDialogMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.main.orgs;
2 |
3 | import androidx.annotation.NonNull;
4 | import androidx.annotation.Nullable;
5 |
6 | import com.fastaccess.data.dao.model.User;
7 | import com.fastaccess.ui.base.mvp.BaseMvp;
8 |
9 | import java.util.ArrayList;
10 | import java.util.List;
11 |
12 | /**
13 | * Created by Kosh on 15 Apr 2017, 1:53 PM
14 | */
15 |
16 | public interface OrgListDialogMvp {
17 |
18 | interface View extends BaseMvp.FAView {
19 | void onNotifyAdapter(@Nullable List items);
20 |
21 | }
22 |
23 | interface Presenter {
24 | void onLoadOrgs();
25 |
26 | @NonNull ArrayList getOrgs();
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/main/premium/PremiumMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.main.premium
2 |
3 | import com.fastaccess.ui.base.mvp.BaseMvp
4 |
5 | /**
6 | * Created by kosh on 15/07/2017.
7 | */
8 | interface PremiumMvp {
9 |
10 | interface View : BaseMvp.FAView {
11 | fun onSuccessfullyActivated()
12 | fun onNoMatch()
13 | }
14 |
15 | interface Presenter {
16 | fun onCheckPromoCode(promo: String)
17 | }
18 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/main/pullrequests/pager/MyPullsPagerMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.main.pullrequests.pager;
2 |
3 | import com.fastaccess.ui.base.mvp.BaseMvp;
4 | import com.fastaccess.ui.modules.repos.RepoPagerMvp;
5 |
6 | /**
7 | * Created by Kosh on 26 Mar 2017, 12:15 AM
8 | */
9 |
10 | public interface MyPullsPagerMvp {
11 |
12 | interface View extends BaseMvp.FAView, RepoPagerMvp.TabsBadgeListener {}
13 |
14 | interface Presenter {}
15 | }
16 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/main/pullrequests/pager/MyPullsPagerPresenter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.main.pullrequests.pager;
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter;
4 |
5 | /**
6 | * Created by Kosh on 26 Mar 2017, 12:17 AM
7 | */
8 |
9 | public class MyPullsPagerPresenter extends BasePresenter implements MyPullsPagerMvp.Presenter {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/notification/callback/OnNotificationChangedListener.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.notification.callback;
2 |
3 | import androidx.annotation.NonNull;
4 |
5 | import com.fastaccess.data.dao.GroupedNotificationModel;
6 |
7 | public interface OnNotificationChangedListener {
8 |
9 | void onNotificationChanged(@NonNull GroupedNotificationModel notification, int index);
10 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/notification/fasthub/FastHubNotificationsMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.notification.fasthub
2 |
3 | import com.fastaccess.data.dao.model.FastHubNotification
4 | import com.fastaccess.ui.base.mvp.BaseMvp
5 | import com.fastaccess.ui.widgets.recyclerview.BaseViewHolder
6 |
7 | /**
8 | * Created by Kosh on 19.11.17.
9 | */
10 | interface FastHubNotificationsMvp {
11 |
12 | interface View : BaseMvp.FAView, BaseViewHolder.OnItemClickListener {
13 | fun notifyAdapter(items: List?)
14 | }
15 |
16 | interface Presenter {
17 | fun getData(): List
18 | fun load()
19 | }
20 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/profile/ProfilePagerMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.profile;
2 |
3 | import com.fastaccess.ui.base.mvp.BaseMvp;
4 |
5 | /**
6 | * Created by Kosh on 03 Dec 2016, 7:59 AM
7 | */
8 |
9 | public interface ProfilePagerMvp {
10 |
11 | interface View extends BaseMvp.FAView {
12 | void onNavigateToFollowers();
13 |
14 | void onNavigateToFollowing();
15 |
16 | void onCheckType(boolean isOrg);
17 |
18 | }
19 |
20 | interface Presenter extends BaseMvp.FAPresenter {}
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/profile/ProfilePagerPresenter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.profile;
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter;
4 |
5 | /**
6 | * Created by Kosh on 03 Dec 2016, 8:00 AM
7 | */
8 |
9 | class ProfilePagerPresenter extends BasePresenter implements ProfilePagerMvp.Presenter {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/profile/org/OrgProfileOverviewMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.profile.org;
2 |
3 | import android.os.Bundle;
4 | import androidx.annotation.NonNull;
5 | import androidx.annotation.Nullable;
6 |
7 | import com.fastaccess.data.dao.model.User;
8 | import com.fastaccess.ui.base.mvp.BaseMvp;
9 |
10 | /**
11 | * Created by Kosh on 03 Dec 2016, 7:59 AM
12 | */
13 |
14 | public interface OrgProfileOverviewMvp {
15 |
16 | interface View extends BaseMvp.FAView {
17 | void onInitViews(@Nullable User userModel);
18 | }
19 |
20 | interface Presenter extends BaseMvp.FAPresenter {
21 | void onFragmentCreated(@Nullable Bundle bundle);
22 |
23 | void onWorkOffline(@NonNull String login);
24 |
25 | @NonNull String getLogin();
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/DummyFragment.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos;
2 |
3 | import android.os.Bundle;
4 | import androidx.annotation.Nullable;
5 | import androidx.fragment.app.Fragment;
6 | import android.view.LayoutInflater;
7 | import android.view.View;
8 | import android.view.ViewGroup;
9 |
10 | import com.fastaccess.R;
11 |
12 | /**
13 | * Created by Kosh on 11 Mar 2017, 12:10 AM
14 | */
15 |
16 | public class DummyFragment extends Fragment {
17 |
18 | @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
19 | return inflater.inflate(R.layout.single_container_layout, container, false);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/code/RepoCodePagerMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.code;
2 |
3 | import com.fastaccess.ui.base.mvp.BaseMvp;
4 | import com.fastaccess.ui.modules.repos.RepoPagerMvp;
5 |
6 | /**
7 | * Created by Kosh on 31 Dec 2016, 1:35 AM
8 | */
9 |
10 | public interface RepoCodePagerMvp {
11 |
12 | interface View extends BaseMvp.FAView, RepoPagerMvp.TabsBadgeListener {
13 | boolean canPressBack();
14 |
15 | void onBackPressed();
16 | }
17 |
18 | interface Presenter extends BaseMvp.FAPresenter {}
19 | }
20 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/code/RepoCodePagerPresenter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.code;
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter;
4 |
5 | /**
6 | * Created by Kosh on 31 Dec 2016, 1:36 AM
7 | */
8 |
9 | class RepoCodePagerPresenter extends BasePresenter implements RepoCodePagerMvp.Presenter {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/extras/branches/pager/BranchesPagerListener.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.extras.branches.pager
2 |
3 | import com.fastaccess.data.dao.BranchesModel
4 |
5 | /**
6 | * Created by kosh on 15/07/2017.
7 | */
8 | interface BranchesPagerListener {
9 | fun onItemSelect(branch: BranchesModel)
10 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/extras/license/RepoLicenseMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.extras.license
2 |
3 | import com.fastaccess.ui.base.mvp.BaseMvp
4 |
5 | /**
6 | * Created by Kosh on 30 Jun 2017, 12:32 PM
7 | */
8 |
9 | interface RepoLicenseMvp {
10 | interface View : BaseMvp.FAView {
11 | fun onLicenseLoaded(license: String)
12 | }
13 |
14 | interface Presenter {
15 | fun onLoadLicense(login: String, repo: String)
16 | }
17 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/extras/license/RepoLicensePresenter.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.extras.license
2 |
3 | import com.fastaccess.provider.rest.RestProvider
4 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter
5 |
6 | /**
7 | * Created by Kosh on 30 Jun 2017, 12:34 PM
8 | */
9 | class RepoLicensePresenter : BasePresenter(), RepoLicenseMvp.Presenter {
10 |
11 | override fun onLoadLicense(login: String, repo: String) {
12 | makeRestCall(RestProvider.getRepoService(isEnterprise).getLicense(login, repo),
13 | { license -> sendToView { it.onLicenseLoaded(license) } })
14 | }
15 |
16 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/extras/locking/LockIssuePrCallback.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.extras.locking
2 |
3 | /**
4 | * Created by Kosh on 10.02.18.
5 | */
6 |
7 | interface LockIssuePrCallback {
8 | fun onLock(reason: String)
9 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/extras/popup/IssuePopupMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.extras.popup;
2 |
3 | import androidx.annotation.NonNull;
4 |
5 | import com.fastaccess.ui.base.mvp.BaseMvp;
6 |
7 | /**
8 | * Created by Kosh on 27 May 2017, 1:55 PM
9 | */
10 |
11 | public interface IssuePopupMvp {
12 |
13 | interface View extends BaseMvp.FAView {
14 | void onSuccessfullySubmitted();
15 | }
16 |
17 | interface Presenter {
18 | void onSubmit(@NonNull String login, @NonNull String repoId, int issueNumber, @NonNull String text);
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/git/delete/DeleteContentFileCallback.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.git.delete
2 |
3 | /**
4 | * Created by Hashemsergani on 02/09/2017.
5 | */
6 | interface DeleteContentFileCallback {
7 |
8 | fun onDelete(message: String, position: Int)
9 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/issues/RepoIssuesPagerPresenter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.issues;
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter;
4 |
5 | /**
6 | * Created by Kosh on 31 Dec 2016, 1:36 AM
7 | */
8 |
9 | class RepoIssuesPagerPresenter extends BasePresenter implements RepoIssuesPagerMvp.Presenter {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/pull_requests/RepoPullRequestPagerMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.pull_requests;
2 |
3 | import androidx.annotation.IntRange;
4 |
5 | import com.fastaccess.ui.base.mvp.BaseMvp;
6 | import com.fastaccess.ui.modules.repos.RepoPagerMvp;
7 |
8 | /**
9 | * Created by Kosh on 31 Dec 2016, 1:35 AM
10 | */
11 |
12 | public interface RepoPullRequestPagerMvp {
13 |
14 | interface View extends BaseMvp.FAView, RepoPagerMvp.TabsBadgeListener {
15 | @IntRange(from = 0, to = 1) int getCurrentItem();
16 |
17 | void onScrolled(boolean isUp);
18 | }
19 |
20 | interface Presenter extends BaseMvp.FAPresenter {}
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/pull_requests/RepoPullRequestPagerPresenter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.pull_requests;
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter;
4 |
5 | /**
6 | * Created by Kosh on 31 Dec 2016, 1:36 AM
7 | */
8 |
9 | class RepoPullRequestPagerPresenter extends BasePresenter implements RepoPullRequestPagerMvp.Presenter {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/pull_requests/pull_request/merge/MergePullReqeustMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.pull_requests.pull_request.merge;
2 |
3 | import androidx.annotation.NonNull;
4 |
5 | import com.fastaccess.ui.base.mvp.BaseMvp;
6 |
7 | /**
8 | * Created by Kosh on 18 Mar 2017, 12:11 PM
9 | */
10 |
11 | public interface MergePullReqeustMvp {
12 |
13 | interface MergeCallback {
14 | void onMerge(@NonNull String msg, @NonNull String mergeMethod);
15 | }
16 |
17 | interface View extends BaseMvp.FAView {
18 |
19 | }
20 |
21 | interface Presenter {}
22 | }
23 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/pull_requests/pull_request/merge/MergePullRequestPresenter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.pull_requests.pull_request.merge;
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter;
4 |
5 | /**
6 | * Created by Kosh on 18 Mar 2017, 12:13 PM
7 | */
8 |
9 | public class MergePullRequestPresenter extends BasePresenter implements MergePullReqeustMvp.Presenter {}
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/repos/wiki/WikiMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.repos.wiki
2 |
3 | import android.content.Intent
4 | import com.fastaccess.data.dao.wiki.WikiContentModel
5 | import com.fastaccess.data.dao.wiki.WikiSideBarModel
6 | import com.fastaccess.ui.base.mvp.BaseMvp
7 |
8 | /**
9 | * Created by Kosh on 13 Jun 2017, 8:11 PM
10 | */
11 | interface WikiMvp {
12 | interface View : BaseMvp.FAView {
13 | fun onLoadContent(wiki: WikiContentModel)
14 | fun onSetPage(page: String)
15 | fun showPrivateRepoError()
16 | }
17 |
18 | interface Presenter {
19 | fun onActivityCreated(intent: Intent?)
20 | fun onSidebarClicked(sidebar: WikiSideBarModel)
21 | }
22 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/reviews/callback/ReviewCommentListener.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.reviews.callback
2 |
3 | import android.os.Bundle
4 | import com.fastaccess.data.dao.CommitLinesModel
5 |
6 | /**
7 | * Created by Kosh on 24 Jun 2017, 12:38 PM
8 | */
9 | interface ReviewCommentListener {
10 | fun onCommentAdded(comment: String, item: CommitLinesModel, bundle: Bundle?)
11 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/search/repos/files/SearchFileMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.search.repos.files;
2 |
3 | import android.os.Bundle;
4 | import androidx.annotation.NonNull;
5 |
6 | import com.fastaccess.ui.base.mvp.BaseMvp;
7 | import com.fastaccess.ui.widgets.FontEditText;
8 |
9 |
10 | interface SearchFileMvp {
11 |
12 | interface View extends BaseMvp.FAView {
13 | void onValidSearchQuery(@NonNull String query);
14 | }
15 |
16 | interface Presenter extends BaseMvp.FAPresenter {
17 | void onSearchClicked(@NonNull FontEditText editText, boolean inPath);
18 |
19 | void onActivityCreated(Bundle extras);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/settings/category/SettingsCategoryMvp.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.settings.category;
2 |
3 | import com.fastaccess.ui.base.mvp.BaseMvp;
4 |
5 | /**
6 | * Created by JediB on 5/12/2017.
7 | */
8 |
9 | public interface SettingsCategoryMvp {
10 | interface Presenter extends BaseMvp.FAPresenter {
11 |
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/settings/category/SettingsCategoryPresenter.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.settings.category;
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter;
4 |
5 | /**
6 | * Created by JediB on 5/12/2017.
7 | */
8 |
9 | class SettingsCategoryPresenter extends BasePresenter implements SettingsCategoryMvp.Presenter{}
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/settings/sound/NotificationSoundMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.settings.sound
2 |
3 | import android.net.Uri
4 | import com.fastaccess.data.dao.NotificationSoundModel
5 | import com.fastaccess.ui.base.mvp.BaseMvp
6 |
7 | /**
8 | * Created by kosh on 23/07/2017.
9 | */
10 |
11 | interface NotificationSoundMvp {
12 | interface View : BaseMvp.FAView {
13 | fun onAddSound(sound: NotificationSoundModel)
14 | fun onCompleted()
15 | }
16 |
17 | interface Presenter {
18 | fun loadSounds(default: String? = null)
19 | }
20 |
21 | interface NotificationSoundListener {
22 | fun onSoundSelected(uri: Uri? = null)
23 | }
24 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/theme/code/ThemeCodeMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.theme.code
2 |
3 | import com.fastaccess.ui.base.mvp.BaseMvp
4 | import com.prettifier.pretty.PrettifyWebView
5 |
6 | /**
7 | * Created by Kosh on 22 Jun 2017, 11:50 PM
8 | */
9 | interface ThemeCodeMvp {
10 |
11 | interface View : BaseMvp.FAView, PrettifyWebView.OnContentChangedListener {
12 | fun onInitAdapter(list: List)
13 | }
14 |
15 | interface Presenter {
16 | fun onLoadThemes()
17 | }
18 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/theme/code/ThemeCodePresenter.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.theme.code
2 |
3 | import com.fastaccess.helper.RxHelper
4 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter
5 | import com.prettifier.pretty.helper.CodeThemesHelper
6 | import io.reactivex.Observable
7 |
8 | /**
9 | * Created by Kosh on 22 Jun 2017, 11:52 PM
10 | */
11 |
12 | class ThemeCodePresenter : BasePresenter(), ThemeCodeMvp.Presenter {
13 |
14 | override fun onLoadThemes() {
15 | manageDisposable(RxHelper.getObservable(Observable.just(CodeThemesHelper.listThemes()))
16 | .subscribe({ list -> sendToView { it.onInitAdapter(list) } }, { onError(it) }))
17 | }
18 |
19 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/theme/fragment/ThemeFragmentMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.theme.fragment
2 |
3 | import androidx.annotation.ColorInt
4 |
5 | import com.fastaccess.ui.base.mvp.BaseMvp
6 |
7 | /**
8 | * Created by Kosh on 08 Jun 2017, 10:52 PM
9 | */
10 |
11 | interface ThemeFragmentMvp {
12 |
13 | interface ThemeListener {
14 | fun onChangePrimaryDarkColor(@ColorInt color: Int, darkIcons: Boolean)
15 |
16 | fun onThemeApplied()
17 | }
18 |
19 | interface View : BaseMvp.FAView
20 |
21 | interface Presenter
22 | }
23 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/theme/fragment/ThemeFragmentPresenter.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.theme.fragment
2 |
3 | import com.fastaccess.ui.base.mvp.presenter.BasePresenter
4 |
5 | /**
6 | * Created by Kosh on 08 Jun 2017, 10:52 PM
7 | */
8 |
9 | class ThemeFragmentPresenter : BasePresenter(), ThemeFragmentMvp.Presenter
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/modules/trending/TrendingMvp.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.modules.trending
2 |
3 | import androidx.annotation.ColorInt
4 | import com.fastaccess.ui.base.mvp.BaseMvp
5 |
6 | /**
7 | * Created by Kosh on 30 May 2017, 10:51 PM
8 | */
9 |
10 | interface TrendingMvp {
11 | interface View : BaseMvp.FAView {
12 | fun onAppend(title: String, @ColorInt color: Int)
13 | fun onClearMenu()
14 | }
15 |
16 | interface Presenter {
17 | fun onLoadLanguage()
18 |
19 | fun onFilterLanguage(key: String)
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/widgets/CardsPagerTransformerBasic.kt:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.widgets
2 |
3 | import androidx.viewpager.widget.ViewPager
4 | import android.view.View
5 |
6 | class CardsPagerTransformerBasic(private val baseElevation: Int, private val raisingElevation: Int) : ViewPager.PageTransformer {
7 | override fun transformPage(page: View, position: Float) {
8 | val absPosition = Math.abs(position)
9 | if (absPosition >= 1) {
10 | page.elevation = baseElevation.toFloat()
11 | } else {
12 | page.elevation = (1 - absPosition) * raisingElevation + baseElevation
13 | }
14 | }
15 |
16 |
17 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/fastaccess/ui/widgets/recyclerview/ProgressBarViewHolder.java:
--------------------------------------------------------------------------------
1 | package com.fastaccess.ui.widgets.recyclerview;
2 |
3 | import androidx.annotation.NonNull;
4 | import android.view.View;
5 | import android.view.ViewGroup;
6 |
7 | import com.fastaccess.R;
8 |
9 | /**
10 | * Created by kosh on 03/08/2017.
11 | */
12 |
13 | public class ProgressBarViewHolder extends BaseViewHolder {
14 |
15 | private ProgressBarViewHolder(@NonNull View itemView) {
16 | super(itemView);
17 | }
18 |
19 | public static ProgressBarViewHolder newInstance(ViewGroup viewGroup) {
20 | return new ProgressBarViewHolder(getView(viewGroup, R.layout.progress_layout));
21 | }
22 |
23 | @Override public void bind(@NonNull Object o) {
24 |
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/app/src/main/java/com/zzhoujay/markdown/style/LinkSpan.java:
--------------------------------------------------------------------------------
1 | package com.zzhoujay.markdown.style;
2 |
3 | import android.text.TextPaint;
4 | import android.text.style.URLSpan;
5 |
6 | /**
7 | * Created by zhou on 16-7-2.
8 | * 链接Span
9 | */
10 | public class LinkSpan extends URLSpan {
11 |
12 | private int color;
13 |
14 | public LinkSpan(String url, int color) {
15 | super(url);
16 | this.color = color;
17 | }
18 |
19 | @Override
20 | public void updateDrawState(TextPaint ds) {
21 | super.updateDrawState(ds);
22 | ds.setColor(color);
23 | ds.setUnderlineText(false);
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/app/src/main/res/animator/minus_to_plus.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/animator/plus_minus_rotate.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/animator/plus_to_minus.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/color/search_tab_highlighter.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-nodpi/web_hi_res_512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/res/drawable-nodpi/web_hi_res_512.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-small/splash_screen_drawable.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
7 |
8 |
9 | -
12 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-v26/ic_app_shortcut_github.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-v26/ic_app_shortcut_issues.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-v26/ic_app_shortcut_pinned.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-v26/ic_app_shortcut_profile.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-v26/ic_app_shortcut_pull_requests.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxxhdpi/ic_edittext.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/res/drawable-xxxhdpi/ic_edittext.9.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxxhdpi/ic_timeline_arrow_left.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/res/drawable-xxxhdpi/ic_timeline_arrow_left.9.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/arrow_toggle_drawable.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/asl_follow.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
9 |
10 |
13 |
14 |
18 |
19 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/avd_follow.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 |
10 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/avd_unfollow.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 |
10 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bottom_border.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
7 |
8 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/circle_shape.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/fastscroller_bubble.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 | -
5 |
6 |
7 |
9 |
10 |
11 |
12 | -
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_add.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_add_emoji.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_announcement.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_app_shortcut_issues.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_app_shortcut_issues_foreground.xml:
--------------------------------------------------------------------------------
1 |
6 |
8 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_app_shortcut_pinned.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_app_shortcut_pinned_foreground.xml:
--------------------------------------------------------------------------------
1 |
6 |
8 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_app_shortcut_profile.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_app_shortcut_profile_foreground.xml:
--------------------------------------------------------------------------------
1 |
6 |
8 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_arrow_drop_down.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_arrow_drop_up.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_arrow_right.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_at.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_back.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_backup.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_blank.xml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_block.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_book.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_bookmark.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_brower.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_brush.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_bug.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_check.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_check_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_checkbox.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_checkbox_empty.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_checkbox_empty_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_checkbox_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_circle_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_clear.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_clear_all.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_clear_black.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_code.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_comment.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_comment_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_copy.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_crop_square.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_done.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_download.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_edit.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_email.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_eye.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_feedback.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_file_document.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_file_multi.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_filter.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_folder.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_follow.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
13 |
14 |
18 |
19 |
20 |
21 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_format_bold.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_format_italic.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_format_list_bulleted.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_format_quote.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_format_strikethrough.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_format_underlined.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_fullscreen.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_gists.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_group.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_header_one.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_header_three.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_header_two.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_heart.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_heart_full.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_home.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_image.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_info.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_info_outline.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_inline_code.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_insert_link.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_issue_closed.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_issue_closed_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_issue_opened.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_issue_opened_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_issues.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_issues_shortcut.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_issues_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_label.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_license.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_lightblub.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_list_numbers.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_location.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_lock.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_logout.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_menu.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_milestone.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_minus.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_money.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_newline.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_notification.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_notifications_none.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_overflow.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_person.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_pin.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_pin_filled.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_pin_shortcut.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_profile.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_profile_shortcut.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_project.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_push.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_redo.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_repo.xml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_restore.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_restricted.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_ring.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_ring_sound.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_rocket.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_search.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_send.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_share.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_star.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_star_filled.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_star_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_storage_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_submodule.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_subscribe.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_support.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_sync.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_time.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_time_small.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_title.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_track_changes.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_trash.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_trending.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_undo.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_unfollow.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
13 |
14 |
18 |
19 |
20 |
21 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_unlock.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_unsubscribe.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_update.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_wrap_text.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/left_border.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
7 |
8 |
11 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/rect_shape.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/right_border.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
7 |
8 |
11 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/scrim.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/splash_screen_drawable.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | -
11 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/toolbar_shadow_up.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/top_border.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
7 |
8 |
10 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout-land/bottom_fab.xml:
--------------------------------------------------------------------------------
1 |
2 |
14 |
15 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout-land/fragment_container.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout-land/issues_bottom_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout-land/main_bottom_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout-sw600dp/bottom_fab.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout-sw600dp/fragment_container.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout-sw600dp/issues_bottom_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout-sw600dp/main_bottom_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/activity_settings_category.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
11 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/add_banner_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/bottom_fab.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/branches_tabbed_viewpager.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
11 |
16 |
17 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/dialog_picker.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/fragment_container.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/issues_bottom_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/main_bottom_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/main_nav_fragment_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/milestone_dialog_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/notifications_bottom_sheet_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/settings_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
11 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/main_layouts/layout/submit_review_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/other_layouts/layout/appbar_elevation_dark.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/other_layouts/layout/avatar_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/other_layouts/layout/home_button.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/other_layouts/layout/progress_dialog_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
15 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/other_layouts/layout/single_container_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/other_layouts/layout/state_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/row_layouts/layout/file_path_row_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/row_layouts/layout/preference_widget_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/row_layouts/layout/progress_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/row_layouts/layout/topics_row_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layouts/row_layouts/layout/unknown_row_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/add_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/done_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/dynamic_trending_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/filter_fab_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/filter_issue_state_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/gist_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/link_popup_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/notification_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/search_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/trending_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/wrap_menu_option.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-nodpi/foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/res/mipmap-nodpi/foreground.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/values-land/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 | 46dp
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/values-sw600dp-land/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 52dp
4 | 24dp
5 | 2
6 | @dimen/spacing_micro
7 | 2
8 |
--------------------------------------------------------------------------------
/app/src/main/res/values-sw600dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 32dp
4 | 24dp
5 | 1
6 |
--------------------------------------------------------------------------------
/app/src/main/res/values-sw720dp-land/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 82dp
4 | 24dp
5 | 2
6 | @dimen/spacing_micro
7 | 2
8 |
--------------------------------------------------------------------------------
/app/src/main/res/values-sw720dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 58dp
4 | 24dp
5 | 1
6 | 2
7 |
--------------------------------------------------------------------------------
/app/src/main/res/values-w820dp-land/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 | 84dp
3 | 24dp
4 | 3
5 | @dimen/spacing_micro
6 | 2
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 | 64dp
3 | 24dp
4 | 2
5 | @dimen/spacing_micro
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/res/values/paths.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | M15,12C17.21,12 19,10.21 19,8C19,5.79 17.21,4 15,4C12.79,4 11,5.79 11,8C11,10.21 12.79,12
4 | 15,12L15,12ZM15,14C12.33,14 7,15.34 7,18L7,20L23,20L23,18C23,15.34 17.67,14 15,14L15,14Z
5 | M6,7 L4,7 L4,10 L1,10 L1,12 L4,12 L4,15 L6,15 L6,12 L9,12 L9,10 L6,10 L6,7 Z
6 | M6,10 L4,10 L4,10 L1,10 L1,12 L4,12 L4,12 L6,12 L6,12 L9,12 L9,10 L6,10 L6,10 Z
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/app/src/main/res/values/theme_attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/xml/about_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
10 |
11 |
16 |
17 |
--------------------------------------------------------------------------------
/app/src/main/res/xml/backup_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
10 |
11 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/xml/language_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
12 |
13 |
--------------------------------------------------------------------------------
/debug_gradle.properties:
--------------------------------------------------------------------------------
1 | # Below API Keys are meant for debugging purpose & they aren't being used in production.
2 | android_store_password=kosh2010
3 | android_key_password=kosh2010
4 | android_key_alias=FastAccess
5 | github_client_id=473e333123519beadd63
6 | github_secret=b2d158f949d3615078eaf570ff99eba81cfa1ff9
7 | imgur_client_id=5fced7f255e1dc9
8 | imgur_secret=03025033403196a4b68b48f0738e67ef136ad64f
9 | redirect_url=fasthub://login
10 | android.sdk.channel=2
11 |
--------------------------------------------------------------------------------
/fasthub_as_settings.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/fasthub_as_settings.jar
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.daemon=true
2 | org.gradle.jvmargs=-Xmx2560m
3 | android.enableJetifier=true
4 | android.useAndroidX=true
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k0shk0sh/FastHub/fb7053da2079b624d6129ef81370a9d5774bcb9a/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Dec 25 06:39:30 CET 2019
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip
7 | android.enableD8=true
8 |
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------