summaryrefslogtreecommitdiffstats
path: root/academic/openboard/run-in-a-window.patch
diff options
context:
space:
mode:
author Willy Sudiarto Raharjo2021-05-06 04:00:18 +0200
committer Willy Sudiarto Raharjo2021-05-07 19:48:23 +0200
commitd0dffc098f3a942316a0c2c2f18eeadc32d5ac32 (patch)
treefb1c89dff05c67cfb47d9c593f8d5c48bb701c68 /academic/openboard/run-in-a-window.patch
parent7be081d225fe8936e28e70cf2742ce1df9d68666 (diff)
downloadslackbuilds-d0dffc098f3a942316a0c2c2f18eeadc32d5ac32.tar.gz
academic/openboard: Added.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'academic/openboard/run-in-a-window.patch')
-rw-r--r--academic/openboard/run-in-a-window.patch154
1 files changed, 154 insertions, 0 deletions
diff --git a/academic/openboard/run-in-a-window.patch b/academic/openboard/run-in-a-window.patch
new file mode 100644
index 0000000000..84c9cca3eb
--- /dev/null
+++ b/academic/openboard/run-in-a-window.patch
@@ -0,0 +1,154 @@
+Patch for OpenBoard v. 1.6.0a3 by Roberto Puzzanghera roberto.puzzanghera at sagredo.eu
+based on this patch http://webdiis.unizar.es/~spd/openboard/index.html.en
+
+OpenBoard runs in fullscreen mode. This seems to prevent the possibility to be recognized
+by Google meet as an application to share. This patch gets OpenBoard to optionally run in
+a window and solves the issue.
+
+With this patch OB runs in fullscreen mode by default. To run it in a window simply
+adjust this option to true in the config file:
+
+RunInWindow=true
+
+On linux the location of the config file is /opt/openboard/etc/OpenBoard.config. A user
+can override this file acting in local config file ~/.local/share/OpenBoard/OpenBoardUser.config
+
+=============================================================================================
+
+diff -ruN OpenBoard-1.6.0a3-original/OpenBoard.pro OpenBoard-1.6.0a3/OpenBoard.pro
+--- OpenBoard-1.6.0a3-original/OpenBoard.pro 2020-05-22 18:40:49.000000000 +0200
++++ OpenBoard-1.6.0a3/OpenBoard.pro 2020-10-24 10:58:50.421254271 +0200
+@@ -442,6 +442,10 @@
+ QMAKE_CFLAGS += -fopenmp
+ QMAKE_CXXFLAGS += -fopenmp
+ QMAKE_LFLAGS += -fopenmp
++# RunInWindow patch
++ # Necessary for CentOS/RHEL and won't harm in other distributions
++ INCLUDEPATH += /usr/include/ffmpeg
++# end patch
+ UB_LIBRARY.path = $$DESTDIR
+ UB_I18N.path = $$DESTDIR/i18n
+ UB_ETC.path = $$DESTDIR
+diff -ruN OpenBoard-1.6.0a3-original/resources/etc/OpenBoard.config OpenBoard-1.6.0a3/resources/etc/OpenBoard.config
+--- OpenBoard-1.6.0a3-original/resources/etc/OpenBoard.config 2020-05-22 18:40:49.000000000 +0200
++++ OpenBoard-1.6.0a3/resources/etc/OpenBoard.config 2020-10-24 10:59:50.005263852 +0200
+@@ -14,6 +14,7 @@
+ PageCacheSize=20
+ PreferredLanguage=fr_CH
+ ProductWebAddress=http://www.openboard.ch
++RunInWindow=false
+ SoftwareUpdateURL=http://www.openboard.ch/update.json
+ StartMode=
+ SwapControlAndDisplayScreens=false
+diff -ruN OpenBoard-1.6.0a3-original/src/core/UBApplication.cpp OpenBoard-1.6.0a3/src/core/UBApplication.cpp
+--- OpenBoard-1.6.0a3-original/src/core/UBApplication.cpp 2020-05-22 18:40:49.000000000 +0200
++++ OpenBoard-1.6.0a3/src/core/UBApplication.cpp 2020-10-24 11:03:09.881941449 +0200
+@@ -277,8 +277,21 @@
+ gs->setAttribute(QWebSettings::JavascriptCanAccessClipboard, true);
+ gs->setAttribute(QWebSettings::DnsPrefetchEnabled, true);
+
++ /* RunInWindow patch */
++ if (UBSettings::settings()->appRunInWindow->get().toBool()) {
++ mainWindow = new UBMainWindow(0,
++ Qt::Window |
++ Qt::WindowCloseButtonHint |
++ Qt::WindowMinimizeButtonHint |
++ Qt::WindowMaximizeButtonHint |
++ Qt::WindowShadeButtonHint
++ ); // deleted by application destructor
++ } else {
++ mainWindow = new UBMainWindow(0, Qt::FramelessWindowHint); // deleted by application destructor
++ }
++ /* mainWindow = new UBMainWindow(0, Qt::FramelessWindowHint); // deleted by application destructor */
++ /* end patch */
+
+- mainWindow = new UBMainWindow(0, Qt::FramelessWindowHint); // deleted by application destructor
+ mainWindow->setAttribute(Qt::WA_NativeWindow, true);
+
+ mainWindow->actionCopy->setShortcuts(QKeySequence::Copy);
+diff -ruN OpenBoard-1.6.0a3-original/src/core/UBSettings.cpp OpenBoard-1.6.0a3/src/core/UBSettings.cpp
+--- OpenBoard-1.6.0a3-original/src/core/UBSettings.cpp 2020-05-22 18:40:49.000000000 +0200
++++ OpenBoard-1.6.0a3/src/core/UBSettings.cpp 2020-10-24 11:02:43.074387051 +0200
+@@ -265,6 +265,9 @@
+ appLookForOpenSankoreInstall = new UBSetting(this, "App", "LookForOpenSankoreInstall", true);
+
+ appStartMode = new UBSetting(this, "App", "StartMode", "");
++ /* RunInWindow patch */
++ appRunInWindow = new UBSetting(this, "App", "RunInWindow", false);
++ /* end patch */
+
+ featureSliderPosition = new UBSetting(this, "Board", "FeatureSliderPosition", 40);
+
+diff -ruN OpenBoard-1.6.0a3-original/src/core/UBSettings.h OpenBoard-1.6.0a3/src/core/UBSettings.h
+--- OpenBoard-1.6.0a3-original/src/core/UBSettings.h 2020-05-22 18:40:49.000000000 +0200
++++ OpenBoard-1.6.0a3/src/core/UBSettings.h 2020-10-24 11:06:13.206894166 +0200
+@@ -260,7 +260,9 @@
+ UBSetting* appHideSwapDisplayScreens;
+ UBSetting* appToolBarOrientationVertical;
+ UBSetting* appPreferredLanguage;
+-
++ /* RunInWindow patch */
++ UBSetting* appRunInWindow;
++ /* end patch */
+ UBSetting* appIsInSoftwareUpdateProcess;
+
+ UBSetting* appLastSessionDocumentUUID;
+diff -ruN OpenBoard-1.6.0a3-original/src/frameworks/UBPlatformUtils_linux.cpp OpenBoard-1.6.0a3/src/frameworks/UBPlatformUtils_linux.cpp
+--- OpenBoard-1.6.0a3-original/src/frameworks/UBPlatformUtils_linux.cpp 2020-05-22 18:40:49.000000000 +0200
++++ OpenBoard-1.6.0a3/src/frameworks/UBPlatformUtils_linux.cpp 2020-10-24 11:00:43.708371185 +0200
+@@ -36,7 +36,9 @@
+ #include <X11/keysym.h>
+
+ #include "frameworks/UBFileSystemUtils.h"
+-
++/* RunInWindow patch */
++#include "core/UBSettings.h"
++/* end patch */
+
+ void UBPlatformUtils::init()
+ {
+@@ -439,7 +441,14 @@
+
+ void UBPlatformUtils::showFullScreen(QWidget *pWidget)
+ {
+- pWidget->showFullScreen();
++ /* RunInWindow patch */
++ /* pWidget->showFullScreen(); */
++ if (UBSettings::settings()->appRunInWindow->get().toBool()) {
++ pWidget->showNormal();
++ } else {
++ pWidget->showFullScreen();
++ }
++ /* end patch */
+ }
+
+ void UBPlatformUtils::showOSK(bool show)
+diff -ruN OpenBoard-1.6.0a3-original/src/frameworks/UBPlatformUtils_win.cpp OpenBoard-1.6.0a3/src/frameworks/UBPlatformUtils_win.cpp
+--- OpenBoard-1.6.0a3-original/src/frameworks/UBPlatformUtils_win.cpp 2020-05-22 18:40:49.000000000 +0200
++++ OpenBoard-1.6.0a3/src/frameworks/UBPlatformUtils_win.cpp 2020-10-24 11:01:26.170665369 +0200
+@@ -36,6 +36,9 @@
+
+ #include "frameworks/UBFileSystemUtils.h"
+ #include "core/memcheck.h"
++/* RunInWindow patch */
++#include "core/UBSettings.h"
++/* end patch */
+
+ void UBPlatformUtils::init()
+ {
+@@ -436,7 +439,14 @@
+
+ void UBPlatformUtils::showFullScreen(QWidget *pWidget)
+ {
+- pWidget->showFullScreen();
++ /* RunInWindow patch */
++ /* pWidget->showFullScreen(); */
++ if (UBSettings::settings()->appRunInWindow->get().toBool()) {
++ pWidget->showNormal();
++ } else {
++ pWidget->showFullScreen();
++ }
++ /* end patch */
+ }
+
+ void UBPlatformUtils::showOSK(bool show)