[rkward-cvs] SF.net SVN: rkward: [2098] branches/KDE4_port/rkward

tfry at users.sourceforge.net tfry at users.sourceforge.net
Thu Oct 18 20:58:12 UTC 2007


Revision: 2098
          http://rkward.svn.sourceforge.net/rkward/?rev=2098&view=rev
Author:   tfry
Date:     2007-10-18 13:58:12 -0700 (Thu, 18 Oct 2007)

Log Message:
-----------
Make X11 window catching work

Modified Paths:
--------------
    branches/KDE4_port/rkward/rkwardapplication.cpp
    branches/KDE4_port/rkward/windows/rkwindowcatcher.cpp
    branches/KDE4_port/rkward/windows/rkwindowcatcher.h

Modified: branches/KDE4_port/rkward/rkwardapplication.cpp
===================================================================
--- branches/KDE4_port/rkward/rkwardapplication.cpp	2007-10-18 20:57:41 UTC (rev 2097)
+++ branches/KDE4_port/rkward/rkwardapplication.cpp	2007-10-18 20:58:12 UTC (rev 2098)
@@ -97,7 +97,7 @@
 	if (detect_x11_creations) {
 		if (e->type == CreateNotify) {
 			if (e->xcreatewindow.parent == QX11Info::appRootWindow ()) {
-				KWindowInfo info = KWindowInfo (e->xcreatewindow.window, NET::WMName, NET::WM2WindowClass);
+				KWindowInfo info = KWindowInfo (e->xcreatewindow.window, NET::WMName | NET::WMWindowType);
 				if ((info.windowType (0xFFFF) != 0) && (!info.name ().isEmpty ())) {
 					RK_ASSERT (!created_window);
 					created_window = e->xcreatewindow.window;

Modified: branches/KDE4_port/rkward/windows/rkwindowcatcher.cpp
===================================================================
--- branches/KDE4_port/rkward/windows/rkwindowcatcher.cpp	2007-10-18 20:57:41 UTC (rev 2097)
+++ branches/KDE4_port/rkward/windows/rkwindowcatcher.cpp	2007-10-18 20:58:12 UTC (rev 2098)
@@ -112,10 +112,10 @@
 	dynamic_size = true;
 	dynamic_size_action->setChecked (true);
 
-	QX11EmbedContainer *capture = new QX11EmbedContainer (xembed_container);
-	connect (capture, SIGNAL (embeddedWindowDestroyed ()), this, SLOT (deleteLater ()));
+	capture = new QX11EmbedContainer (xembed_container);
+	connect (capture, SIGNAL (clientClosed ()), this, SLOT (deleteLater ()));
 
-	KWindowInfo wininfo = KWindowSystem::windowInfo (window_to_embed, NET::WMName | NET::WMGeometry);
+	KWindowInfo wininfo = KWindowSystem::windowInfo (window_to_embed, NET::WMName | NET::WMFrameExtents);
 	RK_ASSERT (wininfo.valid ());
 	setGeometry (wininfo.frameGeometry ());
 	setCaption (wininfo.name ());
@@ -128,6 +128,7 @@
 RKCaughtX11Window::~RKCaughtX11Window () {
 	RK_TRACE (MISC);
 
+	capture->close ();
 	RKWardApplication::getApp ()->unregisterNameWatcher (embedded);
 	error_dialog->autoDeleteWhenDone ();
 }
@@ -296,7 +297,7 @@
 	actionCollection ()->addAction ("toggle_fixed_size", window->dynamic_size_action);
 
 	QAction *action;
-	action = actionCollection ()->addAction ("set_fixed_size_1", window, SLOT (setFixedSize()));
+	action = actionCollection ()->addAction ("set_fixed_size_1", window, SLOT (setFixedSize1()));
 	action->setText (i18n ("Set fixed size 500x500"));
 	action = actionCollection ()->addAction ("set_fixed_size_2", window, SLOT (setFixedSize2()));
 	action->setText (i18n ("Set fixed size 1000x1000"));

Modified: branches/KDE4_port/rkward/windows/rkwindowcatcher.h
===================================================================
--- branches/KDE4_port/rkward/windows/rkwindowcatcher.h	2007-10-18 20:57:41 UTC (rev 2097)
+++ branches/KDE4_port/rkward/windows/rkwindowcatcher.h	2007-10-18 20:58:12 UTC (rev 2098)
@@ -81,6 +81,7 @@
 class Q3ScrollView;
 class Q3VBox;
 class RKProgressControl;
+class QX11EmbedContainer;
 
 /** An R X11 device window managed by rkward. */
 class RKCaughtX11Window : public RKMDIWindow {
@@ -126,6 +127,7 @@
 	Q3ScrollView *scroll_widget;
 	Q3VBox *box_widget;
 	RKProgressControl *error_dialog;
+	QX11EmbedContainer *capture;
 
 	bool dynamic_size;
 	KToggleAction *dynamic_size_action;


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the rkward-tracker mailing list