Fix search suggestions hangup, apt search. Need to fix multiline though
This commit is contained in:
parent
a47e17dfbf
commit
5e69fefe8e
@ -32,7 +32,7 @@ import matemenu
|
|||||||
|
|
||||||
from user import home
|
from user import home
|
||||||
|
|
||||||
Gdk.threads_init()
|
GObject.threads_init()
|
||||||
|
|
||||||
# i18n
|
# i18n
|
||||||
gettext.install("mintmenu", "/usr/share/linuxmint/locale")
|
gettext.install("mintmenu", "/usr/share/linuxmint/locale")
|
||||||
@ -187,7 +187,7 @@ class SuggestionButton ( Gtk.Button ):
|
|||||||
self.image.show()
|
self.image.show()
|
||||||
HBox1.pack_start( self.image, False, False, 5 )
|
HBox1.pack_start( self.image, False, False, 5 )
|
||||||
self.label = Gtk.Label()
|
self.label = Gtk.Label()
|
||||||
self.label.set_ellipsize( Pango.EllipsizeMode.END )
|
#self.label.set_ellipsize( Pango.EllipsizeMode.END )
|
||||||
self.label.set_alignment( 0.0, 1.0 )
|
self.label.set_alignment( 0.0, 1.0 )
|
||||||
self.label.show()
|
self.label.show()
|
||||||
labelBox.pack_start( self.label, False, False, 0 )
|
labelBox.pack_start( self.label, False, False, 0 )
|
||||||
@ -648,13 +648,8 @@ class pluginclass( object ):
|
|||||||
def add_apt_filter_results(self, keyword):
|
def add_apt_filter_results(self, keyword):
|
||||||
try:
|
try:
|
||||||
# Wait to see if the keyword has changed.. before doing anything
|
# Wait to see if the keyword has changed.. before doing anything
|
||||||
time.sleep(0.3)
|
|
||||||
current_keyword = keyword
|
current_keyword = keyword
|
||||||
Gdk.threads_enter()
|
|
||||||
try:
|
|
||||||
current_keyword = self.searchEntry.get_text()
|
current_keyword = self.searchEntry.get_text()
|
||||||
finally:
|
|
||||||
Gdk.threads_leave()
|
|
||||||
if keyword != current_keyword:
|
if keyword != current_keyword:
|
||||||
return
|
return
|
||||||
found_packages = []
|
found_packages = []
|
||||||
@ -697,8 +692,6 @@ class pluginclass( object ):
|
|||||||
break
|
break
|
||||||
found_packages.extend(found_in_name)
|
found_packages.extend(found_in_name)
|
||||||
found_packages.extend(found_elsewhere)
|
found_packages.extend(found_elsewhere)
|
||||||
Gdk.threads_enter()
|
|
||||||
try:
|
|
||||||
if keyword == self.searchEntry.get_text() and len(found_packages) > 0:
|
if keyword == self.searchEntry.get_text() and len(found_packages) > 0:
|
||||||
last_separator = Gtk.EventBox()
|
last_separator = Gtk.EventBox()
|
||||||
last_separator.add(Gtk.HSeparator())
|
last_separator.add(Gtk.HSeparator())
|
||||||
@ -713,7 +706,7 @@ class pluginclass( object ):
|
|||||||
for word in keywords:
|
for word in keywords:
|
||||||
if word != "":
|
if word != "":
|
||||||
name = name.replace(word, "<b>%s</b>" % word);
|
name = name.replace(word, "<b>%s</b>" % word);
|
||||||
suggestionButton = SuggestionButton(gtk.STOCK_ADD, self.iconSize, "")
|
suggestionButton = SuggestionButton(Gtk.STOCK_ADD, self.iconSize, "")
|
||||||
suggestionButton.connect("clicked", self.apturl_install, pkg.name)
|
suggestionButton.connect("clicked", self.apturl_install, pkg.name)
|
||||||
suggestionButton.set_text(_("Install package '%s'") % name)
|
suggestionButton.set_text(_("Install package '%s'") % name)
|
||||||
suggestionButton.set_tooltip_text("%s\n\n%s\n\n%s" % (pkg.name, pkg.summary, pkg.description))
|
suggestionButton.set_tooltip_text("%s\n\n%s\n\n%s" % (pkg.name, pkg.summary, pkg.description))
|
||||||
@ -722,8 +715,6 @@ class pluginclass( object ):
|
|||||||
self.suggestions.append(suggestionButton)
|
self.suggestions.append(suggestionButton)
|
||||||
#if cache != self.current_results:
|
#if cache != self.current_results:
|
||||||
# self.current_results.append(pkg)
|
# self.current_results.append(pkg)
|
||||||
finally:
|
|
||||||
Gdk.threads_leave()
|
|
||||||
|
|
||||||
#if len(found_packages) == 0:
|
#if len(found_packages) == 0:
|
||||||
# gtk.gdk.threads_enter()
|
# gtk.gdk.threads_enter()
|
||||||
@ -810,13 +801,12 @@ class pluginclass( object ):
|
|||||||
#if (len(self.current_results) > 0):
|
#if (len(self.current_results) > 0):
|
||||||
#self.add_apt_filter_results_sync(self.current_results, text)
|
#self.add_apt_filter_results_sync(self.current_results, text)
|
||||||
#else:
|
#else:
|
||||||
thr = threading.Thread(name="mint-menu-apt-filter", group=None, target=self.add_apt_filter_results, args=([text]), kwargs={})
|
GObject.timeout_add (300, self.add_apt_filter_results, text)
|
||||||
thr.start()
|
|
||||||
else:
|
else:
|
||||||
self.current_results = []
|
self.current_results = []
|
||||||
self.add_search_suggestions(text)
|
self.add_search_suggestions(text)
|
||||||
thr = threading.Thread(name="mint-menu-apt-filter", group=None, target=self.add_apt_filter_results, args=([text]), kwargs={})
|
GObject.timeout_add (300, self.add_apt_filter_results, text)
|
||||||
thr.start()
|
|
||||||
self.current_suggestion = text
|
self.current_suggestion = text
|
||||||
else:
|
else:
|
||||||
self.current_suggestion = None
|
self.current_suggestion = None
|
||||||
|
Loading…
Reference in New Issue
Block a user