// Search for videos with user suggestion.
        void SearchForVideos()
        {
            indicatorView.StartAnimating();

            Task.Run(async() =>
            {
                // Get videos that result from user suggestion
                var result = await YouTubeManager.SharedInstance.GetVideos(search);
                videos.AddRange(result);
                InvokeOnMainThread(() =>
                {
                    // Show videos on TableView
                    TblVideos.ReloadData();
                    indicatorView.StopAnimating();
                });
            });
        }
        // Retrives the playlist from YouTube.
        void GetPlaylist()
        {
            // We validate if we are already getting the playlist
            // to avoid a duplicate call.
            if (isPlaylistRequested)
            {
                return;
            }

            isPlaylistRequested = true;

            indicatorView.StartAnimating();

            Task.Run(async() =>
            {
                // Retrives the playlist from YouTube.
                var result = await YouTubeManager.SharedInstance.GetVideos(playlist);
                videos.AddRange(result);
                InvokeOnMainThread(() =>
                {
                    // Show new videos in TableView
                    TblVideos.ReloadData();
                    indicatorView.StopAnimating();
                    isPlaylistRequested = false;

                    // Enable the Player View to start playing videos from Playlist.
                    if (firstLoad)
                    {
                        // Try using this method once, due it reloads the whole view.
                        // If you want to play another video from Playlist,
                        // use PlayVideoAt method.
                        PlayerView.LoadPlaylistById(playlist.Id);
                        firstLoad = false;
                    }
                });
            });
        }