diff --git a/Classes/ContainerController.m b/Classes/ContainerController.m index 77ba19e..953ab3f 100644 --- a/Classes/ContainerController.m +++ b/Classes/ContainerController.m @@ -36,6 +36,7 @@ #import "RDPackage.h" #import "SpineItemListController.h" +#import "drmInitialize.h" @interface ContainerController () < RDContainerDelegate, @@ -290,5 +291,11 @@ - (void)viewWillAppear:(BOOL)animated { } } +- (void)containerRegisterContentModules:(RDContainer *)container{ +#ifdef _READIUM_DRM_ + [[[DrmInitialize alloc] init] initialize]; +#endif +} + @end diff --git a/Classes/ContainerListController.m b/Classes/ContainerListController.m index 6bc8eb5..93efbf7 100644 --- a/Classes/ContainerListController.m +++ b/Classes/ContainerListController.m @@ -89,13 +89,19 @@ - (void)onContainerListDidChange { tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { - [tableView deselectRowAtIndexPath:indexPath animated:YES]; - NSString *path = [m_paths objectAtIndex:indexPath.row]; - ContainerController *c = [[ContainerController alloc] initWithPath:path]; - - if (c != nil) { - [self.navigationController pushViewController:c animated:YES]; - } + dispatch_queue_t backgroundQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); + dispatch_async(backgroundQueue, ^{ + + [tableView deselectRowAtIndexPath:indexPath animated:YES]; + NSString *path = [m_paths objectAtIndex:indexPath.row]; + ContainerController *c = [[ContainerController alloc] initWithPath:path]; + + dispatch_async(dispatch_get_main_queue(), ^{ + if (c != nil) { + [self.navigationController pushViewController:c animated:YES]; + } + }); + }); } diff --git a/Classes/drmInitialize.h b/Classes/drmInitialize.h new file mode 100644 index 0000000..8389a59 --- /dev/null +++ b/Classes/drmInitialize.h @@ -0,0 +1,30 @@ +// +// DrmInitialize.h +// SDKLauncher-OSX +// +// Created by DRM inside Development Team on 2015-08-16. +// ( T.H. Kim, H.D. Yoon, H.S. Lee and C.H. Yu ) +// +// Copyright (c) 2015 The Readium Foundation and contributors. All rights reserved. +// +// The Readium SDK is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see +// +#import + +@interface DrmInitialize : NSObject + +- (void)initialize; + +@end + diff --git a/SDKLauncher-iOS.xcodeproj/project.pbxproj b/SDKLauncher-iOS.xcodeproj/project.pbxproj index 1705fa9..4bbee13 100644 --- a/SDKLauncher-iOS.xcodeproj/project.pbxproj +++ b/SDKLauncher-iOS.xcodeproj/project.pbxproj @@ -337,6 +337,7 @@ A250D54A5C423A86C6099037 /* epub30-test-0220-20131022.epub */ = {isa = PBXFileReference; lastKnownFileType = file.epub; path = "epub30-test-0220-20131022.epub"; sourceTree = ""; }; A250D58D34D67FC218608A1F /* epub30-test-0120-20131022.epub */ = {isa = PBXFileReference; lastKnownFileType = file.epub; path = "epub30-test-0120-20131022.epub"; sourceTree = ""; }; A250DD41B691E2CA16B1735D /* epubReadingSystem.epub */ = {isa = PBXFileReference; lastKnownFileType = file.epub; path = epubReadingSystem.epub; sourceTree = ""; }; + FFE961DC1C16E73100FA2A5C /* drmInitialize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = drmInitialize.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -615,6 +616,7 @@ 345CA3E116C00EE100B8B56A /* Main */ = { isa = PBXGroup; children = ( + FFE961DC1C16E73100FA2A5C /* drmInitialize.h */, 3462FBBA16BC3C43003C79E1 /* AppDelegate.h */, 3462FBBB16BC3C43003C79E1 /* AppDelegate.m */, 340535A816BC5DD100D4A802 /* BaseViewController.h */, diff --git a/readium-sdk b/readium-sdk index 238b5b8..3c9fe52 160000 --- a/readium-sdk +++ b/readium-sdk @@ -1 +1 @@ -Subproject commit 238b5b88b4920f0444b619eb07c3f4ec35f32d4b +Subproject commit 3c9fe52e5be7c2b93e4fe5bf132ec015f07c5b3a