From 7380e94b187b4284cf1edbd3062a9501eccfe9c9 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Thu, 16 Oct 2014 22:20:29 -0400 Subject: refactor --- termcast_server/termcast.py | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) (limited to 'termcast_server') diff --git a/termcast_server/termcast.py b/termcast_server/termcast.py index 8858fb3..b9abb37 100644 --- a/termcast_server/termcast.py +++ b/termcast_server/termcast.py @@ -86,20 +86,18 @@ class Handler(object): for i in range(0, self.rows): for j in range(0, self.cols): cell = self.vt.cell(i, j) - prev_cell = screen[i][j] - cur_cell = { - "contents": cell.contents(), - "fgcolor": cell.fgcolor().color(), - "bgcolor": cell.bgcolor().color(), - "bold": cell.bold(), - "italic": cell.italic(), - "underline": cell.underline(), - "inverse": cell.inverse(), - } - cell_changes = {} - for key in cur_cell: - if cur_cell[key] != prev_cell[key]: - cell_changes[key] = cur_cell[key] + cell_changes = self._diff_cell( + screen[i][j], + { + "contents": cell.contents(), + "fgcolor": cell.fgcolor().color(), + "bgcolor": cell.bgcolor().color(), + "bold": cell.bold(), + "italic": cell.italic(), + "underline": cell.underline(), + "inverse": cell.inverse(), + } + ) if len(cell_changes) > 0: changes.append({ @@ -110,6 +108,14 @@ class Handler(object): return changes + def _diff_cell(self, prev_cell, cur_cell): + cell_changes = {} + for key in cur_cell: + if cur_cell[key] != prev_cell[key]: + cell_changes[key] = cur_cell[key] + + return cell_changes + def total_time(self): return self._human_readable_duration(time.time() - self.created_at) -- cgit v1.2.3-54-g00ecf