]> granicus.if.org Git - handbrake/commitdiff
MacGui: when a live preview is cancelled, wait for libhb to end its work before rever...
authorritsuka <damiog@gmail.com>
Fri, 19 Sep 2014 07:32:35 +0000 (07:32 +0000)
committerritsuka <damiog@gmail.com>
Fri, 19 Sep 2014 07:32:35 +0000 (07:32 +0000)
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6418 b64f7644-9d1e-0410-96f1-a4d463321fa5

macosx/HBPreviewController.m
macosx/HBPreviewGenerator.h
macosx/HBPreviewGenerator.m

index c92bc4e8f2a2a6f6e9cdfdf840aec0fced695375..43128ac209131e5eb375bea94322b8f3ec31b16c 100644 (file)
@@ -232,6 +232,7 @@ typedef enum ViewMode : NSUInteger {
 {
     _title = title;
 
+    self.generator.delegate = nil;
     [self.generator cancel];
     self.generator = nil;
 
@@ -244,6 +245,7 @@ typedef enum ViewMode : NSUInteger {
         [fPictureSlider setMaxValue: self.generator.imagesCount - 1.0];
         [fPictureSlider setNumberOfTickMarks: self.generator.imagesCount];
 
+        [self switchViewToMode:ViewModePicturePreview];
         [self displayPreview];
     }
 }
@@ -466,7 +468,6 @@ typedef enum ViewMode : NSUInteger {
         {
             if (self.currentViewMode == ViewModeEncoding)
             {
-                [self.generator cancel];
                 [self toggleBoxes:@[fPictureControlBox, fEncodingControlBox]
                      usingIndexes:[NSIndexSet indexSetWithIndex:0]];
                 [fMovieCreationProgressIndicator stopAnimation:self];
@@ -858,6 +859,11 @@ typedef enum ViewMode : NSUInteger {
     [fMovieCreationProgressIndicator setDoubleValue: progress];
 }
 
+- (void)didCancelMovieCreation
+{
+    [self switchViewToMode:ViewModePicturePreview];
+}
+
 - (void) didCreateMovieAtURL: (NSURL *) fileURL
 {
     /* Load the new movie into fMovieView */
@@ -919,7 +925,7 @@ typedef enum ViewMode : NSUInteger {
 
 - (IBAction) cancelCreateMoviePreview: (id) sender
 {
-    [self switchViewToMode:ViewModePicturePreview];
+    [self.generator cancel];
 }
 
 - (IBAction) createMoviePreview: (id) sender
index 438d078aa5afc50f8bec2d160b19907531dc9fd4..72e3b51530212e8b06b58e0664f1bdaabcd56359 100644 (file)
@@ -10,6 +10,8 @@
 @protocol HBPreviewGeneratorDelegate <NSObject>
 
 - (void) didCreateMovieAtURL: (NSURL *) fileURL;
+- (void) didCancelMovieCreation;
+
 - (void) updateProgress: (double) progress info: (NSString *) progressInfo;
 
 @end
index 64effac2c09dcabec6d5a4303c06bdca3bfe89d1..dce77e1aaa3abbc92ea76a41e6f817a95d19b733 100644 (file)
@@ -390,6 +390,10 @@ typedef enum EncodeState : NSUInteger {
             {
                 [self.delegate didCreateMovieAtURL:self.fileURL];
             }
+            else
+            {
+                [self.delegate didCancelMovieCreation];
+            }
 
             self.encodeState = EncodeStateIdle;