From 441de6c9d4ac86a099b40fd9e8e9ece68556a488 Mon Sep 17 00:00:00 2001
From: Papoteur <papoteur@mageia.org>
Date: Wed, 6 Feb 2019 09:04:35 +0100
Subject: Manage redraw during writing for GTK (mga#24273)

---
 lib/isodumper.py | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

(limited to 'lib')

diff --git a/lib/isodumper.py b/lib/isodumper.py
index e532e2e..c2744ad 100755
--- a/lib/isodumper.py
+++ b/lib/isodumper.py
@@ -250,12 +250,14 @@ class IsoDumper(object):
             while not iface.done :
                 progress = iface.progress
                 self.progress.setValue(progress)
-                time.sleep(1)
+                self.dialog.pollEvent()
+                time.sleep(.2)
             success, message = iface.end()
             if success:
                 self.logger(_('{source} successfully written to {target}').format( source=source.split('/')[-1], target=dest))
                 self.progress.setEnabled()
                 self.progress.setValue(100)
+                self.dialog.pollEvent()
                 self.logger(message)
                 self.success()
             else:
@@ -302,23 +304,27 @@ class IsoDumper(object):
                     while not iface.done :
                         progress = iface.progress
                         self.progress.setValue(progress)
-                        time.sleep(1)
+                        self.dialog.pollEvent()
+                        time.sleep(.5)
                     success, message = iface.end()
                     if success:
                         self.logger(_('Image {source} successfully written to {target}').format( source=source.split('/')[-1], target=target))
                         self.logger(_('Bytes written: ')+str(b))
                         self.progress.setLabel(_('Checking ')+target.split('/')[-1])
-                        self.progress.setValue(0)     
+                        self.progress.setValue(0) 
+                        self.dialog.pollEvent()    
                         # Checking
                         iface.check_write(target, source)
                         progress = iface.progress
                         while progress < 100 :
                             progress = iface.progress
                             self.progress.setValue(progress)
-                            time.sleep(1)
+                            self.dialog.pollEvent()
+                            time.sleep(.5)
                         success, message = iface.end()
                         self.progress.setEnabled()
                         self.progress.setValue(100)
+                        self.dialog.pollEvent()
                         self.logger(message)
                         # Add persistent partition if asked
                         if self.persistencecb.value():
-- 
cgit v1.2.1