[jbosstools-commits] JBoss Tools SVN: r36047 - branches/jbosstools-3.3.0.M4/central/plugins/org.jboss.tools.central/src/org/jboss/tools/central/editors.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Thu Oct 27 12:44:13 EDT 2011


Author: snjeza
Date: 2011-10-27 12:44:12 -0400 (Thu, 27 Oct 2011)
New Revision: 36047

Modified:
   branches/jbosstools-3.3.0.M4/central/plugins/org.jboss.tools.central/src/org/jboss/tools/central/editors/GettingStartedPage.java
Log:
JBIDE-10028 JBoss Central Editor Maximize/Restore actions freeze UI and loads CPU

Modified: branches/jbosstools-3.3.0.M4/central/plugins/org.jboss.tools.central/src/org/jboss/tools/central/editors/GettingStartedPage.java
===================================================================
--- branches/jbosstools-3.3.0.M4/central/plugins/org.jboss.tools.central/src/org/jboss/tools/central/editors/GettingStartedPage.java	2011-10-27 15:55:50 UTC (rev 36046)
+++ branches/jbosstools-3.3.0.M4/central/plugins/org.jboss.tools.central/src/org/jboss/tools/central/editors/GettingStartedPage.java	2011-10-27 16:44:12 UTC (rev 36047)
@@ -57,6 +57,7 @@
 import org.eclipse.swt.graphics.Image;
 import org.eclipse.swt.graphics.Point;
 import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.layout.FormLayout;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.layout.RowLayout;
@@ -239,7 +240,7 @@
 
 			@Override
 			public void expansionStateChanged(ExpansionEvent e) {
-				resize();
+				resize(true);
 			}
 			
 		});
@@ -286,7 +287,7 @@
 
 			@Override
 			public void expansionStateChanged(ExpansionEvent e) {
-				resize();
+				resize(true);
 			}
 			
 		});
@@ -425,7 +426,7 @@
 						
 			@Override
 			public void expansionStateChanged(ExpansionEvent e) {
-				resize();
+				resize(true);
 			}
 		});
 	    
@@ -498,6 +499,13 @@
 	    toolBarManager.update(true);
 	    
 		projectsSection.setTextClient(headerComposite);
+		projectsSection.addExpansionListener(new ExpansionAdapter() {
+			
+			@Override
+			public void expansionStateChanged(ExpansionEvent e) {
+				resize(true);
+			}
+		});
 		
 		projectsComposite = toolkit.createComposite(projectsSection);
 	    GridLayout layout = new GridLayout(2, true);
@@ -644,6 +652,13 @@
 		addHyperlink(toolkit, documentationComposite, "Issue Tracker", "https://issues.jboss.org/browse/JBIDE");
 		
 		documentationSection.setClient(documentationComposite);
+		documentationSection.addExpansionListener(new ExpansionAdapter() {
+			
+			@Override
+			public void expansionStateChanged(ExpansionEvent e) {
+				resize(true);
+			}
+		});
 	}
 	
 	public void createSettingsSection(FormToolkit toolkit, Composite parent) {
@@ -842,7 +857,7 @@
 					} else {
 						expandedCategories.remove(category);
 					}
-					resize();
+					resize(true);
 				}
 			});
 
@@ -1002,7 +1017,11 @@
 		recomputeScrollComposite(scrollable, pageBook);
 	}
 
-	protected void resize() {
+	private void resize() {
+		resize(false);
+	}
+	
+	protected void resize(boolean force) {
 		Point size;
 		if (Platform.OS_MACOSX.equals(Platform.getOS())) {
 			size = form.getSize();
@@ -1010,7 +1029,7 @@
 		} else {
 			size = form.getBody().getSize();
 		}
-		if (size.equals(oldSize)) {
+		if (!force && size.equals(oldSize)) {
 			return;
 		}
 		oldSize = size;



More information about the jbosstools-commits mailing list