You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2020/09/06 15:15:43 UTC
[openmeetings] branch master updated: [OPENMEETINGS-2426] multiple
UI issues should be fixed
This is an automated email from the ASF dual-hosted git repository.
solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/master by this push:
new 1a0d10b [OPENMEETINGS-2426] multiple UI issues should be fixed
1a0d10b is described below
commit 1a0d10b98be16c20a54ef8a8fdebde9400e2599c
Author: Maxim Solodovnik <so...@gmail.com>
AuthorDate: Sun Sep 6 22:14:33 2020 +0700
[OPENMEETINGS-2426] multiple UI issues should be fixed
---
.../openmeetings/web/admin/AdminActionsPanel.java | 2 +-
.../web/admin/configurations/ConfigsPanel.html | 2 +-
.../web/admin/connection/ConnectionsPanel.java | 2 +-
.../openmeetings/web/admin/email/EmailForm.java | 2 +-
.../web/admin/groups/GroupUsersPanel.java | 2 +-
.../openmeetings/web/admin/labels/LangPanel.java | 2 +-
.../openmeetings/web/admin/oauth/OAuthForm.java | 2 +-
.../openmeetings/web/admin/rooms/RoomForm.java | 2 +-
.../openmeetings/web/common/FormActionsPanel.java | 2 +-
.../apache/openmeetings/web/common/MainPanel.java | 2 +-
.../web/common/UploadableImagePanel.java | 2 +-
.../common/confirmation/ConfirmableAjaxBorder.html | 1 -
.../common/confirmation/ConfirmableAjaxBorder.java | 72 ++--------------------
.../common/confirmation/ConfirmationBehavior.java | 18 ++++++
.../web/common/tree/FileTreePanel.html | 1 +
.../web/common/tree/FileTreePanel.java | 26 ++++----
.../web/room/poll/PollResultsDialog.java | 2 +-
.../web/user/calendar/AppointmentDialog.java | 2 +-
.../web/user/calendar/CalendarDialog.java | 2 +-
.../openmeetings/web/user/chat/ChatToolbar.java | 2 +-
.../dashboard/admin/AdminCleanupInfoDialog.java | 2 +-
.../web/user/profile/InvitationDetails.java | 2 +-
.../web/user/profile/MessagesContactsPanel.java | 2 +-
openmeetings-web/src/main/webapp/css/raw-room.css | 17 ++++-
24 files changed, 68 insertions(+), 103 deletions(-)
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminActionsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminActionsPanel.java
index 3fc63da..c565b78 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminActionsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminActionsPanel.java
@@ -18,7 +18,7 @@
*/
package org.apache.openmeetings.web.admin;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import org.apache.openmeetings.web.common.FormActionsPanel;
import org.apache.wicket.ajax.AjaxRequestTarget;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.html
index a34bc28..8f29abd 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.html
@@ -67,7 +67,7 @@
<label wicket:for="valueB" class="col-3 text-right"><wicket:message key="271" /></label>
<div class="onoffswitch">
<input type="checkbox" class="onoff-checkbox" wicket:id="valueB"/>
- <label class="onoff-label" wicket:for="valueB"></label>
+ <label class="onoff-label clickable" wicket:for="valueB"></label>
</div>
</div>
<div wicket:id="hotkey-box">
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
index 3ba5697..a57b704 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
@@ -20,7 +20,7 @@ package org.apache.openmeetings.web.admin.connection;
import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
import static org.apache.openmeetings.web.app.WebSession.getDateFormat;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelConfirm;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/email/EmailForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/email/EmailForm.java
index cfbdb03..4ea2256 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/email/EmailForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/email/EmailForm.java
@@ -18,7 +18,7 @@
*/
package org.apache.openmeetings.web.admin.email;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import org.apache.openmeetings.db.dao.basic.MailMessageDao;
import org.apache.openmeetings.db.entity.basic.MailMessage;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupUsersPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupUsersPanel.java
index fe55167..10a7605 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupUsersPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupUsersPanel.java
@@ -18,7 +18,7 @@
*/
package org.apache.openmeetings.web.admin.groups;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import java.util.ArrayList;
import java.util.List;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
index 8c4791d..4d43642 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
@@ -20,7 +20,7 @@ package org.apache.openmeetings.web.admin.labels;
import static java.time.Duration.ZERO;
import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import static org.apache.wicket.request.resource.ContentDisposition.ATTACHMENT;
import java.io.IOException;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthForm.java
index b3a144c..6027e9d 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthForm.java
@@ -19,7 +19,7 @@
package org.apache.openmeetings.web.admin.oauth;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import static org.apache.openmeetings.web.pages.auth.SignInPage.getRedirectUri;
import java.util.AbstractMap.SimpleEntry;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
index a67edcc..9706455 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
@@ -23,7 +23,7 @@ import static org.apache.openmeetings.web.admin.AdminUserChoiceProvider.PAGE_SIZ
import static org.apache.openmeetings.web.app.Application.kickUser;
import static org.apache.openmeetings.web.app.WebSession.getRights;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import static org.apache.wicket.validation.validator.StringValidator.maximumLength;
import java.util.ArrayList;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/FormActionsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/FormActionsPanel.java
index 48e268d..6591b2e 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/FormActionsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/FormActionsPanel.java
@@ -18,7 +18,7 @@
*/
package org.apache.openmeetings.web.common;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
index ed16515..2cc9ec4 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
@@ -24,7 +24,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
import static org.apache.openmeetings.util.OpenmeetingsVariables.isMyRoomsEnabled;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelConfirm;
import static org.apache.openmeetings.web.util.CallbackFunctionHelper.getNamedFunction;
import static org.apache.openmeetings.web.util.CallbackFunctionHelper.getParam;
import static org.apache.openmeetings.web.util.OmUrlFragment.CHILD_ID;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UploadableImagePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UploadableImagePanel.java
index 36bb7e8..42a72d5 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UploadableImagePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UploadableImagePanel.java
@@ -19,7 +19,7 @@
package org.apache.openmeetings.web.common;
import static org.apache.openmeetings.util.OpenmeetingsVariables.getMaxUploadSize;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelConfirm;
import java.io.File;
import java.util.Optional;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmableAjaxBorder.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmableAjaxBorder.html
index e1325f5..e5bd812 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmableAjaxBorder.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmableAjaxBorder.html
@@ -22,6 +22,5 @@
<html xmlns:wicket="http://wicket.apache.org">
<wicket:border>
<wicket:body/>
- <div wicket:id="dialog"></div>
</wicket:border>
</html>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmableAjaxBorder.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmableAjaxBorder.java
index a5039c3..2b651c5 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmableAjaxBorder.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmableAjaxBorder.java
@@ -20,40 +20,21 @@ package org.apache.openmeetings.web.common.confirmation;
import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
-import org.apache.wicket.Component;
import org.apache.wicket.ajax.AjaxEventBehavior;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
import org.apache.wicket.markup.html.border.Border;
-import org.apache.wicket.model.IModel;
public abstract class ConfirmableAjaxBorder extends Border {
private static final long serialVersionUID = 1L;
- private final IModel<String> title;
- private final IModel<String> message;
- private ConfirmationDialog dialog;
+ private final ConfirmationDialog dialog;
- public ConfirmableAjaxBorder(String id, IModel<String> title, IModel<String> message) {
+ public ConfirmableAjaxBorder(String id, ConfirmationDialog dialog) {
super(id);
- this.title = title;
- this.message = message;
+ this.dialog = dialog;
setOutputMarkupId(true);
}
- private ConfirmationDialog getDialog() {
- if (dialog == null) {
- dialog = new ConfirmationDialog("dialog", title, message) {
- private static final long serialVersionUID = 1L;
-
- @Override
- protected void onConfirm(AjaxRequestTarget target) {
- ConfirmableAjaxBorder.this.onConfirm(target);
- }
- };
- }
- return dialog;
- }
-
@Override
protected void onInitialize() {
super.onInitialize();
@@ -69,27 +50,16 @@ public abstract class ConfirmableAjaxBorder extends Border {
@Override
protected void onEvent(AjaxRequestTarget target) {
if (isClickable()) {
- getDialog().show(target);
+ dialog.show(target);
}
}
});
- addToBorder(getDialog());
}
protected boolean isClickable() {
return true;
}
- public ConfirmableAjaxBorder setTitle(IModel<String> title) {
- getDialog().header(title);
- return this;
- }
-
- public ConfirmableAjaxBorder setMessage(IModel<String> message) {
- getDialog().setModel(message);
- return this;
- }
-
/**
* Gives a chance to the specializations to modify the attributes.
*
@@ -99,38 +69,6 @@ public abstract class ConfirmableAjaxBorder extends Border {
}
protected void onEvent(AjaxRequestTarget target) {
- getDialog().show(target);
- }
-
- /**
- * Triggered when the form is submitted, and the validation succeed
- *
- * @param target - the {@link AjaxRequestTarget}
- */
- protected abstract void onConfirm(AjaxRequestTarget target);
-
- @Override
- protected void detachModel() {
- super.detachModel();
- title.detach();
- message.detach();
- }
-
- public static ConfirmationBehavior newOkCancelDangerConfirm(Component c, String title) {
- return new ConfirmationBehavior(newOkCancelConfirmCfg(c, title)
- .withBtnOkClass("btn btn-sm btn-danger")
- .withBtnOkIconClass("fas fa-exclamation-triangle")
- );
- }
-
- public static ConfirmationBehavior newOkCancelConfirm(Component c, String title) {
- return new ConfirmationBehavior(newOkCancelConfirmCfg(c, title));
- }
-
- public static ConfirmationConfig newOkCancelConfirmCfg(Component c, String title) {
- return new ConfirmationConfig()
- .withBtnCancelLabel(c.getString("lbl.cancel"))
- .withBtnOkLabel(c.getString("54"))
- .withTitle(title);
+ dialog.show(target);
}
}
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmationBehavior.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmationBehavior.java
index 582617a..5b0864f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmationBehavior.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmationBehavior.java
@@ -91,4 +91,22 @@ public class ConfirmationBehavior extends BootstrapJavascriptBehavior {
response.render($(selector).chain("confirmation", config).asDomReadyScript());
}
}
+
+ public static ConfirmationBehavior newOkCancelConfirm(Component c, String title) {
+ return new ConfirmationBehavior(newOkCancelConfirmCfg(c, title));
+ }
+
+ public static ConfirmationConfig newOkCancelConfirmCfg(Component c, String title) {
+ return new ConfirmationConfig()
+ .withBtnCancelLabel(c.getString("lbl.cancel"))
+ .withBtnOkLabel(c.getString("54"))
+ .withTitle(title);
+ }
+
+ public static ConfirmationBehavior newOkCancelDangerConfirm(Component c, String title) {
+ return new ConfirmationBehavior(newOkCancelConfirmCfg(c, title)
+ .withBtnOkClass("btn btn-sm btn-danger")
+ .withBtnOkIconClass("fas fa-exclamation-triangle")
+ );
+ }
}
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
index 99ef290..b1dc66a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.html
@@ -67,5 +67,6 @@
<div wicket:id="errors"></div>
</div>
</form>
+ <div wicket:id="trash-confirm-dialog"></div>
</wicket:panel>
</html>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
index d60e6a7..9dcce65 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
@@ -46,6 +46,7 @@ import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.web.common.NameDialog;
import org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder;
+import org.apache.openmeetings.web.common.confirmation.ConfirmationDialog;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.Component;
import org.apache.wicket.ajax.AjaxEventBehavior;
@@ -133,6 +134,7 @@ public abstract class FileTreePanel extends Panel {
}
});
private final Component upload = new WebMarkupContainer("upload");
+ private ConfirmationDialog confirmTrashDialog;
@SpringBean
private RecordingDao recDao;
@@ -208,6 +210,7 @@ public abstract class FileTreePanel extends Panel {
}
}));
trashToolbar.add(getTrashBorder());
+ add(confirmTrashDialog);
form.add(trees.add(tree).setOutputMarkupId(true));
updateSizes();
@@ -304,33 +307,26 @@ public abstract class FileTreePanel extends Panel {
private ConfirmableAjaxBorder getTrashBorder() {
if (trashBorder == null) {
- trashBorder = new ConfirmableAjaxBorder("trash", new ResourceModel("80"), new ResourceModel("713")) {
+ confirmTrashDialog = new ConfirmationDialog("trash-confirm-dialog", new ResourceModel("80"), new ResourceModel("713")) {
private static final long serialVersionUID = 1L;
@Override
- protected boolean isClickable() {
- return !readOnly && !selected.isEmpty();
+ protected void onConfirm(AjaxRequestTarget target) {
+ deleteAll(target);
}
+ };
+ trashBorder = new ConfirmableAjaxBorder("trash", confirmTrashDialog) {
+ private static final long serialVersionUID = 1L;
@Override
- protected void onConfirm(AjaxRequestTarget target) {
- deleteAll(target);
+ protected boolean isClickable() {
+ return !readOnly && !selected.isEmpty();
}
};
}
return trashBorder;
}
- public FileTreePanel setBorderTitle(IModel<String> title) {
- getTrashBorder().setTitle(title);
- return this;
- }
-
- public FileTreePanel setBorderMessage(IModel<String> message) {
- getTrashBorder().setMessage(message);
- return this;
- }
-
@Override
public void renderHead(IHeaderResponse response) {
super.renderHead(response);
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.java
index ab9612f..c5cf96a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.java
@@ -20,7 +20,7 @@ package org.apache.openmeetings.web.room.poll;
import static org.apache.openmeetings.core.util.WebSocketHelper.sendRoom;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import java.util.ArrayList;
import java.util.List;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
index c0bfe0e..e10c8f9 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
@@ -21,7 +21,7 @@ package org.apache.openmeetings.web.user.calendar;
import static org.apache.openmeetings.util.OpenmeetingsVariables.isMyRoomsEnabled;
import static org.apache.openmeetings.web.app.WebSession.getRights;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import static org.apache.openmeetings.web.util.CalendarWebHelper.getDate;
import static org.apache.openmeetings.web.util.CalendarWebHelper.getDateTime;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
index a64c2f6..5356be1 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
@@ -19,7 +19,7 @@
package org.apache.openmeetings.web.user.calendar;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import java.util.List;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatToolbar.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatToolbar.java
index e9d6428..76c5098 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatToolbar.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/ChatToolbar.java
@@ -26,7 +26,7 @@ import static org.apache.openmeetings.web.app.WebSession.getDateFormat;
import static org.apache.openmeetings.web.app.WebSession.getRights;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import static org.apache.openmeetings.web.room.RoomPanel.isModerator;
import java.util.List;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
index 10acdbc..5d76376 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
@@ -26,7 +26,7 @@ import static org.apache.openmeetings.cli.CleanupHelper.getRecUnit;
import static org.apache.openmeetings.util.OmFileHelper.getHumanSize;
import static org.apache.openmeetings.util.OmFileHelper.getStreamsDir;
import static org.apache.openmeetings.util.OmFileHelper.getUploadDir;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import org.apache.openmeetings.cli.CleanupEntityUnit;
import org.apache.openmeetings.cli.CleanupUnit;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/InvitationDetails.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/InvitationDetails.java
index 4e528c3..f8df56a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/InvitationDetails.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/InvitationDetails.java
@@ -20,7 +20,7 @@ package org.apache.openmeetings.web.user.profile;
import static org.apache.openmeetings.db.util.FormatHelper.formatUser;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import java.util.Date;
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
index 22d82b6..b60c3dc 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
@@ -24,7 +24,7 @@ import static org.apache.openmeetings.db.entity.user.PrivateMessage.TRASH_FOLDER
import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
import static org.apache.openmeetings.web.app.WebSession.getDateFormat;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
+import static org.apache.openmeetings.web.common.confirmation.ConfirmationBehavior.newOkCancelDangerConfirm;
import java.util.ArrayList;
import java.util.HashSet;
diff --git a/openmeetings-web/src/main/webapp/css/raw-room.css b/openmeetings-web/src/main/webapp/css/raw-room.css
index f80b552..2ffa913 100644
--- a/openmeetings-web/src/main/webapp/css/raw-room.css
+++ b/openmeetings-web/src/main/webapp/css/raw-room.css
@@ -509,13 +509,26 @@ html[dir="rtl"] .room-block .sb-wb .sidebar {
}
.room-block .room-container .user-video {
display: inline-block !important;
- overflow: hidden;
}
.room-block .room-container .user-video .ui-resizable-se {
+ position: absolute;
+ display: inline-block;
+ width: 16px;
+ height: 16px;
+ right: 0px;
+ bottom: 0px;
+ overflow: hidden;
+ background: none;
+}
+.room-block .room-container .user-video .ui-resizable-se:before {
+ content: ' ';
width: 32px;
height: 32px;
transform: rotate(-45deg);
- right: -16px;
+ position: absolute;
+ top: 0;
+ right: 0;
+ right: -21px;
bottom: -16px;
background: repeating-linear-gradient(
var(--dark), var(--dark) 3px, transparent 3px, transparent 5px