From: Christos Stathis Date: Tue, 24 Apr 2012 12:58:54 +0000 (+0300) Subject: Finished new left pane X-Git-Tag: 0.14rc1~142 X-Git-Url: https://code.grnet.gr/git/pithos-web-client/commitdiff_plain/refs/heads/newLeftPane Finished new left pane --- diff --git a/src/gr/grnet/pithos/web/client/Pithos.java b/src/gr/grnet/pithos/web/client/Pithos.java index 3caed4c..77778db 100644 --- a/src/gr/grnet/pithos/web/client/Pithos.java +++ b/src/gr/grnet/pithos/web/client/Pithos.java @@ -238,7 +238,7 @@ public class Pithos implements EntryPoint, ResizeHandler { OtherSharedTreeView otherSharedTreeView = null; GroupTreeViewModel groupTreeViewModel; - private GroupTreeView groupTreeView; + GroupTreeView groupTreeView; TreeView selectedTree; protected AccountResource account; @@ -365,22 +365,9 @@ public class Pithos implements EntryPoint, ResizeHandler { fileList = new FileList(this, images, folderTreeView); inner.add(fileList); - groupTreeViewModel = new GroupTreeViewModel(this); - groupTreeView = new GroupTreeView(groupTreeViewModel); - treeViews.add(groupTreeView); - trees = new VerticalPanel(); trees.setWidth("100%"); - trees.setSpacing(5); -// HorizontalPanel treeHeader = new HorizontalPanel(); -// treeHeader.addStyleName("pithos-treeHeader"); -// treeHeader.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); -// treeHeader.setVerticalAlignment(HasVerticalAlignment.ALIGN_MIDDLE); -// treeHeader.add(statistics); -// treeHeader.setCellHorizontalAlignment(statistics, HasHorizontalAlignment.ALIGN_LEFT); -// trees.add(treeHeader); - trees.add(folderTreeView); HorizontalPanel separator = new HorizontalPanel(); @@ -401,7 +388,6 @@ public class Pithos implements EntryPoint, ResizeHandler { statistics.add(new HTML(")")); trees.add(statistics); - trees.add(groupTreeView); // Add the left and right panels to the split panel. splitPanel.setLeftWidget(trees); splitPanel.setRightWidget(inner); @@ -464,7 +450,10 @@ public class Pithos implements EntryPoint, ResizeHandler { createMySharedTree(); } }); - groupTreeViewModel.initialize(); + groupTreeViewModel = new GroupTreeViewModel(Pithos.this); + groupTreeView = new GroupTreeView(groupTreeViewModel); + treeViews.add(groupTreeView); + trees.add(groupTreeView); showStatistics(); } } @@ -1146,7 +1135,7 @@ public class Pithos implements EntryPoint, ResizeHandler { @Override public void execute() { mysharedTreeView = new MysharedTreeView(mysharedTreeViewModel); - trees.insert(mysharedTreeView, 4); + trees.insert(mysharedTreeView, 3); treeViews.add(mysharedTreeView); createOtherSharedTree(); } @@ -1180,7 +1169,7 @@ public class Pithos implements EntryPoint, ResizeHandler { @Override public void execute() { otherSharedTreeView = new OtherSharedTreeView(otherSharedTreeViewModel); - trees.insert(otherSharedTreeView, 4); + trees.insert(otherSharedTreeView, 3); treeViews.add(otherSharedTreeView); } }); diff --git a/src/gr/grnet/pithos/web/client/PithosDisclosurePanel.css b/src/gr/grnet/pithos/web/client/PithosDisclosurePanel.css index 7e1cc59..98c191d 100644 --- a/src/gr/grnet/pithos/web/client/PithosDisclosurePanel.css +++ b/src/gr/grnet/pithos/web/client/PithosDisclosurePanel.css @@ -42,6 +42,7 @@ background-color: #74aec9; height: 25px; width: 100%; + margin-bottom: 5px; } .arrow { diff --git a/src/gr/grnet/pithos/web/client/Toolbar.java b/src/gr/grnet/pithos/web/client/Toolbar.java index 35ffe88..918c7d9 100644 --- a/src/gr/grnet/pithos/web/client/Toolbar.java +++ b/src/gr/grnet/pithos/web/client/Toolbar.java @@ -174,6 +174,8 @@ public class Toolbar extends Composite { if (!folder.isInTrash() && canWrite) { if (isFolderTreeSelected || otherSharedTreeSelected) newFolderButton.setVisible(true); + else + newFolderButton.setVisible(false); if (isFolderTreeSelected && !folder.isContainer()) shareFolderButton.setVisible(true); else diff --git a/src/gr/grnet/pithos/web/client/ToolsMenu.java b/src/gr/grnet/pithos/web/client/ToolsMenu.java index e51776e..fdea362 100644 --- a/src/gr/grnet/pithos/web/client/ToolsMenu.java +++ b/src/gr/grnet/pithos/web/client/ToolsMenu.java @@ -237,13 +237,11 @@ public class ToolsMenu extends PopupPanel { contextMenu.addItem(deleteGroup); empty = false; } - else { - MenuItem createGroup = new MenuItem("" + AbstractImagePrototype.create(images.group()).getHTML() + " Create Group", true, new CreateGroupCommand(app, this)); - contextMenu.addItem(createGroup); - empty = false; - } } } + MenuItem createGroup = new MenuItem("" + AbstractImagePrototype.create(images.group()).getHTML() + " Create Group", true, new CreateGroupCommand(app, this)); + contextMenu.addItem(createGroup); + empty = false; add(contextMenu); } diff --git a/src/gr/grnet/pithos/web/client/grouptree/GroupTreeView.java b/src/gr/grnet/pithos/web/client/grouptree/GroupTreeView.java index 104d73e..c013e6b 100644 --- a/src/gr/grnet/pithos/web/client/grouptree/GroupTreeView.java +++ b/src/gr/grnet/pithos/web/client/grouptree/GroupTreeView.java @@ -38,6 +38,7 @@ package gr.grnet.pithos.web.client.grouptree; import gr.grnet.pithos.web.client.FolderContextMenu; import gr.grnet.pithos.web.client.PithosDisclosurePanel; import gr.grnet.pithos.web.client.TreeView; +import gr.grnet.pithos.web.client.PithosDisclosurePanel.Style; import gr.grnet.pithos.web.client.foldertree.Folder; import com.google.gwt.core.client.GWT; @@ -58,7 +59,7 @@ import com.google.gwt.user.client.ui.Tree; public class GroupTreeView extends Composite implements TreeView { public void updateChildren(Group group) { - TreeNode root = ((CellTree) getWidget()).getRootTreeNode(); + TreeNode root = tree.getRootTreeNode(); if (group != null) updateChildren(root, group); else { @@ -122,8 +123,17 @@ public class GroupTreeView extends Composite implements TreeView { static Images images = GWT.create(Images.class); - interface Resources extends gr.grnet.pithos.web.client.PithosDisclosurePanel.Resources { + interface Style extends gr.grnet.pithos.web.client.PithosDisclosurePanel.Style { @Override + String header(); + } + + interface Resources extends gr.grnet.pithos.web.client.PithosDisclosurePanel.Resources { + @Override + @Source("PithosGroupDisclosurePanel.css") + Style pithosDisclosurePanelCss(); + + @Override @Source("gr/grnet/pithos/resources/groups22.png") ImageResource icon(); } @@ -136,6 +146,8 @@ public class GroupTreeView extends Composite implements TreeView { } private GroupTreeViewModel model; + + private CellTree tree; public GroupTreeView(GroupTreeViewModel viewModel) { this.model = viewModel; @@ -147,7 +159,7 @@ public class GroupTreeView extends Composite implements TreeView { * CustomTreeModel#getNodeInfo(); */ CellTree.Resources res = GWT.create(BasicResources.class); - CellTree tree = new CellTree(model, null, res); + tree = new CellTree(model, null, res); tree.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED); panel.add(tree); diff --git a/src/gr/grnet/pithos/web/client/grouptree/GroupTreeViewModel.java b/src/gr/grnet/pithos/web/client/grouptree/GroupTreeViewModel.java index e47081b..b76bc94 100644 --- a/src/gr/grnet/pithos/web/client/grouptree/GroupTreeViewModel.java +++ b/src/gr/grnet/pithos/web/client/grouptree/GroupTreeViewModel.java @@ -58,28 +58,6 @@ public class GroupTreeViewModel implements TreeViewModel { protected Pithos app; - private ListDataProvider rootDataProvider = new ListDataProvider(); - - private Cell rootCell = new AbstractCell(ContextMenuEvent.getType().getName()) { - - @Override - public void render(Context context, String value, SafeHtmlBuilder sb) { - String html = AbstractImagePrototype.create(GroupTreeView.images.groups()).getHTML(); - sb.appendHtmlConstant(html).appendHtmlConstant(" "); - sb.append(Templates.INSTANCE.nameSpan(value)); - } - - @Override - public void onBrowserEvent(Cell.Context context, com.google.gwt.dom.client.Element parent, String s, com.google.gwt.dom.client.NativeEvent event, com.google.gwt.cell.client.ValueUpdater valueUpdater) { - GroupTreeViewModel.this.rootSelectionModel.setSelected(s, true); - if (event.getType().equals(ContextMenuEvent.getType().getName())) { - GroupContextMenu menu = new GroupContextMenu(app, GroupTreeView.images, null); - menu.setPopupPosition(event.getClientX(), event.getClientY()); - menu.show(); - } - } - }; - private Cell groupCell = new AbstractCell(ContextMenuEvent.getType().getName()) { @Override @@ -124,33 +102,11 @@ public class GroupTreeViewModel implements TreeViewModel { protected Map> userDataProviderMap = new HashMap>(); - protected Map> sharedFiles = new HashMap>(); - - SingleSelectionModel rootSelectionModel; SingleSelectionModel groupSelectionModel; SingleSelectionModel userSelectionModel; public GroupTreeViewModel(Pithos _app) { app = _app; - rootSelectionModel = new SingleSelectionModel(); - app.addSelectionModel(rootSelectionModel); - rootSelectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { - - @Override - public void onSelectionChange(SelectionChangeEvent event) { - if (rootSelectionModel.getSelectedObject() != null) { - app.deselectOthers(app.getGroupTreeView(), rootSelectionModel); - app.showFiles(new HashSet()); - app.showRelevantToolbarButtons(); - } - else { - if (app.getSelectedTree().equals(app.getGroupTreeView())) - app.setSelectedTree(null); - if (app.getSelectedTree() == null) - app.showRelevantToolbarButtons(); - } - } - }); groupSelectionModel = new SingleSelectionModel(); app.addSelectionModel(groupSelectionModel); @@ -196,25 +152,19 @@ public class GroupTreeViewModel implements TreeViewModel { @Override public NodeInfo getNodeInfo(T value) { if (value == null) { - rootDataProvider.getList().add(""); - return new DefaultNodeInfo(rootDataProvider, rootCell, rootSelectionModel, null); - } - else if (value instanceof String) { groupsDataProvider.getList().clear(); groupsDataProvider.getList().addAll(app.getAccount().getGroups()); return new DefaultNodeInfo(groupsDataProvider, groupCell, groupSelectionModel, null); } - else { //Group - Group g = (Group) value; - if (userDataProviderMap.get(g) == null) { - userDataProviderMap.put(g, new ListDataProvider()); - } - final ListDataProvider dataProvider = userDataProviderMap.get(g); - dataProvider.getList().clear(); - for (String u : g.getMembers()) - dataProvider.getList().add(new User(u, g)); - return new DefaultNodeInfo(dataProvider, userCell, userSelectionModel, null); - } + Group g = (Group) value; + if (userDataProviderMap.get(g) == null) { + userDataProviderMap.put(g, new ListDataProvider()); + } + final ListDataProvider dataProvider = userDataProviderMap.get(g); + dataProvider.getList().clear(); + for (String u : g.getMembers()) + dataProvider.getList().add(new User(u, g)); + return new DefaultNodeInfo(dataProvider, userCell, userSelectionModel, null); } @Override @@ -229,11 +179,6 @@ public class GroupTreeViewModel implements TreeViewModel { return false; } - public void initialize() { - rootDataProvider.getList().clear(); - rootDataProvider.getList().add("Groups"); - } - public void updateGroupNode(Group group) { if (group == null) { groupsDataProvider.getList().clear(); @@ -251,8 +196,6 @@ public class GroupTreeViewModel implements TreeViewModel { } public Object getSelectedObject() { - if (rootSelectionModel.getSelectedObject() != null) - return rootSelectionModel.getSelectedObject(); if (groupSelectionModel.getSelectedObject() != null) return groupSelectionModel.getSelectedObject(); if (userSelectionModel.getSelectedObject() != null) diff --git a/src/gr/grnet/pithos/web/client/grouptree/PithosGroupDisclosurePanel.css b/src/gr/grnet/pithos/web/client/grouptree/PithosGroupDisclosurePanel.css new file mode 100644 index 0000000..759e29a --- /dev/null +++ b/src/gr/grnet/pithos/web/client/grouptree/PithosGroupDisclosurePanel.css @@ -0,0 +1,55 @@ +/* + * Copyright 2012 GRNET S.A. All rights reserved. + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * 1. Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and + * documentation are those of the authors and should not be + * interpreted as representing official policies, either expressed + * or implied, of GRNET S.A. + */ + +.disclosurePanel { + padding-left: 10px; + width: 100%; +} + +.header { + background-color: #cdde87; + height: 25px; + width: 100%; + margin-bottom: 5px; +} + +.arrow { + padding-right: 2px; +} + +.content { + padding: 4px 0px 4px 8px; + margin-left: 6px; +} diff --git a/src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeView.java b/src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeView.java index e286195..f4d32c7 100644 --- a/src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeView.java +++ b/src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeView.java @@ -42,6 +42,7 @@ import gr.grnet.pithos.web.client.foldertree.Folder; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ImageResource; +import com.google.gwt.resources.client.ClientBundle.Source; import com.google.gwt.resources.client.ImageResource.ImageOptions; import com.google.gwt.resources.client.ImageResource.RepeatStyle; import com.google.gwt.safehtml.client.SafeHtmlTemplates; @@ -130,8 +131,17 @@ public class MysharedTreeView extends Composite implements TreeView { public SafeHtml nameSpan(String name); } - interface Resources extends gr.grnet.pithos.web.client.PithosDisclosurePanel.Resources { + interface Style extends gr.grnet.pithos.web.client.PithosDisclosurePanel.Style { @Override + String header(); + } + + interface Resources extends gr.grnet.pithos.web.client.PithosDisclosurePanel.Resources { + @Override + @Source("PithosMySharedDisclosurePanel.css") + Style pithosDisclosurePanelCss(); + + @Override @Source("gr/grnet/pithos/resources/sharedbyme22.png") ImageResource icon(); } @@ -168,7 +178,7 @@ public class MysharedTreeView extends Composite implements TreeView { } public void updateRoot() { - TreeNode root = ((CellTree) getWidget()).getRootTreeNode(); + TreeNode root = tree.getRootTreeNode(); root.setChildOpen(0, true); root.setChildOpen(0, false); } diff --git a/src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeViewModel.java b/src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeViewModel.java index e5595ce..6e5c005 100644 --- a/src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeViewModel.java +++ b/src/gr/grnet/pithos/web/client/mysharedtree/MysharedTreeViewModel.java @@ -85,30 +85,10 @@ public class MysharedTreeViewModel implements TreeViewModel { safeHtmlBuilder.appendHtmlConstant(html).appendHtmlConstant(" "); safeHtmlBuilder.append(Templates.INSTANCE.nameSpan(folder.getName())); } - - @Override - public void onBrowserEvent(Context context, com.google.gwt.dom.client.Element parent, final Folder folder, com.google.gwt.dom.client.NativeEvent event, ValueUpdater valueUpdater) { - if (event.getType().equals(ContextMenuEvent.getType().getName())) { - final int x = event.getClientX(); - final int y = event.getClientY(); - MysharedTreeViewModel.this.selectionModel.setSelected(folder, true); - app.scheduleFolderHeadCommand(folder, new Command() { - - @Override - public void execute() { - FolderContextMenu menu = new FolderContextMenu(app, MysharedTreeView.images, app.getSelectedTree(), folder); - menu.setPopupPosition(x, y); - menu.show(); - } - }); - } - } }; protected ListDataProvider firstLevelDataProvider = new ListDataProvider(); - - private Map> dataProviderMap = new HashMap>(); - + protected SingleSelectionModel selectionModel; public MysharedTreeViewModel(Pithos _app, SingleSelectionModel selectionModel) { @@ -122,13 +102,7 @@ public class MysharedTreeViewModel implements TreeViewModel { fetchSharedContainers(null); return new DefaultNodeInfo(firstLevelDataProvider, folderCell, selectionModel, null); } - final Folder f = (Folder) value; - if (dataProviderMap.get(f) == null) { - dataProviderMap.put(f, new ListDataProvider()); - } - final ListDataProvider dataProvider = dataProviderMap.get(f); - fetchFolder(f, dataProvider, false); - return new DefaultNodeInfo(dataProvider, folderCell, selectionModel, null); + return null; } private void fetchSharedContainers(final Command callback) { @@ -136,23 +110,16 @@ public class MysharedTreeViewModel implements TreeViewModel { GetRequest getAccount = new GetRequest(AccountResource.class, app.getApiPath(), app.getUsername(), path) { @Override public void onSuccess(final AccountResource _result) { - Iterator iter = _result.getContainers().listIterator(); - fetchFolder(iter, new Command() { - - @Override - public void execute() { - firstLevelDataProvider.getList().clear(); - Folder t = null; - for (Folder c : _result.getContainers()) { - if (c.isHome()) - firstLevelDataProvider.getList().add(0, c); //Pithos is always first - else if (!c.isTrash()) - firstLevelDataProvider.getList().add(c); - } - if (callback != null) - callback.execute(); - } - }); + firstLevelDataProvider.getList().clear(); + Folder t = null; + for (Folder c : _result.getContainers()) { + if (c.isHome()) + firstLevelDataProvider.getList().add(0, c); //Pithos is always first + else if (!c.isTrash()) + firstLevelDataProvider.getList().add(c); + } + if (callback != null) + callback.execute(); } @Override @@ -178,13 +145,7 @@ public class MysharedTreeViewModel implements TreeViewModel { public boolean isLeaf(Object o) { if (o == null) return false; - else if (o instanceof Folder) { - Folder f = (Folder) o; - return f.getSubfolders().isEmpty(); - } - else { - return firstLevelDataProvider.getList().isEmpty(); - } + return true; } private native void log(String msg) /*-{ @@ -229,29 +190,16 @@ public class MysharedTreeViewModel implements TreeViewModel { } public void updateFolder(Folder folder, boolean showfiles) { - if (dataProviderMap.get(folder) == null) { - dataProviderMap.put(folder, new ListDataProvider()); - } - final ListDataProvider dataProvider = dataProviderMap.get(folder); - fetchFolder(folder, dataProvider, showfiles); + fetchFolder(folder,showfiles); } - public void fetchFolder(final Folder f, final ListDataProvider dataProvider, final boolean showfiles) { - String path = "/" + f.getContainer() + "?format=json&shared=&delimiter=/&prefix=" + URL.encodeQueryString(f.getPrefix()); - GetRequest getFolder = new GetRequest(Folder.class, app.getApiPath(), f.getOwner(), path, f) { + public void fetchFolder(final Folder f, final boolean showfiles) { + String path = "/" + f.getContainer() + "?format=json&shared=" + URL.encodeQueryString(f.getPrefix()); + GetRequest getFolder = new GetRequest(Folder.class, app.getApiPath(), f.getOwner(), path, null) { @Override public void onSuccess(final Folder _result) { if (showfiles) app.showFiles(_result); - Iterator iter = new ArrayList(_result.getSubfolders()).listIterator(); - fetchFolder(iter, new Command() { - @Override - public void execute() { - dataProvider.getList().clear(); - dataProvider.getList().addAll(_result.getSubfolders()); - app.getMySharedTreeView().updateChildren(f); - } - }); } @Override diff --git a/src/gr/grnet/pithos/web/client/mysharedtree/PithosMySharedDisclosurePanel.css b/src/gr/grnet/pithos/web/client/mysharedtree/PithosMySharedDisclosurePanel.css new file mode 100644 index 0000000..fb4fe0d --- /dev/null +++ b/src/gr/grnet/pithos/web/client/mysharedtree/PithosMySharedDisclosurePanel.css @@ -0,0 +1,55 @@ +/* + * Copyright 2012 GRNET S.A. All rights reserved. + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * 1. Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and + * documentation are those of the authors and should not be + * interpreted as representing official policies, either expressed + * or implied, of GRNET S.A. + */ + +.disclosurePanel { + padding-left: 10px; + width: 100%; +} + +.header { + background-color: #e9ddaf; + height: 25px; + width: 100%; + margin-bottom: 5px; +} + +.arrow { + padding-right: 2px; +} + +.content { + padding: 4px 0px 4px 8px; + margin-left: 6px; +} diff --git a/src/gr/grnet/pithos/web/public/pithos.css b/src/gr/grnet/pithos/web/public/pithos.css index f53c0c0..a557073 100644 --- a/src/gr/grnet/pithos/web/public/pithos.css +++ b/src/gr/grnet/pithos/web/public/pithos.css @@ -381,7 +381,7 @@ table.pithos-permList.props-labels { text-align: center; height: auto; padding: 8px; - width: 127px; + width: 134px; border: 0px; }