/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
private static final PlatformLogger xembedLog = PlatformLogger.getLogger("sun.awt.X11.xembed.XEmbeddedFramePeer");
// Don't specify PARENT_WINDOW param here. Instead we reparent
// this embedded frame peer to the proper parent window after
// an XEventDispatcher is registered to handle XEmbed events
super(new XCreateWindowParams(new Object[] {
}
if (supportsXEmbed()) {
embedder = new XEmbedClientHelper();
}
}
// install X11 event dispatcher
// reparent to XEmbed server
} else if (getParentWindowHandle() != 0) {
try {
getWindow(),
0, 0);
} finally {
}
}
}
public void dispose() {
// uninstall X11 event dispatcher
}
super.dispose();
}
public void updateMinimumSize() {
}
return "JavaEmbeddedFrame";
}
final long getParentWindowHandle() {
}
boolean supportsXEmbed() {
}
// Should check for active state of host application
return embedder.requestFocus();
} else {
}
}
protected void requestInitialFocus() {
} else {
super.requestInitialFocus();
}
}
switch (e.get_type()) {
case XConstants.FocusIn:
case XConstants.FocusOut:
return true;
}
}
return super.isEventDisabled(e);
}
{
assert (SunToolkit.isAWTLockHeldByCurrentThread());
}
// fix for 5063031
// if we use super.handleConfigureNotifyEvent() we would get wrong
// size and position because embedded frame really is NOT a decorated one
xe.get_height())));
synchronized (getStateLock()) {
dimensions.setLocation(x, y);
}
}
}
protected void traverseOutForward() {
if (embedder.isApplicationActive()) {
}
}
}
protected void traverseOutBackward() {
if (embedder.isApplicationActive()) {
}
}
}
// don't use getLocationOnScreen() inherited from XDecoratedPeer
try {
} finally {
}
}
// don't use getBounds() inherited from XDecoratedPeer
}
}
int x = 0, y = 0;
int w = 0, h = 0;
try {
h = attr.get_height();
} finally {
}
return new Rectangle(x, y, w, h);
}
}
}
}
}
void notifyStarted() {
// Register accelerators
int i = 0;
}
}
// Now we know that the the embedder is an XEmbed server, so we
// reregister the drop target to enable XDnD protocol support via
// XEmbed.
}
void notifyStopped() {
}
}
}
long getFocusTargetWindow() {
return getWindow();
}
boolean isXEmbedActive() {
}
public int getAbsoluteX()
{
}
public int getAbsoluteY()
{
}
public int getWidth() {
return width;
}
public int getHeight() {
return height;
}
}
// override XWindowPeer's method to let the embedded frame to block
// the containing window
}
try {
} finally {
}
}
}