* Show image paste menu * Get pasted image * Add more info for file * Add custom text input and add extension * Dismiss contextual menu after paste image * Group image info together * Add max file check * Fix max file size text * Add PropTypes * Add support for gif and tiff * add onchange null check * Use onPaste event * Move get image info logic * Clean up listener when no observer * Add android upload * Copy file from google docs * Clean up file after upload * Prevent text pasted in textbox if it's content uri * Rename paste file thread * Move on paste listener logic * Remove the redundant data in ios * Get realpath of item * Clean up * Only download for image * Rename to custom text input * Update RNPasteableEditTextOnPasteListener.java * Handle for download image failed * Fix eslint * Fix test * Allow multiple images to be pasted * Remove additional null check * Add managed control for Android * Disable only copy, cut and paste * Accept image in Android edit text * Add comment for custom text input * Do not upload when more than max file * Stop uplaod when exceed file size * Fix crash when clip data is null * Return error to JS * Move download file logic * Remove console * Add some tests * Add test for handleUploadImages * Add test for file_upload_item * Use ImageCacheManager to cache remote images * Fix crashes from one note * Remove commented code * Update test
47 lines
1.1 KiB
Objective-C
47 lines
1.1 KiB
Objective-C
//
|
|
// PasteEventManager.m
|
|
// Mattermost
|
|
//
|
|
// Created by Tek Min Ewe on 05/08/2019.
|
|
// Copyright © 2019 Facebook. All rights reserved.
|
|
//
|
|
|
|
#import "OnPasteEventManager.h"
|
|
|
|
@implementation OnPasteEventManager {
|
|
bool hasListeners;
|
|
}
|
|
|
|
RCT_EXPORT_MODULE();
|
|
|
|
-(void)startObserving {
|
|
hasListeners = YES;
|
|
|
|
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onPaste:) name:@"onPaste" object:nil];
|
|
}
|
|
|
|
-(void)stopObserving {
|
|
hasListeners = NO;
|
|
|
|
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
|
}
|
|
|
|
-(NSArray<NSString *>*)supportedEvents {
|
|
return @[@"onPaste"];
|
|
}
|
|
|
|
-(void)onPaste:(NSNotification *)data {
|
|
if (!hasListeners) {
|
|
return;
|
|
}
|
|
|
|
[self sendEventWithName:@"onPaste" body:data.userInfo[@"data"]];
|
|
}
|
|
|
|
+(void)pasteImage:(NSArray<NSDictionary *> *)data {
|
|
[[NSNotificationCenter defaultCenter] postNotificationName:@"onPaste" object:data userInfo:@{
|
|
@"data": data
|
|
}];
|
|
}
|
|
|
|
@end
|