diff --git a/apps/spreadsheeteditor/mobile/src/controller/Main.jsx b/apps/spreadsheeteditor/mobile/src/controller/Main.jsx index f35162df2..04ee105a2 100644 --- a/apps/spreadsheeteditor/mobile/src/controller/Main.jsx +++ b/apps/spreadsheeteditor/mobile/src/controller/Main.jsx @@ -374,6 +374,13 @@ class MainController extends Component { storeToolbarSettings.setCanRedo(can); }); + const storeFocusObjects = this.props.storeFocusObjects; + this.api.asc_registerCallback('asc_onEditCell', (state) => { + const isFormula = state === Asc.c_oAscCellEditorState.editFormula; + if (storeFocusObjects.editFormulaMode !== isFormula) { + storeFocusObjects.setEditFormulaMode(isFormula); + } + }); } _onLongActionEnd(type, id) { diff --git a/apps/spreadsheeteditor/mobile/src/controller/Toolbar.jsx b/apps/spreadsheeteditor/mobile/src/controller/Toolbar.jsx index 6b6ceb0b4..ec2f9441a 100644 --- a/apps/spreadsheeteditor/mobile/src/controller/Toolbar.jsx +++ b/apps/spreadsheeteditor/mobile/src/controller/Toolbar.jsx @@ -11,6 +11,7 @@ const ToolbarController = inject('storeAppOptions', 'users', 'storeSpreadsheetIn const appOptions = props.storeAppOptions; const isDisconnected = props.users.isDisconnected; const isObjectLocked = props.storeFocusObjects.isLocked; + const editFormulaMode = props.storeFocusObjects.editFormulaMode; const displayCollaboration = props.users.hasEditUsers || appOptions.canViewComments; const docTitle = props.storeSpreadsheetInfo.dataDoc ? props.storeSpreadsheetInfo.dataDoc.title : ''; @@ -140,9 +141,11 @@ const ToolbarController = inject('storeAppOptions', 'users', 'storeSpreadsheetIn onUndo={onUndo} onRedo={onRedo} disabledControls={disabledControls} - disabledEditControls={disabledEditControls || isObjectLocked} - disabledSettings={disabledSettings} + disabledEditControls={disabledEditControls || isObjectLocked || editFormulaMode} + disabledSearch={editFormulaMode} + disabledSettings={disabledSettings || editFormulaMode} displayCollaboration={displayCollaboration} + disabledCollaboration={editFormulaMode} showEditDocument={showEditDocument} onEditDocument={onEditDocument} isDisconnected={isDisconnected} diff --git a/apps/spreadsheeteditor/mobile/src/page/main.jsx b/apps/spreadsheeteditor/mobile/src/page/main.jsx index ad19718e7..28ee52ed7 100644 --- a/apps/spreadsheeteditor/mobile/src/page/main.jsx +++ b/apps/spreadsheeteditor/mobile/src/page/main.jsx @@ -74,7 +74,7 @@ class MainPage extends Component { if ( opts == 'edit' ) return {editOptionsVisible: false}; else if ( opts == 'add' ) - return {addOptionsVisible: false}; + return {addOptionsVisible: false, addShowOptions: null}; else if ( opts == 'settings' ) return {settingsVisible: false}; else if ( opts == 'coauth' ) diff --git a/apps/spreadsheeteditor/mobile/src/store/focusObjects.js b/apps/spreadsheeteditor/mobile/src/store/focusObjects.js index 6cb3db2d9..1ec486d3e 100644 --- a/apps/spreadsheeteditor/mobile/src/store/focusObjects.js +++ b/apps/spreadsheeteditor/mobile/src/store/focusObjects.js @@ -15,7 +15,9 @@ export class storeFocusObjects { imageObject: computed, chartObject: computed, isLocked: observable, - setIsLocked: action + setIsLocked: action, + editFormulaMode: observable, + setEditFormulaMode: action }); } @@ -106,4 +108,10 @@ export class storeFocusObjects { this.isLocked = islocked; } + editFormulaMode = false; + + setEditFormulaMode(value) { + this.editFormulaMode = value; + } + } \ No newline at end of file diff --git a/apps/spreadsheeteditor/mobile/src/view/Toolbar.jsx b/apps/spreadsheeteditor/mobile/src/view/Toolbar.jsx index 0cf7909be..3ffaa264b 100644 --- a/apps/spreadsheeteditor/mobile/src/view/Toolbar.jsx +++ b/apps/spreadsheeteditor/mobile/src/view/Toolbar.jsx @@ -28,8 +28,8 @@ const ToolbarView = props => { onEditClick: () => props.openOptions('edit'), onAddClick: () => props.openOptions('add') })} - { Device.phone ? null : <Link className={props.disabledControls && 'disabled'} icon='icon-search' searchbarEnable='.searchbar' href={false}></Link> } - {props.displayCollaboration && window.matchMedia("(min-width: 360px)").matches ? <Link className={props.disabledControls && 'disabled'} id='btn-coauth' href={false} icon='icon-collaboration' onClick={() => props.openOptions('coauth')}></Link> : null} + { Device.phone ? null : <Link className={(props.disabledControls || props.disabledSearch) && 'disabled'} icon='icon-search' searchbarEnable='.searchbar' href={false}></Link> } + {props.displayCollaboration && window.matchMedia("(min-width: 360px)").matches ? <Link className={(props.disabledControls || props.disabledCollaboration) && 'disabled'} id='btn-coauth' href={false} icon='icon-collaboration' onClick={() => props.openOptions('coauth')}></Link> : null} <Link className={(props.disabledSettings || props.disabledControls) && 'disabled'} id='btn-settings' icon='icon-settings' href={false} onClick={() => props.openOptions('settings')}></Link> </NavRight> </Fragment>