Clean up deprecated code and fix multiple issues
- Remove deprecated markdown_preview plugin and re-wrote - Renamed alt_provider.py under words completer - Fix words completion provider logic and cache handling - Fix container orientations (VERTICAL -> HORIZONTAL) and add Separators - Remove unused Gtk imports from search_replace plugin - Fix event creation parameter order in source_file.py - Fix typo in source_view.py (_load_pretify_json -> _load_prettify_json) - Refactor webkit_ui with new load methods and enhanced settings
This commit is contained in:
@@ -32,8 +32,23 @@ class Provider(GtkSource.CompletionWords):
|
||||
return 'Words Completion'
|
||||
|
||||
def do_match(self, context):
|
||||
# Note: If provider is in interactive activation then need to check
|
||||
# view focus as otherwise non focus views start trying to grab it.
|
||||
completion = context.get_property("completion")
|
||||
if not completion.get_view().has_focus(): return
|
||||
|
||||
word = self.response_cache.get_word(context)
|
||||
if not word or len(word) < 2: return False
|
||||
|
||||
iter = self.response_cache.get_iter_correctly(context)
|
||||
iter.backward_char()
|
||||
ch = iter.get_char()
|
||||
# NOTE: Look to re-add or apply supprting logic to use spaces
|
||||
# As is it slows down the editor in certain contexts...
|
||||
# if not (ch in ('_', '.', ' ') or ch.isalnum()):
|
||||
if not (ch in ('_', '.') or ch.isalnum()):
|
||||
return False
|
||||
|
||||
return True
|
||||
|
||||
def do_get_priority(self):
|
||||
@@ -0,0 +1,29 @@
|
||||
# Python imports
|
||||
|
||||
# Lib imports
|
||||
|
||||
# Application imports
|
||||
from libs.event_factory import Code_Event_Types
|
||||
|
||||
from core.widgets.code.completion_providers.provider_response_cache_base import ProviderResponseCacheBase
|
||||
|
||||
|
||||
|
||||
class ProviderResponseCache(ProviderResponseCacheBase):
|
||||
def __init__(self):
|
||||
super(ProviderResponseCache, self).__init__()
|
||||
|
||||
self.matchers: dict = {}
|
||||
|
||||
|
||||
def process_file_load(self, event: Code_Event_Types.AddedNewFileEvent):
|
||||
...
|
||||
|
||||
def process_file_close(self, event: Code_Event_Types.RemovedFileEvent):
|
||||
...
|
||||
|
||||
def process_file_save(self, event: Code_Event_Types.SavedFileEvent):
|
||||
...
|
||||
|
||||
def process_file_change(self, event: Code_Event_Types.TextChangedEvent):
|
||||
...
|
||||
@@ -18,7 +18,7 @@ class Provider(GObject.GObject, GtkSource.CompletionProvider):
|
||||
This is a Words Completion Provider.
|
||||
# NOTE: used information from here --> https://warroom.rsmus.com/do-that-auto-complete/
|
||||
"""
|
||||
# __gtype_name__ = 'WordsCompletionProvider'
|
||||
__gtype_name__ = 'WordsCompletionProvider'
|
||||
|
||||
def __init__(self):
|
||||
super(Provider, self).__init__()
|
||||
@@ -37,6 +37,16 @@ class Provider(GObject.GObject, GtkSource.CompletionProvider):
|
||||
|
||||
word = self.response_cache.get_word(context)
|
||||
if not word or len(word) < 2: return False
|
||||
|
||||
iter = self.response_cache.get_iter_correctly(context)
|
||||
iter.backward_char()
|
||||
ch = iter.get_char()
|
||||
# NOTE: Look to re-add or apply supprting logic to use spaces
|
||||
# As is it slows down the editor in certain contexts...
|
||||
# if not (ch in ('_', '.', ' ') or ch.isalnum()):
|
||||
if not (ch in ('_', '.') or ch.isalnum()):
|
||||
return False
|
||||
|
||||
return True
|
||||
|
||||
def do_get_priority(self):
|
||||
|
||||
@@ -90,7 +90,8 @@ class ProviderResponseCache(ProviderResponseCacheBase):
|
||||
self.matchers[buffer] = set()
|
||||
|
||||
def load_into_set(self, buffer, new_words):
|
||||
self.matchers[buffer].update(new_words)
|
||||
# self.matchers[buffer].update(new_words)
|
||||
self.matchers[buffer] = new_words
|
||||
|
||||
def load_as_new_set(self, buffer, data):
|
||||
self.matchers[buffer] = self.get_all_words(data)
|
||||
|
||||
Reference in New Issue
Block a user