Author: solomax
Date: Sat Jan 14 17:10:59 2017
New Revision: 1778799
URL: http://svn.apache.org/viewvc?rev=1778799&view=rev
Log:
[OPENMEETINGS-895] Files tab is fixed, file-names are truncated, auto-switch is
fixed
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/theme.css
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
openmeetings/application/trunk/openmeetings-web/src/main/webapp/css/theme.css
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java?rev=1778799&r1=1778798&r2=1778799&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
Sat Jan 14 17:10:59 2017
@@ -120,6 +120,9 @@ public class RoomPanel extends BasePanel
path = path.substring(1, path.indexOf('/', 2) +
1);
broadcast(new RoomMessage(r.getId(),
getUserId(), RoomMessage.Type.roomEnter));
getMainPanel().getChat().roomEnter(r, target);
+ if (r.isFilesOpened()) {
+ sidebar.setFilesActive(target);
+ }
} catch (MalformedURLException e) {
log.error("Error while constructing room
parameters", e);
}
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java?rev=1778799&r1=1778798&r2=1778799&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
Sat Jan 14 17:10:59 2017
@@ -26,6 +26,7 @@ import static org.apache.wicket.ajax.att
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.List;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.Right;
@@ -57,6 +58,7 @@ import org.red5.logging.Red5LoggerFactor
import org.slf4j.Logger;
import com.googlecode.wicket.jquery.ui.widget.tabs.TabbedPanel;
+import com.googlecode.wicket.kendo.ui.widget.tabs.TabListModel;
public class RoomSidebar extends Panel {
private static final long serialVersionUID = 1L;
@@ -81,6 +83,7 @@ public class RoomSidebar extends Panel {
private final ConfirmableAjaxBorder confirmKick;
private boolean showFiles;
private boolean avInited = false;
+ private int selectedIdx = 0;
private Client kickedClient;
private final ListView<Client> users = new ListView<Client>("user", new
ArrayList<Client>()) {
private static final long serialVersionUID = 1L;
@@ -241,7 +244,19 @@ public class RoomSidebar extends Panel {
return new FileFragment(containerId,
"file-panel");
}
};
- add(tabs = new TabbedPanel("tabs", Arrays.asList(userTab,
fileTab)).setActiveTab(room.getRoom().isFilesOpened() ? 1 : 0));
+ add(tabs = new TabbedPanel("tabs", newTabModel()) {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected void onConfigure() {
+ super.onConfigure();
+ setActiveTab(selectedIdx);
+ }
+
+ public void onActivate(AjaxRequestTarget target, int
index, ITab tab) {
+ selectedIdx = index;
+ }
+ });
roomFiles = new RoomFilePanel("tree", room);
selfRights = new SelfIconsPanel("icons", room.getClient(),
room, true);
add(upload = new UploadDialog("upload", room, roomFiles));
@@ -256,6 +271,17 @@ public class RoomSidebar extends Panel {
add(toggleRight, toggleActivity, roomAction, avSettings);
}
+ private TabListModel newTabModel() {
+ return new TabListModel() {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected List<ITab> load() {
+ return Arrays.asList(userTab, fileTab);
+ }
+ };
+ }
+
@Override
public void renderHead(IHeaderResponse response) {
super.renderHead(response);
@@ -365,4 +391,9 @@ public class RoomSidebar extends Panel {
}
return r;
}
+
+ public void setFilesActive(IPartialPageRequestHandler handler) {
+ selectedIdx = 1;
+ tabs.reload(handler);
+ }
}
Modified:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/theme.css
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/theme.css?rev=1778799&r1=1778798&r2=1778799&view=diff
==============================================================================
---
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/theme.css
(original)
+++
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/theme.css
Sat Jan 14 17:10:59 2017
@@ -396,11 +396,15 @@ html, body {
display: inline-block;
vertical-align: top;
}
-.file.item .name {
+.file.item .name, .file.item .name span {
color: black;
display: block;
- overflow: hidden;
width: 230px;
+ max-width: 230px;
+ /* Required for text-overflow to do anything */
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ overflow: hidden;
}
.file.item .errors {
position: absolute;
Modified:
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java?rev=1778799&r1=1778798&r2=1778799&view=diff
==============================================================================
---
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
(original)
+++
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
Sat Jan 14 17:10:59 2017
@@ -132,6 +132,9 @@ public class RoomPanel extends BasePanel
));
broadcast(new RoomMessage(r.getId(),
getUserId(), RoomMessage.Type.roomEnter));
getMainPanel().getChat().roomEnter(r, target);
+ if (r.isFilesOpened()) {
+ sidebar.setFilesActive(target);
+ }
} catch (MalformedURLException e) {
log.error("Error while constructing room
parameters", e);
}
Modified:
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java?rev=1778799&r1=1778798&r2=1778799&view=diff
==============================================================================
---
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
(original)
+++
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
Sat Jan 14 17:10:59 2017
@@ -26,6 +26,7 @@ import static org.apache.wicket.ajax.att
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.List;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.Right;
@@ -57,6 +58,7 @@ import org.red5.logging.Red5LoggerFactor
import org.slf4j.Logger;
import com.googlecode.wicket.jquery.ui.widget.tabs.TabbedPanel;
+import com.googlecode.wicket.kendo.ui.widget.tabs.TabListModel;
public class RoomSidebar extends Panel {
private static final long serialVersionUID = 1L;
@@ -81,6 +83,7 @@ public class RoomSidebar extends Panel {
private final ConfirmableAjaxBorder confirmKick;
private boolean showFiles;
private boolean avInited = false;
+ private int selectedIdx = 0;
private Client kickedClient;
private final ListView<Client> users = new ListView<Client>("user", new
ArrayList<Client>()) {
private static final long serialVersionUID = 1L;
@@ -241,7 +244,19 @@ public class RoomSidebar extends Panel {
return new FileFragment(containerId,
"file-panel");
}
};
- add(tabs = new TabbedPanel("tabs", Arrays.asList(userTab,
fileTab)).setActiveTab(room.getRoom().isFilesOpened() ? 1 : 0));
+ add(tabs = new TabbedPanel("tabs", newTabModel()) {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected void onConfigure() {
+ super.onConfigure();
+ setActiveTab(selectedIdx);
+ }
+
+ public void onActivate(AjaxRequestTarget target, int
index, ITab tab) {
+ selectedIdx = index;
+ }
+ });
roomFiles = new RoomFilePanel("tree", room);
selfRights = new SelfIconsPanel("icons", room.getClient(),
room, true);
add(upload = new UploadDialog("upload", room, roomFiles));
@@ -256,6 +271,17 @@ public class RoomSidebar extends Panel {
add(toggleRight, toggleActivity, roomAction, avSettings);
}
+ private TabListModel newTabModel() {
+ return new TabListModel() {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected List<ITab> load() {
+ return Arrays.asList(userTab, fileTab);
+ }
+ };
+ }
+
@Override
public void renderHead(IHeaderResponse response) {
super.renderHead(response);
@@ -365,4 +391,9 @@ public class RoomSidebar extends Panel {
}
return r;
}
+
+ public void setFilesActive(IPartialPageRequestHandler handler) {
+ selectedIdx = 1;
+ tabs.reload(handler);
+ }
}
Modified:
openmeetings/application/trunk/openmeetings-web/src/main/webapp/css/theme.css
URL:
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/webapp/css/theme.css?rev=1778799&r1=1778798&r2=1778799&view=diff
==============================================================================
---
openmeetings/application/trunk/openmeetings-web/src/main/webapp/css/theme.css
(original)
+++
openmeetings/application/trunk/openmeetings-web/src/main/webapp/css/theme.css
Sat Jan 14 17:10:59 2017
@@ -396,11 +396,15 @@ html, body {
display: inline-block;
vertical-align: top;
}
-.file.item .name {
+.file.item .name, .file.item .name span {
color: black;
display: block;
- overflow: hidden;
width: 230px;
+ max-width: 230px;
+ /* Required for text-overflow to do anything */
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ overflow: hidden;
}
.file.item .errors {
position: absolute;