javauis/eswt_qt/org.eclipse.swt/Eclipse SWT/qt/org/eclipse/swt/widgets/Shell.java
changeset 26 dc7c549001d5
parent 21 2a9601315dfc
child 35 85266cc22c7f
equal deleted inserted replaced
23:98ccebc37403 26:dc7c549001d5
   130  */
   130  */
   131 int dialogWindowHandle;
   131 int dialogWindowHandle;
   132 
   132 
   133 Rectangle defBounds;
   133 Rectangle defBounds;
   134 
   134 
       
   135 Point oldSize;
       
   136 
   135 /**
   137 /**
   136  * The WindowSurface wrapper for top level shells. Window surface
   138  * The WindowSurface wrapper for top level shells. Window surface
   137  * provides access for Qt created draw surface.
   139  * provides access for Qt created draw surface.
   138  */
   140  */
   139 WindowSurface windowSurface;
   141 WindowSurface windowSurface;
   828 }
   830 }
   829 
   831 
   830 int setBounds (int x, int y, int width, int height, boolean move, boolean resize) {
   832 int setBounds (int x, int y, int width, int height, boolean move, boolean resize) {
   831     // On Symbian platform top-level Shells are forced to maximized
   833     // On Symbian platform top-level Shells are forced to maximized
   832     if(OS.windowServer == OS.WS_SYMBIAN_S60 && parent == null) {
   834     if(OS.windowServer == OS.WS_SYMBIAN_S60 && parent == null) {
       
   835     	//for updating the layout when shell.pack is called after shell open.
       
   836     	// or aligning with other platform which has resizable top shell
       
   837     	if(resize) {
       
   838     		Point newSize = new Point(width, height);
       
   839     		if(oldSize == null || !oldSize.equals(newSize)) {
       
   840     			sendEvent(SWT.Resize);
       
   841     			// Activate layout
       
   842     			if (layout != null) {
       
   843     				markLayout (false, false);
       
   844     				updateLayout (false);
       
   845     			}
       
   846     			oldSize = newSize; 
       
   847     		}
       
   848     	}    
   833         return 0;
   849         return 0;
   834     }
   850     }
   835     
   851     
   836     if (hasState(OS.QT_WINDOWFULLSCREEN)) {
   852     if (hasState(OS.QT_WINDOWFULLSCREEN)) {
   837         setRestoreState(OS.QT_WINDOWFULLSCREEN, true);
   853         setRestoreState(OS.QT_WINDOWFULLSCREEN, true);