From a1dd9d8d27079828840b830d8f3e133f8e8f227a Mon Sep 17 00:00:00 2001 From: dwi336 Date: Sun, 11 Mar 2018 22:12:31 +0100 Subject: [PATCH] Merged with lineage-15.1 branch on 10.03.2018 --- AndroidManifest.xml | 29 +-- README.md | 3 +- build.gradle | 18 +- project.properties | 12 +- res/layout-v21/activity_base.xml | 12 +- res/layout-v21/artist_detail_album.xml | 2 +- res/layout-v21/bottom_action_bar.xml | 2 +- .../fragment_music_browser_phone.xml | 2 +- res/layout-v21/grid_items_normal.xml | 2 +- res/layout-v21/header_bar.xml | 4 +- res/layout/activity_base.xml | 12 +- res/layout/album_art_fragment.xml | 2 +- res/layout/album_detail_song.xml | 2 +- res/layout/artist_detail_album.xml | 2 +- res/layout/artist_detail_song.xml | 2 +- res/layout/blur_scrim_image.xml | 4 +- res/layout/bottom_action_bar.xml | 2 +- res/layout/fragment_music_browser_phone.xml | 2 +- res/layout/grid_items_normal.xml | 2 +- res/layout/header_bar.xml | 4 +- res/layout/list_base.xml | 2 +- res/layout/list_base_padding.xml | 2 +- res/layout/list_item_common.xml | 2 +- res/layout/list_item_queue.xml | 2 +- res/layout/list_item_search_history.xml | 2 +- res/layout/list_item_simple.xml | 2 +- res/layout/list_item_top_tracks.xml | 2 +- res/layout/loading_empty_container.xml | 4 +- res/layout/main_album_flow.xml | 8 +- res/layout/main_playback_controls.xml | 8 +- res/layout/no_results_message.xml | 4 +- res/layout/play_pause_progress_button.xml | 6 +- res/layout/playlist_detail_header.xml | 2 +- res/layout/square_image_view.xml | 6 +- res/mipmap-anydpi-v26/ic_launcher.xml | 20 ++ res/mipmap-hdpi-v26/ic_background.png | Bin 0 -> 2354 bytes res/mipmap-hdpi-v26/ic_foreground.png | Bin 0 -> 14514 bytes ...ic_launcher_eleven.png => ic_launcher.png} | Bin res/mipmap-mdpi-v26/ic_background.png | Bin 0 -> 1609 bytes res/mipmap-mdpi-v26/ic_foreground.png | Bin 0 -> 7458 bytes ...ic_launcher_eleven.png => ic_launcher.png} | Bin res/mipmap-xhdpi-v26/ic_background.png | Bin 0 -> 3181 bytes res/mipmap-xhdpi-v26/ic_foreground.png | Bin 0 -> 23342 bytes ...ic_launcher_eleven.png => ic_launcher.png} | Bin res/mipmap-xxhdpi-v26/ic_background.png | Bin 0 -> 4670 bytes res/mipmap-xxhdpi-v26/ic_foreground.png | Bin 0 -> 46073 bytes ...ic_launcher_eleven.png => ic_launcher.png} | Bin res/mipmap-xxxhdpi-v26/ic_background.png | Bin 0 -> 6238 bytes res/mipmap-xxxhdpi-v26/ic_foreground.png | Bin 0 -> 75562 bytes ...ic_launcher_eleven.png => ic_launcher.png} | Bin res/{values-az-rAZ => values-az}/plurals.xml | 0 res/{values-az-rAZ => values-az}/strings.xml | 0 .../plurals.xml | 0 .../strings.xml | 0 res/values-be-rBY/plurals.xml | 86 -------- res/{values-bs-rBA => values-be}/plurals.xml | 0 res/{values-be-rBY => values-be}/strings.xml | 0 res/{values-csb-rPL => values-bn}/plurals.xml | 0 res/{values-bs-rBA => values-bn}/strings.xml | 0 res/{values-fil-rPH => values-bs}/plurals.xml | 0 res/{values-csb-rPL => values-bs}/strings.xml | 0 res/values-cs/plurals.xml | 55 ----- .../plurals.xml | 0 .../strings.xml | 0 res/values-cy/strings.xml | 3 + .../plurals.xml | 0 .../strings.xml | 0 res/{values-et-rEE => values-et}/plurals.xml | 0 res/{values-et-rEE => values-et}/strings.xml | 0 res/{values-eu-rES => values-eu}/plurals.xml | 0 res/{values-eu-rES => values-eu}/strings.xml | 0 res/values-fi/strings.xml | 2 +- res/{values-hy-rAM => values-fil}/plurals.xml | 0 res/{values-gd-rGB => values-fil}/strings.xml | 0 res/{values-is-rIS => values-frp}/plurals.xml | 0 res/{values-hy-rAM => values-frp}/strings.xml | 0 res/{values-ka-rGE => values-gd}/plurals.xml | 0 res/{values-is-rIS => values-gd}/strings.xml | 0 res/{values-gl-rES => values-gl}/plurals.xml | 0 res/{values-gl-rES => values-gl}/strings.xml | 0 res/{values-gu-rIN => values-gu}/plurals.xml | 0 res/{values-gu-rIN => values-gu}/strings.xml | 0 res/{values-kk-rKZ => values-hy}/plurals.xml | 0 res/{values-ka-rGE => values-hy}/strings.xml | 0 res/{values-km-rKH => values-is}/plurals.xml | 0 res/{values-kk-rKZ => values-is}/strings.xml | 0 res/{values-ky-rKG => values-ka}/plurals.xml | 0 res/{values-km-rKH => values-ka}/strings.xml | 0 res/{values-lo-rLA => values-kk}/plurals.xml | 0 res/{values-ky-rKG => values-kk}/strings.xml | 0 res/{values-mk-rMK => values-km}/plurals.xml | 0 res/{values-lo-rLA => values-km}/strings.xml | 0 res/{values-kn-rIN => values-kn}/plurals.xml | 0 res/{values-kn-rIN => values-kn}/strings.xml | 0 res/values-ku/strings.xml | 1 - res/{values-mn-rMN => values-ky}/plurals.xml | 0 res/{values-mk-rMK => values-ky}/strings.xml | 0 res/{values-ms-rMY => values-lo}/plurals.xml | 0 res/{values-mn-rMN => values-lo}/strings.xml | 0 res/values-lt/plurals.xml | 55 ----- res/{values-my-rMM => values-mk}/plurals.xml | 0 res/{values-ms-rMY => values-mk}/strings.xml | 0 res/{values-ml-rIN => values-ml}/plurals.xml | 0 res/{values-ml-rIN => values-ml}/strings.xml | 0 res/{values-ne-rNP => values-mn}/plurals.xml | 0 res/{values-my-rMM => values-mn}/strings.xml | 0 res/{values-mr-rIN => values-mr}/plurals.xml | 0 res/{values-mr-rIN => values-mr}/strings.xml | 0 res/{values-oc-rFR => values-ms}/plurals.xml | 0 res/{values-ne-rNP => values-ms}/strings.xml | 0 res/{values-pa-rIN => values-my}/plurals.xml | 0 res/{values-oc-rFR => values-my}/strings.xml | 0 res/{values-si-rLK => values-ne}/plurals.xml | 0 res/{values-pa-rIN => values-ne}/strings.xml | 0 res/{values-sr-rCS => values-oc}/plurals.xml | 0 res/{values-si-rLK => values-oc}/strings.xml | 0 res/{values-ur-rPK => values-pa}/plurals.xml | 0 res/{values-sr-rCS => values-pa}/strings.xml | 0 res/values-pl/plurals.xml | 55 ----- res/values-ru/plurals.xml | 55 ----- res/{values-uz-rUZ => values-si}/plurals.xml | 0 res/{values-ur-rPK => values-si}/strings.xml | 0 res/values-sk/plurals.xml | 11 + res/values-sl/strings.xml | 4 +- res/{values-sq-rAL => values-sq}/plurals.xml | 0 res/{values-sq-rAL => values-sq}/strings.xml | 0 res/values-ta-rIN/strings.xml | 189 ------------------ res/{values-ta-rIN => values-ta}/plurals.xml | 0 res/values-ta/strings.xml | 172 +++++++++++++++- res/{values-te-rIN => values-te}/plurals.xml | 0 res/{values-te-rIN => values-te}/strings.xml | 0 res/{values-vec-rIT => values-tl}/plurals.xml | 0 res/{values-uz-rUZ => values-tl}/strings.xml | 0 res/values-ug/plurals.xml | 33 --- res/values-uk/plurals.xml | 55 ----- res/values-ur/plurals.xml | 31 +++ res/{values-vec-rIT => values-ur}/strings.xml | 0 res/values-uz/plurals.xml | 31 +++ res/values-uz/strings.xml | 34 ++++ res/values-vec/plurals.xml | 31 +++ res/values-vec/strings.xml | 34 ++++ .../eleven/service/MusicPlaybackTrack.aidl | 5 - .../lineageos}/eleven/IElevenService.aidl | 4 +- .../eleven/service/MusicPlaybackTrack.aidl | 5 + .../lineageos}/eleven/Config.java | 2 +- .../lineageos}/eleven/ElevenApplication.java | 4 +- .../eleven/MediaButtonIntentReceiver.java | 2 +- .../eleven/MusicPlaybackService.java | 105 +++++----- .../lineageos}/eleven/MusicStateListener.java | 2 +- .../eleven/adapters/AlbumAdapter.java | 18 +- .../eleven/adapters/AlbumArtPagerAdapter.java | 24 +-- .../adapters/AlbumDetailSongAdapter.java | 16 +- .../eleven/adapters/ArtistAdapter.java | 26 +-- .../adapters/ArtistDetailAlbumAdapter.java | 22 +- .../adapters/ArtistDetailSongAdapter.java | 12 +- .../eleven/adapters/DetailSongAdapter.java | 22 +- .../eleven/adapters/PagerAdapter.java | 14 +- .../eleven/adapters/PlaylistAdapter.java | 20 +- .../eleven/adapters/ProfileSongAdapter.java | 8 +- .../eleven/adapters/SongAdapter.java | 32 +-- .../eleven/adapters/SummarySearchAdapter.java | 22 +- .../eleven/appwidgets/AppWidgetBase.java | 4 +- .../eleven/appwidgets/AppWidgetLarge.java | 19 +- .../appwidgets/AppWidgetLargeAlternate.java | 31 +-- .../eleven/appwidgets/AppWidgetSmall.java | 23 ++- .../eleven/cache/BitmapWorkerTask.java | 4 +- .../eleven/cache/BlurBitmapWorkerTask.java | 8 +- .../lineageos}/eleven/cache/DiskLruCache.java | 2 +- .../eleven/cache/ICacheListener.java | 2 +- .../lineageos}/eleven/cache/ImageCache.java | 12 +- .../lineageos}/eleven/cache/ImageFetcher.java | 16 +- .../lineageos}/eleven/cache/ImageWorker.java | 24 +-- .../lineageos}/eleven/cache/LruCache.java | 2 +- .../eleven/cache/PlaylistWorkerTask.java | 14 +- .../eleven/cache/SimpleBitmapWorkerTask.java | 6 +- .../eleven/dragdrop/DragSortController.java | 2 +- .../eleven/dragdrop/DragSortListView.java | 4 +- .../dragdrop/SimpleFloatViewManager.java | 2 +- .../lineageos}/eleven/format/Capitalize.java | 2 +- .../eleven/format/PrefixHighlighter.java | 4 +- .../lineageos}/eleven/lastfm/Album.java | 4 +- .../lineageos}/eleven/lastfm/Artist.java | 4 +- .../lineageos}/eleven/lastfm/Caller.java | 8 +- .../lineageos}/eleven/lastfm/DomElement.java | 2 +- .../lineageos}/eleven/lastfm/Image.java | 2 +- .../lineageos}/eleven/lastfm/ImageHolder.java | 2 +- .../lineageos}/eleven/lastfm/ImageSize.java | 2 +- .../lineageos}/eleven/lastfm/ItemFactory.java | 4 +- .../eleven/lastfm/ItemFactoryBuilder.java | 2 +- .../eleven/lastfm/MapUtilities.java | 2 +- .../lineageos}/eleven/lastfm/MusicEntry.java | 2 +- .../eleven/lastfm/PaginatedResult.java | 2 +- .../eleven/lastfm/ResponseBuilder.java | 2 +- .../lineageos}/eleven/lastfm/Result.java | 2 +- .../eleven/lastfm/StringUtilities.java | 2 +- .../eleven/loaders/AlbumLoader.java | 18 +- .../eleven/loaders/AlbumSongLoader.java | 8 +- .../eleven/loaders/ArtistLoader.java | 18 +- .../eleven/loaders/AsyncHandler.java | 2 +- .../eleven/loaders/LastAddedLoader.java | 10 +- .../eleven/loaders/NowPlayingCursor.java | 6 +- .../eleven/loaders/PlaylistLoader.java | 10 +- .../eleven/loaders/PlaylistSongLoader.java | 6 +- .../eleven/loaders/QueueLoader.java | 6 +- .../eleven/loaders/SearchLoader.java | 6 +- .../lineageos}/eleven/loaders/SongLoader.java | 18 +- .../eleven/loaders/SortedCursor.java | 2 +- .../eleven/loaders/TopTracksLoader.java | 8 +- .../loaders/WrappedAsyncTaskLoader.java | 2 +- .../eleven/locale/AlphabeticIndexCompat.java | 2 +- .../eleven/locale/HanziToPinyin.java | 2 +- .../eleven/locale/LocaleChangeReceiver.java | 4 +- .../lineageos}/eleven/locale/LocaleSet.java | 2 +- .../eleven/locale/LocaleSetManager.java | 4 +- .../eleven/locale/LocaleUtility.java | 2 +- .../lineageos}/eleven/locale/LocaleUtils.java | 20 +- .../eleven/menu/BasePlaylistDialog.java | 6 +- .../lineageos}/eleven/menu/ConfirmDialog.java | 4 +- .../eleven/menu/CreateNewPlaylist.java | 8 +- .../lineageos}/eleven/menu/DeleteDialog.java | 14 +- .../eleven/menu/FragmentMenuItems.java | 4 +- .../eleven/menu/PhotoSelectionDialog.java | 13 +- .../eleven/menu/RenamePlaylist.java | 8 +- .../lineageos}/eleven/model/Album.java | 2 +- .../eleven/model/AlbumArtistDetails.java | 2 +- .../lineageos}/eleven/model/Artist.java | 2 +- .../lineageos}/eleven/model/Genre.java | 2 +- .../lineageos}/eleven/model/Playlist.java | 2 +- .../lineageos}/eleven/model/SearchResult.java | 4 +- .../lineageos}/eleven/model/Song.java | 2 +- .../eleven/provider/LocalizedStore.java | 12 +- .../lineageos}/eleven/provider/MusicDB.java | 2 +- .../eleven/provider/MusicPlaybackState.java | 8 +- .../eleven/provider/PlaylistArtworkStore.java | 4 +- .../eleven/provider/PropertiesStore.java | 2 +- .../eleven/provider/RecentStore.java | 2 +- .../eleven/provider/SearchHistory.java | 2 +- .../eleven/provider/SongPlayCount.java | 2 +- .../eleven/recycler/RecycleHolder.java | 6 +- .../eleven/sectionadapter/SectionAdapter.java | 12 +- .../eleven/sectionadapter/SectionCreator.java | 6 +- .../sectionadapter/SectionListContainer.java | 4 +- .../eleven/service/MusicPlaybackTrack.java | 4 +- .../slidinguppanel/SlidingUpPanelLayout.java | 4 +- .../eleven/slidinguppanel/ViewDragHelper.java | 2 +- .../lineageos}/eleven/ui/HeaderBar.java | 26 +-- .../lineageos}/eleven/ui/MusicHolder.java | 8 +- .../eleven/ui/activities/BaseActivity.java | 50 ++--- .../eleven/ui/activities/HomeActivity.java | 43 ++-- .../eleven/ui/activities/SearchActivity.java | 76 +++---- .../ui/activities/SettingsActivity.java | 25 ++- .../ui/activities/SlidingPanelActivity.java | 26 +-- .../preview/AudioPreviewActivity.java | 10 +- .../ui/activities/preview/PreviewSong.java | 2 +- .../ui/activities/preview/util/Logger.java | 2 +- .../ui/fragments/AlbumDetailFragment.java | 32 +-- .../eleven/ui/fragments/AlbumFragment.java | 40 ++-- .../ui/fragments/ArtistDetailFragment.java | 36 ++-- .../eleven/ui/fragments/ArtistFragment.java | 42 ++-- .../ui/fragments/AudioPlayerFragment.java | 56 +++--- .../eleven/ui/fragments/BaseFragment.java | 8 +- .../eleven/ui/fragments/DetailFragment.java | 6 +- .../ui/fragments/FadingBarFragment.java | 4 +- .../eleven/ui/fragments/IChildFragment.java | 4 +- .../eleven/ui/fragments/ISetupActionBar.java | 2 +- .../ui/fragments/PlaylistDetailFragment.java | 46 ++--- .../eleven/ui/fragments/PlaylistFragment.java | 32 +-- .../ui/fragments/PreferenceFragment.java | 9 +- .../eleven/ui/fragments/QueueFragment.java | 48 ++--- .../eleven/ui/fragments/RecentFragment.java | 28 +-- .../eleven/ui/fragments/SongFragment.java | 20 +- .../fragments/ViewOutlineProviderCompat.java | 2 +- .../fragments/phone/MusicBrowserFragment.java | 2 +- .../phone/MusicBrowserPhoneFragment.java | 30 ++- .../fragments/profile/BasicSongFragment.java | 34 ++-- .../fragments/profile/LastAddedFragment.java | 24 +-- .../profile/SmartPlaylistFragment.java | 24 +-- .../fragments/profile/TopTracksFragment.java | 26 +-- .../eleven/utils/AlbumPopupMenuHelper.java | 14 +- .../eleven/utils/ArtistPopupMenuHelper.java | 12 +- .../lineageos}/eleven/utils/BitmapUtils.java | 5 +- .../eleven/utils/BitmapWithColors.java | 2 +- .../eleven/utils/ContextMenuBuilder.java | 2 +- .../eleven/utils/CustomTypefaceSpan.java | 2 +- .../lineageos/eleven/utils/ElevenUtils.java} | 12 +- .../lineageos}/eleven/utils/GenreFetcher.java | 2 +- .../lineageos}/eleven/utils/ImageUtils.java | 10 +- .../eleven/utils/ListMenuPresenterHelper.java | 2 +- .../lineageos}/eleven/utils/Lists.java | 2 +- .../eleven/utils/MenuBuilderHelper.java | 2 +- .../eleven/utils/MenuDialogHelper.java | 4 +- .../lineageos}/eleven/utils/MusicUtils.java | 76 ++++--- .../lineageos}/eleven/utils/NavUtils.java | 18 +- .../eleven/utils/PlaylistPopupMenuHelper.java | 10 +- .../eleven/utils/PopupMenuHelper.java | 22 +- .../eleven/utils/PreferenceUtils.java | 28 +-- .../eleven/utils/SectionCreatorUtils.java | 14 +- .../eleven/utils/ShakeDetector.java | 2 +- .../eleven/utils/SongPopupMenuHelper.java | 8 +- .../lineageos}/eleven/utils/SortOrder.java | 2 +- .../lineageos}/eleven/utils/SrtManager.java | 2 +- .../lineageos}/eleven/utils/SrtParser.java | 2 +- .../eleven/widgets/AlphaPatternDrawable.java | 2 +- .../widgets/AlphaTouchInterceptorOverlay.java | 2 +- .../eleven/widgets/AudioActivityButton.java | 4 +- .../eleven/widgets/AudioButton.java | 8 +- .../eleven/widgets/BlurScrimImage.java | 8 +- .../eleven/widgets/BrowseButton.java | 4 +- .../eleven/widgets/ColorPanelView.java | 2 +- .../eleven/widgets/ColorPickerView.java | 2 +- .../widgets/FrameLayoutWithOverlay.java | 2 +- .../eleven/widgets/IPopupMenuCallback.java | 2 +- .../widgets/LayoutSuppressingImageView.java | 2 +- .../eleven/widgets/LetterTileDrawable.java | 14 +- .../eleven/widgets/LoadingEmptyContainer.java | 6 +- .../eleven/widgets/NoResultsContainer.java | 4 +- .../eleven/widgets/PlayPauseButton.java | 10 +- .../widgets/PlayPauseProgressButton.java | 6 +- .../eleven/widgets/PopupMenuButton.java | 4 +- .../eleven/widgets/QueueButton.java | 4 +- .../eleven/widgets/RepeatButton.java | 8 +- .../eleven/widgets/RepeatingImageButton.java | 10 +- .../lineageos}/eleven/widgets/Roboto.java | 2 +- .../eleven/widgets/RobotoTextView.java | 4 +- .../eleven/widgets/SeparatedListAdapter.java | 4 +- .../eleven/widgets/ShowHideMasterLayout.java | 2 +- .../eleven/widgets/ShuffleButton.java | 8 +- .../eleven/widgets/SquareFrame.java | 2 +- .../eleven/widgets/SquareImageView.java | 2 +- .../lineageos}/eleven/widgets/SquareView.java | 2 +- .../eleven/widgets/SquareViewPager.java | 2 +- .../eleven/widgets/ViewPagerTabStrip.java | 4 +- .../eleven/widgets/ViewPagerTabs.java | 12 +- .../eleven/widgets/VisualizerView.java | 12 +- 334 files changed, 1526 insertions(+), 1730 deletions(-) create mode 100644 res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 res/mipmap-hdpi-v26/ic_background.png create mode 100644 res/mipmap-hdpi-v26/ic_foreground.png rename res/mipmap-hdpi/{ic_launcher_eleven.png => ic_launcher.png} (100%) create mode 100644 res/mipmap-mdpi-v26/ic_background.png create mode 100644 res/mipmap-mdpi-v26/ic_foreground.png rename res/mipmap-mdpi/{ic_launcher_eleven.png => ic_launcher.png} (100%) create mode 100644 res/mipmap-xhdpi-v26/ic_background.png create mode 100644 res/mipmap-xhdpi-v26/ic_foreground.png rename res/mipmap-xhdpi/{ic_launcher_eleven.png => ic_launcher.png} (100%) create mode 100644 res/mipmap-xxhdpi-v26/ic_background.png create mode 100644 res/mipmap-xxhdpi-v26/ic_foreground.png rename res/mipmap-xxhdpi/{ic_launcher_eleven.png => ic_launcher.png} (100%) create mode 100644 res/mipmap-xxxhdpi-v26/ic_background.png create mode 100644 res/mipmap-xxxhdpi-v26/ic_foreground.png rename res/mipmap-xxxhdpi/{ic_launcher_eleven.png => ic_launcher.png} (100%) rename res/{values-az-rAZ => values-az}/plurals.xml (100%) rename res/{values-az-rAZ => values-az}/strings.xml (100%) rename res/{values-bn-rBD => values-b+sr+Latn}/plurals.xml (100%) rename res/{values-bn-rBD => values-b+sr+Latn}/strings.xml (100%) delete mode 100644 res/values-be-rBY/plurals.xml rename res/{values-bs-rBA => values-be}/plurals.xml (100%) rename res/{values-be-rBY => values-be}/strings.xml (100%) rename res/{values-csb-rPL => values-bn}/plurals.xml (100%) rename res/{values-bs-rBA => values-bn}/strings.xml (100%) rename res/{values-fil-rPH => values-bs}/plurals.xml (100%) rename res/{values-csb-rPL => values-bs}/strings.xml (100%) rename res/{values-frp-rIT => values-csb}/plurals.xml (100%) rename res/{values-fil-rPH => values-csb}/strings.xml (100%) rename res/{values-gd-rGB => values-en-rCA}/plurals.xml (100%) rename res/{values-frp-rIT => values-en-rCA}/strings.xml (100%) rename res/{values-et-rEE => values-et}/plurals.xml (100%) rename res/{values-et-rEE => values-et}/strings.xml (100%) rename res/{values-eu-rES => values-eu}/plurals.xml (100%) rename res/{values-eu-rES => values-eu}/strings.xml (100%) rename res/{values-hy-rAM => values-fil}/plurals.xml (100%) rename res/{values-gd-rGB => values-fil}/strings.xml (100%) rename res/{values-is-rIS => values-frp}/plurals.xml (100%) rename res/{values-hy-rAM => values-frp}/strings.xml (100%) rename res/{values-ka-rGE => values-gd}/plurals.xml (100%) rename res/{values-is-rIS => values-gd}/strings.xml (100%) rename res/{values-gl-rES => values-gl}/plurals.xml (100%) rename res/{values-gl-rES => values-gl}/strings.xml (100%) rename res/{values-gu-rIN => values-gu}/plurals.xml (100%) rename res/{values-gu-rIN => values-gu}/strings.xml (100%) rename res/{values-kk-rKZ => values-hy}/plurals.xml (100%) rename res/{values-ka-rGE => values-hy}/strings.xml (100%) rename res/{values-km-rKH => values-is}/plurals.xml (100%) rename res/{values-kk-rKZ => values-is}/strings.xml (100%) rename res/{values-ky-rKG => values-ka}/plurals.xml (100%) rename res/{values-km-rKH => values-ka}/strings.xml (100%) rename res/{values-lo-rLA => values-kk}/plurals.xml (100%) rename res/{values-ky-rKG => values-kk}/strings.xml (100%) rename res/{values-mk-rMK => values-km}/plurals.xml (100%) rename res/{values-lo-rLA => values-km}/strings.xml (100%) rename res/{values-kn-rIN => values-kn}/plurals.xml (100%) rename res/{values-kn-rIN => values-kn}/strings.xml (100%) rename res/{values-mn-rMN => values-ky}/plurals.xml (100%) rename res/{values-mk-rMK => values-ky}/strings.xml (100%) rename res/{values-ms-rMY => values-lo}/plurals.xml (100%) rename res/{values-mn-rMN => values-lo}/strings.xml (100%) rename res/{values-my-rMM => values-mk}/plurals.xml (100%) rename res/{values-ms-rMY => values-mk}/strings.xml (100%) rename res/{values-ml-rIN => values-ml}/plurals.xml (100%) rename res/{values-ml-rIN => values-ml}/strings.xml (100%) rename res/{values-ne-rNP => values-mn}/plurals.xml (100%) rename res/{values-my-rMM => values-mn}/strings.xml (100%) rename res/{values-mr-rIN => values-mr}/plurals.xml (100%) rename res/{values-mr-rIN => values-mr}/strings.xml (100%) rename res/{values-oc-rFR => values-ms}/plurals.xml (100%) rename res/{values-ne-rNP => values-ms}/strings.xml (100%) rename res/{values-pa-rIN => values-my}/plurals.xml (100%) rename res/{values-oc-rFR => values-my}/strings.xml (100%) rename res/{values-si-rLK => values-ne}/plurals.xml (100%) rename res/{values-pa-rIN => values-ne}/strings.xml (100%) rename res/{values-sr-rCS => values-oc}/plurals.xml (100%) rename res/{values-si-rLK => values-oc}/strings.xml (100%) rename res/{values-ur-rPK => values-pa}/plurals.xml (100%) rename res/{values-sr-rCS => values-pa}/strings.xml (100%) rename res/{values-uz-rUZ => values-si}/plurals.xml (100%) rename res/{values-ur-rPK => values-si}/strings.xml (100%) rename res/{values-sq-rAL => values-sq}/plurals.xml (100%) rename res/{values-sq-rAL => values-sq}/strings.xml (100%) delete mode 100644 res/values-ta-rIN/strings.xml rename res/{values-ta-rIN => values-ta}/plurals.xml (100%) rename res/{values-te-rIN => values-te}/plurals.xml (100%) rename res/{values-te-rIN => values-te}/strings.xml (100%) rename res/{values-vec-rIT => values-tl}/plurals.xml (100%) rename res/{values-uz-rUZ => values-tl}/strings.xml (100%) create mode 100644 res/values-ur/plurals.xml rename res/{values-vec-rIT => values-ur}/strings.xml (100%) create mode 100644 res/values-uz/plurals.xml create mode 100644 res/values-uz/strings.xml create mode 100644 res/values-vec/plurals.xml create mode 100644 res/values-vec/strings.xml delete mode 100644 src/main/aidl/com/cyanogenmod/eleven/service/MusicPlaybackTrack.aidl rename src/main/aidl/{com/cyanogenmod => org/lineageos}/eleven/IElevenService.aidl (94%) create mode 100644 src/main/aidl/org/lineageos/eleven/service/MusicPlaybackTrack.aidl rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/Config.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ElevenApplication.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/MediaButtonIntentReceiver.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/MusicPlaybackService.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/MusicStateListener.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/AlbumAdapter.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/AlbumArtPagerAdapter.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/AlbumDetailSongAdapter.java (86%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/ArtistAdapter.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/ArtistDetailAlbumAdapter.java (90%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/ArtistDetailSongAdapter.java (89%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/DetailSongAdapter.java (90%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/PagerAdapter.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/PlaylistAdapter.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/ProfileSongAdapter.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/SongAdapter.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/adapters/SummarySearchAdapter.java (92%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/appwidgets/AppWidgetBase.java (92%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/appwidgets/AppWidgetLarge.java (92%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/appwidgets/AppWidgetLargeAlternate.java (92%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/appwidgets/AppWidgetSmall.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/BitmapWorkerTask.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/BlurBitmapWorkerTask.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/DiskLruCache.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/ICacheListener.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/ImageCache.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/ImageFetcher.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/ImageWorker.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/LruCache.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/PlaylistWorkerTask.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/cache/SimpleBitmapWorkerTask.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/dragdrop/DragSortController.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/dragdrop/DragSortListView.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/dragdrop/SimpleFloatViewManager.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/format/Capitalize.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/format/PrefixHighlighter.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/Album.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/Artist.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/Caller.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/DomElement.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/Image.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/ImageHolder.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/ImageSize.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/ItemFactory.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/ItemFactoryBuilder.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/MapUtilities.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/MusicEntry.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/PaginatedResult.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/ResponseBuilder.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/Result.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/lastfm/StringUtilities.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/AlbumLoader.java (92%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/AlbumSongLoader.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/ArtistLoader.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/AsyncHandler.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/LastAddedLoader.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/NowPlayingCursor.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/PlaylistLoader.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/PlaylistSongLoader.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/QueueLoader.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/SearchLoader.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/SongLoader.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/SortedCursor.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/TopTracksLoader.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/loaders/WrappedAsyncTaskLoader.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/locale/AlphabeticIndexCompat.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/locale/HanziToPinyin.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/locale/LocaleChangeReceiver.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/locale/LocaleSet.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/locale/LocaleSetManager.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/locale/LocaleUtility.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/locale/LocaleUtils.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/menu/BasePlaylistDialog.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/menu/ConfirmDialog.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/menu/CreateNewPlaylist.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/menu/DeleteDialog.java (92%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/menu/FragmentMenuItems.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/menu/PhotoSelectionDialog.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/menu/RenamePlaylist.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/model/Album.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/model/AlbumArtistDetails.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/model/Artist.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/model/Genre.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/model/Playlist.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/model/SearchResult.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/model/Song.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/provider/LocalizedStore.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/provider/MusicDB.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/provider/MusicPlaybackState.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/provider/PlaylistArtworkStore.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/provider/PropertiesStore.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/provider/RecentStore.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/provider/SearchHistory.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/provider/SongPlayCount.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/recycler/RecycleHolder.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/sectionadapter/SectionAdapter.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/sectionadapter/SectionCreator.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/sectionadapter/SectionListContainer.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/service/MusicPlaybackTrack.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/slidinguppanel/SlidingUpPanelLayout.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/slidinguppanel/ViewDragHelper.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/HeaderBar.java (89%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/MusicHolder.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/activities/BaseActivity.java (92%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/activities/HomeActivity.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/activities/SearchActivity.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/activities/SettingsActivity.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/activities/SlidingPanelActivity.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/activities/preview/AudioPreviewActivity.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/activities/preview/PreviewSong.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/activities/preview/util/Logger.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/AlbumDetailFragment.java (89%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/AlbumFragment.java (88%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/ArtistDetailFragment.java (90%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/ArtistFragment.java (88%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/AudioPlayerFragment.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/BaseFragment.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/DetailFragment.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/FadingBarFragment.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/IChildFragment.java (87%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/ISetupActionBar.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/PlaylistDetailFragment.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/PlaylistFragment.java (87%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/PreferenceFragment.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/QueueFragment.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/RecentFragment.java (83%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/SongFragment.java (85%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/ViewOutlineProviderCompat.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/phone/MusicBrowserFragment.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/phone/MusicBrowserPhoneFragment.java (92%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/profile/BasicSongFragment.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/profile/LastAddedFragment.java (80%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/profile/SmartPlaylistFragment.java (88%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/ui/fragments/profile/TopTracksFragment.java (83%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/AlbumPopupMenuHelper.java (90%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/ArtistPopupMenuHelper.java (89%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/BitmapUtils.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/BitmapWithColors.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/ContextMenuBuilder.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/CustomTypefaceSpan.java (96%) rename src/main/java/{com/cyanogenmod/eleven/utils/ApolloUtils.java => org/lineageos/eleven/utils/ElevenUtils.java} (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/GenreFetcher.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/ImageUtils.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/ListMenuPresenterHelper.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/Lists.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/MenuBuilderHelper.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/MenuDialogHelper.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/MusicUtils.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/NavUtils.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/PlaylistPopupMenuHelper.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/PopupMenuHelper.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/PreferenceUtils.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/SectionCreatorUtils.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/ShakeDetector.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/SongPopupMenuHelper.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/SortOrder.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/SrtManager.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/utils/SrtParser.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/AlphaPatternDrawable.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/AlphaTouchInterceptorOverlay.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/AudioActivityButton.java (90%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/AudioButton.java (88%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/BlurScrimImage.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/BrowseButton.java (90%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/ColorPanelView.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/ColorPickerView.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/FrameLayoutWithOverlay.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/IPopupMenuCallback.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/LayoutSuppressingImageView.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/LetterTileDrawable.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/LoadingEmptyContainer.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/NoResultsContainer.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/PlayPauseButton.java (94%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/PlayPauseProgressButton.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/PopupMenuButton.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/QueueButton.java (90%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/RepeatButton.java (93%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/RepeatingImageButton.java (96%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/Roboto.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/RobotoTextView.java (95%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/SeparatedListAdapter.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/ShowHideMasterLayout.java (99%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/ShuffleButton.java (91%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/SquareFrame.java (92%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/SquareImageView.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/SquareView.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/SquareViewPager.java (97%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/ViewPagerTabStrip.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/ViewPagerTabs.java (98%) rename src/main/java/{com/cyanogenmod => org/lineageos}/eleven/widgets/VisualizerView.java (98%) diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 00e69e0..5d4c73d 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -15,7 +15,7 @@ limitations under the License. --> @@ -23,6 +23,8 @@ android:minSdkVersion="14" android:targetSdkVersion="27" /> + + @@ -52,14 +54,15 @@ @@ -68,7 +71,7 @@ android:value=".ui.activities.SearchActivity" /> - + @@ -99,7 +102,7 @@ @@ -116,7 +119,7 @@ @@ -163,7 +166,7 @@ @@ -176,7 +179,7 @@ @@ -189,7 +192,7 @@ @@ -201,7 +204,7 @@ android:resource="@xml/app_widget_large_alternate" /> - + @@ -215,7 +218,7 @@ diff --git a/README.md b/README.md index 64e34de..55836c7 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,8 @@ Eleven music player (CyanogenMod/LineageOS) - compatible with Android version >1 Copied from https://github.com/LineageOS/android_packages_apps_Eleven/archive/cm-14.1.zip (03.08.2017) -Merged with upstream project on 28.12.2017 +Moved to lineage-15.1 branch. +Merged with upstream project on 10.03.2018 Made compatibility changes for android version >14 using as much material design as possible diff --git a/build.gradle b/build.gradle index d6d6a92..7024309 100644 --- a/build.gradle +++ b/build.gradle @@ -20,7 +20,7 @@ android { buildToolsVersion "27.0.3" defaultConfig { - applicationId "com.cyanogenmod.eleven" + applicationId "org.lineageos.eleven" targetSdkVersion 27 renderscriptTargetApi 27 renderscriptSupportModeEnabled true @@ -84,14 +84,14 @@ android { } dependencies { - implementation "com.android.support:appcompat-v7:27.0.2" - implementation "com.android.support:palette-v7:27.0.2" - implementation "com.android.support:recyclerview-v7:27.0.2" - implementation "com.android.support:support-v4:27.0.2" - implementation "com.android.support:cardview-v7:27.0.2" - implementation "com.android.support:preference-v7:27.0.2" - implementation "com.android.support:gridlayout-v7:27.0.2" - implementation "com.android.support:support-vector-drawable:27.0.2" + implementation "com.android.support:appcompat-v7:27.1.0" + implementation "com.android.support:palette-v7:27.1.0" + implementation "com.android.support:recyclerview-v7:27.1.0" + implementation "com.android.support:support-v4:27.1.0" + implementation "com.android.support:cardview-v7:27.1.0" + implementation "com.android.support:preference-v7:27.1.0" + implementation "com.android.support:gridlayout-v7:27.1.0" + implementation "com.android.support:support-vector-drawable:27.1.0" implementation "com.google.guava:guava:20.0" implementation fileTree(include: ['*.jar'], dir: 'libs') } diff --git a/project.properties b/project.properties index 570b81d..3946ad0 100644 --- a/project.properties +++ b/project.properties @@ -17,9 +17,9 @@ renderscript.target=27 renderscript.support.mode=true sdk.buildtools=27.0.3 -android.library.reference.1=../android-support-v7-appcompat-27.0.2 -android.library.reference.2=../android-support-v7-palette-27.0.2 -android.library.reference.3=../android-support-v7-recyclerview-27.0.2 -android.library.reference.4=../android-support-v4-27.0.2 -android.library.reference.5=../android-support-v7-cardview-27.0.2 -android.library.reference.6=../android-support-v7-preference-27.0.2 +android.library.reference.1=../android-support-v7-appcompat-27.1.0 +android.library.reference.2=../android-support-v7-palette-27.1.0 +android.library.reference.3=../android-support-v7-recyclerview-27.1.0 +android.library.reference.4=../android-support-v4-27.1.0 +android.library.reference.5=../android-support-v7-cardview-27.1.0 +android.library.reference.6=../android-support-v7-preference-27.1.0 diff --git a/res/layout-v21/activity_base.xml b/res/layout-v21/activity_base.xml index 697b1d9..8d2fbad 100644 --- a/res/layout-v21/activity_base.xml +++ b/res/layout-v21/activity_base.xml @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. --> - - @@ -110,10 +110,10 @@ - - + + diff --git a/res/layout-v21/artist_detail_album.xml b/res/layout-v21/artist_detail_album.xml index 16726a1..a72a0f1 100644 --- a/res/layout-v21/artist_detail_album.xml +++ b/res/layout-v21/artist_detail_album.xml @@ -39,7 +39,7 @@ android:layout_alignParentLeft="true" android:scaleType="centerCrop" /> - - - - - - + diff --git a/res/layout/activity_base.xml b/res/layout/activity_base.xml index 697b1d9..8d2fbad 100644 --- a/res/layout/activity_base.xml +++ b/res/layout/activity_base.xml @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. --> - - @@ -110,10 +110,10 @@ - - + + diff --git a/res/layout/album_art_fragment.xml b/res/layout/album_art_fragment.xml index 423c62c..b8e44f8 100644 --- a/res/layout/album_art_fragment.xml +++ b/res/layout/album_art_fragment.xml @@ -18,7 +18,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" > - - - - - - + diff --git a/res/layout/bottom_action_bar.xml b/res/layout/bottom_action_bar.xml index 65ae624..55917f5 100644 --- a/res/layout/bottom_action_bar.xml +++ b/res/layout/bottom_action_bar.xml @@ -28,7 +28,7 @@ android:background="@android:color/transparent" tools:ignore="ContentDescription" > - - - - - + diff --git a/res/layout/list_base.xml b/res/layout/list_base.xml index 42b85a4..6737ecc 100644 --- a/res/layout/list_base.xml +++ b/res/layout/list_base.xml @@ -23,7 +23,7 @@ - - - - - - - - - + diff --git a/res/layout/main_album_flow.xml b/res/layout/main_album_flow.xml index d2e7cde..1807540 100644 --- a/res/layout/main_album_flow.xml +++ b/res/layout/main_album_flow.xml @@ -15,17 +15,17 @@ See the License for the specific language governing permissions and limitations under the License. --> - - - - \ No newline at end of file + \ No newline at end of file diff --git a/res/layout/main_playback_controls.xml b/res/layout/main_playback_controls.xml index b8d7000..2674972 100644 --- a/res/layout/main_playback_controls.xml +++ b/res/layout/main_playback_controls.xml @@ -58,7 +58,7 @@ android:textSize="@dimen/audio_player_time_text_size" android:textStyle="bold"/> - - - - - - + diff --git a/res/layout/play_pause_progress_button.xml b/res/layout/play_pause_progress_button.xml index 9dde18d..4e1754f 100644 --- a/res/layout/play_pause_progress_button.xml +++ b/res/layout/play_pause_progress_button.xml @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. --> - - - + diff --git a/res/layout/playlist_detail_header.xml b/res/layout/playlist_detail_header.xml index 1bfab83..1255f08 100644 --- a/res/layout/playlist_detail_header.xml +++ b/res/layout/playlist_detail_header.xml @@ -19,7 +19,7 @@ android:layout_width="match_parent" android:layout_height="@dimen/playlist_detail_header_height"> - - - - \ No newline at end of file + \ No newline at end of file diff --git a/res/mipmap-anydpi-v26/ic_launcher.xml b/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..d8649ba --- /dev/null +++ b/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,20 @@ + + + + + + + diff --git a/res/mipmap-hdpi-v26/ic_background.png b/res/mipmap-hdpi-v26/ic_background.png new file mode 100644 index 0000000000000000000000000000000000000000..6d8a41a122e224383c71bc533da4da446c584ad8 GIT binary patch literal 2354 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

)45Y$ja`_kVSj zO-4hbwyH~skdR}$cRR&5Y&ktUce)tVCcWs?WU^UO7#T_60yP07rJq7Yn=iNp$6-mD zDxLHc{^Jj8p?%1FFF{j@0`&`M{UwtWy=mICcrh;BfzNN{O5pE$j1M+7HTfI(-836E z0JjObD&}=rsN=|U4oPSw6%l>QZ`g_w>7DQvArZ?zEoBlRa)Bw*)fEP}BrR%vKbT=s z&j9u$EbB<|`y~8j=z*%{w~Z}axR5ry^pcZpY@}P8oBiS8VK;?QMJ^?C_4S1lLqjgq z*Q3apaJ^xVOnb%CQjx!oCWHUwrY2cqqJeodPwSFRbTXS@xYkV@QS!BBGSqKxr%fkM zGFY;N^4Fx4;)58TiLeLdtE7cYKwGKk=jm^{DR=8zf@~L9d?0w90+- zI`3%P^T6LhT)l1&)fAJr0Vz2l#VyB6NJ_MeP8*Mlv&jhfSRZb?3fRl^osqEfGTiO zo{ig0gM*~Gc?8Rz3B$X06O?THZdPb$Y6|MxJ2Jw~3*JbEs>bu^U|SmtUYUmwS4TLC zj>xPfV9@z0>_Q#-&b;A16r-PjQ;bR?mX3hhJg!<^l`7n}aQ}msNQrVrfO68rA*!if z({U~MtKay`(?h9w;J^Wb#wB;bfxn}0@!()k*YO1l_=kpq0QRclGsoghtVQW3_caQt zt58$&$#^U5Mg4QlI4-OY;1S@*&yyo4E|{q9GAdP*q0TUy+2eLt^Wo=#X^id-Bx5kPhjDQv|(4)Rusl zc4Vm_lCb%zg)e^LP*g_Yw{=)1BHb1`Te8|ZRTILt51`90uav~~kZsVj`1(#K<^1GS zk9I@ z*_0RiCa2FdP*lUR^b?Q69OG1wafXN@@i9 zl5Mo1Vcnwr4}J+w9aNI27Lr7iw6YXbg?FHewDJZOPRQvl6&D}=`WOAY|E^lujb_!X zEFnll{7nhmvv~hQe=g^Oxx-wm;%e&_%U4y;Tm+_11!{3Wqn$)l07v>cCqvfFf`mHb z-?m&e`BV~gE=esyIW98c-fkr1=s5iKKc{(r61y1y16V9s9rXuw8bgfiLch zV3zrGW#n`l)I!46gg9?E0;aFEX3a2Bc)iqpiOGwhY;znk=J7>gW@Sh0$#tAp&eh@wEPec)NhKSP8avKo; zdvdZd`OW3qzZ??KATulL20LQe9-9j(rh`g9=!k9Aum23T;A~J-*|&q{KF4VyhC3+z z&P`#}VBiN=YQ*?;XTw z%#*G|o@hV#wdcVeDs`%JG)@&sW#}y5sQ#F2QERB|z`44s`t6AR&fmR~`s8{}%3x4b zQGC-vy8=YSFiFgZISbd$?U^@?Qs&+d%W8l@#Zl??;-P)S8`B|?l9%6~R> zM(wkRI#lOEK=1fOrOi}QTm>VmsOQBL<;RR@cxN7p~o zM2Jlq@s)2uXXc3)8%n9CQY}z@-BI4LZW~obuG>V$*j{c$!wUOuUgg#fWq04`2&Wos ziwj_@dS&w2mSLLqqNJP^al|{LRq5gH)A=r$w-c%!M4Jl`aiOY_OtxiaCG~WUhEDa) zOUBv5ct4^@BKf!KSqjm%w3L`}VOz%NG*n9(qPab5o`kc9k%%gXMJ8dG7Uq);cd@)o z-l#TJ`%(E-?a6&J<%!$=JZghksbHQ=*Y}E Q;{X5v07*qoM6N<$f>>WNEC2ui literal 0 HcmV?d00001 diff --git a/res/mipmap-hdpi/ic_launcher_eleven.png b/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from res/mipmap-hdpi/ic_launcher_eleven.png rename to res/mipmap-hdpi/ic_launcher.png diff --git a/res/mipmap-mdpi-v26/ic_background.png b/res/mipmap-mdpi-v26/ic_background.png new file mode 100644 index 0000000000000000000000000000000000000000..290a606f5007bee50ed1de7133982a3845fc7287 GIT binary patch literal 1609 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 literal 0 HcmV?d00001 diff --git a/res/mipmap-mdpi/ic_launcher_eleven.png b/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from res/mipmap-mdpi/ic_launcher_eleven.png rename to res/mipmap-mdpi/ic_launcher.png diff --git a/res/mipmap-xhdpi-v26/ic_background.png b/res/mipmap-xhdpi-v26/ic_background.png new file mode 100644 index 0000000000000000000000000000000000000000..2fb57c04c63e6252574a707fe1cb60da1fcb1635 GIT binary patch literal 3181 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 Q;qL(CN+9D~9BIJ+0dUWpH2?qr literal 0 HcmV?d00001 diff --git a/res/mipmap-xhdpi-v26/ic_foreground.png b/res/mipmap-xhdpi-v26/ic_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..31e3bbf83a688fc9032aea33feb7e4f50cd06a0f GIT binary patch literal 23342 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 KzhzAXPy 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 literal 0 HcmV?d00001 diff --git a/res/mipmap-xhdpi/ic_launcher_eleven.png b/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from res/mipmap-xhdpi/ic_launcher_eleven.png rename to res/mipmap-xhdpi/ic_launcher.png diff --git a/res/mipmap-xxhdpi-v26/ic_background.png b/res/mipmap-xxhdpi-v26/ic_background.png new file mode 100644 index 0000000000000000000000000000000000000000..299086bac8e4b1f854e9fc30ec266f081439f294 GIT binary patch literal 4670 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%0AqOi!?;$@ zS9x$~M&c6|OT8({25kW-uK(;BID5ouV4Z=qWcjqXV0OHq2xYY6vxECsRHg_aEj7j$ z7ch|a!DzHhn#)tNNbrIl@cI#gxyC#jhg%s)q33vPP5VD+7Z(~H>>ue_0U-%_%q**nDXb!(8Pabe z6)(hjJpTd38F-!TjQ9i#fMjSB3A+@;wkl9k@VzG|6AyA@P(~>D{DSv_Ds0p_=2_dRUNl9JWKtjd2GerIAsFS%46~(Bk+>L+}qneM#aBCyDUvYm{8&LW> zTHEFG>d$?~vW3=I8p5qNe$IirYL5Iig`wh{hQ1?KPgOWF#IwJAG=N*b`}B3kF6Oof z*7l;I@4=!Gmy<96vj%^+A2`|o)mJBk=qw}eihO$wL_pws&rT+if~~-4VaunzVRu!W z{|9l>k?We4ELdCGiLZ6&pgvpl-=Yt2f>}0zUR8br_B1!JIif5QLpr zM`T+)U35(i{sl&NM|T!nPf8Rc_<#szBPy`+*X+*D_!&cCD3ko=WM_pAS*#|xZ^oS+ zN0)H!7BG#=b?vh_VEz-oVP>chT`MtpEgdB>l*)6NZ{S;oK`qd=V@Ns)+6IHJF=ar5 zgCZ>k++xZk03?-cz$M!AjmMiKQSfgct>+hAu7BSO1Nv;^K*-TA^sA6-k5Mq?>L7j( z)^y1j6ilW%$dL-StNuY`Af-+0>&@&k&w6T5G?I@9?j!rkh<9 zg6bi~a5nbK8y)vil&cJ+3-N@qM-Gwl6fygYui6dR2Hy7d1^9pj=nNAKTmp`8?1+0U_pK1e9ct+sZJTQ^yj8d!7kG`nK6|ci_wy)6M1tuwkY>&t#wpvogNK zhEG`Z*!8<(8oAD}W4nbc{~cCzL)4aWGk+=}-mKlLCf^@9?hzC)T6YmkeDRxZkrm@o zh2H(~D{?+k;|!n2*q6+!J%@r(_MLm4feKV2ewcu%`GD&6c=dcb7v-Sc4&8X`x!UuL zs&kdx;r-oT4YbEi$n0i%an-R3S0}L=inQ{R-gTnC?mbeo!txRBQBoT9`yc>Qzf3Pi zl2URuDuQTZendy#lQ=bnkTh_6T8hlqH*E}gZB7fa!v*b^a)K#m8QOEZGBrxxHTgUl z+KEISFnTene~D`s6R&XW&mH*SL(9V#X!|wO57xLb+0(|b8(N`JOi}YDLY?}m zOog&gjiJ@y_uG9oTs?0ej&nl@ZPZ_GGpg#UKJ^A%IHbv!&@nB&?ttt%dm|1UUh9() z8AAYeVk6glD2xl2#AB1)E4eFKNx7QQ6V2~}tpw)`voVAL)K(GZK(N>P=LB`La&YCO zw^XdM4-b+N>voI47lh%`&FcoMje<>hi^p6|SO=Pn1*Ec-)DU?cYE1OaIxn{`^m1m4Gb)q^*h zE+wV1vgs*`tL392r=ksH)UQHbL`O*rv}94oFI3-!$wN;Hg==S1_cY(FM!NGamNsJ| zWxtK&XoAe|Fjpn?kH3pOVxBhHm4sS7>AG4=$$MVIx7hTYQf?d`0v}o{LYw1N=RGT|*`tbtl}%3xGX(Z*yVv zr?|!D1(A*{ltVT6A9$T%n%wTJ+iAEkti?)sUKx59Ej06`q0gE2pqhW#X1L0xFP%fD8$lNUAC|-@5a3#=XAvu5;F@b>8!?VV`@?ty{@?l3ROP z)7g8iXFcz`)?QmkDT@FgAPfv61J^eTR~{y9$sBJ*zJoyMe!0S${Vefg!R66&{=|tB zJ@<5e{{Ccseo1VctR-h>XOp#!bGh01damAB&NWukT&=O1Us+qvtICx7_80xYw|(oa zxBkgfp7InJ6l&G#|Nif9dCTh$?%UU#nV4u!U2~0`SXxT=e$zLlc>Nl6?1^q)qxZYt z`%crO=R$D>IgSla!)E;*nSZkoLeYj4W?v^ljxSXt5KkzsA8J3CtT#izh4|b<5!QK0 z!uJc|*v}f*civaQxHKfQKL|3U_nRw|ICSWc&f9D?&fq_LVZMD>E*E8~P>_W}UKa9s z9d0xk(c8cKtG~K?X>oA{28d#*beq{Ps0OD{^x7u)-b$aDR`*I?{(S|K7Cwzn5T&CbI3__&;&o`&TmMM}k@EGkm0 z=WDWFOJpvWlZ|>J)dg5yS-z)MtHA&<^#ecpqgR|db4IMKt%=3O5dkLvO0%>2ccMbX zKP1C|TI7h4+m9hA3GvTMc($|+`N)bAs|goVjx4{eH*%W{pGb%yMDB*u>r{DUxly#Y zv;TZyTxo>z@F9z;i#Zp%ccJv`G`0#ZV(&b^E@jxpu4gIqmfOfe4hNhX~G|JuCL?-Yut)6lZ4ig#^Y^6R56; z5Vs9QhQ)j{edzxC?%3GafI*@(GV-EIsVdY~ATiFB7InFg9zCkB+oTwoB)u=OJ~)~N zXZHF!P&>SUY@NPjj$_oNtMj(YA9dfTseCD$&LM@!^*j{){&?3z^O-L($Rhtkq~fZ? zF(#EHe>A)uC$?O^&V!~I3%l}nHBdB{Pn|lY>&U)+`{e2NMKqfa?B6dZrxYonAF9k72l zJr@EcH5;+@nC9iJFM$rN#-1P z-3Oo9<2ujf?=wN@?{FzM;Rq`nX_+lYvaywvQzt%n(>-|bU~2q`g+f7{pH*fu`V4Eb zRxQi%i3ymQp4MiwOiO8_Z8GEE^3viRtE;OpKuo>-wg35+O0}xXyQE0(pxU0k=N_XB zQ6+Z#iH z3+&1gBGnKXKp+mylMBaH7vC6Z zO76jfw%J^(Ry8@+6(NoQs_1i4BBj-n4G)?w`exw79}bA648%{zrpwr zBNZZjCRq{kzxCT*%)U!Gx>Oxku24SqaTK{xQZ(n_5(GzxuErbNaD52%c>VOu{p3r_ zVE+O1D#c(=3B3d#qfG5%*FELRMa#3<2F*1Hd-@G1#V3r(TvvWXREf%;2<1{uhnZHU zb6%O!`P^8?m-xjyKXb>R2UZHj;w@6FBx~#IVr6wzjW#cK?w=vTfI{RD>HuS{4iOp8 zj$>~{L|kfxaM$fLU1?Ba4aMn#O@L3NK^5Nvqz$%TwZ@SQWJouZ53L}fp3`hOLh~ue z&^aGsE1IiZ^v`AT$Ck@S(i+NimIn?TfIThv1`{ZeZE#L%F?b~vR0ht3*nOTrc4}?}LoICL_YTU_Wr1z+9#UKrg|VtxFll z5=)kQ6RMD*YaEeNrP)<# zRis%+lSU%f)(3Akf75fHdo%hGQ6-k!Q*Vx_zeb}W@h@^dq5)TbvewOzQj94BO~(}` z=6XMb?t`;j_TUOPz_Qax(q%H!2IW$9F>t9&nx1g%+vg}jg?ddF`EeDVBbSQ}7a7z0 z=<3<~A>JOSk!C&O+?k}ke}8MM{D??~l(4>4Y+y8@YzQkLX7{d*Z~v&1U64 ze13Z?a6TeVzd1cSi@r}JLA)d)<|7)otb@=!wL$Aq7K;F&|F&j>tM8!>*XOg0Qo5lz zi93B1+GR4k%*#+^prqy_K$$Tw34R4g^Q9Hr*JDy*xfI~4z!G>LV^oEvKr*EJx%qif zSLQKJzZof)Wx1>dRumz&QkH3>QI|-D4P`bz^0lu#u(7^A(AW5sAMr(~5Ibh`+1B}M zN+ogUop++iycu&Dpg%H{eZ&T^o^3+pWPWV#VqfRdvBShx zkPzu{`!qf^eE~M#^X?>Y_m*}BcBhcJVxsR5|BwuEi|1ypyDr^p0^nU3< zsa!76ukax$KK|I_%k%T|4-V3gs0Ms4$Jh99zqGa{mdYyv=OaE2t@p7}C89!Xk37e~ z)zR4Ssc%}}1Z1mslEe+=8H%6vxzqOVO~a-7F2y;CW^o7lz&863%r-H|}zevtLP^pn?SdsEsG&}&&5h&SA%8fiW>rbd<97BNo0$xr6hNb|VNjau^&7v~3V zHXpk3%3CVsYNxy$$L zt%!3ez$iqnN9+f*!P#lWrpfiDu?}RKH6uEdY78ZTh{rEBgvX!}mOI0Cq^0*&_h$xHFq&*xL zhNji8+~5W^=7pg}?jo`|sI~<-jWK*Z6Q?1jTqDbuiXV}#hZrIvV8R;E2cG3da;7anFF9r@Uq7(T z6W4Wap9{k&HL$L2rt<-k7FPyWW2EtD`J81kq}Vwz+uBS6u8-Jyjc*N4jG!N}rk4ZD zjf^N?Vp%RMF5EHb<-mUAl|OR>?zH@fWr1(4oIZWJ>-V7f41A{$LWsyh1Y^g~YBA71 zns(@zt820K&y}~+Ot#Hsb9||&MWYbukBuq3O9}P^n~3ONmY!`ha49GInA`foO2>7M z@VWBDoDV$*+8AANo#6}-+5;=vWG2vNGrqA>$jfqC(ktO4YBU=Ch}HGA2M6s(oY}qm zmQvZ6%`HFT0h}Y*g0D_zamko%%yXdEMPyhTTwbn@Hk3cL5JH{0t2}HNsse3tyi`=8 zYsKu?g1ah6s5f<`8D}2{=LxyM1 zp4IgRRpNAgN{)}$$TPd?V9@AfDJwUCYOxJkx^{y|RTwY!t_;O%3KKHw( z*GsMWh)R*_Et<_Z<;D!Iw26^>1^{vDC{`WP^l7IUleTc|$ABZSENzJ1mtfoW5g}Xx zu;(H6OENyi<%<(~&@v*A5L~^zj0|g^r|Oj}Kevs|i&JL;c*2yPJYD&0rlINUZF5;P zn@#feYKZ1Lh zzVtYMhA)n*mkYrcFQ!u2gyvF-zWf0EG z0*6F_0RKG>#SOJ17eaY*CyLEcOsi9{)>2)Gnvr~;cX94Y&VI!k%%a&@Jt6e1sc&mLS+J4HWYskpoK;i(!f z3szQ*p{V_c80;(e+;h*M2{B(NsFCJLFw<|)Y%ZQZ-*sOMDfS8b-q7)7ABi zDOrKzn8xXs+@r(VH5gWMJ&GST-biWDMg>@6r(b> zs(%gM@Z|kiPTu z2UgUmvm!`TiH&?+Rw^n1TsN$c*FMFS<>h+@z8u)Me(Q^-U<&l2u}USDN+Tj~%||2? zv_sa24=ytD`2k}(+*p@MR&(7Y7Gh!IWFoXnZQ2b7pHi`JimN9C2%EXIr}Kq{z;#+N zIWwGw-SH165}aBY1mV+$tbqe8i-m%~^%1A7z&JsBvM?#j#bOF2rQ8}h0}#Hio2`SCxciA~AIGHA7ZG+MwAGr5mjnC$AO7LX@vW6od$f73RPxpDeu;^D{;oQ~ zK?IINaXCT`#c>^rKs?&^Gu2T#pt4ivCiXKAkt(iGMH8ND{i-xt8C+%vYvw_JWN7CF zOx|0G&D2WCUez2LIH#U9Rkic{7>RGp{ zTq1Cu>nvRHy{eL(db6)JMSEKL5n*u=&}^>PiWlbL3+yW-hKz$;I^ME=4aL+e|P@(Y)7efYWdA zz2Q1~hJ_w5Sr?iEpiNi#vo=PYhhWRqPFneYpK9*4Q4{ zWe(YKTqcMs9iM9Sk+Xe0YsKf(EDe+SIipJ4w{M>wSi$4#rl&8c!&>{jX5~jjQpD*u zNQ7uQH}q!(76(54W^82ShEjVlWjDFT5TQ#+`><6Fx!-!6k|U~f@|zs{ew4~9wj2G-h90vbtnt)R}%Y}Q-`z+5Xc{({|?HO#V%8*LVNQv zDiKL>W@aWm2e=&Aq)w+b{idkD#@E1=wDaSwRkRcQYsfEu{vWsF^Q6jbZmpuds)!L^ z<3qFAtbT)GtV!Cgj=~4~-f{IO1X>R_^K5Ay3x${DFBG1O8c4H{CL&59a5gSX5^7;$r9BW}*^Z z^&sZ{`Z`sBa2he4qYKn+6AP}hcctGCQJXw2B*ZKr3p)%xA7U1hmG)9*e=`J03A!H@ z>nn?^m!o76QgyzE%Ejd>FsDpu8EHB+kJvJ~;`md>Jr%#q3Zo7lV*`$x3A0xh!Q1$$G94 zNJl#T!1p_Bh02vfKwK{#`y1>ql!*IMie|9~<3~hN%qs;pGBT3l_nHxCHm|jkNXN}W z4K@u`iR*VuN9e);ZA&|&;IHjr^vDp4>0k8IS+yJzP$S(Y8i2z>+OJ) zX;2V>W7;UW=M<9;cb*afmxmM9NVAToh*3|_MzdL&%IW^Lirm$nexv<}iWG4Q4&u@K zzxKeu=OY%2H!m(PC%B6C?#{XM;=q9e@^hd2oVJk6^qcl1ZLW@GZM6N?QH8x4HVIYmF>$)k@g&(F;b zbU859_-=geEy|C$s4eE!X9Z5R7J5KZwC5s{N!nT4flC?s>Q_JEXr7c5C1fMF%_y`i zWxa6m5`34rpPNL<%bW|vu^(!TY2X7TPamno_|7gSe8g^_qxaobl$jKt6;^nTd&*)d zL_J9x7kj|@h=pQNnCUn5_IFnD%8ytowBBoOC|~0G+RDIJ(Z=P#D%GlJ%+BiiK38fD zte_9ko|9<7zJL7^BS5%gvd>XV1p@J0>4Z#alb0*L>zG4~JE8Z2Wh&c?KA2;;h%i1x z+K6I^48W~cLOv{R-%c06UqNCZnY6gdxg&e30DSk&KF(rJ`@*_R_MX8NG@F%3gk9=* zwmqmaKHj>H%Ygwd2L`QI`0(%i*|P(Gjc;^x^k$roh|_P1`n_gVMrG|k{&?%-0)!N0 zV4tfuKJ{kbH($FDo-i@-T;S5=h@Lx+I>C#oR!Ij`e_9^!J)xD7KAXXWgG`Pyu zZ;vd%P1u=xvn|9{=HaV+TmuPR=h9>e5FF3gn9i-Ez52c8X*IAiIXMaST2=0vnbFIE z=>$tMZ8UN+NgDDqAN$DNON)yGeT@%S(N1AC!O>=%k60|W%x3)f6kQ_`!i2!p{Vc>0 z3z;E|OGwab;5knfF@U=aG7z>WPwFq+sjJ@D6SK4SOm>)1FJ*%&Qv1BwW=Su`hms{d z7et@e`Uw{US^+8f`&3ITVhN#3DVk3UXtOz&OUvcG%51LdH&*f!d0B?CR)~O$B&xsV zm6dx2>_K+1b{4oTQC@M57R`d5N@B&738~5epa3R+b@RbE!MX zm^W=VH17~-IfHppCAd>a(H>>?-S8NM8slcK#pLf&h5(!YeLhv?QcZ@O5 zUgN9PYDuBJZ!1LdX#qr5f}ox8W*d1dsoKw$?#JXoJJe7;@mX|P^4@WpnHz1ru_E*N^x?1GcgLXph$AB-H{)_(24~t^G@H#_L}q}+ZW}QT zohm#oo-aPF!&&MOmtTn3Ty=uR6`nj@`9!P4ow~RKB19;(XP}L+A2XLKyDackU|%>0 zlq;n8M27rC;Mj$J?gjUJ?CV=Wiqu8I67jC-X*u0~uX*>(Oj_Dq)Niifd_+`-`Ff-E zUUNPb_uX~Z$w4m%hJM5)NRpl#|4eRUtxwsG+-W4_` z9+wwar$bgg^DT6O(4dq4%ZXfoqM5BM4%`Vs4+qq06%)2nFX=SiU~(|SIq z##Ra`evvPyOln*XY`|aRn|jTw-f#=bdCt6Cv2!v#P&oG87`(*rK*indod*8sxTZGN@kxb&sZ`Hfp$9f zzOOUzr3JtfIGYBNBAU&+cJ0!m&6kxg)1MVUvstf?SS~|Dnazc?pw~&Zr9`b`Z^9DQtgb#-N+U*khR;{GmkHx| za|PieC0f5}$L4#^F35;|@RZXg4 zvKBt1Ok$-yZOr{v9O+1xh709S!vVzI9}%%{=S$-pr$`!zjSUH@FVtX^$j^vDy7Z!1!Y3#(^{>OJALBuPhEZObuSw?@A?e@ zGcz-{EiNzrQ?*i&)knwVHy=7A@ioInYl1c%X?8uAtSZme|a@pZYow`Q)Qe zE`1cf{i%Pw=WVZ9Y{%n>BBs&D+)Ur~%so#aO-a%X5gRzJWg)vPpaeyGY?m3vrQu4S zQ|+-GoJ&3HbnHbQaC@I3MEuUmd_E5=ig*@|9Rr+xvmwV|dJW|Hl?A8(zSo?Sg*>E> z-v8AHp7qVoTY>%iCtyHO{!3gR@fUF)Cu-w-#JVace(uV=wc=5U6e9AvbnN@Ub--B& zBPLFW@cSWt?tJ&jz?z73nXs*fCc)iTPZu!4)m)}*qUam8vmRhmroX9Y$QdHVRVrTO{! zf%*}XB)R-sUho3#N5qNaIIx1N-(23lPRP*wM%O)wRcif`S=M+o-z@34>P2k*>Z`1- zrNFkD43PxS9(mPE&t37VPmQH3k0nCqFG!xLker?9*R=|GDdb>JOLy z)mv@^z9-?pHEep`7nhUw0AW?+s=yqn`|`^I5qYkkbYo5E7}ZMufZ5Mdwl3KIL*q}x z`H0hvNx8C85I7$Z{fPB?Nslz69}yK|el(|F;lrK|KJR(ARVo!xR0?rL zuYRK%La`Wg|I9Y#e%p|cT@+*q=ZotiItmwYhAa+%Zt}I$i^3q6|2lo-)wiBI{OY$M z2|@}V`O~!ar)FLJ+NZJI7XZ4{SMWCJ03XV z_$&gu-SqohLg#$(V>=16PZg=RqowO2nscy8pc*`P_*HK}HJGIGQxfFQ_(;%(pAZ=@ zgh=7ATv>m2`q3|Z?);5E_3pWU|65luFvR$c)2y^JXv4c~QN%^NHDx2vICH0}4A5v5{Pf1(tZ1DhCceV%kYKbAHX zA>R4dAG&AI%Yi8}zAaV8GcFptdw1)@0%oxX5A0_hTmNF}R*ZFHU&|^gLg!q0#gKk% z8N9wkGpMrJCBd{=eE8LGMK!20{2f$-kP%^p$n{syCdPX6W$C{hz5o1;Z&1YeJ6ABV zZP?_NrJ~S^$Te(N$z6?Hk}_=-vXJX$h&XgU<{p`AG9nLGTobk{o-vm%yX-Q3a(;19 z;Cs#E<1IfTE(fNJWBplyg7PCOqzy%ig+iJpNm=4@U^TR#2ZyPb{QFnm08_fG37XAk z&Ysm5=yz7g@1>n!2tHB_DL9u!%0Kv6jH?a(EYR5|J2{kfBP@Kpnb(vafIg_eTcCSl!8-kv5L+G z;W-W|1=qQL@~7&KyPwjr4@@{;rxJ^wC?k%7%ti zFZO^-fhmQk2r}J{<-m6D+jmQ;qEz9+0_<)T8j9BXh>q273}QQVgsanWrAy;U$FYmR z?DE-lKUBsn_1i_pE{mfpJ{@JY&t>`Wlp#WG7WbhBIq-xinXS_xl$sPZn#~t9&n^6| zBF2xmP3c(aEgiW6#63_Gjw20veX}GB8Pev6H}?00Ai%8%Lh*d(xqBCrURMJ!11#u6 z+(Ra4cl?O>p7Vw>SM%c%*|U-0H=7&s;jiB}=!G6|Ik4Mw8I-BK+BTQbY|gj+h>Su+ zWUVuZ4+jy?;ivvBziW0nLP1Q8m<4XU_qtsz25%C3kJP3dzt z{j}|4jOis^J!H&-rRn!ee4$Dwm}8S?sH~JAH{0m?A=emp!Dbr1?Eaj<1>kFZdi9%H zO{u}jv@~NrPnwsx{Fr`QrI9q`efQjTa$#ZN6bul#T<(TSttK`qXFJnx>eXte%#1qp zb$}t*btAT3a`j9)(uNG@efh3w4Bu_n6Nex&2v#B0_^+LZtlz{fS-I z9p!HmrKmT5EdBB^B*s6Sf7$;y;>g85rphV=uF?w6^%%I!1MW_Uz%f8K2}(yAg2c~C zimr1Za<)Os=nET@Ue_wxxX{C5epw$+O-;edGA`CS4)`@bTr{?2Hs|C>uJsz<>eAAn zr{7Gy{3m}>F9)_}O}{a4_z>-_Avt=TgZ*r29ms;L^*M{6aK-nLIIZi_5w1IuWe#%# zDb!qUj~f4uvLe1TC?YgSg10K_C(<~wYhTnFKi2r-V;`UWrk{PYCl|qN`ymDw`Sc6h zACsjVc3kc^(K5OeZWg%Q4zyexL`1q#=TRMYzQEUpnU9G3=toooF8VtwdKGOoxPoNZ z`VwDj5s0Nm`CV4>#|bFaBNokb~Tv3zJJ>xx6` zE8WjR;xxagHeH^4TaS0QE*p1L#Cat^um)Kr|@XGZ1X3k*QCFR=F5?8%ssHK+AS$dG<-1%ZAkmY0_ozcA?Kz@GN3XU$Z~)z0t! z+T8t}ffdI$R=9mcs6NI#0~h-3C`}o-PLfMcF!2E5n1H4uA(9kr6Zz8kXK(3sJf-}LjW0d+@$=vE^DhH88TErKm4|!aw3qWKC0|AJ z<-=X0<&HI>vk>QYKk?s>Rip{oWPeH`QX%kGkY4cfa}f z3%gh4l;UOxE$eR*5&N!qoxIwlsLPEDJzUnlfMzp(*91qKaoj||#-~3%H6}|Fg|q}E zz%>%jo<1@7RkTM&o{!%*!1CbdNgu?IPo26jz-{Iuw!hiTb(HpbfVg{P;$*3-+%xp4 zeHykOP*oda-uuei8$qeVV>iBb=FAnZzEfETxZpysc`P>jGveW%he$cz+h1Du$u7Jx zot>l6t@KeXu7BylkDtF;t3|s6u_WNCBr*`k<(HvKu^%&q+vmWU8WOsD+N^2Pa4}Dl zQxLQanV*L}1;>1N3RPl5nav~WJifxGBaFzj(EcJ{%WPJI9QQx?z^WSlg#n^iD(U%% z`n~4%>xKC7DR}&Gy>EPoZN6$fKN8zOZ5NFCP7P7S)qh4pvMe$yL%WA4Aa zKeTWJK(?MTbe`+Y1oYq2_EVua(5Db;bTMhU;>VI?2t5s9c6K&FV(fgcxs9pz7X66$ z8Xx)*>xwK(C0rvhk;fl+U}b4}X`su2DRb@c_rCO{hw;5;b8bJhK0bvoqs@+q+Byk{ z%nICbVxFhnNoH!1u=zR|6Q6eGUL3#aP1CbizUFPpY5YNH22D8P+eUSWXc1yahxAh> z9}#wiYi~^%s*Tq-Kltg-ssWe75bqP?d>1khmy%Wt!DfNz^BmWsbBfUgP6cLpf?UrY zL&R*pIHUJ zpVxyc9wIadDWQ-ujO}EyN)tO?7W69wVmnzl`?Q}rQeK|>qB58HsWgT+wwVkO-6nIt z1`#bFYK2*-LvS0q%;%kq<|PgLo2I2~9fA$K>Nm({bWUOmt+{{r8lV0eAFhw6RN}}~G0oKz*}%U>B2OH9{0oB~SjiWQH{$Bq zqt&X!_nKQDu|KF)BJ)o3W~~v3NGnTNU;43~GR-GeSkQFs`oh-t*{grz4N0}~MRn=O zg&f<#xHsRn(OgD!6QWHi01-`xVREAkjmgaYAgU$o+j!yHRJvCA&Dn4Inco6O?$BRP z>pJEXP6%04SXM%#WEA^kTxPCM`Eh9ol5cFSu)_%RwhB(eu}7XKCJuL%bJxs_evPkQ zS1NHVCvzjMiQ0F6>Jtxa$8unmQcZuJ^!VCZtL&$G-yCcYtQce=3p;#2Eu7Y~7=pI1 z$38ob0kWz@XD2#)^=sZHo9Wwn22N}uyoh9o==LFIRfw*^6x(;`lD%yI0ll}sT7TW_ z4L|wM^RIZ@6-+3OO8Y^UUro!v#iPnIOQp)17rh=TmoFVxI1@HjU34jgBuP37(R{CY zdb;&qv-vzJE(c~lYF}^UWeLC7jLU&3m8b~ujzKR6_9H*^${Wy+SXy82{6_Q5X69SX zF`bHijq6~*y2i!f(z30g7;w)lWN~d)B-m-`?V>V~&mDQq7iCk1-!{1jX0nZ5AEJF6 zr3FN{i)h_CUDwpP)W`Fy&u zzWU&x{fJY$cRzn>>cTOOG}p)=&^6awV|KZF=z0deeG!PmU8D8ZhpuN4fUm4sL_$|* zID7qTpINO|KBW$y)d{hKalvG^`-V)-MPAraGSq1W66-dToe*hyxOw*@|9t-2fARaE z*Uv#?$C}S}V~-7Q=OLMWJ3Kh9_uJ#fHU<|Fg5%hg26vn#@19NuSJ1w!6ZFC=+GZgK z?MEz?QXE`S8c`3%eB-{ae{#^D6~N`d7MF!?4`2f7`R=$aCHT~LPCX6c&;fX`T zadp&{mP^gXphJqMkG%G!u->>sow&kF%~VibL?moMrDN+uj4E`-W%A}RCC@MZqAJb#^hy}KTCXPSTvi_WHukL$Hg9u*^KiM z@y{#=h993&&ON{dW50Uu=T0pzFAsbWE@hAw6HukUUU^enDQ2b97}LfVE>t01rZTM_zDg=Kd2E-7 zBf*dYaFvNuCfxm}O1URJREjvTvQlV$o)pim;=l^N##d;~N5t3o>H?ZbmWy-ezc6UC zd3yKm7nRzpXPfmAze$zzG@}yRkdFNjxOzbM!IO`#p4!h=I`Rz>BWLLVM5y4iSKa(#puLhd^G-9O-&X4*r&w^$({8ms z^$w1BuC!cXIyiIX?SCR9{IoMwZ|xJ%vr5)Qn|4Ft>JNM?WN((uZ6hn{KC}XfTJy)w zKkE(ejE<18$FsH}WtoMPImG;G0eoJuH$O%pxRhY%_Xp3n&1QWL6{1-*7X65LZfX+J zQnA)rK^x~J=5u=WY+U{3YjxHm1uoS6UQ#MUv$8JwuHB zR(iXWiEZ^+6sv%I%5Eff*m7Sr)AAN6cC; z47ghF14o9T^eO3bt(*Jo_w>o zsP_{wk?Q$~`GRbqAF)tqzXx4}xpQak8TfKwrP2*%U%$pzE_ap#V?HZjkfjFG3LL6? zob429rM@~C+YwXih*gf~uDbnC0Lf4~a^QYlNMPwOTiGPz(W?+Cb!0*8d?FV`$gB}a zD7R9iT4|T5hk)%@_|R;|X)Z85 zt>0@d6l+3Hzp3YC8RsMB8hSafViDlZ4}AEZK`#fU{D?0qmdg4yzE$N%oSK@_Wwi%Z z+NLu{0Wt8^C0BTkoG3yvLk5oRbN1F*MoosYZ6?RkF+E4;F>~1V^$=s4TP!$Ibloib znpan_?TXp9%;(wX{OoUd63N=oC6gKV3+OrTFM?i@iU}u}{SY{X=xQ9UM&t@!b0QI;dmNe#Aui5z~CCL?R4&Ij|&2F2D7*AHLiy2UgSzJ+N>! zbpZEs*_7OHm1#W{;eSaWMQNBI%}RHmq@7hv_aKeOy!Ct4cd?T8WLBIETE+4QiU;TWND0D zjmn;jc)mTy4`E*8!&S8LYkXs)qv^8pE#mYW{VHGkt9;wF92kBob#`tpSt6e&B?~+t zT$TX`5r`LqnCD2t`|7O-hET{+P= z+_JvdvBlu$A(~^a!Dre2)Mw}$KKBW|p8R6075DQ@S2lj*>V>#n?gJ-#n)==a*;L;C>P^4CCf*&b9uQpC4b8jVRgGcyCI5X8K>1v$2=Cv<@v>7HtUn$sY4kElL6SJuy29QlN=(vOwxm9m` zaFVZ&J?&@b4x7v^zH{LvzkU<&EE?>;m}BV(A0j%4NZ%LNuGCq`5WsILNl#vMpF(<$ z=>yXH)H@c`0R(KL(dh=dz9c)%b8mcp{dLqu=^u{A1ZNA4FJ0x~o<}&pkUc~u` z;m?q|zSW2! zCebXg2{<;tm>+%Y(ba zzPs*3x&chm0D}iXSXgWz~$C;G?(o+S0Ik8Xve#mPSk~v8J?MKDy!=s5E8Bk z28^*Id^L|-=wX|YIGblod8jfJ5h9B-%_%*xH;fZ3A&b{S+Pvxfv)}leOrrKS26iE0 z(2toCTLwD~;R$QUi6ujNgSj+)aqV*TXaqAs+YlrA5pjEA73~Qf5dDaCe2uUDfqPVl zCyze1ytcMB@a4d6x%K-en{qM1ft964R`h$#x=gAp=1mnOM(h3NEcexSf4Mjmq32D* zQuQEW@;iIYPyDu!=`&j~GKd}ST2MMjaGJ~8M38YNbC!Or=LZRQdM*MK{S?AMjMj~n zmHKPvzU@Do4_DC&9Gih1KDGhSbh6}2!-$M!5#S~!A7~F0+jwbQ0JqBRnxuWz_;`vR zpE6(L!{xvVg(6gP%;)MdmupCLAFeJ9emSr!uero`06kCx+O#yhG`BaQ@oY{xW!ep&&|%Ne`oYHJs(lOv7!c7CR^WZ1~uH=Xb-NOJ$+)(ga|Xcck7SX*V~^b zEtN)$@31SJnTivEPF5%!!t{RUUjzD%hw^P#Eznk-whYZ~>M#O1(}5z)*wS`)M%{qoly z82EBv#iH^fmc`=YBCP4J@$J*oZ*a{-=6&W^_-cJ9UKU~#BtLrIna{~@dGoZKuY6L1 zITSiz1M|tm-i8sTzf7e|!qxYeqj}Yd&I0Pte9|xEvU6aguhD zG~~(02EQDbQld9J_m<~O;cI+j%4A=1yvB#7GcliC71VVt%AeOKXt_f4B=U1}ZxK>n z(bJCmSq;A{K6r8!{pYiVNSxlNEX|HvHQO1sy|tU%mi_h&b!VgYx`pp}%ZoEa^eHLV zHBK#VmLy~PTiAj;>@7HsWAb#Cl}^&`#U!piqw*Y08~M6^g|D8}Tkkb1;BsJtR*BE~ z)?2mNj0?tADi!DNCuVc38mINgMV9t6=Q?EY#OLyNc5t)Tz3xAXX8P04HXQnjrt3I# z9!)8|NdIl^+p@w$W@hene|>whvr|rO(vtbKtIX^~ZH==ivnU4bw*Bm!cM2 zaFvj&DXyBn1JP|VySx;!KPc-wB0C6|uNN+<8JR$FTgq$nWbsh&D@O8?nP5nto0D-#tbXxGb%6csVzc~ppsA=6@e zjl?@Y{Na0+78eKl8lNJ>+e)RXFt72IN{j7n>)R_h!o~G)p%Wn}6(m)HrzXp#DQBf1uo>{`6Pu6>vTx z&PJ@`^qYD?e^#K;Uj4?r#<#S*{Dnck#`m4y_oG+fPECzAFD;c@zx~7sy?S7Cf-(l4WP zx+VHi+jp6Egb}bFu3T9C4P`n{S&3w=aHc@qepjv#52~P>(p2Vb<69 zxbt4nHY(kbeba=boLc+K&-^CvCP@~i5B-YRirlYCa`MnN@1k~nvWbg(plsoFc;CK_F|tk_k8;4)C7BMOyy22tNmt~4il>JUG|C<*tPFF zHz4#9BGnc#x<|(o;U0v7yIHaQUsuFXdxxMbm(|9PF5LFk=aWPMwy4oFX~mFQ)-w3a zuh{%TWGNu7v&cm3ZC|38!OxK@G}^0ZqaP8Ek@5Pb@4f z4E8m?LgALF$w@#z;>zl(&`aDNI;7uPv0mE~9#XU`r(M%&Yjeeop_-U@JL(PZCUqQ->bjajm(g zw#~=q-$^3*6jMyWxPo?acEsC^N~KkgDv}T+@O}s`Z7!}P>Dci&=xaE_jOKDqsY88s z?_Su`4uF2d@@1{p_}0{M!J3bV6SVQ;Q|qg%gZ>)d)Q{eN`z<&hu{6?pTV-YCkxtub zo60idt9)I0$rCP9$HE-jdGwH^tk!?~!hxj*?c*%4o1=Zs#~nMwTt@T~qA7f=*TVN< zn5;LnV>pp>!AKd7J;aTx;>ikn*cVSdnhjf^(ThWevHPBulc1L`M)P}3y z>bIP+H#4L^oRR2V=ej5wjrlR{a;B@**UkUhho_;t^7<-bNC|S`Il|!xrC)I6jUgwy zO#OBOc1IEw7S&;UP({blqs`Eoely_-^x;{`u3N9Qblz z%8zKK->j6&`t?2J!~BU8o%`ugh+M}Sdw=LLS1)~evN-q6{};|Ve0eLRLo{S1C;H^M z61YmV8CAN4=$>|C-)c^$L>q1ab?BlMYG?(yjgyigAqM^jF2t1lz(4*1xF2OdN(sPE zoIYg{lE9LrXWvQb2_AE-D~>sf>f^pw5v@R?s%n-?=B;V7FH zj4KQZ|2(b$q}s2Qe#X3+ZX15sI*%afnSqoV)I|e2%mU)BT?Cj>7w1=i}(bRgP%TdJ__0 z9vs^9;=OfwjEi70uKJQO|6J~$_I~wuUj*4Q;}oOo&H{wHgb=t! z5F3x{Ei#ounW@u?{C-UR;pbjo02cw3O6Bg;k3at5wQBYCPk;K;4=R5j3<`huk&j&c z@K?V&f92uB&E-Nt6XF3yhz&)Ec-{CB9jo7L<~jG1R?qd>tAFB?N^!r?9fJ^5KV;?O z5Xt0a_ICi>qs-I*b2WJi7vpCoLzBNw6T(E?6;XQ5XSngr=JRL2_pL7=iG=ngfYawg zyB0~VXNB*s#N2SMoL%u|XJ>nkkpvr!#_N@t`|*4}e?pNVzU6aK$PiI3m!Eg#wb%aI z4L96y5C)8!Z@u-lO7)yLe*Cz;FXtB)^wu72_K;x~NalDm#46^l|EU*x$xw%~gv@5h z(3H|HsdVJU`SLFk-189aeXcqCkaf1XAX}4HNO$p>lSl&G+!cm6yYLH+#O=GX8S|$r zyNvPZ56jYEyf+7l5C4=euagcE;mpj;n-mG&ryABpB|#SksSXji99X4V7VG#*VZEL# zssWbM>OM8vCNmjWq0%BNiE*Yfcb>+Pz*qojr566k{8p$ouGBt@(l>y!%>?NlWd>$H zwruu~cr2oDDd7cCD_TRY(m0?pODGL>TJpxH(MRqLV(jv%4Kn0{ZU_Q+mGn2sS)T$S=uJL4j(n| zP{$OTS80^|eB#Off&}zT+TI4l5hC@1gw)|yfU8D6)tV_``qb=eeEFMy{m-uhH)t2J z*_$9E^0A*vC|=h!ocCw8_C8{Aa`FX=3_q)g5I@58q&1CwD2rSVn7K3oaO5hO{Y)y;C_;qs7aAz@ zcxrlj`Zv{x@yBoiH4Nc|8o0UP**D)jU2T7KYH@L-tI}M5{q=gQh|y)1WHFgd_?V8b zr{0|W?l(_En!YevK-dc{=oCeN3b89qTC$5nb}1H`l-A~?FlEr zJ2Bh!Vz+_M0PU;kcNMOWutWl9l# zcBl%oVPbOfmU6i&#zse_(b*;CN5nT)kPPvaK2(ZrwV1`VVPEHHC6iSk>&@_BN>>gt zENHy($v#KncDv`M*~AXK4gm3lXgAN8{)+pdoE*2eowyLD5f@>4Ap-lZMBDp~^aTt5 z>X%;NNi-HzF_?3{^lZi8g0n10go^Zp*+(c}Ax@!r7Yu!cnNcVfZ^3OtO5KLemlp)C zj))48zTXVldtuHhFbG)%oqDwN%s1Wyt`%)u2oj$3I zh}9-`Z?KsOpFXb|?SI{c$+!GkNbdr7S3d1(6hy2yuUYetuf{3qP(d4X4v=5^7*Y ztHibTX9Y~>WBiE9T$Yx}%(Z$SmH29QC|+w{!V4h=TcOCPNCE2@fcGJCV(Fs4x|fBZ z>>n%0Uo2cVKX#-UNd7KAMJ5O)QCAo_wf47P{C4PK$(~YB`leczE45?_lNDVivGEhO z=NameWTg&q6!}INV$)FfQu`5MZVvRo%IVYk{Gs+j4+_Fkh^$ruH@G_Fiq}(jW}o)j zmjgta%l1HLzdk&deZ&1impg3-47Mb}(O$cGaw-j&^Db=V+Gm_XaO#E#-=*Gw~m0B|=yCE&}mk<-6ZJ1u4A5+g3092(QnV-@>c}&gH1wCrGIz#iyf(PrHX9~G@U5e>Ja@{_-7BOC^G!b zAsG$^hmIUE^#E4Pe8i(i;o*lL?o7~Dkk%w^7pQqG0D{vWSX6NCVZX@gxI6J~8R zZ`$}T@89hFJs+*x89QOrpczF*A~d8pIXU^d;nbSJqF5}x$oLU)V5MAM&N26SF9*A`z%p$ z2Q~o(J!XXTIH?|UlPH}~xgM%on|uaxe(C$N1c%K-r$HBHFz4sy=JcONvG_3%^)dSkFfGJ47VDxGfLO&?uV?ok_B%P6>&{I(^wNJs z`@cwFzNxaw8# zw+|!b@{7vtk!Cn|4sd-$+(m_mq=*x=A)^h&oRfj@t@L9jWA~&^+FT3|xU4eYFZHcy zumjBIypxRVg8N{rGOEzBz$e|=@{mk~qbxRENY6F!gm*#8D^_3mdxyv0^Hawm9-&lS zVFj6R-TAd`Q(5j-|BN0ufRn~|+^RKlWdj=bJPhf{d1yX(5}FU31i8Ec>8W`ukc8wZ zyVc(eh=~!%J@pXepLY%9o_0td?^NXS`5T_~E#Eu!<D z*^Dr^2UcS26|M{C!gtlwrCa{5BVgWLj-_AM+hbh&^MQ&BE`K^+!IkAA!}?IY|LISE1`jqiHe|V622cYlaM&xo>`IZEEuwoPIN%Bw}x|n4VZ$6B~e>co^Sl)=IH$J{!d7DqzCf z$Iw0}^mLmn{Nl38LL<$-_HA!%#0ah(fNmcm9nheoL9yT-an^=mmxn7yKO^C^D!Hl` zkaNx+PhF}tLIW%I-EcJq^CzIUk!VF|rqq~gW;rh;LL5fff8BMs$m?t2A_9qU^~Zlt z{r&z0GVJ;#5#Z`xPd<<6e3rlGtx*5uS70ZgP$=92VkOb9@r{m(*|9NQn~<_?GW1N) zrd>C^1^|9LNXqnC5Q3BBh-!;%UxIA8lG*9+KoYdk`=$yV%*dk1T&8NM-?PE_Gt7B< zycy7j%I$O2vsVF6p&yZn6{1=hd0v{=@)RkixHaap9#K|*tE;O?acu0OeFFvkf|>|l zsfh3kmT4Ti12+12TLDe$wV(cDSby`MYg7ATB1w`PpYt96YHDF&0iTEd_!OR3Ml;xC zNE9NXWAa+ZbU%1AmY(^>X9`@*A#|Tzvp7O#GX+=6eWl#tL}=h%Ahuru66B8}q!>c4 z_HbmG^=7-u#}T-_75ufzeaBw_?q1!MvQH_{l4_W*;&p}Itw)s)U#z!L&_}rPZ-1*r zguZ7RdPF_`X%Vh-?dM+m@ZGTbir<6UhdvJ%6VJc-J8#oFs*_rL@WHOa8)e8SM6PS* z=!T-Jo~+j@S7uV;o1N-H&12e)`;yF}K(`saCbKWwnh| z*EM>MQkhi&WVK2ww2$FjsgytZ2aa2 z)ZYj7KKOJ`7Im1V&RNeL)#Cb_|3di~{|{U&6s~^rP_33kcscEEHY+oA z>Pym0zr81w*wp%+_TnnFt9`rXA8yv#+d}Y*JGf+ZEL=CqcfAwNb91+UI-PKWVdeTc&OLB7z@O=?5`}fC(3p)4prAie;zY$oTXq zLMA@<8+A37S3tH@O>8cgo;b!#Hd|DOxIJ-VBN-VP+1A(d&|ioqGR`H0jP0ib`pOvH z8pO<3V|>my$8q%)Z{K!O6iIUUhi`wy;YzhC(2uB39s<441M_K8R|o2X^qrR=UwEM) z;3;JHy<)Frb&mn?Z3ARDe`@VrWOT1~Lkmf-xhk$cM~*p#=#tX0aP??DU*~29g<`I^ zNO5ZZW&h&}0M=m1@{7CrTx;&3w9RG2QhTW><;=eYwh3nN1h*QY&Mg$iZh+jr9froU zpFJI!R)4yzFMoT>oZm)Vb=6Z}R92(Rqe>+%FE0yZ#1sGYPkL>{_9q2;)Sb2UwGi7| z*M;*pz2TW%C!Ew7AVFXI_Q7c)GkLkx=?=jKLgad9ZcbP%qf5vBX5cg7U4tyH{jG#b zHhtvu^Di8AZTo^vfMzfSl_CD2xxA9ki|2jwH~;8%&O2Ot!ymUMO><3C0IwL>CQRT{ zhM{R9hCms0gJngfxSga}C={MwZNJ91uYGP~-#)LpWA<>1P&1K|G*Dd(SywfS8QgEl74|Im|`Lp{)P*~gq&%{_=MdKj|axB|8aE@g;= zC`g7&iVX2MS14?o?+^!2w3$pjT`t4Vr&754?y^oopyWx?ZGQa(RDSzjB!a?u8bnMgc+_4Yb zh%@z7L^PVsn%1(`-0~&*&z?Q2w;gj?slyW+r<1j{f|#0^cs^_c&=*&E=il~T$a;(H z4wfS`4zcbLm+G`o`Gb#d+aSy2)YL6Y$5wRP8c}}4y=!aIOusP`wvh~x6x)bp2ij^{ z$5I{%c2rz@jjiW2ZC5+?`I0!kL8PpZ zn^K6KAAuy8rl~&Ow{IWV6R~s3RBklJWqy5K6iTHZfo(wLogcrjB2CP#?s~S2a_?82 zP=#r>k!hhH5$7px2lB<@^UEV6;@tdvf?e9|*n&8r%w}`lC__sj#@tyhjA;F1)ji<~ zDSE9Vd+P&DlXHjJ$21QYckDow$P=Q=Oy(FrD>1q5f$OG9PnlfcOlGP~I8uyB+YZy+ z)0vTGT5@L!)_&KILn1`j(`*(WeN-G(Bg=V3iU*Gzncfa_xqio2l(~GjyQAWMVb`x> z)H!$WUExF5GO7%G*Sc}{!!T&5XLQR8zxR8maQe-t_9M1TX7nRgDivL5REKSa=wk(1 zM|zCali&U3X%%RijnS17Atf83W0ND*r@qpfJVWhthk++VpI?Wb%c>AvH`RXJ^qMPw zZ$6BP;3My>rX2OLs&kFGCD*&eGWNVphRS!S-(ALm6xg*(zav|nolP#k>Z)z=9pYOk z;4Q5KK2w*f1n#;oJ*sl-=M_;0(RAJpJmcBV)-IIQ&h(qssyC0Sjt%!w9kvys@2=7o zVY(%=5Bb^UXL(5wJlCkmiHX-04!TR~Qi#4zaEBqzWcI;Tv3+p$F1Bxi%5q=a7;s93 zp6|-X)2JOI-O2g&8=+h4+WS2*0NnG=kPH&!D%7C-y&WU2FG;sf+ zS&KOxLN^pIH0 z=e4<9SBrLI#uDW<2`8r^ku2h_D{)o z2P(y+FEVsFVQG);OFQa@nsmr^GxyO~KJJ?996hi8WK;Ln0{ps{p3?~-8KOE=TZzgL z|MWY{d-ec+$*rK&;YOt*zUTYDf8gp62U9MTjFyxEcaLa8h*gE5^zHPrkfFU**oJwD zQ$PHQR~%kiSxHt=*#oXhv>=X;j|*ccE0bB`U!+RpA=4wBebzC<+$Y+OL-*0{2w7T& z3+cF?RVdsJLE`)o9H@Gt*T^74Fg+JIUxn*-`+MBt|3+uNLh1ioK*}C+vhEj(D z&Yy?H#g-Eu-+U+(3ZgVx8u+Vv^*g?rDSXrb33u;&@L3-A^OS|mp!kP04Y5%sFuEX}v z``d+tB{6CiXNAij7agDMo9f_t5Su}C!(u8?kDoEc%IVWpHYs*d{Mq(AHDfyKxrj;~ zf*RK_E2mVdbD~@v8K^>(`s;XGL>61247N&5kfPwgiX8Ae&dS$&_{`awQu!)BY-@)A z9)9EzD65fX^dlOD7)Zt@Lz~t$gp4$qxq+#EKYuS^?2R`-nWI655wm+y1Xqs{7B9mWaT8z)Lbn=1V`Is*2WrD z0#t@)t+yG@0d&mef;N{cB44Wsk;@H~5X0(_Aw5Klk1)m+!=>ws>&*{(J4*|Lew9xM zF@*~~jE;>79Bp1&T2epe2%sPF{`>FOVT{=vNQ&!NTeaM$5IJSmPrIc0)IR6JRw?^! zM&cSE=$wxwL+5BR?{8y|z3GFWTBIW!7cbV=5*ucV9=uVAs17gFXLbR8w8&r$^v@aS zhoo?ERX+r;08M?NbtdNC(193E*>K@G_&P!ot@-uPZ`~Yns`IMV>!Lhb6LZQReDL5w zeg5$3s(gkO&SN%H`r*2KKR9<-ETp3(zT92o3zrC5^AKH%&Nan`gU?ssGNt=@ID*+y zL&6ouMVecM{#MTJpzS}Ds1E1zivmZNN9*+j&E@menu$M9LS+4FA%dbED%Zirf(!4P z4bXMojsv{g1umQqlm8~sR&Ps-02|e+Sbq3ny&Tx_GiOBQs;hKq%qTNaiL~YdIktbP zug-yYurmZ#yW#X|Ph8T;ao2Vrdf!x`y*wQ$^1(HdWzwMjw|@PJJ^4a+zv*fW_5%g7 z&!x%j_YY?(h6s&9#BVUed0hCj-icFC{=)*A%taqcVk5)(nmn-WqNF=%31|sj(wfZu*}tS0uJ#r6 z3_REDwiODSr32kz$m@Sy%Fy0&^U8dnq^5iP@)WKr+_?3c+a-aB&9+BtqMN zXa-bpnoU)0D>!Wf@LN`O{5Jhy3GviCe}UEqbIuhu1~g53>rk-|_S?j_Mg8Q2)Heys9Md)F~n&CZVG4YvmbZcLCg>k708sB&9 zIu{Pzm20!v)aNgQy^zl<@>^VlLa`{?5fW64uwCGs@zfOZnMOf1BKU^GM49Ej^c>-2MBFV#saY0)3bEE16oaw$Cj}5{;EdKv4%u$7 zYjD#bs}M15B?hi~!iCv^=>1T=i_K$xXe>CB%Rb&r9kk#F#sn}9Yp|ZEV|8ofG7J#O!I^gHi2CD9W3J(Or^LwK zdSsIz4eNugT)5854(CAflwB}L;InF!8lpbZ5K~iAFw!Q%6DL}e-*Iik3FS{@qS9{N zXIhh(k%Gnt3BV3My1VhX=YI(xydEOg%WT$}?z(B5nY2|mIE$j7MCeP;t~kA^N=JyU zrfkUYe0wkjVP+pzidCVUiI8s;MWfLWGEE0ch@BN+Vmd<3WcJkoyThZi80;{a3r)7V z9AwKNdCG1WBorYo;pEYJqluHUp;A2~%t8-m=UQ*9kU5B4t+G2-3N^;2jB(njaBa5V z`^pg^*Lk@*wo43tLUc)Qrw=0Xru)CUUsC<{G7yHwP_00&m~?cOcVC_mzzcisv3M~eo%b_si9)a_d8QD-hI zE4F=7Awb)P&-csaaY+uUaB!JTgG4OZZbnu343HRA7`lGp$VGxZRnDly#l=OvplCrm z-&;@(OUEyakIS^t=<{XcIOLx8lx~0CX2JOcY2)Gi$=)={mb>P!u z$>&?&QCV6k=t=hYq|Yi-dH??X5?4jP_10TWl%Q*c1r-=NCB~}D@;qs`?kfc+VCeNr z1o2CyG# znj9&YJ3kN=;=;m0kHuhZebj&9l2K@MaH?O(jOVG_;}S+3A#y!gprCQk4js6xy?H$W0m3QqFj z`&ADieI2^f4&iN;@W?dnidZYY^+>HqSB8h`4SyVQgh-2Rwo(P~&`@f`2X6m|) zg_PYA9T9pkuHGb+kG(Z<1~sY`B0dk)&0O-N;%wTe4m)Ss3UPY6wW?FKR?^q%g}N-4 z0q*A0RB*AY>lmN^&Mp-U^T!gt*WgT_M-JaDp+ zHpLi>1CE5P7n9VFL$>EK(x%}i~|nz8M~f|t3z|9OZEkTb5^IbXtJH9(EI2T81$sc5~^Y6>)&C-m7x7_Ur-)#YWm(EfNm>O*UkxvSWLEOdOOXcoKbcE5zg-B&q{P@!h-i7xPhRSTn(=Tzv6-`Egku0zT(C&?odA5~aeI`KuY*nBDfJCoQfWJfTcx8xs1f zh%OVB!&dk@d=q+YB}j?b&dW6t>IzTG%BZ2zv!41DASH!f(7P%R9Xiw*SlPAfsS-c7 z2QxEDT~sA{1z zn|=@m4K->E|M;;F-8GsdGM8&9M0EP1TX-)zMGhQ*CFMih#J3GQccPh37yF8B;1fQb zn#$aCuB}|+>JVWq{{`Tj-<8#Tb`6BsVaz@kCq$01rZR1iuDon>k2CwY(KM2`kgz!R z2d^-dlQl9-YT&w~r%&T--PZoX0^ouGHu5-WTQTB^haOl`BbIl=fYGHAsoIZqLBw>D zUExhykj+ZzDuyIQXeCtqfp1ZRDL28OF+VqV*8^Yqmz4@WEX0~#>{sH%fmtH8Cb~`i$Yn<`c0K3Yg(f= zp_NlAH`-Dh4?pn09k2};{ckUG&)4h6kL2qrLR$ggvs!E=X!ec&5EpVNzkcw(L&S-r zM?YAvDRr0#U6@L4LvKsPf*hZi5KC&5d2ZLP)}Tsz+6|e9$Z0jZtFY@4K89nE6_TXN zjUzbYKC#SX8~mFpuHPpk!cb6U#SxxPj}R73BP(1F$)zAU<;q=mOfix|90w*hYu`tb zLi-VwDb-ZOw@2B`tBM$ll~O0p7>w!(zN%U2#n=nj|uY1Y}Px=%P9H*-#(gBo!yZm z>fH6$!*$nPrzd4ID$xeL1A<)rGQ`48!6rdhN8@WFPe53o5P)7|j_aB2@G;;_*-jb) zg1$OedRvW{QE{6n2|?xxIa4XQ-rZ~kK(G7S462yrzv}f9<(E41_&1hMojf`4N!kdUmst7_x3)_xd;PUB9hMAS^O0Rlw*t^ngRNp-h*W<0 zcW85YJ1}?t{N11b`@cV#tD{0}srm8oahy7UZefkb)!)9A-SVo11^LiJ4~59k2G>e) zF5+Vl3$Ak!j+FJaCyqHBgKi&UL=U_vaK1W@g!)yB{U}Kj&(1Ss#?yS%aat_kfQlhK z+UMG&NbfY@po;p_i#y$+ghvwfuOIW`J0|MWxKGLV9()oO76SHJqfBxxkRE!rTXWXH#P^sdaALAr{IJD_7e-0a`41mHf9~8s-&*MudU6ED-}}?ui>mgk8aOk} z9QWhX>J;Y!5h8M`tYg3b8rUwJI(6#gU%c&YiV%fTho}&%vRc8nR3>0!eZBKbaD-WT zfnmmeWz!8#zu9+Cq+_{Hdt=+6DcE78FCv2{pla+TMDDh8u=}aaAmpQP`5Y0hL5`Tb z`T z@MBBgc;ul!-!7GigDX9x7y|cexkk!0`3#^c5q+QI?|Z|x_ze-L4$sfd-jkGt#7~XZ z)blA8@+shVNTJndjVSlW*vLqypbKgs4b9~UlbNHh&NV&K44#qZnAE-3Wp-=r5(V?2 zdH{9~n7toEm@#mfrPO>i`y8_RIHIS2h_C`Rc_-pCu2g95%(c#4MYH*|+L{s&affO{8CqDEG+eU_nxw$#`^xu8_4;rg=nW#=HSFOrsvn2AByew?Al>MqQm&Ye3 z+rRo+XuqWrVwD~f85kL&?B-+66li;M&Rp)K+pES{ zQ#zIyV|%)obWE5eiBX5HYx=G#b1Ol!8NbiGt2U*t8HI=_)(WzoM?Yd-DUb@_z)I3c zn#y|J%F_i3_g-~Ph^AXJ8fUfRnBs>4Sf ze)vOQ_`6S@NJf&Dxjd#iE~Vtrhlm3z6JulAC!A|G)7`u0waI+1J4ySF2*>#@sLtR{ z$O1|JykRAH-APX%#4QlZ!G2V1pVe==)(xj-vw0xC={vDzw98cQ2P4JLz$S6<;K9`F z*Ol2kHC24tP>W=0p@qY~{FW*;-*gn#M{6*JWG(_v)TDhi#y#F6Np)zwAN z8%D25vhPxpA#fvC+=Fo`NmuVR$cL78_{$zp*%Z)ZK7018*r!Y`REcOd{6Sixn$T26cAr&960^o4s)o;dc{N48^LB1Q3~-vZ-*`qSOhT1*E?&0~7b4j*$4 zplg1inPyXX-nB6K!C%OxShonM4v!x@_MtD_dB=$nAtd^EaYZ5=P{BEf1=WG!^!ky~ ziuNBq-j0XraPQu|X+#z=ElTzbtZ*R(lcK%lUPz#3@)I11_Psc}W3ok1Rp_eZKGP@$ zp~>5nM7ilQG@gCD*@tWzrVz(G11d4-6wa8;XWJvph+5lh)_z04_~-QtqBiI2W{6)`?&Be*Xe~Pwqw;AAJ9}jd-CL; zfBw^-I+0hdi;)o_E9+7{FEzRhB|QhRTCbE1VQj!LD&CR(+mnn4tvk&07i)vuy z!|LqIdr}gSDVVx#yQH`|xldr^Ie&~7^hQ#GlT27@UT1~vKh${yR3N7$U1aL>NBYWQ z!WVNNHMxRY7kj$^a~(})bMpSVIZ0$>?8kca%Se=OifK4)Ne;zB;cYDE++C?LI;dXeuj3f9l=8{>$%F!~alE>T)D0%A8X432ew_AxSIibt%Ti04HPD zr>0~{`Gl`j{^9*k{v!E^{I+AYQ>E!aCJMDj0ErZ4ZL)OFDjyQ^(7?SdZ1`sgoF z2xT?U84gu=A1p9z(=CYn<)mRL;KBuic9}eW2L90M~@!W zJ4cQj0o+%n7Tlm3&iOfjrST29rhHFp8yLR^W2%8IsRot^Xy%fUoUB*Vq#=b=PxAD! zlS>bO?Q3rx86Ew@r#|(mkjv%ZVgk)r{o0@UlPeq0eBgvujm@v0)W=Ae>B%_~XSXK2 z+|!=|xu+h|Y2?4<+8sfH21tevKm0H}^p!9D{~Ai6i$)`bG@sUm@)^o{nuB~=C>2vt zZOUDH3vzirg%R}(^}@d@-ogzx$k)8)H7T>8gYAUMEFF{|@grg-eOp&*bW71OtBF`} znaxjhg=luDS<;tU1aPZILE_nAH=`PLI^^L|a6KCxt z#Isl4eoRHUBG@)5xc2h|CqE8}tqu`pf-CoaXb-a7FA2~yUKTP8yy;0`N1E+pEguyFc}SzB?4Ed%-u=jP^4{oY%D@xSB1R+`JD zP4$Rw8^DUMqI?kOthwm$|-0`6g-JXb|8r%}C1vl#Lw^LMS)U3Bgm$B0- z7FH#k2N-Lc%V&1)7WldzenW*BSw`6PfpxEt8q! zIJ$g~G9n!r5k3oC<~1F>F=04gio&ihzU`w{X>9`ZRc!libQQq%C8A2K?b)MLVpY~A zCM14Npj;`*sqr+$eI&zrEhlB6nI^K>M5Tytt|aZLIA6Q#b2vBgw{gNYz85{j=76u} z;k`U_^5na|__0xElvk z_IFmuHj}X>n#?XGLUT+_!Rqq%<(IQ_=1kuh*tOHVQ++{}NM*=)mkO?uAxT*yB7 z`pkadn{E^7OA)!etqwUehx=8WN!B)N>LGwY(fDm9$30 zMyT3inv|7F6p2=es2Kmx|NO&`o4OENvsYL2_0dk3elw)J7#tk$;KIt_P+Fl=i>RuH>y00pOG<* zyYp{fE9vPrArr?}sva|`O@#Wq@>L03HxE@JoCTOrDiPmpRsqwJB1EbDQ?-0eH$G%T z+03V?67y*er{Kt>Atd?}|NQrU``wH4^MC!wBaaM8u@B%q!x81hxw()2&)@pBcQxw` z+1zNR6};EzKU9ue^c^-E1vS!KYL?XK@~G;lE`Q2siYuQl<5Zg~uhhOn>kE4Vm0^1@ zMIVF5a`3>eL!G#4=e=FFijNFkGc2B@NGKW7eHS`meLN8AY^bM=%6vh>#iYL#9h^@= zwy&kvUuDlfw6{Gm;6llKjsv08Ar7qQOmR>J&1T%+J>42y8E>mZp$ukJiKA&bMU{v` z5zRI9B}%0Z6QvT73{ypp81EDB|I6RrSYLnW!3Q54n$H=4X7U3MJOIiBe(;0u{h$AT zJl9CDqp3?#7s_`iwC}J{&!zYpWw}^X&!d<&RcAGOrmB1z_4IO`l2V7KPvZg}UC)2- z-o2u2GTSX6D`;zhk%_{G1YHiSOGpp`^h_&zvZ1rM1673xx~vix){7WJAd9Z@(a9j- z_?;q`eB`qK^@c@oYhE_B*y~7)<`0Px&rPYpm0DXR;%5b>#>Z2m5@oZPqA#(iRAM2o z23(-f6a~=B-=t|XJ#qB01$A^v`I|jqi=P+;p<@oXAIOp)e|N9;9_=%J1 z9;QkaA`zx-zoGUWHuC9|>WrF-{P1H^je0r7!4!N(%{_b4yi$j_kOQhi^c~uRDQdtg zriS~#N(MBW)s=tgT(P%07Bh>&H`nky5S>BG*V#B*j9$ zkv7n5F4S>~O%tcu;CsuB>S&5nZ6+rdq*9sEd@2CbZYx3!G?&$17G>xn(4H2OgqfdE?@+D3xUt&cTlsPTSX^Q6BXc?MXB`VWdRFzi| z=f{bL9(AUqc=qgBT$n(=bumN><_#2_s-(&Ao$q|jF{KPO3FeYCS4JXKosA;9MAT$c zsl#GH4X)G+Ep=Efr?~DRjw~o}XyTkXY}8Gqavnea=*kEF^iN;6 zytMc?>+9>904~O|VLJ`@`A~B&Ru&ij8p-gn#~xZiWoYhSqV{vSkre$9kQSOvHL{Gp z!$z@|PNt*H@zK!~-&@9!RHWzrCOu=6l(g zA)n!sc*L1CnW?Gl8+GQcxy}3Hsm$jFzE;-EDFvf6V|w(F zuP?v*SAO+Z&YwN~$9lDAH3E%h;&!gOy;Fd{8Gk$81H2crXHNa$@4w}j-il<1K0_o! z6{a<+oRl>g>S;DgeHU>OHjFf;b5n9d&pTX|m+#--T-NgrCnQe7#y=!OqYSM<6nh&B zN~)Z#)CnWeCBh=T<+>aJ#hrN z)+SmsmnZ-E*X_@Z`f>x3i^~b%iq|O#l48SJ38!3MNGGnmQld&Mmnw4Vz*ssZ#+!-^ zQ(T}lDa$4{=1RVqDjH1d5`BqEA#OBeQ<>08)##5@{n^`o_m59Me*A4JtbU^fO=uih zeX;;mA&w&BZ&$*4<>*5X{PG|Fw_p9khG?`DA&%6eiCofO(Mvb8c`0REIe45IwVc5eLM*_p-i21=02$B79vv2kF^%rLpJXcYazVo=*!riA`e{ zaz8)woVUgX_9;A$EV)&5HvI}sDOKAQP_3n6B%cS_P~*+zM5G`^ z0!@K$x+*8lo#j*9{`a>j4h25A>*DV24vTy7;_d~CQ&`;H-EArEQrw;5?q1yCx8M7( zxbq+nGMUUIlX*{GC+A#Og!Od?p}X4jA!FX>o8Q^^ctF6Q`%;%Gi3$@lvrP$?fPnX` z&Nu<~zenMh<09`y5}ZPgC`i*g!sh2#&nHB>TU#G#fjo)L$Wkd;5WUwapzIuK)xEO7 zxh*aEOpScfN+?HP{v|c>hNuz)??P~bG4JwE6L%Y#$7nwmmO6j%&LFFQUFXM3DzBP@ zA$Lr0TusomOU*=Hp8rGi>ig0K)`jLl(j0N@FFv0|J9{NmM@wg_?Tm&IX5s?31lO~O zS-3PLrNzQ8Wil2DBx6~%{+r#8?`6_7)JsZHZ3!$}>a-%6Zam3_@>6-DtfT>N*HYZa z=I{IRb!t@y+Dm^E6J1|fYr%(^zZ0rzOP&R~jcKHmE6?J&Tw_w**l9J~wY_>58dS41 zi*0>gr+ZFfI6EHS1e5+t{Pzn6!I_IF7g6k{|Aea?F~;Zn&fB@M|32&Hqbw~ce|sU0 z$(*8^;T}2i6z4?TzIugn{xrISRfRzqB{lbt5=9Gqr4)VBYI;qSZ1^TmOPY-u&AoN7 z;Y~hAiq%40j%cMs3ATefeo$=@_wZ(8?ABfTNy5QP5yQ-n#?dz_8GQ06)G$20gkW0dt`qvdl&J~6Aeh3hW-j2eue@aC*ZvIQ%_NpO}y_+8+> zspINHCE(h}>9zN?PeN-0U5o=F7lfLWIm3~2AI>c4YfW5A;i5&h0n^P%rDlz$+sFP@ zIFacBr6U-o?Zzh}qjMfa8x^)J{N8|c1n#HB7? z)3~urHG1s}+UAtviP{deM_#Xxn3{^I6|NFea z{}<~(M$qo+Y@>rKL(O2CEPK_-36Y~$_2(LYL&u?hwFS~oO-)jlV;`wxkI;{^>Qrba zY0?ii2Hok5b2DK3#|gf^(an0i+dWd@5@p2B8ZO@b{s`DB5CU)alWGvG zSxjD8M{hmhx;%Trl(aa-pF2&5-W2{)O_7EGI9W<8qCqvPSh)Qnt|p){^y zrnSLIDIC#CiBxorgk`L}h>}sJ3(KI9){M|&K6D|`Q`3Rx-sRu&xE0UBci3*xSLHWS zbkz)2%7o&_lp@FYn5Px_kTrfAp3WUodjMn(0^!$+MpKYk8rL#^#yAyagHuot?rT44D@hFqWEDL-4z&GZXylK4&#HKAACKt^LX5be2_}GJ~Dgy{~u+S6N+$ zi!G(x&lMC%FD9s!Gp~;5Wtf6UnCkn)`bkH>glafJnn*fv3NU`Eh&#sRou$ zpN-ZCc`YJ_($VQ=mpbZiYXsx>yAyK{f1|7^ZVR;9JkdP+{p6EQG=8KMgD7mfNNi~q zW7WNqGa{t?G_?d%(*%J3DmLml*I?U*SNReVi77D&S%62kDxcVRFen^0BA^_AV4+9( z1#n#uHy<6Tv0QpRY9^~A1tb3(tYy*#?y<`OP^1E-SE^ek4*SYE;ufvhGe_%{LgjT0 zE05;cxxbmht9huX@G6`-?!ekpNv0S^2GgZG`FPdF-aD7MI&Hfe$CI#o#NtU{eZpl6 z-khpb{AtuTL8QIuJR3it`AT_r@J@o>py4j?9NA(W|c*Z{!N{gn-XGT0z6zEp6@ zm(rb*9`pq&0h8suq=RCDT+4QBSuSL?RJ9H^r~Mulde+^RYJ&j70iUZ&Jx}$)VMYd| zB!12GWSB|pRTzAT!2{OKa_LWD!%t<3AGur0x$yJy(;t%112s<2&qFUSUAIS5euq~g zcb{+Em<24puO#LNyl{6ohd@Z2p&MghSsQ1 zq{dE8jF{QJo^RYnYC0Xqo2)sN$GJ!mJaWb|5vi^XF0Bkvr-vD*a$E5HwH6qb7ULPfjW)LHKILNOg?`jo6C7DhbN<|aD}u^IoZ3q zNq`X0ujv(NWn--;-PX^@`ten%_%@~4OYAx3tUYI(+z z9eQ#B3&(#+H{a1!C+j5K^OR2sg<bpcNP zm5F})hC23KQq}JM=Ln>>vk3w()r38F(HqK_c_>@hwkp!}3LeX?TTWB>jl%q%#SMRv zAD`=vq;Vk(n#4jHR1hbS?x$(AR;b9W0Jey^ zx|Md4t-04#aDcPmIr%aS6VGMGl}Ohh(pu{x4D$h8-P3mc)6n&vbsmGdfxPxoGPz=k zdbK7F`{7-3_9~DPqph9LQ`>CXjxSSn{4C*+VM-UfO_QA_5l~u{T;eL$EaG4C9>tAA z6Hq|x(a-r&rT=;FuynE7a$-1L3mkDC%+Z{#gSbtw9>d^GqGNoX>3Lvi~h9f0bu7m}XV> znY*peL z6={ymOLw1K+!`dstyRSK)NZVi08rL}mu5Ri^`3C&6)8Bn*%@Q=ayc>%*ryo5BULZE zY9wMd8fGpn=}`;f)d<16xc!M%OF#l7@@r7~L2^@LoGueQKU1&?%Cv6w4SUJim-@>< zkCuJh7J8aUD5Un_QUEsYx1&qp)7IuPSjzj)0hyX2g+mdQppe5pHijP1DPHS>=!~vR z!WRNV*Zz~w*)(g&fdhoNjH=9b#4q=ntEz?gS9tzc4O*o;g;&w3S2wKWU9TBOhX75W z_^p_Ap=b0cv7L59afU*&fbXz&x#Si$lG{cJis}3!8^blE67;eT8Fw@FuvbhTx43@l zdZe+%m&lqvaMfa}rIL5>Cmp3(8bDfaqIL(Qm8;nZ3mDQB>yi8=s!_ALV}=xN>7*h5 z{=N5Cxca8bx$E)#zL$Q?zQZ&$Rp0)9#o#YarN9%03E#D=Tg289ey)=Kc zS5Yfq^EV3_24>ArA}w9zllQ&-lmaOJ+dFWhqzB*i=v9qE6Uc-28RryhR)k|<==NTi zli9QFmh~Dbgv0Y-ARvjXktYHu%Y(CJq~-Pe2>v_*&74PbOT(QxBOgp~S$|1s`aSH=@LOfpULr^_1B@Fdwe=!*W9BvoEt*>yj*U?>AGk5bOgHS0k z3urC8nJrngjD*eD1|2=*sm0<$MmU6=KDlc`bGYuuganw0nTOo?LNJ$TCeCy&2=#CZ zXmzqHt=oI)^0OP7XHmDr$t3!ZEMed=F zIn3m~E6dW1d23z4s49kol{ad4#GH2M_tJ%BSbVmmw%FP3R9%Pk*TWl1*O4Q_9;RbY zolr#PPwEleKTQEUZ8CdqOE4wmR}#aZg9(!?ayYM}b}SaP(|_|l-pTZIS{C4-Cr5NV z6}BD26JUE>ad_4C3}n)nhiXa%k_VKGbeKxZ9TU5J=Fh<0grbVnE{UV*M)kJs3FSq7 zd~-^6%!BJAa+IuNF{O#Yt>8kATCN0g{$@Ef6&0IZ+3I3VnI?cNRbjS>v6cq|m}GeY z6k#%%=h%w+_N1keM2t!MVN+;_xI)pzbDgmjWQ=a#rM;9XSA+Mx_n?*VDOH})slme} zl2QLi&%ZBIKz}jd+0vcTp|Y@&V!xfitWH-Fk7`K0r!JC32GSExl@wFw_c~Vz==Uxu zq&3{L=18RQ;3`L{6KVhwWR5Nkso?V`G6gy@1sTKvq}Qk(=p_kB+1>6`@U)_yNbn24 zev!C~AS07F%_IBik{XmzcKnr92&>1?vH^{8d)eZ@_dfyDa7Pp0rcMX}0+nd(kx-6D zH8q6GovH-8d4S=m{I5LQsowmB{Sd6y2qSo;=)fuWKBi*5FNe*tOSaQ2v5C zPOtkWDIIlv-%WE}YE%L57g~fFpwPh24j{scd~(~HNw<#WQkb7dHJDe8spp+BZk2uC zDL&hn&W&#^551W^^-ONVu|Ic!>Yhpz`TXu33VYHU(RFWfb^Z8OkL-mVdMuXRrT&c0 ziS)xt{h}t0ka(>bYKrss5k>+S7#b#~2VGyXg@Zf# zTNnZCW)GdV>OZ)$xVR6S9S9Mhj2@p>e%n|^zm1BL_i8MCi)=G@@DrB5!Lf+pfm5E= zU0WX6>04X$rmWz_zNaUne8Ic7^NTS!t4VDHIOhUb(0;K-AM1Q3b628R^gzK?dC0d3rCjB0kB_$aJyXdnzw9SHO=Y zxdN_XZXo$zQnk%o6Z}_4oht@X#VhuQeL;pWflBPS!xMKK32zxlyR$lf|IQbPXZ)8U zBwPa@f&LzH$c$ZthzdZQy^n4?x(ad9Tp^aEQYQ1dukj|FLMNPMvT|uJcK^)_L~=LbXE})%#gR+->OwK z?XzV0LsGT}kU0|uAz{#P(aw!VSbBdqu1LVb0%p)3luSr*6@6`UDLDX6USnAAk41)6 zTH7*|XyL{rsz*nfXHu@R>eyr7GA9u#sb$Xw4WEAS*lAU0W#t|wHowKKPB?xZREr8} z_y1LT>vtkAg09v|S=C@b_X}!$3fkq)7Rm`)E!1VYEwVo4J+%#oO%A}8Rkv*w0&8bH z|DZI~sBB&z`6DM8%jN#;5fK6Jk8S&z3)@q$bZ>N%q5~npRrtU<2Ux{Yc(6U_)A0ak z4c4Yt-Gz~xy%Z7DO(AA&gxHVk9ELxlArxFU`gDJpoE?O;-|iBKZZ{jh+T&X=L`iD& zAPdd9?8D92Nrd_1$Bb_fvp8KEOiwm$#Ls!@QnZV&M0o|Ay zV9@Y9V3gnwk84#-9GhD>FslvA`&CmQ<4~O8xF02|D`#Z2#)AeT)|IHCv2-;J(j!;l zEBhFt_hpkR=iC@Tq%onL>d`}zWQ6cSJ3f`u|^4$%OBR*-O3dA zy=Z%6N;bBR?r@Ix@BF#~H4EUCO18>!b&`=#L``z7x~pV&T;`mgRD`2A^7ptV%VB`~ zRhj>LI%Vbf#Fub0FYsIkqGmiB_MF?g83QF9{cgR9?GJ)7@;;0=D@*Zr&WJR1uA(^M zkJjEe9W4)P%q4Z^C0Z$$%4{A+w=o9h;;N&RH3w{N{BX;z^nL7c&6F^ei~?w-mG<@C zxE9(GTU##uZ3&e8^;mgBHCp8(HEEf`1??Xlir%(yjsxFF)>zsFFv$rwt%tDhU9BP& zsJq9rr*W&WVw2Mfip{GzDm1<+AC%v~u&D54 z6{e320kvY@x#kI^ep z(eP(Mb#R;pqhRp$y1v}#bgKymi~geJ|KCI(==h+JX*$Vu>^pi9x=+61!8ob^aFwAv zw6Pa2rQ2%^5y^Bs0K(2E@r$CJ%Egf_;J&+2y|Ct}7h>ry2zSw}7`%^3GBy99n6O`Y z!+eQIF*!CY6g!5M#Cl4dOO#GBdXeKnE>qryz1{#_y767gHx;M^LEk! z>)v`*be|?HWj$iyTfp2=rBSUC637B}Ov^+Opu>*f4Au;KRh!mg9#_aWvQZr8w(wc4Ut<^x#=_7R2XS{3QPs4z;oON* zH^?xA+rp;0#2v$+;)-~-#mQK`w(u3bB{z^6R(ERHatzHxb1y&PD1n<3Dy4VnQ<1={m3F@GjDXLSaQi<%o+g;N{ zowA@^kT$A+d}^wNlbZ`P>&D^+;z4!FP_e9pC8nES1>Fh?8rxc1*H!{ zYJ%jFBEw9t;Gh9K#r?#VE5GBMPo!qtHKo{$Tu=>m43Mih;^<#fPrq&c&Qk{GE@ZNp zuMp*gm6^%fbl_>v&JG$cZ_qEnSRRFamtA?~j~3ynTx=ww331v2{qb+R-^ihKQIT{@ zKEO~bnT}>T@7CUPh$cso!9r({*D-lj@}_^##06t@Y$$Y{TbOyeqJ~2JjuHY19=Rz< zBsQeq^HK^;nzr^6GD4D|Yl4u$wnW%}8~-swWE;=drRzit!I;1_3I>Qrx~28pI54!( z9@zQS*zjgw#XC~}d&5Rm{+4kYgw!A6nX$}L{{#2N`Zlxw6Q?=1v$?3xm6x0$R!!7_ zBiVstL0_m0!sr^}{O)IrAB$oN%5`gqYly-B5o;Nmvh-%iTPYcpl$c9UX!&WAd47 zHxfuS16py@YKSqS7#WeKOe_AL{=LfhJ07-piZ`{m_6k?>PvA&K1|*WZK)IFgoADdc z03MNtj89fm+Vs*YcB9W&BggmO6Ge@(0cVA``ZK~8a3F-RL*OMW1cSQ@Lj&ejnmFb9 zdt-R#Kle%u5DfhNk~)Tb#Of`*ZxB)7rl%9I}{cE{1-QxA957X zs@-aqOVgL$|NiqQTSt6v7x(-kG9Q&RQfH`hB!rnqAtj|xjodKkCKnD=+fCFSg#h5F z$+Y~3Tr7ZlO}Ol&zd}N4%lF3J30Jqu!!aIp)?ny~Qh;{)HOO3M!!)Ob0;RqwU!Qh? zQ7HP|A~R%F`l?5=!>6WxHSTDWTecU~bU4>P@$fZTT?-lRBx)|MNGXvr$vml9`ka}2 zKiVGd2;O2&TMFZ5KLq76cD(MWIO*mGyz$y+3?QzD{qZY6nHiGzs z_ORU*<(FLTVHFJ#Q=L1_}dicShl3G9J9DZjpa*S2j@a@!N347Duu)W5f207oj zj*)rrg0b`LKL#Lftiqsgnak?PJEv)JO@eSwHx^qzAKeOCG`l11!}fNel8m(FRE&Cw zgWWgp&-pOj2QPqRqqQ|?C2H|3LaQ_aAhkF|;`l!oeSOL48M=wB+)EQsF);RfN(}z%92Uj6&f{c7jXk?G;Dp|cm%5&wgNp_ zZLBOH#qWX!Tm-I3)rL#WL`P^n>KRkJy8o!e-a01c>bPImiyo2MyT!3kbz9n{YUP*}W4= z(=F>;A|L}jz|7Fw$r0?5IdLy=*>KJ1Spn#$QO@{tMZTA(4T4}?M=ri#g4Fyi9Sbsy zt&=RMCO8WN*59Km^6>yoNBDCkoyTweQNJvi-@p7!M5*8J(y_s6iQ|viQICTO$(x5| z32JjX_gM|5W05{q_w80RSTdU{V9*elt0N+Rq-t#ySsYKPfB|}}yGv%?EuT~JpZ41N zWUMl+`_v9(#K##0bhUb!P)JX<1so>#>hADXsh!EHRJ^~tJ@s?~QR9WYZPPfs?!_Wn zbxF*gG7LK!38GKVyDkNU=?W3iwaERkyEz%`D@4doe^+VP8SiZhd%XL<^3VJh*}c_K z#+o%D>@b>Lb0p@wEt8#wIKvUhl|-rYwu70nh%^%jY8~iJnPiYAO)s}dpI!t-i8JKF z75U~@(r8-9>||URxPFL8f$F>(dLzak7#$v-kq*c-i_}= z4P!$H;&*TSC4tLGyR2RrxI~>3=Xpu(EPSS&-o#R!FifSBno&4VD$?J;AZcqdM7Ai7mtXS@46J%y!Obj||#6qGvwN!?0F zA6h7iB*PRA0(mu|*=^&rWS$Fe@Fe=T=*YvHs5;*BJF^`H!M~HU(@v+#-?6F;jTME| z%J!%-@A!7l!cZ=lB@%1eSZYLBjO>lxnjTT*2wXMM&>erjV`g5pgFf~g;XwCCK9L2h z+c4CGC(C%THzDX|OEdL|BQrT2BTC9K_eNdn(N;VhY9X*@wt9sdwe_CvOBO`9aQe-ahaF?;_eP4$8|A1QRaC+vY>mT^D z;%&0&lCt<^$617jxpH#t)-?$Pe!H?m*uJ>0q@Q`UKMNB~=cN71kuUtDv`zP;!&JFl zxm5&}UI}ZFPzWGkh_wj+o3+Xz38V>WDy~@PbC}k}yxQ?7xEg7$fLKs{W=*4Sorl5? z()BxncI*CjeHy)AyIH;AjwKB^1`WB5hNgjVmq=MQkB#IRs{CictFHg zb8DvyyM^dY6y4Q#=koTj%p*99yU4*!uvskUAwAlDGKS9|7KB|mn&zr<8%=W`C9M3Sg~c? zYU69&Zz@lif7uxtOeoE1k4i;|Q0;Ga=P2tl7?8f_ZaGkt()n4*@cOHEK5@dB&JnRs z15NP1SJJzr>5yI&`j@u|6>M^P2C{Yi9ZZ=h^oDZbwg@YHJKt8iQAZy68^%{sugB@2 zEGk8oY$U1v8MDk=%Vp7Kmk2Sw*zNP*BG5?m>^i=gyh<%(Ge;&SEB#k5ILF|| z#8CmX^N#A+l&Iq)n=OqkY$wkELXo{tJsx zj8)iuf?B!DS|w=cx`OS`0NzX$xO^-TYIc=a=wJ#Oc+RD=#R*Nrgi6MsbKZcq;TAxH zdp$To*|~tAQV%7swlPVD-r71w4T9+97xKb?`$cM+ME(-KEgFoN^CbCs{NIEGDmapf zL?4U+l>M2NZx9o&KqhB|&WF&ORHUFacQbp&(pT!zLMU=m3UN<*B$TrH>ENG?^rtD8 zzWzZ?pWzPyQ+MRrN2)zzi!M}i_aLzpl=Sz3MkZw&5%i9|9Hmw>c%;OG-s;zd9}G2& zKi*kAbEe>x6T(LlSIi|-Ai!B*-TXcwd%PKVor}bAODne~Fbe9#9n9&P&=5T`E^B?~ z)hfWFGmH%qb|11}S$kc_&Y~r9KKb34>K_L6%<7D^-PbXZVTOF1QD`=$G0=@S39<|F zef=f-d2Dr&O`+`P;@_xBOlJKwQ^#*r)Z>#=LmUh*J7eGlixno=gX8s8<(nQ)pvW0? z3wp4hKcXm0$Yb6HGCS8`C?$Uu@kwfw$|Lh)gz<0^|8)ZhF*)7+4;yFoT*S|Y@DdoR{xd1Ac%r;da$$~!${k0TsewCD-&(Q_2dbH z$A1Y?&|P_!JLZu$qu}-0zzgkID&Q-ys~JeAZfk8(5B+EM2`Q^iDL*g{1!z#?vg84@ zveDooXcxhM9IG>om#%5owMCtNt$b5RX?Ah*nzA3900V>Iz|uSMwfYK zCk+e<<(U10)T>cBqELMAK2Y(aqDR5UlxVOwsL$aPyO~(o0OHJ1{kVBZV#0|CG*rrC;~pjiXrjxu^i;r7E3iB@RM#G!Tm73C?pY{&-=FBs#)x5S0BPF^EL5l zM(Ri9;nml^Z^-P4@PSY^wqiMT-1YO4q@I z*<5{{?!9%HLd};nj_4-B?4`Dn)??sbgH8$pM`4d3J$w2A|2wHqT~Z~t-IP}{ug9{s zs2P1^?_4`E_7eAsxOBevzOo;tdjkXa^wz(@4lOt1$i_;=G$K0S35$EBg0^H4j2Ef? z=W*lr#8SBctB%D&KA#W^j^P=#9s>H?Z#1Jt4fax<{$40z!8j-jMs@ym-i9^=LS8xn7Nc)6$j zEAxbF`kRH_7^&6}`pF7SySjOye&7-k{ z_W!o|k0k&86KPGhN{wZNS2G`pAk!q1XnqF8-hXKm_tTk<{fqdG!H=*5Ef%$2kcV?$)){zF7liWNycK7l;T>uxC* zo`!1~_xAL)L~*k{W#FetvMyOu3x_EgOEwntCHC_h>y_72PM!-W+J@^L5Q>f<-U;RJ z3WxbOw6@L(r^13_p+@YOpu>MpOm4mDF4c}|#a(D%YFImSZUeOJhLf$N-(!og>&b`} zvL*bM;>q+&--O?K!AH3LEnZ1{)(t9)cfP)|Assv3*?U!9%v0PS>e}u~SG{T=na5KAb12M)P|%5EiklMOQtt z%?X{4mu{dPtGE3U;2RiyfL5c%N6hDSvr~7XqnJjUnD%h{_p3^Hv3C)n;+M@VnCk-J zxcAvI3T2nJWb`CS?B+}+$>O@4;(Dx`NywngPey@)%dgP@uGjWJNoe1>z4ZhgAqAc! z-hoP)G6~IlxeC#1R!mF_+^d(no!U2nmhz%;(5|NB$Pf5`Sqb_vIY6N`EijY6kPzo&n7p5}%Sns2(< z2xlmiBx>3r>&3@VLwW*g-L|@{{pJfB_xh z($;_d92jJkB_XVoNbT8w^`Y`Ix8>NiZPaH%krJ+(3Gp;S+64&l_z58ftUG%641>kqM5c@h>3FLldwcxh(J9jwdLawp8`~lG zwDR~m2Ht4U&l$ew7usU5;FW`eX7JWAr7odLyq|HHBA{6$4L5VGM%*q9p9#fQGZ4-^EdtC#Fu50KD-t1U~hElY`Zir#9 zd;=vxzmjAX&9;-Nmi`%BdqSyQJ|%3EA}K@*#X(-Ly1beteOkbjjmqLA(MBL-mW>>Xr( z2HWq8z@<=w{jOTix?2r=w-8xLww)77g#%@#QP~Gdq8&8Cbw|Q9qC5oHVVEdNPR0a_ z`TU+=$ME$XbuxSpV()iCawV&M%*t`YeioXpdAsLr(Kr8khS%leV0(Q>PY!3RZAd@z z$dK?Fh%e4z37hdFczF)RFT`6j<)Ac(smYU(Q|d@})|Ka_VP;|SJO{|==n;Djzu{(r z8GF8Qt{;pAQiT2tG9A`-%tMl!-uY_ENXtSm-$bvVNf)FD+{W>N&AJK*T(j_U)JAkgDdNOT+DWE93ra{TLhhZO)h{4?lJS@ndwV}R=O;9=9E z4a%s?|4#19m;cVFxL89zMiGh+dCah(AjtJ4h3MI-dj8*$|BrXfL!Vy-yz{TTvbr3h PAe+3jvJ_b2d(i&@zRBZO literal 0 HcmV?d00001 diff --git a/res/mipmap-xxhdpi/ic_launcher_eleven.png b/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from res/mipmap-xxhdpi/ic_launcher_eleven.png rename to res/mipmap-xxhdpi/ic_launcher.png diff --git a/res/mipmap-xxxhdpi-v26/ic_background.png b/res/mipmap-xxxhdpi-v26/ic_background.png new file mode 100644 index 0000000000000000000000000000000000000000..4acede8092c638300f770b89b4615699567b3d52 GIT binary patch literal 6238 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 literal 0 HcmV?d00001 diff --git a/res/mipmap-xxxhdpi-v26/ic_foreground.png b/res/mipmap-xxxhdpi-v26/ic_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..c37e98fcfe84338837bc41f02c3a213c67c82ef5 GIT binary patch literal 75562 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

wh3k&tY(*#x(N=o%oyJbFAVZhHzEn^ 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

{M7V3!acXUBL{6sz{S1=edj|o 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

n72}5u_XUA zN)J_-qP&Q_#OF~~>ip2Yed)EOB|dZOtz1UhK=B35JMIuBN;Oa~K~7kv^$P0CHl}48 z^B5W?m-+rlD5R$6dEw?aKfEc(Z@`wIwy|ov_c|%r#zPr^am;jhLi1H+CMSy}U)4*67{)aV|liI<(Z-=eHq{wU2%_ZU@QxX0RICYRY@zfW;$eJ@Vu&>?bXV>Rp z>d;gc7jwkcif@YHAW@3qAf8%jX1$q&XYFQ0^E_}|j8p)9aRt!G#aj&;*h+YUrpF$( z+(4GDG>sxuW*JXOi7|?1AJ^*8?R16uLe66157h~g8c)%r*h@JIIS~w>%#7r@C>t>v zF?;+kzj)?vzx>za5b+2$^n%omyzJK5?|t>FZ`-wZ-=XQ5nM1AC)S*VRDI7v-MR4I- z&FmmTN{W_Qnyw_h?in=MEw|h2XV;dO&pvnh)X5Wn_l>jPIsMdf93$B#J)k*RwfsWo zjVFz5)pOF4@gNCgIt11b<6TKHuZxIFd>j<79kEG7p7v1_#N_0u81vvISxbbYh9oZ< z?`o0b29j5T#3eo#Fx5bQTj%rHbarlamA?duD(OsT3$sn3ywZL9guDDp@tC($qz&n` zf#kItp9LZ?`DqjYqno^~hpg_mjb)e!O(!xhV$(YZCKV>r3`*?&U`D(?Fu2h>vm4U5 zw$GQeMk6;?;+bg6E4Qs@Wgt4!@zlI>y{zs&wnlxq2ENB9lS?4gm~`y8P&jt9mX_F+ zsVPQZS)N7`djZG9U{4%fdww};p-Lkc`=#Uxi`uoqL-DFuc6$kmusZ7{t5Hhs@}$Pd zwZ4|ePpt7eBQ-{9ggg}ixU)rFLtC^0cA5&c)sQ=)sRA2hV z90&9sg_@?P`_^RykyBYZHelkTiKN14dl7r_-@mxX_wC-zTdj+EW4C|5_>%KpSjgt* z=CVek&97l&TW{BR)=I>uJF=vn;lr9v@n%XN$z;4iv8J+C10`1-MMD~kDCuo9jnN;C z?U3247UkiONM*6Y6HiRoWkfLfd?+FWvOdy&3SlMBU4%^nGC6LfNf1GG3X-C2NlN75 zM`R{0UO{paDtXlul9T&D%iC97jeMQXb7PFFfQTMn5R>*tWzy&eq`+)>@gCfVJFh^%mZF5fY@Hi!*{6@8n(7-J z+z?;Ur;LfLR8yg@y43w@IhXP?Z4a0!Yw@oxKJw1fvU(-!u*6~-3jj-+%T5ec%Mm$A zveL;+O~2`;n{x76T+EIfIKcnQ`a16*ku9$7<~QGbb2c|O$0OVqQv*oqVSX-~o0-XG z_wUbUrWP|Iv1kU;Zahn2jIykrh=#X;Dxud!GOE?G+Dt8@F9riP(BgYlMI1#UIZCHL zoybrEr5qc7BC}MGLQio)&)12(MBv~Kl0=#l0-6E^0ns0Uh)5C=sj5_I_!8xsq?-AO zu{?Csrk;H-Csjc{_io=3g zN~)`d*MQ2Bi#$b>7sQ3sAGOf(Sh&dx<<;!v5jJ{F@lnb=vV1p_^SrvaPG-ZsIOg?Q z9PgsJUS|#+66V6=kh{wlF7tho(mqmIwd1Dtob~5>sGhJ*P3fx3?c$yGx3cW1d_H0#AY9(jp>A~n@Ml3TInzmi_>Gfi!Q`2|d{*PvV|6g7;WdlDu zY}v&db${7;Nm%PB#=?y0&p!LCC^vQfJcDC2S8Rq|L~|ky4qdx;jb#@uL~HBoY-+lL zEqENgaG^^P?W1NZVNqO*)-QKxo)?>`)uNSjg+;wu)J>8I+hG)9T$mJT?wFYHT+2;~ zWKyK%KhS-UCjokaWJwp$_dFyl$#W(UP)Y2MN|!P z)F2o6c)AG8TSV4CQzVzfMaQ~U#HgB^p3c-s$}+y8nCDfH7v+<#@`QqTw8AG%1$WG>VlHe9B}rDJd0)yv{%IDIcHU`r6eNRZE!YHBo%s{+6#@7D3aMM}E5 z(#w@8GIbx*-1OBn+d1j^Sfl=SBrj=ZPoh8_`NC`{Cn-~K z-ou9vi)R8AcK_KRlF~y($#iKxG(1N7bEh^edYYcD@7n~Xc^R6BNba}gV~%mK-KRcs zCFT6B5U^z!!il5Ibg1VCaCf9kFM|Hmh(%$L)PkrFF{$`N{z&a?c z!<4Sy3?JpCAKT|V^c(1u-71NxC{!5{ny9ylYV3JZVg)YD%&;~^>^OfOmRD97cK@UA zoIT50)6*i)wdLg~xpqwiC|s{~gsVNNv8dOJI&m**G#V^jLw><^a>|fS9#Vm2h4P|! ziqIuri`)fY9-pFmh_F=MJia0nA*p!r4Ya(DLV@-2C>L2@k>#EiR4&!NmzJxgd~Vi8 znGMejnMQ;q^OI?iJ}OD!p2RsP8|7(is}7AKG*pk%Z=uP^wA~Xf^2MC4C{L448njKH zK_U0}2CA;w>?}`vXgZw6F~s$l)8ynCCAtO?m-<0U`E%%>!;10}ro+L>%6!NO^R@=U zv|b55%4=K*ZuMJ-TD9z^j=5=D7ZA*n-_&k`rOf2uLu97?CQn5*?|?_+O?!S!76Uu! zlrg>OLW3c%o@OIN06Tf$^Q+%cy^8`nkaBM7UWKF!}Xg*AO z5%6^~xuF@cj@yYKs~S>ZH}0ZoE*38M!ZWc;#1XTMMzEqLS`qQLXSx49+Wy4#5o1#M zdSSa@5VMr`iUhO-CFGA^n zfu=#oC=Cgf)=6naNX0SL)Ju35&4ewX7#nzHa9m6Lwkcjm(G>v_6Qt1VVwqYa;|)|? zNL;+fGT;$s&3e{}*0S1k%!#~ctZVml2Nm87UtOkQGaM$P5LZWzh&f&~-UTSVE?qi@ zitEQX_QYtSvH*>D(S243%GX3_gRP@9G|_Ow{4SHX;W&U#(EU+xtKSktFt*z!!3^6f znaMO}$Zu+g^|AoA=a`kaurqC*7ccQZbk%1vA9B9=L!BZmj^DfZ@Hqum1t`d$N^tlac zG}lle)KQ6$NwI|{MM&q+q?ihm;w+jJv!s>H&CaA#Xi`k(qJ%sZ8MKf>)>8Vy2Q-^0 zYs{xKQMa9~BOA3-YTRSiOllOc7KKgz(abobs1&uryh!RNYm@md&P{ZM^G7EBT3K2+ zUqs4MM8Pi{EJSp7R7y>jM|e-LSDjzEa3K}rUANxKyM^+isPfHDC%g28++CjLcpX=6syenMO^2!qtMG{w zTjSvi*Sj$QoxHfi!>}q2o%--`tnpnCFmad_n61z51s}EV+p)LRV=h-kMfrLz4!eJY zAla$t(CmBlqB0wp)lQj2Rm<2ekWH1j2-8HMdOk4JJCIhWE+*BNN?1j@*p}Xje-uauF;XJ5V(?5;SDSXadY? zoI)S=BFxKBVAWGhj=3N%`feAIYc1vwb$DDy8zGtsIgW89s4T_Tle-O=LDkiwFDN%w zc(gpt*RK`QYHcC8#2e4f%1( zP0v#S)AQ`gZ_Z$dx?>&jvoEe(U1{V$<*a*j{BBl~l6Ei#|mwU{cuCH;_ z9F45ky~gXaMPS-GIegSa_@o#*XsKfqOG?Zot0lS92a-dIqedx3XqWEzXiG#nw4Sw^ zsJ3uFTIAB097EE4z8RVKNWJk67Y-t%-nzI>0dr}a*4w1&Qc`uO0@LD;T>VizPLVQ0 z*++jH(*UMWj3pUgPeoe2Hl41MBL}J~TGnPLPt>2wwVu|~dN0nPk)kTiXuez;!&FkI z--r^7CMEYsbs=#@bGQ?)TNBA^p*t(Q45yI1D5l~3D_%j7HL`>BEw8h?MRW}c3q|+j zxaEEmR5BwKHU{$2J4_?L_%?4sljq?mAcqd%EI4#b7;YyHpQdrR!x|2vw~=MTHah@O z{IUHf-*->3Wm7qFpM;BK^l>fIy!R zERMTk4Tzq)G7LJSNuyZeyOPOPG&LCw4ojh-=N$&J0 z$RgfqwLmyxObHizB-D;bB#(Lejv9y2T=*Oa zXOZmI;=IUgNJ}}#OMVW;h9M(t*q*78Q0BCu&+mc>AvknQ7P$#=;=EvM>ulnKgImFY zwqJh-Oc;%gt9UFHB~G!$g~^_ z_)BJ3wj4v&>#=EU(R;niya(&3fm*_Wqu!X!=%bkoTX-BJV~mI^sYT@Hm#rgtApxZ{ zj7ENrNLC=o3WZUOL?&iLp;*i6jK21j)eFaudhXdMUL^7fsl^O!mVATgQi!4&NA95r zQ^JKW?R1MMAI&01j#^x!iOU?;J5X=dfdXgrvM$XV05U)JdNqox5A`+Q zt~oRrp5q5`oQr_UOMHk@56N#b4QkQleW1UP-W?;a$~E#b5!xh)OCs&0KOHyXukkQ9 zY$AyIkBpBgvC{2k%F@{u-&AQ@lu*1DncOcGm>eUc=pFP&4j!wkPjXaF+5D|D`~~ELLyLeWju-bzpNK4BQe7qUynIoaU`(WBBQLH6?}Z8A(7BJC z!iVL42$%?R6QbVVF^QSc1dM)Ia0?8ZSdjU^a$@5-$?9rLD_@H#SnoYhtp_`nP zw!XT`8JZG1WLkWoOYZ8dH8sV0moKy4RLYtyG%H?BS)_Miu6LE#c_ljgX=u&pDTT9Stzrt!Gx)=h@-fX&RGxBo^CPPLSk|h)dGX2L_>VAoGIBAyPuX!O zxUu4KY(QT{?%E1;W%dmuu{&pHS!ZR16PZyOk=QDl7ng8sZ071!b`1$nzol8YSKo z5{ghU!iKo)hBO<-s=!PzO>Ukf&K|qxZXDKp7y`zI4FdD!3w56h&UU|Stg5VSHOa)X z{Wd~#p&EJdn7#MFiTD2^Y(H!@LAiR?10d2OsKh0SOeHkAt`Zr!8a#XM9D|p?94&~X z$WFn`%z`j23L-Mi`LdC2rwgJSnG5mm?e+A z+}yajie|th88~+$IkC(#%LB3|{!P=3FH^@c64+Y4XL@>CsH!!TS42`Wk5pI$iut%g zX-Hb6vM7ztZ@o}jv`t?}ZZ;0^)#fs%?{rZbDK1i53&kf-a?&~}{y!)`Iw>w|er=_> zPz?tqVVmpa0sW-|u=h4q4E?O?u?`0gq|N_Q*SAuUy>RqR58x5s0s&(|WONNMxeb7} zPlYYtP~eVj)4^?Ep2y&prCtXwsfV57FTeR$VS8Z|l{Sv!n$iX?zD`^^d8ugbrKOdyXDW+ei%2>}*QTAM<=Vjh3@?F3VDK{=nuA`3R*K%^Rb?X)flQ zwZxZ;(H@C5%>H)T6wVbhtyWq?o}=aL)ZTP<@7@%NC1F!(x{7*kX5Wbf7NM7>$T?7+ZsgX6H+B2ZudtOq;`&m^dA?s;+P+mR1 zK7kpw2sFVN&*~Hej0GEGV5WB4rw?U9mApftOm)d^c``OdX8M6@S%7jCMwgFWfdhNK ze*~{XFST-mV3Um(35uyoi=Znn3Avv@<6@-52ttja;)181f~mQ={J%(3Eac-- zXU^mf9|sP=$}`XO^Q^bqY#qnSre|g_Z3#Nv8L^L)nao3uApPUw`Z6sQRn{vM8IjI1 znjc%~6eDw=$d6-h?e%p&hq8|LNi`)fNB_@>Rm#&SOoQUQkW6>sh{@V&uCmY=3adD- z1s8=n>#HsC+lsJH^hp{SyO7it?OQsGitBN4QQ@}RZsXE1Lnw&2Fmt?IlbR=ivj^XJEV$N>2RVU>HLweM0J~LBeKCA~8~APe1*%sN)qy*~f5v?7)HL{02US zW<(tCA|ktrrbYEcR&l&+rWh}qMgqKa@uEndn(461moaUI96*TBz1Z|=tb$Pt4)2>0y+ zxM(1)zL}7mOi*zNQz5D?3c7pnk|eLg{fC&yi-w73Rk&XA zJcC6sRdv?5Ud|j6=Wcq_Td?E%00fML4Fc<@6idCoWa5GM2Y(UVz0F~NaT!^R<4U?n2B6ySvYoFD)*gk)p+iD7FPfl}nHVQSoS#Dy zTUuZgo{AhkcJIE*X`A**Vw=?*K!iF&GMie>$%B*{DWOhxHYdHA9-|<*QneA$T|uss z%BkC%WrOQENy++Y433sWinPAEyxiX>UElj|?*(Z77A@r`PDG@5$j7&29wIIZx=V2j zRVeQ8Ag{ePkE`#r;Xzoomu-{E_9)|xGPB<>#B@CfEsTeaj?Dz-RSN8VEEQuRs$rgY zUlXHFcrGF{{@_!|D{lM#!w>!96)11WUFqt6fHBg0$+1j7O#dC=kx$PH;QxfE=-&)7 zE7B5)%Gkpw%#N!0k;^htmC-tp*)6x+(pPA+1(^|u&}iID5*wuvku5AN@V-(zdsZw~ z=jVk(2$36++C`K^`$!rUxJY(A{C|ebm*nzzIZr1-nwcZ>;~ue|7ug3?9v7fGUaVog zo91d2Akvzjry#q9C!wOW$VB)m9MgLG%o!#XmsDE>eJ+;@)8yn4;uq?$_x$YphXONv zL0OM)cs&)D3At;1^e_%Wyb=P2LR8vRGQ+ys^yy6;XzA)BGt}cVOd;->rl-pjXWE~h zSEQeUg9|@~=0Imb+&<_Yu?E>(Ued?cSzl(58cVDg7#NA!@KO5fnwy9D@mD;0d zRS~n)o<(e-YDE#XS5?g#tx>D?h|yLP5<5ukQ6sjRK@hDi_TK$^fBuZ``RV?0&w1VZ zy01IVeV*rBgQx<+9>%6U3}DhJF)-{3)wa39o0N{#>EpL@dvvYKzl>2{kDP~-*6Ye9 zPx)hAc)fP#n={Ae%qx6&tL!n#>Ltnt>;nra5j(0W4klVjaJ({!d2_ew6Ep6 z!ybBl6>q3H@18cpd0`EtM$}z1`4r_nY1sq+@}sk5raf(T7OIu_<6hjC$=JF#@+Hqa z&?kw{N1F#BIZ3XABTY}~9Wuu!U7`LC5tY09!i6)hnl85EV{~PhQjiT7+l?25F4PB4 zpshA1uVfna)dTye5PKfR2_ChSwElYg=PJSN_0VRODg#PWb<_H3{X zHL#W9d}pkHbET()AJ7ZCB~<^olfp%o7jW*nh`+|RNLyOS_Qd`+qgGW*>AS;u$rDP% zq)&Ux{Xy&&#`b)4lO=`Xs(qx;Yg4MCH)gh{dXI*IRm9}gD4v9YmVTBdnO`LQm(`yX zs@PGRM0E`^KiUI&yAeQaapGT86o%*5_trBQ>{{y~zXiSbNT>aSm38e|8+h-EGk+0jc>Uu%;%NR`J!_#D z|E|bw)hdHaeq++}&OtF-jW5b>p-#wK`;o`#ch14tH^O{{hA}>MXR1Yv3ZMEjNfBt> z;Nw{vqZI`21$z$1pL>Jy{VI@V-K9382>Y8tBX0J;_QezI=7eVFCcK47l9}?7*tZxr zHcq|wEK(ce_MY;VEn<=+v~3uWCQ-dcYKf7c+|}j4>i+zLZ?-RSmrt>o8FrLB&-`ej zizTB8>B2#h?y8z)jno0&geYQ1-e0TSPz}1c!V~U*DCs^WfP9jXy`pk``IGRfP8WHf&D7&Y>cT&|dti{Z}(N6v3sWQqVeoil`F)EjA ztY|Z_xs%$dZf~}4AoTRr=<)F7z%Z3~>H+!<^m^&^eqM=&H$od|^h&PIPJV#m>OrNS zncLH_{?}l|uPQ3*5M|t|(Yx;?e48J(W$=Aj*Mq-_m|cdNrGFWXS$FgL;cD;>ZLc$e zEvfm6zKnG%RXP04PhS^p3FU6)yuuP5_6R%b5u{TK^Z?UTiL!k}rh+9^6W>x(o!JM> zG+)*;vzP5BzUr^;(EKq>&lVk=f3ryA69ulv9P-tdZ6rlS!UV#S41Im>FBCzb-nDC zuba>H(RoHr>ue43=d9PC?e7|XrX`1*2gevNF1u*@eXm{~A)t@etyTeMEWHHG@rU)i zBI|5ng1~2y=f2GVlpph3Sf|d0qO$#l9X;nk@PA9K`p%Zp#hy0}oLPpEGoR`ZC6 zruYCDEAOcBMDih7Q`rka*pC%@h%zwsLznl3F0at1;LfTvqDD;(*q2uYKgRbesLS`@ zPT0fygn)5(6YKet5$SwK=+{!lX?=eQIS|HAa)j#dX z$Q^!I6|rtG%Q%cvkBAxF#1SaDTOJk1c zSKk8E@&u+{l#X6yELsFUDi(h|gAh<->yb#-@b;=WY4fs)fz|$kG#f(XmNI<6y{#HC z@AN|OEg1aON5`KCdh7}5snoCYiNA?ga1_xyU!Iqv{l|p$@`J~X_Y1%F&B-P4v;;2Y2Ajg@fcC`zWEuTN*pCzIy zuzjqh4|Y&|NG_1c_&f*Y;i~V(+GWlaPv6AZde$bxb;$y}kItOaUx&HZ@2R; zL=-i~Sc_I{SL84YZC1BW!X%cn$3qTf;Xo5Wl~bSe5dYY_hDFT>L!2RFY<%6Jw@KoA z^kU?k>67f z1={~`4XS~BWwx&7e0QQy(q0|1xI}w7ytee@x#wiXr`V-#3hd9O@tQ48XM6T%hqIoc zWK7+bJZ&*5GJ)wm!Raq2AOnY=XVS9EZmlND^>0ulp=#IMFZ2~pZKf1imW2p7c$9Be z17-qznp?7U=`I8sED=JA!xng@rII`wN;oZl0{MmUi)%+|b0%ENJ@Nz&SFLXUJJb4r}6c|OmZ0Zr%icboeSXst5e=qvb!2nn<&tYF(R+mT~M2`$Lm&U^fh|TGYt{5hTXTUWf7^#M{oTu zG@5c>auUv(9O7jVdrQh7YJM8p6JBCc7v_^l5u5ZZrJlerB#5CzACNy>H(L5(_ zK}Ld&U-($JR?iv^!7B6|)_6(t$S~w=>sk4sjP>;|T(b@&=eXDqKDwNi95#lrJxkuj ziLRilXUhrk%CDh-HBC|NKJ_<9p+&UQY?ydt^gJabaevlmDBX70NeG&X#kB<=QY%fJ zr5LbU`fZ|I7jRpZ^q*(yaN}W$86fyQAf`4?ko0GE8TCu;hV%IB9{1Uk(PLp8utE_{ zw|W3(Eg8jB16AI;Z)|qmM2w8d<&4=-EQ$60c+!8!n)L$XaEh3r^UK?(2mt6l#&ZpP zJ12i|w0!6c?zZ?a?O7TqGcGQ~gTR5F(~5jrD8ck6O5LPUic2)Gdz!K>p*wwvv>74k z`QFyv2%UZhebfG?tidR0G6r1R*IPz{fO>sh&^LsmDUChEfgcyxfUqq-#w;r`%L)xL z2e93TsM+cWkEOLN*J(ZAn(6^t{jO+gq0PV03$X6&c%YdeLqe<%&CRNI;fczTTa}$nRgwazlks99n{` zcnZu!8}45Emh*1?JH?BVFxk;V7{Na$KifOM=ngKxd_5-XiO8+alJZ8=tXJk@d>#}5 zf{@&Ql1(vy7hpMhM4v7fmjpfZ)qI-gtYNRVp2V_Aj&?9p`L5<=VVvOn2|!J|_T)C$ z1AN4XP;hK6&BtcSTVX1`AGR4LC6O4h*+LNg8vF41=5^MRqs9gvv@fx)&2En+lQe2M z!~P;AW!-{A_Zr#S`*sUB91+_T6`=zZ_zQqR@0oFz`TUj#+}H3&F*{EoZVEFrAW@G? z#Ep&hl2bo#{t0Aq4>(9LNvQ8m;yhi6OnMY6UHiwy?NCB2@6(Jj^ca_>o;|ZCD_S}3 z?)s5f`d_HI!hqp_V9Z!Uh5O0@t8E(h&(G56)j+2y)v;c6=n86;>Cxch?EMBglMRKx zoU6;^&ezo;92TY?vES)|pC+pQjYnTgZ^8Y4#fcH^LSzE#%Tmm;U7O3Bg8LGwucT^V zwD1C#?Y!%ePlBO~w<@8Ahnmwc<+d9p{hh!LCzpk{;zVL5wd>EyeNB_>H)18!6uojy zrjG#2Qc`g6)I0ioTE|s!nw!-03?*1ei|tRw72NJak-33EBE)FAhNk$A_G_9`{I57Nw)Ws?p}~QTeo6m$ zFw|sahLiMJuW9Ke5w!Qy^S%s@qS8?F zJREI#kP-Rfdo!!w1+bBh)w1qvxWLl)a(3J zWG3h!lb#+s3ZyM9sUqKE$Ixz987SO{Xt&<~>Xtd-Y~rn0X>ETs{rjLX-`1pANXR;9 z?3o#N1tIck_-e({md3Y>chx3UZWODRAE#&!2}TVI_r3Y!{C;7Ha^3`yRsRip@S={D zsX2cBHz6UZEcry1vNqH*;OKPLr)Acgoni%FB$Ej5zDILrEq2x7{mU;zkAoZzgZ5qA zO;89uAR(fn9rf}K1_RGRBD9FXe7|pg?_DnZP9rRm~C5pZRC6h&)q8WGcX&T z6pN@F&;j`lwWlxn4$X0`ilUYul0&Wlrg z_I9HKJy9NvgTC>1;Lk}m zEw%Tgzt!YHd)zd>&E<4G^@a3~{(tiVnPvw+$atbh!egF)s->%Rbj3E_?V>B&D3#7q3R!e4$v zvsJ@CMQU@ebBiG|b5@iYTXsgr(D9(c)YN{5H*&V3G-{6;Fm_pKO;_H0+4oAa??%f- z>jHqWAAtNrlzPcb0F=1rU5ryT`Jgm9S87}UMhhM81Jb$8I5TzYI( zJrR*}3S6{q5olZZUDfP;yat_T0h}^5sbRpB-*Xr-VqcI*VUp;aVQGljQb(Klb-XS}}oQV2%P_s4l$dAv#1BC;XcsP=UrU(+{URtl!a9xTs zo&GIW-`($**@sFY(GOI^uzX2G6QM2KwUJt*!rA}gXf48F~joU4P!30$S^i);{JzEp zQcQ~7j4hhO%RX}8vm|lg^ALE~rlu!>?O3;+Wtd2@kFD&2F8H9i$WFZSs4gUMNq~to zQPPAnyPS);4JbM5od`#jAB>DyJ5VS3l6XC#wamHg*gBE!UjpVc!Uqv&TsaQUP1$|E zR{c=G?4_5!TZ(ZYunFiB;0KKl=|$S&jIy|v2^h&!8!!M&p;LMGQeDcfX6O8~LG z8prS^kzZVF!K=>Xf2mn0)E&GfuAdJ5@t9IwvWY=sfB#gvW2obyZdGd5_yONb$@OUj zuyK2b_bE{jsfUm)$WP2mCRlL^1dnO^l9|aKG^IJ=^;0(%Z%P?<5ga16;cF+?vToHk zN<6#z$CsSx!j|L`w_b|;1!uS`aD`c%#m5;Q+MCXq^AA4~vo^rvw{@=zZAd*$ zc^*P7=t)R4+sv}>%Rui^9t#o56_4PrFLfwJw7&J?Ll&T1a^w^Dy6SqJXNyM{&ZRxd z1Btq^y9uMuprgpN64Zw$3u@QpiJH@XQ~UTgzS%PMUFJqFRT9W);EGY$Me7$X_)0D#ZNj(o|oA))tO)@y%4UY)1YaeoVP45*<~)$%11-4<+l{l%pJV zf;O>j(xHyVz>c8_>W55X+A#o><|X4Zo1^=|uanxd+J^9l5RXgFOn`sYxQ)L!qj=k1 znN#Pg9S*xwxyYg_No%I3-TzujI!%9tKU(4xS}>t{_{2O$?(d)M@}OM-V+6KA|_64i@K?) z70(gLv%pCz!NgtLb?%~z15KC0GODFmh$ggMUK+CrJ~+>UMwPkdo>dg-i~}}* z&^j(s6D`x~Wiv>mldIXV*$i~nP9)TloX7> zV0gX*tFl=K^NM?dhdmpw62%!L=5$SDr3TUC1QWs$=rv<>>^N{eyoto7^lJ>4b6==& z6IHpafZ8vtgM`bKh!iBkfDSK}Pr;Pr&j%jIKX(f?q3l@A$L(jfr+XH!qWgkOHD3`E z6GQ3K2dB6gnqD_NYvN0=IQDhyeYy_6Ld$OeLfCAYdCCIkx<{00Eh&GNLic->upwgK zN+rH|N@&%KOTqr-qb@MQj_pPjGFD5DK9!G5%;4waHGr2|BqZLmUTP&}C} zmM7YlrQJ&og*LQ!^tsMB1>#K|;Vb@#vag*aHo|L3;n`Mx6Mm_bY56B|xz9x{xZwIk zO6f*$G|*le4MT7ixNh*0;Zf)HW(xT`XK7au$fJs)$UnL6EX%SirNv7R{F@m;9HI{M zcL99dU)f1TVXi~5How&&sQ6jB#pf71HlZ;^w&c3~)BFPGIoKWGk2T|nmQDv=A}$|P zx&(b3A-MeuUE59|ZiA8~f1sP1QAOL7zg$_Ln7D&4<%!}uzf5hlVbVLM!FJI+qR^Cm z9wsS0DbMT;Y*NLFj8qTY7eG%rmPi`qi_VjgC?!3;(r0VWiRpSPKW2QD2S(UFEwnZ8 za?6Az(M&X9m9mb5ar1HFDb;%Foah7pJYgPUVk|AGD9u59EkxXNYJd~_2Znn59n}>0 zYGS@+xay(X65RI5m?E<_!qKg@1GaC4?I36VHa*mpUQs&RN!3qTe$rWM8@)Ami;8Mj z&C#c-`G>TBu+$Db(zal)Mu@g9DZ+=N12hlP0x_8V5pTVr46K?SvjxX^KLLya`t!TQ z$KGf6ihVIvZae*>ao_P>u*tRfYEpP=U1+D2i-HTQvg`vh_g(9c8-;6b7(j9=-Fo6h z!`UYEnVWsR;*g$CUPdn6N!ManSlFMt)9=>a1!7skfCoG`xO=wX15n!|+KPsyj0V5a zeUPj`%IKIL&gzWR-C9XzOpc`wy0HiHkWNGVCQ#qJTDB)Wgo;|2gI!mE6l7#?DjBlY zyCzSxvuq%ic`0izdz)Ak@L9J8i#VJA)JkoD5}l3ZrHuiwNVI{V`O&4@>Pz^?LqF@S z>3v)qCe7(hT|V0cv06y?_?>Kd;i|n z{9Qom^gvR%TpuvG#kpl_^0Ny|CABYmh@4S-8q3{EDKQ~2XzZ5^5sejI)=ZrzPn@2Y zhhCy;ZmCLLOn)sA5OZrBPka^qBtiDroSzFKJMYI)k)n$a+U#@Xdz?N#t~6)r;j1rR zMoC5%&uocwbJNkwebF^vp}lPF1T%x@M~rPGDvM3Vb|k-}3Uoy$ADPcrP18$2(Q46N?Y!OAW)-&V8<` z59n`Z5J+L~+179Kj-zGK5gy_q%R&zdJYeh=qrNSafiOPFkonbN<&Uf8!MZORgJRs+ zvmEA#iAAN=#UN=%rq*YE5=jW7Q4Ief#f_e5oBR#3b}~W;-^OJ=DJsj3f zx_-vHTH=fR-;Ya%^a?LlIxa1P_+2OK(yTR4#D_lIM;TypNdLUN8)LYJt zU@8rXlzkrr4^E--u_u#=No7Ax*$OcoS^B-Zl@em_$Tf>cU;4yRW+8|l^NHfTWku=4 z+@41{7Z6xL-79E-rlL}&+DF|9coE;vTb|cHM8Il zNtrz9KevLY;A(5;o+z}oY};#&SJZ0nB;(IEwuB zj+W%c&>U{GX$Fx5WWQz%sJBR`W2bLNO%aa&E60V~@wUc@^G=Mp;}kEfP6ng1tgwRI z+~C#Mn3nN|b*;I{lluR}JVJb|Wt!^;99FCgz^SA~#=lY#tzF?%MnpAtvjsnw-m( z;)=3DMZT>8DP25LTuX)f=YKA5eFJ94mk=LwB<)WtmFBQwJV!9g-2WNawJJSfr!K}m z_v|LZv9p6-pu8=umu+)MxU57T4Gj0@t<{$HCTNg49r`2T+z - - - - - - %d выканаўца - %d выканаўцы - %d выканаўцаў - - - - %d альбом - %d альбомы - %d альбомаў - - - - %d трэк - %d трэкі - %d трэкаў - - - - %d жанр - %d жанры - %d жанраў - - - - %dг - %dг - %dг - - - - %dх - %dх - %dх - - - - %d трэк дададзены ў плэйліст. - %d трэкі дададзены ў плэйліст. - %d трэкаў дададзены ў плэйліст. - - - - %d трэк выдалены з плэйліста. - %d трэкі выдалены з плэйліста. - %d трэкаў выдалены з плэйліста. - - - - %d трэк дададзены ў чаргу. - %d трэкі дададзены ў чаргу. - %d трэкаў дададзены ў чаргу. - - - - %d трэк дададзены ў абранае. - %d трэкі дададзены ў абранае. - %d трэкаў дададзены ў абранае. - - - - %d трэк выдалены. - %d трэкі выдалены. - %d трэкаў выдалены. - - diff --git a/res/values-bs-rBA/plurals.xml b/res/values-be/plurals.xml similarity index 100% rename from res/values-bs-rBA/plurals.xml rename to res/values-be/plurals.xml diff --git a/res/values-be-rBY/strings.xml b/res/values-be/strings.xml similarity index 100% rename from res/values-be-rBY/strings.xml rename to res/values-be/strings.xml diff --git a/res/values-csb-rPL/plurals.xml b/res/values-bn/plurals.xml similarity index 100% rename from res/values-csb-rPL/plurals.xml rename to res/values-bn/plurals.xml diff --git a/res/values-bs-rBA/strings.xml b/res/values-bn/strings.xml similarity index 100% rename from res/values-bs-rBA/strings.xml rename to res/values-bn/strings.xml diff --git a/res/values-fil-rPH/plurals.xml b/res/values-bs/plurals.xml similarity index 100% rename from res/values-fil-rPH/plurals.xml rename to res/values-bs/plurals.xml diff --git a/res/values-csb-rPL/strings.xml b/res/values-bs/strings.xml similarity index 100% rename from res/values-csb-rPL/strings.xml rename to res/values-bs/strings.xml diff --git a/res/values-cs/plurals.xml b/res/values-cs/plurals.xml index f1213ef..9827780 100644 --- a/res/values-cs/plurals.xml +++ b/res/values-cs/plurals.xml @@ -18,69 +18,14 @@ --> - - %d umělec - %d umělci - %d umělců - - - %d album - %d alba - %d alb - - - %d skladba - %d skladby - %d skladeb - - - %d žánr - %d žánry - %d žánrů - - - %dh - %dh - %dh - - - %dm - %dm - %dm - - - Do seznamu skladeb přidána %d skladba. - Do seznamu skladeb přidány %d skladby. - Do seznamu skladeb přidáno %d skladeb. - - - Ze seznamu skladeb odebrána %d skladba. - Ze seznamu skladeb odebrány %d skladby. - Ze seznamu skladeb odebráno %d skladeb. - - - Do fronty přidána %d skladba. - Do fronty přidány %d skladby. - Do fronty přidáno %d skladeb. - - - Do oblíbených byla přidána %d skladba. - Do oblíbených byly přidány %d skladby. - Do oblíbených bylo přidáno %d skladeb. - - - Odstraněna %d skladba. - Odstraněny %d skladby. - Odstraněno %d skladeb. - diff --git a/res/values-frp-rIT/plurals.xml b/res/values-csb/plurals.xml similarity index 100% rename from res/values-frp-rIT/plurals.xml rename to res/values-csb/plurals.xml diff --git a/res/values-fil-rPH/strings.xml b/res/values-csb/strings.xml similarity index 100% rename from res/values-fil-rPH/strings.xml rename to res/values-csb/strings.xml diff --git a/res/values-cy/strings.xml b/res/values-cy/strings.xml index ac715c0..a27447f 100644 --- a/res/values-cy/strings.xml +++ b/res/values-cy/strings.xml @@ -31,4 +31,7 @@ + 1 - 2 munud + 10 - 30 munud + 1 cân diff --git a/res/values-gd-rGB/plurals.xml b/res/values-en-rCA/plurals.xml similarity index 100% rename from res/values-gd-rGB/plurals.xml rename to res/values-en-rCA/plurals.xml diff --git a/res/values-frp-rIT/strings.xml b/res/values-en-rCA/strings.xml similarity index 100% rename from res/values-frp-rIT/strings.xml rename to res/values-en-rCA/strings.xml diff --git a/res/values-et-rEE/plurals.xml b/res/values-et/plurals.xml similarity index 100% rename from res/values-et-rEE/plurals.xml rename to res/values-et/plurals.xml diff --git a/res/values-et-rEE/strings.xml b/res/values-et/strings.xml similarity index 100% rename from res/values-et-rEE/strings.xml rename to res/values-et/strings.xml diff --git a/res/values-eu-rES/plurals.xml b/res/values-eu/plurals.xml similarity index 100% rename from res/values-eu-rES/plurals.xml rename to res/values-eu/plurals.xml diff --git a/res/values-eu-rES/strings.xml b/res/values-eu/strings.xml similarity index 100% rename from res/values-eu-rES/strings.xml rename to res/values-eu/strings.xml diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml index 904854d..3c29af6 100644 --- a/res/values-fi/strings.xml +++ b/res/values-fi/strings.xml @@ -138,7 +138,7 @@ Musiikki: 4 \u00d7 1 Musiikki: 4 \u00d7 2 Musiikki: 4 \u00d7 2 (vaihtoehtoinen) - Apollo: äskettäin kuunneltu + Musiikki: äskettäin kuunneltu Taajuuskorjainta ei voitu avata. Kopioi musiikkia tietokoneelta laitteeseen käyttämällä USB-kaapelia. diff --git a/res/values-hy-rAM/plurals.xml b/res/values-fil/plurals.xml similarity index 100% rename from res/values-hy-rAM/plurals.xml rename to res/values-fil/plurals.xml diff --git a/res/values-gd-rGB/strings.xml b/res/values-fil/strings.xml similarity index 100% rename from res/values-gd-rGB/strings.xml rename to res/values-fil/strings.xml diff --git a/res/values-is-rIS/plurals.xml b/res/values-frp/plurals.xml similarity index 100% rename from res/values-is-rIS/plurals.xml rename to res/values-frp/plurals.xml diff --git a/res/values-hy-rAM/strings.xml b/res/values-frp/strings.xml similarity index 100% rename from res/values-hy-rAM/strings.xml rename to res/values-frp/strings.xml diff --git a/res/values-ka-rGE/plurals.xml b/res/values-gd/plurals.xml similarity index 100% rename from res/values-ka-rGE/plurals.xml rename to res/values-gd/plurals.xml diff --git a/res/values-is-rIS/strings.xml b/res/values-gd/strings.xml similarity index 100% rename from res/values-is-rIS/strings.xml rename to res/values-gd/strings.xml diff --git a/res/values-gl-rES/plurals.xml b/res/values-gl/plurals.xml similarity index 100% rename from res/values-gl-rES/plurals.xml rename to res/values-gl/plurals.xml diff --git a/res/values-gl-rES/strings.xml b/res/values-gl/strings.xml similarity index 100% rename from res/values-gl-rES/strings.xml rename to res/values-gl/strings.xml diff --git a/res/values-gu-rIN/plurals.xml b/res/values-gu/plurals.xml similarity index 100% rename from res/values-gu-rIN/plurals.xml rename to res/values-gu/plurals.xml diff --git a/res/values-gu-rIN/strings.xml b/res/values-gu/strings.xml similarity index 100% rename from res/values-gu-rIN/strings.xml rename to res/values-gu/strings.xml diff --git a/res/values-kk-rKZ/plurals.xml b/res/values-hy/plurals.xml similarity index 100% rename from res/values-kk-rKZ/plurals.xml rename to res/values-hy/plurals.xml diff --git a/res/values-ka-rGE/strings.xml b/res/values-hy/strings.xml similarity index 100% rename from res/values-ka-rGE/strings.xml rename to res/values-hy/strings.xml diff --git a/res/values-km-rKH/plurals.xml b/res/values-is/plurals.xml similarity index 100% rename from res/values-km-rKH/plurals.xml rename to res/values-is/plurals.xml diff --git a/res/values-kk-rKZ/strings.xml b/res/values-is/strings.xml similarity index 100% rename from res/values-kk-rKZ/strings.xml rename to res/values-is/strings.xml diff --git a/res/values-ky-rKG/plurals.xml b/res/values-ka/plurals.xml similarity index 100% rename from res/values-ky-rKG/plurals.xml rename to res/values-ka/plurals.xml diff --git a/res/values-km-rKH/strings.xml b/res/values-ka/strings.xml similarity index 100% rename from res/values-km-rKH/strings.xml rename to res/values-ka/strings.xml diff --git a/res/values-lo-rLA/plurals.xml b/res/values-kk/plurals.xml similarity index 100% rename from res/values-lo-rLA/plurals.xml rename to res/values-kk/plurals.xml diff --git a/res/values-ky-rKG/strings.xml b/res/values-kk/strings.xml similarity index 100% rename from res/values-ky-rKG/strings.xml rename to res/values-kk/strings.xml diff --git a/res/values-mk-rMK/plurals.xml b/res/values-km/plurals.xml similarity index 100% rename from res/values-mk-rMK/plurals.xml rename to res/values-km/plurals.xml diff --git a/res/values-lo-rLA/strings.xml b/res/values-km/strings.xml similarity index 100% rename from res/values-lo-rLA/strings.xml rename to res/values-km/strings.xml diff --git a/res/values-kn-rIN/plurals.xml b/res/values-kn/plurals.xml similarity index 100% rename from res/values-kn-rIN/plurals.xml rename to res/values-kn/plurals.xml diff --git a/res/values-kn-rIN/strings.xml b/res/values-kn/strings.xml similarity index 100% rename from res/values-kn-rIN/strings.xml rename to res/values-kn/strings.xml diff --git a/res/values-ku/strings.xml b/res/values-ku/strings.xml index 913d1ee..1b7f5b3 100644 --- a/res/values-ku/strings.xml +++ b/res/values-ku/strings.xml @@ -119,7 +119,6 @@ دابه‌زاندنی ئه‌لبومه‌ هونه‌رییه‌ ونبوه‌کان دابه‌زاندنی وێنه‌ هونه‌رمه‌نده‌ ونبوه‌کان - Apollo: 4×2 (alternate) ئه‌پۆڵۆ:تازه‌ترین که‌ گوێلێگیراون یه‌کسانکه‌ری ده‌نگ ناکرێته‌وه‌. diff --git a/res/values-mn-rMN/plurals.xml b/res/values-ky/plurals.xml similarity index 100% rename from res/values-mn-rMN/plurals.xml rename to res/values-ky/plurals.xml diff --git a/res/values-mk-rMK/strings.xml b/res/values-ky/strings.xml similarity index 100% rename from res/values-mk-rMK/strings.xml rename to res/values-ky/strings.xml diff --git a/res/values-ms-rMY/plurals.xml b/res/values-lo/plurals.xml similarity index 100% rename from res/values-ms-rMY/plurals.xml rename to res/values-lo/plurals.xml diff --git a/res/values-mn-rMN/strings.xml b/res/values-lo/strings.xml similarity index 100% rename from res/values-mn-rMN/strings.xml rename to res/values-lo/strings.xml diff --git a/res/values-lt/plurals.xml b/res/values-lt/plurals.xml index 0ae8b1c..9827780 100644 --- a/res/values-lt/plurals.xml +++ b/res/values-lt/plurals.xml @@ -18,69 +18,14 @@ --> - - %d atlikėjas - %d atlikėjai - %d atlikėjų - - - %d albumas - %d albumai - %d albumų - - - %d daina - %d dainos - %d dainų - - - %d žanras - %d žanrai - %d žanrų - - - %dval. - %dval. - %dval. - - - %dmin. - %dmin. - %dmin. - - - %d daina pridėta į grojaraštį. - %d dainos pridėtos į grojaraštį. - %d dainų pridėta į grojaraštį. - - - %d daina pašalinta iš grojaraščio. - %d dainos pašalintos iš grojaraščio. - %d dainų pašalinta iš grojaraščio. - - - %d daina pridėta į eilę. - %d dainos pridėtos į eilę. - %d dainų pridėta į eilę. - - - %d daina pridėta į mėgstamus. - %d dainos pridėtos į mėgstamus. - %d dainų pridėta į mėgstamus. - - - %d daina buvo ištrinta. - %d dainos buvo ištrintos. - %d dainų buvo ištrinta. - diff --git a/res/values-my-rMM/plurals.xml b/res/values-mk/plurals.xml similarity index 100% rename from res/values-my-rMM/plurals.xml rename to res/values-mk/plurals.xml diff --git a/res/values-ms-rMY/strings.xml b/res/values-mk/strings.xml similarity index 100% rename from res/values-ms-rMY/strings.xml rename to res/values-mk/strings.xml diff --git a/res/values-ml-rIN/plurals.xml b/res/values-ml/plurals.xml similarity index 100% rename from res/values-ml-rIN/plurals.xml rename to res/values-ml/plurals.xml diff --git a/res/values-ml-rIN/strings.xml b/res/values-ml/strings.xml similarity index 100% rename from res/values-ml-rIN/strings.xml rename to res/values-ml/strings.xml diff --git a/res/values-ne-rNP/plurals.xml b/res/values-mn/plurals.xml similarity index 100% rename from res/values-ne-rNP/plurals.xml rename to res/values-mn/plurals.xml diff --git a/res/values-my-rMM/strings.xml b/res/values-mn/strings.xml similarity index 100% rename from res/values-my-rMM/strings.xml rename to res/values-mn/strings.xml diff --git a/res/values-mr-rIN/plurals.xml b/res/values-mr/plurals.xml similarity index 100% rename from res/values-mr-rIN/plurals.xml rename to res/values-mr/plurals.xml diff --git a/res/values-mr-rIN/strings.xml b/res/values-mr/strings.xml similarity index 100% rename from res/values-mr-rIN/strings.xml rename to res/values-mr/strings.xml diff --git a/res/values-oc-rFR/plurals.xml b/res/values-ms/plurals.xml similarity index 100% rename from res/values-oc-rFR/plurals.xml rename to res/values-ms/plurals.xml diff --git a/res/values-ne-rNP/strings.xml b/res/values-ms/strings.xml similarity index 100% rename from res/values-ne-rNP/strings.xml rename to res/values-ms/strings.xml diff --git a/res/values-pa-rIN/plurals.xml b/res/values-my/plurals.xml similarity index 100% rename from res/values-pa-rIN/plurals.xml rename to res/values-my/plurals.xml diff --git a/res/values-oc-rFR/strings.xml b/res/values-my/strings.xml similarity index 100% rename from res/values-oc-rFR/strings.xml rename to res/values-my/strings.xml diff --git a/res/values-si-rLK/plurals.xml b/res/values-ne/plurals.xml similarity index 100% rename from res/values-si-rLK/plurals.xml rename to res/values-ne/plurals.xml diff --git a/res/values-pa-rIN/strings.xml b/res/values-ne/strings.xml similarity index 100% rename from res/values-pa-rIN/strings.xml rename to res/values-ne/strings.xml diff --git a/res/values-sr-rCS/plurals.xml b/res/values-oc/plurals.xml similarity index 100% rename from res/values-sr-rCS/plurals.xml rename to res/values-oc/plurals.xml diff --git a/res/values-si-rLK/strings.xml b/res/values-oc/strings.xml similarity index 100% rename from res/values-si-rLK/strings.xml rename to res/values-oc/strings.xml diff --git a/res/values-ur-rPK/plurals.xml b/res/values-pa/plurals.xml similarity index 100% rename from res/values-ur-rPK/plurals.xml rename to res/values-pa/plurals.xml diff --git a/res/values-sr-rCS/strings.xml b/res/values-pa/strings.xml similarity index 100% rename from res/values-sr-rCS/strings.xml rename to res/values-pa/strings.xml diff --git a/res/values-pl/plurals.xml b/res/values-pl/plurals.xml index 918bdd7..9827780 100644 --- a/res/values-pl/plurals.xml +++ b/res/values-pl/plurals.xml @@ -18,69 +18,14 @@ --> - - %d wykonawca - %d wykonawców - %d wykonawców - - - %d album - %d albumy - %d albumów - - - %d utwór - %d utwory - %d utworów - - - %d gatunek - %d gatunki - %d gatunków - - - %dh - %dh - %dh - - - %dmin - %dmin - %dmin - - - %d utwór dodany do listy odtwarzania. - %d utwory dodane do listy odtwarzania. - %d utworów dodanych do listy odtwarzania. - - - %d utwór usunięty z listy odtwarzania. - %d utwory usunięte z listy odtwarzania. - %d utworów usunięto z listy odtwarzania. - - - %d utwór dodany do kolejki. - %d utwory dodane do kolejki. - %d utworów dodanych do kolejki. - - - %d utwór dodany do ulubionych. - %d utwory dodane do ulubionych. - %d utworów dodano do ulubionych. - - - %d utwór został usunięty. - %d utwory zostały usunięte. - %d utworów zostało usunięte. - diff --git a/res/values-ru/plurals.xml b/res/values-ru/plurals.xml index 6d271c8..9827780 100644 --- a/res/values-ru/plurals.xml +++ b/res/values-ru/plurals.xml @@ -18,69 +18,14 @@ --> - - %d исполнитель - %d исполнителя - %d исполнителей - - - %d альбом - %d альбома - %d альбомов - - - %d трек - %d трека - %d треков - - - %d жанр - %d жанра - %d жанров - - - %d ч. - %d ч. - %d ч. - - - %d мин. - %d мин. - %d мин. - - - %d трек добавлен в плейлист. - %d трека добавлены в плейлист. - %d треков добавлены в плейлист. - - - %d трек удалён из плейлиста. - %d трека удалены из плейлиста. - %d треков удалены из плейлиста. - - - %d трек добавлен в очередь. - %d трека добавлены в очередь. - %d треков добавлены в очередь. - - - %d трек добавлен в избранное. - %d трека добавлены в избранное. - %d треков добавлены в избранное. - - - %d трек удален. - %d трека удалены. - %d треков удалены. - diff --git a/res/values-uz-rUZ/plurals.xml b/res/values-si/plurals.xml similarity index 100% rename from res/values-uz-rUZ/plurals.xml rename to res/values-si/plurals.xml diff --git a/res/values-ur-rPK/strings.xml b/res/values-si/strings.xml similarity index 100% rename from res/values-ur-rPK/strings.xml rename to res/values-si/strings.xml diff --git a/res/values-sk/plurals.xml b/res/values-sk/plurals.xml index 217a6d4..3244758 100644 --- a/res/values-sk/plurals.xml +++ b/res/values-sk/plurals.xml @@ -21,66 +21,77 @@ %d interpret %d interpreti + %d interpretov %d interpretov %d album %d albumy + %d albumov %d albumov %d skladba %d skladby + %d skladieb %d skladieb %d žáner %d žánry + %d žánrov %d žánrov %dh %dh + %dh %dh %dm %dm + %dm %dm %d skladba bola pridaná do zoznamu skladieb. %d skladby boli pridané do zoznamu skladieb. + %d skladieb bolo pridaných do zoznamu skladieb. %d skladieb bolo pridaných do zoznamu skladieb. %d skladba bola odstránená zo zoznamu skladieb. %d skladby boli odstránené zo zoznamu skladieb. + %d skladieb bolo odstránených zo zoznamu skladieb. %d skladieb bolo odstránených zo zoznamu skladieb. %d skladba bola pridaná do poradia. %d skladby boli pridané do poradia. + %d skladieb bolo pridaných do poradia. %d skladieb bolo pridaných do poradia. %d skladba bola pridaná do obľúbených. %d skladby boli pridané do obľúbených. + %d skladieb bolo pridaných do obľúbených. %d skladieb bolo pridaných do obľúbených. %d skladba bola vymazaná. %d skladby boli vymazané. + %d skladieb boo vymazaných. %d skladieb boo vymazaných. diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml index 29fd291..a0cfc2f 100644 --- a/res/values-sl/strings.xml +++ b/res/values-sl/strings.xml @@ -148,7 +148,7 @@ Ni nedavnih skladb Skladbe, ki ste jih nedavno poslušali, bodo prikazane tukaj. Na seznamu predvajanja ni skladb - Za dodajanje skladb na ta seznam predvajanja tapnite meni možnosti na skladbi, albumu ali izvajalcu in izberite \"Dodaj na seznam predvajanja\". + Za dodajanje skladb na ta seznam predvajanja tapnite meni možnosti na skladbi, albumu ali izvajalcu in izberite »Dodaj na seznam predvajanja«. Ni največkrat predvajanih Skladbe, ki ste jih največkrat poslušali, bodo dodane na ta seznam. Ni nedavno dodanih skladb @@ -156,7 +156,7 @@ Glasbe ni bilo najdene Za kopiranje glasbe iz vašega računalnika na vašo napravo uporabite kabel USB. Ni skladb v čakalni vrsti predvajanja - Za dodajanje skladb v čakalno vrsto predvajanja tapnite meni možnosti na skladbi, albumu ali izvajalcu in izberite \"Dodaj v čakalno vrsto\". + Za dodajanje skladb v čakalno vrsto predvajanja tapnite meni možnosti na skladbi, albumu ali izvajalcu in izberite »Dodaj v čakalno vrsto«. Skladbe %1$s ni mogoče predvajati Neznano leto diff --git a/res/values-sq-rAL/plurals.xml b/res/values-sq/plurals.xml similarity index 100% rename from res/values-sq-rAL/plurals.xml rename to res/values-sq/plurals.xml diff --git a/res/values-sq-rAL/strings.xml b/res/values-sq/strings.xml similarity index 100% rename from res/values-sq-rAL/strings.xml rename to res/values-sq/strings.xml diff --git a/res/values-ta-rIN/strings.xml b/res/values-ta-rIN/strings.xml deleted file mode 100644 index 9bd2bbc..0000000 --- a/res/values-ta-rIN/strings.xml +++ /dev/null @@ -1,189 +0,0 @@ - - - - - இசை - - சமீபத்தியவை - கலைஞர்கள் - ஆல்பங்கள் - பாடல்கள் - இசைப்பட்டியல்கள் - வகைகள் - இப்போது இயங்குகிறது - இயக்க சாரை - - ஆல்பங்கள் - முதன்மையான பாடல்கள் - அனைத்து பாடல்கள் - - அமைப்புகள் - தேடு - குலை - அனைத்தையும் குலை - குலை இசைப்பட்டியல் - குலை ஆல்பம் - குலை கலைஞர்கள் - குலை முதன்மையான தடங்கள் - குலை சமீபத்திய்ல் இயக்கியதை - குலை கடைசியாக சேர்த்ததை - அனைத்தையும் இயக்கு - இதன்படி வரிசைப்படுத்து - பட்டியலை அழி - சமீபத்தியதை அழி - சாரை அழி - சாரை இசைப்பட்டியலில் சேமி - ஈக்வலைசர் - - இசைப்பட்டியலுக்குச் சேர் - சாரையுடன் சேர் - சமீபத்தியதில் இருந்து நீக்கு - சாரையில் இருந்து நீக்கு - - A-Z - Z-A - கலைஞர் - ஆல்பம் - ஆண்டு - கால அளவு - சேர்க்கப்பட்ட தேதி - தட பட்டியல் - பாடல்களின் எண்ணிக்கை - ஆல்பங்களின் எண்ணிக்கை - கோப்புப்பெயர் - - கடைசியாக சேர்க்கப்பட்டது - சமீபத்தில் இயக்கப்பட்டது - என் முதன்மையான தடங்கள் - - புதிய இசைப்பட்டியல் - சேமி - ரத்துசெய் - மேலெழுது - அழி - இசைப்பட்டியல் %d - இசைப்பட்டியல் பெயர் - நீக்கு %s? - முதன்மையான தடங்களை அழிக்கவா? - சமீபத்தில் இயக்கியவற்றை அழிக்கவா? - கடைசியாக சேர்த்தவற்றை அழிக்கவா? - இதை செயல்நீக்க முடியாது - இது நிரந்தரமாக தேக்கிய பட உள்ளீடுகளை நீக்கிவிடும் - கேலரியிலிருந்து படத்தைத் தேர்வுசெய்க - Google தேடல் - இயல்புநிலை புகைப்படத்தை பயன்படுத்தவும் - பழைய புகைப்படத்தை பயன்படுத்தவும் - - இயக்கு - அடுத்ததை இயக்கு - ஆல்பத்தை இயக்கு - கலைஞரினால் மேலும் - மறுபெயரிடு - நீக்கு - ஆல்பம் கலையை எடு - கலைஞர் படத்தை எடு - சமீபத்தியதில் இருந்து நீக்கு - வளையமாகப் பயன்படுத்து - இசைப்பட்டியலிலிருந்து அகற்று - படத்தை மாற்று - - இயக்கு - இடைநிறுத்து - அடுத்து - முந்தையது - குலை - அனைத்தையும் குலை - மீண்டும் - அனைத்தையும் மீண்டும் இயக்கு - ஒன்றை மீண்டும் இயக்கு - சாரையை திற - இசையை உலாவு - - \'%s\' ஐ ரிங்டோனாக அமை - இசைப்பட்டியல் மறுபெயரிடப்பட்டது - - இடைமுகம் - சேமிப்பிடம் - தரவு - தேக்கத்தை நீக்கு - தேக்கப்பட்ட படங்கள் அனைத்தையும் நீக்கு - Wi-fi வழியாக மட்டுமே பதிவிறக்கு - கேரியர் கட்டணங்களை குறைக்க, மொபைல் பிணையங்களில் பதிவிறக்காதே - பதிவிறக்கத்தில் ஆல்பம் கலையை காணவில்லை - பதிவிறக்கத்தில் ஆல்பம் கலைஞர் படங்களைக் காணவில்லை - பொது - இசை காட்சிப்படுத்தலை காண்பி - பாடல் வரிகளைக் காண்பி - srt கோப்பு உடைய பாடல்களுக்கு - இயக்க அசை - அடுத்த பாடலை இயக்குவதற்கு உங்கள் சாதனத்தை அசைக்கவும் - பூட்டுத் திரை ஆல்பம் கலை - பூட்டுத்திரை பின்னணியை ஆல்பம் கலையால் மாற்றிடவும் - - இசை: 4 \u00d7 1 - இசை: 4 \u00d7 2 - இசை: 4 \u00d7 2 (மாற்று) - இசை:சமீபத்தில் கேட்டது - - சமமாக்கியை திறக்க முடியவில்லை. - உங்கள் கணினியில் இருந்து உங்கள் கருவிக்கு இசையை நகலெடுக்க, ஒரு USB கம்பி இழையை பயன்படுத்தவும் - தேடல் முடிவுகள் எதுவும் கண்டுபிடிக்கப்படவில்லை - உங்களிடம் சரியான எழுத்துக்கூட்டுரு இருகிறதா என தயவுசெய்து சரிபார்க்கவும் அல்லது வேறு திறவுச்சொல்லைப் பயன்படுத்தவும். - நீங்கள் விருப்பமானது என்று குறிப்பிடும் பாடல்கள் இங்கே காட்டப்படும். - சமீபத்திய பாடல்கள் இல்லை - நீங்கள் சமீபத்தில் கேட்ட பாடல்கள் இங்கே காட்டப்படும். - இசைப்பட்டியலில் பாடல்கள் இல்லை. - இந்த இசைப்பட்டியலில் பாடல்களை சேர்க்க, ஒரு பாடல், ஆல்பம் அல்லது கலைஞரில் உள்ள விருப்பங்கள் மெனுவை தட்டி \"இசைப்பட்டியலில் சேர்\"ஐ தேர்வுசெய் - முதன்மையான தடங்கள் இல்லை - நீங்கள் அதிகமாக கேட்கும் பாடல்கள் இந்த பட்டியலில் சேர்க்கப்படும். - சமீபத்தில் பாடல்கள் எதுவும் சேர்க்கப்படவில்லை. - சென்ற மாதம் நீங்கள் சேர்த்த பாடல்கள் இங்கே காட்டபப்டும். - இசை எதுவும் கண்டுபிடிக்கப்படவில்லை - உங்கள் கணினியில் இருந்து உங்கள் கருவிக்கு இசையை நகலெடுக்க, ஒரு USB கம்பி இழையை பயன்படுத்தவும் - இயக்க சாரத்தில் பாடல்கள் எதுவும் இல்லை. - இந்த சாரையில் பாடல்களை சேர்க்க, ஒரு பாடல், ஆல்பம் அல்லது கலைஞரில் உள்ள விருப்பங்கள் மெனுவை தட்டி \"வரிசையில் சேர்\"ஐ தேர்வுசெய். - %1$s தடத்தை இயக்க முடியவில்லை - - அறியப்படாத ஆண்டு - 30 வினாடிகளுக்கும் குறைவாக - 30-60 வினாடிகள் - 1 - 2 நிமிடங்கள் - 2 - 3 நிமிடங்கள் - 3 - 4 நிமிடங்கள் - 4 - 5 நிமிடங்கள் - 5 - 10 நிமிடங்கள் - 10 - 30 நிமிடங்கள் - 30 - 60 நிமிடங்கள் - 60 நிமிடங்களுக்கு மேல் - 1 பாடல் - 2 - 4 பாடல்கள் - 5 - 9 பாடல்கள் - 10+ பாடல்கள் - 5+ ஆல்பம்கள் - ""மற்றவை"" - அனைத்து கலைஞர்களையும் காண்பி - அனைத்து ஆல்பங்களையும் காண்பி - அனைத்து பாடல்களையும் காண்பி - அனைத்து இசைப்பட்டியல்களையும் காண்பி - இசையை தேடு - அனைத்து \”%s\" கலைஞர்கள் - அனைத்து \”%s\" ஆல்பங்கள் - அனைத்து \”%s\" பாடல்கள் - அனைத்து \”%s\" இசைப்பட்டியல்கள் - %1$s %2$s - diff --git a/res/values-ta-rIN/plurals.xml b/res/values-ta/plurals.xml similarity index 100% rename from res/values-ta-rIN/plurals.xml rename to res/values-ta/plurals.xml diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml index 712ff2c..9bd2bbc 100644 --- a/res/values-ta/strings.xml +++ b/res/values-ta/strings.xml @@ -1,5 +1,5 @@ - + - பழைய புகைப்படம் பயன்படுத்தவும் + இசை + + சமீபத்தியவை + கலைஞர்கள் + ஆல்பங்கள் + பாடல்கள் + இசைப்பட்டியல்கள் + வகைகள் + இப்போது இயங்குகிறது + இயக்க சாரை + + ஆல்பங்கள் + முதன்மையான பாடல்கள் + அனைத்து பாடல்கள் + + அமைப்புகள் + தேடு + குலை + அனைத்தையும் குலை + குலை இசைப்பட்டியல் + குலை ஆல்பம் + குலை கலைஞர்கள் + குலை முதன்மையான தடங்கள் + குலை சமீபத்திய்ல் இயக்கியதை + குலை கடைசியாக சேர்த்ததை + அனைத்தையும் இயக்கு + இதன்படி வரிசைப்படுத்து + பட்டியலை அழி + சமீபத்தியதை அழி + சாரை அழி + சாரை இசைப்பட்டியலில் சேமி + ஈக்வலைசர் + + இசைப்பட்டியலுக்குச் சேர் + சாரையுடன் சேர் + சமீபத்தியதில் இருந்து நீக்கு + சாரையில் இருந்து நீக்கு + + A-Z + Z-A + கலைஞர் + ஆல்பம் + ஆண்டு + கால அளவு + சேர்க்கப்பட்ட தேதி + தட பட்டியல் + பாடல்களின் எண்ணிக்கை + ஆல்பங்களின் எண்ணிக்கை + கோப்புப்பெயர் + + கடைசியாக சேர்க்கப்பட்டது + சமீபத்தில் இயக்கப்பட்டது + என் முதன்மையான தடங்கள் + + புதிய இசைப்பட்டியல் + சேமி + ரத்துசெய் + மேலெழுது + அழி + இசைப்பட்டியல் %d + இசைப்பட்டியல் பெயர் + நீக்கு %s? + முதன்மையான தடங்களை அழிக்கவா? + சமீபத்தில் இயக்கியவற்றை அழிக்கவா? + கடைசியாக சேர்த்தவற்றை அழிக்கவா? + இதை செயல்நீக்க முடியாது + இது நிரந்தரமாக தேக்கிய பட உள்ளீடுகளை நீக்கிவிடும் + கேலரியிலிருந்து படத்தைத் தேர்வுசெய்க + Google தேடல் + இயல்புநிலை புகைப்படத்தை பயன்படுத்தவும் + பழைய புகைப்படத்தை பயன்படுத்தவும் + + இயக்கு + அடுத்ததை இயக்கு + ஆல்பத்தை இயக்கு + கலைஞரினால் மேலும் + மறுபெயரிடு + நீக்கு + ஆல்பம் கலையை எடு + கலைஞர் படத்தை எடு + சமீபத்தியதில் இருந்து நீக்கு + வளையமாகப் பயன்படுத்து + இசைப்பட்டியலிலிருந்து அகற்று + படத்தை மாற்று + + இயக்கு + இடைநிறுத்து + அடுத்து + முந்தையது + குலை + அனைத்தையும் குலை + மீண்டும் + அனைத்தையும் மீண்டும் இயக்கு + ஒன்றை மீண்டும் இயக்கு + சாரையை திற + இசையை உலாவு + + \'%s\' ஐ ரிங்டோனாக அமை + இசைப்பட்டியல் மறுபெயரிடப்பட்டது + + இடைமுகம் + சேமிப்பிடம் + தரவு + தேக்கத்தை நீக்கு + தேக்கப்பட்ட படங்கள் அனைத்தையும் நீக்கு + Wi-fi வழியாக மட்டுமே பதிவிறக்கு + கேரியர் கட்டணங்களை குறைக்க, மொபைல் பிணையங்களில் பதிவிறக்காதே + பதிவிறக்கத்தில் ஆல்பம் கலையை காணவில்லை + பதிவிறக்கத்தில் ஆல்பம் கலைஞர் படங்களைக் காணவில்லை + பொது + இசை காட்சிப்படுத்தலை காண்பி + பாடல் வரிகளைக் காண்பி + srt கோப்பு உடைய பாடல்களுக்கு + இயக்க அசை + அடுத்த பாடலை இயக்குவதற்கு உங்கள் சாதனத்தை அசைக்கவும் + பூட்டுத் திரை ஆல்பம் கலை + பூட்டுத்திரை பின்னணியை ஆல்பம் கலையால் மாற்றிடவும் + + இசை: 4 \u00d7 1 + இசை: 4 \u00d7 2 + இசை: 4 \u00d7 2 (மாற்று) + இசை:சமீபத்தில் கேட்டது + + சமமாக்கியை திறக்க முடியவில்லை. + உங்கள் கணினியில் இருந்து உங்கள் கருவிக்கு இசையை நகலெடுக்க, ஒரு USB கம்பி இழையை பயன்படுத்தவும் + தேடல் முடிவுகள் எதுவும் கண்டுபிடிக்கப்படவில்லை + உங்களிடம் சரியான எழுத்துக்கூட்டுரு இருகிறதா என தயவுசெய்து சரிபார்க்கவும் அல்லது வேறு திறவுச்சொல்லைப் பயன்படுத்தவும். + நீங்கள் விருப்பமானது என்று குறிப்பிடும் பாடல்கள் இங்கே காட்டப்படும். + சமீபத்திய பாடல்கள் இல்லை + நீங்கள் சமீபத்தில் கேட்ட பாடல்கள் இங்கே காட்டப்படும். + இசைப்பட்டியலில் பாடல்கள் இல்லை. + இந்த இசைப்பட்டியலில் பாடல்களை சேர்க்க, ஒரு பாடல், ஆல்பம் அல்லது கலைஞரில் உள்ள விருப்பங்கள் மெனுவை தட்டி \"இசைப்பட்டியலில் சேர்\"ஐ தேர்வுசெய் + முதன்மையான தடங்கள் இல்லை + நீங்கள் அதிகமாக கேட்கும் பாடல்கள் இந்த பட்டியலில் சேர்க்கப்படும். + சமீபத்தில் பாடல்கள் எதுவும் சேர்க்கப்படவில்லை. + சென்ற மாதம் நீங்கள் சேர்த்த பாடல்கள் இங்கே காட்டபப்டும். + இசை எதுவும் கண்டுபிடிக்கப்படவில்லை + உங்கள் கணினியில் இருந்து உங்கள் கருவிக்கு இசையை நகலெடுக்க, ஒரு USB கம்பி இழையை பயன்படுத்தவும் + இயக்க சாரத்தில் பாடல்கள் எதுவும் இல்லை. + இந்த சாரையில் பாடல்களை சேர்க்க, ஒரு பாடல், ஆல்பம் அல்லது கலைஞரில் உள்ள விருப்பங்கள் மெனுவை தட்டி \"வரிசையில் சேர்\"ஐ தேர்வுசெய். + %1$s தடத்தை இயக்க முடியவில்லை + + அறியப்படாத ஆண்டு + 30 வினாடிகளுக்கும் குறைவாக + 30-60 வினாடிகள் + 1 - 2 நிமிடங்கள் + 2 - 3 நிமிடங்கள் + 3 - 4 நிமிடங்கள் + 4 - 5 நிமிடங்கள் + 5 - 10 நிமிடங்கள் + 10 - 30 நிமிடங்கள் + 30 - 60 நிமிடங்கள் + 60 நிமிடங்களுக்கு மேல் + 1 பாடல் + 2 - 4 பாடல்கள் + 5 - 9 பாடல்கள் + 10+ பாடல்கள் + 5+ ஆல்பம்கள் + ""மற்றவை"" + அனைத்து கலைஞர்களையும் காண்பி + அனைத்து ஆல்பங்களையும் காண்பி + அனைத்து பாடல்களையும் காண்பி + அனைத்து இசைப்பட்டியல்களையும் காண்பி + இசையை தேடு + அனைத்து \”%s\" கலைஞர்கள் + அனைத்து \”%s\" ஆல்பங்கள் + அனைத்து \”%s\" பாடல்கள் + அனைத்து \”%s\" இசைப்பட்டியல்கள் + %1$s %2$s diff --git a/res/values-te-rIN/plurals.xml b/res/values-te/plurals.xml similarity index 100% rename from res/values-te-rIN/plurals.xml rename to res/values-te/plurals.xml diff --git a/res/values-te-rIN/strings.xml b/res/values-te/strings.xml similarity index 100% rename from res/values-te-rIN/strings.xml rename to res/values-te/strings.xml diff --git a/res/values-vec-rIT/plurals.xml b/res/values-tl/plurals.xml similarity index 100% rename from res/values-vec-rIT/plurals.xml rename to res/values-tl/plurals.xml diff --git a/res/values-uz-rUZ/strings.xml b/res/values-tl/strings.xml similarity index 100% rename from res/values-uz-rUZ/strings.xml rename to res/values-tl/strings.xml diff --git a/res/values-ug/plurals.xml b/res/values-ug/plurals.xml index 42fea7b..9827780 100644 --- a/res/values-ug/plurals.xml +++ b/res/values-ug/plurals.xml @@ -18,47 +18,14 @@ --> - - %d سەنئەتكار - - - %d ناخشا توپلىمى - - - %d ناخشا - - - %d تىپ - - - %d سائەت - - - %d مىنۇت - - - چالىدىغان تىزىمغا %d ناخشا قوشۇلدى. - - - چالىدىغان تىزىمدىن %d ناخشا چىقىرىۋېتىلدى. - - - ئۆچىرەتكە %d ناخشا قوشۇلدى. - - - يىغقۇچقا %d ناخشا قوشۇلدى. - - - ناخشىدىن %d ئۆچۈرۈلدى. - diff --git a/res/values-uk/plurals.xml b/res/values-uk/plurals.xml index 17dbd1e..9827780 100644 --- a/res/values-uk/plurals.xml +++ b/res/values-uk/plurals.xml @@ -18,69 +18,14 @@ --> - - %d виконавець - %d виконавці - %d виконавців - - - %d альбом - %d альбоми - %d альбомів - - - %d пісня - %d пісні - %d пісень - - - %d жанр - %d жанри - %d жанрів - - - %dг - %dг - %dг - - - %dх - %dх - %dх - - - %d композиція додана в список. - %d композиції додано в список. - %d композицій додано в список. - - - %d композиція вилучена зі списку відтворення. - %d композиції вилучено зі списку відтворення. - %d композицій вилучено зі списку відтворення. - - - %d композиція додана в чергу. - %d композиції додано в чергу. - %d композицій додано в чергу. - - - %d композиція додана в Улюблене. - %d композиції додано в Улюблене. - %d композицій додано в Улюблене. - - - %d композиція видалена. - %d композиції видалено. - %d пісні були видалені. - diff --git a/res/values-ur/plurals.xml b/res/values-ur/plurals.xml new file mode 100644 index 0000000..9827780 --- /dev/null +++ b/res/values-ur/plurals.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + diff --git a/res/values-vec-rIT/strings.xml b/res/values-ur/strings.xml similarity index 100% rename from res/values-vec-rIT/strings.xml rename to res/values-ur/strings.xml diff --git a/res/values-uz/plurals.xml b/res/values-uz/plurals.xml new file mode 100644 index 0000000..9827780 --- /dev/null +++ b/res/values-uz/plurals.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml new file mode 100644 index 0000000..ac715c0 --- /dev/null +++ b/res/values-uz/strings.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + diff --git a/res/values-vec/plurals.xml b/res/values-vec/plurals.xml new file mode 100644 index 0000000..9827780 --- /dev/null +++ b/res/values-vec/plurals.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + diff --git a/res/values-vec/strings.xml b/res/values-vec/strings.xml new file mode 100644 index 0000000..ac715c0 --- /dev/null +++ b/res/values-vec/strings.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/main/aidl/com/cyanogenmod/eleven/service/MusicPlaybackTrack.aidl b/src/main/aidl/com/cyanogenmod/eleven/service/MusicPlaybackTrack.aidl deleted file mode 100644 index efdd951..0000000 --- a/src/main/aidl/com/cyanogenmod/eleven/service/MusicPlaybackTrack.aidl +++ /dev/null @@ -1,5 +0,0 @@ -package com.cyanogenmod.eleven.service; - -import com.cyanogenmod.eleven.service.MusicPlaybackTrack; - -parcelable MusicPlaybackTrack; \ No newline at end of file diff --git a/src/main/aidl/com/cyanogenmod/eleven/IElevenService.aidl b/src/main/aidl/org/lineageos/eleven/IElevenService.aidl similarity index 94% rename from src/main/aidl/com/cyanogenmod/eleven/IElevenService.aidl rename to src/main/aidl/org/lineageos/eleven/IElevenService.aidl index e3b0acf..b53a874 100644 --- a/src/main/aidl/com/cyanogenmod/eleven/IElevenService.aidl +++ b/src/main/aidl/org/lineageos/eleven/IElevenService.aidl @@ -1,6 +1,6 @@ -package com.cyanogenmod.eleven; +package org.lineageos.eleven; -import com.cyanogenmod.eleven.service.MusicPlaybackTrack; +import org.lineageos.eleven.service.MusicPlaybackTrack; interface IElevenService { diff --git a/src/main/aidl/org/lineageos/eleven/service/MusicPlaybackTrack.aidl b/src/main/aidl/org/lineageos/eleven/service/MusicPlaybackTrack.aidl new file mode 100644 index 0000000..b5d0f13 --- /dev/null +++ b/src/main/aidl/org/lineageos/eleven/service/MusicPlaybackTrack.aidl @@ -0,0 +1,5 @@ +package org.lineageos.eleven.service; + +import org.lineageos.eleven.service.MusicPlaybackTrack; + +parcelable MusicPlaybackTrack; \ No newline at end of file diff --git a/src/main/java/com/cyanogenmod/eleven/Config.java b/src/main/java/org/lineageos/eleven/Config.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/Config.java rename to src/main/java/org/lineageos/eleven/Config.java index 3ebdac8..3a3096f 100644 --- a/src/main/java/com/cyanogenmod/eleven/Config.java +++ b/src/main/java/org/lineageos/eleven/Config.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven; +package org.lineageos.eleven; /** * App-wide constants. diff --git a/src/main/java/com/cyanogenmod/eleven/ElevenApplication.java b/src/main/java/org/lineageos/eleven/ElevenApplication.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/ElevenApplication.java rename to src/main/java/org/lineageos/eleven/ElevenApplication.java index e01406b..e61c6d7 100644 --- a/src/main/java/com/cyanogenmod/eleven/ElevenApplication.java +++ b/src/main/java/org/lineageos/eleven/ElevenApplication.java @@ -11,12 +11,12 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven; +package org.lineageos.eleven; import android.app.Application; import android.os.StrictMode; -import com.cyanogenmod.eleven.cache.ImageCache; +import org.lineageos.eleven.cache.ImageCache; import java.util.logging.Level; import java.util.logging.Logger; diff --git a/src/main/java/com/cyanogenmod/eleven/MediaButtonIntentReceiver.java b/src/main/java/org/lineageos/eleven/MediaButtonIntentReceiver.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/MediaButtonIntentReceiver.java rename to src/main/java/org/lineageos/eleven/MediaButtonIntentReceiver.java index 4f9e9af..2c6a607 100644 --- a/src/main/java/com/cyanogenmod/eleven/MediaButtonIntentReceiver.java +++ b/src/main/java/org/lineageos/eleven/MediaButtonIntentReceiver.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven; +package org.lineageos.eleven; import android.content.Context; import android.content.Intent; diff --git a/src/main/java/com/cyanogenmod/eleven/MusicPlaybackService.java b/src/main/java/org/lineageos/eleven/MusicPlaybackService.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/MusicPlaybackService.java rename to src/main/java/org/lineageos/eleven/MusicPlaybackService.java index 2688de0..04092c4 100644 --- a/src/main/java/com/cyanogenmod/eleven/MusicPlaybackService.java +++ b/src/main/java/org/lineageos/eleven/MusicPlaybackService.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven; +package org.lineageos.eleven; import android.Manifest.permission; import android.annotation.SuppressLint; @@ -20,6 +20,7 @@ import android.support.v4.app.NotificationCompat; import android.support.v4.media.app.NotificationCompat.MediaStyle; import android.app.NotificationManager; +import android.app.NotificationChannel; import android.app.PendingIntent; import android.app.Service; import android.appwidget.AppWidgetManager; @@ -64,21 +65,21 @@ import android.util.LongSparseArray; import android.view.KeyEvent; -import com.cyanogenmod.eleven.Config.IdType; -import com.cyanogenmod.eleven.appwidgets.AppWidgetLarge; -import com.cyanogenmod.eleven.appwidgets.AppWidgetLargeAlternate; -import com.cyanogenmod.eleven.appwidgets.AppWidgetSmall; -import com.cyanogenmod.eleven.cache.ImageCache; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.provider.MusicPlaybackState; -import com.cyanogenmod.eleven.provider.RecentStore; -import com.cyanogenmod.eleven.provider.SongPlayCount; -import com.cyanogenmod.eleven.service.MusicPlaybackTrack; -import com.cyanogenmod.eleven.utils.BitmapWithColors; -import com.cyanogenmod.eleven.utils.Lists; -import com.cyanogenmod.eleven.utils.PreferenceUtils; -import com.cyanogenmod.eleven.utils.ShakeDetector; -import com.cyanogenmod.eleven.utils.SrtManager; +import org.lineageos.eleven.Config.IdType; +import org.lineageos.eleven.appwidgets.AppWidgetLarge; +import org.lineageos.eleven.appwidgets.AppWidgetLargeAlternate; +import org.lineageos.eleven.appwidgets.AppWidgetSmall; +import org.lineageos.eleven.cache.ImageCache; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.provider.MusicPlaybackState; +import org.lineageos.eleven.provider.RecentStore; +import org.lineageos.eleven.provider.SongPlayCount; +import org.lineageos.eleven.service.MusicPlaybackTrack; +import org.lineageos.eleven.utils.BitmapWithColors; +import org.lineageos.eleven.utils.Lists; +import org.lineageos.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.utils.ShakeDetector; +import org.lineageos.eleven.utils.SrtManager; import java.io.File; import java.io.IOException; @@ -93,106 +94,107 @@ /** * A backbround {@link Service} used to keep music playing between activities - * and when the user moves Apollo into the background. + * and when the user moves Eleven into the background. */ @SuppressLint("NewApi") public class MusicPlaybackService extends Service { private static final String TAG = "MusicPlaybackService"; private static final boolean D = false; + public static final String CHANNEL_ID = "eleven_channel_01"; /** * Indicates that the music has paused or resumed */ - public static final String PLAYSTATE_CHANGED = "com.cyanogenmod.eleven.playstatechanged"; + public static final String PLAYSTATE_CHANGED = "org.lineageos.eleven.playstatechanged"; /** * Indicates that music playback position within * a title was changed */ - public static final String POSITION_CHANGED = "com.cyanogenmod.eleven.positionchanged"; + public static final String POSITION_CHANGED = "org.lineageos.eleven.positionchanged"; /** * Indicates the meta data has changed in some way, like a track change */ - public static final String META_CHANGED = "com.cyanogenmod.eleven.metachanged"; + public static final String META_CHANGED = "org.lineageos.eleven.metachanged"; /** * Indicates the queue has been updated */ - public static final String QUEUE_CHANGED = "com.cyanogenmod.eleven.queuechanged"; + public static final String QUEUE_CHANGED = "org.lineageos.eleven.queuechanged"; /** * Indicates the queue has been updated */ - public static final String PLAYLIST_CHANGED = "com.cyanogenmod.eleven.playlistchanged"; + public static final String PLAYLIST_CHANGED = "org.lineageos.eleven.playlistchanged"; /** * Indicates the repeat mode changed */ - public static final String REPEATMODE_CHANGED = "com.cyanogenmod.eleven.repeatmodechanged"; + public static final String REPEATMODE_CHANGED = "org.lineageos.eleven.repeatmodechanged"; /** * Indicates the shuffle mode changed */ - public static final String SHUFFLEMODE_CHANGED = "com.cyanogenmod.eleven.shufflemodechanged"; + public static final String SHUFFLEMODE_CHANGED = "org.lineageos.eleven.shufflemodechanged"; /** * Indicates the track fails to play */ - public static final String TRACK_ERROR = "com.cyanogenmod.eleven.trackerror"; + public static final String TRACK_ERROR = "org.lineageos.eleven.trackerror"; /** * For backwards compatibility reasons, also provide sticky * broadcasts under the music package */ - public static final String ELEVEN_PACKAGE_NAME = "com.cyanogenmod.eleven"; + public static final String ELEVEN_PACKAGE_NAME = "org.lineageos.eleven"; public static final String MUSIC_PACKAGE_NAME = "com.android.music"; /** * Called to indicate a general service commmand. Used in * {@link MediaButtonIntentReceiver} */ - public static final String SERVICECMD = "com.cyanogenmod.eleven.musicservicecommand"; + public static final String SERVICECMD = "org.lineageos.eleven.musicservicecommand"; /** * Called to go toggle between pausing and playing the music */ - public static final String TOGGLEPAUSE_ACTION = "com.cyanogenmod.eleven.togglepause"; + public static final String TOGGLEPAUSE_ACTION = "org.lineageos.eleven.togglepause"; /** * Called to go to pause the playback */ - public static final String PAUSE_ACTION = "com.cyanogenmod.eleven.pause"; + public static final String PAUSE_ACTION = "org.lineageos.eleven.pause"; /** * Called to go to stop the playback */ - public static final String STOP_ACTION = "com.cyanogenmod.eleven.stop"; + public static final String STOP_ACTION = "org.lineageos.eleven.stop"; /** * Called to go to the previous track or the beginning of the track if partway through the track */ - public static final String PREVIOUS_ACTION = "com.cyanogenmod.eleven.previous"; + public static final String PREVIOUS_ACTION = "org.lineageos.eleven.previous"; /** * Called to go to the previous track regardless of how far in the current track the playback is */ - public static final String PREVIOUS_FORCE_ACTION = "com.cyanogenmod.eleven.previous.force"; + public static final String PREVIOUS_FORCE_ACTION = "org.lineageos.eleven.previous.force"; /** * Called to go to the next track */ - public static final String NEXT_ACTION = "com.cyanogenmod.eleven.next"; + public static final String NEXT_ACTION = "org.lineageos.eleven.next"; /** * Called to change the repeat mode */ - public static final String REPEAT_ACTION = "com.cyanogenmod.eleven.repeat"; + public static final String REPEAT_ACTION = "org.lineageos.eleven.repeat"; /** * Called to change the shuffle mode */ - public static final String SHUFFLE_ACTION = "com.cyanogenmod.eleven.shuffle"; + public static final String SHUFFLE_ACTION = "org.lineageos.eleven.shuffle"; public static final String FROM_MEDIA_BUTTON = "frommediabutton"; @@ -202,22 +204,22 @@ public class MusicPlaybackService extends Service { * Used to easily notify a list that it should refresh. i.e. A playlist * changes */ - public static final String REFRESH = "com.cyanogenmod.eleven.refresh"; + public static final String REFRESH = "org.lineageos.eleven.refresh"; /** * Used by the alarm intent to shutdown the service after being idle */ - private static final String SHUTDOWN = "com.cyanogenmod.eleven.shutdown"; + private static final String SHUTDOWN = "org.lineageos.eleven.shutdown"; /** * Called to notify of a timed text */ - public static final String NEW_LYRICS = "com.cyanogenmod.eleven.lyrics"; + public static final String NEW_LYRICS = "org.lineageos.eleven.lyrics"; /** * Called to update the remote control client */ - public static final String UPDATE_LOCKSCREEN = "com.cyanogenmod.eleven.updatelockscreen"; + public static final String UPDATE_LOCKSCREEN = "org.lineageos.eleven.updatelockscreen"; public static final String CMDNAME = "command"; @@ -337,8 +339,6 @@ public class MusicPlaybackService extends Service { /** * The max size allowed for the track history * TODO: Comeback and rewrite/fix all the whole queue code bugs after demo - * https://cyanogen.atlassian.net/browse/MUSIC-175 - * https://cyanogen.atlassian.net/browse/MUSIC-44 */ public static final int MAX_HISTORY_SIZE = 1000; @@ -628,6 +628,13 @@ public void onCreate() { mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { + CharSequence channelName = "Eleven"; + // Create channel to show notifications. + mNotificationManager.createNotificationChannel(new NotificationChannel(CHANNEL_ID, + channelName, NotificationManager.IMPORTANCE_LOW)); + } + // Initialize the favorites and recents databases mRecentsCache = RecentStore.getInstance(this); @@ -666,7 +673,7 @@ public void onCreate() { mShowAlbumArtOnLockscreen = mPreferences.getBoolean( PreferenceUtils.SHOW_ALBUM_ART_ON_LOCKSCREEN, true); - setShakeToPlayEnabled(mPreferences.getBoolean(PreferenceUtils.SHAKE_TO_PLAY, false)); + setShakeToPlayEnabled(mPreferences.getBoolean(PreferenceUtils.SHAKE_TO_PLAY, false)); mRepeatMode = mPreferences.getInt("repeatmode", REPEAT_NONE); mShuffleMode = mPreferences.getInt("shufflemode", SHUFFLE_NONE); @@ -1101,9 +1108,7 @@ private int removeTracksInternal(int first, int last) { // remove the items from the history // this is not ideal as the history shouldn't be impacted by this // but since we are removing items from the array, it will throw - // an exception if we keep it around. Idealistically with the queue - // rewrite this should be all be fixed - // https://cyanogen.atlassian.net/browse/MUSIC-44 + // an exception if we keep it around. ListIterator positionIterator = mHistory.listIterator(); while (positionIterator.hasNext()) { int pos = positionIterator.next(); @@ -1544,8 +1549,6 @@ private void notifyChange(final String what) { // if we are in shuffle mode and our next track is still valid, // try to re-use the track // We need to reimplement the queue to prevent hacky solutions like this - // https://cyanogen.atlassian.net/browse/MUSIC-175 - // https://cyanogen.atlassian.net/browse/MUSIC-44 if (mNextPlayPos >= 0 && mNextPlayPos < mPlaylist.size() && getShuffleMode() != SHUFFLE_NONE) { setNextTrack(mNextPlayPos); @@ -1647,7 +1650,7 @@ private Notification buildNotification() { .setMediaSession(mSession.getSessionToken()) .setShowActionsInCompactView(0, 1, 2); - Intent nowPlayingIntent = new Intent("com.cyanogenmod.eleven.AUDIO_PLAYER") + Intent nowPlayingIntent = new Intent("org.lineageos.eleven.AUDIO_PLAYER") .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); PendingIntent clickIntent = PendingIntent.getActivity(this, 0, nowPlayingIntent, 0); BitmapWithColors artwork = getAlbumArt(false); @@ -1656,7 +1659,7 @@ private Notification buildNotification() { mNotificationPostTime = System.currentTimeMillis(); } - android.support.v4.app.NotificationCompat.Builder builder = new NotificationCompat.Builder(this) + android.support.v4.app.NotificationCompat.Builder builder = new NotificationCompat.Builder(this, CHANNEL_ID) .setSmallIcon(R.drawable.ic_notification) .setLargeIcon(artwork.getBitmap()) .setContentIntent(clickIntent) @@ -1715,7 +1718,7 @@ private void saveQueue(final boolean full) { /** * Reloads the queue as the user left it the last time they stopped using - * Apollo + * Eleven */ private void reloadQueue() { int id = mCardId; @@ -3960,7 +3963,7 @@ protected List doInBackground(Void... params) { List items = new ArrayList<>(); for (int i = 0; i < mQueue.length; i++) { - MediaDescriptionCompat desc = descsById.get(mQueue[i]); + MediaDescriptionCompat desc = descsById.get(mQueue[i]); if (desc == null) { // shouldn't happen except in corner cases like // music being deleted while we were processing diff --git a/src/main/java/com/cyanogenmod/eleven/MusicStateListener.java b/src/main/java/org/lineageos/eleven/MusicStateListener.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/MusicStateListener.java rename to src/main/java/org/lineageos/eleven/MusicStateListener.java index 84bd99d..0ffa975 100644 --- a/src/main/java/com/cyanogenmod/eleven/MusicStateListener.java +++ b/src/main/java/org/lineageos/eleven/MusicStateListener.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven; +package org.lineageos.eleven; /** * Listens for playback changes to send the the fragments bound to this activity diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/AlbumAdapter.java b/src/main/java/org/lineageos/eleven/adapters/AlbumAdapter.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/adapters/AlbumAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/AlbumAdapter.java index 928f549..010f57c 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/AlbumAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/AlbumAdapter.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.app.Activity; import android.content.Context; @@ -21,13 +21,13 @@ import android.widget.ArrayAdapter; import android.widget.BaseAdapter; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.model.Album; -import com.cyanogenmod.eleven.ui.MusicHolder; -import com.cyanogenmod.eleven.ui.MusicHolder.DataHolder; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.model.Album; +import org.lineageos.eleven.ui.MusicHolder; +import org.lineageos.eleven.ui.MusicHolder.DataHolder; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.widgets.IPopupMenuCallback; import java.util.Collections; import java.util.List; @@ -80,7 +80,7 @@ public AlbumAdapter(final Activity context, final int layoutId) { // Get the layout Id mLayoutId = layoutId; // Initialize the cache & image fetcher - mImageFetcher = ApolloUtils.getImageFetcher(context); + mImageFetcher = ElevenUtils.getImageFetcher(context); mPadding = context.getResources().getDimensionPixelSize(R.dimen.list_item_general_margin); } diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/AlbumArtPagerAdapter.java b/src/main/java/org/lineageos/eleven/adapters/AlbumArtPagerAdapter.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/adapters/AlbumArtPagerAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/AlbumArtPagerAdapter.java index 111350d..83e6840 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/AlbumArtPagerAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/AlbumArtPagerAdapter.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.content.Context; import android.os.AsyncTask; @@ -27,14 +27,14 @@ import android.view.View; import android.view.ViewGroup; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ICacheListener; -import com.cyanogenmod.eleven.cache.ImageCache; -import com.cyanogenmod.eleven.model.AlbumArtistDetails; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.SquareImageView; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ICacheListener; +import org.lineageos.eleven.cache.ImageCache; +import org.lineageos.eleven.model.AlbumArtistDetails; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.SquareImageView; import java.util.Iterator; import java.util.LinkedList; @@ -152,7 +152,7 @@ private long getTrackId(int position) { * and handles loading the album art for a given audio id */ public static class AlbumArtFragment extends Fragment implements ICacheListener { - private static final String ID = "com.cyanogenmod.eleven.adapters.AlbumArtPagerAdapter.AlbumArtFragment.ID"; + private static final String ID = "org.lineageos.eleven.adapters.AlbumArtPagerAdapter.AlbumArtFragment.ID"; private View mRootView; private AlbumArtistLoader mTask; @@ -227,7 +227,7 @@ private void loadImageAsync() { } mTask = new AlbumArtistLoader(this, getActivity()); - ApolloUtils.execute(false, mTask, mAudioId); + ElevenUtils.execute(false, mTask, mAudioId); } } @@ -238,7 +238,7 @@ private void loadImageAsync() { */ private void loadImageAsync(AlbumArtistDetails details) { // load the actual image - ApolloUtils.getImageFetcher(getActivity()).loadAlbumImage( + ElevenUtils.getImageFetcher(getActivity()).loadAlbumImage( details.mArtistName, details.mAlbumName, details.mAlbumId, diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/AlbumDetailSongAdapter.java b/src/main/java/org/lineageos/eleven/adapters/AlbumDetailSongAdapter.java similarity index 86% rename from src/main/java/com/cyanogenmod/eleven/adapters/AlbumDetailSongAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/AlbumDetailSongAdapter.java index 063b468..8f6fc34 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/AlbumDetailSongAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/AlbumDetailSongAdapter.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.app.Activity; import android.content.Context; @@ -22,13 +22,13 @@ import android.view.View; import android.widget.TextView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.loaders.AlbumSongLoader; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.ui.fragments.AlbumDetailFragment; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.loaders.AlbumSongLoader; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.ui.fragments.AlbumDetailFragment; +import org.lineageos.eleven.utils.MusicUtils; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/ArtistAdapter.java b/src/main/java/org/lineageos/eleven/adapters/ArtistAdapter.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/adapters/ArtistAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/ArtistAdapter.java index 275f746..59e07b7 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/ArtistAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/ArtistAdapter.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.app.Activity; import android.content.Context; @@ -21,20 +21,20 @@ import android.view.ViewGroup; import android.widget.ArrayAdapter; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.model.Artist; -import com.cyanogenmod.eleven.sectionadapter.SectionAdapter.BasicAdapter; -import com.cyanogenmod.eleven.ui.MusicHolder; -import com.cyanogenmod.eleven.ui.MusicHolder.DataHolder; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.model.Artist; +import org.lineageos.eleven.sectionadapter.SectionAdapter.BasicAdapter; +import org.lineageos.eleven.ui.MusicHolder; +import org.lineageos.eleven.ui.MusicHolder.DataHolder; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.IPopupMenuCallback; /** * This {@link ArrayAdapter} is used to display all of the artists on a user's * device for {@link ArtistFragment}. - * + * * @author Andrew Neal (andrewdneal@gmail.com) */ /** @@ -74,7 +74,7 @@ public class ArtistAdapter extends ArrayAdapter implements BasicAdapter, /** * Constructor of ArtistAdapter - * + * * @param context The {@link Context} to use. * @param layoutId The resource Id of the view to inflate. */ @@ -83,7 +83,7 @@ public ArtistAdapter(final Activity context, final int layoutId) { // Get the layout Id mLayoutId = layoutId; // Initialize the cache & image fetcher - mImageFetcher = ApolloUtils.getImageFetcher(context); + mImageFetcher = ElevenUtils.getImageFetcher(context); // Cache the transparent overlay mOverlay = ContextCompat.getColor(context, R.color.list_item_background); } diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/ArtistDetailAlbumAdapter.java b/src/main/java/org/lineageos/eleven/adapters/ArtistDetailAlbumAdapter.java similarity index 90% rename from src/main/java/com/cyanogenmod/eleven/adapters/ArtistDetailAlbumAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/ArtistDetailAlbumAdapter.java index 4670e0d..66fec09 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/ArtistDetailAlbumAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/ArtistDetailAlbumAdapter.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.app.Activity; import android.os.Bundle; @@ -26,15 +26,15 @@ import android.widget.ImageView; import android.widget.TextView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.loaders.AlbumLoader; -import com.cyanogenmod.eleven.model.Album; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.NavUtils; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.PopupMenuButton; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.loaders.AlbumLoader; +import org.lineageos.eleven.model.Album; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.NavUtils; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.PopupMenuButton; import java.util.Collections; import java.util.List; @@ -55,7 +55,7 @@ public class ArtistDetailAlbumAdapter public ArtistDetailAlbumAdapter(final Activity activity) { mActivity = activity; - mImageFetcher = ApolloUtils.getImageFetcher(activity); + mImageFetcher = ElevenUtils.getImageFetcher(activity); mInflater = LayoutInflater.from(activity); mListMargin = activity.getResources(). getDimensionPixelSize(R.dimen.list_item_general_margin); diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/ArtistDetailSongAdapter.java b/src/main/java/org/lineageos/eleven/adapters/ArtistDetailSongAdapter.java similarity index 89% rename from src/main/java/com/cyanogenmod/eleven/adapters/ArtistDetailSongAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/ArtistDetailSongAdapter.java index 1da8464..c55025b 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/ArtistDetailSongAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/ArtistDetailSongAdapter.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.app.Activity; import android.os.Bundle; @@ -23,11 +23,11 @@ import android.widget.ImageView; import android.widget.TextView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.loaders.SongLoader; -import com.cyanogenmod.eleven.model.Song; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.loaders.SongLoader; +import org.lineageos.eleven.model.Song; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/DetailSongAdapter.java b/src/main/java/org/lineageos/eleven/adapters/DetailSongAdapter.java similarity index 90% rename from src/main/java/com/cyanogenmod/eleven/adapters/DetailSongAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/DetailSongAdapter.java index 49157af..697a9dd 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/DetailSongAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/DetailSongAdapter.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.app.Activity; import android.support.v4.app.LoaderManager.LoaderCallbacks; @@ -12,15 +12,15 @@ import android.widget.ImageView; import android.widget.TextView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.service.MusicPlaybackTrack; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.PopupMenuButton; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.service.MusicPlaybackTrack; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.PopupMenuButton; import java.util.Collections; import java.util.List; @@ -37,7 +37,7 @@ public abstract class DetailSongAdapter extends BaseAdapter public DetailSongAdapter(final Activity activity) { mActivity = activity; - mImageFetcher = ApolloUtils.getImageFetcher(activity); + mImageFetcher = ElevenUtils.getImageFetcher(activity); mInflater = LayoutInflater.from(activity); } diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/PagerAdapter.java b/src/main/java/org/lineageos/eleven/adapters/PagerAdapter.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/adapters/PagerAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/PagerAdapter.java index d0d107f..b7eea13 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/PagerAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/PagerAdapter.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.content.Context; import android.os.Bundle; @@ -21,12 +21,12 @@ import android.util.SparseArray; import android.view.ViewGroup; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.fragments.AlbumFragment; -import com.cyanogenmod.eleven.ui.fragments.ArtistFragment; -import com.cyanogenmod.eleven.ui.fragments.PlaylistFragment; -import com.cyanogenmod.eleven.ui.fragments.SongFragment; -import com.cyanogenmod.eleven.utils.Lists; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.fragments.AlbumFragment; +import org.lineageos.eleven.ui.fragments.ArtistFragment; +import org.lineageos.eleven.ui.fragments.PlaylistFragment; +import org.lineageos.eleven.ui.fragments.SongFragment; +import org.lineageos.eleven.utils.Lists; import java.lang.ref.WeakReference; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/PlaylistAdapter.java b/src/main/java/org/lineageos/eleven/adapters/PlaylistAdapter.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/adapters/PlaylistAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/PlaylistAdapter.java index 023f9f6..364c3e7 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/PlaylistAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/PlaylistAdapter.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.content.Context; import android.view.LayoutInflater; @@ -19,15 +19,15 @@ import android.view.ViewGroup; import android.widget.ArrayAdapter; -import com.cyanogenmod.eleven.Config.SmartPlaylistType; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.model.Playlist; -import com.cyanogenmod.eleven.ui.MusicHolder; -import com.cyanogenmod.eleven.ui.MusicHolder.DataHolder; -import com.cyanogenmod.eleven.ui.fragments.PlaylistFragment; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.Config.SmartPlaylistType; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.model.Playlist; +import org.lineageos.eleven.ui.MusicHolder; +import org.lineageos.eleven.ui.MusicHolder.DataHolder; +import org.lineageos.eleven.ui.fragments.PlaylistFragment; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.IPopupMenuCallback; /** * This {@link ArrayAdapter} is used to display all of the playlists on a user's diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/ProfileSongAdapter.java b/src/main/java/org/lineageos/eleven/adapters/ProfileSongAdapter.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/adapters/ProfileSongAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/ProfileSongAdapter.java index 2dcf932..086b664 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/ProfileSongAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/ProfileSongAdapter.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.app.Activity; import android.view.LayoutInflater; @@ -19,14 +19,14 @@ import android.view.ViewGroup; import android.widget.ArrayAdapter; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.model.Song; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.model.Song; import java.util.Collection; /** * This {@link ArrayAdapter} is used to display the songs for a particular playlist - * {@link com.cyanogenmod.eleven.ui.fragments.PlaylistDetailFragment} + * {@link org.lineageos.eleven.ui.fragments.PlaylistDetailFragment} * * @author Andrew Neal (andrewdneal@gmail.com) */ diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/SongAdapter.java b/src/main/java/org/lineageos/eleven/adapters/SongAdapter.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/adapters/SongAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/SongAdapter.java index 21b4e6b..f4d308e 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/SongAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/SongAdapter.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.app.Activity; import android.content.Context; @@ -20,20 +20,20 @@ import android.view.ViewGroup; import android.widget.ArrayAdapter; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.model.Artist; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.sectionadapter.SectionAdapter; -import com.cyanogenmod.eleven.service.MusicPlaybackTrack; -import com.cyanogenmod.eleven.ui.MusicHolder; -import com.cyanogenmod.eleven.ui.MusicHolder.DataHolder; -import com.cyanogenmod.eleven.ui.fragments.QueueFragment; -import com.cyanogenmod.eleven.ui.fragments.SongFragment; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.PlayPauseProgressButton; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.model.Artist; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.sectionadapter.SectionAdapter; +import org.lineageos.eleven.service.MusicPlaybackTrack; +import org.lineageos.eleven.ui.MusicHolder; +import org.lineageos.eleven.ui.MusicHolder.DataHolder; +import org.lineageos.eleven.ui.fragments.QueueFragment; +import org.lineageos.eleven.ui.fragments.SongFragment; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.PlayPauseProgressButton; /** * This {@link ArrayAdapter} is used to display all of the songs on a user's @@ -102,7 +102,7 @@ public SongAdapter(final Activity context, final int layoutId, final long source // Get the layout Id mLayoutId = layoutId; // Initialize the cache & image fetcher - mImageFetcher = ApolloUtils.getImageFetcher(context); + mImageFetcher = ElevenUtils.getImageFetcher(context); // set the source id and type mSourceId = sourceId; mSourceType = sourceType; diff --git a/src/main/java/com/cyanogenmod/eleven/adapters/SummarySearchAdapter.java b/src/main/java/org/lineageos/eleven/adapters/SummarySearchAdapter.java similarity index 92% rename from src/main/java/com/cyanogenmod/eleven/adapters/SummarySearchAdapter.java rename to src/main/java/org/lineageos/eleven/adapters/SummarySearchAdapter.java index b1297a8..3df8e64 100644 --- a/src/main/java/com/cyanogenmod/eleven/adapters/SummarySearchAdapter.java +++ b/src/main/java/org/lineageos/eleven/adapters/SummarySearchAdapter.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.adapters; +package org.lineageos.eleven.adapters; import android.app.Activity; import android.text.TextUtils; @@ -23,15 +23,15 @@ import android.widget.ArrayAdapter; import android.widget.TextView; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.format.PrefixHighlighter; -import com.cyanogenmod.eleven.model.SearchResult; -import com.cyanogenmod.eleven.sectionadapter.SectionAdapter; -import com.cyanogenmod.eleven.ui.MusicHolder; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.format.PrefixHighlighter; +import org.lineageos.eleven.model.SearchResult; +import org.lineageos.eleven.sectionadapter.SectionAdapter; +import org.lineageos.eleven.ui.MusicHolder; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.IPopupMenuCallback; import java.util.Locale; @@ -69,7 +69,7 @@ public final class SummarySearchAdapter extends ArrayAdapter public SummarySearchAdapter(final Activity context) { super(context, 0); // Initialize the cache & image fetcher - mImageFetcher = ApolloUtils.getImageFetcher(context); + mImageFetcher = ElevenUtils.getImageFetcher(context); // Create the prefix highlighter mHighlighter = new PrefixHighlighter(context); } diff --git a/src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetBase.java b/src/main/java/org/lineageos/eleven/appwidgets/AppWidgetBase.java similarity index 92% rename from src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetBase.java rename to src/main/java/org/lineageos/eleven/appwidgets/AppWidgetBase.java index 24e5cfd..6f07f38 100644 --- a/src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetBase.java +++ b/src/main/java/org/lineageos/eleven/appwidgets/AppWidgetBase.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.appwidgets; +package org.lineageos.eleven.appwidgets; import android.app.PendingIntent; import android.appwidget.AppWidgetProvider; @@ -19,7 +19,7 @@ import android.content.Context; import android.content.Intent; -import com.cyanogenmod.eleven.MusicPlaybackService; +import org.lineageos.eleven.MusicPlaybackService; public abstract class AppWidgetBase extends AppWidgetProvider { diff --git a/src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetLarge.java b/src/main/java/org/lineageos/eleven/appwidgets/AppWidgetLarge.java similarity index 92% rename from src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetLarge.java rename to src/main/java/org/lineageos/eleven/appwidgets/AppWidgetLarge.java index 531d237..c7dbdd2 100644 --- a/src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetLarge.java +++ b/src/main/java/org/lineageos/eleven/appwidgets/AppWidgetLarge.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.appwidgets; +package org.lineageos.eleven.appwidgets; import android.annotation.SuppressLint; import android.app.PendingIntent; @@ -23,9 +23,10 @@ import android.os.Build; import android.widget.RemoteViews; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.utils.ElevenUtils; /** * 4x2 App-Widget @@ -110,7 +111,7 @@ public void notifyChange(final MusicPlaybackService service, final String what) public void performUpdate(final MusicPlaybackService service, final int[] appWidgetIds) { int playButtonResId = (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) ? R.drawable.btn_playback_play : R.drawable.btn_playback_play_compat; int pauseButtonResId = (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) ? R.drawable.btn_playback_pause : R.drawable.btn_playback_pause_compat; - final RemoteViews appWidgetView = new RemoteViews(service.getPackageName(), + final RemoteViews appWidgetView = new RemoteViews(service.getPackageName(), R.layout.app_widget_large); final CharSequence trackName = service.getTrackName(); @@ -127,13 +128,13 @@ public void performUpdate(final MusicPlaybackService service, final int[] appWid // Set correct drawable for pause state final boolean isPlaying = service.isPlaying(); if (isPlaying) { - appWidgetView.setImageViewResource(R.id.app_widget_large_play, - pauseButtonResId); + appWidgetView.setImageViewResource(R.id.app_widget_large_play, + pauseButtonResId); appWidgetView.setContentDescription(R.id.app_widget_large_play, service.getString(R.string.accessibility_pause)); } else { - appWidgetView.setImageViewResource(R.id.app_widget_large_play, - playButtonResId); + appWidgetView.setImageViewResource(R.id.app_widget_large_play, + playButtonResId); appWidgetView.setContentDescription(R.id.app_widget_large_play, service.getString(R.string.accessibility_play)); } diff --git a/src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetLargeAlternate.java b/src/main/java/org/lineageos/eleven/appwidgets/AppWidgetLargeAlternate.java similarity index 92% rename from src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetLargeAlternate.java rename to src/main/java/org/lineageos/eleven/appwidgets/AppWidgetLargeAlternate.java index fca2dae..a1ef39c 100644 --- a/src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetLargeAlternate.java +++ b/src/main/java/org/lineageos/eleven/appwidgets/AppWidgetLargeAlternate.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.appwidgets; +package org.lineageos.eleven.appwidgets; import android.annotation.SuppressLint; import android.app.PendingIntent; @@ -23,11 +23,12 @@ import android.os.Build; import android.widget.RemoteViews; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.activities.HomeActivity; -import com.cyanogenmod.eleven.widgets.RepeatButton; -import com.cyanogenmod.eleven.widgets.ShuffleButton; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.widgets.RepeatButton; +import org.lineageos.eleven.widgets.ShuffleButton; /** * 4x2 App-Widget @@ -135,13 +136,13 @@ public void performUpdate(final MusicPlaybackService service, final int[] appWid // Set correct drawable for pause state final boolean isPlaying = service.isPlaying(); if (isPlaying) { - appWidgetView.setImageViewResource(R.id.app_widget_large_alternate_play, - pauseButtonResId); + appWidgetView.setImageViewResource(R.id.app_widget_large_alternate_play, + pauseButtonResId); appWidgetView.setContentDescription(R.id.app_widget_large_alternate_play, service.getString(R.string.accessibility_pause)); } else { - appWidgetView.setImageViewResource(R.id.app_widget_large_alternate_play, - playButtonResId); + appWidgetView.setImageViewResource(R.id.app_widget_large_alternate_play, + playButtonResId); appWidgetView.setContentDescription(R.id.app_widget_large_alternate_play, service.getString(R.string.accessibility_play)); } @@ -150,19 +151,19 @@ public void performUpdate(final MusicPlaybackService service, final int[] appWid switch (service.getRepeatMode()) { case MusicPlaybackService.REPEAT_ALL: appWidgetView.setImageViewResource(R.id.app_widget_large_alternate_repeat, - repeatAllButtonResId); + repeatAllButtonResId); appWidgetView.setInt(R.id.app_widget_large_alternate_repeat, "setAlpha", (int)(RepeatButton.ACTIVE_ALPHA * 255)); break; case MusicPlaybackService.REPEAT_CURRENT: appWidgetView.setImageViewResource(R.id.app_widget_large_alternate_repeat, - repeatOneButtonResId); + repeatOneButtonResId); appWidgetView.setInt(R.id.app_widget_large_alternate_repeat, "setAlpha", (int)(RepeatButton.ACTIVE_ALPHA * 255)); break; default: appWidgetView.setImageViewResource(R.id.app_widget_large_alternate_repeat, - repeatAllButtonResId); + repeatAllButtonResId); appWidgetView.setInt(R.id.app_widget_large_alternate_repeat, "setAlpha", (int)(RepeatButton.INACTIVE_ALPHA * 255)); break; @@ -172,7 +173,7 @@ public void performUpdate(final MusicPlaybackService service, final int[] appWid switch (service.getShuffleMode()) { case MusicPlaybackService.SHUFFLE_NONE: appWidgetView.setImageViewResource(R.id.app_widget_large_alternate_shuffle, - shuffleAllButtonResId); + shuffleAllButtonResId); appWidgetView.setInt(R.id.app_widget_large_alternate_shuffle, "setAlpha", (int)(ShuffleButton.INACTIVE_ALPHA * 255)); break; @@ -180,7 +181,7 @@ public void performUpdate(final MusicPlaybackService service, final int[] appWid case MusicPlaybackService.SHUFFLE_NORMAL: default: appWidgetView.setImageViewResource(R.id.app_widget_large_alternate_shuffle, - shuffleAllButtonResId); + shuffleAllButtonResId); appWidgetView.setInt(R.id.app_widget_large_alternate_shuffle, "setAlpha", (int)(ShuffleButton.ACTIVE_ALPHA * 255)); break; diff --git a/src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetSmall.java b/src/main/java/org/lineageos/eleven/appwidgets/AppWidgetSmall.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetSmall.java rename to src/main/java/org/lineageos/eleven/appwidgets/AppWidgetSmall.java index 4171891..cf8b335 100644 --- a/src/main/java/com/cyanogenmod/eleven/appwidgets/AppWidgetSmall.java +++ b/src/main/java/org/lineageos/eleven/appwidgets/AppWidgetSmall.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.appwidgets; +package org.lineageos.eleven.appwidgets; import android.annotation.SuppressLint; import android.app.PendingIntent; @@ -25,9 +25,10 @@ import android.view.View; import android.widget.RemoteViews; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.utils.ElevenUtils; /** * 4x1 App-Widget @@ -114,8 +115,8 @@ public void notifyChange(final MusicPlaybackService service, final String what) public void performUpdate(final MusicPlaybackService service, final int[] appWidgetIds) { int playButtonResId = (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) ? R.drawable.btn_playback_play : R.drawable.btn_playback_play_compat; int pauseButtonResId = (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) ? R.drawable.btn_playback_pause : R.drawable.btn_playback_pause_compat; - - final RemoteViews appWidgetView = new RemoteViews(service.getPackageName(), + + final RemoteViews appWidgetView = new RemoteViews(service.getPackageName(), R.layout.app_widget_small); final CharSequence trackName = service.getTrackName(); @@ -131,17 +132,17 @@ public void performUpdate(final MusicPlaybackService service, final int[] appWid appWidgetView.setTextViewText(R.id.app_widget_small_line_two, artistName); } appWidgetView.setImageViewBitmap(R.id.app_widget_small_image, bitmap); - + // Set correct drawable for pause state final boolean isPlaying = service.isPlaying(); if (isPlaying) { - appWidgetView.setImageViewResource(R.id.app_widget_small_play, - pauseButtonResId); + appWidgetView.setImageViewResource(R.id.app_widget_small_play, + pauseButtonResId); appWidgetView.setContentDescription(R.id.app_widget_small_play, service.getString(R.string.accessibility_pause)); } else { - appWidgetView.setImageViewResource(R.id.app_widget_small_play, - playButtonResId); + appWidgetView.setImageViewResource(R.id.app_widget_small_play, + playButtonResId); appWidgetView.setContentDescription(R.id.app_widget_small_play, service.getString(R.string.accessibility_play)); } diff --git a/src/main/java/com/cyanogenmod/eleven/cache/BitmapWorkerTask.java b/src/main/java/org/lineageos/eleven/cache/BitmapWorkerTask.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/cache/BitmapWorkerTask.java rename to src/main/java/org/lineageos/eleven/cache/BitmapWorkerTask.java index c7ab842..177e772 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/BitmapWorkerTask.java +++ b/src/main/java/org/lineageos/eleven/cache/BitmapWorkerTask.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; import android.content.Context; import android.content.res.Resources; @@ -23,7 +23,7 @@ import android.os.AsyncTask; import android.widget.ImageView; -import com.cyanogenmod.eleven.cache.ImageWorker.ImageType; +import org.lineageos.eleven.cache.ImageWorker.ImageType; import java.lang.ref.WeakReference; diff --git a/src/main/java/com/cyanogenmod/eleven/cache/BlurBitmapWorkerTask.java b/src/main/java/org/lineageos/eleven/cache/BlurBitmapWorkerTask.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/cache/BlurBitmapWorkerTask.java rename to src/main/java/org/lineageos/eleven/cache/BlurBitmapWorkerTask.java index 74515f1..ecae723 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/BlurBitmapWorkerTask.java +++ b/src/main/java/org/lineageos/eleven/cache/BlurBitmapWorkerTask.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; import android.content.Context; import android.graphics.Bitmap; @@ -25,8 +25,8 @@ import android.support.v8.renderscript.ScriptIntrinsicBlur; import android.widget.ImageView; -import com.cyanogenmod.eleven.cache.ImageWorker.ImageType; -import com.cyanogenmod.eleven.widgets.BlurScrimImage; +import org.lineageos.eleven.cache.ImageWorker.ImageType; +import org.lineageos.eleven.widgets.BlurScrimImage; import java.lang.ref.WeakReference; @@ -50,7 +50,7 @@ public static class ResultContainer { } /** - * The {@link com.cyanogenmod.eleven.widgets.BlurScrimImage} used to set the result + * The {@link org.lineageos.eleven.widgets.BlurScrimImage} used to set the result */ private final WeakReference mBlurScrimImage; diff --git a/src/main/java/com/cyanogenmod/eleven/cache/DiskLruCache.java b/src/main/java/org/lineageos/eleven/cache/DiskLruCache.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/cache/DiskLruCache.java rename to src/main/java/org/lineageos/eleven/cache/DiskLruCache.java index 0e33afb..7c904ac 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/DiskLruCache.java +++ b/src/main/java/org/lineageos/eleven/cache/DiskLruCache.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; import java.io.BufferedInputStream; import java.io.BufferedWriter; diff --git a/src/main/java/com/cyanogenmod/eleven/cache/ICacheListener.java b/src/main/java/org/lineageos/eleven/cache/ICacheListener.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/cache/ICacheListener.java rename to src/main/java/org/lineageos/eleven/cache/ICacheListener.java index 89b88ac..fcc9de6 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/ICacheListener.java +++ b/src/main/java/org/lineageos/eleven/cache/ICacheListener.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; public interface ICacheListener { void onCacheUnpaused(); diff --git a/src/main/java/com/cyanogenmod/eleven/cache/ImageCache.java b/src/main/java/org/lineageos/eleven/cache/ImageCache.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/cache/ImageCache.java rename to src/main/java/org/lineageos/eleven/cache/ImageCache.java index 7bee4a8..7b837b6 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/ImageCache.java +++ b/src/main/java/org/lineageos/eleven/cache/ImageCache.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; import android.annotation.SuppressLint; import android.app.Activity; @@ -33,7 +33,7 @@ import android.os.ParcelFileDescriptor; import android.util.Log; -import com.cyanogenmod.eleven.utils.ApolloUtils; +import org.lineageos.eleven.utils.ElevenUtils; import java.io.File; import java.io.FileDescriptor; @@ -138,7 +138,7 @@ public final static ImageCache getInstance(final Context context) { * @param cacheParams The cache parameters to initialize the cache */ private void init(final Context context) { - ApolloUtils.execute(false, new AsyncTask() { + ElevenUtils.execute(false, new AsyncTask() { @Override protected Void doInBackground(final Void... unused) { @@ -512,7 +512,7 @@ public final Bitmap getArtworkFromFile(final Context context, final long albumId * cache first */ public void flush() { - ApolloUtils.execute(false, new AsyncTask() { + ElevenUtils.execute(false, new AsyncTask() { @Override protected Void doInBackground(final Void... unused) { @@ -534,7 +534,7 @@ protected Void doInBackground(final Void... unused) { * Clears the disk and memory caches */ public void clearCaches() { - ApolloUtils.execute(false, new AsyncTask() { + ElevenUtils.execute(false, new AsyncTask() { @Override protected Void doInBackground(final Void... unused) { @@ -560,7 +560,7 @@ protected Void doInBackground(final Void... unused) { * thread. */ public void close() { - ApolloUtils.execute(false, new AsyncTask() { + ElevenUtils.execute(false, new AsyncTask() { @Override protected Void doInBackground(final Void... unused) { diff --git a/src/main/java/com/cyanogenmod/eleven/cache/ImageFetcher.java b/src/main/java/org/lineageos/eleven/cache/ImageFetcher.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/cache/ImageFetcher.java rename to src/main/java/org/lineageos/eleven/cache/ImageFetcher.java index 42480f4..a689ae2 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/ImageFetcher.java +++ b/src/main/java/org/lineageos/eleven/cache/ImageFetcher.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; import android.content.ContentResolver; import android.content.Context; @@ -19,13 +19,13 @@ import android.graphics.BitmapFactory; import android.net.Uri; import android.widget.ImageView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.cache.PlaylistWorkerTask.PlaylistWorkerType; -import com.cyanogenmod.eleven.utils.BitmapWithColors; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.BlurScrimImage; -import com.cyanogenmod.eleven.widgets.LetterTileDrawable; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.cache.PlaylistWorkerTask.PlaylistWorkerType; +import org.lineageos.eleven.utils.BitmapWithColors; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.BlurScrimImage; +import org.lineageos.eleven.widgets.LetterTileDrawable; import java.io.FileNotFoundException; import java.io.IOException; diff --git a/src/main/java/com/cyanogenmod/eleven/cache/ImageWorker.java b/src/main/java/org/lineageos/eleven/cache/ImageWorker.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/cache/ImageWorker.java rename to src/main/java/org/lineageos/eleven/cache/ImageWorker.java index e8ea9d8..980fd82 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/ImageWorker.java +++ b/src/main/java/org/lineageos/eleven/cache/ImageWorker.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; import android.content.Context; import android.content.res.Resources; @@ -26,13 +26,13 @@ import android.view.View; import android.widget.ImageView; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.provider.PlaylistArtworkStore; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.ImageUtils; -import com.cyanogenmod.eleven.widgets.BlurScrimImage; -import com.cyanogenmod.eleven.cache.PlaylistWorkerTask.PlaylistWorkerType; -import com.cyanogenmod.eleven.widgets.LetterTileDrawable; +import org.lineageos.eleven.R; +import org.lineageos.eleven.provider.PlaylistArtworkStore; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.ImageUtils; +import org.lineageos.eleven.widgets.BlurScrimImage; +import org.lineageos.eleven.cache.PlaylistWorkerTask.PlaylistWorkerType; +import org.lineageos.eleven.widgets.LetterTileDrawable; import java.lang.ref.WeakReference; import java.util.Collections; @@ -177,7 +177,7 @@ public static Bitmap getBitmapInBackground(final Context context, final ImageCac } // Third, by now we need to download the image - if (bitmap == null && ApolloUtils.isOnline(context) && !sKeys.contains(key)) { + if (bitmap == null && ElevenUtils.isOnline(context) && !sKeys.contains(key)) { // Now define what the artist name, album name, and url are. String url = ImageUtils.processImageUrl(context, artistName, albumName, imageType); if (url != null) { @@ -477,7 +477,7 @@ protected void loadImage(final String key, final String artistName, final String final AsyncTaskContainer asyncTaskContainer = new AsyncTaskContainer(bitmapWorkerTask); imageView.setTag(asyncTaskContainer); try { - ApolloUtils.execute(false, bitmapWorkerTask, + ElevenUtils.execute(false, bitmapWorkerTask, artistName, albumName, String.valueOf(albumId)); } catch (RejectedExecutionException e) { // Executor has exhausted queue space @@ -537,7 +537,7 @@ public void loadPlaylistImage(final long playlistId, final PlaylistWorkerType ty final AsyncTaskContainer asyncTaskContainer = new AsyncTaskContainer(bitmapWorkerTask); imageView.setTag(asyncTaskContainer); try { - ApolloUtils.execute(false, bitmapWorkerTask); + ElevenUtils.execute(false, bitmapWorkerTask); } catch (RejectedExecutionException e) { // Executor has exhausted queue space } @@ -569,7 +569,7 @@ protected void loadBlurImage(final String key, final String artistName, final St blurScrimImage.setTag(asyncTaskContainer); try { - ApolloUtils.execute(false, blurWorkerTask, artistName, albumName, String.valueOf(albumId)); + ElevenUtils.execute(false, blurWorkerTask, artistName, albumName, String.valueOf(albumId)); } catch (RejectedExecutionException e) { // Executor has exhausted queue space, show default artwork blurScrimImage.transitionToDefaultState(); diff --git a/src/main/java/com/cyanogenmod/eleven/cache/LruCache.java b/src/main/java/org/lineageos/eleven/cache/LruCache.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/cache/LruCache.java rename to src/main/java/org/lineageos/eleven/cache/LruCache.java index 8d40b1a..62f9385 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/LruCache.java +++ b/src/main/java/org/lineageos/eleven/cache/LruCache.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; // NOTE: upstream of this class is android.util.LruCache, changes below // expose trimToSize() to be called externally. diff --git a/src/main/java/com/cyanogenmod/eleven/cache/PlaylistWorkerTask.java b/src/main/java/org/lineageos/eleven/cache/PlaylistWorkerTask.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/cache/PlaylistWorkerTask.java rename to src/main/java/org/lineageos/eleven/cache/PlaylistWorkerTask.java index 65b2819..b44bdbd 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/PlaylistWorkerTask.java +++ b/src/main/java/org/lineageos/eleven/cache/PlaylistWorkerTask.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; import android.content.Context; import android.database.Cursor; @@ -25,12 +25,12 @@ import android.provider.MediaStore; import android.widget.ImageView; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageWorker.ImageType; -import com.cyanogenmod.eleven.loaders.PlaylistSongLoader; -import com.cyanogenmod.eleven.loaders.SortedCursor; -import com.cyanogenmod.eleven.provider.PlaylistArtworkStore; -import com.cyanogenmod.eleven.provider.SongPlayCount; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageWorker.ImageType; +import org.lineageos.eleven.loaders.PlaylistSongLoader; +import org.lineageos.eleven.loaders.SortedCursor; +import org.lineageos.eleven.provider.PlaylistArtworkStore; +import org.lineageos.eleven.provider.SongPlayCount; import java.lang.reflect.Method; import java.util.ArrayList; diff --git a/src/main/java/com/cyanogenmod/eleven/cache/SimpleBitmapWorkerTask.java b/src/main/java/org/lineageos/eleven/cache/SimpleBitmapWorkerTask.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/cache/SimpleBitmapWorkerTask.java rename to src/main/java/org/lineageos/eleven/cache/SimpleBitmapWorkerTask.java index 027eb7f..9481ab1 100644 --- a/src/main/java/com/cyanogenmod/eleven/cache/SimpleBitmapWorkerTask.java +++ b/src/main/java/org/lineageos/eleven/cache/SimpleBitmapWorkerTask.java @@ -13,15 +13,15 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.cache; +package org.lineageos.eleven.cache; import android.content.Context; import android.graphics.Bitmap; import android.graphics.drawable.Drawable; import android.graphics.drawable.TransitionDrawable; import android.widget.ImageView; -import com.cyanogenmod.eleven.cache.ImageWorker.ImageType; -import com.cyanogenmod.eleven.utils.ImageUtils; +import org.lineageos.eleven.cache.ImageWorker.ImageType; +import org.lineageos.eleven.utils.ImageUtils; /** * The actual {@link android.os.AsyncTask} that will process the image. diff --git a/src/main/java/com/cyanogenmod/eleven/dragdrop/DragSortController.java b/src/main/java/org/lineageos/eleven/dragdrop/DragSortController.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/dragdrop/DragSortController.java rename to src/main/java/org/lineageos/eleven/dragdrop/DragSortController.java index e433ec0..b4aebd1 100644 --- a/src/main/java/com/cyanogenmod/eleven/dragdrop/DragSortController.java +++ b/src/main/java/org/lineageos/eleven/dragdrop/DragSortController.java @@ -1,5 +1,5 @@ -package com.cyanogenmod.eleven.dragdrop; +package org.lineageos.eleven.dragdrop; import android.graphics.Point; import android.view.GestureDetector; diff --git a/src/main/java/com/cyanogenmod/eleven/dragdrop/DragSortListView.java b/src/main/java/org/lineageos/eleven/dragdrop/DragSortListView.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/dragdrop/DragSortListView.java rename to src/main/java/org/lineageos/eleven/dragdrop/DragSortListView.java index b0580a7..5839006 100644 --- a/src/main/java/com/cyanogenmod/eleven/dragdrop/DragSortListView.java +++ b/src/main/java/org/lineageos/eleven/dragdrop/DragSortListView.java @@ -10,7 +10,7 @@ * language governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.dragdrop; +package org.lineageos.eleven.dragdrop; import android.content.Context; import android.database.DataSetObserver; @@ -31,7 +31,7 @@ import android.widget.ListView; import android.widget.RelativeLayout; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; import java.io.File; import java.io.FileWriter; diff --git a/src/main/java/com/cyanogenmod/eleven/dragdrop/SimpleFloatViewManager.java b/src/main/java/org/lineageos/eleven/dragdrop/SimpleFloatViewManager.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/dragdrop/SimpleFloatViewManager.java rename to src/main/java/org/lineageos/eleven/dragdrop/SimpleFloatViewManager.java index f7be4f2..ce5cb60 100644 --- a/src/main/java/com/cyanogenmod/eleven/dragdrop/SimpleFloatViewManager.java +++ b/src/main/java/org/lineageos/eleven/dragdrop/SimpleFloatViewManager.java @@ -1,5 +1,5 @@ -package com.cyanogenmod.eleven.dragdrop; +package org.lineageos.eleven.dragdrop; import android.graphics.Bitmap; import android.graphics.Color; diff --git a/src/main/java/com/cyanogenmod/eleven/format/Capitalize.java b/src/main/java/org/lineageos/eleven/format/Capitalize.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/format/Capitalize.java rename to src/main/java/org/lineageos/eleven/format/Capitalize.java index d23683c..36ba269 100644 --- a/src/main/java/com/cyanogenmod/eleven/format/Capitalize.java +++ b/src/main/java/org/lineageos/eleven/format/Capitalize.java @@ -1,5 +1,5 @@ -package com.cyanogenmod.eleven.format; +package org.lineageos.eleven.format; import android.text.TextUtils; diff --git a/src/main/java/com/cyanogenmod/eleven/format/PrefixHighlighter.java b/src/main/java/org/lineageos/eleven/format/PrefixHighlighter.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/format/PrefixHighlighter.java rename to src/main/java/org/lineageos/eleven/format/PrefixHighlighter.java index 83f69a7..6761898 100644 --- a/src/main/java/com/cyanogenmod/eleven/format/PrefixHighlighter.java +++ b/src/main/java/org/lineageos/eleven/format/PrefixHighlighter.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.format; +package org.lineageos.eleven.format; import android.content.Context; import android.text.SpannableString; @@ -17,7 +17,7 @@ import android.text.style.ForegroundColorSpan; import android.widget.TextView; -import com.cyanogenmod.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.utils.PreferenceUtils; /** * Highlights the text in a text field. diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/Album.java b/src/main/java/org/lineageos/eleven/lastfm/Album.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/lastfm/Album.java rename to src/main/java/org/lineageos/eleven/lastfm/Album.java index b5ff603..6adbdd3 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/Album.java +++ b/src/main/java/org/lineageos/eleven/lastfm/Album.java @@ -19,11 +19,11 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import android.content.Context; -import com.cyanogenmod.eleven.Config; +import org.lineageos.eleven.Config; import java.util.HashMap; import java.util.Map; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/Artist.java b/src/main/java/org/lineageos/eleven/lastfm/Artist.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/lastfm/Artist.java rename to src/main/java/org/lineageos/eleven/lastfm/Artist.java index 5401a74..25ea60c 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/Artist.java +++ b/src/main/java/org/lineageos/eleven/lastfm/Artist.java @@ -19,11 +19,11 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import android.content.Context; -import com.cyanogenmod.eleven.Config; +import org.lineageos.eleven.Config; import java.util.Locale; import java.util.Map; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/Caller.java b/src/main/java/org/lineageos/eleven/lastfm/Caller.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/lastfm/Caller.java rename to src/main/java/org/lineageos/eleven/lastfm/Caller.java index 1449ca2..c312f88 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/Caller.java +++ b/src/main/java/org/lineageos/eleven/lastfm/Caller.java @@ -19,15 +19,15 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; -import static com.cyanogenmod.eleven.lastfm.StringUtilities.encode; -import static com.cyanogenmod.eleven.lastfm.StringUtilities.map; +import static org.lineageos.eleven.lastfm.StringUtilities.encode; +import static org.lineageos.eleven.lastfm.StringUtilities.map; import android.content.Context; import android.util.Log; -import com.cyanogenmod.eleven.lastfm.Result.Status; +import org.lineageos.eleven.lastfm.Result.Status; import org.w3c.dom.Document; import org.w3c.dom.Element; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/DomElement.java b/src/main/java/org/lineageos/eleven/lastfm/DomElement.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/lastfm/DomElement.java rename to src/main/java/org/lineageos/eleven/lastfm/DomElement.java index 9802444..ee908d6 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/DomElement.java +++ b/src/main/java/org/lineageos/eleven/lastfm/DomElement.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import org.w3c.dom.Element; import org.w3c.dom.Node; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/Image.java b/src/main/java/org/lineageos/eleven/lastfm/Image.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/lastfm/Image.java rename to src/main/java/org/lineageos/eleven/lastfm/Image.java index f79f178..1c9032c 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/Image.java +++ b/src/main/java/org/lineageos/eleven/lastfm/Image.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; /** * An Image contains metadata and URLs for an artist's image. diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/ImageHolder.java b/src/main/java/org/lineageos/eleven/lastfm/ImageHolder.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/lastfm/ImageHolder.java rename to src/main/java/org/lineageos/eleven/lastfm/ImageHolder.java index 10e042d..25fabac 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/ImageHolder.java +++ b/src/main/java/org/lineageos/eleven/lastfm/ImageHolder.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import java.util.Collection; import java.util.HashMap; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/ImageSize.java b/src/main/java/org/lineageos/eleven/lastfm/ImageSize.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/lastfm/ImageSize.java rename to src/main/java/org/lineageos/eleven/lastfm/ImageSize.java index ec2f6ac..615ef96 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/ImageSize.java +++ b/src/main/java/org/lineageos/eleven/lastfm/ImageSize.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; /** * @author Janni Kovacs diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/ItemFactory.java b/src/main/java/org/lineageos/eleven/lastfm/ItemFactory.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/lastfm/ItemFactory.java rename to src/main/java/org/lineageos/eleven/lastfm/ItemFactory.java index f440fa4..ad8c2df 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/ItemFactory.java +++ b/src/main/java/org/lineageos/eleven/lastfm/ItemFactory.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; /** * An ItemFactory can be used to instantiate a value object - such @@ -27,7 +27,7 @@ * {@link ItemFactoryBuilder} to obtain item factories for a specific type. * * @author Janni Kovacs - * @see com.cyanogenmod.eleven.lastfm.api.ItemFactoryBuilder + * @see org.lineageos.eleven.lastfm.api.ItemFactoryBuilder * @see ResponseBuilder */ interface ItemFactory { diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/ItemFactoryBuilder.java b/src/main/java/org/lineageos/eleven/lastfm/ItemFactoryBuilder.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/lastfm/ItemFactoryBuilder.java rename to src/main/java/org/lineageos/eleven/lastfm/ItemFactoryBuilder.java index 9691028..d496d80 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/ItemFactoryBuilder.java +++ b/src/main/java/org/lineageos/eleven/lastfm/ItemFactoryBuilder.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import java.util.HashMap; import java.util.Map; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/MapUtilities.java b/src/main/java/org/lineageos/eleven/lastfm/MapUtilities.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/lastfm/MapUtilities.java rename to src/main/java/org/lineageos/eleven/lastfm/MapUtilities.java index a8d61e2..9ba4dd3 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/MapUtilities.java +++ b/src/main/java/org/lineageos/eleven/lastfm/MapUtilities.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import java.util.Map; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/MusicEntry.java b/src/main/java/org/lineageos/eleven/lastfm/MusicEntry.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/lastfm/MusicEntry.java rename to src/main/java/org/lineageos/eleven/lastfm/MusicEntry.java index eaba7e6..bbb9499 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/MusicEntry.java +++ b/src/main/java/org/lineageos/eleven/lastfm/MusicEntry.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; /** * MusicEntry is the abstract superclass for {@link Track}, diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/PaginatedResult.java b/src/main/java/org/lineageos/eleven/lastfm/PaginatedResult.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/lastfm/PaginatedResult.java rename to src/main/java/org/lineageos/eleven/lastfm/PaginatedResult.java index 34b81e5..5a3a27e 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/PaginatedResult.java +++ b/src/main/java/org/lineageos/eleven/lastfm/PaginatedResult.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import java.util.Collection; import java.util.Iterator; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/ResponseBuilder.java b/src/main/java/org/lineageos/eleven/lastfm/ResponseBuilder.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/lastfm/ResponseBuilder.java rename to src/main/java/org/lineageos/eleven/lastfm/ResponseBuilder.java index 26394c9..f9a9808 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/ResponseBuilder.java +++ b/src/main/java/org/lineageos/eleven/lastfm/ResponseBuilder.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import java.util.ArrayList; import java.util.Collection; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/Result.java b/src/main/java/org/lineageos/eleven/lastfm/Result.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/lastfm/Result.java rename to src/main/java/org/lineageos/eleven/lastfm/Result.java index a40a401..afa4213 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/Result.java +++ b/src/main/java/org/lineageos/eleven/lastfm/Result.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import org.w3c.dom.Document; diff --git a/src/main/java/com/cyanogenmod/eleven/lastfm/StringUtilities.java b/src/main/java/org/lineageos/eleven/lastfm/StringUtilities.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/lastfm/StringUtilities.java rename to src/main/java/org/lineageos/eleven/lastfm/StringUtilities.java index 623e449..d35217b 100644 --- a/src/main/java/com/cyanogenmod/eleven/lastfm/StringUtilities.java +++ b/src/main/java/org/lineageos/eleven/lastfm/StringUtilities.java @@ -19,7 +19,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.cyanogenmod.eleven.lastfm; +package org.lineageos.eleven.lastfm; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/AlbumLoader.java b/src/main/java/org/lineageos/eleven/loaders/AlbumLoader.java similarity index 92% rename from src/main/java/com/cyanogenmod/eleven/loaders/AlbumLoader.java rename to src/main/java/org/lineageos/eleven/loaders/AlbumLoader.java index cc4f611..181d347 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/AlbumLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/AlbumLoader.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.database.Cursor; @@ -20,14 +20,14 @@ import android.provider.MediaStore; import android.provider.MediaStore.Audio.AlbumColumns; -import com.cyanogenmod.eleven.model.Album; -import com.cyanogenmod.eleven.provider.LocalizedStore; -import com.cyanogenmod.eleven.provider.LocalizedStore.SortParameter; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.utils.Lists; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PreferenceUtils; -import com.cyanogenmod.eleven.utils.SortOrder; +import org.lineageos.eleven.model.Album; +import org.lineageos.eleven.provider.LocalizedStore; +import org.lineageos.eleven.provider.LocalizedStore.SortParameter; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.utils.Lists; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.utils.SortOrder; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/AlbumSongLoader.java b/src/main/java/org/lineageos/eleven/loaders/AlbumSongLoader.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/loaders/AlbumSongLoader.java rename to src/main/java/org/lineageos/eleven/loaders/AlbumSongLoader.java index 726bde5..81596e0 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/AlbumSongLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/AlbumSongLoader.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.database.Cursor; @@ -19,9 +19,9 @@ import android.provider.MediaStore; import android.provider.MediaStore.Audio.AudioColumns; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.utils.Lists; -import com.cyanogenmod.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.utils.Lists; +import org.lineageos.eleven.utils.PreferenceUtils; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/ArtistLoader.java b/src/main/java/org/lineageos/eleven/loaders/ArtistLoader.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/loaders/ArtistLoader.java rename to src/main/java/org/lineageos/eleven/loaders/ArtistLoader.java index 4b04030..9a22ca1 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/ArtistLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/ArtistLoader.java @@ -11,21 +11,21 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.database.Cursor; import android.provider.MediaStore; import android.provider.MediaStore.Audio.Artists; -import com.cyanogenmod.eleven.model.Artist; -import com.cyanogenmod.eleven.provider.LocalizedStore; -import com.cyanogenmod.eleven.provider.LocalizedStore.SortParameter; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.utils.Lists; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PreferenceUtils; -import com.cyanogenmod.eleven.utils.SortOrder; +import org.lineageos.eleven.model.Artist; +import org.lineageos.eleven.provider.LocalizedStore; +import org.lineageos.eleven.provider.LocalizedStore.SortParameter; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.utils.Lists; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.utils.SortOrder; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/AsyncHandler.java b/src/main/java/org/lineageos/eleven/loaders/AsyncHandler.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/loaders/AsyncHandler.java rename to src/main/java/org/lineageos/eleven/loaders/AsyncHandler.java index 1710abb..94126c5 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/AsyncHandler.java +++ b/src/main/java/org/lineageos/eleven/loaders/AsyncHandler.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.os.Handler; import android.os.HandlerThread; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/LastAddedLoader.java b/src/main/java/org/lineageos/eleven/loaders/LastAddedLoader.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/loaders/LastAddedLoader.java rename to src/main/java/org/lineageos/eleven/loaders/LastAddedLoader.java index cbc02c2..4e1fe77 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/LastAddedLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/LastAddedLoader.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.database.Cursor; @@ -19,10 +19,10 @@ import android.provider.MediaStore; import android.provider.MediaStore.Audio.AudioColumns; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.utils.Lists; -import com.cyanogenmod.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.utils.Lists; +import org.lineageos.eleven.utils.PreferenceUtils; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/NowPlayingCursor.java b/src/main/java/org/lineageos/eleven/loaders/NowPlayingCursor.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/loaders/NowPlayingCursor.java rename to src/main/java/org/lineageos/eleven/loaders/NowPlayingCursor.java index 8d524bc..5061d28 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/NowPlayingCursor.java +++ b/src/main/java/org/lineageos/eleven/loaders/NowPlayingCursor.java @@ -1,7 +1,7 @@ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; -import static com.cyanogenmod.eleven.utils.MusicUtils.mService; +import static org.lineageos.eleven.utils.MusicUtils.mService; import android.annotation.SuppressLint; import android.content.Context; @@ -12,7 +12,7 @@ import android.provider.MediaStore; import android.provider.MediaStore.Audio.AudioColumns; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.MusicUtils; import java.util.Arrays; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/PlaylistLoader.java b/src/main/java/org/lineageos/eleven/loaders/PlaylistLoader.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/loaders/PlaylistLoader.java rename to src/main/java/org/lineageos/eleven/loaders/PlaylistLoader.java index 68a1b12..dfcdae8 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/PlaylistLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/PlaylistLoader.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.content.res.Resources; @@ -20,10 +20,10 @@ import android.provider.MediaStore; import android.provider.MediaStore.Audio.PlaylistsColumns; -import com.cyanogenmod.eleven.Config.SmartPlaylistType; -import com.cyanogenmod.eleven.model.Playlist; -import com.cyanogenmod.eleven.utils.Lists; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.Config.SmartPlaylistType; +import org.lineageos.eleven.model.Playlist; +import org.lineageos.eleven.utils.Lists; +import org.lineageos.eleven.utils.MusicUtils; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/PlaylistSongLoader.java b/src/main/java/org/lineageos/eleven/loaders/PlaylistSongLoader.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/loaders/PlaylistSongLoader.java rename to src/main/java/org/lineageos/eleven/loaders/PlaylistSongLoader.java index e06890f..0297434 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/PlaylistSongLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/PlaylistSongLoader.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.ContentProviderOperation; import android.content.Context; @@ -24,8 +24,8 @@ import android.provider.MediaStore.Audio.Playlists; import android.util.Log; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.utils.Lists; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.utils.Lists; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/QueueLoader.java b/src/main/java/org/lineageos/eleven/loaders/QueueLoader.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/loaders/QueueLoader.java rename to src/main/java/org/lineageos/eleven/loaders/QueueLoader.java index f409b56..ccf8f6d 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/QueueLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/QueueLoader.java @@ -11,13 +11,13 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.database.Cursor; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.utils.Lists; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.utils.Lists; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/SearchLoader.java b/src/main/java/org/lineageos/eleven/loaders/SearchLoader.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/loaders/SearchLoader.java rename to src/main/java/org/lineageos/eleven/loaders/SearchLoader.java index a77ff15..09ef519 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/SearchLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/SearchLoader.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.database.Cursor; @@ -20,8 +20,8 @@ import android.provider.MediaStore; import android.text.TextUtils; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.utils.Lists; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.utils.Lists; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/SongLoader.java b/src/main/java/org/lineageos/eleven/loaders/SongLoader.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/loaders/SongLoader.java rename to src/main/java/org/lineageos/eleven/loaders/SongLoader.java index 9171f3a..c0a16f9 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/SongLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/SongLoader.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.database.Cursor; @@ -19,14 +19,14 @@ import android.provider.MediaStore.Audio; import android.text.TextUtils; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.provider.LocalizedStore; -import com.cyanogenmod.eleven.provider.LocalizedStore.SortParameter; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.utils.Lists; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PreferenceUtils; -import com.cyanogenmod.eleven.utils.SortOrder; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.provider.LocalizedStore; +import org.lineageos.eleven.provider.LocalizedStore.SortParameter; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.utils.Lists; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.utils.SortOrder; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/SortedCursor.java b/src/main/java/org/lineageos/eleven/loaders/SortedCursor.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/loaders/SortedCursor.java rename to src/main/java/org/lineageos/eleven/loaders/SortedCursor.java index 2f8a3c9..78285af 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/SortedCursor.java +++ b/src/main/java/org/lineageos/eleven/loaders/SortedCursor.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.database.AbstractCursor; import android.database.Cursor; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/TopTracksLoader.java b/src/main/java/org/lineageos/eleven/loaders/TopTracksLoader.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/loaders/TopTracksLoader.java rename to src/main/java/org/lineageos/eleven/loaders/TopTracksLoader.java index f1ea033..7daf622 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/TopTracksLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/TopTracksLoader.java @@ -14,15 +14,15 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.database.Cursor; import android.provider.BaseColumns; -import com.cyanogenmod.eleven.provider.RecentStore; -import com.cyanogenmod.eleven.provider.SongPlayCount; -import com.cyanogenmod.eleven.provider.SongPlayCount.SongPlayCountColumns; +import org.lineageos.eleven.provider.RecentStore; +import org.lineageos.eleven.provider.SongPlayCount; +import org.lineageos.eleven.provider.SongPlayCount.SongPlayCountColumns; import java.util.ArrayList; diff --git a/src/main/java/com/cyanogenmod/eleven/loaders/WrappedAsyncTaskLoader.java b/src/main/java/org/lineageos/eleven/loaders/WrappedAsyncTaskLoader.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/loaders/WrappedAsyncTaskLoader.java rename to src/main/java/org/lineageos/eleven/loaders/WrappedAsyncTaskLoader.java index 9b6caba..de4271e 100644 --- a/src/main/java/com/cyanogenmod/eleven/loaders/WrappedAsyncTaskLoader.java +++ b/src/main/java/org/lineageos/eleven/loaders/WrappedAsyncTaskLoader.java @@ -1,5 +1,5 @@ -package com.cyanogenmod.eleven.loaders; +package org.lineageos.eleven.loaders; import android.content.Context; import android.support.v4.content.AsyncTaskLoader; diff --git a/src/main/java/com/cyanogenmod/eleven/locale/AlphabeticIndexCompat.java b/src/main/java/org/lineageos/eleven/locale/AlphabeticIndexCompat.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/locale/AlphabeticIndexCompat.java rename to src/main/java/org/lineageos/eleven/locale/AlphabeticIndexCompat.java index 3e3f956..4797c0f 100644 --- a/src/main/java/com/cyanogenmod/eleven/locale/AlphabeticIndexCompat.java +++ b/src/main/java/org/lineageos/eleven/locale/AlphabeticIndexCompat.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.locale; +package org.lineageos.eleven.locale; import android.os.Build; import android.util.Log; diff --git a/src/main/java/com/cyanogenmod/eleven/locale/HanziToPinyin.java b/src/main/java/org/lineageos/eleven/locale/HanziToPinyin.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/locale/HanziToPinyin.java rename to src/main/java/org/lineageos/eleven/locale/HanziToPinyin.java index a1c1457..fb7d61f 100644 --- a/src/main/java/com/cyanogenmod/eleven/locale/HanziToPinyin.java +++ b/src/main/java/org/lineageos/eleven/locale/HanziToPinyin.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.locale; +package org.lineageos.eleven.locale; import android.os.Build; import android.text.TextUtils; diff --git a/src/main/java/com/cyanogenmod/eleven/locale/LocaleChangeReceiver.java b/src/main/java/org/lineageos/eleven/locale/LocaleChangeReceiver.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/locale/LocaleChangeReceiver.java rename to src/main/java/org/lineageos/eleven/locale/LocaleChangeReceiver.java index 3d2f99f..7d30523 100644 --- a/src/main/java/com/cyanogenmod/eleven/locale/LocaleChangeReceiver.java +++ b/src/main/java/org/lineageos/eleven/locale/LocaleChangeReceiver.java @@ -14,13 +14,13 @@ * limitations under the License */ -package com.cyanogenmod.eleven.locale; +package org.lineageos.eleven.locale; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; -import com.cyanogenmod.eleven.provider.LocalizedStore; +import org.lineageos.eleven.provider.LocalizedStore; /** * Locale change intent receiver that invokes {@link LocalizedStore} to update diff --git a/src/main/java/com/cyanogenmod/eleven/locale/LocaleSet.java b/src/main/java/org/lineageos/eleven/locale/LocaleSet.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/locale/LocaleSet.java rename to src/main/java/org/lineageos/eleven/locale/LocaleSet.java index ec906c3..95fccc4 100644 --- a/src/main/java/com/cyanogenmod/eleven/locale/LocaleSet.java +++ b/src/main/java/org/lineageos/eleven/locale/LocaleSet.java @@ -14,7 +14,7 @@ * limitations under the License */ -package com.cyanogenmod.eleven.locale; +package org.lineageos.eleven.locale; import android.os.Build; import android.text.TextUtils; diff --git a/src/main/java/com/cyanogenmod/eleven/locale/LocaleSetManager.java b/src/main/java/org/lineageos/eleven/locale/LocaleSetManager.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/locale/LocaleSetManager.java rename to src/main/java/org/lineageos/eleven/locale/LocaleSetManager.java index 48caf69..304dfa0 100644 --- a/src/main/java/com/cyanogenmod/eleven/locale/LocaleSetManager.java +++ b/src/main/java/org/lineageos/eleven/locale/LocaleSetManager.java @@ -14,13 +14,13 @@ * See the License for the specific language governing permissions and * limitations under the License */ -package com.cyanogenmod.eleven.locale; +package org.lineageos.eleven.locale; import android.content.Context; import android.text.TextUtils; import android.util.Log; -import com.cyanogenmod.eleven.provider.PropertiesStore; +import org.lineageos.eleven.provider.PropertiesStore; import com.google.common.annotations.VisibleForTesting; import java.lang.reflect.Method; diff --git a/src/main/java/com/cyanogenmod/eleven/locale/LocaleUtility.java b/src/main/java/org/lineageos/eleven/locale/LocaleUtility.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/locale/LocaleUtility.java rename to src/main/java/org/lineageos/eleven/locale/LocaleUtility.java index d151eb9..bde90b1 100644 --- a/src/main/java/com/cyanogenmod/eleven/locale/LocaleUtility.java +++ b/src/main/java/org/lineageos/eleven/locale/LocaleUtility.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.locale; +package org.lineageos.eleven.locale; import com.google.common.base.Optional; import com.google.common.collect.ImmutableMap; diff --git a/src/main/java/com/cyanogenmod/eleven/locale/LocaleUtils.java b/src/main/java/org/lineageos/eleven/locale/LocaleUtils.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/locale/LocaleUtils.java rename to src/main/java/org/lineageos/eleven/locale/LocaleUtils.java index c550c26..af18bef 100644 --- a/src/main/java/com/cyanogenmod/eleven/locale/LocaleUtils.java +++ b/src/main/java/org/lineageos/eleven/locale/LocaleUtils.java @@ -14,7 +14,7 @@ * limitations under the License */ -package com.cyanogenmod.eleven.locale; +package org.lineageos.eleven.locale; import android.os.Build; import android.provider.ContactsContract.FullNameStyle; @@ -22,7 +22,7 @@ import android.text.TextUtils; import android.util.Log; -import com.cyanogenmod.eleven.locale.HanziToPinyin.Token; +import org.lineageos.eleven.locale.HanziToPinyin.Token; import com.google.common.annotations.VisibleForTesting; @@ -67,7 +67,7 @@ public class LocaleUtils { public static final Locale LOCALE_SERBIAN = new Locale("sr"); public static final Locale LOCALE_UKRAINIAN = new Locale("uk"); public static final Locale LOCALE_THAI = new Locale("th"); - + /** * This class is the default implementation and should be the base class * for other locales. @@ -85,7 +85,7 @@ private static class LocaleUtilsBase { private final int mAlphabeticIndexBucketCount; private final int mNumberBucketIndex; private final boolean mEnableSecondaryLocalePinyin; - + public LocaleUtilsBase(LocaleSet locales) { // AlphabeticIndex.getBucketLabel() uses a binary search across // the entire label set so care should be taken about growing this @@ -100,8 +100,8 @@ public LocaleUtilsBase(LocaleSet locales) { // Cyrillic because their alphabets are complementary supersets // of Russian. mEnableSecondaryLocalePinyin = locales.isSecondaryLocaleSimplifiedChinese(); - mAlphabeticIndex = new AlphabeticIndexCompat(locales); - mAlphabeticIndexBucketCount = mAlphabeticIndex.getBucketCount(); + mAlphabeticIndex = new AlphabeticIndexCompat(locales); + mAlphabeticIndexBucketCount = mAlphabeticIndex.getBucketCount(); mNumberBucketIndex = mAlphabeticIndexBucketCount - 1; } @@ -122,7 +122,7 @@ public int getBucketIndex(String name) { if (name == null) { return -1; } - boolean prefixIsNumeric = false; + boolean prefixIsNumeric = false; final int length = name.length(); int offset = 0; while (offset < length) { @@ -160,7 +160,7 @@ public int getBucketIndex(String name) { return bucket + 1; } return bucket; - } + } /** * Returns the number of buckets in use (one more than AlphabeticIndex @@ -348,7 +348,7 @@ public static Iterator getRomajiNameLookupKeys(String name) { return null; } String romajiName = null; - + try { Class clazz = t.getClass(); Method m = clazz.getMethod("transliterate", new Class[] { String.class } ); @@ -356,7 +356,7 @@ public static Iterator getRomajiNameLookupKeys(String name) { } catch (Exception ex) { throw new RuntimeException(ex); } - + if (TextUtils.isEmpty(romajiName) || TextUtils.equals(name, romajiName)) { return null; diff --git a/src/main/java/com/cyanogenmod/eleven/menu/BasePlaylistDialog.java b/src/main/java/org/lineageos/eleven/menu/BasePlaylistDialog.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/menu/BasePlaylistDialog.java rename to src/main/java/org/lineageos/eleven/menu/BasePlaylistDialog.java index 8f4b7cf..1c63ebf 100644 --- a/src/main/java/com/cyanogenmod/eleven/menu/BasePlaylistDialog.java +++ b/src/main/java/org/lineageos/eleven/menu/BasePlaylistDialog.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.menu; +package org.lineageos.eleven.menu; import android.support.v7.app.AlertDialog; import android.app.Dialog; @@ -27,8 +27,8 @@ import android.widget.Button; import android.widget.EditText; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.utils.MusicUtils; /** * A simple base class for the playlist dialogs. diff --git a/src/main/java/com/cyanogenmod/eleven/menu/ConfirmDialog.java b/src/main/java/org/lineageos/eleven/menu/ConfirmDialog.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/menu/ConfirmDialog.java rename to src/main/java/org/lineageos/eleven/menu/ConfirmDialog.java index dfe0858..3f05081 100644 --- a/src/main/java/com/cyanogenmod/eleven/menu/ConfirmDialog.java +++ b/src/main/java/org/lineageos/eleven/menu/ConfirmDialog.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.menu; +package org.lineageos.eleven.menu; import android.support.v7.app.AlertDialog; import android.app.Dialog; @@ -25,7 +25,7 @@ import android.view.ViewGroup; import android.support.v4.app.Fragment; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; /** Dialog to confirm a non-reversible action */ public class ConfirmDialog extends AppCompatDialogFragment { diff --git a/src/main/java/com/cyanogenmod/eleven/menu/CreateNewPlaylist.java b/src/main/java/org/lineageos/eleven/menu/CreateNewPlaylist.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/menu/CreateNewPlaylist.java rename to src/main/java/org/lineageos/eleven/menu/CreateNewPlaylist.java index 84a72c4..3eaced5 100644 --- a/src/main/java/com/cyanogenmod/eleven/menu/CreateNewPlaylist.java +++ b/src/main/java/org/lineageos/eleven/menu/CreateNewPlaylist.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.menu; +package org.lineageos.eleven.menu; import android.app.Dialog; import android.content.ContentResolver; @@ -19,9 +19,9 @@ import android.os.Bundle; import android.provider.MediaStore; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.format.Capitalize; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.format.Capitalize; +import org.lineageos.eleven.utils.MusicUtils; /** * @author Andrew Neal (andrewdneal@gmail.com) TODO - The playlist names are diff --git a/src/main/java/com/cyanogenmod/eleven/menu/DeleteDialog.java b/src/main/java/org/lineageos/eleven/menu/DeleteDialog.java similarity index 92% rename from src/main/java/com/cyanogenmod/eleven/menu/DeleteDialog.java rename to src/main/java/org/lineageos/eleven/menu/DeleteDialog.java index 5dc7f09..f8b3a9b 100644 --- a/src/main/java/com/cyanogenmod/eleven/menu/DeleteDialog.java +++ b/src/main/java/org/lineageos/eleven/menu/DeleteDialog.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.menu; +package org.lineageos.eleven.menu; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatDialogFragment; @@ -21,11 +21,11 @@ import android.content.DialogInterface.OnClickListener; import android.os.Bundle; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; /** * Alert dialog used to delete tracks. @@ -87,7 +87,7 @@ public Dialog onCreateDialog(final Bundle savedInstanceState) { final String title = arguments.getString(Config.NAME); final String dialogTitle = getString(R.string.delete_dialog_title, title); // Initialize the image cache - mFetcher = ApolloUtils.getImageFetcher(getActivity()); + mFetcher = ElevenUtils.getImageFetcher(getActivity()); // Build the dialog Dialog dialog = new AlertDialog.Builder(getActivity(), R.style.AppCompatAlertDialogStyle).setTitle(dialogTitle) .setMessage(R.string.cannot_be_undone) diff --git a/src/main/java/com/cyanogenmod/eleven/menu/FragmentMenuItems.java b/src/main/java/org/lineageos/eleven/menu/FragmentMenuItems.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/menu/FragmentMenuItems.java rename to src/main/java/org/lineageos/eleven/menu/FragmentMenuItems.java index df34ef4..7dca614 100644 --- a/src/main/java/com/cyanogenmod/eleven/menu/FragmentMenuItems.java +++ b/src/main/java/org/lineageos/eleven/menu/FragmentMenuItems.java @@ -11,10 +11,10 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.menu; +package org.lineageos.eleven.menu; /** - * Several of the context menu items used in Apollo are reused. This class helps + * Several of the context menu items used in Eleven are reused. This class helps * keep things tidy. The integer values of the items are used both as the menu IDs * _and_ to determine the sort order of the items. */ diff --git a/src/main/java/com/cyanogenmod/eleven/menu/PhotoSelectionDialog.java b/src/main/java/org/lineageos/eleven/menu/PhotoSelectionDialog.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/menu/PhotoSelectionDialog.java rename to src/main/java/org/lineageos/eleven/menu/PhotoSelectionDialog.java index 18a5442..616c132 100644 --- a/src/main/java/com/cyanogenmod/eleven/menu/PhotoSelectionDialog.java +++ b/src/main/java/org/lineageos/eleven/menu/PhotoSelectionDialog.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.menu; +package org.lineageos.eleven.menu; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatDialogFragment; @@ -22,11 +22,12 @@ import android.widget.ArrayAdapter; import android.widget.ListAdapter; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.activities.HomeActivity; -import com.cyanogenmod.eleven.utils.Lists; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.Lists; +import org.lineageos.eleven.utils.MusicUtils; import java.util.ArrayList; diff --git a/src/main/java/com/cyanogenmod/eleven/menu/RenamePlaylist.java b/src/main/java/org/lineageos/eleven/menu/RenamePlaylist.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/menu/RenamePlaylist.java rename to src/main/java/org/lineageos/eleven/menu/RenamePlaylist.java index 993c1e2..8803607 100644 --- a/src/main/java/com/cyanogenmod/eleven/menu/RenamePlaylist.java +++ b/src/main/java/org/lineageos/eleven/menu/RenamePlaylist.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.menu; +package org.lineageos.eleven.menu; import android.app.Dialog; import android.content.ContentResolver; @@ -21,9 +21,9 @@ import android.provider.MediaStore; import android.provider.MediaStore.Audio; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.format.Capitalize; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.format.Capitalize; +import org.lineageos.eleven.utils.MusicUtils; /** * Alert dialog used to rename playlits. diff --git a/src/main/java/com/cyanogenmod/eleven/model/Album.java b/src/main/java/org/lineageos/eleven/model/Album.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/model/Album.java rename to src/main/java/org/lineageos/eleven/model/Album.java index 8745a8f..055df9f 100644 --- a/src/main/java/com/cyanogenmod/eleven/model/Album.java +++ b/src/main/java/org/lineageos/eleven/model/Album.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.model; +package org.lineageos.eleven.model; import android.text.TextUtils; diff --git a/src/main/java/com/cyanogenmod/eleven/model/AlbumArtistDetails.java b/src/main/java/org/lineageos/eleven/model/AlbumArtistDetails.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/model/AlbumArtistDetails.java rename to src/main/java/org/lineageos/eleven/model/AlbumArtistDetails.java index 28dfe0c..59c39b7 100644 --- a/src/main/java/com/cyanogenmod/eleven/model/AlbumArtistDetails.java +++ b/src/main/java/org/lineageos/eleven/model/AlbumArtistDetails.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.model; +package org.lineageos.eleven.model; /** * Simple containing class to query for album art diff --git a/src/main/java/com/cyanogenmod/eleven/model/Artist.java b/src/main/java/org/lineageos/eleven/model/Artist.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/model/Artist.java rename to src/main/java/org/lineageos/eleven/model/Artist.java index 5ae101a..ca6a040 100644 --- a/src/main/java/com/cyanogenmod/eleven/model/Artist.java +++ b/src/main/java/org/lineageos/eleven/model/Artist.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.model; +package org.lineageos.eleven.model; import android.text.TextUtils; diff --git a/src/main/java/com/cyanogenmod/eleven/model/Genre.java b/src/main/java/org/lineageos/eleven/model/Genre.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/model/Genre.java rename to src/main/java/org/lineageos/eleven/model/Genre.java index 90c5210..7842e02 100644 --- a/src/main/java/com/cyanogenmod/eleven/model/Genre.java +++ b/src/main/java/org/lineageos/eleven/model/Genre.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.model; +package org.lineageos.eleven.model; import android.text.TextUtils; diff --git a/src/main/java/com/cyanogenmod/eleven/model/Playlist.java b/src/main/java/org/lineageos/eleven/model/Playlist.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/model/Playlist.java rename to src/main/java/org/lineageos/eleven/model/Playlist.java index 57e0825..91d11df 100644 --- a/src/main/java/com/cyanogenmod/eleven/model/Playlist.java +++ b/src/main/java/org/lineageos/eleven/model/Playlist.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.model; +package org.lineageos.eleven.model; import android.text.TextUtils; diff --git a/src/main/java/com/cyanogenmod/eleven/model/SearchResult.java b/src/main/java/org/lineageos/eleven/model/SearchResult.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/model/SearchResult.java rename to src/main/java/org/lineageos/eleven/model/SearchResult.java index cc4c468..5a8814b 100644 --- a/src/main/java/com/cyanogenmod/eleven/model/SearchResult.java +++ b/src/main/java/org/lineageos/eleven/model/SearchResult.java @@ -13,13 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.model; +package org.lineageos.eleven.model; import android.database.Cursor; import android.provider.MediaStore; import android.util.Log; -import com.cyanogenmod.eleven.Config; +import org.lineageos.eleven.Config; import java.util.Comparator; diff --git a/src/main/java/com/cyanogenmod/eleven/model/Song.java b/src/main/java/org/lineageos/eleven/model/Song.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/model/Song.java rename to src/main/java/org/lineageos/eleven/model/Song.java index 785e21e..785c387 100644 --- a/src/main/java/com/cyanogenmod/eleven/model/Song.java +++ b/src/main/java/org/lineageos/eleven/model/Song.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.model; +package org.lineageos.eleven.model; import android.text.TextUtils; diff --git a/src/main/java/com/cyanogenmod/eleven/provider/LocalizedStore.java b/src/main/java/org/lineageos/eleven/provider/LocalizedStore.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/provider/LocalizedStore.java rename to src/main/java/org/lineageos/eleven/provider/LocalizedStore.java index 0890ae0..f7652a8 100644 --- a/src/main/java/com/cyanogenmod/eleven/provider/LocalizedStore.java +++ b/src/main/java/org/lineageos/eleven/provider/LocalizedStore.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License */ -package com.cyanogenmod.eleven.provider; +package org.lineageos.eleven.provider; import android.content.ContentValues; import android.content.Context; @@ -28,11 +28,11 @@ import android.text.TextUtils; import android.util.Log; -import com.cyanogenmod.eleven.loaders.SortedCursor; -import com.cyanogenmod.eleven.locale.LocaleSet; -import com.cyanogenmod.eleven.locale.LocaleSetManager; -import com.cyanogenmod.eleven.locale.LocaleUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.loaders.SortedCursor; +import org.lineageos.eleven.locale.LocaleSet; +import org.lineageos.eleven.locale.LocaleSetManager; +import org.lineageos.eleven.locale.LocaleUtils; +import org.lineageos.eleven.utils.MusicUtils; import java.lang.reflect.Method; import java.util.ArrayList; diff --git a/src/main/java/com/cyanogenmod/eleven/provider/MusicDB.java b/src/main/java/org/lineageos/eleven/provider/MusicDB.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/provider/MusicDB.java rename to src/main/java/org/lineageos/eleven/provider/MusicDB.java index 84c64a0..a1d7575 100644 --- a/src/main/java/com/cyanogenmod/eleven/provider/MusicDB.java +++ b/src/main/java/org/lineageos/eleven/provider/MusicDB.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.provider; +package org.lineageos.eleven.provider; import android.content.Context; import android.database.sqlite.SQLiteDatabase; diff --git a/src/main/java/com/cyanogenmod/eleven/provider/MusicPlaybackState.java b/src/main/java/org/lineageos/eleven/provider/MusicPlaybackState.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/provider/MusicPlaybackState.java rename to src/main/java/org/lineageos/eleven/provider/MusicPlaybackState.java index fbfca28..e0bb66c 100644 --- a/src/main/java/com/cyanogenmod/eleven/provider/MusicPlaybackState.java +++ b/src/main/java/org/lineageos/eleven/provider/MusicPlaybackState.java @@ -13,16 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.provider; +package org.lineageos.eleven.provider; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.service.MusicPlaybackTrack; -import com.cyanogenmod.eleven.utils.Lists; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.service.MusicPlaybackTrack; +import org.lineageos.eleven.utils.Lists; import java.util.ArrayList; import java.util.Iterator; diff --git a/src/main/java/com/cyanogenmod/eleven/provider/PlaylistArtworkStore.java b/src/main/java/org/lineageos/eleven/provider/PlaylistArtworkStore.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/provider/PlaylistArtworkStore.java rename to src/main/java/org/lineageos/eleven/provider/PlaylistArtworkStore.java index 48a792e..3fa886c 100644 --- a/src/main/java/com/cyanogenmod/eleven/provider/PlaylistArtworkStore.java +++ b/src/main/java/org/lineageos/eleven/provider/PlaylistArtworkStore.java @@ -13,14 +13,14 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.provider; +package org.lineageos.eleven.provider; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.MusicUtils; /** * This db stores the details to generate the playlist artwork including when it was diff --git a/src/main/java/com/cyanogenmod/eleven/provider/PropertiesStore.java b/src/main/java/org/lineageos/eleven/provider/PropertiesStore.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/provider/PropertiesStore.java rename to src/main/java/org/lineageos/eleven/provider/PropertiesStore.java index b22de68..9d84c75 100644 --- a/src/main/java/com/cyanogenmod/eleven/provider/PropertiesStore.java +++ b/src/main/java/org/lineageos/eleven/provider/PropertiesStore.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License */ -package com.cyanogenmod.eleven.provider; +package org.lineageos.eleven.provider; import android.content.ContentValues; import android.content.Context; diff --git a/src/main/java/com/cyanogenmod/eleven/provider/RecentStore.java b/src/main/java/org/lineageos/eleven/provider/RecentStore.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/provider/RecentStore.java rename to src/main/java/org/lineageos/eleven/provider/RecentStore.java index 0a913db..e03f52b 100644 --- a/src/main/java/com/cyanogenmod/eleven/provider/RecentStore.java +++ b/src/main/java/org/lineageos/eleven/provider/RecentStore.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.provider; +package org.lineageos.eleven.provider; import android.content.ContentValues; import android.content.Context; diff --git a/src/main/java/com/cyanogenmod/eleven/provider/SearchHistory.java b/src/main/java/org/lineageos/eleven/provider/SearchHistory.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/provider/SearchHistory.java rename to src/main/java/org/lineageos/eleven/provider/SearchHistory.java index 4ca1b40..18d25cb 100644 --- a/src/main/java/com/cyanogenmod/eleven/provider/SearchHistory.java +++ b/src/main/java/org/lineageos/eleven/provider/SearchHistory.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.provider; +package org.lineageos.eleven.provider; import android.content.ContentValues; import android.content.Context; diff --git a/src/main/java/com/cyanogenmod/eleven/provider/SongPlayCount.java b/src/main/java/org/lineageos/eleven/provider/SongPlayCount.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/provider/SongPlayCount.java rename to src/main/java/org/lineageos/eleven/provider/SongPlayCount.java index 082dfc2..5fcd83f 100644 --- a/src/main/java/com/cyanogenmod/eleven/provider/SongPlayCount.java +++ b/src/main/java/org/lineageos/eleven/provider/SongPlayCount.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.provider; +package org.lineageos.eleven.provider; import android.content.ContentValues; import android.content.Context; diff --git a/src/main/java/com/cyanogenmod/eleven/recycler/RecycleHolder.java b/src/main/java/org/lineageos/eleven/recycler/RecycleHolder.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/recycler/RecycleHolder.java rename to src/main/java/org/lineageos/eleven/recycler/RecycleHolder.java index ec16a4e..c3d9d08 100644 --- a/src/main/java/com/cyanogenmod/eleven/recycler/RecycleHolder.java +++ b/src/main/java/org/lineageos/eleven/recycler/RecycleHolder.java @@ -11,13 +11,13 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.recycler; +package org.lineageos.eleven.recycler; import android.view.View; import android.widget.AbsListView.RecyclerListener; -import com.cyanogenmod.eleven.cache.ImageWorker; -import com.cyanogenmod.eleven.ui.MusicHolder; +import org.lineageos.eleven.cache.ImageWorker; +import org.lineageos.eleven.ui.MusicHolder; /** * A @ {@link RecyclerListener} for {@link MusicHolder}'s views. diff --git a/src/main/java/com/cyanogenmod/eleven/sectionadapter/SectionAdapter.java b/src/main/java/org/lineageos/eleven/sectionadapter/SectionAdapter.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/sectionadapter/SectionAdapter.java rename to src/main/java/org/lineageos/eleven/sectionadapter/SectionAdapter.java index 870382a..f052a6a 100644 --- a/src/main/java/com/cyanogenmod/eleven/sectionadapter/SectionAdapter.java +++ b/src/main/java/org/lineageos/eleven/sectionadapter/SectionAdapter.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.sectionadapter; +package org.lineageos.eleven.sectionadapter; import android.app.Activity; import android.content.Context; @@ -24,11 +24,11 @@ import android.widget.BaseAdapter; import android.widget.TextView; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.MusicHolder; -import com.cyanogenmod.eleven.utils.SectionCreatorUtils.Section; -import com.cyanogenmod.eleven.utils.SectionCreatorUtils.SectionType; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.MusicHolder; +import org.lineageos.eleven.utils.SectionCreatorUtils.Section; +import org.lineageos.eleven.utils.SectionCreatorUtils.SectionType; +import org.lineageos.eleven.widgets.IPopupMenuCallback; import java.util.TreeMap; diff --git a/src/main/java/com/cyanogenmod/eleven/sectionadapter/SectionCreator.java b/src/main/java/org/lineageos/eleven/sectionadapter/SectionCreator.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/sectionadapter/SectionCreator.java rename to src/main/java/org/lineageos/eleven/sectionadapter/SectionCreator.java index 16e7e09..b731973 100644 --- a/src/main/java/com/cyanogenmod/eleven/sectionadapter/SectionCreator.java +++ b/src/main/java/org/lineageos/eleven/sectionadapter/SectionCreator.java @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.sectionadapter; +package org.lineageos.eleven.sectionadapter; import android.content.Context; -import com.cyanogenmod.eleven.loaders.WrappedAsyncTaskLoader; -import com.cyanogenmod.eleven.utils.SectionCreatorUtils; +import org.lineageos.eleven.loaders.WrappedAsyncTaskLoader; +import org.lineageos.eleven.utils.SectionCreatorUtils; import java.util.List; import java.util.TreeMap; diff --git a/src/main/java/com/cyanogenmod/eleven/sectionadapter/SectionListContainer.java b/src/main/java/org/lineageos/eleven/sectionadapter/SectionListContainer.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/sectionadapter/SectionListContainer.java rename to src/main/java/org/lineageos/eleven/sectionadapter/SectionListContainer.java index 486bf84..93bcf7d 100644 --- a/src/main/java/com/cyanogenmod/eleven/sectionadapter/SectionListContainer.java +++ b/src/main/java/org/lineageos/eleven/sectionadapter/SectionListContainer.java @@ -13,9 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.sectionadapter; +package org.lineageos.eleven.sectionadapter; -import com.cyanogenmod.eleven.utils.SectionCreatorUtils; +import org.lineageos.eleven.utils.SectionCreatorUtils; import java.util.List; import java.util.TreeMap; diff --git a/src/main/java/com/cyanogenmod/eleven/service/MusicPlaybackTrack.java b/src/main/java/org/lineageos/eleven/service/MusicPlaybackTrack.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/service/MusicPlaybackTrack.java rename to src/main/java/org/lineageos/eleven/service/MusicPlaybackTrack.java index 2c9832a..5939cac 100644 --- a/src/main/java/com/cyanogenmod/eleven/service/MusicPlaybackTrack.java +++ b/src/main/java/org/lineageos/eleven/service/MusicPlaybackTrack.java @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.service; +package org.lineageos.eleven.service; import android.os.Parcel; import android.os.Parcelable; -import com.cyanogenmod.eleven.Config; +import org.lineageos.eleven.Config; /** * This is used by the music playback service to track the music tracks it is playing diff --git a/src/main/java/com/cyanogenmod/eleven/slidinguppanel/SlidingUpPanelLayout.java b/src/main/java/org/lineageos/eleven/slidinguppanel/SlidingUpPanelLayout.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/slidinguppanel/SlidingUpPanelLayout.java rename to src/main/java/org/lineageos/eleven/slidinguppanel/SlidingUpPanelLayout.java index f7fdf5d..afd4027 100644 --- a/src/main/java/com/cyanogenmod/eleven/slidinguppanel/SlidingUpPanelLayout.java +++ b/src/main/java/org/lineageos/eleven/slidinguppanel/SlidingUpPanelLayout.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.slidinguppanel; +package org.lineageos.eleven.slidinguppanel; import android.annotation.SuppressLint; import android.content.Context; @@ -19,7 +19,7 @@ import android.view.View; import android.view.ViewGroup; import android.view.accessibility.AccessibilityEvent; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; public class SlidingUpPanelLayout extends ViewGroup { diff --git a/src/main/java/com/cyanogenmod/eleven/slidinguppanel/ViewDragHelper.java b/src/main/java/org/lineageos/eleven/slidinguppanel/ViewDragHelper.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/slidinguppanel/ViewDragHelper.java rename to src/main/java/org/lineageos/eleven/slidinguppanel/ViewDragHelper.java index dffee27..5627151 100644 --- a/src/main/java/com/cyanogenmod/eleven/slidinguppanel/ViewDragHelper.java +++ b/src/main/java/org/lineageos/eleven/slidinguppanel/ViewDragHelper.java @@ -15,7 +15,7 @@ */ -package com.cyanogenmod.eleven.slidinguppanel; +package org.lineageos.eleven.slidinguppanel; import java.util.Arrays; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/HeaderBar.java b/src/main/java/org/lineageos/eleven/ui/HeaderBar.java similarity index 89% rename from src/main/java/com/cyanogenmod/eleven/ui/HeaderBar.java rename to src/main/java/org/lineageos/eleven/ui/HeaderBar.java index cb56338..7dbf192 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/HeaderBar.java +++ b/src/main/java/org/lineageos/eleven/ui/HeaderBar.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui; +package org.lineageos.eleven.ui; import android.content.Context; import android.support.v4.app.Fragment; @@ -27,12 +27,12 @@ import android.widget.PopupMenu; import android.widget.TextView; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.loaders.NowPlayingCursor; -import com.cyanogenmod.eleven.loaders.QueueLoader; -import com.cyanogenmod.eleven.menu.CreateNewPlaylist; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.NavUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.loaders.NowPlayingCursor; +import org.lineageos.eleven.loaders.QueueLoader; +import org.lineageos.eleven.menu.CreateNewPlaylist; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.NavUtils; /** * Simple Header bar wrapper class that also has its own menu bar button. @@ -144,26 +144,26 @@ public boolean onMenuItemClick(MenuItem item) { } public boolean onPopupMenuItemClick(final MenuItem item) { - int id = item.getItemId(); - if (id == R.id.menu_shuffle_all){ + int id = item.getItemId(); + if (id == R.id.menu_shuffle_all){ // Shuffle all the songs MusicUtils.shuffleAll(mFragment.getActivity()); return true; - } else if (id == R.id.menu_settings){ + } else if (id == R.id.menu_settings){ // Settings NavUtils.openSettings(mFragment.getActivity()); return true; - } else if (id == R.id.menu_save_queue){ + } else if (id == R.id.menu_save_queue){ NowPlayingCursor queue = (NowPlayingCursor) QueueLoader .makeQueueCursor(mFragment.getActivity()); CreateNewPlaylist.getInstance(MusicUtils.getSongListForCursor(queue)).show( mFragment.getFragmentManager(), "CreatePlaylist"); queue.close(); return true; - } else if (id == R.id.menu_clear_queue){ + } else if (id == R.id.menu_clear_queue){ MusicUtils.clearQueue(); return true; - } + } return false; } } diff --git a/src/main/java/com/cyanogenmod/eleven/ui/MusicHolder.java b/src/main/java/org/lineageos/eleven/ui/MusicHolder.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/ui/MusicHolder.java rename to src/main/java/org/lineageos/eleven/ui/MusicHolder.java index d65e8e7..3313ea2 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/MusicHolder.java +++ b/src/main/java/org/lineageos/eleven/ui/MusicHolder.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui; +package org.lineageos.eleven.ui; import android.content.Context; import android.view.View; @@ -19,9 +19,9 @@ import android.widget.RelativeLayout; import android.widget.TextView; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.widgets.PlayPauseProgressButton; -import com.cyanogenmod.eleven.widgets.PopupMenuButton; +import org.lineageos.eleven.R; +import org.lineageos.eleven.widgets.PlayPauseProgressButton; +import org.lineageos.eleven.widgets.PopupMenuButton; import java.lang.ref.WeakReference; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/activities/BaseActivity.java b/src/main/java/org/lineageos/eleven/ui/activities/BaseActivity.java similarity index 92% rename from src/main/java/com/cyanogenmod/eleven/ui/activities/BaseActivity.java rename to src/main/java/org/lineageos/eleven/ui/activities/BaseActivity.java index a29170a..4aae7d3 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/activities/BaseActivity.java +++ b/src/main/java/org/lineageos/eleven/ui/activities/BaseActivity.java @@ -11,9 +11,9 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.activities; +package org.lineageos.eleven.ui.activities; -import static com.cyanogenmod.eleven.utils.MusicUtils.mService; +import static org.lineageos.eleven.utils.MusicUtils.mService; import android.support.v4.content.ContextCompat; import android.support.v7.app.ActionBar; @@ -40,25 +40,25 @@ import android.widget.Toast; import android.support.v7.widget.Toolbar; -import com.cyanogenmod.eleven.IElevenService; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.MusicStateListener; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ICacheListener; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.Lists; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.MusicUtils.ServiceToken; -import com.cyanogenmod.eleven.utils.NavUtils; -import com.cyanogenmod.eleven.widgets.PlayPauseProgressButton; +import org.lineageos.eleven.IElevenService; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.MusicStateListener; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ICacheListener; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.Lists; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.MusicUtils.ServiceToken; +import org.lineageos.eleven.utils.NavUtils; +import org.lineageos.eleven.widgets.PlayPauseProgressButton; import java.lang.ref.WeakReference; import java.util.ArrayList; /** * A base {@link AppCompatActivity} used to update the bottom bar and - * bind to Apollo's service. + * bind to Eleven's service. *

* {@link SlidingPanelActivity} extends from this skeleton. * @@ -121,7 +121,7 @@ protected void onCreate(final Bundle savedInstanceState) { // Control the media volume setVolumeControlStream(AudioManager.STREAM_MUSIC); - // Bind Apollo's service + // Bind Eleven's service mToken = MusicUtils.bindToService(this, this); // Initialize the broadcast receiver @@ -145,7 +145,7 @@ protected void onCreate(final Bundle savedInstanceState) { // set the background on the root view getWindow().getDecorView().getRootView().setBackgroundColor( - ContextCompat.getColor(this, R.color.background_color)); + ContextCompat.getColor(this, R.color.background_color)); // Initialze the bottom action bar initBottomActionBar(); @@ -193,15 +193,15 @@ public boolean onCreateOptionsMenu(final Menu menu) { */ @Override public boolean onOptionsItemSelected(final MenuItem item) { - int id = item.getItemId(); - if (id == R.id.menu_settings){ + int id = item.getItemId(); + if (id == R.id.menu_settings){ // Settings NavUtils.openSettings(this); return true; - } else if (id == R.id.menu_search){ + } else if (id == R.id.menu_search){ NavUtils.openSearch(BaseActivity.this, ""); return true; - } + } return super.onOptionsItemSelected(item); } @@ -280,7 +280,7 @@ public void setupActionBar(int resId) { } @SuppressWarnings("deprecation") - public void setupActionBar(String title) { + public void setupActionBar(String title) { setActionBarTitle(title); if (mActionBarBackground == null) { @@ -289,7 +289,7 @@ public void setupActionBar(String title) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { mToolBar.setBackground(mActionBarBackground); } else { - mToolBar.setBackgroundDrawable(mActionBarBackground); + mToolBar.setBackgroundDrawable(mActionBarBackground); } } } @@ -346,7 +346,7 @@ private void updateBottomActionBarInfo() { // Set the artist name mArtistName.setText(MusicUtils.getArtistName()); // Set the album art - ApolloUtils.getImageFetcher(this).loadCurrentArtwork(mAlbumArt); + ElevenUtils.getImageFetcher(this).loadCurrentArtwork(mAlbumArt); } /** @@ -474,7 +474,7 @@ public void removeMusicStateListenerListener(final MusicStateListener status) { @Override public void onCacheUnpaused() { // Set the album art - ApolloUtils.getImageFetcher(this).loadCurrentArtwork(mAlbumArt); + ElevenUtils.getImageFetcher(this).loadCurrentArtwork(mAlbumArt); } /** diff --git a/src/main/java/com/cyanogenmod/eleven/ui/activities/HomeActivity.java b/src/main/java/org/lineageos/eleven/ui/activities/HomeActivity.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/ui/activities/HomeActivity.java rename to src/main/java/org/lineageos/eleven/ui/activities/HomeActivity.java index ea87f58..a5881d1 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/activities/HomeActivity.java +++ b/src/main/java/org/lineageos/eleven/ui/activities/HomeActivity.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.activities; +package org.lineageos.eleven.ui.activities; import android.Manifest; import android.animation.ArgbEvaluator; @@ -38,26 +38,25 @@ import android.view.MenuItem; import android.view.Window; -import java.lang.reflect.Method; - -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.ui.fragments.AlbumDetailFragment; -import com.cyanogenmod.eleven.ui.fragments.ArtistDetailFragment; -import com.cyanogenmod.eleven.ui.fragments.AudioPlayerFragment; -import com.cyanogenmod.eleven.ui.fragments.IChildFragment; -import com.cyanogenmod.eleven.ui.fragments.ISetupActionBar; -import com.cyanogenmod.eleven.ui.fragments.PlaylistDetailFragment; -import com.cyanogenmod.eleven.ui.fragments.RecentFragment; -import com.cyanogenmod.eleven.ui.fragments.phone.MusicBrowserPhoneFragment; -import com.cyanogenmod.eleven.ui.fragments.profile.LastAddedFragment; -import com.cyanogenmod.eleven.ui.fragments.profile.TopTracksFragment; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.BitmapWithColors; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.NavUtils; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.ui.fragments.AlbumDetailFragment; +import org.lineageos.eleven.ui.fragments.ArtistDetailFragment; +import org.lineageos.eleven.ui.fragments.AudioPlayerFragment; +import org.lineageos.eleven.ui.fragments.IChildFragment; +import org.lineageos.eleven.ui.fragments.ISetupActionBar; +import org.lineageos.eleven.ui.fragments.PlaylistDetailFragment; +import org.lineageos.eleven.ui.fragments.RecentFragment; +import org.lineageos.eleven.ui.fragments.phone.MusicBrowserPhoneFragment; +import org.lineageos.eleven.ui.fragments.profile.LastAddedFragment; +import org.lineageos.eleven.ui.fragments.profile.TopTracksFragment; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.BitmapWithColors; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.NavUtils; +import java.lang.reflect.Method; import java.util.ArrayList; public class HomeActivity extends SlidingPanelActivity implements @@ -251,7 +250,7 @@ private void updateVisualizerColor(int color) { } private void updateStatusBarColor(int color) { - if (color == Color.TRANSPARENT) { + if (color == Color.TRANSPARENT) { color = ContextCompat.getColor(this, R.color.primary_dark); } final Window window = getWindow(); @@ -350,7 +349,7 @@ public void run() { Bitmap bitmap = ImageFetcher.decodeSampledBitmapFromUri(getContentResolver(), selectedImage); - ImageFetcher imageFetcher = ApolloUtils.getImageFetcher(HomeActivity.this); + ImageFetcher imageFetcher = ElevenUtils.getImageFetcher(HomeActivity.this); imageFetcher.addBitmapToCache(mKey, bitmap); MusicUtils.refresh(); diff --git a/src/main/java/com/cyanogenmod/eleven/ui/activities/SearchActivity.java b/src/main/java/org/lineageos/eleven/ui/activities/SearchActivity.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/ui/activities/SearchActivity.java rename to src/main/java/org/lineageos/eleven/ui/activities/SearchActivity.java index 0bf58d2..06123a5 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/activities/SearchActivity.java +++ b/src/main/java/org/lineageos/eleven/ui/activities/SearchActivity.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.activities; +package org.lineageos.eleven.ui.activities; import android.support.v7.app.ActionBar; import android.app.SearchManager; @@ -50,31 +50,31 @@ import android.support.v7.widget.SearchView; import android.support.v7.widget.SearchView.OnQueryTextListener; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.IElevenService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.SummarySearchAdapter; -import com.cyanogenmod.eleven.loaders.WrappedAsyncTaskLoader; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.model.AlbumArtistDetails; -import com.cyanogenmod.eleven.model.SearchResult; -import com.cyanogenmod.eleven.model.SearchResult.ResultType; -import com.cyanogenmod.eleven.provider.SearchHistory; -import com.cyanogenmod.eleven.recycler.RecycleHolder; -import com.cyanogenmod.eleven.sectionadapter.SectionAdapter; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator.SimpleListLoader; -import com.cyanogenmod.eleven.sectionadapter.SectionListContainer; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.MusicUtils.ServiceToken; -import com.cyanogenmod.eleven.utils.NavUtils; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.utils.SectionCreatorUtils; -import com.cyanogenmod.eleven.utils.SectionCreatorUtils.IItemCompare; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; -import com.cyanogenmod.eleven.widgets.NoResultsContainer; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.IElevenService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.SummarySearchAdapter; +import org.lineageos.eleven.loaders.WrappedAsyncTaskLoader; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.model.AlbumArtistDetails; +import org.lineageos.eleven.model.SearchResult; +import org.lineageos.eleven.model.SearchResult.ResultType; +import org.lineageos.eleven.provider.SearchHistory; +import org.lineageos.eleven.recycler.RecycleHolder; +import org.lineageos.eleven.sectionadapter.SectionAdapter; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.sectionadapter.SectionCreator.SimpleListLoader; +import org.lineageos.eleven.sectionadapter.SectionListContainer; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.MusicUtils.ServiceToken; +import org.lineageos.eleven.utils.NavUtils; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.utils.SectionCreatorUtils; +import org.lineageos.eleven.utils.SectionCreatorUtils.IItemCompare; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.widgets.NoResultsContainer; import java.lang.reflect.Method; import java.util.ArrayList; @@ -83,11 +83,11 @@ import java.util.TreeSet; import static android.view.View.OnTouchListener; -import static com.cyanogenmod.eleven.utils.MusicUtils.mService; +import static org.lineageos.eleven.utils.MusicUtils.mService; /** - * Provides the search interface for Apollo. - * + * Provides the search interface for Eleven. + * * @author Andrew Neal (andrewdneal@gmail.com) */ public class SearchActivity extends AppCompatActivity implements @@ -108,7 +108,7 @@ public class SearchActivity extends AppCompatActivity implements * Identifier for the search history loader */ private static int HISTORY_LOADER = 1; - + /** * The service token */ @@ -198,7 +198,7 @@ enum VisibleState { private PopupMenuHelper mPopupMenuHelper; private boolean hasCallbacks; - + /** * {@inheritDoc} */ @@ -266,7 +266,7 @@ protected String getArtistName() { // Control the media volume setVolumeControlStream(AudioManager.STREAM_MUSIC); - // Bind Apollo's service + // Bind Eleven's service mToken = MusicUtils.bindToService(this, this); // Set the layout @@ -306,7 +306,7 @@ public void run() { } }; hasCallbacks = false; - + // Theme the action bar final ActionBar actionBar = getSupportActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); @@ -445,7 +445,7 @@ public boolean onCreateOptionsMenu(final Menu menu) { // layout params to hide it mSearchView.setIconifiedByDefault(false); mSearchView.setIconified(false); - int searchButtonId = getResources().getIdentifier("search_mag_icon", "id", "com.cyanogenmod.eleven"); + int searchButtonId = getResources().getIdentifier("search_mag_icon", "id", "org.lineageos.eleven"); ImageView searchIcon = (ImageView)mSearchView.findViewById(searchButtonId); searchIcon.setLayoutParams(new LinearLayout.LayoutParams(0, 0)); @@ -574,7 +574,7 @@ public void hideInputManager() { * don't want to flash the loading icon very often since searches usually are pretty fast */ public void setLoading() { - if (mCurrentState != VisibleState.Loading) { + if (mCurrentState != VisibleState.Loading) { //mHandler.hasCallbacks(mLoadingRunnable if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { try { @@ -601,7 +601,7 @@ public void setState(VisibleState state) { // in case the state doesn't change but we've created a loading runnable mHandler.removeCallbacks(mLoadingRunnable); hasCallbacks = false; - + // if we are already looking at view already, just quit if (mCurrentState == state) { return; @@ -800,7 +800,7 @@ protected List runSearchForType() { if (mSearchType == ResultType.Playlist) { cursor = makePlaylistSearchCursor(getContext(), mQuery); } else { - cursor = ApolloUtils.createSearchQueryCursor(getContext(), mQuery); + cursor = ElevenUtils.createSearchQueryCursor(getContext(), mQuery); } // pre-cache this index @@ -876,7 +876,7 @@ public List runGenericSearch() { } // do fancy audio search - Cursor cursor = ApolloUtils.createSearchQueryCursor(getContext(), mQuery); + Cursor cursor = ElevenUtils.createSearchQueryCursor(getContext(), mQuery); // pre-cache this index final int mimeTypeIndex = cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.MIME_TYPE); diff --git a/src/main/java/com/cyanogenmod/eleven/ui/activities/SettingsActivity.java b/src/main/java/org/lineageos/eleven/ui/activities/SettingsActivity.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/ui/activities/SettingsActivity.java rename to src/main/java/org/lineageos/eleven/ui/activities/SettingsActivity.java index bdf689f..44c0983 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/activities/SettingsActivity.java +++ b/src/main/java/org/lineageos/eleven/ui/activities/SettingsActivity.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.activities; +package org.lineageos.eleven.ui.activities; import android.content.SharedPreferences; import android.content.SharedPreferences.OnSharedPreferenceChangeListener; @@ -25,10 +25,10 @@ import android.support.v7.widget.Toolbar; import android.util.TypedValue; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.fragments.PreferenceFragment; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.fragments.PreferenceFragment; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PreferenceUtils; /** * Settings. @@ -36,17 +36,17 @@ * @author Andrew Neal (andrewdneal@gmail.com) */ public class SettingsActivity extends AppCompatActivity implements OnSharedPreferenceChangeListener{ - + /** * {@inheritDoc} */ @SuppressWarnings("deprecation") - @Override + @Override protected void onCreate(final Bundle savedInstanceState) { getDelegate().installViewFactory(); getDelegate().onCreate(savedInstanceState); super.onCreate(savedInstanceState); - + // Fade it in overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out); @@ -60,9 +60,9 @@ protected void onCreate(final Bundle savedInstanceState) { // Set the layout setContentView(R.layout.activity_settings); - + findViewById(R.id.activity_pref_content).setPadding(0, height, 0, 0); - + Toolbar mToolBar = (Toolbar) findViewById(R.id.prefToolbar); setSupportActionBar(mToolBar); @@ -81,7 +81,7 @@ protected void onCreate(final Bundle savedInstanceState) { } PreferenceUtils.getInstance(this).setOnSharedPreferenceChangeListener(this); - + // set the background on the root view getWindow().getDecorView().getRootView().setBackgroundColor( ContextCompat.getColor(this, R.color.background_color)); @@ -92,7 +92,6 @@ protected void onCreate(final Bundle savedInstanceState) { } } - /** * {@inheritDoc} */ @@ -113,7 +112,7 @@ public boolean onOptionsItemSelected(final MenuItem item) { public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { if (key.equals(PreferenceUtils.SHOW_VISUALIZER) && - sharedPreferences.getBoolean(key, false) && !PreferenceUtils.canRecordAudio(this)) { + sharedPreferences.getBoolean(key, false) && !PreferenceUtils.canRecordAudio(this)) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { PreferenceUtils.requestRecordAudio(this); } diff --git a/src/main/java/com/cyanogenmod/eleven/ui/activities/SlidingPanelActivity.java b/src/main/java/org/lineageos/eleven/ui/activities/SlidingPanelActivity.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/ui/activities/SlidingPanelActivity.java rename to src/main/java/org/lineageos/eleven/ui/activities/SlidingPanelActivity.java index 9af5460..c681974 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/activities/SlidingPanelActivity.java +++ b/src/main/java/org/lineageos/eleven/ui/activities/SlidingPanelActivity.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.activities; +package org.lineageos.eleven.ui.activities; import android.graphics.Color; import android.os.Bundle; @@ -20,15 +20,15 @@ import android.view.View; import android.widget.LinearLayout; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.slidinguppanel.SlidingUpPanelLayout; -import com.cyanogenmod.eleven.slidinguppanel.SlidingUpPanelLayout.SimplePanelSlideListener; -import com.cyanogenmod.eleven.ui.HeaderBar; -import com.cyanogenmod.eleven.ui.fragments.AudioPlayerFragment; -import com.cyanogenmod.eleven.ui.fragments.QueueFragment; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.BlurScrimImage; +import org.lineageos.eleven.R; +import org.lineageos.eleven.slidinguppanel.SlidingUpPanelLayout; +import org.lineageos.eleven.slidinguppanel.SlidingUpPanelLayout.SimplePanelSlideListener; +import org.lineageos.eleven.ui.HeaderBar; +import org.lineageos.eleven.ui.fragments.AudioPlayerFragment; +import org.lineageos.eleven.ui.fragments.QueueFragment; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.BlurScrimImage; /** * This class is used to display the {@link ViewPager} used to swipe between the @@ -175,7 +175,7 @@ public void onPanelCollapsed(View panel) { // since the previous view's is hiding the slide offset, we need to subtract that // from action bat height int slideOffset = getResources().getDimensionPixelOffset(R.dimen.sliding_panel_indicator_height); - slideOffset -= ApolloUtils.getActionBarHeight(this); + slideOffset -= ElevenUtils.getActionBarHeight(this); mSecondPanel.setSlidePanelOffset(slideOffset); } @@ -280,7 +280,7 @@ public void onMetaChanged() { super.onMetaChanged(); // load the blurred image - mBlurScrimImage.loadBlurImage(ApolloUtils.getImageFetcher(this)); + mBlurScrimImage.loadBlurImage(ElevenUtils.getImageFetcher(this)); } @Override @@ -288,7 +288,7 @@ public void onCacheUnpaused() { super.onCacheUnpaused(); // load the blurred image - mBlurScrimImage.loadBlurImage(ApolloUtils.getImageFetcher(this)); + mBlurScrimImage.loadBlurImage(ElevenUtils.getImageFetcher(this)); } protected AudioPlayerFragment getAudioPlayerFragment() { diff --git a/src/main/java/com/cyanogenmod/eleven/ui/activities/preview/AudioPreviewActivity.java b/src/main/java/org/lineageos/eleven/ui/activities/preview/AudioPreviewActivity.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/ui/activities/preview/AudioPreviewActivity.java rename to src/main/java/org/lineageos/eleven/ui/activities/preview/AudioPreviewActivity.java index 7a7c7f2..aff4b8b 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/activities/preview/AudioPreviewActivity.java +++ b/src/main/java/org/lineageos/eleven/ui/activities/preview/AudioPreviewActivity.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.ui.activities.preview; +package org.lineageos.eleven.ui.activities.preview; import android.app.Activity; import android.support.v7.app.AppCompatActivity; @@ -48,8 +48,8 @@ import android.widget.SeekBar.OnSeekBarChangeListener; import android.widget.TextView; import android.widget.Toast; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.activities.preview.util.Logger; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.activities.preview.util.Logger; import java.io.IOException; import java.lang.ref.WeakReference; @@ -103,7 +103,7 @@ public class AudioPreviewActivity extends AppCompatActivity implements MediaPlay throw new RuntimeException(ex); } } - + // Seeking flag private boolean mIsSeeking = false; private boolean mWasPlaying = false; @@ -556,7 +556,7 @@ public void onClick(View v) { startPlayback(); } else { pausePlayback(); - } + } } else if (id==R.id.grp_transparent_wrapper){ stopPlaybackAndTeardown(); finish(); diff --git a/src/main/java/com/cyanogenmod/eleven/ui/activities/preview/PreviewSong.java b/src/main/java/org/lineageos/eleven/ui/activities/preview/PreviewSong.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/ui/activities/preview/PreviewSong.java rename to src/main/java/org/lineageos/eleven/ui/activities/preview/PreviewSong.java index a4d7524..ba2b7af 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/activities/preview/PreviewSong.java +++ b/src/main/java/org/lineageos/eleven/ui/activities/preview/PreviewSong.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.ui.activities.preview; +package org.lineageos.eleven.ui.activities.preview; import android.net.Uri; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/activities/preview/util/Logger.java b/src/main/java/org/lineageos/eleven/ui/activities/preview/util/Logger.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/ui/activities/preview/util/Logger.java rename to src/main/java/org/lineageos/eleven/ui/activities/preview/util/Logger.java index ac25453..a2056de 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/activities/preview/util/Logger.java +++ b/src/main/java/org/lineageos/eleven/ui/activities/preview/util/Logger.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.ui.activities.preview.util; +package org.lineageos.eleven.ui.activities.preview.util; import android.text.TextUtils; import android.util.Log; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/AlbumDetailFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/AlbumDetailFragment.java similarity index 89% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/AlbumDetailFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/AlbumDetailFragment.java index 5aeb70f..826fbf0 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/AlbumDetailFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/AlbumDetailFragment.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.os.Bundle; import android.support.v4.app.LoaderManager; @@ -21,21 +21,21 @@ import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.AlbumDetailSongAdapter; -import com.cyanogenmod.eleven.adapters.DetailSongAdapter; -import com.cyanogenmod.eleven.adapters.PagerAdapter; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.model.Album; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.utils.AlbumPopupMenuHelper; -import com.cyanogenmod.eleven.utils.GenreFetcher; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.utils.SongPopupMenuHelper; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.AlbumDetailSongAdapter; +import org.lineageos.eleven.adapters.DetailSongAdapter; +import org.lineageos.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.model.Album; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.utils.AlbumPopupMenuHelper; +import org.lineageos.eleven.utils.GenreFetcher; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.utils.SongPopupMenuHelper; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/AlbumFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/AlbumFragment.java similarity index 88% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/AlbumFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/AlbumFragment.java index f645ddd..b5942e4 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/AlbumFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/AlbumFragment.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.os.Bundle; import android.os.SystemClock; @@ -26,24 +26,24 @@ import android.widget.AdapterView.OnItemClickListener; import android.widget.GridView; -import com.cyanogenmod.eleven.MusicStateListener; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.AlbumAdapter; -import com.cyanogenmod.eleven.adapters.PagerAdapter; -import com.cyanogenmod.eleven.loaders.AlbumLoader; -import com.cyanogenmod.eleven.model.Album; -import com.cyanogenmod.eleven.recycler.RecycleHolder; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.sectionadapter.SectionListContainer; -import com.cyanogenmod.eleven.ui.activities.BaseActivity; -import com.cyanogenmod.eleven.ui.fragments.phone.MusicBrowserFragment; -import com.cyanogenmod.eleven.utils.AlbumPopupMenuHelper; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.NavUtils; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.MusicStateListener; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.AlbumAdapter; +import org.lineageos.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.loaders.AlbumLoader; +import org.lineageos.eleven.model.Album; +import org.lineageos.eleven.recycler.RecycleHolder; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.sectionadapter.SectionListContainer; +import org.lineageos.eleven.ui.activities.BaseActivity; +import org.lineageos.eleven.ui.fragments.phone.MusicBrowserFragment; +import org.lineageos.eleven.utils.AlbumPopupMenuHelper; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.NavUtils; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; /** * This class is used to display all of the albums on a user's device. @@ -306,7 +306,7 @@ private void initAbsListView(final AbsListView list) { * Sets up the grid view */ private void initGridView() { - int columns = ApolloUtils.isLandscape(getActivity()) ? FOUR : TWO; + int columns = ElevenUtils.isLandscape(getActivity()) ? FOUR : TWO; mAdapter.setNumColumns(columns); // Initialize the grid mGridView = (GridView)mRootView.findViewById(R.id.grid_base); diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/ArtistDetailFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/ArtistDetailFragment.java similarity index 90% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/ArtistDetailFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/ArtistDetailFragment.java index 9ec66a9..373e50c 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/ArtistDetailFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/ArtistDetailFragment.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.os.Build; import android.os.Bundle; @@ -26,23 +26,23 @@ import android.view.ViewTreeObserver; import android.widget.ImageView; import android.widget.ListView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.ArtistDetailAlbumAdapter; -import com.cyanogenmod.eleven.adapters.ArtistDetailSongAdapter; -import com.cyanogenmod.eleven.adapters.PagerAdapter; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.model.Album; -import com.cyanogenmod.eleven.model.Artist; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.utils.AlbumPopupMenuHelper; -import com.cyanogenmod.eleven.utils.ArtistPopupMenuHelper; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.utils.SongPopupMenuHelper; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.ArtistDetailAlbumAdapter; +import org.lineageos.eleven.adapters.ArtistDetailSongAdapter; +import org.lineageos.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.model.Album; +import org.lineageos.eleven.model.Artist; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.utils.AlbumPopupMenuHelper; +import org.lineageos.eleven.utils.ArtistPopupMenuHelper; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.utils.SongPopupMenuHelper; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; import java.util.TreeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/ArtistFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/ArtistFragment.java similarity index 88% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/ArtistFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/ArtistFragment.java index 100c55a..93671f4 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/ArtistFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/ArtistFragment.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.content.Context; import android.os.Bundle; @@ -28,26 +28,26 @@ import android.widget.AdapterView.OnItemClickListener; import android.widget.ListView; -import com.cyanogenmod.eleven.MusicStateListener; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.ArtistAdapter; -import com.cyanogenmod.eleven.adapters.PagerAdapter; -import com.cyanogenmod.eleven.loaders.ArtistLoader; -import com.cyanogenmod.eleven.model.Artist; -import com.cyanogenmod.eleven.recycler.RecycleHolder; -import com.cyanogenmod.eleven.sectionadapter.SectionAdapter; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.sectionadapter.SectionListContainer; -import com.cyanogenmod.eleven.ui.activities.BaseActivity; -import com.cyanogenmod.eleven.ui.fragments.phone.MusicBrowserFragment; -import com.cyanogenmod.eleven.utils.ArtistPopupMenuHelper; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.NavUtils; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.utils.SectionCreatorUtils; -import com.cyanogenmod.eleven.utils.SectionCreatorUtils.IItemCompare; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.MusicStateListener; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.ArtistAdapter; +import org.lineageos.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.loaders.ArtistLoader; +import org.lineageos.eleven.model.Artist; +import org.lineageos.eleven.recycler.RecycleHolder; +import org.lineageos.eleven.sectionadapter.SectionAdapter; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.sectionadapter.SectionListContainer; +import org.lineageos.eleven.ui.activities.BaseActivity; +import org.lineageos.eleven.ui.fragments.phone.MusicBrowserFragment; +import org.lineageos.eleven.utils.ArtistPopupMenuHelper; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.NavUtils; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.utils.SectionCreatorUtils; +import org.lineageos.eleven.utils.SectionCreatorUtils.IItemCompare; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; /** * This class is used to display all of the artists on a user's device. diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/AudioPlayerFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/AudioPlayerFragment.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/AudioPlayerFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/AudioPlayerFragment.java index 28c5e5e..8d82a59 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/AudioPlayerFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/AudioPlayerFragment.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.annotation.SuppressLint; import android.content.BroadcastReceiver; @@ -48,34 +48,34 @@ import android.widget.PopupMenu; import android.widget.TextView; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.AlbumArtPagerAdapter; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.loaders.NowPlayingCursor; -import com.cyanogenmod.eleven.loaders.QueueLoader; -import com.cyanogenmod.eleven.menu.CreateNewPlaylist; -import com.cyanogenmod.eleven.menu.DeleteDialog; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.ui.activities.HomeActivity; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.NavUtils; -import com.cyanogenmod.eleven.utils.PreferenceUtils; -import com.cyanogenmod.eleven.widgets.BrowseButton; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; -import com.cyanogenmod.eleven.widgets.NoResultsContainer; -import com.cyanogenmod.eleven.widgets.PlayPauseProgressButton; -import com.cyanogenmod.eleven.widgets.QueueButton; -import com.cyanogenmod.eleven.widgets.RepeatButton; -import com.cyanogenmod.eleven.widgets.RepeatingImageButton; -import com.cyanogenmod.eleven.widgets.ShuffleButton; -import com.cyanogenmod.eleven.widgets.VisualizerView; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.AlbumArtPagerAdapter; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.loaders.NowPlayingCursor; +import org.lineageos.eleven.loaders.QueueLoader; +import org.lineageos.eleven.menu.CreateNewPlaylist; +import org.lineageos.eleven.menu.DeleteDialog; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.NavUtils; +import org.lineageos.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.widgets.BrowseButton; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.widgets.NoResultsContainer; +import org.lineageos.eleven.widgets.PlayPauseProgressButton; +import org.lineageos.eleven.widgets.QueueButton; +import org.lineageos.eleven.widgets.RepeatButton; +import org.lineageos.eleven.widgets.RepeatingImageButton; +import org.lineageos.eleven.widgets.ShuffleButton; +import org.lineageos.eleven.widgets.VisualizerView; import java.lang.ref.WeakReference; import java.lang.reflect.Method; -import static com.cyanogenmod.eleven.utils.MusicUtils.mService; +import static org.lineageos.eleven.utils.MusicUtils.mService; public class AudioPlayerFragment extends Fragment implements ServiceConnection { private static final String TAG = AudioPlayerFragment.class.getSimpleName(); @@ -164,7 +164,7 @@ public void onActivityCreated(Bundle savedInstanceState) { mToken = MusicUtils.bindToService(getActivity(), this); // Initialize the image fetcher/cache - mImageFetcher = ApolloUtils.getImageFetcher(getActivity()); + mImageFetcher = ElevenUtils.getImageFetcher(getActivity()); // Initialize the handler used to update the current time mTimeHandler = new TimeHandler(this); @@ -286,7 +286,7 @@ private void initHeaderBar() { View headerBar = mRootView.findViewById(R.id.audio_player_header); final int bottomActionBarHeight = getResources().getDimensionPixelSize(R.dimen.bottom_action_bar_height); - + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { /* headerBar.setOutlineProvider(new MyViewOutlineProvider() { @@ -300,7 +300,7 @@ public void getOutline(View view, Outline outline) { } }); */ - + ViewOutlineProviderCompat myProvider = new ViewOutlineProviderCompat() { @Override public void getOutline(View view, Outline outline) { diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/BaseFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/BaseFragment.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/BaseFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/BaseFragment.java index 3ab1fe5..969541f 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/BaseFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/BaseFragment.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.os.Bundle; import android.support.v4.app.Fragment; @@ -23,9 +23,9 @@ import android.view.View; import android.view.ViewGroup; -import com.cyanogenmod.eleven.MusicStateListener; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.MusicStateListener; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.activities.HomeActivity; public abstract class BaseFragment extends Fragment implements MusicStateListener, ISetupActionBar { diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/DetailFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/DetailFragment.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/DetailFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/DetailFragment.java index 43e5274..208e8a7 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/DetailFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/DetailFragment.java @@ -13,14 +13,14 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.R; +import org.lineageos.eleven.utils.PopupMenuHelper; public abstract class DetailFragment extends BaseFragment { protected PopupMenuHelper mActionMenuHelper; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/FadingBarFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/FadingBarFragment.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/FadingBarFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/FadingBarFragment.java index 81c4009..89d5d3c 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/FadingBarFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/FadingBarFragment.java @@ -13,13 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.view.View; import android.widget.AbsListView; import android.widget.AbsListView.OnScrollListener; -import com.cyanogenmod.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.ui.activities.HomeActivity; public abstract class FadingBarFragment extends DetailFragment implements OnScrollListener { protected static final int ACTION_BAR_DEFAULT_OPACITY = 100; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/IChildFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/IChildFragment.java similarity index 87% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/IChildFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/IChildFragment.java index f1b5fb7..aec7aa8 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/IChildFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/IChildFragment.java @@ -13,9 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; -import com.cyanogenmod.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.adapters.PagerAdapter; public interface IChildFragment { PagerAdapter.MusicFragments getMusicFragmentParent(); diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/ISetupActionBar.java b/src/main/java/org/lineageos/eleven/ui/fragments/ISetupActionBar.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/ISetupActionBar.java rename to src/main/java/org/lineageos/eleven/ui/fragments/ISetupActionBar.java index 6ce191b..eb80656 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/ISetupActionBar.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/ISetupActionBar.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; public interface ISetupActionBar { public void setupActionBar(); diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/PlaylistDetailFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/PlaylistDetailFragment.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/PlaylistDetailFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/PlaylistDetailFragment.java index 4461b27..2043444 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/PlaylistDetailFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/PlaylistDetailFragment.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.database.Cursor; import android.net.Uri; @@ -28,28 +28,28 @@ import android.widget.AdapterView.OnItemClickListener; import android.widget.ImageView; import android.widget.TextView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.PagerAdapter; -import com.cyanogenmod.eleven.adapters.ProfileSongAdapter; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.dragdrop.DragSortListView; -import com.cyanogenmod.eleven.dragdrop.DragSortListView.DragScrollProfile; -import com.cyanogenmod.eleven.dragdrop.DragSortListView.DropListener; -import com.cyanogenmod.eleven.dragdrop.DragSortListView.RemoveListener; -import com.cyanogenmod.eleven.loaders.PlaylistSongLoader; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.model.Playlist; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.recycler.RecycleHolder; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PlaylistPopupMenuHelper; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.utils.PopupMenuHelper.PopupMenuType; -import com.cyanogenmod.eleven.utils.SongPopupMenuHelper; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; -import com.cyanogenmod.eleven.widgets.NoResultsContainer; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.adapters.ProfileSongAdapter; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.dragdrop.DragSortListView; +import org.lineageos.eleven.dragdrop.DragSortListView.DragScrollProfile; +import org.lineageos.eleven.dragdrop.DragSortListView.DropListener; +import org.lineageos.eleven.dragdrop.DragSortListView.RemoveListener; +import org.lineageos.eleven.loaders.PlaylistSongLoader; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.model.Playlist; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.recycler.RecycleHolder; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PlaylistPopupMenuHelper; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.utils.PopupMenuHelper.PopupMenuType; +import org.lineageos.eleven.utils.SongPopupMenuHelper; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.widgets.NoResultsContainer; import java.util.List; import java.util.TreeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/PlaylistFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/PlaylistFragment.java similarity index 87% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/PlaylistFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/PlaylistFragment.java index aba8dbd..20fdf39 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/PlaylistFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/PlaylistFragment.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.os.Bundle; import android.support.v4.app.Fragment; @@ -24,21 +24,21 @@ import android.widget.AdapterView.OnItemClickListener; import android.widget.ListView; -import com.cyanogenmod.eleven.Config.SmartPlaylistType; -import com.cyanogenmod.eleven.MusicStateListener; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.PagerAdapter; -import com.cyanogenmod.eleven.adapters.PlaylistAdapter; -import com.cyanogenmod.eleven.loaders.PlaylistLoader; -import com.cyanogenmod.eleven.model.Playlist; -import com.cyanogenmod.eleven.recycler.RecycleHolder; -import com.cyanogenmod.eleven.ui.activities.BaseActivity; -import com.cyanogenmod.eleven.ui.fragments.phone.MusicBrowserFragment; -import com.cyanogenmod.eleven.utils.NavUtils; -import com.cyanogenmod.eleven.utils.PlaylistPopupMenuHelper; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.Config.SmartPlaylistType; +import org.lineageos.eleven.MusicStateListener; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.adapters.PlaylistAdapter; +import org.lineageos.eleven.loaders.PlaylistLoader; +import org.lineageos.eleven.model.Playlist; +import org.lineageos.eleven.recycler.RecycleHolder; +import org.lineageos.eleven.ui.activities.BaseActivity; +import org.lineageos.eleven.ui.fragments.phone.MusicBrowserFragment; +import org.lineageos.eleven.utils.NavUtils; +import org.lineageos.eleven.utils.PlaylistPopupMenuHelper; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/PreferenceFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/PreferenceFragment.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/PreferenceFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/PreferenceFragment.java index 8851c92..dfb07af 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/PreferenceFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/PreferenceFragment.java @@ -1,8 +1,9 @@ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.ui.activities.SettingsActivity; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.ui.activities.SettingsActivity; + +import org.lineageos.eleven.R; import android.content.DialogInterface; import android.os.Bundle; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/QueueFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/QueueFragment.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/QueueFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/QueueFragment.java index aaf7925..f497b33 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/QueueFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/QueueFragment.java @@ -11,9 +11,9 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; -import static com.cyanogenmod.eleven.utils.MusicUtils.mService; +import static org.lineageos.eleven.utils.MusicUtils.mService; import android.content.BroadcastReceiver; import android.content.ComponentName; @@ -34,28 +34,28 @@ import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.SongAdapter; -import com.cyanogenmod.eleven.dragdrop.DragSortListView; -import com.cyanogenmod.eleven.dragdrop.DragSortListView.DragScrollProfile; -import com.cyanogenmod.eleven.dragdrop.DragSortListView.DropListener; -import com.cyanogenmod.eleven.dragdrop.DragSortListView.RemoveListener; -import com.cyanogenmod.eleven.loaders.NowPlayingCursor; -import com.cyanogenmod.eleven.loaders.QueueLoader; -import com.cyanogenmod.eleven.menu.DeleteDialog; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.recycler.RecycleHolder; -import com.cyanogenmod.eleven.service.MusicPlaybackTrack; -import com.cyanogenmod.eleven.ui.activities.SlidingPanelActivity; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; -import com.cyanogenmod.eleven.widgets.NoResultsContainer; -import com.cyanogenmod.eleven.widgets.PlayPauseProgressButton; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.SongAdapter; +import org.lineageos.eleven.dragdrop.DragSortListView; +import org.lineageos.eleven.dragdrop.DragSortListView.DragScrollProfile; +import org.lineageos.eleven.dragdrop.DragSortListView.DropListener; +import org.lineageos.eleven.dragdrop.DragSortListView.RemoveListener; +import org.lineageos.eleven.loaders.NowPlayingCursor; +import org.lineageos.eleven.loaders.QueueLoader; +import org.lineageos.eleven.menu.DeleteDialog; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.recycler.RecycleHolder; +import org.lineageos.eleven.service.MusicPlaybackTrack; +import org.lineageos.eleven.ui.activities.SlidingPanelActivity; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.widgets.NoResultsContainer; +import org.lineageos.eleven.widgets.PlayPauseProgressButton; import java.lang.ref.WeakReference; import java.util.List; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/RecentFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/RecentFragment.java similarity index 83% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/RecentFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/RecentFragment.java index 971f8aa..3e7c751 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/RecentFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/RecentFragment.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.app.Activity; import android.os.Bundle; @@ -20,19 +20,19 @@ import android.view.View; import android.view.ViewGroup; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.Config.SmartPlaylistType; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.SongAdapter; -import com.cyanogenmod.eleven.loaders.TopTracksLoader; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.sectionadapter.SectionListContainer; -import com.cyanogenmod.eleven.ui.activities.BaseActivity; -import com.cyanogenmod.eleven.ui.fragments.profile.SmartPlaylistFragment; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.NoResultsContainer; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.Config.SmartPlaylistType; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.SongAdapter; +import org.lineageos.eleven.loaders.TopTracksLoader; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.sectionadapter.SectionListContainer; +import org.lineageos.eleven.ui.activities.BaseActivity; +import org.lineageos.eleven.ui.fragments.profile.SmartPlaylistFragment; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.NoResultsContainer; import java.util.TreeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/SongFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/SongFragment.java similarity index 85% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/SongFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/SongFragment.java index 1e57580..ccf8ead 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/SongFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/SongFragment.java @@ -11,22 +11,22 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; import android.content.Context; import android.os.Bundle; import android.support.v4.app.LoaderManager; import android.support.v4.content.Loader; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.adapters.PagerAdapter; -import com.cyanogenmod.eleven.loaders.SongLoader; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.sectionadapter.SectionListContainer; -import com.cyanogenmod.eleven.ui.fragments.profile.BasicSongFragment; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.SectionCreatorUtils; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.loaders.SongLoader; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.sectionadapter.SectionListContainer; +import org.lineageos.eleven.ui.fragments.profile.BasicSongFragment; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.SectionCreatorUtils; /** * This class is used to display all of the songs on a user's device. diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/ViewOutlineProviderCompat.java b/src/main/java/org/lineageos/eleven/ui/fragments/ViewOutlineProviderCompat.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/ViewOutlineProviderCompat.java rename to src/main/java/org/lineageos/eleven/ui/fragments/ViewOutlineProviderCompat.java index ed68e6b..0d02e0f 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/ViewOutlineProviderCompat.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/ViewOutlineProviderCompat.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.ui.fragments; +package org.lineageos.eleven.ui.fragments; /* * Copyright (C) 2014 The Android Open Source Project diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/phone/MusicBrowserFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/phone/MusicBrowserFragment.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/phone/MusicBrowserFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/phone/MusicBrowserFragment.java index 0d01e5f..caa2fc5 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/phone/MusicBrowserFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/phone/MusicBrowserFragment.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments.phone; +package org.lineageos.eleven.ui.fragments.phone; import android.os.Bundle; import android.support.v4.app.Fragment; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/phone/MusicBrowserPhoneFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/phone/MusicBrowserPhoneFragment.java similarity index 92% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/phone/MusicBrowserPhoneFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/phone/MusicBrowserPhoneFragment.java index 6eba07d..d5a92bb 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/phone/MusicBrowserPhoneFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/phone/MusicBrowserPhoneFragment.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments.phone; +package org.lineageos.eleven.ui.fragments.phone; import android.os.Bundle; import android.support.v4.app.Fragment; @@ -20,18 +20,18 @@ import android.view.MenuInflater; import android.view.MenuItem; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.PagerAdapter; -import com.cyanogenmod.eleven.adapters.PagerAdapter.MusicFragments; -import com.cyanogenmod.eleven.menu.CreateNewPlaylist; -import com.cyanogenmod.eleven.ui.fragments.AlbumFragment; -import com.cyanogenmod.eleven.ui.fragments.ArtistFragment; -import com.cyanogenmod.eleven.ui.fragments.BaseFragment; -import com.cyanogenmod.eleven.ui.fragments.SongFragment; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PreferenceUtils; -import com.cyanogenmod.eleven.utils.SortOrder; -import com.cyanogenmod.eleven.widgets.ViewPagerTabs; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.adapters.PagerAdapter.MusicFragments; +import org.lineageos.eleven.menu.CreateNewPlaylist; +import org.lineageos.eleven.ui.fragments.AlbumFragment; +import org.lineageos.eleven.ui.fragments.ArtistFragment; +import org.lineageos.eleven.ui.fragments.BaseFragment; +import org.lineageos.eleven.ui.fragments.SongFragment; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PreferenceUtils; +import org.lineageos.eleven.utils.SortOrder; +import org.lineageos.eleven.widgets.ViewPagerTabs; /** * This class is used to hold the {@link ViewPager} used for swiping between the @@ -40,9 +40,7 @@ * * @NOTE: The reason the sort orders are taken care of in this fragment rather * than the individual fragments is to keep from showing all of the menu - * items on tablet interfaces. That being said, I have a tablet interface - * worked out, but I'm going to keep it in the Play Store version of - * Apollo for a couple of weeks or so before merging it with CM. + * items on tablet interfaces. * @author Andrew Neal (andrewdneal@gmail.com) */ public class MusicBrowserPhoneFragment extends BaseFragment { diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/BasicSongFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/profile/BasicSongFragment.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/BasicSongFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/profile/BasicSongFragment.java index 075a5ac..c9b4734 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/BasicSongFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/profile/BasicSongFragment.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments.profile; +package org.lineageos.eleven.ui.fragments.profile; import android.os.Bundle; import android.os.SystemClock; @@ -28,22 +28,22 @@ import android.widget.AdapterView.OnItemClickListener; import android.widget.ListView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.MusicStateListener; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.SongAdapter; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.recycler.RecycleHolder; -import com.cyanogenmod.eleven.sectionadapter.SectionAdapter; -import com.cyanogenmod.eleven.sectionadapter.SectionListContainer; -import com.cyanogenmod.eleven.service.MusicPlaybackTrack; -import com.cyanogenmod.eleven.ui.activities.BaseActivity; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.utils.SongPopupMenuHelper; -import com.cyanogenmod.eleven.widgets.IPopupMenuCallback; -import com.cyanogenmod.eleven.widgets.LoadingEmptyContainer; -import com.cyanogenmod.eleven.widgets.NoResultsContainer; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.MusicStateListener; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.SongAdapter; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.recycler.RecycleHolder; +import org.lineageos.eleven.sectionadapter.SectionAdapter; +import org.lineageos.eleven.sectionadapter.SectionListContainer; +import org.lineageos.eleven.service.MusicPlaybackTrack; +import org.lineageos.eleven.ui.activities.BaseActivity; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.utils.SongPopupMenuHelper; +import org.lineageos.eleven.widgets.IPopupMenuCallback; +import org.lineageos.eleven.widgets.LoadingEmptyContainer; +import org.lineageos.eleven.widgets.NoResultsContainer; import java.util.TreeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/LastAddedFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/profile/LastAddedFragment.java similarity index 80% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/LastAddedFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/profile/LastAddedFragment.java index 87300d9..8e96489 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/LastAddedFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/profile/LastAddedFragment.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments.profile; +package org.lineageos.eleven.ui.fragments.profile; import android.os.Bundle; import android.support.v4.content.Loader; @@ -19,17 +19,17 @@ import android.view.View; import android.view.ViewGroup; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.Config.SmartPlaylistType; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.loaders.LastAddedLoader; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.sectionadapter.SectionListContainer; -import com.cyanogenmod.eleven.ui.activities.BaseActivity; -import com.cyanogenmod.eleven.ui.fragments.ISetupActionBar; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.NoResultsContainer; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.Config.SmartPlaylistType; +import org.lineageos.eleven.R; +import org.lineageos.eleven.loaders.LastAddedLoader; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.sectionadapter.SectionListContainer; +import org.lineageos.eleven.ui.activities.BaseActivity; +import org.lineageos.eleven.ui.fragments.ISetupActionBar; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.NoResultsContainer; /** * This class is used to display all of the songs the user put on their device diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/SmartPlaylistFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/profile/SmartPlaylistFragment.java similarity index 88% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/SmartPlaylistFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/profile/SmartPlaylistFragment.java index d837b3a..92962dc 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/SmartPlaylistFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/profile/SmartPlaylistFragment.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments.profile; +package org.lineageos.eleven.ui.fragments.profile; import android.os.Bundle; import android.view.LayoutInflater; @@ -23,17 +23,17 @@ import android.view.View; import android.view.ViewGroup; -import com.cyanogenmod.eleven.Config.SmartPlaylistType; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.PagerAdapter; -import com.cyanogenmod.eleven.menu.ConfirmDialog; -import com.cyanogenmod.eleven.model.Playlist; -import com.cyanogenmod.eleven.ui.fragments.IChildFragment; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.utils.PlaylistPopupMenuHelper; -import com.cyanogenmod.eleven.utils.PopupMenuHelper; -import com.cyanogenmod.eleven.utils.PopupMenuHelper.PopupMenuType; +import org.lineageos.eleven.Config.SmartPlaylistType; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.PagerAdapter; +import org.lineageos.eleven.menu.ConfirmDialog; +import org.lineageos.eleven.model.Playlist; +import org.lineageos.eleven.ui.fragments.IChildFragment; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.utils.PlaylistPopupMenuHelper; +import org.lineageos.eleven.utils.PopupMenuHelper; +import org.lineageos.eleven.utils.PopupMenuHelper.PopupMenuType; public abstract class SmartPlaylistFragment extends BasicSongFragment implements ConfirmDialog.ConfirmCallback, IChildFragment { diff --git a/src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/TopTracksFragment.java b/src/main/java/org/lineageos/eleven/ui/fragments/profile/TopTracksFragment.java similarity index 83% rename from src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/TopTracksFragment.java rename to src/main/java/org/lineageos/eleven/ui/fragments/profile/TopTracksFragment.java index 1d71316..f6adc10 100644 --- a/src/main/java/com/cyanogenmod/eleven/ui/fragments/profile/TopTracksFragment.java +++ b/src/main/java/org/lineageos/eleven/ui/fragments/profile/TopTracksFragment.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.ui.fragments.profile; +package org.lineageos.eleven.ui.fragments.profile; import android.app.Activity; import android.os.Bundle; @@ -21,18 +21,18 @@ import android.view.ViewGroup; import android.widget.TextView; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.Config.SmartPlaylistType; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.adapters.SongAdapter; -import com.cyanogenmod.eleven.loaders.TopTracksLoader; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.sectionadapter.SectionCreator; -import com.cyanogenmod.eleven.sectionadapter.SectionListContainer; -import com.cyanogenmod.eleven.ui.activities.BaseActivity; -import com.cyanogenmod.eleven.ui.fragments.ISetupActionBar; -import com.cyanogenmod.eleven.utils.MusicUtils; -import com.cyanogenmod.eleven.widgets.NoResultsContainer; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.Config.SmartPlaylistType; +import org.lineageos.eleven.R; +import org.lineageos.eleven.adapters.SongAdapter; +import org.lineageos.eleven.loaders.TopTracksLoader; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.sectionadapter.SectionCreator; +import org.lineageos.eleven.sectionadapter.SectionListContainer; +import org.lineageos.eleven.ui.activities.BaseActivity; +import org.lineageos.eleven.ui.fragments.ISetupActionBar; +import org.lineageos.eleven.utils.MusicUtils; +import org.lineageos.eleven.widgets.NoResultsContainer; /** * This class is used to display all of the songs the user put on their device diff --git a/src/main/java/com/cyanogenmod/eleven/utils/AlbumPopupMenuHelper.java b/src/main/java/org/lineageos/eleven/utils/AlbumPopupMenuHelper.java similarity index 90% rename from src/main/java/com/cyanogenmod/eleven/utils/AlbumPopupMenuHelper.java rename to src/main/java/org/lineageos/eleven/utils/AlbumPopupMenuHelper.java index 5d47393..d565b50 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/AlbumPopupMenuHelper.java +++ b/src/main/java/org/lineageos/eleven/utils/AlbumPopupMenuHelper.java @@ -13,19 +13,19 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.app.Activity; import android.provider.MediaStore; import android.support.v4.app.FragmentManager; import android.view.MenuItem; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.menu.DeleteDialog; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.menu.PhotoSelectionDialog; -import com.cyanogenmod.eleven.model.Album; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.menu.DeleteDialog; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.menu.PhotoSelectionDialog; +import org.lineageos.eleven.model.Album; import java.util.TreeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/ArtistPopupMenuHelper.java b/src/main/java/org/lineageos/eleven/utils/ArtistPopupMenuHelper.java similarity index 89% rename from src/main/java/com/cyanogenmod/eleven/utils/ArtistPopupMenuHelper.java rename to src/main/java/org/lineageos/eleven/utils/ArtistPopupMenuHelper.java index 7e88662..301acff 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/ArtistPopupMenuHelper.java +++ b/src/main/java/org/lineageos/eleven/utils/ArtistPopupMenuHelper.java @@ -13,17 +13,17 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.app.Activity; import android.support.v4.app.FragmentManager; import android.view.MenuItem; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.menu.DeleteDialog; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.menu.PhotoSelectionDialog; -import com.cyanogenmod.eleven.model.Artist; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.menu.DeleteDialog; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.menu.PhotoSelectionDialog; +import org.lineageos.eleven.model.Artist; public abstract class ArtistPopupMenuHelper extends PopupMenuHelper { private Artist mArtist; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/BitmapUtils.java b/src/main/java/org/lineageos/eleven/utils/BitmapUtils.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/utils/BitmapUtils.java rename to src/main/java/org/lineageos/eleven/utils/BitmapUtils.java index 4f590b5..12cd4aa 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/BitmapUtils.java +++ b/src/main/java/org/lineageos/eleven/utils/BitmapUtils.java @@ -11,9 +11,8 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; -import java.lang.reflect.Method; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; @@ -25,6 +24,8 @@ import android.support.v7.view.menu.MenuPresenter; import android.support.v7.widget.AppCompatDrawableManager; +import java.lang.reflect.Method; + /** * {@link Bitmap} specific helpers. * diff --git a/src/main/java/com/cyanogenmod/eleven/utils/BitmapWithColors.java b/src/main/java/org/lineageos/eleven/utils/BitmapWithColors.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/utils/BitmapWithColors.java rename to src/main/java/org/lineageos/eleven/utils/BitmapWithColors.java index b3a9962..c493f3c 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/BitmapWithColors.java +++ b/src/main/java/org/lineageos/eleven/utils/BitmapWithColors.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.graphics.Bitmap; import android.graphics.Color; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/ContextMenuBuilder.java b/src/main/java/org/lineageos/eleven/utils/ContextMenuBuilder.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/utils/ContextMenuBuilder.java rename to src/main/java/org/lineageos/eleven/utils/ContextMenuBuilder.java index 990a3f4..3315fb3 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/ContextMenuBuilder.java +++ b/src/main/java/org/lineageos/eleven/utils/ContextMenuBuilder.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; /* * Copyright (C) 2006 The Android Open Source Project diff --git a/src/main/java/com/cyanogenmod/eleven/utils/CustomTypefaceSpan.java b/src/main/java/org/lineageos/eleven/utils/CustomTypefaceSpan.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/utils/CustomTypefaceSpan.java rename to src/main/java/org/lineageos/eleven/utils/CustomTypefaceSpan.java index b794646..01cb73e 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/CustomTypefaceSpan.java +++ b/src/main/java/org/lineageos/eleven/utils/CustomTypefaceSpan.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.graphics.Paint; import android.graphics.Typeface; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/ApolloUtils.java b/src/main/java/org/lineageos/eleven/utils/ElevenUtils.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/utils/ApolloUtils.java rename to src/main/java/org/lineageos/eleven/utils/ElevenUtils.java index d2e8c5e..f964c2d 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/ApolloUtils.java +++ b/src/main/java/org/lineageos/eleven/utils/ElevenUtils.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.annotation.SuppressLint; import android.app.Activity; @@ -34,8 +34,8 @@ import android.view.ViewTreeObserver.OnGlobalLayoutListener; import android.widget.Toast; -import com.cyanogenmod.eleven.cache.ImageCache; -import com.cyanogenmod.eleven.cache.ImageFetcher; +import org.lineageos.eleven.cache.ImageCache; +import org.lineageos.eleven.cache.ImageFetcher; import java.util.concurrent.RejectedExecutionHandler; import java.util.concurrent.ThreadPoolExecutor; @@ -45,7 +45,7 @@ * * @author Andrew Neal (andrewdneal@gmail.com) */ -public final class ApolloUtils { +public final class ElevenUtils { /** * The threshold used calculate if a color is light or dark @@ -69,13 +69,13 @@ public void rejectedExecution(Runnable r, ThreadPoolExecutor e) { }; static { - ((ThreadPoolExecutor)AsyncTask.THREAD_POOL_EXECUTOR).setRejectedExecutionHandler( + ((ThreadPoolExecutor)AsyncTask.THREAD_POOL_EXECUTOR).setRejectedExecutionHandler( new PurgePolicy() ); } /* This class is never initiated */ - public ApolloUtils() { + public ElevenUtils() { } /** diff --git a/src/main/java/com/cyanogenmod/eleven/utils/GenreFetcher.java b/src/main/java/org/lineageos/eleven/utils/GenreFetcher.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/utils/GenreFetcher.java rename to src/main/java/org/lineageos/eleven/utils/GenreFetcher.java index bef40fb..6d8e5df 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/GenreFetcher.java +++ b/src/main/java/org/lineageos/eleven/utils/GenreFetcher.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.content.Context; import android.database.Cursor; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/ImageUtils.java b/src/main/java/org/lineageos/eleven/utils/ImageUtils.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/utils/ImageUtils.java rename to src/main/java/org/lineageos/eleven/utils/ImageUtils.java index 69e0c0b..5c031e9 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/ImageUtils.java +++ b/src/main/java/org/lineageos/eleven/utils/ImageUtils.java @@ -13,17 +13,17 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.widget.ImageView; -import com.cyanogenmod.eleven.cache.ImageCache; -import com.cyanogenmod.eleven.cache.ImageWorker; -import com.cyanogenmod.eleven.lastfm.ImageSize; -import com.cyanogenmod.eleven.lastfm.MusicEntry; +import org.lineageos.eleven.cache.ImageCache; +import org.lineageos.eleven.cache.ImageWorker; +import org.lineageos.eleven.lastfm.ImageSize; +import org.lineageos.eleven.lastfm.MusicEntry; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/ListMenuPresenterHelper.java b/src/main/java/org/lineageos/eleven/utils/ListMenuPresenterHelper.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/utils/ListMenuPresenterHelper.java rename to src/main/java/org/lineageos/eleven/utils/ListMenuPresenterHelper.java index 7fbd5c8..a42fad7 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/ListMenuPresenterHelper.java +++ b/src/main/java/org/lineageos/eleven/utils/ListMenuPresenterHelper.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import java.lang.reflect.Constructor; import java.lang.reflect.Method; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/Lists.java b/src/main/java/org/lineageos/eleven/utils/Lists.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/utils/Lists.java rename to src/main/java/org/lineageos/eleven/utils/Lists.java index 46bc773..ceca2a6 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/Lists.java +++ b/src/main/java/org/lineageos/eleven/utils/Lists.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import java.util.ArrayList; import java.util.Collections; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/MenuBuilderHelper.java b/src/main/java/org/lineageos/eleven/utils/MenuBuilderHelper.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/utils/MenuBuilderHelper.java rename to src/main/java/org/lineageos/eleven/utils/MenuBuilderHelper.java index 209d0c1..e597aa5 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/MenuBuilderHelper.java +++ b/src/main/java/org/lineageos/eleven/utils/MenuBuilderHelper.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import java.lang.reflect.Constructor; import java.lang.reflect.Method; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/MenuDialogHelper.java b/src/main/java/org/lineageos/eleven/utils/MenuDialogHelper.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/utils/MenuDialogHelper.java rename to src/main/java/org/lineageos/eleven/utils/MenuDialogHelper.java index 8be7e8f..5a876d7 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/MenuDialogHelper.java +++ b/src/main/java/org/lineageos/eleven/utils/MenuDialogHelper.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; /* * Copyright (C) 2013 The Android Open Source Project @@ -29,7 +29,7 @@ import android.view.Window; import android.view.WindowManager; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; /** * Helper for menus that appear as Dialogs (context and submenus). diff --git a/src/main/java/com/cyanogenmod/eleven/utils/MusicUtils.java b/src/main/java/org/lineageos/eleven/utils/MusicUtils.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/utils/MusicUtils.java rename to src/main/java/org/lineageos/eleven/utils/MusicUtils.java index 8ab4c73..3cc52e1 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/MusicUtils.java +++ b/src/main/java/org/lineageos/eleven/utils/MusicUtils.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.app.Activity; import android.content.ComponentName; @@ -25,6 +25,7 @@ import android.database.Cursor; import android.net.Uri; import android.os.AsyncTask; +import android.os.Build; import android.os.IBinder; import android.os.RemoteException; import android.os.SystemClock; @@ -41,26 +42,26 @@ import android.view.Menu; import android.widget.Toast; -import com.cyanogenmod.eleven.Config.IdType; -import com.cyanogenmod.eleven.Config.SmartPlaylistType; -import com.cyanogenmod.eleven.IElevenService; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.loaders.LastAddedLoader; -import com.cyanogenmod.eleven.loaders.PlaylistLoader; -import com.cyanogenmod.eleven.loaders.PlaylistSongLoader; -import com.cyanogenmod.eleven.loaders.SongLoader; -import com.cyanogenmod.eleven.loaders.TopTracksLoader; -import com.cyanogenmod.eleven.locale.LocaleUtils; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.model.Album; -import com.cyanogenmod.eleven.model.AlbumArtistDetails; -import com.cyanogenmod.eleven.model.Artist; -import com.cyanogenmod.eleven.model.Song; -import com.cyanogenmod.eleven.provider.RecentStore; -import com.cyanogenmod.eleven.provider.SongPlayCount; -import com.cyanogenmod.eleven.service.MusicPlaybackTrack; +import org.lineageos.eleven.Config.IdType; +import org.lineageos.eleven.Config.SmartPlaylistType; +import org.lineageos.eleven.IElevenService; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.loaders.LastAddedLoader; +import org.lineageos.eleven.loaders.PlaylistLoader; +import org.lineageos.eleven.loaders.PlaylistSongLoader; +import org.lineageos.eleven.loaders.SongLoader; +import org.lineageos.eleven.loaders.TopTracksLoader; +import org.lineageos.eleven.locale.LocaleUtils; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.model.Album; +import org.lineageos.eleven.model.AlbumArtistDetails; +import org.lineageos.eleven.model.Artist; +import org.lineageos.eleven.model.Song; +import org.lineageos.eleven.provider.RecentStore; +import org.lineageos.eleven.provider.SongPlayCount; +import org.lineageos.eleven.service.MusicPlaybackTrack; import java.io.File; import java.util.Arrays; @@ -69,7 +70,7 @@ import java.util.WeakHashMap; /** - * A collection of helpers directly related to music or Apollo's service. + * A collection of helpers directly related to music or Eleven's service. * * @author Andrew Neal (andrewdneal@gmail.com) */ @@ -1199,10 +1200,22 @@ public static void setRingtone(final Context context, final long id) { try { if (cursor != null && cursor.getCount() == 1) { cursor.moveToFirst(); - Settings.System.putString(resolver, Settings.System.RINGTONE, uri.toString()); - final String message = context.getString(R.string.set_as_ringtone, - cursor.getString(2)); - Toast.makeText((Activity)context, message, Toast.LENGTH_SHORT).show(); + // Check since M whether has the write settings permission or not. + boolean settingsCanWrite = true; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M){ + settingsCanWrite = Settings.System.canWrite(context); + if (!settingsCanWrite) { + // If do not have write settings permission then open the Can modify system settings panel. + Intent intent = new Intent(Settings.ACTION_MANAGE_WRITE_SETTINGS); + context.startActivity(intent); + } + } + if ( settingsCanWrite ) { + Settings.System.putString(resolver, Settings.System.RINGTONE, uri.toString()); + final String message = context.getString(R.string.set_as_ringtone, + cursor.getString(2)); + Toast.makeText((Activity)context, message, Toast.LENGTH_SHORT).show(); + } } } finally { if (cursor != null) { @@ -1499,8 +1512,7 @@ public static void seekRelative(final long deltaInMs) { } catch (final IllegalStateException ignored) { // Illegal State Exception message is empty so logging will actually throw an // exception. We should come back and figure out why we get an exception in the - // first place and make sure we understand it completely. I will use - // https://cyanogen.atlassian.net/browse/MUSIC-125 to track investigating this more + // first place and make sure we understand it completely. } } } @@ -1516,8 +1528,7 @@ public static final long position() { } catch (final IllegalStateException ex) { // Illegal State Exception message is empty so logging will actually throw an // exception. We should come back and figure out why we get an exception in the - // first place and make sure we understand it completely. I will use - // https://cyanogen.atlassian.net/browse/MUSIC-125 to track investigating this more + // first place and make sure we understand it completely. } } return 0; @@ -1534,8 +1545,7 @@ public static final long duration() { } catch (final IllegalStateException ignored) { // Illegal State Exception message is empty so logging will actually throw an // exception. We should come back and figure out why we get an exception in the - // first place and make sure we understand it completely. I will use - // https://cyanogen.atlassian.net/browse/MUSIC-125 to track investigating this more + // first place and make sure we understand it completely. } } return 0; @@ -1711,7 +1721,7 @@ public static boolean isBlank(String s) { * Removes the header image from the cache. */ public static void removeFromCache(Activity activity, String key) { - ImageFetcher imageFetcher = ApolloUtils.getImageFetcher(activity); + ImageFetcher imageFetcher = ElevenUtils.getImageFetcher(activity); imageFetcher.removeFromCache(key); // Give the disk cache a little time before requesting a new image. SystemClock.sleep(80); diff --git a/src/main/java/com/cyanogenmod/eleven/utils/NavUtils.java b/src/main/java/org/lineageos/eleven/utils/NavUtils.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/utils/NavUtils.java rename to src/main/java/org/lineageos/eleven/utils/NavUtils.java index 31fa5b9..45db610 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/NavUtils.java +++ b/src/main/java/org/lineageos/eleven/utils/NavUtils.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.app.Activity; import android.app.SearchManager; @@ -25,11 +25,11 @@ import android.util.Log; import android.widget.Toast; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.activities.HomeActivity; -import com.cyanogenmod.eleven.ui.activities.SearchActivity; -import com.cyanogenmod.eleven.ui.activities.SettingsActivity; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.activities.HomeActivity; +import org.lineageos.eleven.ui.activities.SearchActivity; +import org.lineageos.eleven.ui.activities.SettingsActivity; import java.util.List; @@ -126,7 +126,7 @@ private static Intent createEffectsIntent() { } /** - * Opens the sound effects panel or DSP manager in CM + * Opens the sound effects panel AudioFX in LineageOS * * @param context The {@link Activity} to use. * @param requestCode The request code passed into startActivityForResult @@ -161,7 +161,7 @@ public static void openSettings(final Activity activity) { } /** - * Opens to {@link com.cyanogenmod.eleven.ui.activities.SearchActivity}. + * Opens to {@link org.lineageos.eleven.ui.activities.SearchActivity}. * * @param activity The {@link Activity} to use. * @param query The search query. @@ -175,7 +175,7 @@ public static void openSearch(final Activity activity, final String query) { } /** - * Opens to {@link com.cyanogenmod.eleven.ui.activities.HomeActivity}. + * Opens to {@link org.lineageos.eleven.ui.activities.HomeActivity}. * * @param activity The {@link Activity} to use. */ diff --git a/src/main/java/com/cyanogenmod/eleven/utils/PlaylistPopupMenuHelper.java b/src/main/java/org/lineageos/eleven/utils/PlaylistPopupMenuHelper.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/utils/PlaylistPopupMenuHelper.java rename to src/main/java/org/lineageos/eleven/utils/PlaylistPopupMenuHelper.java index 376810f..6526c53 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/PlaylistPopupMenuHelper.java +++ b/src/main/java/org/lineageos/eleven/utils/PlaylistPopupMenuHelper.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.app.Activity; import android.support.v7.app.AlertDialog; @@ -25,10 +25,10 @@ import android.provider.MediaStore; import android.support.v4.app.FragmentManager; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.Config.SmartPlaylistType; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.model.Playlist; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.Config.SmartPlaylistType; +import org.lineageos.eleven.R; +import org.lineageos.eleven.model.Playlist; public abstract class PlaylistPopupMenuHelper extends PopupMenuHelper { private Playlist mPlaylist; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/PopupMenuHelper.java b/src/main/java/org/lineageos/eleven/utils/PopupMenuHelper.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/utils/PopupMenuHelper.java rename to src/main/java/org/lineageos/eleven/utils/PopupMenuHelper.java index 50de019..bc28971 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/PopupMenuHelper.java +++ b/src/main/java/org/lineageos/eleven/utils/PopupMenuHelper.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.app.Activity; import android.graphics.Typeface; @@ -27,13 +27,13 @@ import android.text.Spannable; import android.text.SpannableString; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.menu.CreateNewPlaylist; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.menu.RenamePlaylist; -import com.cyanogenmod.eleven.provider.RecentStore; -import com.cyanogenmod.eleven.widgets.Roboto; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.menu.CreateNewPlaylist; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.menu.RenamePlaylist; +import org.lineageos.eleven.provider.RecentStore; +import org.lineageos.eleven.widgets.Roboto; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; @@ -84,7 +84,7 @@ public void showPopupMenu(final View view, final int position) { if (mType != null) { // inflate the menu createPopupMenu(menu); - + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN){ Menu m = popupMenu.getMenu(); for (int i = 0; i < m.size(); i++) { @@ -95,7 +95,7 @@ public void showPopupMenu(final View view, final int position) { mi.setTitle(mNewTitle); } } - + // show it popupMenu.show(); } @@ -357,7 +357,7 @@ public boolean onMenuItemClick(MenuItem item) { ContextMenuBuilder builder = new ContextMenuBuilder(mActivity); MusicUtils.makePlaylistMenu(mActivity, getGroupId(), builder); builder.setHeaderTitle(R.string.add_to_playlist); - + builder.setCallback((MenuBuilder.Callback) Proxy.newProxyInstance( MenuBuilder.Callback.class.getClassLoader(), new Class[] { MenuBuilder.Callback.class }, diff --git a/src/main/java/com/cyanogenmod/eleven/utils/PreferenceUtils.java b/src/main/java/org/lineageos/eleven/utils/PreferenceUtils.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/utils/PreferenceUtils.java rename to src/main/java/org/lineageos/eleven/utils/PreferenceUtils.java index 5b1a294..30689e1 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/PreferenceUtils.java +++ b/src/main/java/org/lineageos/eleven/utils/PreferenceUtils.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.Manifest.permission; import android.app.Activity; @@ -25,15 +25,15 @@ import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.fragments.AlbumFragment; -import com.cyanogenmod.eleven.ui.fragments.ArtistFragment; -import com.cyanogenmod.eleven.ui.fragments.SongFragment; -import com.cyanogenmod.eleven.ui.fragments.phone.MusicBrowserPhoneFragment; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.fragments.AlbumFragment; +import org.lineageos.eleven.ui.fragments.ArtistFragment; +import org.lineageos.eleven.ui.fragments.SongFragment; +import org.lineageos.eleven.ui.fragments.phone.MusicBrowserPhoneFragment; /** * A collection of helpers designed to get and set various preferences across - * Apollo. + * Eleven. * * @author Andrew Neal (andrewdneal@gmail.com) */ @@ -123,7 +123,7 @@ public static final PreferenceUtils getInstance(final Context context) { * in {@link MusicBrowserPhoneFragment}. */ public void setStartPage(final int value) { - ApolloUtils.execute(false, new AsyncTask() { + ElevenUtils.execute(false, new AsyncTask() { @Override protected Void doInBackground(final Void... unused) { final SharedPreferences.Editor editor = mPreferences.edit(); @@ -158,7 +158,7 @@ public final int getStartPage() { * @param value The new theme color to use. */ public void setDefaultThemeColor(final int value) { - ApolloUtils.execute(false, new AsyncTask() { + ElevenUtils.execute(false, new AsyncTask() { @Override protected Void doInBackground(final Void... unused) { final SharedPreferences.Editor editor = mPreferences.edit(); @@ -178,7 +178,7 @@ protected Void doInBackground(final Void... unused) { */ public final int getDefaultThemeColor(final Context context) { return mPreferences.getInt(DEFAULT_THEME_COLOR, - ContextCompat.getColor(context, R.color.blue)); + ContextCompat.getColor(context, R.color.blue)); } /** @@ -212,7 +212,7 @@ public final boolean downloadMissingArtistImages() { * @param value The new sort order */ private void setSortOrder(final String key, final String value) { - ApolloUtils.execute(false, new AsyncTask() { + ElevenUtils.execute(false, new AsyncTask() { @Override protected Void doInBackground(final Void... unused) { final SharedPreferences.Editor editor = mPreferences.edit(); @@ -269,7 +269,7 @@ public void setArtistAlbumSortOrder(final String value) { /** * @return The sort order used for the artist album list in - * {@link com.cyanogenmod.eleven.ui.fragments.ArtistDetailFragment} + * {@link org.lineageos.eleven.ui.fragments.ArtistDetailFragment} */ public final String getArtistAlbumSortOrder() { return mPreferences.getString(ARTIST_ALBUM_SORT_ORDER, @@ -343,12 +343,12 @@ public final boolean getShowLyrics() { } public static boolean canRecordAudio(Activity activity) { - return (ContextCompat.checkSelfPermission(activity,permission.RECORD_AUDIO) == + return (ContextCompat.checkSelfPermission(activity,permission.RECORD_AUDIO) == PackageManager.PERMISSION_GRANTED); } public static void requestRecordAudio(Activity activity) { - ActivityCompat.requestPermissions(activity, + ActivityCompat.requestPermissions(activity, new String[] {permission.RECORD_AUDIO}, PERMISSION_REQUEST_RECORD_AUDIO); } diff --git a/src/main/java/com/cyanogenmod/eleven/utils/SectionCreatorUtils.java b/src/main/java/org/lineageos/eleven/utils/SectionCreatorUtils.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/utils/SectionCreatorUtils.java rename to src/main/java/org/lineageos/eleven/utils/SectionCreatorUtils.java index b0a380c..7c43d01 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/SectionCreatorUtils.java +++ b/src/main/java/org/lineageos/eleven/utils/SectionCreatorUtils.java @@ -13,17 +13,17 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.content.Context; import android.text.TextUtils; -import com.cyanogenmod.eleven.Config; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.model.Album; -import com.cyanogenmod.eleven.model.Artist; -import com.cyanogenmod.eleven.model.SearchResult; -import com.cyanogenmod.eleven.model.Song; +import org.lineageos.eleven.Config; +import org.lineageos.eleven.R; +import org.lineageos.eleven.model.Album; +import org.lineageos.eleven.model.Artist; +import org.lineageos.eleven.model.SearchResult; +import org.lineageos.eleven.model.Song; import java.util.List; import java.util.TreeMap; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/ShakeDetector.java b/src/main/java/org/lineageos/eleven/utils/ShakeDetector.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/utils/ShakeDetector.java rename to src/main/java/org/lineageos/eleven/utils/ShakeDetector.java index d0be70d..3a971f4 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/ShakeDetector.java +++ b/src/main/java/org/lineageos/eleven/utils/ShakeDetector.java @@ -1,5 +1,5 @@ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; /* * Copyright 2012 Square, Inc. diff --git a/src/main/java/com/cyanogenmod/eleven/utils/SongPopupMenuHelper.java b/src/main/java/org/lineageos/eleven/utils/SongPopupMenuHelper.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/utils/SongPopupMenuHelper.java rename to src/main/java/org/lineageos/eleven/utils/SongPopupMenuHelper.java index 17fc4d5..54f1e5a 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/SongPopupMenuHelper.java +++ b/src/main/java/org/lineageos/eleven/utils/SongPopupMenuHelper.java @@ -13,16 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.app.Activity; import android.provider.MediaStore; import android.support.v4.app.FragmentManager; -import com.cyanogenmod.eleven.menu.DeleteDialog; -import com.cyanogenmod.eleven.menu.FragmentMenuItems; -import com.cyanogenmod.eleven.model.Song; +import org.lineageos.eleven.menu.DeleteDialog; +import org.lineageos.eleven.menu.FragmentMenuItems; +import org.lineageos.eleven.model.Song; import java.util.TreeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/SortOrder.java b/src/main/java/org/lineageos/eleven/utils/SortOrder.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/utils/SortOrder.java rename to src/main/java/org/lineageos/eleven/utils/SortOrder.java index 6352a43..6ffe57f 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/SortOrder.java +++ b/src/main/java/org/lineageos/eleven/utils/SortOrder.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.provider.MediaStore; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/SrtManager.java b/src/main/java/org/lineageos/eleven/utils/SrtManager.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/utils/SrtManager.java rename to src/main/java/org/lineageos/eleven/utils/SrtManager.java index ffa33dd..b9aec40 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/SrtManager.java +++ b/src/main/java/org/lineageos/eleven/utils/SrtManager.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.media.MediaPlayer; import android.os.Handler; diff --git a/src/main/java/com/cyanogenmod/eleven/utils/SrtParser.java b/src/main/java/org/lineageos/eleven/utils/SrtParser.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/utils/SrtParser.java rename to src/main/java/org/lineageos/eleven/utils/SrtParser.java index bace32a..351c7d0 100644 --- a/src/main/java/com/cyanogenmod/eleven/utils/SrtParser.java +++ b/src/main/java/org/lineageos/eleven/utils/SrtParser.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.utils; +package org.lineageos.eleven.utils; import android.text.TextUtils; import android.util.Log; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/AlphaPatternDrawable.java b/src/main/java/org/lineageos/eleven/widgets/AlphaPatternDrawable.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/widgets/AlphaPatternDrawable.java rename to src/main/java/org/lineageos/eleven/widgets/AlphaPatternDrawable.java index 9a410e1..24e50f6 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/AlphaPatternDrawable.java +++ b/src/main/java/org/lineageos/eleven/widgets/AlphaPatternDrawable.java @@ -9,7 +9,7 @@ * language governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.graphics.Bitmap; import android.graphics.Bitmap.Config; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/AlphaTouchInterceptorOverlay.java b/src/main/java/org/lineageos/eleven/widgets/AlphaTouchInterceptorOverlay.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/widgets/AlphaTouchInterceptorOverlay.java rename to src/main/java/org/lineageos/eleven/widgets/AlphaTouchInterceptorOverlay.java index 1ea1d73..18f5118 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/AlphaTouchInterceptorOverlay.java +++ b/src/main/java/org/lineageos/eleven/widgets/AlphaTouchInterceptorOverlay.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.view.View; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/AudioActivityButton.java b/src/main/java/org/lineageos/eleven/widgets/AudioActivityButton.java similarity index 90% rename from src/main/java/com/cyanogenmod/eleven/widgets/AudioActivityButton.java rename to src/main/java/org/lineageos/eleven/widgets/AudioActivityButton.java index bbc3345..483dbe8 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/AudioActivityButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/AudioActivityButton.java @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.support.v4.app.FragmentActivity; import android.util.AttributeSet; -import com.cyanogenmod.eleven.ui.activities.SlidingPanelActivity; +import org.lineageos.eleven.ui.activities.SlidingPanelActivity; public abstract class AudioActivityButton extends AudioButton { protected SlidingPanelActivity mActivity; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/AudioButton.java b/src/main/java/org/lineageos/eleven/widgets/AudioButton.java similarity index 88% rename from src/main/java/com/cyanogenmod/eleven/widgets/AudioButton.java rename to src/main/java/org/lineageos/eleven/widgets/AudioButton.java index a4e4491..2f75e6c 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/AudioButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/AudioButton.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.support.v4.content.ContextCompat; @@ -10,8 +10,8 @@ import android.view.View.OnLongClickListener; import android.support.v7.widget.AppCompatImageButton; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.utils.ApolloUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.utils.ElevenUtils; public abstract class AudioButton extends AppCompatImageButton implements OnClickListener, OnLongClickListener { public static float ACTIVE_ALPHA = 1.0f; @@ -37,7 +37,7 @@ public boolean onLongClick(final View view) { if (TextUtils.isEmpty(view.getContentDescription())) { return false; } else { - ApolloUtils.showCheatSheet(view); + ElevenUtils.showCheatSheet(view); return true; } } diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/BlurScrimImage.java b/src/main/java/org/lineageos/eleven/widgets/BlurScrimImage.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/widgets/BlurScrimImage.java rename to src/main/java/org/lineageos/eleven/widgets/BlurScrimImage.java index 0914208..dfa32a3 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/BlurScrimImage.java +++ b/src/main/java/org/lineageos/eleven/widgets/BlurScrimImage.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.graphics.Bitmap; @@ -27,9 +27,9 @@ import android.widget.FrameLayout; import android.widget.ImageView; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageFetcher; -import com.cyanogenmod.eleven.cache.ImageWorker; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageFetcher; +import org.lineageos.eleven.cache.ImageWorker; public class BlurScrimImage extends FrameLayout { private ImageView mImageView; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/BrowseButton.java b/src/main/java/org/lineageos/eleven/widgets/BrowseButton.java similarity index 90% rename from src/main/java/com/cyanogenmod/eleven/widgets/BrowseButton.java rename to src/main/java/org/lineageos/eleven/widgets/BrowseButton.java index 1bd74d8..1d7dece 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/BrowseButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/BrowseButton.java @@ -13,13 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; import android.view.View; -import com.cyanogenmod.eleven.ui.activities.SlidingPanelActivity; +import org.lineageos.eleven.ui.activities.SlidingPanelActivity; public class BrowseButton extends AudioActivityButton { diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/ColorPanelView.java b/src/main/java/org/lineageos/eleven/widgets/ColorPanelView.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/widgets/ColorPanelView.java rename to src/main/java/org/lineageos/eleven/widgets/ColorPanelView.java index 332d187..8e77bb0 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/ColorPanelView.java +++ b/src/main/java/org/lineageos/eleven/widgets/ColorPanelView.java @@ -9,7 +9,7 @@ * language governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.graphics.Canvas; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/ColorPickerView.java b/src/main/java/org/lineageos/eleven/widgets/ColorPickerView.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/widgets/ColorPickerView.java rename to src/main/java/org/lineageos/eleven/widgets/ColorPickerView.java index dc034eb..1894e63 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/ColorPickerView.java +++ b/src/main/java/org/lineageos/eleven/widgets/ColorPickerView.java @@ -9,7 +9,7 @@ * language governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.graphics.Canvas; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/FrameLayoutWithOverlay.java b/src/main/java/org/lineageos/eleven/widgets/FrameLayoutWithOverlay.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/widgets/FrameLayoutWithOverlay.java rename to src/main/java/org/lineageos/eleven/widgets/FrameLayoutWithOverlay.java index 071bdee..3a311f5 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/FrameLayoutWithOverlay.java +++ b/src/main/java/org/lineageos/eleven/widgets/FrameLayoutWithOverlay.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/IPopupMenuCallback.java b/src/main/java/org/lineageos/eleven/widgets/IPopupMenuCallback.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/widgets/IPopupMenuCallback.java rename to src/main/java/org/lineageos/eleven/widgets/IPopupMenuCallback.java index 2cad85d..a797175 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/IPopupMenuCallback.java +++ b/src/main/java/org/lineageos/eleven/widgets/IPopupMenuCallback.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.view.View; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/LayoutSuppressingImageView.java b/src/main/java/org/lineageos/eleven/widgets/LayoutSuppressingImageView.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/widgets/LayoutSuppressingImageView.java rename to src/main/java/org/lineageos/eleven/widgets/LayoutSuppressingImageView.java index b7e9ccc..511aefb 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/LayoutSuppressingImageView.java +++ b/src/main/java/org/lineageos/eleven/widgets/LayoutSuppressingImageView.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/LetterTileDrawable.java b/src/main/java/org/lineageos/eleven/widgets/LetterTileDrawable.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/widgets/LetterTileDrawable.java rename to src/main/java/org/lineageos/eleven/widgets/LetterTileDrawable.java index 7f0cbd0..9f39a05 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/LetterTileDrawable.java +++ b/src/main/java/org/lineageos/eleven/widgets/LetterTileDrawable.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.content.res.Resources; @@ -33,10 +33,10 @@ import junit.framework.Assert; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.cache.ImageWorker.ImageType; -import com.cyanogenmod.eleven.utils.BitmapWithColors; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.cache.ImageWorker.ImageType; +import org.lineageos.eleven.utils.BitmapWithColors; +import org.lineageos.eleven.utils.MusicUtils; /** * A drawable that encapsulates all the functionality needed to display a letter tile to @@ -77,7 +77,7 @@ public class LetterTileDrawable extends Drawable { private static synchronized void initializeStaticVariables(final Context context) { Resources res = context.getResources(); - if (sColors == null) { + if (sColors == null) { sColors = res.obtainTypedArray(R.array.letter_tile_colors); sVibrantDarkColors = res.obtainTypedArray(R.array.letter_tile_vibrant_dark_colors); sDefaultColor = ContextCompat.getColor(context, R.color.letter_tile_default_color); @@ -338,7 +338,7 @@ private static void drawBitmap(final Bitmap bitmap, final int width, final int h public static BitmapWithColors createDefaultBitmap(Context context, String identifier, ImageType type, boolean isCircle, boolean smallArtwork) { initializeStaticVariables(context); - + identifier = MusicUtils.getTrimmedName(identifier); // get the default bitmap to determine what to draw to diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/LoadingEmptyContainer.java b/src/main/java/org/lineageos/eleven/widgets/LoadingEmptyContainer.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/widgets/LoadingEmptyContainer.java rename to src/main/java/org/lineageos/eleven/widgets/LoadingEmptyContainer.java index 1e8d4c4..68970f4 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/LoadingEmptyContainer.java +++ b/src/main/java/org/lineageos/eleven/widgets/LoadingEmptyContainer.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.os.Build; @@ -24,7 +24,7 @@ import java.lang.reflect.Method; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; /** * This class is the default empty state view for most listviews/fragments @@ -38,7 +38,7 @@ public class LoadingEmptyContainer extends FrameLayout { private Handler mHandler; private Runnable mShowLoadingRunnable; private boolean hasCallbacks; - + public LoadingEmptyContainer(Context context, AttributeSet attrs) { super(context, attrs); diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/NoResultsContainer.java b/src/main/java/org/lineageos/eleven/widgets/NoResultsContainer.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/widgets/NoResultsContainer.java rename to src/main/java/org/lineageos/eleven/widgets/NoResultsContainer.java index 8da0d29..26b569b 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/NoResultsContainer.java +++ b/src/main/java/org/lineageos/eleven/widgets/NoResultsContainer.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; @@ -21,7 +21,7 @@ import android.widget.LinearLayout; import android.widget.TextView; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; /** * This class is the default empty state view for most listviews/fragments diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/PlayPauseButton.java b/src/main/java/org/lineageos/eleven/widgets/PlayPauseButton.java similarity index 94% rename from src/main/java/com/cyanogenmod/eleven/widgets/PlayPauseButton.java rename to src/main/java/org/lineageos/eleven/widgets/PlayPauseButton.java index 97dc94d..6b1b43e 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/PlayPauseButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/PlayPauseButton.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.animation.Animator; import android.content.Context; @@ -25,9 +25,9 @@ import android.view.View.OnLongClickListener; import android.support.v7.widget.AppCompatImageButton; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; /** * A custom {@link AppCompatImageButton} that represents the "play and pause" button. @@ -93,7 +93,7 @@ public boolean onLongClick(final View view) { if (TextUtils.isEmpty(view.getContentDescription())) { return false; } else { - ApolloUtils.showCheatSheet(view); + ElevenUtils.showCheatSheet(view); return true; } } diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/PlayPauseProgressButton.java b/src/main/java/org/lineageos/eleven/widgets/PlayPauseProgressButton.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/widgets/PlayPauseProgressButton.java rename to src/main/java/org/lineageos/eleven/widgets/PlayPauseProgressButton.java index 8b8788f..9f4eb26 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/PlayPauseProgressButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/PlayPauseProgressButton.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; @@ -24,8 +24,8 @@ import android.widget.FrameLayout; import android.widget.ProgressBar; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.utils.MusicUtils; /** * This class handles the playpause button as well as the circular progress bar diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/PopupMenuButton.java b/src/main/java/org/lineageos/eleven/widgets/PopupMenuButton.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/widgets/PopupMenuButton.java rename to src/main/java/org/lineageos/eleven/widgets/PopupMenuButton.java index 1074247..2b63d76 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/PopupMenuButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/PopupMenuButton.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.os.Build; @@ -23,7 +23,7 @@ import android.view.View; import android.support.v7.widget.AppCompatImageView; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; public class PopupMenuButton extends AppCompatImageView implements IPopupMenuCallback, View.OnClickListener { diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/QueueButton.java b/src/main/java/org/lineageos/eleven/widgets/QueueButton.java similarity index 90% rename from src/main/java/com/cyanogenmod/eleven/widgets/QueueButton.java rename to src/main/java/org/lineageos/eleven/widgets/QueueButton.java index a8a1f50..f4aab93 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/QueueButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/QueueButton.java @@ -13,13 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; import android.view.View; -import com.cyanogenmod.eleven.ui.activities.SlidingPanelActivity; +import org.lineageos.eleven.ui.activities.SlidingPanelActivity; public class QueueButton extends AudioActivityButton { diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/RepeatButton.java b/src/main/java/org/lineageos/eleven/widgets/RepeatButton.java similarity index 93% rename from src/main/java/com/cyanogenmod/eleven/widgets/RepeatButton.java rename to src/main/java/org/lineageos/eleven/widgets/RepeatButton.java index 2743718..82c1252 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/RepeatButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/RepeatButton.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.support.v4.content.ContextCompat; @@ -19,9 +19,9 @@ import android.view.View; import android.widget.ImageButton; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.utils.MusicUtils; /** * A custom {@link ImageButton} that represents the "repeat" button. diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/RepeatingImageButton.java b/src/main/java/org/lineageos/eleven/widgets/RepeatingImageButton.java similarity index 96% rename from src/main/java/com/cyanogenmod/eleven/widgets/RepeatingImageButton.java rename to src/main/java/org/lineageos/eleven/widgets/RepeatingImageButton.java index cb24500..90eae97 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/RepeatingImageButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/RepeatingImageButton.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.os.Build; @@ -22,9 +22,9 @@ import android.view.View.OnClickListener; import android.support.v7.widget.AppCompatImageButton; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.utils.ApolloUtils; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.R; +import org.lineageos.eleven.utils.ElevenUtils; +import org.lineageos.eleven.utils.MusicUtils; /** * A {@link AppCompatImageButton} that will repeatedly call a 'listener' method as long @@ -90,7 +90,7 @@ public void setRepeatListener(final RepeatListener l) { @Override public boolean performLongClick() { if (mListener == null) { - ApolloUtils.showCheatSheet(this); + ElevenUtils.showCheatSheet(this); } mStartTime = SystemClock.elapsedRealtime(); mRepeatCount = 0; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/Roboto.java b/src/main/java/org/lineageos/eleven/widgets/Roboto.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/widgets/Roboto.java rename to src/main/java/org/lineageos/eleven/widgets/Roboto.java index 690e3e1..aee6b7a 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/Roboto.java +++ b/src/main/java/org/lineageos/eleven/widgets/Roboto.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import java.util.Hashtable; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/RobotoTextView.java b/src/main/java/org/lineageos/eleven/widgets/RobotoTextView.java similarity index 95% rename from src/main/java/com/cyanogenmod/eleven/widgets/RobotoTextView.java rename to src/main/java/org/lineageos/eleven/widgets/RobotoTextView.java index 6c12d18..d24fb10 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/RobotoTextView.java +++ b/src/main/java/org/lineageos/eleven/widgets/RobotoTextView.java @@ -1,11 +1,11 @@ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.content.res.TypedArray; import android.util.AttributeSet; import android.support.v7.widget.AppCompatTextView; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; public class RobotoTextView extends AppCompatTextView { diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/SeparatedListAdapter.java b/src/main/java/org/lineageos/eleven/widgets/SeparatedListAdapter.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/widgets/SeparatedListAdapter.java rename to src/main/java/org/lineageos/eleven/widgets/SeparatedListAdapter.java index 70f01b3..7af881a 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/SeparatedListAdapter.java +++ b/src/main/java/org/lineageos/eleven/widgets/SeparatedListAdapter.java @@ -1,5 +1,5 @@ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.view.View; @@ -8,7 +8,7 @@ import android.widget.ArrayAdapter; import android.widget.BaseAdapter; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; import java.util.LinkedHashMap; import java.util.Map; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/ShowHideMasterLayout.java b/src/main/java/org/lineageos/eleven/widgets/ShowHideMasterLayout.java similarity index 99% rename from src/main/java/com/cyanogenmod/eleven/widgets/ShowHideMasterLayout.java rename to src/main/java/org/lineageos/eleven/widgets/ShowHideMasterLayout.java index d12956f..8c8eb36 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/ShowHideMasterLayout.java +++ b/src/main/java/org/lineageos/eleven/widgets/ShowHideMasterLayout.java @@ -9,7 +9,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.animation.Animator; import android.animation.AnimatorSet; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/ShuffleButton.java b/src/main/java/org/lineageos/eleven/widgets/ShuffleButton.java similarity index 91% rename from src/main/java/com/cyanogenmod/eleven/widgets/ShuffleButton.java rename to src/main/java/org/lineageos/eleven/widgets/ShuffleButton.java index 838c2e7..432e392 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/ShuffleButton.java +++ b/src/main/java/org/lineageos/eleven/widgets/ShuffleButton.java @@ -11,15 +11,15 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; import android.view.View; -import com.cyanogenmod.eleven.MusicPlaybackService; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.MusicPlaybackService; +import org.lineageos.eleven.R; +import org.lineageos.eleven.utils.MusicUtils; /** * @author Andrew Neal (andrewdneal@gmail.com) diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/SquareFrame.java b/src/main/java/org/lineageos/eleven/widgets/SquareFrame.java similarity index 92% rename from src/main/java/com/cyanogenmod/eleven/widgets/SquareFrame.java rename to src/main/java/org/lineageos/eleven/widgets/SquareFrame.java index 85b0acc..09048e3 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/SquareFrame.java +++ b/src/main/java/org/lineageos/eleven/widgets/SquareFrame.java @@ -1,4 +1,4 @@ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/SquareImageView.java b/src/main/java/org/lineageos/eleven/widgets/SquareImageView.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/widgets/SquareImageView.java rename to src/main/java/org/lineageos/eleven/widgets/SquareImageView.java index 3e40c7b..83f6bb7 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/SquareImageView.java +++ b/src/main/java/org/lineageos/eleven/widgets/SquareImageView.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/SquareView.java b/src/main/java/org/lineageos/eleven/widgets/SquareView.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/widgets/SquareView.java rename to src/main/java/org/lineageos/eleven/widgets/SquareView.java index 521b983..ed4a06e 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/SquareView.java +++ b/src/main/java/org/lineageos/eleven/widgets/SquareView.java @@ -11,7 +11,7 @@ * governing permissions and limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.util.AttributeSet; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/SquareViewPager.java b/src/main/java/org/lineageos/eleven/widgets/SquareViewPager.java similarity index 97% rename from src/main/java/com/cyanogenmod/eleven/widgets/SquareViewPager.java rename to src/main/java/org/lineageos/eleven/widgets/SquareViewPager.java index e24c1e9..a9900f6 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/SquareViewPager.java +++ b/src/main/java/org/lineageos/eleven/widgets/SquareViewPager.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.support.v4.view.ViewPager; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/ViewPagerTabStrip.java b/src/main/java/org/lineageos/eleven/widgets/ViewPagerTabStrip.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/widgets/ViewPagerTabStrip.java rename to src/main/java/org/lineageos/eleven/widgets/ViewPagerTabStrip.java index 1e7c383..887dcf7 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/ViewPagerTabStrip.java +++ b/src/main/java/org/lineageos/eleven/widgets/ViewPagerTabStrip.java @@ -14,7 +14,7 @@ * limitations under the License */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.content.res.Resources; @@ -26,7 +26,7 @@ import android.view.View; import android.widget.LinearLayout; -import com.cyanogenmod.eleven.R; +import org.lineageos.eleven.R; public class ViewPagerTabStrip extends LinearLayout { private int mSelectedUnderlineThickness; diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/ViewPagerTabs.java b/src/main/java/org/lineageos/eleven/widgets/ViewPagerTabs.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/widgets/ViewPagerTabs.java rename to src/main/java/org/lineageos/eleven/widgets/ViewPagerTabs.java index b3bbd72..c761840 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/ViewPagerTabs.java +++ b/src/main/java/org/lineageos/eleven/widgets/ViewPagerTabs.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.content.Context; import android.content.res.ColorStateList; @@ -33,10 +33,10 @@ import android.widget.TextView; import android.widget.Toast; -import java.lang.reflect.Method; +import org.lineageos.eleven.R; +import org.lineageos.eleven.ui.fragments.ViewOutlineProviderCompat; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.ui.fragments.ViewOutlineProviderCompat; +import java.lang.reflect.Method; /** * Lightweight implementation of ViewPager tabs. This looks similar to traditional actionBar tabs, @@ -80,7 +80,7 @@ public void getOutline(View view, Outline outline) { VIEW_BOUNDS_OUTLINE_PROVIDER = null; } } - + private static final int TAB_SIDE_PADDING_IN_DPS = 10; // TODO: This should use in the future @@ -186,7 +186,7 @@ private void addTab(CharSequence tabTitle, final int position) { else{ textView = (RobotoTextView) new RobotoTextView(getContext(),Roboto.ROBOTO_MEDIUM); } - + textView.setText(tabTitle); textView.setBackgroundResource(R.drawable.view_pager_tab_background); textView.setGravity(Gravity.CENTER); diff --git a/src/main/java/com/cyanogenmod/eleven/widgets/VisualizerView.java b/src/main/java/org/lineageos/eleven/widgets/VisualizerView.java similarity index 98% rename from src/main/java/com/cyanogenmod/eleven/widgets/VisualizerView.java rename to src/main/java/org/lineageos/eleven/widgets/VisualizerView.java index 7c91f29..94dec51 100644 --- a/src/main/java/com/cyanogenmod/eleven/widgets/VisualizerView.java +++ b/src/main/java/org/lineageos/eleven/widgets/VisualizerView.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.cyanogenmod.eleven.widgets; +package org.lineageos.eleven.widgets; import android.animation.ArgbEvaluator; import android.animation.ObjectAnimator; @@ -29,8 +29,7 @@ import android.util.AttributeSet; import android.view.View; -import com.cyanogenmod.eleven.R; -import com.cyanogenmod.eleven.utils.MusicUtils; +import org.lineageos.eleven.R; public class VisualizerView extends View { private Paint mPaint; @@ -38,14 +37,13 @@ public class VisualizerView extends View { private ObjectAnimator mVisualizerColorAnimator; private ValueAnimator[] mValueAnimators = new ValueAnimator[32]; - private float[] mFFTPoints = new float[128]; private boolean mVisible = false; private boolean mPlaying = false; private boolean mPowerSaveMode = false; private int mColor; - + private Visualizer.OnDataCaptureListener mVisualizerListener = new Visualizer.OnDataCaptureListener() { byte rfk, ifk; @@ -167,9 +165,9 @@ public void onAnimationUpdate(ValueAnimator animation) { public void onAnimationUpdate(ValueAnimator animation) { postInvalidate(); } - }); + }); } - + public void setVisible(boolean visible) { if (mVisible != visible) { mVisible = visible;