diff --git a/server/zanata-frontend/src/app/actions/version-actions.js b/server/zanata-frontend/src/app/actions/version-actions.js index 1dac5f27428..b6d5965cd19 100644 --- a/server/zanata-frontend/src/app/actions/version-actions.js +++ b/server/zanata-frontend/src/app/actions/version-actions.js @@ -60,7 +60,7 @@ import { */ export const toggleMTMergeModal = - createAction(TOGGLE_MT_MERGE_MODAL) + createAction(TOGGLE_MT_MERGE_MODAL, toggle => toggle, (args) => ({args})) /** Open or close the TM Merge modal */ export const toggleTMMergeModal = createAction(TOGGLE_TM_MERGE_MODAL) diff --git a/server/zanata-frontend/src/app/components/MTMerge/MTMergeModal.tsx b/server/zanata-frontend/src/app/components/MTMerge/MTMergeModal.tsx index 820a355e837..d726a300ae7 100644 --- a/server/zanata-frontend/src/app/components/MTMerge/MTMergeModal.tsx +++ b/server/zanata-frontend/src/app/components/MTMerge/MTMergeModal.tsx @@ -25,6 +25,8 @@ export type MTMergeModalStateProps = Readonly<{ showMTMerge: boolean availableLocales: Locale[] processStatus?: ProcessStatus + selectedDocId?: string + selectedLocaleId?: string }> // Redux dispatch, ie connect's TDispatchProps @@ -84,7 +86,9 @@ export class MTMergeModal extends Component { availableLocales, processStatus, onCancelMTMerge, - queryMTMergeProgress, + queryMTMergeProgress + // selectedDocId, + // selectedLocaleId } = this.props const enableSubmit = this.state.checkedLocales.length > 0 && !processStatus const queryProgress = () => { diff --git a/server/zanata-frontend/src/app/containers/ProjectVersion/MTMergeContainer.ts b/server/zanata-frontend/src/app/containers/ProjectVersion/MTMergeContainer.ts index d4ed92e155e..dbe1e23bbe2 100644 --- a/server/zanata-frontend/src/app/containers/ProjectVersion/MTMergeContainer.ts +++ b/server/zanata-frontend/src/app/containers/ProjectVersion/MTMergeContainer.ts @@ -21,6 +21,8 @@ const mapReduxStateToProps = (state: RootState): MTMergeModalStateProps => { MTMerge: { showMTMerge, processStatus, + selectedDocId, + selectedLocaleId // queryStatus } } @@ -29,6 +31,8 @@ const mapReduxStateToProps = (state: RootState): MTMergeModalStateProps => { showMTMerge, availableLocales: locales as Locale[], processStatus, + selectedDocId, + selectedLocaleId // queryStatus } } @@ -45,7 +49,7 @@ const mapDispatchToProps = (dispatch: any): MTMergeModalDispatchProps => { dispatch(currentMTMergeProcessFinished()) }, onCancel: () => { - dispatch(toggleMTMergeModal()) + dispatch(toggleMTMergeModal({show: false})) }, onSubmit: (projectSlug, versionSlug, mtMergeOptions) => { dispatch(mergeVersionFromMT(projectSlug, versionSlug, mtMergeOptions)) diff --git a/server/zanata-frontend/src/app/jsf/index.js b/server/zanata-frontend/src/app/jsf/index.js index a773e81d53b..e792942023f 100644 --- a/server/zanata-frontend/src/app/jsf/index.js +++ b/server/zanata-frontend/src/app/jsf/index.js @@ -56,7 +56,8 @@ const enhancedHistory = syncHistoryWithStore(history, store) export default function mountReactToJsf () { // Attaching to window object so modals can be triggered from the JSF page - window.toggleMTMergeModal = () => store.dispatch(toggleMTMergeModal()) + window.toggleMTMergeModal = (show, docId, localeId) => + store.dispatch(toggleMTMergeModal({show, docId, localeId})) window.toggleTMMergeModal = () => store.dispatch(toggleTMMergeModal()) window.toggleTMXExportModal = (show) => store.dispatch(showExportTMXModal(show)) diff --git a/server/zanata-frontend/src/app/reducers/state.ts b/server/zanata-frontend/src/app/reducers/state.ts index 8103b431898..a42be369ec1 100644 --- a/server/zanata-frontend/src/app/reducers/state.ts +++ b/server/zanata-frontend/src/app/reducers/state.ts @@ -27,6 +27,8 @@ export type ProjectVersionState = { triggered: boolean processStatus?: ProcessStatus queryStatus?: string + selectedLocaleId?: string + selectedDocId?: string } TMMerge: { show: boolean diff --git a/server/zanata-frontend/src/app/reducers/version-reducer.js b/server/zanata-frontend/src/app/reducers/version-reducer.js index f25b6acc57a..8cbdb75c7a3 100644 --- a/server/zanata-frontend/src/app/reducers/version-reducer.js +++ b/server/zanata-frontend/src/app/reducers/version-reducer.js @@ -36,6 +36,8 @@ export const defaultState = { triggered: false, processStatus: undefined, queryStatus: undefined, + selectedLocaleId: undefined, + selectedDocId: undefined }, TMMerge: { show: false, @@ -56,9 +58,13 @@ export const defaultState = { // Should be fixed by Redux 4: https://github.com/reactjs/redux/pull/2773 /** @type {import('redux').Reducer} */ const version = handleActions({ - [TOGGLE_MT_MERGE_MODAL]: (state, _action) => { + [TOGGLE_MT_MERGE_MODAL]: (state, action) => { return update(state, { - MTMerge: { showMTMerge: { $set: !state.MTMerge.showMTMerge } } + MTMerge: { + showMTMerge: { $set: action.payload.show }, + selectedDocId: { $set: action.payload.docId }, + selectedLocaleId: { $set: action.payload.localeId } + } }) }, [TOGGLE_TM_MERGE_MODAL]: (state, _action) => { diff --git a/server/zanata-war/src/main/webapp/WEB-INF/layout/version/languages-tab.xhtml b/server/zanata-war/src/main/webapp/WEB-INF/layout/version/languages-tab.xhtml index fd15c1ddb79..672869e541a 100644 --- a/server/zanata-war/src/main/webapp/WEB-INF/layout/version/languages-tab.xhtml +++ b/server/zanata-war/src/main/webapp/WEB-INF/layout/version/languages-tab.xhtml @@ -418,7 +418,7 @@
  • - + #{msgs['jsf.iteration.MTMerge']} diff --git a/server/zanata-war/src/main/webapp/iteration/view.xhtml b/server/zanata-war/src/main/webapp/iteration/view.xhtml index bbc66d72137..cccbf1b94e3 100644 --- a/server/zanata-war/src/main/webapp/iteration/view.xhtml +++ b/server/zanata-war/src/main/webapp/iteration/view.xhtml @@ -425,7 +425,7 @@
  • - + #{msgs['jsf.iteration.MTMerge']}