Added Bing visual search support

This commit is contained in:
Jaex 2021-07-31 10:42:12 +03:00
parent 3c80c3f3e3
commit de5fc14446
14 changed files with 171 additions and 70 deletions

View file

@ -576,7 +576,7 @@ internal class Resources {
}
/// <summary>
/// Looks up a localized string similar to BottomCenter.
/// Looks up a localized string similar to Bottom center.
/// </summary>
internal static string ContentAlignment_BottomCenter {
get {
@ -585,7 +585,7 @@ internal class Resources {
}
/// <summary>
/// Looks up a localized string similar to BottomLeft.
/// Looks up a localized string similar to Bottom left.
/// </summary>
internal static string ContentAlignment_BottomLeft {
get {
@ -594,7 +594,7 @@ internal class Resources {
}
/// <summary>
/// Looks up a localized string similar to BottomRight.
/// Looks up a localized string similar to Bottom right.
/// </summary>
internal static string ContentAlignment_BottomRight {
get {
@ -603,7 +603,7 @@ internal class Resources {
}
/// <summary>
/// Looks up a localized string similar to MiddleCenter.
/// Looks up a localized string similar to Middle center.
/// </summary>
internal static string ContentAlignment_MiddleCenter {
get {
@ -612,7 +612,7 @@ internal class Resources {
}
/// <summary>
/// Looks up a localized string similar to MiddleLeft.
/// Looks up a localized string similar to Middle left.
/// </summary>
internal static string ContentAlignment_MiddleLeft {
get {
@ -621,7 +621,7 @@ internal class Resources {
}
/// <summary>
/// Looks up a localized string similar to MiddleRight.
/// Looks up a localized string similar to Middle right.
/// </summary>
internal static string ContentAlignment_MiddleRight {
get {
@ -630,7 +630,7 @@ internal class Resources {
}
/// <summary>
/// Looks up a localized string similar to TopCenter.
/// Looks up a localized string similar to Top center.
/// </summary>
internal static string ContentAlignment_TopCenter {
get {
@ -639,7 +639,7 @@ internal class Resources {
}
/// <summary>
/// Looks up a localized string similar to TopLeft.
/// Looks up a localized string similar to Top left.
/// </summary>
internal static string ContentAlignment_TopLeft {
get {
@ -648,7 +648,7 @@ internal class Resources {
}
/// <summary>
/// Looks up a localized string similar to TopRight.
/// Looks up a localized string similar to Top right.
/// </summary>
internal static string ContentAlignment_TopRight {
get {
@ -3838,6 +3838,15 @@ internal class Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Bing visual search.
/// </summary>
internal static string URLSharingServices_BingVisualSearch {
get {
return ResourceManager.GetString("URLSharingServices_BingVisualSearch", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Custom URL sharing service.
/// </summary>

View file

@ -1370,4 +1370,7 @@ Would you like to download and install it?</value>
<data name="ContentAlignment_BottomRight" xml:space="preserve">
<value>Bottom right</value>
</data>
<data name="URLSharingServices_BingVisualSearch" xml:space="preserve">
<value>Bing visual search</value>
</data>
</root>

View file

@ -211,6 +211,7 @@ public enum URLSharingServices
[Description("Pushbullet")]
Pushbullet,
GoogleImageSearch, // Localized
BingVisualSearch, // Localized
CustomURLSharingService // Localized
}

View file

@ -246,6 +246,7 @@
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="SharingServices\BingVisualSearchSharingService.cs" />
<Compile Include="SharingServices\CustomURLSharingService.cs" />
<Compile Include="SharingServices\DeliciousSharingService.cs" />
<Compile Include="SharingServices\EmailSharingService.cs" />

View file

@ -0,0 +1,34 @@
#region License Information (GPL v3)
/*
ShareX - A program that allows you to take screenshots and share any file type
Copyright (c) 2007-2021 ShareX Team
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Optionally you can also view the license at <http://www.gnu.org/licenses/>.
*/
#endregion License Information (GPL v3)
namespace ShareX.UploadersLib.SharingServices
{
public class BingVisualSearchSharingService : SimpleURLSharingService
{
public override URLSharingServices EnumValue { get; } = URLSharingServices.BingVisualSearch;
protected override string URLFormatString { get; } = "https://www.bing.com/images/search?view=detailv2&iss=sbi&q=imgurl:{0}";
}
}

View file

@ -177,7 +177,8 @@ private void InitializeComponent()
this.tsmiDeleteSelectedFile = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiShortenSelectedURL = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiShareSelectedURL = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiSearchImage = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiGoogleImageSearch = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiBingVisualSearch = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiShowQRCode = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiOCRImage = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiCombineImages = new System.Windows.Forms.ToolStripMenuItem();
@ -1088,7 +1089,8 @@ private void InitializeComponent()
this.tsmiDeleteSelectedFile,
this.tsmiShortenSelectedURL,
this.tsmiShareSelectedURL,
this.tsmiSearchImage,
this.tsmiGoogleImageSearch,
this.tsmiBingVisualSearch,
this.tsmiShowQRCode,
this.tsmiOCRImage,
this.tsmiCombineImages,
@ -1446,12 +1448,19 @@ private void InitializeComponent()
this.tsmiShareSelectedURL.Name = "tsmiShareSelectedURL";
resources.ApplyResources(this.tsmiShareSelectedURL, "tsmiShareSelectedURL");
//
// tsmiSearchImage
// tsmiGoogleImageSearch
//
this.tsmiSearchImage.Image = global::ShareX.Properties.Resources.Google;
this.tsmiSearchImage.Name = "tsmiSearchImage";
resources.ApplyResources(this.tsmiSearchImage, "tsmiSearchImage");
this.tsmiSearchImage.Click += new System.EventHandler(this.tsmiSearchImage_Click);
this.tsmiGoogleImageSearch.Image = global::ShareX.Properties.Resources.Google;
this.tsmiGoogleImageSearch.Name = "tsmiGoogleImageSearch";
resources.ApplyResources(this.tsmiGoogleImageSearch, "tsmiGoogleImageSearch");
this.tsmiGoogleImageSearch.Click += new System.EventHandler(this.tsmiGoogleImageSearch_Click);
//
// tsmiBingVisualSearch
//
this.tsmiBingVisualSearch.Image = global::ShareX.Properties.Resources.Bing;
this.tsmiBingVisualSearch.Name = "tsmiBingVisualSearch";
resources.ApplyResources(this.tsmiBingVisualSearch, "tsmiBingVisualSearch");
this.tsmiBingVisualSearch.Click += new System.EventHandler(this.tsmiBingVisualSearch_Click);
//
// tsmiShowQRCode
//
@ -2709,7 +2718,7 @@ private void InitializeComponent()
private System.Windows.Forms.ToolStripMenuItem tsmiCombineImages;
private System.Windows.Forms.ToolStripMenuItem tsmiOpenActionsToolbar;
private System.Windows.Forms.ToolStripMenuItem tsmiDeleteSelectedItem;
private System.Windows.Forms.ToolStripMenuItem tsmiSearchImage;
private System.Windows.Forms.ToolStripMenuItem tsmiGoogleImageSearch;
private System.Windows.Forms.Panel pNews;
private System.Windows.Forms.Button btnCloseNews;
private System.Windows.Forms.ToolStripMenuItem tsmiImageThumbnailer;
@ -2791,5 +2800,6 @@ private void InitializeComponent()
private System.Windows.Forms.ToolStripSeparator tssTrayTools4;
private System.Windows.Forms.ToolStripMenuItem tsmiCombineImagesHorizontally;
private System.Windows.Forms.ToolStripMenuItem tsmiCombineImagesVertically;
private System.Windows.Forms.ToolStripMenuItem tsmiBingVisualSearch;
}
}

View file

@ -649,7 +649,7 @@ private void UpdateInfoManager()
{
cmsTaskInfo.SuspendLayout();
tsmiStopUpload.Visible = tsmiOpen.Visible = tsmiCopy.Visible = tsmiShowErrors.Visible = tsmiShowResponse.Visible = tsmiSearchImage.Visible =
tsmiStopUpload.Visible = tsmiOpen.Visible = tsmiCopy.Visible = tsmiShowErrors.Visible = tsmiShowResponse.Visible = tsmiGoogleImageSearch.Visible =
tsmiShowQRCode.Visible = tsmiOCRImage.Visible = tsmiCombineImages.Visible = tsmiUploadSelectedFile.Visible = tsmiDownloadSelectedURL.Visible =
tsmiEditSelectedFile.Visible = tsmiAddImageEffects.Visible = tsmiRunAction.Visible = tsmiDeleteSelectedItem.Visible = tsmiDeleteSelectedFile.Visible =
tsmiShortenSelectedURL.Visible = tsmiShareSelectedURL.Visible = false;
@ -765,7 +765,7 @@ private void UpdateInfoManager()
tsmiDeleteSelectedFile.Visible = uim.SelectedItem.IsFileExist;
tsmiShortenSelectedURL.Visible = uim.SelectedItem.IsURLExist;
tsmiShareSelectedURL.Visible = uim.SelectedItem.IsURLExist;
tsmiSearchImage.Visible = uim.SelectedItem.IsURLExist;
tsmiGoogleImageSearch.Visible = uim.SelectedItem.IsURLExist;
tsmiShowQRCode.Visible = uim.SelectedItem.IsURLExist;
tsmiOCRImage.Visible = uim.SelectedItem.IsImageFile;
tsmiCombineImages.Visible = uim.SelectedItems.Count(x => x.IsImageFile) > 1;
@ -2416,9 +2416,14 @@ private void tsmiAddImageEffects_Click(object sender, EventArgs e)
uim.AddImageEffects();
}
private void tsmiSearchImage_Click(object sender, EventArgs e)
private void tsmiGoogleImageSearch_Click(object sender, EventArgs e)
{
uim.SearchImage();
uim.SearchImageUsingGoogle();
}
private void tsmiBingVisualSearch_Click(object sender, EventArgs e)
{
uim.SearchImageUsingBing();
}
private void tsmiShowQRCode_Click(object sender, EventArgs e)

View file

@ -1227,12 +1227,18 @@
<data name="tsmiShareSelectedURL.Text" xml:space="preserve">
<value>Share URL</value>
</data>
<data name="tsmiSearchImage.Size" type="System.Drawing.Size, System.Drawing">
<data name="tsmiGoogleImageSearch.Size" type="System.Drawing.Size, System.Drawing">
<value>228, 22</value>
</data>
<data name="tsmiSearchImage.Text" xml:space="preserve">
<data name="tsmiGoogleImageSearch.Text" xml:space="preserve">
<value>Google image search...</value>
</data>
<data name="tsmiBingVisualSearch.Size" type="System.Drawing.Size, System.Drawing">
<value>228, 22</value>
</data>
<data name="tsmiBingVisualSearch.Text" xml:space="preserve">
<value>Bing visual search...</value>
</data>
<data name="tsmiShowQRCode.Size" type="System.Drawing.Size, System.Drawing">
<value>228, 22</value>
</data>
@ -1375,7 +1381,7 @@
<value>Switch to thumbnail view</value>
</data>
<data name="cmsTaskInfo.Size" type="System.Drawing.Size, System.Drawing">
<value>229, 560</value>
<value>229, 582</value>
</data>
<data name="&gt;&gt;cmsTaskInfo.Name" xml:space="preserve">
<value>cmsTaskInfo</value>
@ -3075,10 +3081,16 @@
<data name="&gt;&gt;tsmiShareSelectedURL.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tsmiSearchImage.Name" xml:space="preserve">
<value>tsmiSearchImage</value>
<data name="&gt;&gt;tsmiGoogleImageSearch.Name" xml:space="preserve">
<value>tsmiGoogleImageSearch</value>
</data>
<data name="&gt;&gt;tsmiSearchImage.Type" xml:space="preserve">
<data name="&gt;&gt;tsmiGoogleImageSearch.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tsmiBingVisualSearch.Name" xml:space="preserve">
<value>tsmiBingVisualSearch</value>
</data>
<data name="&gt;&gt;tsmiBingVisualSearch.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tsmiShowQRCode.Name" xml:space="preserve">

View file

@ -747,6 +747,16 @@ public class Resources {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
public static System.Drawing.Bitmap Bing {
get {
object obj = ResourceManager.GetObject("Bing", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>

View file

@ -229,9 +229,6 @@
<data name="control" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\control.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="heart" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\heart.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="AboutForm_AboutForm_Changelog" xml:space="preserve">
<value>Changelog</value>
</data>
@ -264,6 +261,11 @@ Would you like to restart ShareX?</value>
<data name="AboutForm_AboutForm_Language_id_ID" xml:space="preserve">
<value>Indonesian</value>
</data>
<data name="ActionsToolbar_Tip" xml:space="preserve">
<value>Hold left down to drag
Right click to open menu
Middle click to close</value>
</data>
<data name="application_browser" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\application-browser.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@ -339,6 +341,12 @@ Would you like to restart ShareX?</value>
<data name="monitor" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\monitor.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="FileExistForm_txtNewName_TextChanged_Use_new_name__" xml:space="preserve">
<value>Use new name: </value>
</data>
<data name="clipboard_block" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\clipboard-block.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="UploadTask_DoUploadJob_First_time_upload_warning_text" xml:space="preserve">
<value>Are you sure you want to upload this screenshot?
Press 'No' to cancel the current upload and disable screenshot auto uploading.</value>
@ -349,9 +357,6 @@ Press 'No' to cancel the current upload and disable screenshot auto uploading.</
<data name="MainForm_UpdateMenu_Show_menu" xml:space="preserve">
<value>Show menu</value>
</data>
<data name="FFmpeg_FFmpeg_video_and_audio_source_both_can_t_be__None__" xml:space="preserve">
<value>FFmpeg video and audio source can't both be "None".</value>
</data>
<data name="globe__arrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\globe--arrow.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@ -405,9 +410,6 @@ Would you like to automatically download it?</value>
<data name="UploadManager_UploadURL_URL_to_download_from_and_upload" xml:space="preserve">
<value>URL to download and upload</value>
</data>
<data name="ClipboardContentViewer_ClipboardContentViewer_Load_Clipboard_content__Text__Length___0__" xml:space="preserve">
<value>Clipboard content: Text (Length: {0})</value>
</data>
<data name="TaskSettingsForm_txtNameFormatPatternActiveWindow_TextChanged_Preview_" xml:space="preserve">
<value>Preview:</value>
</data>
@ -423,12 +425,19 @@ Would you like to automatically download it?</value>
<data name="AutoCaptureForm_UpdateRegion_X___0___Y___1___Width___2___Height___3_" xml:space="preserve">
<value>X: {0}, Y: {1}, Width: {2}, Height: {3}</value>
</data>
<data name="ApplicationSettingsForm_btnResetSettings_Click_WouldYouLikeToResetShareXSettings" xml:space="preserve">
<value>Would you like to reset ShareX settings?</value>
<data name="heart" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\heart.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="BeforeUploadForm_BeforeUploadForm__0__is_about_to_be_uploaded_to__1___You_may_choose_a_different_destination_" xml:space="preserve">
<value>{0} is about to be uploaded to {1}. You may choose a different destination.</value>
</data>
<data name="HotkeyManager_ShowFailedHotkeys_Unable_to_register_hotkey" xml:space="preserve">
<value>Unable to register {0}:
{1}
Please select a different hotkey or quit the conflicting application and reopen ShareX.</value>
</data>
<data name="DropForm_DrawDropImage_Drop_here" xml:space="preserve">
<value>Drop
here</value>
@ -455,6 +464,9 @@ Are you sure you want to continue?</value>
<data name="application_list" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\application-list.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="TaskSettingsForm_UpdateUploaderMenuNames_URL_shortener___0_" xml:space="preserve">
<value>URL shortener: {0}</value>
</data>
<data name="crown" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\crown.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@ -488,8 +500,8 @@ Are you sure you want to continue?</value>
<data name="Patreon_32x32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Patreon-32x32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="FileExistForm_txtNewName_TextChanged_Use_new_name__" xml:space="preserve">
<value>Use new name: </value>
<data name="camera" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\camera.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="wrench_screwdriver" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\wrench-screwdriver.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -515,8 +527,8 @@ Are you sure you want to continue?</value>
<data name="ApplicationSettingsForm_cbStartWithWindows_EnabledByPolicy_Text" xml:space="preserve">
<value>Startup has been enabled by your organization</value>
</data>
<data name="ApplicationSettingsForm_btnBrowsePersonalFolderPath_Click_Choose_ShareX_personal_folder_path" xml:space="preserve">
<value>Choose ShareX personal folder path</value>
<data name="clock_select" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\clock-select.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="WorkerTask_GetInvalidConfigResult__0__configuration_is_invalid_or_missing__Please_check__Destination_settings__window_to_configure_it_" xml:space="preserve">
<value>{0} configuration is invalid or missing. Please check "Destination settings" window to configure it.</value>
@ -545,6 +557,9 @@ Are you sure you want to continue?</value>
<data name="ir" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ir.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="application-tile-vertical" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\application-tile-vertical.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ui_scroll_pane_image" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ui-scroll-pane-image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@ -595,8 +610,8 @@ You can later disable it from "After capture tasks" menu.</value>
<data name="disk_rename" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\disk-rename.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="clipboard_block" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\clipboard-block.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="cross" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cross.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="image_export" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\image-export.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -735,8 +750,8 @@ Would you like to restart ShareX?</value>
<data name="folder_stand" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\folder-stand.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="TaskSettingsForm_UpdateUploaderMenuNames_URL_shortener___0_" xml:space="preserve">
<value>URL shortener: {0}</value>
<data name="ApplicationSettingsForm_btnBrowsePersonalFolderPath_Click_Choose_ShareX_personal_folder_path" xml:space="preserve">
<value>Choose ShareX personal folder path</value>
</data>
<data name="pt" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\pt.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -837,12 +852,8 @@ Would you like to restart ShareX?</value>
<data name="AboutForm_AboutForm_Language_ru" xml:space="preserve">
<value>Russian</value>
</data>
<data name="HotkeyManager_ShowFailedHotkeys_Unable_to_register_hotkey" xml:space="preserve">
<value>Unable to register {0}:
{1}
Please select a different hotkey or quit the conflicting application and reopen ShareX.</value>
<data name="FFmpeg_FFmpeg_video_and_audio_source_both_can_t_be__None__" xml:space="preserve">
<value>FFmpeg video and audio source can't both be "None".</value>
</data>
<data name="layer_shape" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\layer-shape.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -850,9 +861,6 @@ Please select a different hotkey or quit the conflicting application and reopen
<data name="IntegrationHelpers_UploadWithShareX" xml:space="preserve">
<value>Upload with ShareX</value>
</data>
<data name="clock_select" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\clock-select.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="inbox" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\inbox.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@ -902,6 +910,9 @@ Please run ShareX as administrator to change personal folder path.</value>
<data name="images_stack" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\images-stack.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ApplicationSettingsForm_btnResetSettings_Click_WouldYouLikeToResetShareXSettings" xml:space="preserve">
<value>Would you like to reset ShareX settings?</value>
</data>
<data name="layout_select_sidebar" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\layout-select-sidebar.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@ -920,9 +931,6 @@ Please run ShareX as administrator to change personal folder path.</value>
<data name="color" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\color.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="camera" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\camera.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="image_saturation" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\image-saturation.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@ -1001,10 +1009,8 @@ Please run ShareX as administrator to change personal folder path.</value>
<data name="tick_button" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\tick-button.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ActionsToolbar_Tip" xml:space="preserve">
<value>Hold left down to drag
Right click to open menu
Middle click to close</value>
<data name="ClipboardContentViewer_ClipboardContentViewer_Load_Clipboard_content__Text__Length___0__" xml:space="preserve">
<value>Clipboard content: Text (Length: {0})</value>
</data>
<data name="navigation_000_button" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\navigation-000-button.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@ -1021,9 +1027,6 @@ Middle click to close</value>
<data name="drive_upload" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\drive-upload.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="cross" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cross.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="HotkeyManager_ShowFailedHotkeys_Hotkey_registration_failed" xml:space="preserve">
<value>Hotkey registration failed</value>
</data>
@ -1079,7 +1082,7 @@ Middle click to close</value>
<data name="TaskCompletedSound" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\TaskCompletedSound.wav;System.IO.MemoryStream, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="application-tile-vertical" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\application-tile-vertical.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="Bing" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Bing.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

BIN
ShareX/Resources/Bing.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View file

@ -1896,6 +1896,9 @@
<ItemGroup>
<None Include="Resources\application-tile-vertical.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\Bing.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PostBuildEvent>

View file

@ -1075,11 +1075,16 @@ public static void OpenRuler(TaskSettings taskSettings = null)
RegionCaptureTasks.ShowScreenRuler(taskSettings.CaptureSettings.SurfaceOptions);
}
public static void SearchImage(string url)
public static void SearchImageUsingGoogle(string url)
{
new GoogleImageSearchSharingService().CreateSharer(null, null).ShareURL(url);
}
public static void SearchImageUsingBing(string url)
{
new BingVisualSearchSharingService().CreateSharer(null, null).ShareURL(url);
}
public static async Task OCRImage(TaskSettings taskSettings = null)
{
if (IsUploadAllowed())

View file

@ -372,9 +372,14 @@ public void ShareURL(URLSharingServices urlSharingService)
if (IsItemSelected && SelectedItem.IsURLExist) UploadManager.ShareURL(SelectedItem.Info.Result.ToString(), urlSharingService);
}
public void SearchImage()
public void SearchImageUsingGoogle()
{
if (IsItemSelected && SelectedItem.IsURLExist) TaskHelpers.SearchImage(SelectedItem.Info.Result.URL);
if (IsItemSelected && SelectedItem.IsURLExist) TaskHelpers.SearchImageUsingGoogle(SelectedItem.Info.Result.URL);
}
public void SearchImageUsingBing()
{
if (IsItemSelected && SelectedItem.IsURLExist) TaskHelpers.SearchImageUsingBing(SelectedItem.Info.Result.URL);
}
public void ShowQRCode()