Revision ea30dad9

b/src/gr/grnet/pithos/web/client/FileList.java
401 401
		});
402 402
		
403 403
		celltable.setSelectionModel(selectionModel, PithosSelectionEventManager.<File> createDefaultManager());
404
//		celltable.setPageSize(Pithos.VISIBLE_FILE_COUNT);
405 404
		
406 405
		sinkEvents(Event.ONCONTEXTMENU);
407
//		sinkEvents(Event.ONMOUSEUP);
408
//		sinkEvents(Event.ONMOUSEDOWN);
409
//		sinkEvents(Event.ONCLICK);
410
//		sinkEvents(Event.ONKEYDOWN);
411 406
		sinkEvents(Event.ONDBLCLICK);
412 407
		Pithos.preventIESelection();
413 408
	}
......
419 414
	@Override
420 415
	public void onBrowserEvent(Event event) {
421 416

  
422
//		if (files == null || files.size() == 0) {
423
//			if (DOM.eventGetType(event) == Event.ONCONTEXTMENU && getSelectedFiles().size() == 0) {
424
//				contextMenu = new FileContextMenu(images, false, true);
425
//                contextMenu.show();
426
//				event.preventDefault();
427
//				event.cancelBubble(true);
428
//			}
429
//			return;
430
//		}
431
//		if (DOM.eventGetType(event) == Event.ONCONTEXTMENU && getSelectedFiles().size() != 0) {
432
//			GWT.log("*****GOING TO SHOW CONTEXT MENU ****", null);
433
//			contextMenu =  new FileContextMenu(images, false, false);
434
//			contextMenu = contextMenu.onEvent(event);
435
//			event.cancelBubble(true);
436
//			event.preventDefault();
437
//		} else if (DOM.eventGetType(event) == Event.ONCONTEXTMENU && getSelectedFiles().size() == 0) {
438
//			contextMenu = new FileContextMenu(images, false, true);
439
//			contextMenu = contextMenu.onEmptyEvent(event);
440
//			event.cancelBubble(true);
441
//			event.preventDefault();
442
//		} else 
443 417
		if (DOM.eventGetType(event) == Event.ONDBLCLICK)
444 418
			if (getSelectedFiles().size() == 1) {
445 419
				File file = getSelectedFiles().get(0);
b/src/gr/grnet/pithos/web/client/Pithos.java
488 488
            }
489 489
        });
490 490
        
491
        Scheduler.get().scheduleFixedDelay(new RepeatingCommand() {
492
			
493
			@Override
494
			public boolean execute() {
495
				Folder f = getSelection();
496
				if (f != null) {
497
					if (getSelectedTree().equals(folderTreeView))
498
						updateFolder(f, true, null, false);
499
					else if (getSelectedTree().equals(mysharedTreeView))
500
						updateSharedFolder(f, true);
501
				}
502
				return true;
503
			}
504
		}, 3000);
491
//        Scheduler.get().scheduleFixedDelay(new RepeatingCommand() {
492
//			
493
//			@Override
494
//			public boolean execute() {
495
//				Folder f = getSelection();
496
//				if (f != null) {
497
//					if (getSelectedTree().equals(folderTreeView))
498
//						updateFolder(f, true, null, false);
499
//					else if (getSelectedTree().equals(mysharedTreeView))
500
//						updateSharedFolder(f, true);
501
//				}
502
//				return true;
503
//			}
504
//		}, 3000);
505 505
    }
506 506

  
507 507
    public void applyPermissions(Folder f) {
......
892 892
            else if (o != null) {
893 893
                String subdir = o.get("subdir").isString().stringValue();
894 894
                subdir = subdir.substring(0, subdir.length() - 1);
895
                String path = getApiPath() + getUsername() + "/" + folder.getContainer() + "?format=json&delimiter=/&prefix=" + URL.encodeQueryString(subdir) + "&t=" + System.currentTimeMillis();
895
                String path = getApiPath() + folder.getOwner() + "/" + folder.getContainer() + "?format=json&delimiter=/&prefix=" + URL.encodeQueryString(subdir) + "&t=" + System.currentTimeMillis();
896 896
                RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, path);
897 897
                builder.setHeader("X-Auth-Token", getToken());
898 898
                try {
......
924 924
            }
925 925
        }
926 926
        else {
927
        	if (folder.isContainer()) {
928
        		updateFolder(folder, true, new Command() {
929
					
930
					@Override
931
					public void execute() {
932
						updateStatistics();
933
						if (callback != null)
934
							callback.execute();
935
					}
936
				}, false);
937
        		return;
938
        	}
927 939
            String path = folder.getUri();
928 940
            DeleteRequest deleteFolder = new DeleteRequest(getApiPath(), getUsername(), URL.encode(path)) {
929 941
                @Override
b/src/gr/grnet/pithos/web/client/animation/FadeIn.java
54 54
			double progress1 = 1.0 - progress;
55 55
			currOpacity = initialOpacity * progress1;
56 56
			DOM.setStyleAttribute(widget.getElement(), "opacity", ""+new Double(1d - currOpacity / 100d));
57
			//required for ie to work
58
			//Disabled because IE has bugs rendering non-opaque objects
59
			//int opacityToSet = new Double(currOpacity).intValue();
60
			//DOM.setStyleAttribute(widget.getElement(), "filter", "alpha(opacity=" + (initialOpacity - opacityToSet) + ")");
61 57
		}
62 58
	}
63 59

  
b/src/gr/grnet/pithos/web/client/animation/FadeOut.java
55 55
			double progress1 = 1.0 - progress;
56 56
			currOpacity = initialOpacity*progress1;
57 57
			DOM.setStyleAttribute(widget.getElement(), "opacity", ""+new Double(currOpacity/100d));
58
			//required for ie to work
59
			//Disabled because IE has bugs rendering non-opaque objects
60
			//int opacityToSet = new Double(currOpacity).intValue();
61
			//DOM.setStyleAttribute(widget.getElement(), "filter", "alpha(opacity="+currOpacity+")");
62 58
		}
63 59
	}
64 60

  
b/src/gr/grnet/pithos/web/client/commands/EmptyTrashCommand.java
72 72
		
73 73
		final Folder trash = app.getAccount().getTrash();
74 74
		if (trash != null) {
75
			Iterator<File> iter = trash.getFiles().iterator();
76
			deleteFile(iter, new Command() {
77
				
78
				@Override
79
				public void execute() {
80
					Iterator<Folder> iter2 = trash.getSubfolders().iterator();
81
					deleteSubfolder(iter2, new Command() {
82
						
83
						@Override
84
						public void execute() {
85
							app.updateTrash(true, new Command() {
86
								
87
								@Override
88
								public void execute() {
89
									app.updateStatistics();
90
								}
91
							});
92
						}
93
					});
94
				}
95
			});
75
			app.deleteFolder(trash, null); //deleteFolder will not delete the folder itself if it is a container
96 76
		}
97 77
	}
98 78

  
/dev/null
1
/*
2
 * Copyright 2011-2012 GRNET S.A. All rights reserved.
3
 *
4
 * Redistribution and use in source and binary forms, with or
5
 * without modification, are permitted provided that the following
6
 * conditions are met:
7
 *
8
 *   1. Redistributions of source code must retain the above
9
 *      copyright notice, this list of conditions and the following
10
 *      disclaimer.
11
 *
12
 *   2. Redistributions in binary form must reproduce the above
13
 *      copyright notice, this list of conditions and the following
14
 *      disclaimer in the documentation and/or other materials
15
 *      provided with the distribution.
16
 *
17
 * THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
18
 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19
 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20
 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
21
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
24
 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
25
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
27
 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28
 * POSSIBILITY OF SUCH DAMAGE.
29
 *
30
 * The views and conclusions contained in the software and
31
 * documentation are those of the authors and should not be
32
 * interpreted as representing official policies, either expressed
33
 * or implied, of GRNET S.A.
34
 */
35
package gr.grnet.pithos.web.client.commands;
36

  
37
import com.google.gwt.user.client.Command;
38
import com.google.gwt.user.client.ui.PopupPanel;
39

  
40

  
41
public class ResreshOthersSharesCommand implements Command{
42
	private PopupPanel containerPanel;
43

  
44
	public ResreshOthersSharesCommand(PopupPanel _containerPanel){
45
		containerPanel = _containerPanel;
46
	}
47

  
48
	@Override
49
	public void execute() {
50
		containerPanel.hide();
51
		//TODO:CELLTREE
52
		//app.getFolders().update( app.getFolders().getCurrent());
53
	}
54

  
55
}
b/src/gr/grnet/pithos/web/client/foldertree/FolderTreeViewModel.java
130 130
		}
131 131
		final ListDataProvider<Folder> dataProvider = dataProviderMap.get(f);
132 132
		//This prevents the loading indicator
133
//		dataProvider.getList().clear();
134
//		dataProvider.getList().addAll(f.getSubfolders());
135 133
		fetchFolder(f, dataProvider, false, null);
136 134
		return new DefaultNodeInfo<Folder>(dataProvider, folderCell, selectionModel, null);
137 135
    }
b/src/gr/grnet/pithos/web/client/grouptree/GroupTreeView.java
174 174

  
175 175
	@Override
176 176
	public Folder getSelection() {
177
		// TODO Auto-generated method stub
178 177
		return null;
179 178
	}
180 179

  
b/src/gr/grnet/pithos/web/client/tagtree/Tag.java
60 60
        return name;
61 61
    }
62 62

  
63
//    public void populate(Response response) {
64
//        String header = response.getHeader("Last-Modified");
65
//        if (header != null)
66
//            lastModified = DateTimeFormat.getFormat(PredefinedFormat.RFC_2822).parse(header);
67
//
68
//        header = response.getHeader("X-Container-Bytes-Used");
69
//        if (header != null)
70
//            bytesUsed = Long.valueOf(header);
71
//
72
//        subfolders.clear(); //This is necessary in case we update a pre-existing Tag so that stale subfolders won't show up
73
//        files.clear();
74
//        JSONValue json = JSONParser.parseStrict(response.getText());
75
//        JSONArray array = json.isArray();
76
//        if (array != null) {
77
//            for (int i=0; i<array.size(); i++) {
78
//                JSONObject o = array.get(i).isObject();
79
//                if (o != null) {
80
//                    String contentType = unmarshallString(o, "content_type");
81
//                    if (o.containsKey("subdir") || (contentType != null && (contentType.startsWith("application/directory") || contentType.startsWith("application/folder")))) {
82
//                        Tag f = new Tag();
83
//                        f.populate(this, o, container);
84
//                        subfolders.add(f);
85
//                    }
86
//                    else {
87
//                        File file = new File();
88
//                        file.populate(this, o, container);
89
//                        files.add(file);
90
//                    }
91
//                }
92
//            }
93
//        }
94
//    }
95
//
96
//    public void populate(Tag parent, JSONObject o, String aContainer) {
97
//        this.parent = parent;
98
//        String path = null;
99
//        if (o.containsKey("subdir")) {
100
//            path = unmarshallString(o, "subdir");
101
//        }
102
//        else {
103
//            path = unmarshallString(o, "name");
104
//            lastModified = unmarshallDate(o, "last_modified");
105
//        }
106
//        if (path.endsWith("/"))
107
//            path = path.substring(0, path.length() - 1);
108
//        if (path.contains("/"))
109
//            name = path.substring(path.lastIndexOf("/") + 1, path.length()); //strip the prefix
110
//        else
111
//            name = path;
112
//        if (aContainer != null) {
113
//            container = aContainer;
114
//            prefix = path;
115
//        }
116
//        else {
117
//            container = name;
118
//            prefix = "";
119
//        }
120
//    }
121
//
122
//    public static Tag createFromResponse(Response response, Tag result) {
123
//        Tag f = null;
124
//        if (result == null)
125
//            f = new Tag();
126
//        else
127
//            f = result;
128
//
129
//        f.populate(response);
130
//        return f;
131
//    }
132

  
133 63
    @Override
134 64
    public boolean equals(Object other) {
135 65
        if (other instanceof Tag) {
b/src/gr/grnet/pithos/web/client/tagtree/TagTreeViewModel.java
114 114
            }), null, null);
115 115
        }
116 116
        else if (value instanceof String) {
117
            //fetchAllTags();
118 117
            return new DefaultNodeInfo<Tag>(tagDataProvider, tagCell, selectionModel, null);
119 118
        }
120 119
        else

Also available in: Unified diff