Archived
1
0

Context menu for cards done

Related Work Items: #226
This commit is contained in:
Michael Gordeev
2018-12-31 02:02:01 +03:00
parent f136aa8d0c
commit 7f76ef2d97
8 changed files with 16 additions and 44 deletions
+2 -1
View File
@@ -57,7 +57,8 @@
<MenuFlyoutItem Icon="Contact" Text="View channel" Click="Button_Click"/> <MenuFlyoutItem Icon="Contact" Text="View channel" Click="Button_Click"/>
<MenuFlyoutSeparator/> <MenuFlyoutSeparator/>
<MenuFlyoutItem Icon="Link" Text="Copy link" Name="getLink" Click="GetLink_Click"/> <MenuFlyoutItem Icon="Link" Text="Copy link" Name="getLink" Click="GetLink_Click"/>
<MenuFlyoutItem Icon="Share" Text="Share" Name="share" Click="Share_Click"/> <MenuFlyoutItem Icon="Globe" Text="Open in browser" Name="inBrowser" Click="InBrowser_Click"/>
<MenuFlyoutItem Icon="Share" Text="Share" Name="share" Visibility="Collapsed"/>
</MenuFlyout> </MenuFlyout>
</UserControl.ContextFlyout> </UserControl.ContextFlyout>
</UserControl> </UserControl>
+3 -13
View File
@@ -2,7 +2,7 @@
using Google.Apis.YouTube.v3.Data; using Google.Apis.YouTube.v3.Data;
using System; using System;
using Windows.ApplicationModel.DataTransfer; using Windows.ApplicationModel.DataTransfer;
using Windows.Foundation; using Windows.System;
using Windows.UI; using Windows.UI;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls;
@@ -23,7 +23,6 @@ namespace FoxTube.Controls
{ {
InitializeComponent(); InitializeComponent();
Initialize(id, live); Initialize(id, live);
DataTransferManager.GetForCurrentView().DataRequested += new TypedEventHandler<DataTransferManager, DataRequestedEventArgs>(Share);
} }
private void UserControl_SizeChanged(object sender, SizeChangedEventArgs e) private void UserControl_SizeChanged(object sender, SizeChangedEventArgs e)
@@ -106,18 +105,9 @@ namespace FoxTube.Controls
Clipboard.SetContent(data); Clipboard.SetContent(data);
} }
private void Share_Click(object sender, RoutedEventArgs e) private async void InBrowser_Click(object sender, RoutedEventArgs e)
{ {
DataTransferManager.ShowShareUI(); await Launcher.LaunchUriAsync((string.IsNullOrWhiteSpace(item.Snippet.CustomUrl) ? $"https://www.youtube.com/channel/{item.Id}" : $"https://www.youtube.com/user/{item.Snippet.CustomUrl}").ToUri());
}
private void Share(DataTransferManager sender, DataRequestedEventArgs args)
{
Methods.Share(args,
item.Snippet.Thumbnails.Medium.Url,
item.Snippet.Title,
string.IsNullOrWhiteSpace(item.Snippet.CustomUrl) ? $"https://www.youtube.com/channel/{item.Id}" : $"https://www.youtube.com/user/{item.Snippet.CustomUrl}",
"channel");
} }
} }
} }
+2 -1
View File
@@ -54,7 +54,8 @@
<MenuFlyoutItem Icon="Contact" Text="View channel" Name="openChannel" Click="OpenChannel_Click"/> <MenuFlyoutItem Icon="Contact" Text="View channel" Name="openChannel" Click="OpenChannel_Click"/>
<MenuFlyoutSeparator/> <MenuFlyoutSeparator/>
<MenuFlyoutItem Icon="Link" Text="Copy link" Name="getLink" Click="GetLink_Click"/> <MenuFlyoutItem Icon="Link" Text="Copy link" Name="getLink" Click="GetLink_Click"/>
<MenuFlyoutItem Icon="Share" Text="Share" Name="share" Click="Share_Click"/> <MenuFlyoutItem Icon="Globe" Text="Open in browser" Name="inBrowser" Click="InBrowser_Click"/>
<MenuFlyoutItem Icon="Share" Text="Share" Name="share" Visibility="Collapsed"/>
</MenuFlyout> </MenuFlyout>
</UserControl.ContextFlyout> </UserControl.ContextFlyout>
</Page> </Page>
+3 -13
View File
@@ -2,7 +2,7 @@
using Google.Apis.YouTube.v3.Data; using Google.Apis.YouTube.v3.Data;
using System; using System;
using Windows.ApplicationModel.DataTransfer; using Windows.ApplicationModel.DataTransfer;
using Windows.Foundation; using Windows.System;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Media.Imaging; using Windows.UI.Xaml.Media.Imaging;
@@ -21,7 +21,6 @@ namespace FoxTube.Controls
{ {
InitializeComponent(); InitializeComponent();
Initialize(id); Initialize(id);
DataTransferManager.GetForCurrentView().DataRequested += new TypedEventHandler<DataTransferManager, DataRequestedEventArgs>(Share);
} }
public async void Initialize(string id) public async void Initialize(string id)
@@ -70,18 +69,9 @@ namespace FoxTube.Controls
Clipboard.SetContent(data); Clipboard.SetContent(data);
} }
private void Share_Click(object sender, RoutedEventArgs e) private async void InBrowser_Click(object sender, RoutedEventArgs e)
{ {
DataTransferManager.ShowShareUI(); await Launcher.LaunchUriAsync($"https://www.youtube.com/playlist?list={playlistId}".ToUri());
}
private void Share(DataTransferManager sender, DataRequestedEventArgs args)
{
Methods.Share(args,
item.Snippet.Thumbnails.Medium.Url,
item.Snippet.Title,
$"https://www.youtube.com/playlist?list={item.Id}",
"playlist");
} }
} }
} }
+2 -1
View File
@@ -62,7 +62,8 @@
<MenuFlyoutItem Icon="Contact" Text="View channel" Name="viewChannel" Click="ViewChannel_Click"/> <MenuFlyoutItem Icon="Contact" Text="View channel" Name="viewChannel" Click="ViewChannel_Click"/>
<MenuFlyoutSeparator/> <MenuFlyoutSeparator/>
<MenuFlyoutItem Icon="Link" Text="Copy link" Name="getLink" Click="GetLink_Click"/> <MenuFlyoutItem Icon="Link" Text="Copy link" Name="getLink" Click="GetLink_Click"/>
<MenuFlyoutItem Icon="Share" Text="Share" Name="share" Click="Share_Click"/> <MenuFlyoutItem Icon="Globe" Text="Open in browser" Name="inBrowser" Click="InBrowser_Click"/>
<MenuFlyoutItem Icon="Share" Text="Share" Name="share" Visibility="Collapsed"/>
<MenuFlyoutSeparator Visibility="Collapsed"/> <MenuFlyoutSeparator Visibility="Collapsed"/>
<MenuFlyoutItem Icon="Download" Text="Download" Visibility="Collapsed"/> <MenuFlyoutItem Icon="Download" Text="Download" Visibility="Collapsed"/>
</MenuFlyout> </MenuFlyout>
+2 -13
View File
@@ -7,7 +7,6 @@ using Windows.UI.Xaml.Media.Imaging;
using Windows.System; using Windows.System;
using Windows.UI.Popups; using Windows.UI.Popups;
using Windows.ApplicationModel.DataTransfer; using Windows.ApplicationModel.DataTransfer;
using Windows.Foundation;
namespace FoxTube.Controls namespace FoxTube.Controls
{ {
@@ -25,7 +24,6 @@ namespace FoxTube.Controls
{ {
InitializeComponent(); InitializeComponent();
Initialize(id, playlist); Initialize(id, playlist);
DataTransferManager.GetForCurrentView().DataRequested += new TypedEventHandler<DataTransferManager, DataRequestedEventArgs>(Share);
} }
private void UserControl_SizeChanged(object sender, SizeChangedEventArgs e) private void UserControl_SizeChanged(object sender, SizeChangedEventArgs e)
@@ -123,18 +121,9 @@ namespace FoxTube.Controls
Clipboard.SetContent(data); Clipboard.SetContent(data);
} }
private void Share_Click(object sender, RoutedEventArgs e) private async void InBrowser_Click(object sender, RoutedEventArgs e)
{ {
DataTransferManager.ShowShareUI(); await Launcher.LaunchUriAsync($"https://www.youtube.com/watch?v={videoId}".ToUri());
}
private void Share(DataTransferManager sender, DataRequestedEventArgs args)
{
Methods.Share(args,
item.Snippet.Thumbnails.Medium.Url,
item.Snippet.Title,
$"https://www.youtube.com/watch?v={videoId}",
"video");
} }
} }
} }
+1 -1
View File
@@ -393,7 +393,7 @@ namespace FoxTube
private void UserControl_PointerExited(object sender, PointerRoutedEventArgs e) private void UserControl_PointerExited(object sender, PointerRoutedEventArgs e)
{ {
if (t.Enabled && e.Pointer.PointerDeviceType == Windows.Devices.Input.PointerDeviceType.Mouse) if (ctrlsFadeTimer.IsEnabled && e.Pointer.PointerDeviceType == Windows.Devices.Input.PointerDeviceType.Mouse)
{ {
pointerCaptured = false; pointerCaptured = false;
Elapsed(this, null); Elapsed(this, null);
+1 -1
View File
@@ -382,7 +382,7 @@ namespace FoxTube.Pages
string timecode = player.elapsed.TotalSeconds > 10 ? string timecode = player.elapsed.TotalSeconds > 10 ?
"&t=" + (int)player.elapsed.TotalSeconds + "s" : string.Empty; "&t=" + (int)player.elapsed.TotalSeconds + "s" : string.Empty;
await Launcher.LaunchUriAsync(new Uri($"https://www.youtube.com/watch?v={videoId}{timecode}")); await Launcher.LaunchUriAsync($"https://www.youtube.com/watch?v={videoId}{timecode}".ToUri());
} }
public void refresh_Click(object sender, RoutedEventArgs e) public void refresh_Click(object sender, RoutedEventArgs e)