From 738fd83a2c6901fb7ade93c54a29fa940cfb8496 Mon Sep 17 00:00:00 2001 From: SergeyEzhin Date: Sun, 6 Aug 2023 16:56:27 +0300 Subject: [PATCH] [DE mobile] Add saving editing and settings page --- apps/documenteditor/mobile/src/page/main.jsx | 1 - .../mobile/src/view/edit/Edit.jsx | 3 ++- .../mobile/src/view/edit/EditingPage.jsx | 20 +++++++------------ .../mobile/src/view/settings/Settings.jsx | 1 + 4 files changed, 10 insertions(+), 15 deletions(-) diff --git a/apps/documenteditor/mobile/src/page/main.jsx b/apps/documenteditor/mobile/src/page/main.jsx index 1076f75c5f..adc9a08f30 100644 --- a/apps/documenteditor/mobile/src/page/main.jsx +++ b/apps/documenteditor/mobile/src/page/main.jsx @@ -3,7 +3,6 @@ import { CSSTransition } from 'react-transition-group'; import { f7, Fab, Icon, Page, View, Navbar, Subnavbar } from 'framework7-react'; import { observer, inject } from "mobx-react"; import { withTranslation } from 'react-i18next'; -import EditOptions from '../view/edit/Edit'; import AddOptions from '../view/add/Add'; import SettingsController from '../controller/settings/Settings'; import CollaborationView from '../../../../common/mobile/lib/view/collaboration/Collaboration.jsx' diff --git a/apps/documenteditor/mobile/src/view/edit/Edit.jsx b/apps/documenteditor/mobile/src/view/edit/Edit.jsx index b865f3faf4..206e268f48 100644 --- a/apps/documenteditor/mobile/src/view/edit/Edit.jsx +++ b/apps/documenteditor/mobile/src/view/edit/Edit.jsx @@ -14,7 +14,8 @@ import { MainContext } from '../../page/main'; const routes = [ { path: '/editing-page/', - component: EditingPage + component: EditingPage, + keepAlive: true }, //Edit text { diff --git a/apps/documenteditor/mobile/src/view/edit/EditingPage.jsx b/apps/documenteditor/mobile/src/view/edit/EditingPage.jsx index 14f904f0b6..80350c643f 100644 --- a/apps/documenteditor/mobile/src/view/edit/EditingPage.jsx +++ b/apps/documenteditor/mobile/src/view/edit/EditingPage.jsx @@ -27,20 +27,16 @@ const EmptyEditLayout = () => { ) }; -const EditLayoutNavbar = ({ editors, idActiveTab, setIdActiveTab }) => { +const EditLayoutNavbar = ({ editors }) => { const isAndroid = Device.android; const { t } = useTranslation(); const _t = t('Edit', {returnObjects: true}); - useEffect(() => { - localStorage.setItem('de-mobile-edit-active-tab', idActiveTab); - }, [idActiveTab]); - return ( {editors.length > 1 ?
- {editors.map((item, _) => setIdActiveTab(item.id)} tabLinkActive={item.id === idActiveTab}>{item.caption})} + {editors.map((item, index) => {item.caption})} {isAndroid && }
: {editors[0].caption} @@ -50,12 +46,12 @@ const EditLayoutNavbar = ({ editors, idActiveTab, setIdActiveTab }) => { ) }; -const EditLayoutContent = ({ editors, idActiveTab }) => { +const EditLayoutContent = ({ editors }) => { if (editors.length > 1) { return ( - {editors.map((item, _) => - + {editors.map((item, index) => + {item.component} )} @@ -77,8 +73,6 @@ const EditingPage = inject('storeFocusObjects')(observer(props => { const inToc = api.asc_GetTableOfContentsPr(true); const settings = props.storeFocusObjects.settings; const headerType = props.storeFocusObjects.headerType; - const savedIdTab = localStorage.getItem('de-mobile-edit-active-tab'); - const [idActiveTab, setIdActiveTab] = useState(savedIdTab || 'edit-text'); let editors = []; if (settings.length < 1) { @@ -147,8 +141,8 @@ const EditingPage = inject('storeFocusObjects')(observer(props => { return ( - - + + ) })); diff --git a/apps/documenteditor/mobile/src/view/settings/Settings.jsx b/apps/documenteditor/mobile/src/view/settings/Settings.jsx index 5327c4244f..e1a608e9d1 100644 --- a/apps/documenteditor/mobile/src/view/settings/Settings.jsx +++ b/apps/documenteditor/mobile/src/view/settings/Settings.jsx @@ -20,6 +20,7 @@ const routes = [ { path: '/settings/', component: SettingsPage, + keepAlive: true, }, { path: '/document-settings/',