# How to manipulate the floating panel?

**URL:** <https://devforum.zoom.us/t/how-to-manipulate-the-floating-panel/38747>\
**Category:** macOS\
**Created:** [December 18, 2020, 4:50pm UTC](https://devforum.zoom.us/t/how-to-manipulate-the-floating-panel/38747 "2020-12-18T16:50:01Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![tmiskiew](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tmiskiew/32/9174_2.png) [@tmiskiew](https://devforum.zoom.us/u/tmiskiew)\
**Post date:** [December 18, 2020, 4:50pm UTC](https://devforum.zoom.us/t/how-to-manipulate-the-floating-panel/38747/1 "2020-12-18T16:50:01Z")

</div>

This is how we manipulate the buttons of the floating panel

 ![image](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/1/7/175dc4e7ad444f3032e9e69f6738fe5293719eb7.png)

```
func switchToVideoWallView() {
    let result = sdkMeetingUIController?.switchToVideoWallView()
    print("switchToVideoWallView() result: \(String(describing: result))")
  }
  func switchToActiveSpeakerView() {
    let result = sdkMeetingUIController?.switchToActiveSpeakerView()
    print("switchToActiveSpeakerView() result: \(String(describing: result))")
  }
  func switchFloatVideoToMinimizeMode() {
    let result = sdkMeetingUIController?.switchFloatVideoToMinimizeMode()
    print("switchFloatVideoToMinimizeMode() result: \(String(describing: result))")
  }
  func switchFloatVideoToActiveSpeakerMode() {
    let result = sdkMeetingUIController?.switchFloatVideoToActiveSpeakerMode()
    print("switchFloatVideoToActiveSpeakerMode() result: \(String(describing: result))")
  }
  func switchFloatVideoToGalleryMode() {
    let result = sdkMeetingUIController?.switchFloatVideoToGalleryMode()
    print("switchFloatVideoToGalleryMode() result: \(String(describing: result))")
  }
  func toggleFullScreen() {
    let result = sdkMeetingUIController?.enterFullScreen(isMinimizedWindow == false, firstMonitor: true, dualMonitor: false)
    if (result == ZoomSDKError_Success) { isMinimizedWindow.toggle() } //switch local variable to current state of full screen
    print("enterFullScreen(\(isMinimizedWindow)) result: \(String(describing: result))")
  }
  func showPreviousPageWallView() {
    let result = sdkMeetingUIController?.showPreOrNextPageWallView(false)
    print("showPreOrNextPageWallView() result: \(String(describing: result))")
  }
  func showNextPageWallView() {
    let result = sdkMeetingUIController?.showPreOrNextPageWallView(true)
    print("showPreOrNextPageWallView() result: \(String(describing: result))")
  }

```

As a result we get

Recieved: Optional("{“remoteAction”:{“changeUI”:{“switchFloatVideoToMinimizeMode”:true}}}")  
switchFloatVideoToMinimizeMode() result: Optional(\_\_C.ZoomSDKError(rawValue: 4))  
Recieved: Optional("{“remoteAction”:{“changeUI”:{“switchFloatVideoToActiveSpeakerMode”:true}}}")  
switchFloatVideoToActiveSpeakerMode() result: Optional(\_\_C.ZoomSDKError(rawValue: 4))  
Recieved: Optional("{“remoteAction”:{“changeUI”:{“switchFloatVideoToGalleryMode”:true}}}")  
switchFloatVideoToGalleryMode() result: Optional(\_\_C.ZoomSDKError(rawValue: 4))  
Recieved: Optional("{“remoteAction”:{“changeUI”:{“swapToShowShareViewOrVideo”:true}}}")  
swap(toShowShareViewOrVideo true) result: Optional(\_\_C.ZoomSDKError(rawValue: 4))  
Recieved: Optional("{“remoteAction”:{“changeUI”:{“showPreviousPageWallView”:true}}}")  
showPreOrNextPageWallView() result: Optional(\_\_C.ZoomSDKError(rawValue: 4))  
Recieved: Optional("{“remoteAction”:{“changeUI”:{“showNextPageWallView”:true}}}")  
showPreOrNextPageWallView() result: Optional(\_\_C.ZoomSDKError(rawValue: 4))

However when one of the participants is sharing his screen those calls start working.

What are we doing wrong here?

Thomas

---

<div class="post-metadata">

**Author:** ![jon.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/jon.zoom/32/13495_2.png) [@jon.zoom](https://devforum.zoom.us/u/jon.zoom)\
**Post date:** [December 21, 2020, 6:41pm UTC](https://devforum.zoom.us/t/how-to-manipulate-the-floating-panel/38747/2 "2020-12-21T18:41:42Z")

</div>

Hi @tmiskiew, thanks for the post.

As far as I am aware, this is expected behavior. Based on my experience in meetings, this floating participant panel is meant for use when someone is sharing their screen. Please let me know if I am overlooking something in your use case though. 🙂

Thanks!

---

<div class="post-metadata">

**Author:** ![tmiskiew](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tmiskiew/32/9174_2.png) [@tmiskiew](https://devforum.zoom.us/u/tmiskiew)\
**Post date:** [December 21, 2020, 7:17pm UTC](https://devforum.zoom.us/t/how-to-manipulate-the-floating-panel/38747/3 "2020-12-21T19:17:12Z")

</div>

Yes, you’re overlooking something. As I said with the zoom client I can manipulate the floating panel without someone sharing. Can you try it or do I need to record a video for you as poof?
