Skip to content

Commit bf450d7

Browse files
仮想デバイス削除時にServiceDiscoveryの一覧からも削除するように修正。
1 parent 22bdfe8 commit bf450d7

3 files changed

Lines changed: 12 additions & 2 deletions

File tree

dConnectDevicePlugin/dConnectDeviceIRKit/dConnectDeviceIRKit/Classes/DPIRKitDevicePlugin.m

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,14 +373,14 @@ - (void)didSelectService:(DConnectService *)service {
373373
}
374374
UINavigationController *top = [storyBoard instantiateViewControllerWithIdentifier:@"virtualDeviceList"];
375375

376-
377376
UIViewController *rootView;
378377
DCPutPresentedViewController(rootView);
379378
DPIRKitVirtualDeviceViewController *view = (DPIRKitVirtualDeviceViewController*) top.viewControllers[0];
380379
DPIRKitDevice *irkit = _devices[service.serviceId];
381380

382381
if (irkit) {
383382
[view setDetailItem:irkit];
383+
[view setProvider:super.serviceProvider];
384384
[rootView presentViewController:top animated:YES completion:nil];
385385
} else {
386386
NSString *title = nil;
@@ -441,6 +441,7 @@ - (UIViewController *)settingViewController {
441441
bundle:bundle];
442442
}
443443
UINavigationController *top = [storyBoard instantiateViewControllerWithIdentifier:@"setting"];
444+
444445
return top;
445446
}
446447

dConnectDevicePlugin/dConnectDeviceIRKit/dConnectDeviceIRKit/Classes/setting/viewcontroller/DPIRKitVirtualDeviceViewController.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,6 @@
1111

1212
@interface DPIRKitVirtualDeviceViewController : UIViewController<UITableViewDelegate,UITableViewDataSource>
1313

14+
@property (strong, nonatomic) id provider;
1415
@property (strong, nonatomic) id detailItem;
1516
@end

dConnectDevicePlugin/dConnectDeviceIRKit/dConnectDeviceIRKit/Classes/setting/viewcontroller/DPIRKitVirtualDeviceViewController.m

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,17 @@
66
// Released under the MIT license
77
// http://opensource.org/licenses/mit-license.php
88
//
9+
#import <DConnectSDK/DConnectSDK.h>
910
#import "DPIRKitVirtualDeviceViewController.h"
1011
#import "DPIRKitManager.h"
1112
#import "DPIRKitConst.h"
1213
#import "DPIRKitCategorySelectDialog.h"
1314
#import "DPIRKitDBManager.h"
1415
#import "DPIRKitVirtualProfileViewController.h"
1516

17+
1618
@interface DPIRKitVirtualDeviceViewController () {
19+
DConnectServiceProvider *_serviceProvider;
1720
NSBundle *bundle;
1821
NSMutableDictionary *_virtuals;
1922
DPIRKitDevice *_virtual;
@@ -157,7 +160,10 @@ - (void)setDetailItem:(id)newDetailItem
157160
_virtual = newDetailItem;
158161
}
159162

160-
163+
- (void)setProvider:(id)provider
164+
{
165+
_serviceProvider = provider;
166+
}
161167

162168
- (void)mergeChanges:(NSNotification*)notification
163169
{
@@ -243,6 +249,8 @@ - (void)executeDeleteVirtualDevice {
243249
BOOL isDelete = NO;
244250
for (NSIndexPath *c in cells) {
245251
DPIRKitVirtualDevice *device = _devices[c.row];
252+
DConnectService *service = [_serviceProvider service:device.serviceId];
253+
[_serviceProvider removeService:service];
246254
BOOL isDeleteVirtualDevice = [mgr deleteVirtualDevice:device.serviceId];
247255
BOOL isDeleteVirtualProfile = [mgr deleteRESTfulRequestForServiceId:device.serviceId];
248256
if (isDeleteVirtualDevice || isDeleteVirtualProfile) {

0 commit comments

Comments
 (0)