2015-08-18 08:04:30 +00:00
|
|
|
/*
|
|
|
|
Copyright 2015 OpenMarket Ltd
|
|
|
|
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
you may not use this file except in compliance with the License.
|
|
|
|
You may obtain a copy of the License at
|
|
|
|
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
See the License for the specific language governing permissions and
|
|
|
|
limitations under the License.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#import <MatrixKit/MatrixKit.h>
|
|
|
|
|
|
|
|
#import "MediaPickerViewController.h"
|
|
|
|
|
2021-03-25 21:15:18 +00:00
|
|
|
@class RoomActionsBar;
|
|
|
|
|
2019-04-30 15:07:43 +00:00
|
|
|
/**
|
|
|
|
Destination of the message in the composer
|
|
|
|
*/
|
|
|
|
typedef enum : NSUInteger
|
|
|
|
{
|
|
|
|
RoomInputToolbarViewSendModeSend,
|
|
|
|
RoomInputToolbarViewSendModeReply,
|
2019-06-13 14:37:28 +00:00
|
|
|
RoomInputToolbarViewSendModeEdit
|
2019-04-30 15:07:43 +00:00
|
|
|
} RoomInputToolbarViewSendMode;
|
|
|
|
|
|
|
|
|
2018-05-24 09:56:33 +00:00
|
|
|
@protocol RoomInputToolbarViewDelegate <MXKRoomInputToolbarViewDelegate>
|
|
|
|
|
2021-03-24 21:17:09 +00:00
|
|
|
/**
|
|
|
|
Tells the delegate that the user wants to cancel the current edition / reply.
|
|
|
|
|
|
|
|
@param toolbarView the room input toolbar view
|
|
|
|
*/
|
|
|
|
- (void)roomInputToolbarViewDidTapCancel:(MXKRoomInputToolbarView*)toolbarView;
|
|
|
|
|
2018-05-24 09:56:33 +00:00
|
|
|
@end
|
|
|
|
|
2015-08-18 08:04:30 +00:00
|
|
|
/**
|
|
|
|
`RoomInputToolbarView` instance is a view used to handle all kinds of available inputs
|
|
|
|
for a room (message composer, attachments selection...).
|
|
|
|
*/
|
2021-10-11 07:33:17 +00:00
|
|
|
@interface RoomInputToolbarView : MXKRoomInputToolbarView
|
2015-08-18 08:04:30 +00:00
|
|
|
|
2018-05-24 09:56:33 +00:00
|
|
|
/**
|
|
|
|
The delegate notified when inputs are ready.
|
|
|
|
*/
|
2019-06-13 14:37:28 +00:00
|
|
|
@property (nonatomic, weak) id<RoomInputToolbarViewDelegate> delegate;
|
2018-05-24 09:56:33 +00:00
|
|
|
|
2015-08-25 16:36:27 +00:00
|
|
|
@property (weak, nonatomic) IBOutlet UIView *mainToolbarView;
|
2015-12-16 21:36:14 +00:00
|
|
|
|
|
|
|
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *mainToolbarMinHeightConstraint;
|
2015-08-25 16:36:27 +00:00
|
|
|
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *mainToolbarHeightConstraint;
|
|
|
|
|
2021-06-29 08:17:15 +00:00
|
|
|
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *messageComposerContainerTrailingConstraint;
|
|
|
|
|
2015-08-18 08:51:28 +00:00
|
|
|
@property (weak, nonatomic) IBOutlet UIButton *attachMediaButton;
|
2015-08-18 08:04:30 +00:00
|
|
|
|
2021-03-15 13:27:59 +00:00
|
|
|
@property (weak, nonatomic) IBOutlet UIImageView *inputTextBackgroundView;
|
2016-03-11 13:45:06 +00:00
|
|
|
|
2021-03-24 21:17:09 +00:00
|
|
|
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *inputContextViewHeightConstraint;
|
|
|
|
@property (weak, nonatomic) IBOutlet UIImageView *inputContextImageView;
|
|
|
|
@property (weak, nonatomic) IBOutlet UILabel *inputContextLabel;
|
|
|
|
@property (weak, nonatomic) IBOutlet UIButton *inputContextButton;
|
2021-03-25 21:15:18 +00:00
|
|
|
@property (weak, nonatomic) IBOutlet RoomActionsBar *actionsBar;
|
2021-06-07 07:20:26 +00:00
|
|
|
@property (weak, nonatomic) UIView *voiceMessageToolbarView;
|
2021-03-24 21:17:09 +00:00
|
|
|
|
2016-11-07 10:36:32 +00:00
|
|
|
/**
|
2016-11-09 09:58:11 +00:00
|
|
|
Tell whether the filled data will be sent encrypted. NO by default.
|
2016-11-07 10:36:32 +00:00
|
|
|
*/
|
2016-11-09 09:58:11 +00:00
|
|
|
@property (nonatomic) BOOL isEncryptionEnabled;
|
2016-11-07 10:36:32 +00:00
|
|
|
|
2021-03-24 21:17:09 +00:00
|
|
|
/**
|
|
|
|
Sender of the event being edited / replied.
|
|
|
|
*/
|
|
|
|
@property (nonatomic, strong) NSString *eventSenderDisplayName;
|
|
|
|
|
2018-07-23 14:54:23 +00:00
|
|
|
/**
|
2019-04-30 15:07:43 +00:00
|
|
|
Destination of the message in the composer.
|
2018-07-23 14:54:23 +00:00
|
|
|
*/
|
2019-04-30 15:07:43 +00:00
|
|
|
@property (nonatomic) RoomInputToolbarViewSendMode sendMode;
|
2018-07-23 14:54:23 +00:00
|
|
|
|
2021-03-25 21:15:18 +00:00
|
|
|
/**
|
|
|
|
YES if action menu is opened. NO otherwise
|
|
|
|
*/
|
|
|
|
@property (nonatomic, getter=isActionMenuOpened) BOOL actionMenuOpened;
|
|
|
|
|
2015-08-18 08:04:30 +00:00
|
|
|
@end
|