Bug 118163 [Dialogs] - PopupDialog should define constants for zero margins
PopupDialogs traditionally use a 0 margin width and height for the grid layouts used. This should be made an API constant rather than subclasses just knowing.
bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/PopupDialog.java
shell.setBackground(display.getSystemColor(SWT.COLOR_BLACK));
		layout = new GridLayout(1, false);
		int border = ((getShellStyle() & SWT.NO_TRIM) == 0) ? 0
				: BORDER_THICKNESS;
		layout.marginHeight = border;
		layout.marginWidth = border;
		shell.setLayout(layout);
		gd = new GridData(GridData.FILL_BOTH);
		shell.setLayoutData(gd);
		shell.addListener(SWT.Deactivate, new Listener() {
			public void handleEvent(Event event) {
				/*
				 * Close if we are deactivating and have no child shells. If we
				 * have child shells, we are deactivating due to their opening.
				 * On X, we receive this when a menu child (such as the system
				 * menu) of the shell opens, but I have not found a way to
				 * distinguish that case here. Hence bug #113577 still exists.
				 */
				if (listenToDeactivate && event.widget == getShell()
						&& getShell().getShells().length == 0) {
					close();
				}
			}
		});
		
		
		shell.addListener(SWT.Activate, new Listener() {
			public void handleEvent(Event event) {
				
				if (event.widget == getShell()