diff --git a/app/camera/buffer.py b/app/camera/buffer.py index 545164f..72611ef 100644 --- a/app/camera/buffer.py +++ b/app/camera/buffer.py @@ -52,6 +52,7 @@ class AppBuffer(Buffer): def destroy_buffer(self): self.buffer_widget.stop_camera() + super().destroy_buffer() class CameraWidget(QWidget): diff --git a/app/file-browser/buffer.py b/app/file-browser/buffer.py index 65a72ac..3b220cc 100644 --- a/app/file-browser/buffer.py +++ b/app/file-browser/buffer.py @@ -40,6 +40,8 @@ class AppBuffer(Buffer): def destroy_buffer(self): os.kill(self.buffer_widget.background_process.pid, signal.SIGKILL) + super().destroy_buffer() + class Image(qrcode.image.base.BaseImage): def __init__(self, border, width, box_size): self.border = border diff --git a/app/file-sender/buffer.py b/app/file-sender/buffer.py index b8bab81..8f6e203 100644 --- a/app/file-sender/buffer.py +++ b/app/file-sender/buffer.py @@ -138,8 +138,10 @@ class FileTransferWidget(QWidget): httpd = BaseHTTPServer.HTTPServer(('', self.port), SimpleHTTPRequestHandler) httpd.serve_forever() - def before_destroy_buffer(self): + def destroy_buffer(self): global local_file_path self.message_to_emacs.emit("Stop file sender server: http://{0}:{1}/{2}".format(self.local_ip, self.port, local_file_path)) self.sender_thread.stop() + + super().destroy_buffer() diff --git a/app/pdf-viewer/buffer.py b/app/pdf-viewer/buffer.py index d94b6fc..149a5e8 100755 --- a/app/pdf-viewer/buffer.py +++ b/app/pdf-viewer/buffer.py @@ -49,11 +49,13 @@ class AppBuffer(Buffer): "toggle_read_mode", "toggle_inverted_mode", "toggle_mark_link"]: self.build_widget_method(method_name) - def before_destroy_buffer(self): + def destroy_buffer(self): if self.delete_temp_file: if os.path.exists(self.url): os.remove(self.url) + super().destroy_buffer() + def get_table_file(self): return self.buffer_widget.table_file_path diff --git a/app/video-player/buffer.py b/app/video-player/buffer.py index 1d75035..e5bb6c6 100644 --- a/app/video-player/buffer.py +++ b/app/video-player/buffer.py @@ -61,9 +61,11 @@ class AppBuffer(Buffer): self.buffer_widget.media_player.play() self.buffer_widget.video_need_replay = True - def before_destroy_buffer(self): + def destroy_buffer(self): self.buffer_widget.media_player.pause() + super().destroy_buffer() + class VideoPlayerWidget(QWidget): def __init__(self, parent=None): diff --git a/core/buffer.py b/core/buffer.py index 7b45eb1..e4bb1a2 100755 --- a/core/buffer.py +++ b/core/buffer.py @@ -166,12 +166,7 @@ class Buffer(QGraphicsScene): self.buffer_widget.buffer = self - def before_destroy_buffer(self): - pass - def destroy_buffer(self): - self.before_destroy_buffer() - if self.buffer_widget is not None: self.buffer_widget.deleteLater()