[meld: 8/63] filediff: Do less work when starting a load, and de-yieldify
- From: Kai Willadsen <kaiw src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [meld: 8/63] filediff: Do less work when starting a load, and de-yieldify
- Date: Wed, 16 Dec 2015 21:19:38 +0000 (UTC)
commit 7d444bf47ae8ea3bf73e63392cfd96113e5b6f6a
Author: Kai Willadsen <kai willadsen gmail com>
Date: Sun Jul 19 10:19:42 2015 +1000
filediff: Do less work when starting a load, and de-yieldify
Since we're now doing async file loading, there's no need to do our
cooperative multitasking dance here. While we're at it, we didn't need
to be doing some of the other on-load stuff, so stop it.
meld/filediff.py | 15 +++++----------
meld/filemerge.py | 3 +--
2 files changed, 6 insertions(+), 12 deletions(-)
---
diff --git a/meld/filediff.py b/meld/filediff.py
index b75ac01..e741484 100644
--- a/meld/filediff.py
+++ b/meld/filediff.py
@@ -1034,22 +1034,18 @@ class FileDiff(melddoc.MeldDoc, gnomeglade.Component):
self.recompute_label()
self.textview[len(files) >= 2].grab_focus()
self._connect_buffer_handlers()
- self.scheduler.add_task(self._set_files_internal(files))
+ self._set_files_internal(files)
def get_comparison(self):
files = [b.data.filename for b in self.textbuffer[:self.num_panes]]
return recent.TYPE_FILE, files
def _load_files(self, files, textbuffers):
- self.undosequence.clear()
- yield _("[%s] Set num panes") % self.label_text
- self.set_num_panes( len(files) )
+ if len(files) != self.num_panes:
+ return
self._disconnect_buffer_handlers()
+ self.undosequence.clear()
self.linediffer.clear()
- self.queue_draw()
-
- yield _("[%s] Opening files") % self.label_text
- tasks = []
for pane, filename in enumerate(files):
if not filename:
@@ -1154,8 +1150,7 @@ class FileDiff(melddoc.MeldDoc, gnomeglade.Component):
self.textbuffer[i].set_language(langs[i])
def _set_files_internal(self, files):
- for i in self._load_files(files, self.textbuffer):
- yield i
+ self._load_files(files, self.textbuffer)
def _compare_files_internal(self):
for i in self._diff_files():
diff --git a/meld/filemerge.py b/meld/filemerge.py
index 9f2e85c..8d3d637 100644
--- a/meld/filemerge.py
+++ b/meld/filemerge.py
@@ -36,8 +36,7 @@ class FileMerge(filediff.FileDiff):
def _set_files_internal(self, files):
self.textview[1].set_buffer(meldbuffer.MeldBuffer())
- for i in self._load_files(files, self.textbuffer):
- yield i
+ self._load_files(files, self.textbuffer)
def _compare_files_internal(self):
for i in self._merge_files():
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]