FocusTab Operation
This operation focuses on a particular browser tab, or an MSI tab opened in the current browser tab. This is an operation specific to the tab, so it should be executed on TabContext. The response will fetch the details of the current tab's context, meaning the focused tab's context and the previous tab's context.
Note: FocusTab operation is publishable from the TabContext level.
Here's a TypeScript
example:
const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID','V1');
const tabContext: ITabContext = await frameworkProvider.getTabContext();
const payload: IOperationRequest =
frameworkProvider.requestHelper.createPublishRequest('cxEventBusFocusTabOperation');
tabContext.publish(payload).then((message: IOperationResponse) => {
const currentTab: ITabContext = (message as
IFocusTabResponseData).getResponseData().getCurrentTab();
const previousTab: ITabContext = (message as
IFocusTabResponseData).getResponseData().getPreviousTab();
}).catch((error: IErrorData) => {
});
Here's a JavaScript example:
const publishFocusTab = async () => {
const frameworkProvider = await
CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');
const tabContext = await frameworkProvider.getTabContext();
const payload =
frameworkProvider.requestHelper.createPublishRequest('cxEventBusFocusTabOperation');
tabContext.publish(payload).then((message) => {
const currentTab = message.getResponseData().getCurrentTab();
const previousTab = message.getResponseData().getPreviousTab();
}).catch((error) => {
});
};