View | Details | Raw Unified | Return to bug 233461 | Differences between
and this patch

Collapse All | Expand All

(-)UI/org/eclipse/rse/internal/ui/view/SystemView.java (-15 / +22 lines)
Lines 1357-1362 Link Here
1357
		}
1357
		}
1358
	}
1358
	}
1359
1359
1360
	
1360
	/**
1361
	/**
1361
	 * Clear current selection. Ignore widget disposed message.
1362
	 * Clear current selection. Ignore widget disposed message.
1362
	 */
1363
	 */
Lines 1366-1371 Link Here
1366
		} catch (Exception exc) {
1367
		} catch (Exception exc) {
1367
		}
1368
		}
1368
	}
1369
	}
1370
			
1371
1369
1372
1370
	/**
1373
	/**
1371
	 * Returns the implementation of ISystemViewElementAdapter for the given
1374
	 * Returns the implementation of ISystemViewElementAdapter for the given
Lines 2226-2232 Link Here
2226
			case ISystemResourceChangeEvents.EVENT_REFRESH_REMOTE:
2229
			case ISystemResourceChangeEvents.EVENT_REFRESH_REMOTE:
2227
				if (debug) logDebugMsg("SV event: EVENT_REFRESH_REMOTE: src = " + src); //$NON-NLS-1$
2230
				if (debug) logDebugMsg("SV event: EVENT_REFRESH_REMOTE: src = " + src); //$NON-NLS-1$
2228
				
2231
				
2229
				
2232
				TreeItem fakeExpanded = null;
2230
				ISystemViewElementAdapter adapter = getViewAdapter(src);
2233
				ISystemViewElementAdapter adapter = getViewAdapter(src);
2231
				if (adapter != null)
2234
				if (adapter != null)
2232
				{					
2235
				{					
Lines 2234-2249 Link Here
2234
					ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry();
2237
					ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry();
2235
					
2238
					
2236
		        	List filterReferences = sr.findFilterReferencesFor(src, adapter.getSubSystem(src), false);
2239
		        	List filterReferences = sr.findFilterReferencesFor(src, adapter.getSubSystem(src), false);
2237
		        	// if filters reference this resource we need them refreshed
2238
		        	for (int f = 0; f < filterReferences.size(); f++)
2239
		        	{
2240
		        		ISystemFilterReference ref = (ISystemFilterReference)filterReferences.get(f);
2241
		        		if (!ref.isStale())
2242
		        		{
2243
		        			ref.markStale(true);
2244
		        			smartRefresh(ref, true);
2245
		        		}
2246
		        	}	
2247
		        	
2240
		        	
2248
					// first, find out if src is a container or not
2241
					// first, find out if src is a container or not
2249
					// if it's a container, just pass into refreshRemoteObject
2242
					// if it's a container, just pass into refreshRemoteObject
Lines 2280-2286 Link Here
2280
									TreeItem[] titems = titem.getItems();
2273
									TreeItem[] titems = titem.getItems();
2281
									if (titems.length >  0 && !titem.getExpanded())
2274
									if (titems.length >  0 && !titem.getExpanded())
2282
									{
2275
									{
2283
										src = adapter.getParent(src);
2276
										
2277
										// if filterReferences is not empty, then this is contained directly under a filter
2278
										if (filterReferences.size() > 0){
2279
											titem.setExpanded(true);
2280
											fakeExpanded = titem;
2281
										}
2282
										else {
2283
											src = adapter.getParent(src);
2284
										}
2284
									}
2285
									}
2285
								}
2286
								}
2286
									
2287
									
Lines 2316-2324 Link Here
2316
				}
2317
				}
2317
				
2318
				
2318
				refreshRemoteObject(src, parent, originatedHere);
2319
				refreshRemoteObject(src, parent, originatedHere);
2319
		
2320
				if (fakeExpanded != null)
2320
	        		
2321
					fakeExpanded.setExpanded(false);
2321
	        	
2322
	        			        	
2322
				break;
2323
				break;
2323
			case ISystemResourceChangeEvents.EVENT_SELECT_REMOTE:
2324
			case ISystemResourceChangeEvents.EVENT_SELECT_REMOTE:
2324
				if (debug) logDebugMsg("SV event: EVENT_SELECT_REMOTE: src = " + src); //$NON-NLS-1$
2325
				if (debug) logDebugMsg("SV event: EVENT_SELECT_REMOTE: src = " + src); //$NON-NLS-1$
Lines 4358-4363 Link Here
4358
				//System.out.println("recursiveFindAllRemoteItemReferences(roots[idx], searchString, elementObject, subsystem, matches);");
4359
				//System.out.println("recursiveFindAllRemoteItemReferences(roots[idx], searchString, elementObject, subsystem, matches);");
4359
				matches = recursiveFindAllRemoteItemReferences(roots[idx], searchString, elementObject, subsystem, matches);
4360
				matches = recursiveFindAllRemoteItemReferences(roots[idx], searchString, elementObject, subsystem, matches);
4360
			}
4361
			}
4362
		
4361
		}
4363
		}
4362
		
4364
		
4363
		return matches;
4365
		return matches;
Lines 6383-6386 Link Here
6383
		}		
6385
		}		
6384
	}
6386
	}
6385
	
6387
	
6388
	/** commented out - this is workaround for performance problem
6389
	protected void handleLabelProviderChanged(LabelProviderChangedEvent event) {
6390
		//System.out.println("handleLableProviderChanged");
6391
	}
6392
	*/
6386
}
6393
}

Return to bug 233461