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
|
||||
|
||||
@interface UIResponder (QtFirstResponder)
|
||||
+(id)currentFirstResponder;
|
||||
@end
|
||||
|
||||
#endif // QIOSGLOBAL_H
|
||||
|
@ -141,5 +141,30 @@ int infoPlistValue(NSString* key, int 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
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user