Merge branch 'dev' of https://github.com/h4h13/RetroMusicPlayer into dev
Conflicts: README.md app/build.gradle app/src/main/java/code/name/monkey/retromusic/activities/PurchaseActivity.kt app/src/main/java/code/name/monkey/retromusic/activities/SupportDevelopmentActivity.kt app/src/main/java/code/name/monkey/retromusic/fragments/player/lockscreen/LockScreenPlayerControlsFragment.kt app/src/main/java/code/name/monkey/retromusic/interfaces/CabHolder.kt app/src/main/java/code/name/monkey/retromusic/interfaces/MainActivityFragmentCallbacks.kt app/src/main/java/code/name/monkey/retromusic/interfaces/MusicServiceEventListener.kt app/src/main/java/code/name/monkey/retromusic/interfaces/PaletteColorHolder.kt app/src/main/java/code/name/monkey/retromusic/util/AppRater.kt app/src/main/java/io/github/muntashirakon/music/App.kt app/src/main/java/io/github/muntashirakon/music/Constants.kt app/src/main/java/io/github/muntashirakon/music/HomeSection.kt app/src/main/java/io/github/muntashirakon/music/MainModule.kt app/src/main/java/io/github/muntashirakon/music/activities/DriveModeActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/LicenseActivity.java app/src/main/java/io/github/muntashirakon/music/activities/LockScreenActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/LyricsActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/MainActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/PermissionActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/PlayingQueueActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/SettingsActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/ShareInstagramStory.kt app/src/main/java/io/github/muntashirakon/music/activities/UserInfoActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/WhatsNewActivity.java app/src/main/java/io/github/muntashirakon/music/activities/base/AbsBaseActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/base/AbsMusicServiceActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/base/AbsSlidingMusicPanelActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/base/AbsThemeActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/bugreport/BugReportActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/bugreport/model/DeviceInfo.java app/src/main/java/io/github/muntashirakon/music/activities/bugreport/model/Report.java app/src/main/java/io/github/muntashirakon/music/activities/saf/SAFGuideActivity.java app/src/main/java/io/github/muntashirakon/music/activities/tageditor/AbsTagEditorActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/tageditor/AlbumTagEditorActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/tageditor/SongTagEditorActivity.kt app/src/main/java/io/github/muntashirakon/music/activities/tageditor/WriteTagsAsyncTask.java app/src/main/java/io/github/muntashirakon/music/adapter/CategoryInfoAdapter.java app/src/main/java/io/github/muntashirakon/music/adapter/ContributorAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/GenreAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/HomeAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/SearchAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/SongFileAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/TranslatorsAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/album/AlbumAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/album/AlbumCoverPagerAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/album/HorizontalAlbumAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/artist/ArtistAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/base/AbsMultiSelectAdapter.java app/src/main/java/io/github/muntashirakon/music/adapter/base/MediaEntryViewHolder.java app/src/main/java/io/github/muntashirakon/music/adapter/playlist/LegacyPlaylistAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/playlist/PlaylistAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/song/AbsOffsetSongAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/song/OrderablePlaylistSongAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/song/PlayingQueueAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/song/PlaylistSongAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/song/ShuffleButtonSongAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/song/SimpleSongAdapter.kt app/src/main/java/io/github/muntashirakon/music/adapter/song/SongAdapter.kt app/src/main/java/io/github/muntashirakon/music/appshortcuts/AppShortcutIconGenerator.kt app/src/main/java/io/github/muntashirakon/music/appshortcuts/AppShortcutLauncherActivity.kt app/src/main/java/io/github/muntashirakon/music/appshortcuts/DynamicShortcutManager.kt app/src/main/java/io/github/muntashirakon/music/appshortcuts/shortcuttype/BaseShortcutType.kt app/src/main/java/io/github/muntashirakon/music/appshortcuts/shortcuttype/LastAddedShortcutType.kt app/src/main/java/io/github/muntashirakon/music/appshortcuts/shortcuttype/ShuffleAllShortcutType.kt app/src/main/java/io/github/muntashirakon/music/appshortcuts/shortcuttype/TopTracksShortcutType.kt app/src/main/java/io/github/muntashirakon/music/appwidgets/AppWidgetBig.kt app/src/main/java/io/github/muntashirakon/music/appwidgets/AppWidgetCard.kt app/src/main/java/io/github/muntashirakon/music/appwidgets/AppWidgetClassic.kt app/src/main/java/io/github/muntashirakon/music/appwidgets/AppWidgetSmall.kt app/src/main/java/io/github/muntashirakon/music/appwidgets/AppWidgetText.kt app/src/main/java/io/github/muntashirakon/music/appwidgets/BootReceiver.kt app/src/main/java/io/github/muntashirakon/music/appwidgets/base/BaseAppWidget.kt app/src/main/java/io/github/muntashirakon/music/db/BlackListStoreDao.kt app/src/main/java/io/github/muntashirakon/music/db/BlackListStoreEntity.kt app/src/main/java/io/github/muntashirakon/music/db/HistoryDao.kt app/src/main/java/io/github/muntashirakon/music/db/HistoryEntity.kt app/src/main/java/io/github/muntashirakon/music/db/LyricsDao.kt app/src/main/java/io/github/muntashirakon/music/db/LyricsEntity.kt app/src/main/java/io/github/muntashirakon/music/db/PlayCountDao.kt app/src/main/java/io/github/muntashirakon/music/db/PlayCountEntity.kt app/src/main/java/io/github/muntashirakon/music/db/PlaylistDao.kt app/src/main/java/io/github/muntashirakon/music/db/PlaylistEntity.kt app/src/main/java/io/github/muntashirakon/music/db/PlaylistWithSongs.kt app/src/main/java/io/github/muntashirakon/music/db/RetroDatabase.kt app/src/main/java/io/github/muntashirakon/music/db/SongEntity.kt app/src/main/java/io/github/muntashirakon/music/db/SongExtension.kt app/src/main/java/io/github/muntashirakon/music/dialogs/AddToPlaylistDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/BlacklistFolderChooserDialog.java app/src/main/java/io/github/muntashirakon/music/dialogs/CreatePlaylistDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/DeletePlaylistDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/DeleteSongsDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/ImportPlaylistDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/LyricsDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/RemoveSongFromPlaylistDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/RenamePlaylistDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/SavePlaylistDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/SleepTimerDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/SongDetailDialog.kt app/src/main/java/io/github/muntashirakon/music/dialogs/SongShareDialog.kt app/src/main/java/io/github/muntashirakon/music/extensions/ActivityEx.kt app/src/main/java/io/github/muntashirakon/music/extensions/ColorExt.kt app/src/main/java/io/github/muntashirakon/music/extensions/CursorExtensions.kt app/src/main/java/io/github/muntashirakon/music/extensions/DialogExtension.kt app/src/main/java/io/github/muntashirakon/music/extensions/DimenExtension.kt app/src/main/java/io/github/muntashirakon/music/extensions/DrawableExt.kt app/src/main/java/io/github/muntashirakon/music/extensions/FragmentExt.kt app/src/main/java/io/github/muntashirakon/music/extensions/NavigationExtensions.kt app/src/main/java/io/github/muntashirakon/music/extensions/PaletteEX.kt app/src/main/java/io/github/muntashirakon/music/extensions/Preference.kt app/src/main/java/io/github/muntashirakon/music/extensions/ViewExtensions.kt app/src/main/java/io/github/muntashirakon/music/fragments/AlbumCoverStyle.kt app/src/main/java/io/github/muntashirakon/music/fragments/CoroutineViewModel.kt app/src/main/java/io/github/muntashirakon/music/fragments/DetailListFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/LibraryViewModel.kt app/src/main/java/io/github/muntashirakon/music/fragments/MiniPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/NowPlayingScreen.kt app/src/main/java/io/github/muntashirakon/music/fragments/VolumeFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/about/AboutFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/albums/AlbumDetailsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/albums/AlbumDetailsViewModel.kt app/src/main/java/io/github/muntashirakon/music/fragments/albums/AlbumsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/artists/ArtistDetailsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/artists/ArtistDetailsViewModel.kt app/src/main/java/io/github/muntashirakon/music/fragments/artists/ArtistsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/base/AbsMainActivityFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/base/AbsMusicServiceFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/base/AbsPlayerControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/base/AbsPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/base/AbsRecyclerViewCustomGridSizeFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/base/AbsRecyclerViewFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/folder/FoldersFragment.java app/src/main/java/io/github/muntashirakon/music/fragments/genres/GenreDetailsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/genres/GenreDetailsViewModel.kt app/src/main/java/io/github/muntashirakon/music/fragments/genres/GenresFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/home/HomeFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/library/LibraryFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/NowPlayingPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/PlayerAlbumCoverFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/adaptive/AdaptiveFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/adaptive/AdaptivePlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/blur/BlurPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/blur/BlurPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/card/CardFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/card/CardPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/cardblur/CardBlurFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/cardblur/CardBlurPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/circle/CirclePlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/classic/ClassicPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/color/ColorFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/color/ColorPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/fit/FitFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/fit/FitPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/flat/FlatPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/flat/FlatPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/full/FullPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/full/FullPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/gradient/GradientPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/home/HomePlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/lockscreen/LockScreenControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/lockscreen/LockScreenPlayerControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/material/MaterialControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/material/MaterialFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/normal/PlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/normal/PlayerPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/peak/PeakPlayerControlFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/peak/PeakPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/plain/PlainPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/plain/PlainPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/simple/SimplePlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/simple/SimplePlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/tiny/TinyPlaybackControlsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/player/tiny/TinyPlayerFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/playlists/PlaylistDetailsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/playlists/PlaylistDetailsViewModel.kt app/src/main/java/io/github/muntashirakon/music/fragments/playlists/PlaylistsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/search/SearchFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/search/SearchViewModel.kt app/src/main/java/io/github/muntashirakon/music/fragments/settings/AbsSettingsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/settings/AudioSettings.kt app/src/main/java/io/github/muntashirakon/music/fragments/settings/ImageSettingFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/settings/MainSettingsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/settings/NotificationSettingsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/settings/NowPlayingSettingsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/settings/OtherSettingsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/settings/PersonalizeSettingsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/settings/ThemeSettingsFragment.kt app/src/main/java/io/github/muntashirakon/music/fragments/songs/SongsFragment.kt app/src/main/java/io/github/muntashirakon/music/glide/AlbumGlideRequest.java app/src/main/java/io/github/muntashirakon/music/glide/ArtistGlideRequest.java app/src/main/java/io/github/muntashirakon/music/glide/BlurTransformation.kt app/src/main/java/io/github/muntashirakon/music/glide/ProfileBannerGlideRequest.java app/src/main/java/io/github/muntashirakon/music/glide/RetroMusicColoredTarget.kt app/src/main/java/io/github/muntashirakon/music/glide/RetroMusicGlideModule.kt app/src/main/java/io/github/muntashirakon/music/glide/SingleColorTarget.kt app/src/main/java/io/github/muntashirakon/music/glide/SongGlideRequest.java app/src/main/java/io/github/muntashirakon/music/glide/UserProfileGlideRequest.java app/src/main/java/io/github/muntashirakon/music/glide/artistimage/ArtistImageLoader.kt app/src/main/java/io/github/muntashirakon/music/glide/palette/BitmapPaletteTranscoder.java app/src/main/java/io/github/muntashirakon/music/helper/HorizontalAdapterHelper.kt app/src/main/java/io/github/muntashirakon/music/helper/MusicPlayerRemote.kt app/src/main/java/io/github/muntashirakon/music/helper/MusicProgressViewUpdateHelper.kt app/src/main/java/io/github/muntashirakon/music/helper/PlayPauseButtonOnClickHandler.kt app/src/main/java/io/github/muntashirakon/music/helper/SearchQueryHelper.kt app/src/main/java/io/github/muntashirakon/music/helper/ShuffleHelper.kt app/src/main/java/io/github/muntashirakon/music/helper/StopWatch.kt app/src/main/java/io/github/muntashirakon/music/helper/menu/GenreMenuHelper.kt app/src/main/java/io/github/muntashirakon/music/helper/menu/PlaylistMenuHelper.kt app/src/main/java/io/github/muntashirakon/music/helper/menu/SongMenuHelper.kt app/src/main/java/io/github/muntashirakon/music/helper/menu/SongsMenuHelper.kt app/src/main/java/io/github/muntashirakon/music/interfaces/CabHolder.kt app/src/main/java/io/github/muntashirakon/music/interfaces/Callbacks.kt app/src/main/java/io/github/muntashirakon/music/interfaces/ICabHolder.kt app/src/main/java/io/github/muntashirakon/music/interfaces/IMainActivityFragmentCallbacks.kt app/src/main/java/io/github/muntashirakon/music/interfaces/IMusicServiceEventListener.kt app/src/main/java/io/github/muntashirakon/music/interfaces/IPaletteColorHolder.kt app/src/main/java/io/github/muntashirakon/music/interfaces/MainActivityFragmentCallbacks.kt app/src/main/java/io/github/muntashirakon/music/interfaces/MusicServiceEventListener.kt app/src/main/java/io/github/muntashirakon/music/interfaces/PaletteColorHolder.kt app/src/main/java/io/github/muntashirakon/music/lyrics/LrcView.java app/src/main/java/io/github/muntashirakon/music/model/Artist.kt app/src/main/java/io/github/muntashirakon/music/model/lyrics/Lyrics.java app/src/main/java/io/github/muntashirakon/music/providers/BlacklistStore.java app/src/main/java/io/github/muntashirakon/music/providers/MusicPlaybackQueueStore.java app/src/main/java/io/github/muntashirakon/music/repository/GenreRepository.kt app/src/main/java/io/github/muntashirakon/music/repository/PlaylistSongsLoader.kt app/src/main/java/io/github/muntashirakon/music/repository/Repository.kt app/src/main/java/io/github/muntashirakon/music/repository/RoomRepository.kt app/src/main/java/io/github/muntashirakon/music/repository/SongRepository.kt app/src/main/java/io/github/muntashirakon/music/service/MultiPlayer.java app/src/main/java/io/github/muntashirakon/music/service/MusicService.java app/src/main/java/io/github/muntashirakon/music/service/PlaybackHandler.java app/src/main/java/io/github/muntashirakon/music/util/FileUtil.java app/src/main/java/io/github/muntashirakon/music/util/NavigationUtil.java app/src/main/java/io/github/muntashirakon/music/util/PlaylistsUtil.java app/src/main/java/io/github/muntashirakon/music/util/PreferenceUtil.kt app/src/main/java/io/github/muntashirakon/music/util/RetroUtil.java app/src/main/java/io/github/muntashirakon/music/util/SAFUtil.java app/src/main/java/io/github/muntashirakon/music/util/color/MediaNotificationProcessor.java app/src/main/java/io/github/muntashirakon/music/util/color/NotificationColorUtil.java app/src/main/java/io/github/muntashirakon/music/views/BaselineGridTextView.java app/src/main/java/io/github/muntashirakon/music/views/BreadCrumbLayout.java app/src/main/java/io/github/muntashirakon/music/views/CircularImageView.java app/src/main/java/io/github/muntashirakon/music/views/ContributorsView.java app/src/main/java/io/github/muntashirakon/music/views/NetworkImageView.java app/src/main/java/io/github/muntashirakon/music/views/SeekArc.java app/src/main/res/layout-land/fragment_home.xml app/src/main/res/layout-xlarge-land/fragment_blur.xml app/src/main/res/layout/activity_lock_screen.xml app/src/main/res/layout/activity_user_info.xml app/src/main/res/layout/fragment_banner_home.xml app/src/main/res/layout/fragment_classic_player.xml app/src/main/res/layout/fragment_folder.xml app/src/main/res/layout/fragment_home.xml app/src/main/res/layout/item_image.xml app/src/main/res/layout/sliding_music_panel_layout.xml app/src/main/res/navigation/now_playing.xml
This commit is contained in:
commit
3c0fc790d1
442 changed files with 18453 additions and 14559 deletions
|
@ -1,20 +1,21 @@
|
|||
/*
|
||||
* Copyright (c) 2019 Hemanth Savarala.
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it under
|
||||
* the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation either version 3 of the License, or (at your option) any later version.
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import android.app.Activity
|
||||
import androidx.annotation.DimenRes
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper
|
||||
import com.google.android.material.appbar.MaterialToolbar
|
||||
|
@ -33,4 +34,8 @@ inline fun <reified T : Any> Activity.extra(key: String, default: T? = null) = l
|
|||
inline fun <reified T : Any> Activity.extraNotNull(key: String, default: T? = null) = lazy {
|
||||
val value = intent?.extras?.get(key)
|
||||
requireNotNull(if (value is T) value else default) { key }
|
||||
}
|
||||
|
||||
fun Activity.dip(@DimenRes id: Int): Int {
|
||||
return resources.getDimensionPixelSize(id)
|
||||
}
|
|
@ -1,17 +1,17 @@
|
|||
/*
|
||||
* Copyright (c) 2019 Hemanth Savarala.
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it under
|
||||
* the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation either version 3 of the License, or (at your option) any later version.
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import android.app.Dialog
|
||||
|
@ -154,6 +154,10 @@ fun MaterialButton.applyColor(color: Int) {
|
|||
iconTint = textColorColorStateList
|
||||
}
|
||||
|
||||
fun MaterialButton.accentColor(){
|
||||
this.applyColor(ThemeStore.accentColor(context))
|
||||
}
|
||||
|
||||
fun MaterialButton.applyOutlineColor(color: Int) {
|
||||
val textColorColorStateList = ColorStateList.valueOf(color)
|
||||
setTextColor(textColorColorStateList)
|
||||
|
@ -180,7 +184,6 @@ fun ProgressIndicator.applyColor(color: Int) {
|
|||
}
|
||||
|
||||
fun TextInputEditText.accentColor() {
|
||||
|
||||
}
|
||||
|
||||
fun AppCompatImageView.accentColor(): Int {
|
||||
|
@ -203,4 +206,3 @@ fun Drawable.tint(context: Context, @ColorRes color: Int): Drawable {
|
|||
fun Context.getColorCompat(@ColorRes colorRes: Int): Int {
|
||||
return ContextCompat.getColor(this, colorRes)
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,17 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import android.database.Cursor
|
||||
|
@ -34,4 +48,4 @@ internal fun Cursor.getStringOrNull(columnName: String): String? {
|
|||
} catch (ex: Throwable) {
|
||||
throw IllegalStateException("invalid column $columnName", ex)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,17 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import androidx.appcompat.app.AlertDialog
|
||||
|
@ -19,4 +33,4 @@ fun AlertDialog.colorButtons(): AlertDialog {
|
|||
getButton(AlertDialog.BUTTON_NEUTRAL).accentTextColor()
|
||||
}
|
||||
return this
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,17 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import android.app.Activity
|
||||
|
@ -17,4 +31,4 @@ fun Activity.dipToPix(dpInFloat: Float): Float {
|
|||
fun Fragment.dipToPix(dpInFloat: Float): Float {
|
||||
val scale = resources.displayMetrics.density
|
||||
return dpInFloat * scale + 0.5f
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
/*
|
||||
* Copyright (c) 2019 Hemanth Savarala.
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it under
|
||||
* the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation either version 3 of the License, or (at your option) any later version.
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import android.content.Context
|
||||
|
@ -59,4 +59,4 @@ fun getAdaptiveIconDrawable(context: Context): Drawable {
|
|||
} else {
|
||||
ContextCompat.getDrawable(context, R.drawable.color_circle_gradient)!!
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,17 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import android.content.Context
|
||||
|
@ -27,7 +41,6 @@ fun Context.getIntRes(@IntegerRes int: Int): Int {
|
|||
val Context.generalThemeValue
|
||||
get() = PreferenceUtil.getGeneralThemeValue(isSystemDarkModeEnabled())
|
||||
|
||||
|
||||
fun Context.isSystemDarkModeEnabled(): Boolean {
|
||||
val isBatterySaverEnabled =
|
||||
(getSystemService(Context.POWER_SERVICE) as PowerManager?)?.isPowerSaveMode ?: false
|
||||
|
@ -36,7 +49,6 @@ fun Context.isSystemDarkModeEnabled(): Boolean {
|
|||
return isBatterySaverEnabled or isDarkModeEnabled
|
||||
}
|
||||
|
||||
|
||||
inline fun <reified T : Any> Fragment.extra(key: String, default: T? = null) = lazy {
|
||||
val value = arguments?.get(key)
|
||||
if (value is T) value else default
|
||||
|
@ -84,4 +96,4 @@ fun Context.getDrawableCompat(@DrawableRes drawableRes: Int): Drawable {
|
|||
|
||||
fun Fragment.getDrawableCompat(@DrawableRes drawableRes: Int): Drawable {
|
||||
return AppCompatResources.getDrawable(requireContext(), drawableRes)!!
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,17 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import androidx.annotation.IdRes
|
||||
|
@ -22,4 +36,4 @@ fun Fragment.findActivityNavController(@IdRes id: Int): NavController {
|
|||
fun AppCompatActivity.findNavController(@IdRes id: Int): NavController {
|
||||
val fragment = supportFragmentManager.findFragmentById(id) as NavHostFragment
|
||||
return fragment.navController
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,10 +1,23 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import androidx.annotation.ColorInt
|
||||
import androidx.core.graphics.ColorUtils
|
||||
import androidx.palette.graphics.Palette
|
||||
|
||||
|
||||
fun getSuitableColorFor(palette: Palette, i: Int, i2: Int): Int {
|
||||
val dominantSwatch = palette.dominantSwatch
|
||||
if (dominantSwatch != null) {
|
||||
|
|
|
@ -1,3 +1,17 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import android.content.SharedPreferences
|
||||
|
|
|
@ -1,26 +1,29 @@
|
|||
/*
|
||||
* Copyright (c) 2019 Hemanth Savarala.
|
||||
* Copyright (c) 2020 Hemanth Savarla.
|
||||
*
|
||||
* Licensed under the GNU General Public License v3
|
||||
*
|
||||
* This is free software: you can redistribute it and/or modify it under
|
||||
* the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation either version 3 of the License, or (at your option) any later version.
|
||||
* This is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
|
||||
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
package io.github.muntashirakon.music.extensions
|
||||
|
||||
import android.animation.ObjectAnimator
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.EditText
|
||||
import androidx.annotation.LayoutRes
|
||||
import androidx.core.animation.doOnEnd
|
||||
import androidx.core.animation.doOnStart
|
||||
import code.name.monkey.appthemehelper.ThemeStore
|
||||
import code.name.monkey.appthemehelper.util.TintHelper
|
||||
import com.google.android.material.bottomsheet.BottomSheetBehavior
|
||||
|
||||
@Suppress("UNCHECKED_CAST")
|
||||
fun <T : View> ViewGroup.inflate(@LayoutRes layout: Int): T {
|
||||
|
@ -45,3 +48,29 @@ fun EditText.appHandleColor(): EditText {
|
|||
TintHelper.colorHandles(this, ThemeStore.accentColor(context))
|
||||
return this
|
||||
}
|
||||
|
||||
fun View.translateYAnimate(value: Float) {
|
||||
ObjectAnimator.ofFloat(this, "translationY", value)
|
||||
.apply {
|
||||
duration = 300
|
||||
doOnStart {
|
||||
if (value == 0f) {
|
||||
show()
|
||||
}
|
||||
}
|
||||
doOnEnd {
|
||||
if (value != 0f) {
|
||||
hide()
|
||||
}
|
||||
}
|
||||
start()
|
||||
}
|
||||
}
|
||||
|
||||
fun BottomSheetBehavior<*>.peekHeightAnimate(value: Int) {
|
||||
ObjectAnimator.ofInt(this, "peekHeight", value)
|
||||
.apply {
|
||||
duration = 300
|
||||
start()
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue