From patchwork Mon Jan 12 00:31:18 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Programmingkid X-Patchwork-Id: 427538 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 18ABF140217 for ; Mon, 12 Jan 2015 11:31:46 +1100 (AEDT) Received: from localhost ([::1]:59818 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YASv0-0004aq-L4 for incoming@patchwork.ozlabs.org; Sun, 11 Jan 2015 19:31:42 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36700) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YASuj-0004JS-3J for qemu-devel@nongnu.org; Sun, 11 Jan 2015 19:31:26 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YASuf-00016v-RW for qemu-devel@nongnu.org; Sun, 11 Jan 2015 19:31:25 -0500 Received: from mail-qg0-x230.google.com ([2607:f8b0:400d:c04::230]:64608) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YASuf-00016q-M5 for qemu-devel@nongnu.org; Sun, 11 Jan 2015 19:31:21 -0500 Received: by mail-qg0-f48.google.com with SMTP id j5so15785621qga.7 for ; Sun, 11 Jan 2015 16:31:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:content-type:subject:date:message-id:cc:to:mime-version; bh=MaOtOPrq0D8TaXAwpCVqrC1w32CWbUFN5ZIKDdiEYF0=; b=OmwWd4tXlJJvqdEg2sgvjS/MGPrBTow0KHEJkI+PQR24ZiReT1Hx7CIfg8UPb/LPtW JXSUgT3kalTbzcyBZizAIzQi7TQLHc5LTxJZlBc3DH0nsQgvkWP57mdadjQ+w3yXwg3P akpe48Q9X7GReL00G73BYMjNaMRNPC0wOTXAlScZkxXvKSy1uvD6DLgMGqjGn0DCoPoF mWtVCCp6Bf6wGmQH1FVEuN05v7fqcOtV1jIzMcSbPEMvnQ7nqjCidQ0RcII73Zhe6vCC doRFoCB+AbbiJXdECLqM5F8Z9EskG/GM66JBz85EhdHrkIv87rZSDfY73GEM0vsPjaKS X8ZQ== X-Received: by 10.140.91.45 with SMTP id y42mr42431760qgd.90.1421022681330; Sun, 11 Jan 2015 16:31:21 -0800 (PST) Received: from [192.168.0.2] (d199-74-164-53.col.wideopenwest.com. [74.199.53.164]) by mx.google.com with ESMTPSA id 4sm13428366qgh.22.2015.01.11.16.31.19 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sun, 11 Jan 2015 16:31:20 -0800 (PST) From: Programmingkid Date: Sun, 11 Jan 2015 19:31:18 -0500 Message-Id: <60B7B5DB-1DEE-4FA3-B97A-6695746EA427@gmail.com> To: qemu-devel qemu-devel Mime-Version: 1.0 (Apple Message framework v1084) X-Mailer: Apple Mail (2.1084) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:400d:c04::230 Cc: Peter Maydell Subject: [Qemu-devel] [PATCH] Makes -full-screen option work on Mac OS X X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org This patch makes the -full-screen option work under Mac OS X. Signed-off-by: John Arbuckle --- ui/cocoa.m | 23 +++++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-) diff --git a/ui/cocoa.m b/ui/cocoa.m index 685081e..3a70cfc 100644 --- a/ui/cocoa.m +++ b/ui/cocoa.m @@ -67,6 +67,7 @@ char **gArgv; /* bitmap_info is used in drawRect:. Starts with little endian format. */ static int bitmap_info = kCGBitmapByteOrder32Little | kCGImageAlphaNoneSkipFirst; SInt32 current_mac_os_version; +bool set_to_full_screen; // keymap conversion int keymap[] = @@ -252,6 +253,20 @@ static void determineMacOSVersion() } } +// Looks for the -full-screen option being sent to QEMU +static void scanForFullScreenOption(int argc, char * argv[]) +{ + set_to_full_screen = false; + + // search for the -full-screen option + for(int i = 0; i < argc; i++) { + if(strcmp(argv[i], "-full-screen") == 0) { + set_to_full_screen = true; + break; + } + } +} + /* ------------------------------------------------------ QemuCocoaView @@ -911,6 +926,12 @@ QemuCocoaView *cocoaView; didEndSelector:@selector(openPanelDidEnd:returnCode:contextInfo:) contextInfo:NULL]; #endif } else { + /* for activating full screen at launch */ + if (set_to_full_screen == true) { + [NSApp activateIgnoringOtherApps: YES]; + [self toggleFullScreen: nil]; + } + // or launch QEMU, with the global args [self startEmulationWithArgc:gArgc argv:(char **)gArgv]; } @@ -1002,6 +1023,8 @@ int main (int argc, const char * argv[]) { gArgv = (char **)argv; int i; + scanForFullScreenOption(argc, argv); + /* In case we don't need to display a window, let's not do that */ for (i = 1; i < argc; i++) { const char *opt = argv[i];