jitsi_meet_wrapper icon indicating copy to clipboard operation
jitsi_meet_wrapper copied to clipboard

Add macOS Support

Open jaumard opened this issue 3 years ago • 5 comments

Should be pretty straight forward as it should be very close to what is done for iOS. Same I'll try to make a PR if you're ok with that :)

jaumard avatar Dec 19 '21 13:12 jaumard

Hum in fact might be harder, just see that jitsi doesn't have a mac SDK at all as they rely on an electron wrapper... bummer but let's keep that open in any case to keep it on the radar

jaumard avatar Dec 19 '21 13:12 jaumard

I've integrated Jitsi by web for desktops: a new window that it's closed automatically when the user ends his session.

@saibotma do you consider it could be a friendly solution for this plugin?

efraespada avatar May 11 '22 10:05 efraespada

Sounds very interesting. Do you have any implementation to share? Could be a good candidate for this package.

saibotma avatar May 11 '22 15:05 saibotma

Yep, it is simple, with desktop_webview_window:

var room = '$domain/${meet.hash}';
room += '#userInfo.displayName="${user.name}"';
room += '&userInfo.email="${user.email}"';
room += '&config.subject="$subject"';

room = Uri.encodeFull(room);

Webview desktopWebview = await WebviewWindow.create(
  configuration: CreateConfiguration(
    title: subject,
    titleBarHeight: 0,
  ),
);
desktopWebview?.addOnUrlRequestCallback((url) {
  if (!url.contains(meet.hash)) {
    desktopWebview?.close();
  }
});
desktopWebview?.launch(room);

Jitsi is configured by URL parameters and the window is closed when the meet ends (when the redirection is done).

efraespada avatar May 13 '22 08:05 efraespada

Wow, this looks good, thanks. Will think about how we can include this into this package.

saibotma avatar May 16 '22 03:05 saibotma