Author: yradtsevich
Date: 2011-11-18 08:44:57 -0500 (Fri, 18 Nov 2011)
New Revision: 36438
Modified:
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/model/DevicesListStorage.java
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/resources/config/devices.cfg
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/ui/BrowserSim.java
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/ui/EditDeviceDialog.java
Log:
https://issues.jboss.org/browse/JBIDE-9539 : Browsersim app for testing mobile/desktop web
apps
- adde support of default width\height
Modified:
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/model/DevicesListStorage.java
===================================================================
---
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/model/DevicesListStorage.java 2011-11-18
11:37:12 UTC (rev 36437)
+++
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/model/DevicesListStorage.java 2011-11-18
13:44:57 UTC (rev 36438)
@@ -31,8 +31,8 @@
public class DevicesListStorage {
private static final String DEFAULT_PREFERENCES_RESOURCE =
"/org/jboss/tools/browsersim/resources/config/devices.cfg";
+ private static final String USER_PREFERENCES_FOLDER =
"org.jboss.tools.browsersim";
private static final String USER_PREFERENCES_FILE = "devices.cfg";
- private static final String USER_PREFERENCES_FOLDER =
"org.jboss.tools.browsersim";
public static void saveUserDefinedDevicesList(DevicesList devicesList) {
File configFolder = new File(USER_PREFERENCES_FOLDER);
@@ -85,8 +85,10 @@
writer.write(encode( String.valueOf(device.getWidth()) ));
writer.write('\t');
writer.write(encode( String.valueOf(device.getHeight()) ));
- writer.write('\t');
- writer.write( encode(device.getUserAgent() ));
+ if (device.getUserAgent() != null) {
+ writer.write('\t');
+ writer.write( encode(device.getUserAgent() ));
+ }
writer.write('\n');
}
@@ -106,7 +108,7 @@
if (nextLine != null) {
selectedDeviceIndex = Integer.parseInt(nextLine);
}
- Pattern devicePattern =
Pattern.compile("^(.*)\\t([0-9]*)\\t([0-9]*)\\t(.*)$");
+ Pattern devicePattern =
Pattern.compile("^(.*)\\t([0-9]*)\\t([0-9]*)(\\t(.*))?$");
List<Device> devices = new ArrayList<Device>();
while ((nextLine = reader.readLine()) != null) {
@@ -116,7 +118,9 @@
decode(deviceMatcher.group(1)),
Integer.parseInt(deviceMatcher.group(2)),
Integer.parseInt(deviceMatcher.group(3)),
- decode(deviceMatcher.group(4))
+ deviceMatcher.group(5) != null
+ ? decode(deviceMatcher.group(5))
+ : null
));
}
}
Modified:
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/resources/config/devices.cfg
===================================================================
---
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/resources/config/devices.cfg 2011-11-18
11:37:12 UTC (rev 36437)
+++
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/resources/config/devices.cfg 2011-11-18
13:44:57 UTC (rev 36438)
@@ -1,4 +1,6 @@
0
+Default 0 0
+Apple iPad 2 768 1024 Mozilla/5.0 (iPad; U; CPU OS 4_3_1 like Mac OS X; en-us)
AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8G4 Safari/6533.18.5
Apple iPhone 3 320 480 Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us)
AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7
Apple iPhone 4 640 960 Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us)
AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7
RIM BlackBerry Bold Touch 9900 640 480 Mozilla/5.0 (BlackBerry; U; BlackBerry 9900;
en-US) AppleWebKit/534.1+ (KHTML, like Gecko) Version/6.0.0.246 Mobile Safari/534.1+
Modified:
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/ui/BrowserSim.java
===================================================================
---
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/ui/BrowserSim.java 2011-11-18
11:37:12 UTC (rev 36437)
+++
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/ui/BrowserSim.java 2011-11-18
13:44:57 UTC (rev 36438)
@@ -293,7 +293,9 @@
DevicesListHolder devicesManager = (DevicesListHolder) o;
DevicesList devicesList = devicesManager.getDevicesList();
setDevicesListForMenu(devicesList);
- setDevice(devicesList.getDevices().get(devicesList.getSelectedDeviceIndex()));
+ if (devicesList.getSelectedDeviceIndex() < devicesList.getDevices().size()) {
+ setDevice(devicesList.getDevices().get(devicesList.getSelectedDeviceIndex()));
+ }
devicesList.addObserver(new Observer() {
public void update(Observable o, Object arg) {
setDevice(((DevicesList)o).getDevices().get(((DevicesList)o).getSelectedDeviceIndex()));
@@ -373,10 +375,21 @@
browser.setDefaultUserAgent(device.getUserAgent());
GridData data = (GridData) browser.getLayoutData();
- data.widthHint = device.getWidth();
- data.heightHint = device.getHeight();
- Point shellSize = shell.computeSize(SWT.DEFAULT, SWT.DEFAULT);
+
Rectangle clientArea = display.getClientArea();
+ int shellWidthHint = SWT.DEFAULT;
+ if (device.getWidth() != 0) {
+ data.widthHint = device.getWidth();
+ } else if (data.widthHint == SWT.DEFAULT) {
+ shellWidthHint = clientArea.width;
+ }
+ int shellHeightHint = SWT.DEFAULT;
+ if (device.getHeight() != 0) {
+ data.heightHint = device.getHeight();
+ } else if (data.heightHint == SWT.DEFAULT) {
+ shellHeightHint = clientArea.height;
+ }
+ Point shellSize = shell.computeSize(shellWidthHint, shellHeightHint);
shellSize.x = Math.min(shellSize.x, clientArea.width);
shellSize.y = Math.min(shellSize.y, clientArea.height);
shell.setSize(shellSize);
Modified:
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/ui/EditDeviceDialog.java
===================================================================
---
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/ui/EditDeviceDialog.java 2011-11-18
11:37:12 UTC (rev 36437)
+++
workspace/yradtsevich/browsersim/swt-webkit-browsersim/org.jboss.tools.browsersim/src/org/jboss/tools/browsersim/ui/EditDeviceDialog.java 2011-11-18
13:44:57 UTC (rev 36438)
@@ -107,7 +107,12 @@
textUserAgent = new Text(shell, SWT.BORDER);
textUserAgent.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
textUserAgent.addFocusListener(new FocusGainedTextListener());
- textUserAgent.setText(initialDevice.getUserAgent());
+ if (initialDevice.getUserAgent() != null) {
+ textUserAgent.setText(initialDevice.getUserAgent());
+ } else {
+ textUserAgent.setText("Default User-Agent");
+ textUserAgent.setEnabled(false);
+ }
Composite composite = new Composite(shell, SWT.NONE);
composite.setLayout(new FillLayout(SWT.HORIZONTAL));
@@ -118,7 +123,7 @@
buttonOk.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
resultDevice = new Device(textName.getText(), Integer.valueOf(textWidth.getText()),
- Integer.valueOf(textHeight.getText()), textUserAgent.getText());
+ Integer.valueOf(textHeight.getText()), textUserAgent.isEnabled() ?
textUserAgent.getText() : null);
shell.close();
}
});