Skip to content

Commit 6e83ae2

Browse files
hansonrhansonr
authored andcommitted
frame embedding
1 parent 1d8ec43 commit 6e83ae2

File tree

5 files changed

+24
-21
lines changed

5 files changed

+24
-21
lines changed

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSComponentUI.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -844,6 +844,7 @@ public void enableJSKeys(boolean on) {
844844
protected void addFocusHandler() {
845845
if (focusNode == null && (focusNode = domNode) == null)
846846
return;
847+
System.out.println("JSCUI.addingFocusHandler " + id);
847848
keysEnabled = true;
848849
DOMNode.setAttrs(focusNode, "applet", applet, "_frameViewer", jc.getFrameViewer());
849850
setDataKeyComponent(focusNode);

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSFrameUI.java

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ public class JSFrameUI extends JSWindowUI implements FramePeer {
7171
private DOMNode closerWrap;
7272
protected boolean isModal;
7373
protected int zModal;
74+
private boolean isDesktop;
7475

7576
protected boolean isInternalFrame;
7677

@@ -101,7 +102,6 @@ public DOMNode updateDOMNode() {
101102
DOMNode.setVisible(domNode, false);
102103
return domNode;
103104
}
104-
setWindowClass();
105105
int w = c.getWidth();
106106
int h = c.getHeight();
107107
if (w == 0)
@@ -110,19 +110,19 @@ public DOMNode updateDOMNode() {
110110
h = defaultHeight;
111111
DOMNode.setSize(frameNode, w, h);
112112
DOMNode.setTopLeftAbsolute(frameNode, 0, 0);
113-
if (frame.getName() != null) {
114-
DOMNode node = DOMNode.getElement(frame.getName() + "-div");
115-
if (node != null) {
116-
frame.setUndecorated(true);
117-
frame.setLocation(0, 0);
118-
embeddingNode = node;
119-
int ew = DOMNode.getWidth(node);
120-
int eh = DOMNode.getHeight(node);
121-
if (ew > 0 && eh > 0) {
122-
frame._freezeBounds(ew, eh);
123-
}
113+
String fname = frame.getName();
114+
DOMNode node = DOMNode.getElement(fname + "-div");
115+
if (node != null) {
116+
frame.setUndecorated(true);
117+
frame.setLocation(0, 0);
118+
embeddingNode = node;
119+
int ew = DOMNode.getWidth(node);
120+
int eh = DOMNode.getHeight(node);
121+
if (ew > 0 && eh > 0) {
122+
frame._freezeBounds(ew, eh);
124123
}
125124
}
125+
setWindowClass();
126126
if (!frame.isUndecorated()) {
127127
DOMNode.setStyles(frameNode, "box-shadow", "0px 0px 10px gray", "box-sizing", "content-box");
128128
titleBarNode = newDOMObject("div", id + "_titlebar");
@@ -177,6 +177,13 @@ public DOMNode updateDOMNode() {
177177
return domNode;
178178
}
179179

180+
@Override
181+
public void setZOrder(int z) {
182+
if (embeddingNode != null)
183+
z = 999;
184+
super.setZOrder(z);
185+
}
186+
180187
@Override
181188
protected void setDraggableEvents() {
182189
if (embeddingNode != null || frame.isUndecorated())

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSLayeredPaneUI.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public JSLayeredPaneUI() {
1414
@Override
1515
public DOMNode updateDOMNode() {
1616
if (domNode == null) {
17-
domNode = newDOMObject("div", id);
17+
containerNode = domNode = newDOMObject("div", id);
1818
}
1919
// add code here for adjustments when changes in bounds or other properties occur.
2020
return domNode;

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSPanelUI.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
11
package swingjs.plaf;
22

33

4-
import java.awt.Component;
54
import java.awt.Dimension;
6-
import java.awt.Insets;
7-
import java.awt.LayoutManager;
85

96
import javax.swing.JComponent;
107
import javax.swing.JRootPane;
118
import javax.swing.LookAndFeel;
9+
1210
import swingjs.api.js.DOMNode;
1311

1412
public class JSPanelUI extends JSLightweightUI {
@@ -23,7 +21,7 @@ public JSPanelUI() {
2321
public DOMNode updateDOMNode() {
2422
JRootPane root = jc.getRootPane();
2523
if (domNode == null) {
26-
domNode = newDOMObject("div", id);
24+
containerNode = domNode = newDOMObject("div", id);
2725
if (root != null && root.getGlassPane() == c)
2826
DOMNode.setVisible(domNode, false);
2927
}

sources/net.sf.j2s.java.core/src/swingjs/plaf/JSWindowUI.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -103,11 +103,8 @@ public DOMNode updateDOMNode() {
103103

104104

105105
protected void setWindowClass() {
106-
setZOrder(z);
107106
addClass(domNode, "swingjs-window");
108-
// these next two lines are what allow the FocusManager to work....or not
109-
// focusNode = domNode;
110-
// addJQueryFocusCallbacks();
107+
setZOrder(z);
111108
}
112109

113110
@Override

0 commit comments

Comments
 (0)