UI: Refactor all browser dock classes in to one

Refactors all cases where a window class was created to show a browser
dock in to one class: BrowserDock.  Removes some unnecessary code
duplication.
This commit is contained in:
jp9000
2019-09-03 16:08:48 -07:00
parent 04d1f04bd3
commit 7dd465cae1
9 changed files with 51 additions and 84 deletions

View File

@@ -9,17 +9,14 @@
#include <sstream>
#include <obs-app.hpp>
#include "window-dock-browser.hpp"
#include "window-basic-main.hpp"
#include "remote-text.hpp"
#include "ui-config.h"
#include "obf.h"
#include <browser-panel.hpp>
using namespace json11;
extern QCef *cef;
extern QCefCookieManager *panel_cookies;
/* ------------------------------------------------------------------------- */
#define RESTREAM_AUTH_URL \
@@ -117,13 +114,6 @@ bool RestreamAuth::LoadInternal()
return OAuthStreamKey::LoadInternal();
}
class RestreamWidget : public QDockWidget {
public:
inline RestreamWidget() : QDockWidget() {}
QScopedPointer<QCefWidget> widget;
};
void RestreamAuth::LoadUI()
{
if (uiLoaded)
@@ -145,7 +135,7 @@ void RestreamAuth::LoadUI()
QSize size = main->frameSize();
QPoint pos = main->pos();
chat.reset(new RestreamWidget());
chat.reset(new BrowserDock());
chat->setObjectName("restreamChat");
chat->resize(420, 600);
chat->setMinimumSize(200, 300);
@@ -153,7 +143,7 @@ void RestreamAuth::LoadUI()
chat->setAllowedAreas(Qt::AllDockWidgetAreas);
browser = cef->create_widget(nullptr, url, panel_cookies);
chat->setWidget(browser);
chat->SetWidget(browser);
main->addDockWidget(Qt::RightDockWidgetArea, chat.data());
chatMenu.reset(main->AddDockWidget(chat.data()));
@@ -162,7 +152,7 @@ void RestreamAuth::LoadUI()
url = "https://restream.io/titles/embed";
info.reset(new RestreamWidget());
info.reset(new BrowserDock());
info->setObjectName("restreamInfo");
info->resize(410, 600);
info->setMinimumSize(200, 150);
@@ -170,7 +160,7 @@ void RestreamAuth::LoadUI()
info->setAllowedAreas(Qt::AllDockWidgetAreas);
browser = cef->create_widget(nullptr, url, panel_cookies);
info->setWidget(browser);
info->SetWidget(browser);
main->addDockWidget(Qt::LeftDockWidgetArea, info.data());
infoMenu.reset(main->AddDockWidget(info.data()));
@@ -179,7 +169,7 @@ void RestreamAuth::LoadUI()
url = "https://restream.io/channel/embed";
channels.reset(new RestreamWidget());
channels.reset(new BrowserDock());
channels->setObjectName("restreamChannel");
channels->resize(410, 600);
channels->setMinimumSize(410, 300);
@@ -187,7 +177,7 @@ void RestreamAuth::LoadUI()
channels->setAllowedAreas(Qt::AllDockWidgetAreas);
browser = cef->create_widget(nullptr, url, panel_cookies);
channels->setWidget(browser);
channels->SetWidget(browser);
main->addDockWidget(Qt::LeftDockWidgetArea, channels.data());
channelMenu.reset(main->AddDockWidget(channels.data()));