* [Qemu-devel] [PATCH v2 RESEND 00/11] Cocoa: ppc64 host support and various improvements
@ 2010-01-06 22:47 Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 01/11] Cocoa: ppc64 host support Andreas Färber
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel; +Cc: Andreas Färber
Hello,
This is a resend of my full Cocoa series posted Dec 13, last updated on Dec 14
following a suggestion by Juha. Original intro follows.
Recently, OSX/ppc64 TCG support was merged. This series replaces the
remainder of my ppc64 series, splitting it up for review and bisectability.
It starts with fixing an essential 64-bit incompatibility,
followed by elimination of all cocoa.m warnings on a v10.5 ppc64 system.
Also included are respins of patches fixing errors/warnings on older hosts
and optimizing drawing. Support for -nographic is added.
New is my modification of window close behavior plus another drawing
optimization for non-overlapping Views.
Most of these patches do not depend on each other, so could be cherry-picked
if necessary.
Also available at git://repo.or.cz/qemu/afaerber.git, branch cocoa.
Regards,
Andreas
Andreas Färber (11):
Cocoa: ppc64 host support
Cocoa: Silence warning for cocoa_keycode_to_qemu
Cocoa: Silence warning on Big Endian host
Cocoa: Silence type warning
Cocoa: Fix compilation on Mac OS X v10.4 and earlier
Cocoa: Mark the View as opaque
Cocoa: Redraw the View asynchronously
Cocoa: Don't unconditionally show the window
Cocoa: Shutdown when window is closed
Cocoa: Suppress window resize animation
Cocoa: Use optimized drawing for the window
cocoa.m | 56 ++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 44 insertions(+), 12 deletions(-)
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 01/11] Cocoa: ppc64 host support
2010-01-06 22:47 [Qemu-devel] [PATCH v2 RESEND 00/11] Cocoa: ppc64 host support and various improvements Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 02/11] Cocoa: Silence warning for cocoa_keycode_to_qemu Andreas Färber
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel; +Cc: Andreas Färber
Fix integer usage in the Cocoa backend: NSInteger is long on LP64.
http://developer.apple.com/mac/library/documentation/Cocoa/Reference/ApplicationKit/Classes/NSView_Class/Reference/NSView.html#//apple_ref/doc/uid/20000014-BBCFHHCD
This makes the graphical display show up on a ppc64 host.
v3:
- Confine NSInteger to Mac OS X v10.5 and later
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
---
cocoa.m | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index 55ff2b4..989efd5 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -28,6 +28,10 @@
#include "console.h"
#include "sysemu.h"
+#ifndef MAC_OS_X_VERSION_10_5
+#define MAC_OS_X_VERSION_10_5 1050
+#endif
+
//#define DEBUG
@@ -337,7 +341,11 @@ int cocoa_keycode_to_qemu(int keycode)
} else {
// selective drawing code (draws only dirty rectangles) (OS X >= 10.4)
const NSRect *rectList;
+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
+ NSInteger rectCount;
+#else
int rectCount;
+#endif
int i;
CGImageRef clipImageRef;
CGRect clipRect;
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 02/11] Cocoa: Silence warning for cocoa_keycode_to_qemu
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 01/11] Cocoa: ppc64 host support Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 03/11] Cocoa: Silence warning on Big Endian host Andreas Färber
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel; +Cc: John Arbuckle, Andreas Färber
Make cocoa_keycode_to_qemu static, to avoid:
warning: no previous prototype for ‘cocoa_keycode_to_qemu’
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Cc: John Arbuckle <programmingkidx@gmail.com>
---
cocoa.m | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index 989efd5..f80a70b 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -233,7 +233,7 @@ int keymap[] =
*/
};
-int cocoa_keycode_to_qemu(int keycode)
+static int cocoa_keycode_to_qemu(int keycode)
{
if((sizeof(keymap)/sizeof(int)) <= keycode)
{
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 03/11] Cocoa: Silence warning on Big Endian host
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 02/11] Cocoa: Silence warning for cocoa_keycode_to_qemu Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 04/11] Cocoa: Silence type warning Andreas Färber
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel; +Cc: John Arbuckle, Andreas Färber
__LITTLE_ENDIAN__ is undefined on Big Endian host.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Cc: John Arbuckle <programmingkidx@gmail.com>
---
cocoa.m | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index f80a70b..f8c2e00 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -319,7 +319,7 @@ static int cocoa_keycode_to_qemu(int keycode)
screen.bitsPerComponent, //bitsPerComponent
screen.bitsPerPixel, //bitsPerPixel
(screen.width * (screen.bitsPerComponent/2)), //bytesPerRow
-#if __LITTLE_ENDIAN__
+#ifdef __LITTLE_ENDIAN__
CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB), //colorspace for OS X >= 10.4
kCGBitmapByteOrder32Little | kCGImageAlphaNoneSkipFirst,
#else
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 04/11] Cocoa: Silence type warning
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 03/11] Cocoa: Silence warning on Big Endian host Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 05/11] Cocoa: Fix compilation on Mac OS X v10.4 and earlier Andreas Färber
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel; +Cc: John Arbuckle, Andreas Färber
Add const for "qemu" character literal, to avoid:
warning: initialization discards qualifiers from pointer target type
An earlier patch by John proposed to use char[5]. Since we do not modify
the text and later copy it into malloc'ed memory, marking it as const
seems sufficient.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Cc: John Arbuckle <programmingkidx@gmail.com>
---
cocoa.m | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index f8c2e00..0a95c77 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -791,7 +791,7 @@ static int cocoa_keycode_to_qemu(int keycode)
if(returnCode == NSCancelButton) {
exit(0);
} else if(returnCode == NSOKButton) {
- char *bin = "qemu";
+ const char *bin = "qemu";
char *img = (char*)[ [ sheet filename ] cStringUsingEncoding:NSASCIIStringEncoding];
char **argv = (char**)malloc( sizeof(char*)*3 );
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 05/11] Cocoa: Fix compilation on Mac OS X v10.4 and earlier
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 04/11] Cocoa: Silence type warning Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 06/11] Cocoa: Mark the View as opaque Andreas Färber
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel
Cc: John Arbuckle, Andreas Färber, Ryan Schmidt, Mike Kronenberg
NSView's enterFullScreenMode:withOptions: and
exitFullScreenModeWithOptions: are available on v10.5
and later only. Undefined methods raise warnings and
undefined constants result in errors.
Reported by Ryan Schmidt.
While at it, avoid a warning on v10.3.9,
where MAC_OS_X_VERSION_10_4 is not defined.
Spotted by John Arbuckle.
Fix associated comments.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Cc: John Arbuckle <programmingkidx@gmail.com>
Cc: Ryan Schmidt <qemu-2009@ryandesign.com>
Cc: Mike Kronenberg <mike.kronenberg@kronenberg.org>
---
cocoa.m | 17 ++++++++++-------
1 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index 0a95c77..6f8b674 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -28,6 +28,9 @@
#include "console.h"
#include "sysemu.h"
+#ifndef MAC_OS_X_VERSION_10_4
+#define MAC_OS_X_VERSION_10_4 1040
+#endif
#ifndef MAC_OS_X_VERSION_10_5
#define MAC_OS_X_VERSION_10_5 1050
#endif
@@ -331,7 +334,7 @@ static int cocoa_keycode_to_qemu(int keycode)
0, //interpolate
kCGRenderingIntentDefault //intent
);
-// test if host support "CGImageCreateWithImageInRect" at compiletime
+// test if host supports "CGImageCreateWithImageInRect" at compile time
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
if (CGImageCreateWithImageInRect == NULL) { // test if "CGImageCreateWithImageInRect" is supported on host at runtime
#endif
@@ -428,8 +431,8 @@ static int cocoa_keycode_to_qemu(int keycode)
isFullscreen = FALSE;
[self ungrabMouse];
[self setContentDimensions];
-// test if host support "enterFullScreenMode:withOptions" at compiletime
-#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
+// test if host supports "exitFullScreenModeWithOptions" at compile time
+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
if ([NSView respondsToSelector:@selector(exitFullScreenModeWithOptions:)]) { // test if "exitFullScreenModeWithOptions" is supported on host at runtime
[self exitFullScreenModeWithOptions:nil];
} else {
@@ -438,15 +441,15 @@ static int cocoa_keycode_to_qemu(int keycode)
[normalWindow setContentView: self];
[normalWindow makeKeyAndOrderFront: self];
[NSMenu setMenuBarVisible:YES];
-#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
}
#endif
} else { // switch from desktop to fullscreen
isFullscreen = TRUE;
[self grabMouse];
[self setContentDimensions];
-// test if host support "enterFullScreenMode:withOptions" at compiletime
-#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
+// test if host supports "enterFullScreenMode:withOptions" at compile time
+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
if ([NSView respondsToSelector:@selector(enterFullScreenMode:withOptions:)]) { // test if "enterFullScreenMode:withOptions" is supported on host at runtime
[self enterFullScreenMode:[NSScreen mainScreen] withOptions:[NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithBool:NO], NSFullScreenModeAllScreens,
@@ -462,7 +465,7 @@ static int cocoa_keycode_to_qemu(int keycode)
[fullScreenWindow setHasShadow:NO];
[fullScreenWindow setContentView:self];
[fullScreenWindow makeKeyAndOrderFront:self];
-#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4)
+#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5)
}
#endif
}
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 06/11] Cocoa: Mark the View as opaque
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 05/11] Cocoa: Fix compilation on Mac OS X v10.4 and earlier Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 07/11] Cocoa: Redraw the View asynchronously Andreas Färber
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel
Cc: Mike Kronenberg, Alexander Graf, Andreas Färber,
Juha Riihimäki
Default is NO.
Cf. http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/CocoaPerformance/Articles/CustomViews.html
Based on patch by Juha Riihimäki.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Cc: Juha Riihimäki <juha.riihimaki@nokia.com>
Cc: Alexander Graf <alex@csgraf.de>
Cc: Mike Kronenberg <mike.kronenberg@kronenberg.org>
---
cocoa.m | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index 6f8b674..dc9263a 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -305,6 +305,11 @@ static int cocoa_keycode_to_qemu(int keycode)
[super dealloc];
}
+- (BOOL) isOpaque
+{
+ return YES;
+}
+
- (void) drawRect:(NSRect) rect
{
COCOA_DEBUG("QemuCocoaView: drawRect\n");
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 07/11] Cocoa: Redraw the View asynchronously
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 06/11] Cocoa: Mark the View as opaque Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show the window Andreas Färber
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel
Cc: Mike Kronenberg, Alexander Graf, Andreas Färber,
Juha Riihimäki
Cf. http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/CocoaPerformance/Articles/CustomViews.html
Based on patch by Juha Riihimäki.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Cc: Juha Riihimäki <juha.riihimaki@nokia.com>
Cc: Alexander Graf <alex@csgraf.de>
Cc: Mike Kronenberg <mike.kronenberg@kronenberg.org>
---
cocoa.m | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index dc9263a..d5f941b 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -938,7 +938,7 @@ static void cocoa_update(DisplayState *ds, int x, int y, int w, int h)
w * [cocoaView cdx],
h * [cocoaView cdy]);
}
- [cocoaView displayRect:rect];
+ [cocoaView setNeedsDisplayInRect:rect];
}
static void cocoa_resize(DisplayState *ds)
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show the window
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 07/11] Cocoa: Redraw the View asynchronously Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 09/11] Cocoa: Shutdown when window is closed Andreas Färber
2010-01-06 22:49 ` [Qemu-devel] Re: [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show " Alexander Graf
0 siblings, 2 replies; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel; +Cc: Andreas Färber, Mike Kronenberg, Alexander Graf
When QEMU was launched in no-graphic, Curses or VNC mode,
don't run it as a Cocoa application.
Based on patch by Alexander Graf.
v1:
- Avoid type mismatch warning for argv
- Drop noCocoa variable
- Coding Style changes
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Cc: Alexander Graf <agraf@suse.de>
Cc: Mike Kronenberg <mike.kronenberg@kronenberg.org>
---
cocoa.m | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index d5f941b..70c249b 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -855,6 +855,16 @@ int main (int argc, const char * argv[]) {
gArgc = argc;
gArgv = (char **)argv;
CPSProcessSerNum PSN;
+ int i;
+
+ /* In case we don't need to display a window, let's not do that */
+ for (i = 1; i < argc; i++) {
+ if (!strcmp(argv[i], "-vnc") ||
+ !strcmp(argv[i], "-nographic") ||
+ !strcmp(argv[i], "-curses")) {
+ return qemu_main(gArgc, gArgv);
+ }
+ }
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
[NSApplication sharedApplication];
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 09/11] Cocoa: Shutdown when window is closed
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show the window Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 10/11] Cocoa: Suppress window resize animation Andreas Färber
2010-01-06 22:49 ` [Qemu-devel] Re: [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show " Alexander Graf
1 sibling, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel; +Cc: Andreas Färber, Juha Riihimäki
The application is not very useful once the guest window is closed.
QEMU is not a document-based application; terminating it automatically
saves the user another action and resembles SDL behavior.
v2:
- Use delegate method, suggested by Juha Riihimäki.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Cc: Juha Riihimäki <juha.riihimaki@nokia.com>
---
cocoa.m | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index 70c249b..57dcff8 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -783,6 +783,11 @@ static int cocoa_keycode_to_qemu(int keycode)
exit(0);
}
+- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)theApplication
+{
+ return YES;
+}
+
- (void)startEmulationWithArgc:(int)argc argv:(char**)argv
{
COCOA_DEBUG("QemuCocoaAppController: startEmulationWithArgc\n");
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 10/11] Cocoa: Suppress window resize animation
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 09/11] Cocoa: Shutdown when window is closed Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 11/11] Cocoa: Use optimized drawing for the window Andreas Färber
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel
Cc: Mike Kronenberg, Alexander Graf, Andreas Färber,
Juha Riihimäki
Disable the nice resize animation, to avoid drawing glitches
following a guest's screen size change.
Based on patch by Juha Riihimäki.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Cc: Juha Riihimäki <juha.riihimaki@nokia.com>
Cc: Alexander Graf <alex@csgraf.de>
Cc: Mike Kronenberg <mike.kronenberg@kronenberg.org>
---
cocoa.m | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index 57dcff8..bb4325c 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -419,7 +419,7 @@ static int cocoa_keycode_to_qemu(int keycode)
} else {
if (qemu_name)
[normalWindow setTitle:[NSString stringWithFormat:@"QEMU %s", qemu_name]];
- [normalWindow setFrame:NSMakeRect([normalWindow frame].origin.x, [normalWindow frame].origin.y - h + screen.height, w, h + [normalWindow frame].size.height - screen.height) display:YES animate:YES];
+ [normalWindow setFrame:NSMakeRect([normalWindow frame].origin.x, [normalWindow frame].origin.y - h + screen.height, w, h + [normalWindow frame].size.height - screen.height) display:YES animate:NO];
}
screen.width = w;
screen.height = h;
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] [PATCH v2 RESEND 11/11] Cocoa: Use optimized drawing for the window
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 10/11] Cocoa: Suppress window resize animation Andreas Färber
@ 2010-01-06 22:47 ` Andreas Färber
0 siblings, 0 replies; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 22:47 UTC (permalink / raw)
To: qemu-devel; +Cc: Andreas Färber
Default is NO.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
---
cocoa.m | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/cocoa.m b/cocoa.m
index bb4325c..56c789a 100644
--- a/cocoa.m
+++ b/cocoa.m
@@ -740,6 +740,7 @@ static int cocoa_keycode_to_qemu(int keycode)
[normalWindow setAcceptsMouseMovedEvents:YES];
[normalWindow setTitle:[NSString stringWithFormat:@"QEMU"]];
[normalWindow setContentView:cocoaView];
+ [normalWindow useOptimizedDrawing:YES];
[normalWindow makeKeyAndOrderFront:self];
[normalWindow center];
--
1.6.5.3
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Qemu-devel] Re: [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show the window
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show the window Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 09/11] Cocoa: Shutdown when window is closed Andreas Färber
@ 2010-01-06 22:49 ` Alexander Graf
2010-01-06 23:18 ` Andreas Färber
1 sibling, 1 reply; 15+ messages in thread
From: Alexander Graf @ 2010-01-06 22:49 UTC (permalink / raw)
To: Andreas Färber; +Cc: Mike Kronenberg, qemu-devel
On 06.01.2010, at 23:47, Andreas Färber wrote:
> When QEMU was launched in no-graphic, Curses or VNC mode,
> don't run it as a Cocoa application.
>
> Based on patch by Alexander Graf.
>
> v1:
> - Avoid type mismatch warning for argv
> - Drop noCocoa variable
> - Coding Style changes
>
> Signed-off-by: Andreas Färber <andreas.faerber@web.de>
> Cc: Alexander Graf <agraf@suse.de>
> Cc: Mike Kronenberg <mike.kronenberg@kronenberg.org>
> ---
> cocoa.m | 10 ++++++++++
> 1 files changed, 10 insertions(+), 0 deletions(-)
>
> diff --git a/cocoa.m b/cocoa.m
> index d5f941b..70c249b 100644
> --- a/cocoa.m
> +++ b/cocoa.m
> @@ -855,6 +855,16 @@ int main (int argc, const char * argv[]) {
> gArgc = argc;
> gArgv = (char **)argv;
> CPSProcessSerNum PSN;
> + int i;
> +
> + /* In case we don't need to display a window, let's not do that */
> + for (i = 1; i < argc; i++) {
> + if (!strcmp(argv[i], "-vnc") ||
> + !strcmp(argv[i], "-nographic") ||
> + !strcmp(argv[i], "-curses")) {
> + return qemu_main(gArgc, gArgv);
> + }
> + }
Hm, does that work with qemu -hda /tmp/bla.img -nographic?
Alex
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Qemu-devel] Re: [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show the window
2010-01-06 22:49 ` [Qemu-devel] Re: [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show " Alexander Graf
@ 2010-01-06 23:18 ` Andreas Färber
2010-01-06 23:23 ` Alexander Graf
0 siblings, 1 reply; 15+ messages in thread
From: Andreas Färber @ 2010-01-06 23:18 UTC (permalink / raw)
To: Alexander Graf; +Cc: Mike Kronenberg, qemu-devel
Am 06.01.2010 um 23:49 schrieb Alexander Graf:
>
> On 06.01.2010, at 23:47, Andreas Färber wrote:
>
>> When QEMU was launched in no-graphic, Curses or VNC mode,
>> don't run it as a Cocoa application.
>>
>> Based on patch by Alexander Graf.
>>
>> v1:
>> - Avoid type mismatch warning for argv
>> - Drop noCocoa variable
>> - Coding Style changes
>>
>> Signed-off-by: Andreas Färber <andreas.faerber@web.de>
>> Cc: Alexander Graf <agraf@suse.de>
>> Cc: Mike Kronenberg <mike.kronenberg@kronenberg.org>
>> ---
>> cocoa.m | 10 ++++++++++
>> 1 files changed, 10 insertions(+), 0 deletions(-)
>>
>> diff --git a/cocoa.m b/cocoa.m
>> index d5f941b..70c249b 100644
>> --- a/cocoa.m
>> +++ b/cocoa.m
>> @@ -855,6 +855,16 @@ int main (int argc, const char * argv[]) {
>> gArgc = argc;
>> gArgv = (char **)argv;
>> CPSProcessSerNum PSN;
>> + int i;
>> +
>> + /* In case we don't need to display a window, let's not do
>> that */
>> + for (i = 1; i < argc; i++) {
>> + if (!strcmp(argv[i], "-vnc") ||
>> + !strcmp(argv[i], "-nographic") ||
>> + !strcmp(argv[i], "-curses")) {
>> + return qemu_main(gArgc, gArgv);
>> + }
>> + }
>
> Hm, does that work with qemu -hda /tmp/bla.img -nographic?
Yes, your code! :) I just did the minor changes decribed unter v1.
I run Milax that way:
qemu-system-sparc64 -m 256 -boot d -cdrom milax032sparc.iso -nographic
Andreas
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Qemu-devel] Re: [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show the window
2010-01-06 23:18 ` Andreas Färber
@ 2010-01-06 23:23 ` Alexander Graf
0 siblings, 0 replies; 15+ messages in thread
From: Alexander Graf @ 2010-01-06 23:23 UTC (permalink / raw)
To: Andreas Färber; +Cc: Mike Kronenberg, qemu-devel
On 07.01.2010, at 00:18, Andreas Färber wrote:
>
> Am 06.01.2010 um 23:49 schrieb Alexander Graf:
>
>>
>> On 06.01.2010, at 23:47, Andreas Färber wrote:
>>
>>> When QEMU was launched in no-graphic, Curses or VNC mode,
>>> don't run it as a Cocoa application.
>>>
>>> Based on patch by Alexander Graf.
>>>
>>> v1:
>>> - Avoid type mismatch warning for argv
>>> - Drop noCocoa variable
>>> - Coding Style changes
>>>
>>> Signed-off-by: Andreas Färber <andreas.faerber@web.de>
>>> Cc: Alexander Graf <agraf@suse.de>
>>> Cc: Mike Kronenberg <mike.kronenberg@kronenberg.org>
>>> ---
>>> cocoa.m | 10 ++++++++++
>>> 1 files changed, 10 insertions(+), 0 deletions(-)
>>>
>>> diff --git a/cocoa.m b/cocoa.m
>>> index d5f941b..70c249b 100644
>>> --- a/cocoa.m
>>> +++ b/cocoa.m
>>> @@ -855,6 +855,16 @@ int main (int argc, const char * argv[]) {
>>> gArgc = argc;
>>> gArgv = (char **)argv;
>>> CPSProcessSerNum PSN;
>>> + int i;
>>> +
>>> + /* In case we don't need to display a window, let's not do that */
>>> + for (i = 1; i < argc; i++) {
>>> + if (!strcmp(argv[i], "-vnc") ||
>>> + !strcmp(argv[i], "-nographic") ||
>>> + !strcmp(argv[i], "-curses")) {
>>> + return qemu_main(gArgc, gArgv);
>>> + }
>>> + }
>>
>> Hm, does that work with qemu -hda /tmp/bla.img -nographic?
>
> Yes, your code! :) I just did the minor changes decribed unter v1.
Oh, in case any of these arguments is passed, we just directly call the 'normal' main function. I was really being tricky back then :-).
Alex
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2010-01-06 23:23 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-06 22:47 [Qemu-devel] [PATCH v2 RESEND 00/11] Cocoa: ppc64 host support and various improvements Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 01/11] Cocoa: ppc64 host support Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 02/11] Cocoa: Silence warning for cocoa_keycode_to_qemu Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 03/11] Cocoa: Silence warning on Big Endian host Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 04/11] Cocoa: Silence type warning Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 05/11] Cocoa: Fix compilation on Mac OS X v10.4 and earlier Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 06/11] Cocoa: Mark the View as opaque Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 07/11] Cocoa: Redraw the View asynchronously Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show the window Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 09/11] Cocoa: Shutdown when window is closed Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 10/11] Cocoa: Suppress window resize animation Andreas Färber
2010-01-06 22:47 ` [Qemu-devel] [PATCH v2 RESEND 11/11] Cocoa: Use optimized drawing for the window Andreas Färber
2010-01-06 22:49 ` [Qemu-devel] Re: [PATCH v2 RESEND 08/11] Cocoa: Don't unconditionally show " Alexander Graf
2010-01-06 23:18 ` Andreas Färber
2010-01-06 23:23 ` Alexander Graf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).