downsample touch events to get better pointer performance

Change-Id: I4953e3692838c68ca4e3a2bf2c9d16926f5c3b54
This commit is contained in:
Siqi LIU 2013-08-17 00:35:20 +08:00
parent 454ff1a48e
commit be0ce85bbe
15 changed files with 97 additions and 138 deletions

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="12E55" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" initialViewController="XiK-Ye-iB8"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="4488.1" systemVersion="12E55" targetRuntime="iOS.CocoaTouch.iPad" variant="6xAndEarlier" propertyAccessControl="none" promptedForUpgradeToXcode5="NO" initialViewController="XiK-Ye-iB8">
<dependencies> <dependencies>
<development version="4600" identifier="xcode"/> <development version="4600" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3715.3"/>
</dependencies> </dependencies>
<scenes> <scenes>
<!--Server list vc ipad - Connecter--> <!--Server list vc ipad - Connecter-->
@ -54,7 +54,7 @@
</connections> </connections>
</barButtonItem> </barButtonItem>
</navigationItem> </navigationItem>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/> <outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/>
<segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/> <segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/>
@ -95,7 +95,7 @@
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
</view> </view>
<navigationItem key="navigationItem" id="V5z-WP-qrM"/> <navigationItem key="navigationItem" id="V5z-WP-qrM"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/> <outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/>
<outlet property="statusLabel" destination="VVO-s2-eCV" id="Uhy-iy-HAW"/> <outlet property="statusLabel" destination="VVO-s2-eCV" id="Uhy-iy-HAW"/>
@ -150,7 +150,7 @@
</connections> </connections>
</barButtonItem> </barButtonItem>
</navigationItem> </navigationItem>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
</tableViewController> </tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects> </objects>
@ -223,7 +223,7 @@
</connections> </connections>
</tableView> </tableView>
<navigationItem key="navigationItem" id="4ju-ge-QPw"/> <navigationItem key="navigationItem" id="4ju-ge-QPw"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="optionsTable" destination="Pc5-8o-PrW" id="18R-Zo-CBq"/> <outlet property="optionsTable" destination="Pc5-8o-PrW" id="18R-Zo-CBq"/>
<outlet property="titleLabel" destination="JEW-I6-sw5" id="1AH-TC-z10"/> <outlet property="titleLabel" destination="JEW-I6-sw5" id="1AH-TC-z10"/>
@ -504,7 +504,7 @@ Contrôle Distant</string>
</connections> </connections>
</tableView> </tableView>
<navigationItem key="navigationItem" id="tG3-aQ-qyu"/> <navigationItem key="navigationItem" id="tG3-aQ-qyu"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
</tableViewController> </tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects> </objects>

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="12E55" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" initialViewController="XiK-Ye-iB8"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="4488.1" systemVersion="12E55" targetRuntime="iOS.CocoaTouch.iPad" variant="6xAndEarlier" propertyAccessControl="none" promptedForUpgradeToXcode5="NO" initialViewController="XiK-Ye-iB8">
<dependencies> <dependencies>
<development version="4600" identifier="xcode"/> <development version="4600" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3715.3"/>
</dependencies> </dependencies>
<scenes> <scenes>
<!--Server list vc ipad - Connecter--> <!--Server list vc ipad - Connecter-->
@ -54,7 +54,7 @@
</connections> </connections>
</barButtonItem> </barButtonItem>
</navigationItem> </navigationItem>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/> <outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/>
<segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/> <segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/>
@ -95,7 +95,7 @@
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
</view> </view>
<navigationItem key="navigationItem" id="V5z-WP-qrM"/> <navigationItem key="navigationItem" id="V5z-WP-qrM"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/> <outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/>
<outlet property="statusLabel" destination="VVO-s2-eCV" id="Uhy-iy-HAW"/> <outlet property="statusLabel" destination="VVO-s2-eCV" id="Uhy-iy-HAW"/>
@ -150,7 +150,7 @@
</connections> </connections>
</barButtonItem> </barButtonItem>
</navigationItem> </navigationItem>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
</tableViewController> </tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects> </objects>
@ -223,7 +223,7 @@
</connections> </connections>
</tableView> </tableView>
<navigationItem key="navigationItem" id="4ju-ge-QPw"/> <navigationItem key="navigationItem" id="4ju-ge-QPw"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="optionsTable" destination="Pc5-8o-PrW" id="18R-Zo-CBq"/> <outlet property="optionsTable" destination="Pc5-8o-PrW" id="18R-Zo-CBq"/>
<outlet property="titleLabel" destination="JEW-I6-sw5" id="1AH-TC-z10"/> <outlet property="titleLabel" destination="JEW-I6-sw5" id="1AH-TC-z10"/>
@ -504,7 +504,7 @@ Contrôle Distant</string>
</connections> </connections>
</tableView> </tableView>
<navigationItem key="navigationItem" id="tG3-aQ-qyu"/> <navigationItem key="navigationItem" id="tG3-aQ-qyu"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
</tableViewController> </tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects> </objects>

View File

@ -159,6 +159,13 @@
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{ {
static int count = 0;
if (count < 2){
++count;
return;
}
count = 0;
UITouch *touch = [[event allTouches] anyObject]; UITouch *touch = [[event allTouches] anyObject];
CGPoint loc = [touch locationInView:self.currentSlideImageView]; CGPoint loc = [touch locationInView:self.currentSlideImageView];
if (loc.x >= 0 && loc.x <= self.currentSlideImageView.frame.size.width if (loc.x >= 0 && loc.x <= self.currentSlideImageView.frame.size.width

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="12E55" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" initialViewController="qoG-TN-hN0"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="4488.1" systemVersion="12E55" targetRuntime="iOS.CocoaTouch" variant="6xAndEarlier" propertyAccessControl="none" promptedForUpgradeToXcode5="NO" initialViewController="qoG-TN-hN0">
<dependencies> <dependencies>
<deployment defaultVersion="1552" identifier="iOS"/> <deployment defaultVersion="1552" identifier="iOS"/>
<development version="4600" identifier="xcode"/> <development version="4600" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3715.3"/>
</dependencies> </dependencies>
<scenes> <scenes>
<!--Server list vc - LibreOffice Impress Contrôle Distant--> <!--Server list vc - LibreOffice Impress Contrôle Distant-->

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="12E55" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" initialViewController="qoG-TN-hN0"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="4488.1" systemVersion="12E55" targetRuntime="iOS.CocoaTouch" variant="6xAndEarlier" propertyAccessControl="none" promptedForUpgradeToXcode5="NO" initialViewController="qoG-TN-hN0">
<dependencies> <dependencies>
<deployment defaultVersion="1552" identifier="iOS"/> <deployment defaultVersion="1552" identifier="iOS"/>
<development version="4600" identifier="xcode"/> <development version="4600" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3715.3"/>
</dependencies> </dependencies>
<scenes> <scenes>
<!--Server list vc - LibreOffice Impress Contrôle Distant--> <!--Server list vc - LibreOffice Impress Contrôle Distant-->

View File

@ -48,6 +48,7 @@
#pragma mark - helper #pragma mark - helper
- (void) startSearching - (void) startSearching
{ {
[self.serviceBrowser stop];
[self.comManager.autoDiscoveryServers removeAllObjects]; [self.comManager.autoDiscoveryServers removeAllObjects];
[self.serviceBrowser searchForServicesOfType:@"_impressremote._tcp" inDomain:@"local"]; [self.serviceBrowser searchForServicesOfType:@"_impressremote._tcp" inDomain:@"local"];
[self.serviceBrowser scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode]; [self.serviceBrowser scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
@ -56,7 +57,9 @@
- (void) setSearchStateText:(NSString *)searchStateText - (void) setSearchStateText:(NSString *)searchStateText
{ {
_searchStateText = searchStateText; _searchStateText = searchStateText;
// This doesn't work well on iOS7, might be a bug. The text will get duplicated, it seems that the older section header view was not removed
[self.serverTable reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationNone]; [self.serverTable reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationNone];
// [self.serverTable reloadData];
} }
- (void) setStyle:(UITableViewCellSelectionStyle)style - (void) setStyle:(UITableViewCellSelectionStyle)style
@ -122,16 +125,16 @@
[self.searchLabelTimer invalidate]; [self.searchLabelTimer invalidate];
[self.searchTimeoutTimer invalidate]; [self.searchTimeoutTimer invalidate];
self.searchLabelTimer = [NSTimer scheduledTimerWithTimeInterval:1.0 self.searchLabelTimer = [NSTimer scheduledTimerWithTimeInterval:1.0
target:self target:self
selector:@selector(updateSearchLabel) selector:@selector(updateSearchLabel)
userInfo:nil userInfo:nil
repeats:YES]; repeats:YES];
self.searchTimeoutTimer = [NSTimer scheduledTimerWithTimeInterval:5.0 self.searchTimeoutTimer = [NSTimer scheduledTimerWithTimeInterval:5.0
target:self target:self
selector:@selector(handleSearchTimeout) selector:@selector(handleSearchTimeout)
userInfo:nil userInfo:nil
repeats:NO]; repeats:NO];
[[NSRunLoop currentRunLoop] addTimer:self.searchLabelTimer forMode:NSRunLoopCommonModes]; [[NSRunLoop currentRunLoop] addTimer:self.searchLabelTimer forMode:NSRunLoopCommonModes];
self.style = UITableViewCellSelectionStyleNone; self.style = UITableViewCellSelectionStyleNone;
@ -156,7 +159,7 @@
didFindService:(NSNetService *)aNetService didFindService:(NSNetService *)aNetService
moreComing:(BOOL)moreComing moreComing:(BOOL)moreComing
{ {
[self.comManager.autoDiscoveryServers removeObject:aNetService]; // [self.comManager.autoDiscoveryServers removeObject:aNetService];
[self.comManager.autoDiscoveryServers addObject:aNetService]; [self.comManager.autoDiscoveryServers addObject:aNetService];
NSLog(@"Got service %p with hostname %@\n", aNetService, NSLog(@"Got service %p with hostname %@\n", aNetService,
@ -166,8 +169,8 @@
if(!moreComing) if(!moreComing)
{ {
[self.tableView reloadData]; // [self.tableView reloadData];
[self.serviceBrowser stop]; [self.tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationAutomatic];
[self.searchTimeoutTimer invalidate]; [self.searchTimeoutTimer invalidate];
[self.searchLabelTimer invalidate]; [self.searchLabelTimer invalidate];
} }
@ -182,11 +185,9 @@
if(!moreComing) if(!moreComing)
{ {
[self.tableView reloadData]; // [self.tableView reloadData];
if ([self.comManager.autoDiscoveryServers count] == 0) { [self.tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationAutomatic];
UITableViewCell * cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]]; [self startSearching];
[(UIActivityIndicatorView *)[cell viewWithTag:5] startAnimating];
}
} }
} }
@ -216,7 +217,7 @@
[super viewDidLoad]; [super viewDidLoad];
// Uncomment the following line to preserve selection between presentations. // Uncomment the following line to preserve selection between presentations.
// self.clearsSelectionOnViewWillAppear = NO; // self.clearsSelectionOnViewWillAppear = NO;
// Uncomment the following line to display an Edit button in the navigation bar for this view controller. // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
// self.navigationItem.rightBarButtonItem = self.editButtonItem; // self.navigationItem.rightBarButtonItem = self.editButtonItem;
@ -254,7 +255,8 @@
}]; }];
NSLog(@"Clear auto discovered servers"); NSLog(@"Clear auto discovered servers");
[self.comManager.autoDiscoveryServers removeAllObjects]; [self.comManager.autoDiscoveryServers removeAllObjects];
[self.serverTable reloadData]; // [self.serverTable reloadData];
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationAutomatic];
self.serviceBrowser = [[NSNetServiceBrowser alloc] init]; self.serviceBrowser = [[NSNetServiceBrowser alloc] init];
[self.serviceBrowser setDelegate:self]; [self.serviceBrowser setDelegate:self];
[self startSearching]; [self startSearching];
@ -327,7 +329,7 @@
UIActivityIndicatorView *activityView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray]; UIActivityIndicatorView *activityView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
[activityView startAnimating]; [activityView startAnimating];
[cell setAccessoryView:activityView]; [cell setAccessoryView:activityView];
if (indexPath.section == 1){ if (indexPath.section == 1){
NSLog(@"Connecting to %@:%@", [[self.comManager.servers objectAtIndex:indexPath.row] serverName], [[self.comManager.servers objectAtIndex:indexPath.row] serverAddress]); NSLog(@"Connecting to %@:%@", [[self.comManager.servers objectAtIndex:indexPath.row] serverName], [[self.comManager.servers objectAtIndex:indexPath.row] serverAddress]);
[self.comManager connectToServer:[self.comManager.servers objectAtIndex:indexPath.row]]; [self.comManager connectToServer:[self.comManager.servers objectAtIndex:indexPath.row]];
@ -380,10 +382,24 @@
sectionFooter.textColor = kTintColor; sectionFooter.textColor = kTintColor;
sectionFooter.text = NSLocalizedString(@"Customize server config instruction", @"Displayed when no customized server is available"); sectionFooter.text = NSLocalizedString(@"Customize server config instruction", @"Displayed when no customized server is available");
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, [self tableView:tableView heightForHeaderInSection:section])]; UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, [self tableView:tableView heightForFooterInSection:section])];
[view addSubview:sectionFooter]; [view addSubview:sectionFooter];
return view; return view;
} }
//
// if ([self.comManager.autoDiscoveryServers count] == 0 && section == 0) {
// UILabel *sectionFooter = [[UILabel alloc] initWithFrame:CGRectMake(20, 10, tableView.frame.size.width - 50, 60)];
// [sectionFooter setLineBreakMode:NSLineBreakByWordWrapping];
// [sectionFooter setNumberOfLines:5];
// sectionFooter.backgroundColor = [UIColor clearColor];
// sectionFooter.font = kAppSmallTextFont;
// sectionFooter.textColor = kTintColor;
// sectionFooter.text = NSLocalizedString(@"Don't have a working WiFi around you? Consider create your own hotspot with your phone or your computer", @"Displayed when no customized server is available");
//
// UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, [self tableView:tableView heightForFooterInSection:section])];
// [view addSubview:sectionFooter];
// return view;
// }
return nil; return nil;
} }
@ -392,6 +408,11 @@
return 50.0; return 50.0;
} }
//- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
//{
//// return 50.0;
//}
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{ {
return 2; return 2;

View File

@ -216,6 +216,12 @@
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{ {
static int count = 0;
if (count < 2){
++count;
return;
}
count = 0;
if (!self.touchPointerImage.isHidden){ if (!self.touchPointerImage.isHidden){
UITouch *touch = [[event allTouches] anyObject]; UITouch *touch = [[event allTouches] anyObject];
CGPoint loc = [touch locationInView:self.touchPointerImage]; CGPoint loc = [touch locationInView:self.touchPointerImage];

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="12E55" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" initialViewController="qoG-TN-hN0"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="4488.1" systemVersion="12E55" targetRuntime="iOS.CocoaTouch" variant="6xAndEarlier" propertyAccessControl="none" promptedForUpgradeToXcode5="NO" initialViewController="qoG-TN-hN0">
<dependencies> <dependencies>
<deployment defaultVersion="1552" identifier="iOS"/> <deployment defaultVersion="1552" identifier="iOS"/>
<development version="4600" identifier="xcode"/> <development version="4600" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3715.3"/>
</dependencies> </dependencies>
<scenes> <scenes>
<!--Server list vc - Impress Remote--> <!--Server list vc - Impress Remote-->

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="12E55" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" initialViewController="qoG-TN-hN0"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="4488.1" systemVersion="12E55" targetRuntime="iOS.CocoaTouch" variant="6xAndEarlier" propertyAccessControl="none" promptedForUpgradeToXcode5="NO" initialViewController="qoG-TN-hN0">
<dependencies> <dependencies>
<deployment defaultVersion="1552" identifier="iOS"/> <deployment defaultVersion="1552" identifier="iOS"/>
<development version="4600" identifier="xcode"/> <development version="4600" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3715.3"/>
</dependencies> </dependencies>
<scenes> <scenes>
<!--Server list vc - Impress Remote--> <!--Server list vc - Impress Remote-->

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="12E55" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" initialViewController="XiK-Ye-iB8"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="4488.1" systemVersion="12E55" targetRuntime="iOS.CocoaTouch.iPad" variant="6xAndEarlier" propertyAccessControl="none" promptedForUpgradeToXcode5="NO" initialViewController="XiK-Ye-iB8">
<dependencies> <dependencies>
<development version="4600" identifier="xcode"/> <development version="4600" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3715.3"/>
</dependencies> </dependencies>
<scenes> <scenes>
<!--Server list vc ipad - 连接--> <!--Server list vc ipad - 连接-->
@ -54,7 +54,7 @@
</connections> </connections>
</barButtonItem> </barButtonItem>
</navigationItem> </navigationItem>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/> <outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/>
<segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/> <segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/>
@ -95,7 +95,7 @@
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
</view> </view>
<navigationItem key="navigationItem" id="V5z-WP-qrM"/> <navigationItem key="navigationItem" id="V5z-WP-qrM"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/> <outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/>
<outlet property="statusLabel" destination="VVO-s2-eCV" id="Uhy-iy-HAW"/> <outlet property="statusLabel" destination="VVO-s2-eCV" id="Uhy-iy-HAW"/>
@ -150,7 +150,7 @@
</connections> </connections>
</barButtonItem> </barButtonItem>
</navigationItem> </navigationItem>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
</tableViewController> </tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects> </objects>
@ -223,7 +223,7 @@
</connections> </connections>
</tableView> </tableView>
<navigationItem key="navigationItem" id="4ju-ge-QPw"/> <navigationItem key="navigationItem" id="4ju-ge-QPw"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="optionsTable" destination="Pc5-8o-PrW" id="18R-Zo-CBq"/> <outlet property="optionsTable" destination="Pc5-8o-PrW" id="18R-Zo-CBq"/>
<outlet property="titleLabel" destination="JEW-I6-sw5" id="1AH-TC-z10"/> <outlet property="titleLabel" destination="JEW-I6-sw5" id="1AH-TC-z10"/>
@ -502,7 +502,7 @@
</connections> </connections>
</tableView> </tableView>
<navigationItem key="navigationItem" id="tG3-aQ-qyu"/> <navigationItem key="navigationItem" id="tG3-aQ-qyu"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
</tableViewController> </tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects> </objects>

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="12E55" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" initialViewController="XiK-Ye-iB8"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="4488.1" systemVersion="12E55" targetRuntime="iOS.CocoaTouch.iPad" variant="6xAndEarlier" propertyAccessControl="none" promptedForUpgradeToXcode5="NO" initialViewController="XiK-Ye-iB8">
<dependencies> <dependencies>
<development version="4600" identifier="xcode"/> <development version="4600" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3715.3"/>
</dependencies> </dependencies>
<scenes> <scenes>
<!--Server list vc ipad - 连接--> <!--Server list vc ipad - 连接-->
@ -54,7 +54,7 @@
</connections> </connections>
</barButtonItem> </barButtonItem>
</navigationItem> </navigationItem>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/> <outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/>
<segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/> <segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/>
@ -95,7 +95,7 @@
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
</view> </view>
<navigationItem key="navigationItem" id="V5z-WP-qrM"/> <navigationItem key="navigationItem" id="V5z-WP-qrM"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/> <outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/>
<outlet property="statusLabel" destination="VVO-s2-eCV" id="Uhy-iy-HAW"/> <outlet property="statusLabel" destination="VVO-s2-eCV" id="Uhy-iy-HAW"/>
@ -150,7 +150,7 @@
</connections> </connections>
</barButtonItem> </barButtonItem>
</navigationItem> </navigationItem>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
</tableViewController> </tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects> </objects>
@ -223,7 +223,7 @@
</connections> </connections>
</tableView> </tableView>
<navigationItem key="navigationItem" id="4ju-ge-QPw"/> <navigationItem key="navigationItem" id="4ju-ge-QPw"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<connections> <connections>
<outlet property="optionsTable" destination="Pc5-8o-PrW" id="18R-Zo-CBq"/> <outlet property="optionsTable" destination="Pc5-8o-PrW" id="18R-Zo-CBq"/>
<outlet property="titleLabel" destination="JEW-I6-sw5" id="1AH-TC-z10"/> <outlet property="titleLabel" destination="JEW-I6-sw5" id="1AH-TC-z10"/>
@ -502,7 +502,7 @@
</connections> </connections>
</tableView> </tableView>
<navigationItem key="navigationItem" id="tG3-aQ-qyu"/> <navigationItem key="navigationItem" id="tG3-aQ-qyu"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/> <simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
</tableViewController> </tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects> </objects>
@ -541,87 +541,6 @@
<image name="timer_clear_btn.png" width="60" height="60"/> <image name="timer_clear_btn.png" width="60" height="60"/>
<image name="timer_start_btn.png" width="60" height="60"/> <image name="timer_start_btn.png" width="60" height="60"/>
</resources> </resources>
<classes>
<class className="BasePresentationViewController" superclassName="UIViewController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/BasePresentationViewController.h"/>
<relationships>
<relationship kind="action" name="nextSlideAction:"/>
<relationship kind="action" name="popOverUp:"/>
<relationship kind="action" name="previousSlideAction:"/>
<relationship kind="action" name="startConnectionModal:"/>
<relationship kind="outlet" name="NoteWebView" candidateClass="UIWebView"/>
<relationship kind="outlet" name="NotesView" candidateClass="UIView"/>
<relationship kind="outlet" name="clearButton" candidateClass="UIButton"/>
<relationship kind="outlet" name="currentSlideImageView" candidateClass="UIImageView"/>
<relationship kind="outlet" name="gearButton" candidateClass="UIButton"/>
<relationship kind="outlet" name="horizontalTableView" candidateClass="UITableView"/>
<relationship kind="outlet" name="movingPointer" candidateClass="UIView"/>
<relationship kind="outlet" name="nextButton" candidateClass="UIButton"/>
<relationship kind="outlet" name="previousButton" candidateClass="UIButton"/>
<relationship kind="outlet" name="slideNumber" candidateClass="UILabel"/>
<relationship kind="outlet" name="startButton" candidateClass="UIButton"/>
<relationship kind="outlet" name="timeLabel" candidateClass="UILabel"/>
<relationship kind="outlet" name="welcome_blocking_page" candidateClass="UIView"/>
<relationship kind="outlet" name="welcome_connect_button" candidateClass="UIButton"/>
<relationship kind="outlet" name="welcome_label" candidateClass="UILabel"/>
<relationship kind="outlet" name="welcome_libO_icon" candidateClass="UIImageView"/>
</relationships>
</class>
<class className="EditableTableViewCell" superclassName="UITableViewCell">
<source key="sourceIdentifier" type="project" relativePath="./Classes/EditableTableViewCell.h"/>
</class>
<class className="LibONavigationController" superclassName="UINavigationController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/LibONavigationController.h"/>
</class>
<class className="MainSplitViewController" superclassName="UISplitViewController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/MainSplitViewController.h"/>
</class>
<class className="autoDismissKeyboardNavigationViewController" superclassName="LibONavigationController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/autoDismissKeyboardNavigationViewController.h"/>
</class>
<class className="newServerViewController" superclassName="UITableViewController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/newServerViewController.h"/>
<relationships>
<relationship kind="action" name="save:"/>
<relationship kind="outlet" name="saveButton" candidateClass="UIBarButtonItem"/>
</relationships>
</class>
<class className="pinValidation_vc" superclassName="UIViewController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/pinValidation_vc.h"/>
<relationships>
<relationship kind="outlet" name="pinLabel" candidateClass="UILabel"/>
<relationship kind="outlet" name="statusLabel" candidateClass="UILabel"/>
</relationships>
</class>
<class className="server_list_vc" superclassName="UITableViewController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/server_list_vc.h"/>
<relationships>
<relationship kind="outlet" name="serverTable" candidateClass="UITableView"/>
</relationships>
</class>
<class className="server_list_vc_ipad" superclassName="server_list_vc">
<source key="sourceIdentifier" type="project" relativePath="./Classes/server_list_vc_ipad.h"/>
<relationships>
<relationship kind="action" name="cancelModalView:"/>
</relationships>
</class>
<class className="slideShowPreviewTable_vc" superclassName="UITableViewController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/slideShowPreviewTable_vc.h"/>
<relationships>
<relationship kind="action" name="startPresentationAction:"/>
<relationship kind="outlet" name="optionsTable" candidateClass="UITableView"/>
</relationships>
</class>
<class className="slideShowPreviewTable_vc_ipad" superclassName="slideShowPreviewTable_vc">
<source key="sourceIdentifier" type="project" relativePath="./Classes/slideShowPreviewTable_vc_ipad.h"/>
<relationships>
<relationship kind="outlet" name="titleLabel" candidateClass="UILabel"/>
</relationships>
</class>
<class className="slideShowSwipeInList_ipad" superclassName="UITableViewController">
<source key="sourceIdentifier" type="project" relativePath="./Classes/slideShowSwipeInList_ipad.h"/>
</class>
</classes>
<simulatedMetricsContainer key="defaultSimulatedMetrics"> <simulatedMetricsContainer key="defaultSimulatedMetrics">
<simulatedStatusBarMetrics key="statusBar"/> <simulatedStatusBarMetrics key="statusBar"/>
<simulatedOrientationMetrics key="orientation"/> <simulatedOrientationMetrics key="orientation"/>

View File

@ -326,6 +326,11 @@ Bitmap BMP_PRESOBJ_TABLE
File = "table.bmp" ; File = "table.bmp" ;
}; };
Bitmap BMP_POINTER_ICON
{
File = "pointericon.bmp";
};
Bitmap BMP_WAIT_ICON Bitmap BMP_WAIT_ICON
{ {
File = "waiticon.bmp"; File = "waiticon.bmp";

View File

@ -40,6 +40,7 @@
#define BMP_FOIL_NONE RID_APP_START+120 #define BMP_FOIL_NONE RID_APP_START+120
#define BMP_GROUP RID_APP_START+121 #define BMP_GROUP RID_APP_START+121
#define BMP_WAIT_ICON RID_APP_START+124 #define BMP_WAIT_ICON RID_APP_START+124
#define BMP_POINTER_ICON RID_APP_START+126
// additional effects // additional effects

View File

@ -1148,7 +1148,7 @@ bool SlideshowImpl::startShowImpl( const Sequence< beans::PropertyValue >& aProp
beans::PropertyState_DIRECT_VALUE ) ); beans::PropertyState_DIRECT_VALUE ) );
} }
BitmapEx pointerSymbolBitmap( SdResId(BMP_WAIT_ICON) ); BitmapEx pointerSymbolBitmap( SdResId(BMP_POINTER_ICON) );
const Reference<rendering::XBitmap> xPointerBitmap( const Reference<rendering::XBitmap> xPointerBitmap(
vcl::unotools::xBitmapFromBitmapEx( vcl::unotools::xBitmapFromBitmapEx(
xSpriteCanvas->getDevice(), pointerSymbolBitmap ) ); xSpriteCanvas->getDevice(), pointerSymbolBitmap ) );