summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulien Veyssier <eneiluj@posteo.net>2022-09-08 11:48:00 +0200
committerJulien Veyssier <eneiluj@posteo.net>2022-09-15 18:06:21 +0200
commit845149bb7ccba5f0de37d145c6b7d13a7532e68b (patch)
tree4d3983026685073123b8f4a16f33f56ba5a5af12
parenta3912e264a26d5ab3d042e6b47e7c75d2b123ada (diff)
downloadnextcloud-server-845149bb7ccba5f0de37d145c6b7d13a7532e68b.tar.gz
nextcloud-server-845149bb7ccba5f0de37d145c6b7d13a7532e68b.zip
add IItemOptionWidget to define some item-related parameters, only getItemIconsRound() for now
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
-rw-r--r--apps/dashboard/lib/Controller/DashboardApiController.php2
-rw-r--r--lib/public/Dashboard/IItemOptionWidget.php37
2 files changed, 39 insertions, 0 deletions
diff --git a/apps/dashboard/lib/Controller/DashboardApiController.php b/apps/dashboard/lib/Controller/DashboardApiController.php
index 9f9872dc916..b0859a088c6 100644
--- a/apps/dashboard/lib/Controller/DashboardApiController.php
+++ b/apps/dashboard/lib/Controller/DashboardApiController.php
@@ -30,6 +30,7 @@ use OCP\AppFramework\OCSController;
use OCP\AppFramework\Http\DataResponse;
use OCP\Dashboard\IButtonWidget;
use OCP\Dashboard\IIconWidget;
+use OCP\Dashboard\IItemOptionWidget;
use OCP\Dashboard\IManager;
use OCP\Dashboard\IWidget;
use OCP\Dashboard\Model\WidgetButton;
@@ -112,6 +113,7 @@ class DashboardApiController extends OCSController {
'icon_class' => $widget->getIconClass(),
'icon_url' => ($widget instanceof IIconWidget) ? $widget->getIconUrl() : '',
'widget_url' => $widget->getUrl(),
+ 'item_icons_round' => ($widget instanceof IItemOptionWidget) ? $widget->getItemIconsRound() : false,
];
if ($widget instanceof IButtonWidget) {
$data += [
diff --git a/lib/public/Dashboard/IItemOptionWidget.php b/lib/public/Dashboard/IItemOptionWidget.php
new file mode 100644
index 00000000000..9826286b041
--- /dev/null
+++ b/lib/public/Dashboard/IItemOptionWidget.php
@@ -0,0 +1,37 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * @copyright Copyright (c) 2022 Julien Veyssier <eneiluj@posteo.net>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+namespace OCP\Dashboard;
+
+/**
+ * Allow getting widget options
+ *
+ * @since 25.0.0
+ */
+interface IItemOptionWidget extends IWidget {
+ /**
+ * Should the item icons be rendered round (or raw/square) by the clients?
+ *
+ * @return bool
+ */
+ public function getItemIconsRound(): bool;
+}