MeetingUIController showMeetingComponent:MeetingComponent_MainWindow makes window null


I’m working with a custom UI app on macOS - ideally I will also be able to use the default zoomUI alongside my custom UI elements. I have noticed that this is possible in certain other cutom UI zoom apps but at the moment when I create the meeting component the window object I am passing is being turned into nil - even though the function is returning a Success result

I am attempting to create this once I receive a meetingStarted message

Any thoughts?


Just to add, this is the code I am trying, with some comments as to what is happening:

NSWindow *w = [NSWindow new];
NSLog(@“w is %@”, w); //w is now an obkect
ZoomSDKError error = [[[[ZoomSDK sharedSDK] getMeetingService] getMeetingUIController] showMeetingComponent:MeetingComponent_MainWindow window:&w show:YES InPanel:NO frame:CGRectMake(0, 0, 500, 1024)];

NSLog(@“GOT ERROR %i”, error); //Error returned is 0 (success)
NSLog(@“W is %@”, w); //however w is now nil

[w makeKeyAndOrderFront:nil];

Hi @richard1, thanks for the post.

Can you please verify the following information while we investigate this?

  • SDK version
  • macOS version
  • When you are calling this method relative to when you have joined the meeting



I’m on latest SDK version and macOS 10.15.7

I’ve tried calling at a few points - with the latest being once I get the notification that the meeting has started successfully. I have also tried calling it a few minutes into a meeting

Note I can successfully create the settings window with effectively the same code

Is there a time this should be called?


Hi @richard1,

Thanks for the info. We will look into this and let you know as soon as we have an update.

Is there a time this should be called?

The only requirement I am aware of is that you would need to already be in the meeting, but I will let you know if I discover any additional restrictions around this.


Thanks Jon - Looking at this in more detail I suspect it’s not designed to create the meetingWindow, rather to show or hide it once it’s already completed - since a custom UI never creates it then it won’t show it.

What I’m intrugued about is how other custom UI apps are managing to display the standard vanilla zoom view in a custom UI app (while other custom UI elements are visible) - I know of one that appears to do this and would love to know the trick.

are we allowed to zoom on here?

Hi @richard1,

You beat me to it, you are absolutely right that this can only be used with the default UI.

What I’m intrugued about is how other custom UI apps are managing to display the standard vanilla zoom view in a custom UI app

It’s a little difficult to tell exactly what approach this other application could be using without more specific information. Could you provide a screenshot or description of how the default UI fits into their custom UI?


Hi @2961517,

This forum is meant only to assist developers who are integrating our SDK into their own application. If you are looking for help with the Zoom client, please visit our general support page. :slightly_smiling_face:


Thanks Jon

The other app (circles) simply has a menu item which switches the UI for the call (in progress) between their custom UI and a normal Vanilla zoom window, however even while seeing the vanilla UI you can access custom video elements in their app so both parts appear to function happily together.

Hi @richard1,

Thanks for providing that example. It looks like Circles is using an older version of the SDK based on the default UI’s appearance, so it is possible that this behavior has changed since then. It is also possible that the Zoom UI is being recreated, but that approach wouldn’t really help us here, so we can just sidestep that thought for now.

I’m not sure what other approaches could be used here, so I will follow up with the team and see if anyone has additional ideas on how this could be implemented and get back to you.


This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.