Git Product home page Git Product logo

quicksearch-for-playnite's People

Contributors

canranban avatar felixkmh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

quicksearch-for-playnite's Issues

[Bug] Failed to load plugin settings

When trying to open the settings for the plugin I get "Failed to load plugin settings"

Here's the log entry from playnite.log

27-06 14:49:00.345|ERROR|PluginSettingsHelper:Failed to load plugin settings, 6a604592-7001-4b4e-a3be-91073b459e2b
Newtonsoft.Json.JsonSerializationException: Error setting value to 'EnableGlobalHotkey' on 'QuickSearch.SearchSettings'. ---> System.NullReferenceException: Object reference not set to an instance of an object.
at QuickSearch.SearchPlugin.RegisterGlobalHotkey() in E:\Programmierung\playnite-dev\QuickSearch\source\SearchPlugin.cs:line 147
at QuickSearch.SearchSettings.set_EnableGlobalHotkey(Boolean value) in E:\Programmierung\playnite-dev\QuickSearch\source\Settings\SearchSettings.cs:line 139
at SetEnableGlobalHotkey(Object , Object )
at Newtonsoft.Json.Serialization.DynamicValueProvider.SetValue(Object target, Object value)
--- End of inner exception stack trace ---
at Newtonsoft.Json.Serialization.DynamicValueProvider.SetValue(Object target, Object value)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
at QuickSearch.SearchSettings.BeginEdit() in E:\Programmierung\playnite-dev\QuickSearch\source\Settings\SearchSettings.cs:line 248
at Playnite.DesktopApp.ViewModels.PluginSettingsHelper.GetPluginSettingsView(Guid pluginId, ExtensionFactory extensions, Dictionary`2 loadedPluginSettings) in C:\projects\playnite\source\Playnite.DesktopApp\PluginSettingsHelper.cs:line 48
27-06 14:49:02.726|DEBUG|WindowFactory:Closing window Playnite.DesktopApp.Windows.AddonsWindowFactory, False.

[Feature Request] Allow QuickSearch to be launched outside of playnite

I am not entirely sure that this is even possible, but I would love it if it the QuickSearch prompt could popup if pressing certain hotkeys without having Playnite focused.

Akin to pressing windows button and start typing to search for software, it could quickly pop up, allow you to find the game you want and launch it.

[Feature Request] Option to only show installed games during search

I have found that it can be difficult to find some games to play because it mixes games that are uninstalled in the list so this should help. Personally I think only installed games should be in the search by default because you are not installing games constantly but not sure.

For example, typing Dark Souls gives me an uninstalled and unplayable game

image

[Feature Request] Support searching for tags

Currently QuickSearch doesn't seem to support searching on tags as a filter (or it isn't working for me).

When using the Steam Tags Importer and/or PCGamingWiki metadata source you can end up with a very large number of tags that Playnite doesn't have a way to quick filter on (I have over 500). QuickSearch seems like the perfect solution for this.

IsThereAnyDeal error prevents other search results being shown

26-05 15:07:29.520|DEBUG|QuickSearch#SearchPlugin:Failed request to ITAD
System.Net.Http.HttpRequestException: Response status code does not indicate success: 500 (Internal Server Error).
26-05 15:07:29.520|DEBUG|QuickSearch#SearchPlugin:Failed request to ITAD
System.Net.Http.HttpRequestException: Response status code does not indicate success: 500 (Internal Server Error).

I was wondering why I wasn't getting any results at all, and found this.

[Bug] QuickSearch can't load, when Sharenite enabled

When running QuickSearch alongside Searchnite plugin, QuickSearch doesn't load.

Here's what's in playnite.log:

05-09 12:02:19.629|ERROR|ExtensionFactory:Failed to execute OnApplicationStarted method from QuickSearch plugin.
System.NullReferenceException: Object reference not set to an instance of an object.
   at QuickSearch.SearchItems.ExtensionItemSource..ctor(SearchPlugin searchPlugin) in E:\Programmierung\playnite-dev\QuickSearch\source\SearchItems\ExtensionItemSource.cs:line 93
   at QuickSearch.SearchPlugin.OnApplicationStarted(OnApplicationStartedEventArgs args) in E:\Programmierung\playnite-dev\QuickSearch\source\SearchPlugin.cs:line 324
   at Playnite.Plugins.ExtensionFactory.NotifiyOnApplicationStarted() in C:\projects\playnite\source\Playnite\Plugins\ExtensionFactory.cs:line 710

Seems to be pointing at function that get main menu items, and Sharenite is creating one here https://github.com/sharenite/playnite-sharenite/blob/64e95fb0df18aa525482533a6b2244fa56c4b6cd/Sharenite.cs#L46.

[bug] Global Shortcut not working

I've set the global shortcut to several different things and it doesn't work.

Also if I press a button that I have set up lik f13, it adds "none + f13" but it still doesn't work. But no actual shortcuts are working.

It would also be helpful to be able to add the windows key to the shortcut, that's how I would handle it.

[Feature Request] URI for opening QuickSearch

I would like to be able to open the QuickSearch by running a URI along the lines of playnite://QuickSearch.

I use a quick launcher (PowerToys Run) so the global hotkey adds a functionality similar to what I already have, and would like to run it from that using that URI via that software or a shortcut.

https://playnite.link/docs/master/tutorials/extensions/uriSupport.html

EDIT: I made this issue before realizing Global Search was added in 10 and has a lot of the functionality of this plugin, so I should probably look into it there instead lol

[Bug] Search popup hotkeys not working

Hotkeys (local and global) for the search popup is not working (Changed, disable and re-enable them)

The only error I could find in the logs is this part in the playnite.log

01-07 17:42:19.530|ERROR|ExtensionFactory:Failed to execute OnApplicationStarted method from QuickSearch plugin.
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
   at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
   at QuickSearch.SearchItems.ExtensionItemSource..ctor(SearchPlugin searchPlugin) in E:\Programmierung\playnite-dev\QuickSearch\source\SearchItems\ExtensionItemSource.cs:line 65
   at QuickSearch.SearchPlugin.OnApplicationStarted(OnApplicationStartedEventArgs args) in E:\Programmierung\playnite-dev\QuickSearch\source\SearchPlugin.cs:line 324
   at Playnite.Plugins.ExtensionFactory.NotifiyOnApplicationStarted() in C:\projects\playnite\source\Playnite\Plugins\ExtensionFactory.cs:line 710

[Feature Request] Option to use cover art in place of icon

Many games are missing icons and are harder to grok visually when searching.

It would be amazing if we had an option to either use cover arts in place of missing icons or to optionally only use cover arts instead of icons in the pop up window

[Bug] Diacritics not fully ignored

As of now, a game named "Astérix" can be found by typing "Asterix", however not all diacritics currently support this behavior. Please add support for basic substitution of the macron (ā, ī, ū, ē, ō as a, i, u, e, o).

Playnite (9.6) search behaviour isn't being overwritten

The extension has been working perfectly for weeks so I'm kind of puzzled as to what is suddenly causing the issue, but here goes : currently, the default search behaviour (non global Ctrl+F) has stopped working completely, including when trying to change the shortcut, with CTRL+F now reverting to Playnite's default search bar. The global shortcut does work, but it too seems to be only partially functionnal (transparency is gone, for example)

This is happening with version 2.11.5 of the extension regardless of themes or other installed extensions. I've tried reinstalling the extension to no avail, but the parameters seem to be restored even when deleting the corresponding folder, so I'll have to verify that the issue isn't on my end with a portable installation.

Crash on Playnite 9 Beta 2

I get this while I try to launch the search dialog with both the global and local hot key:

System.Windows.Markup.XamlParseException: Provide value on 'System.Windows.Baml2006.TypeConverterMarkupExtension' threw an exception. ---> System.OverflowException: The image data generated an overflow during processing. ---> System.ArithmeticException: Overflow or underflow in the arithmetic operation.
   --- End of inner exception stack trace ---
   at System.Windows.Media.Imaging.ColorConvertedBitmap.FinalizeCreation()
   at System.Windows.Media.Imaging.ColorConvertedBitmap..ctor(BitmapSource source, ColorContext sourceColorContext, ColorContext destinationColorContext, PixelFormat format)
   at System.Windows.Media.Imaging.BitmapSource.CreateCachedBitmap(BitmapFrame frame, BitmapSourceSafeMILHandle wicSource, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, BitmapPalette palette)
   at System.Windows.Media.Imaging.BitmapFrameDecode.FinalizeCreation()
   at System.Windows.Media.Imaging.BitmapFrameDecode..ctor(Int32 frameNumber, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, BitmapDecoder decoder)
   at System.Windows.Media.Imaging.BitmapDecoder.SetupFrames(BitmapDecoder decoder, ReadOnlyCollection`1 frames)
   at System.Windows.Media.Imaging.BitmapDecoder.get_Frames()
   at System.Windows.Media.Imaging.BitmapFrame.CreateFromUriOrStream(Uri baseUri, Uri uri, Stream stream, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, RequestCachePolicy uriCachePolicy)
   at System.Windows.Media.ImageSourceConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
   at System.Windows.Baml2006.TypeConverterMarkupExtension.ProvideValue(IServiceProvider serviceProvider)
   at MS.Internal.Xaml.Runtime.ClrObjectRuntime.CallProvideValue(MarkupExtension me, IServiceProvider serviceProvider)
   --- End of inner exception stack trace ---
   at System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
   at System.Windows.Markup.WpfXamlLoader.LoadDeferredContent(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings parentSettings, Uri baseUri)
   at System.Windows.ResourceDictionary.CreateObject(KeyRecord key)
   at System.Windows.ResourceDictionary.OnGettingValue(Object key, Object& value, Boolean& canCache)
   at System.Windows.ResourceDictionary.OnGettingValuePrivate(Object key, Object& value, Boolean& canCache)
   at System.Windows.ResourceDictionary.GetValueWithoutLock(Object key, Boolean& canCache)
   at System.Windows.ResourceDictionary.GetValue(Object key, Boolean& canCache)
   at System.Windows.DeferredResourceReference.GetValue(BaseValueSourceInternal valueSource)
   at System.Windows.DependencyObject.GetEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, RequestFlags requests)
   at System.Windows.DependencyObject.GetValueEntry(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, RequestFlags requests)
   at System.Windows.DependencyObject.GetValue(DependencyProperty dp)
   at System.Windows.Controls.Border.get_Background()
   at System.Windows.Controls.Border.OnRender(DrawingContext dc)
   at System.Windows.UIElement.Arrange(Rect finalRect)
   at System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   at System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   at System.Windows.UIElement.Arrange(Rect finalRect)
   at System.Windows.Media.VisualBrush.DoLayout(UIElement element)
   at System.Windows.Media.VisualBrush.OnLayoutUpdated(Object sender, EventArgs args)
   at System.Windows.ContextLayoutManager.fireLayoutUpdateEvent()
   at System.Windows.ContextLayoutManager.UpdateLayout()
   at System.Windows.UIElement.UpdateLayout()
   at System.Windows.Interop.HwndSource.SetLayoutSize()
   at System.Windows.Interop.HwndSource.set_RootVisualInternal(Visual value)
   at System.Windows.Interop.HwndSource.set_RootVisual(Visual value)
   at System.Windows.Window.SetRootVisual()
   at System.Windows.Window.SetRootVisualAndUpdateSTC()
   at System.Windows.Window.SetupInitialState(Double requestedTop, Double requestedLeft, Double requestedWidth, Double requestedHeight)
   at System.Windows.Window.CreateSourceWindow(Boolean duringShow)
   at System.Windows.Window.CreateSourceWindowDuringShow()
   at System.Windows.Window.SafeCreateWindowDuringShow()
   at System.Windows.Window.ShowHelper(Object booleanBox)
   at System.Windows.Window.Show()
   at QuickSearch.SearchPlugin.ToggleSearch() in D:\Programmierung\playnite-dev\QuickSearch\source\SearchPlugin.cs:line 453
   at QuickSearch.SearchPlugin.GlobalHotkeyCallback(IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) in D:\Programmierung\playnite-dev\QuickSearch\source\SearchPlugin.cs:line 184
   at System.Windows.Interop.HwndSource.PublicHooksFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at System.Windows.Application.Run(Window window)
   at Playnite.DesktopApp.ProgramEntry.Main(String[] args) in E:\Devel\Playnite\source\Playnite.DesktopApp\ProgramEntry.cs:line 61

QuickSearch not actually searching

Having used your plugin before Playnite 9 without any issues, I installed it (and removed the old one) but have been simply unable to search anything. Everything is fully updated, Playnite 9.4 and QuickSearch 2.11.1.

The search is blank, it barely actually seems to be "loading" the searches when typing it out.

There is nothing in the extensions.log during these searches, nor anything that is related to QuickSearch.

I have tried to change all the settings, from on and off to one end of the slider to the other. Nothing had any sort of effect. I have also tried a few different themes with nothing to show for it.

Best way I could show it was with a short video: https://i.imgur.com/eBFU3Sb.mp4

I have been with Playnite since the very start and after this update, I am afraid I might have to start from scratch, due to some strange issues like this. I'd really rather not, if it can be avoided. :)

Let me know if I can give you other information.

[Feature Request] Add option to default to "show" rather than "install" or "play"

In my usage, I have the main screen show only installed games, but find myself needing to check whether I have a particular game in the library quite often and use your excellent extension for that purpose. At the moment, if I want to navigate to a found game to check/add notes or whatever, I first have to manually switch to "show" to avoid starting to install it. I've already been burned by the muscle memory of immediately hitting enter after seeing a viable first result a few times.

Unrecoverable error on latest release

v2.3.1

When trying to open the search window

image

Nothing in extensions log.

Playnite log:

24-09 06:41:46.448|ERROR|PlayniteApplication:Unhandled exception occured.
System.NullReferenceException: Object reference not set to an instance of an object.
   en QuickSearch.SearchPlugin.<>c.<ToggleSearch>b__39_0(GenericPlugin pl) en D:\Programmierung\playnite-dev\QuickSearch\source\SearchPlugin.cs:línea 390
   en System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
   en QuickSearch.SearchPlugin.ToggleSearch() en D:\Programmierung\playnite-dev\QuickSearch\source\SearchPlugin.cs:línea 392
   en QuickSearch.SearchPlugin.ActionCommand.Execute(Object parameter) en D:\Programmierung\playnite-dev\QuickSearch\source\SearchPlugin.cs:línea 131
   en System.Windows.Input.CommandManager.TranslateInput(IInputElement targetElement, InputEventArgs inputEventArgs)
   en System.Windows.UIElement.OnKeyDownThunk(Object sender, KeyEventArgs e)
   en System.Windows.Input.KeyEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   en System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   en System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   en System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   en System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   en System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   en System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
   en System.Windows.Input.InputManager.ProcessStagingArea()
   en System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
   en System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
   en System.Windows.Interop.HwndKeyboardInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawKeyboardActions actions, Int32 scanCode, Boolean isExtendedKey, Boolean isSystemKey, Int32 virtualKey)
   en System.Windows.Interop.HwndKeyboardInputProvider.ProcessKeyAction(MSG& msg, Boolean& handled)
   en System.Windows.Interop.HwndSource.CriticalTranslateAccelerator(MSG& msg, ModifierKeys modifiers)
   en System.Windows.Interop.HwndSource.OnPreprocessMessage(Object param)
   en System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   en System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   en System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   en System.Windows.Threading.Dispatcher.Invoke(DispatcherPriority priority, Delegate method, Object arg)
   en System.Windows.Interop.HwndSource.OnPreprocessMessageThunk(MSG& msg, Boolean& handled)
   en System.Windows.Interop.HwndSource.WeakEventPreprocessMessage.OnPreprocessMessage(MSG& msg, Boolean& handled)
   en System.Windows.Interop.ComponentDispatcherThread.RaiseThreadMessage(MSG& msg)
   en System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   en System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   en System.Windows.Application.RunDispatcher(Object ignore)
   en System.Windows.Application.RunInternal(Window window)
   en System.Windows.Application.Run(Window window)
   en Playnite.DesktopApp.ProgramEntry.Main(String[] args) en E:\Devel\Playnite\source\Playnite.DesktopApp\ProgramEntry.cs:línea 61
24-09 06:41:46.480|DEBUG|WindowFactory:Show dialog window Playnite.Windows.ExtensionCrashHandlerWindowFactory

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.