iOS: Add UIResponder helper to get current first responder
Change-Id: I422d45860a52861893d963fabbecd4ac30477272 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
This commit is contained in:
parent
7a413fa40c
commit
ad120dbf13
@ -65,4 +65,8 @@ int infoPlistValue(NSString* key, int defaultValue);
|
|||||||
|
|
||||||
QT_END_NAMESPACE
|
QT_END_NAMESPACE
|
||||||
|
|
||||||
|
@interface UIResponder (QtFirstResponder)
|
||||||
|
+(id)currentFirstResponder;
|
||||||
|
@end
|
||||||
|
|
||||||
#endif // QIOSGLOBAL_H
|
#endif // QIOSGLOBAL_H
|
||||||
|
@ -141,5 +141,30 @@ int infoPlistValue(NSString* key, int defaultValue)
|
|||||||
return value ? [value intValue] : defaultValue;
|
return value ? [value intValue] : defaultValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// -------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@interface QtFirstResponderEvent : UIEvent
|
||||||
|
@property (nonatomic, strong) id firstResponder;
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation QtFirstResponderEvent
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation UIResponder (QtFirstResponder)
|
||||||
|
|
||||||
|
+(id)currentFirstResponder
|
||||||
|
{
|
||||||
|
QtFirstResponderEvent *event = [[[QtFirstResponderEvent alloc] init] autorelease];
|
||||||
|
[[UIApplication sharedApplication] sendAction:@selector(qt_findFirstResponder:event:) to:nil from:nil forEvent:event];
|
||||||
|
return event.firstResponder;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)qt_findFirstResponder:(id)sender event:(QtFirstResponderEvent *)event
|
||||||
|
{
|
||||||
|
Q_UNUSED(sender);
|
||||||
|
event.firstResponder = self;
|
||||||
|
}
|
||||||
|
@end
|
||||||
|
|
||||||
QT_END_NAMESPACE
|
QT_END_NAMESPACE
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user