Prosecution Insights
Last updated: April 19, 2026
Application No. 17/852,145

SETTING SIMULTANEOUS FOCUS ACROSS MULTIPLE OPERATING SYSTEMS

Non-Final OA §103§112
Filed
Jun 28, 2022
Examiner
RIGGINS, ARI FAITH COLEMA
Art Unit
2197
Tech Center
2100 — Computer Architecture & Software
Assignee
Microsoft Technology Licensing, LLC
OA Round
3 (Non-Final)
0%
Grant Probability
At Risk
3-4
OA Rounds
3y 3m
To Grant
0%
With Interview

Examiner Intelligence

Grants only 0% of cases
0%
Career Allow Rate
0 granted / 1 resolved
-55.0% vs TC avg
Minimal +0% lift
Without
With
+0.0%
Interview Lift
resolved cases with interview
Typical timeline
3y 3m
Avg Prosecution
38 currently pending
Career history
39
Total Applications
across all art units

Statute-Specific Performance

§101
27.8%
-12.2% vs TC avg
§103
41.5%
+1.5% vs TC avg
§102
9.5%
-30.5% vs TC avg
§112
21.2%
-18.8% vs TC avg
Black line = Tech Center average estimate • Based on career data from 1 resolved cases

Office Action

§103 §112
DETAILED ACTION The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . This Office Action is in response to claims filed 12/04/2025. Claims 1-11, and 13-20 are pending. Continued Examination Under 37 CFR 1.114 A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 12/04/2025 has been entered. Claim Rejections - 35 USC § 112 The following is a quotation of 35 U.S.C. 112(b): (b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention. The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph: The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention. Claims 15-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. Claim 15 recites the limitation “enter a UI fixed focus mode that: prevents user interface commands that would set the UI focus of the secondary operating system to the guest application from being forwarded to the secondary operating system, and restores the UI focus of the secondary operating system to the guest application;”. It is unclear whether the focus of the secondary system should be set to the guest application or not. The commands that would set this focus are prevented but this same focus is restored; it is unclear if this restoration comes from some other action or if the commands should be forwarded. In light of paragraph 48 of the instant specification, it appears that the user interface commands that would set the UI focus of the secondary operating system to the guest application should not be prevented from forwarding, but instead user interface commands that would change the focus of the secondary operating system away from the guest application should be prevented from forwarding. For the sake of compact prosecution, Examiner will interpret this limitation to mean “enter a UI fixed focus mode that: prevents user interface commands that would take the UI focus of the secondary operating system away from the guest application from being forwarded to the secondary operating system, and restores the UI focus of the secondary operating system to the guest application;”. Claims 16-20 depend, directly or indirectly, from rejected claims and do not resolve the deficiencies thereof and are therefore rejected for at least the same reasons. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 1-3, 5, 7, 15-16, and 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Neil (US 2006/0005187 A1) in view of Russell (US 2009/0100425 A1). Regarding claim 1, Neil teaches: A method comprising: maintaining a user interface (UI) focus synchronicity between a primary operating system and a secondary operating system that is hosted by the primary operating system, “… said method comprising, upon selection for execution of an application that is native to a guest operating system, executing said application in said guest operating system running on said virtual machine and displaying said output of said application in a promoted guest application window on said host operating system” [Neil Claim 1]. “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. “According to the present invention, VMM 104' utilizes composite window list 144 to manage windows G.1', H.1', G.2', and H.0' across host OS 104" and guest OS A 112. In one example, as shown in FIG. 4B, the Z-order of windows in VMM 104' is window G.1', window H.1', window G.2', and window H.0'. Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. “The present invention accomplishes this by using a composite window list managed by the VMM to manage the configuration, the focus, the geometry, the Z-order of the windows across guest and host OSes, and the arrangement of doppelgangers (virtual application windows, in this case) in a way that allows host and guest application windows to appear in a single display window” [Neil ¶ 11]. wherein a proxy application running on the primary operating system forwards user input to and displays the output of a guest application running on the secondary operating system, “… said method comprising, upon selection for execution of an application that is native to a guest operating system, executing said application in said guest operating system running on said virtual machine and displaying said output of said application in a promoted guest application window (proxy application) on said host operating system” [Neil Claim 1]. “FIG. 4B illustrates a block diagram representing the system of FIG. 4A in regard to individual logical displays for both the VM, the host OS, as well as a composite display for visually integrating application windows of the host operating system and guest operating system for several embodiments of the present invention” [Neil ¶ 32]. “For certain of these embodiments, the methodology is employed directly by the virtual machine monitor (VMM) by interacting with the host operating system to open a new, unadorned window (a mere shell) in the host operating system and filling that window with both contents and in-window adornments representative of the adornments found in a corresponding window in the guest operating system. The VMM then manages both the content of the promoted window as well as adornments in same, as well as manages the VM display in the Window H.0', while the host operating system manages its windows (including the promoted windows which, to the host OS, are indistinguishable from other windows, even though these windows will be a mere shell without the typical host OS adornments) in its normal manner” [Neil ¶ 39]. “Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. and wherein the UI focus synchronicity sets a UI focus of the secondary operating system to the guest application when the proxy application has a UI focus of the primary operating system; “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. “Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. determining that the UI focus of the primary operating system has switched from the proxy application to a commanding application; “At step 154, VMM 104' determines whether the user of computer 20 has requested a change to the current focused window. In one example, the user makes this request with mouse 42 by clicking the cursor onto a window (such as window G.2) that is not currently the focused window. If a change in focus has been requested, method 146 proceeds to step 164; … At step 164, VMM 104' adjusts composite window list 144 to reflect changes to the arrangement of windows. At step 166, VMM 104' sends an update to either host window list 136 within host OS 104" or guest window list 128 within guest OS A 112 to reflect relevant changes in, for example, open application windows, window focus, Z-order of the windows, or arrangement of doppelgangers” [Neil ¶ 40]. maintaining the UI focus synchronicity by taking the UI focus of the secondary operating system away from the guest application “At step 154, VMM 104' determines whether the user of computer 20 has requested a change to the current focused window. In one example, the user makes this request with mouse 42 by clicking the cursor onto a window (such as window G.2) that is not currently the focused window. If a change in focus has been requested, method 146 proceeds to step 164; … At step 164, VMM 104' adjusts composite window list 144 to reflect changes to the arrangement of windows. At step 166, VMM 104' sends an update to either host window list 136 within host OS 104" or guest window list 128 within guest OS A 112 to reflect relevant changes in, for example, open application windows, window focus, Z-order of the windows, or arrangement of doppelgangers” [Neil ¶ 40]. in response to determining that the UI focus of the primary operating system has switched from the proxy application to the commanding application; “According to the present invention, VMM 104' utilizes composite window list 144 to manage windows G.1', H.1', G.2', and H.0' across host OS 104" and guest OS A 112. In one example, as shown in FIG. 4B, the Z-order of windows in VMM 104' is window G.1', window H.1', window G.2', and window H.0'. Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. Neil fails to explicitly a commanding application; determining that the commanding application satisfies a UI fixed focus mode criteria; entering a UI fixed focus mode that suspends the UI focus synchronicity by restoring the UI focus of the secondary operating system to the guest application while allowing the commanding application to retain the UI focus of the primary operating system; and providing a command from the commanding application to the guest application while in the UI fixed focus mode. However, Russell teaches: a commanding application; “Execution environments (e.g., execution environment 1 112, execution environment x 114) may correspond to software-based environments that enable user interaction with the applications. For example, a user may interact with a spell checking plugin through a word processing application. Similarly, applications may be initialized and executed from a desktop environment. Execution environments may also refer to various software components on host 102. For example, execution environments may include application software (commanding applications) (e.g., word processors, spreadsheets, media players, web browsers, etc.), through which plugins, applets, and widgets may run” [Russell ¶ 29]. determining that the commanding application satisfies a UI fixed focus mode criteria; “However, if the visual representation of the applet is released on top of a visual representation of web browser 132 or an incompatible execution environment (e.g., an incompatible application), the applet may remain associated with message passing service implementation 144 while the visual representation of the applet returns to its original position within web browser 132” [Russell ¶ 46 Examiner notes the execution environment is compatibility is considered a UI fixed focus mode criteria]. entering a UI fixed focus mode “In other words, a change in an applet's execution environment may involve a change in the service implementation (e.g., message passing service implementation 144, standalone service implementation 146, message passing service implementation 148) provided to the applet by the corresponding container and/or JVM” [Russell ¶ 48 Examiner notes entering a message passing service implementation is considered entering a UI fixed focus mode]. that suspends the UI focus synchronicity by restoring the UI focus of the secondary operating system to the guest application while allowing the commanding application to retain the UI focus of the primary operating system; “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132 (commanding application). For example, applet 156 may be started by navigating web browser 132 to a webpage in which applet 156 is embedded. Upon loading the page, applet 156 is executed within a container 150 provided by NM 138, and a visual representation 168 of the applet is displayed in web browser 132” [Russell ¶ 36, Fig. 1B]. “The message-based nature of message passing service implementation 144 may further decouple the applets from web browser 132 by allowing the applets and web browser 132 to communicate using mechanisms other than function calls. As a result, message passing service implementation 144 may enable the applets to run independently of web browser 132” [Russell ¶ 41]. and providing a command from the commanding application to the guest application while in the UI fixed focus mode. “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132” [Russell ¶ 36]. “In addition, plugin 162 and/or JVM 138 may display visual representation 168 within web browser 132 through communications with the operating system installed on host 102. For example, visual representation 168 may be displayed within the visual representation of web browser 132 using techniques such as inheritance of window handles and/or protocols such as XEmbed” [Russell ¶ 37]. “In one or more embodiments of the invention, the execution environment change notification corresponds to a drag-and-drop action or cut-and-paste action which moves a visual representation (e.g., visual representations 168-172) of the applet from a visual representation of web browser 132 to a visual representation of the second execution environment. The drag-and-drop action may be performed using a computer mouse, trackball, touchpad, touchscreen, button, and/or other input device on host 102” [Russell ¶ 44]. Russell is considered to be analogous to the claimed invention because it is in the same field of arrangements for executing specific programs. Therefore, it would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil to incorporate the teachings of Russell and include a commanding application; determining that the commanding application satisfies a UI fixed focus mode criteria; entering a UI fixed focus mode that suspends the UI focus synchronicity by restoring the UI focus of the secondary operating system to the guest application while allowing the commanding application to retain the UI focus of the primary operating system; and providing a command from the commanding application to the guest application while in the UI fixed focus mode. Doing so would allow for the execution of an application running within a virtual machine or container to operate within different environments including within other applications of the host system. “Specifically, embodiments of the invention provide a method and apparatus for changing execution environments during application execution. In one or more embodiments of the invention, an application may be started in a first execution environment, such as a web browser. The application may then be transitioned to a second execution environment, such as a cooperating application or a desktop environment (e.g., local desktop environment, virtual desktop environment, remote desktop environment, etc.), without interrupting the execution of the application” [Russell ¶ 24]. Regarding claim 2, Neil in view of Russell teaches the method of claim 1, as referenced above. Neil further teaches: wherein the proxy application virtualizes the guest application by rendering a graphical user interface generated by the guest application in a desktop of the primary operating system, “Typically, within the host computer system which is emulating one or more virtual machines (VMs), there is no direct mechanism in the host environment, such as an icon on the desktop, to launch or in some way interact with applications that are running on any given VM. Rather, a VM is presented to the user on the host computer system in a separate window that displays the desktop of the guest OS in its native environment, whether it is a legacy or modem OS” [Neil ¶ 9]. “Embodiments of the present invention are directed to a system for and method of integrating application windows of a host and guest operating system in a virtual machine environment in order to reduce difficulties that users of computers experience when navigating between applications in a virtual machine environment. The present invention accomplishes this by using a composite window list managed by the VMM to manage the configuration, the focus, the geometry, the Z-order of the windows across guest and host OSes, and the arrangement of doppelgangers (virtual application windows, in this case) in a way that allows host and guest application windows to appear in a single display window” [Neil ¶ 9]. “For certain of these embodiments, the methodology is employed directly by the virtual machine monitor (VMM) by interacting with the host operating system to open a new, unadorned window (a mere shell) in the host operating system and filling that window with both contents and in-window adornments representative of the adornments found in a corresponding window in the guest operating system. The VMM then manages both the content of the promoted window as well as adornments in same, as well as manages the VM display in the Window H.0', while the host operating system manages its windows (including the promoted windows which, to the host OS, are indistinguishable from other windows, even though these windows will be a mere shell without the typical host OS adornments) in its normal manner” [Neil ¶ 39]. and by forwarding user interface commands received by the proxy application to the guest application. “What is needed is a mechanism for invoking one or more host or guest OS applications and displaying them alongside each other in a single display, rather than in a separate VM window, and thereby provide the user with an improved, more seamless method of interacting with one or more VMs resident on a host computer system.” [Neil ¶ 9, Fig. 4B]. “Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. Regarding claim 3, Neil in view of Russell teaches the method of claim 1, as referenced above. Neil further teaches further comprising: switching the UI focus of the secondary operating system away from the guest application when the UI focus of the primary operating system is switched away from the proxy application. “According to the present invention, VMM 104' utilizes composite window list 144 to manage windows G.1', H.1', G.2', and H.0' across host OS 104" and guest OS A 112. In one example, as shown in FIG. 4B, the Z-order of windows in VMM 104' is window G.1', window H.1', window G.2', and window H.0'. Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. Regarding claim 5, Neil in view of Russell teaches the method of claim 1, as referenced above. Neil further teaches forwarding the command to the secondary operating system, wherein the secondary operating system forwards the command to the guest application “Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. Neil fails to teach wherein providing the command from the commanding application to the guest application comprises forwarding the command. However, Russell teaches wherein providing the command from the commanding application to the guest application comprises forwarding the command “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132” [Russell ¶ 36]. Regarding claim 7, Neil in view of Russell teaches the method of claim 1 as referenced above. Neil further teaches wherein an individual application having the UI focus of the primary operating system receives user input events received by the primary operating system. “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. Regarding claim 15, Neil teaches: A computer-readable storage medium comprising instructions that, when executed by a processor, cause the processor to: “Thus, the methods and apparatus of the present invention, or certain aspects or portions thereof, may take the form of program code (i.e., instructions) embodied in tangible media, such as floppy diskettes, CD-ROMs, hard drives, or any other machine-readable storage medium, wherein, when the program code is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention” [Neil ¶ 41]. set a user interface (UI) focus of a secondary operating system to a guest application in response to a UI focus of a primary operating system being set to a corresponding proxy application, “… said method comprising, upon selection for execution of an application that is native to a guest operating system, executing said application in said guest operating system running on said virtual machine and displaying said output of said application in a promoted guest application window (proxy application) on said host operating system” [Neil Claim 1]. “Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. wherein the secondary operating system forwards commands to a currently UI focused application running on the secondary operating system; “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. forward user interface commands received by the proxy application to the guest application; “Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. determine that the UI focus of the primary operating system has switched from the proxy application to a commanding application; “At step 154, VMM 104' determines whether the user of computer 20 has requested a change to the current focused window. In one example, the user makes this request with mouse 42 by clicking the cursor onto a window (such as window G.2) that is not currently the focused window. If a change in focus has been requested, method 146 proceeds to step 164; … At step 164, VMM 104' adjusts composite window list 144 to reflect changes to the arrangement of windows. At step 166, VMM 104' sends an update to either host window list 136 within host OS 104" or guest window list 128 within guest OS A 112 to reflect relevant changes in, for example, open application windows, window focus, Z-order of the windows, or arrangement of doppelgangers” [Neil ¶ 40]. switch the UI focus of the secondary operating system away from the guest application; “At step 154, VMM 104' determines whether the user of computer 20 has requested a change to the current focused window. In one example, the user makes this request with mouse 42 by clicking the cursor onto a window (such as window G.2) that is not currently the focused window. If a change in focus has been requested, method 146 proceeds to step 164; … At step 164, VMM 104' adjusts composite window list 144 to reflect changes to the arrangement of windows. At step 166, VMM 104' sends an update to either host window list 136 within host OS 104" or guest window list 128 within guest OS A 112 to reflect relevant changes in, for example, open application windows, window focus, Z-order of the windows, or arrangement of doppelgangers” [Neil ¶ 40]. and provide a command from the commanding application of the primary operating system to the guest application of the secondary operating system by providing the command to the secondary operating system, “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. and wherein the secondary operating system forwards the command to the guest application as the currently UI focused application. “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. Neil fails to explicitly a commanding application; enter a UI fixed focus mode that: prevents user interface commands that would set the UI focus of the secondary operating system to the guest application from being forwarded to the secondary operating system, and restores the UI focus of the secondary operating system to the guest application; and provide a command from the commanding application of the primary operating system to the guest application, wherein the commanding application has the UI focus of the primary operating system when the command is provided. However, Russell teaches: a commanding application; “Execution environments (e.g., execution environment 1 112, execution environment x 114) may correspond to software-based environments that enable user interaction with the applications. For example, a user may interact with a spell checking plugin through a word processing application. Similarly, applications may be initialized and executed from a desktop environment. Execution environments may also refer to various software components on host 102. For example, execution environments may include application software (commanding applications) (e.g., word processors, spreadsheets, media players, web browsers, etc.), through which plugins, applets, and widgets may run” [Russell ¶ 29]. enter a UI fixed focus mode that: “In other words, a change in an applet's execution environment may involve a change in the service implementation (e.g., message passing service implementation 144, standalone service implementation 146, message passing service implementation 148) provided to the applet by the corresponding container and/or JVM” [Russell ¶ 48 Examiner notes entering a message passing service implementation is considered entering a UI fixed focus mode]. prevents user interface commands that would set the UI focus of the secondary operating system to the guest application from being forwarded to the secondary operating system, and restores the UI focus of the secondary operating system to the guest application; “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132 (commanding application). For example, applet 156 may be started by navigating web browser 132 to a webpage in which applet 156 is embedded. Upon loading the page, applet 156 is executed within a container 150 provided by NM 138, and a visual representation 168 of the applet is displayed in web browser 132” [Russell ¶ 36]. “The message-based nature of message passing service implementation 144 may further decouple the applets from web browser 132 by allowing the applets and web browser 132 to communicate using mechanisms other than function calls. As a result, message passing service implementation 144 may enable the applets to run independently of web browser 132” [Russell ¶ 41]. and provide a command from the commanding application of the primary operating system to the guest application “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132” [Russell ¶ 36]. “In addition, plugin 162 and/or JVM 138 may display visual representation 168 within web browser 132 through communications with the operating system installed on host 102. For example, visual representation 168 may be displayed within the visual representation of web browser 132 using techniques such as inheritance of window handles and/or protocols such as XEmbed” [Russell ¶ 37]. “In one or more embodiments of the invention, the execution environment change notification corresponds to a drag-and-drop action or cut-and-paste action which moves a visual representation (e.g., visual representations 168-172) of the applet from a visual representation of web browser 132 to a visual representation of the second execution environment. The drag-and-drop action may be performed using a computer mouse, trackball, touchpad, touchscreen, button, and/or other input device on host 102” [Russell ¶ 44]. wherein the commanding application has the UI focus of the primary operating system when the command is provided, “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132” [Russell ¶ 36]. Russell is considered to be analogous to the claimed invention because it is in the same field of arrangements for executing specific programs. Therefore, it would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil to incorporate the teachings of Russell and include a commanding application; enter a UI fixed focus mode that: prevents user interface commands that would set the UI focus of the secondary operating system to the guest application from being forwarded to the secondary operating system, and restores the UI focus of the secondary operating system to the guest application; and provide a command from the commanding application of the primary operating system to the guest application, wherein the commanding application has the UI focus of the primary operating system when the command is provided. Doing so would allow for the execution of an application running within a virtual machine or container to operate within different environments including within other applications of the host system. “Specifically, embodiments of the invention provide a method and apparatus for changing execution environments during application execution. In one or more embodiments of the invention, an application may be started in a first execution environment, such as a web browser. The application may then be transitioned to a second execution environment, such as a cooperating application or a desktop environment (e.g., local desktop environment, virtual desktop environment, remote desktop environment, etc.), without interrupting the execution of the application” [Russell ¶ 24]. Regarding claim 16, Neil in view of Russell teaches the computer-readable storage medium of claim 15, as referenced above. Neil further teaches wherein the primary operating system comprises a host operating system running on a hypervisor and the secondary operating system comprises a guest operating system running on a hypervisor. “This emulator program may be a host operating system (HOS), which is an operating system running directly on the physical computer hardware. Alternately, the emulated environment might also be a virtual machine monitor (VMM) which is a software layer that runs directly above the hardware and which virtualizes all the resources of the machine by exposing interfaces that are the same as the hardware the VMM is virtualizing (which enables the VMM to go unnoticed by operating system layers running above it). A host operating system and a VMM may run side-by-side on the same physical hardware” [Neil ¶ 8]. Regarding claim 19, Neil in view of Russell teaches the computer-readable storage medium of claim 15, as referenced above. Neil further teaches wherein the UI fixed focus mode is exited in response to the UI focus of the primary operating system switching away from the commanding application. “At step 154, VMM 104' determines whether the user of computer 20 has requested a change to the current focused window. In one example, the user makes this request with mouse 42 by clicking the cursor onto a window (such as window G.2) that is not currently the focused window. If a change in focus has been requested, method 146 proceeds to step 164; … At step 164, VMM 104' adjusts composite window list 144 to reflect changes to the arrangement of windows. At step 166, VMM 104' sends an update to either host window list 136 within host OS 104" or guest window list 128 within guest OS A 112 to reflect relevant changes in, for example, open application windows, window focus, Z-order of the windows, or arrangement of doppelgangers” [Neil ¶ 40]. Neil fails to teach the UI fixed focus mode and the commanding application. However, Russell teaches: the UI fixed focus mode “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132. For example, applet 156 may be started by navigating web browser 132 to a webpage in which applet 156 is embedded. Upon loading the page, applet 156 is executed within a container 150 provided by NM 138, and a visual representation 168 of the applet is displayed in web browser 132” [Russell ¶ 36]. the commanding application. “Execution environments (e.g., execution environment 1 112, execution environment x 114) may correspond to software-based environments that enable user interaction with the applications. For example, a user may interact with a spell checking plugin through a word processing application. Similarly, applications may be initialized and executed from a desktop environment. Execution environments may also refer to various software components on host 102. For example, execution environments may include application software (commanding applications) (e.g., word processors, spreadsheets, media players, web browsers, etc.), through which plugins, applets, and widgets may run” [Russell ¶ 29]. Regarding claim 20, Neil in view of Russell teaches the computer-readable storage medium of claim 19, as referenced above. Neil fails to teach wherein a UI focus synchronicity resumes upon exiting the UI fixed focus mode. However, Russell teaches wherein a UI focus synchronicity resumes upon exiting the UI fixed focus mode. “Next, an execution environment change notification is received from the user of the web browser (operation 204). As mentioned previously, the execution environment change notification may involve a drag-and-drop action, cut-and-paste action, keyboard shortcut, and/or other input method. Upon receiving the execution environment change notification, the message passing service implementation is replaced with a standalone service implementation (operation 206) that allows the application to run independently of the web browser” [Russell ¶ 61]. Claim 4 is rejected under 35 U.S.C. 103 as being unpatentable over Neil (US 2006/0005187 A1) in view of Russell (US 2009/0100425 A1) in view of Ozerov (US 10,848,568 B1). Regarding claim 4, Neil in view of Russell teaches the method of claim 3 as referenced above. Neil in view of Russell fails to explicitly teach wherein the UI focus of the secondary operating system is switched to a placeholder application. However, Ozerov teaches wherein the UI focus of the secondary operating system is switched to a placeholder application. “For example, if the remote applications are not being used by the user of client device 132, the applications will become inactive, and the activity on the server 101 drops to a base level. In some aspects, the base level of activity includes the server 101 only running those modules or processes which maintain the session between client device 132 and the server 101” [Ozerov Col. 6-7, lines 66-67, 1-6]. Ozerov is considered to be analogous to the claimed invention because it is in the same field of system and virtualization management. Therefore, it would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have Neil in view of Russell to incorporate the teachings of Ozerov and include that the UI focus of the secondary operating system is switched to a placeholder application. Doing so would allow for preserved power usage of the secondary desktop. “Aspects of the present disclosure relate to systems and methods for managing power of remote and virtual desktops. Exemplary aspects of the present disclosure manage computer power consumption.” [Ozerov Col. 2 Lines 11-14]. Claim 6 is rejected under 35 U.S.C. 103 as being unpatentable over Neil (US 2006/0005187 A1) in view of Russell (US 2009/0100425 A1) in view of Fu (US 2020/0275048 A1). Regarding claim 6, Neil in view of Russell teaches the method of claim 1 as referenced above. Neil in view of Russell fails to explicitly teach wherein the commanding application comprises a debugger, an automation driver, or a screen capture application. However, Fu teaches wherein the commanding application comprises a debugger, an automation driver, or a screen capture application. “In Step 4401, when a TV display is currently playing a content, upon receiving an instruction for capturing a screen shot input from a user, the display displays a GUI including a currently-played content display layer, a screen shot content display layer and a function selection region as a response…The function selection region includes an object selection tab for providing an access to an object in the thumbnail image, at least one content recommendation tab for accessing the above recommended content, and/or a user input tab for control instructions in association with the screen shot capturing function” [Fu ¶ 420, 421]. Fu is considered to be analogous to the claimed invention because it is in the same field of managing host operating system and non-native application interactions. Therefore, it would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil in view of Russell to incorporate the teachings of Fu and include that the commanding application comprises…a screen capture application. Doing so would allow for the system to save screenshots of the desktops content. “The smart TV 100 can create and save screen shots of media, images and data which are displayed on the associated screen of the smart TV 100.” [Fu ¶ 168]. Claim 8 is rejected under 35 U.S.C. 103 as being unpatentable over Neil (US 2006/0005187 A1) in view of Russell (US 2009/0100425 A1) in view of Maruyama (US 2020/0394326 A1). Regarding claim 8, Neil in view of Russell teaches the method of claim 1 as referenced above. Neil fails to teach wherein determining that the commanding application satisfies the UI fixed focus mode criteria comprises determining whether an application type of the commanding application is included in a list of commanding application types. However, Russell teaches: wherein determining that the commanding application satisfies the UI fixed focus mode criteria “However, if the visual representation of the applet is released on top of a visual representation of web browser 132 or an incompatible execution environment (e.g., an incompatible application), the applet may remain associated with message passing service implementation 144 while the visual representation of the applet returns to its original position within web browser 132” [Russell ¶ 46]. a list of commanding application types. “For example, execution environments may include application software (e.g., word processors, spreadsheets, media players, web browsers, etc.), through which plugins, applets, and widgets may run” [Russell ¶ 29]. Neil in view of Russell fails to teach comprises determining whether an application type of the commanding application is included in a list of commanding application types. However, Maruyama teaches comprises determining whether an application type of the commanding application is included in a list of commanding application types. “The dummy information generation process 400 may determine whether the application type is supported by checking the application type against a pre-supplied list of supported application types” [Maruyama ¶ 66]. Maruyama is considered to be analogous to the claimed invention because it is in the same field of data processing relating to graphical user interfaces. Therefore, it would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil in view of Russell to incorporate the teachings of Grechishkin and include comprises determining whether an application type of the commanding application is included in a list of commanding application types. Doing so would allow for the identification and use of commanding applications only of supported types. “At 404, the dummy information generation process 400 determines whether the application type is supported” [Maruyama ¶ 66]. Claim 9 is rejected under 35 U.S.C. 103 as being unpatentable over Neil (US 2006/0005187 A1) in view of Russell (US 2009/0100425 A1) in view of Ohara (US 2021/0216342 A1). Regarding claim 9, Neil in view of Russell teaches the method of claim 1 as referenced above. Neil in view of Russell fails to teach wherein determining that the commanding application satisfies the UI fixed focus mode criteria comprises determining whether the commanding application invokes one of a predefined list of application program interfaces associated with commanding applications. However, Ohara teaches wherein determining that the commanding application satisfies the UI fixed focus mode criteria comprises determining whether the commanding application invokes one of a predefined list of application program interfaces associated with commanding applications. “In such manner, the combination verification part 203 makes reference to the check sheet input by the service manager to comprehend API information corresponding to the virtual machine described on the check sheet. The combination verification part 203 obtains a supply API list from the IP storage 30. In a case where the API information listed on the check sheet is included in the obtained supply API list, the combination verification part 203 determines that the combination of the virtual machine and the API (IP) is correct (pertinent). In a case where the API information listed on the check sheet is not included in the obtained supply API list, the combination verification part 203 determines that the combination of the virtual machine and API (IP) is incorrect (impertinent)” [Ohara ¶ 57, 58]. Ohara is considered to be analogous to the claimed invention because it is in the same field of arrangements for program control. It would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil in view of Russell to incorporate the teachings of Ohara and include that determining that the commanding application satisfies the UI fixed focus mode criteria comprises determining whether the commanding application invokes one of a predefined list of application program interfaces associated with commanding applications. This is accomplished by combining Ohara’s teaching of an evaluation of a API compatibility list with the fixed focus mode of Neil in view of Russell. Doing so would allow for the system to verify a suitable API pairing for a virtual machine. “By virtue of the verification, occurring of a situation may be prevented where even though a virtual machine has been created in the execution server 100, API to be used by the virtual machine has not been registered on the IP storage 102, resulting in that the virtual machine and IP are used in an unsuitable combination” [Ohara ¶ 32]. Claims 10 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over Neil (US 2006/0005187 A1) in view of Russell (US 2009/0100425 A1) in view of Hang (US 2023/0168872 A1). Regarding claim 10, Neil teaches: A computing device comprising: one or more processors; a memory in communication with the one or more processors, the memory having computer-readable instructions stored thereupon which, when executed by the one or more processors, cause the computing device to: “As shown in FIG. 1, an exemplary general purpose computing system includes a conventional personal computer 20 or the like, including a processing unit 21, a system memory 22, and a system bus 23 that couples various system components including the system memory to the processing unit 21” [Neil ¶ 22]. set a user interface (UI) focus of a secondary operating system to a guest application in response to a UI focus of a primary operating system being set to a corresponding proxy application, “… said method comprising, upon selection for execution of an application that is native to a guest operating system, executing said application in said guest operating system running on said virtual machine and displaying said output of said application in a promoted guest application window (proxy application) on said host operating system” [Neil Claim 1]. “Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. wherein the secondary operating system forwards commands to a currently UI focused application running on the secondary operating system; “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. determine that the UI focus of the primary operating system has switched from the proxy application to a commanding application; “At step 154, VMM 104' determines whether the user of computer 20 has requested a change to the current focused window. In one example, the user makes this request with mouse 42 by clicking the cursor onto a window (such as window G.2) that is not currently the focused window. If a change in focus has been requested, method 146 proceeds to step 164; … At step 164, VMM 104' adjusts composite window list 144 to reflect changes to the arrangement of windows. At step 166, VMM 104' sends an update to either host window list 136 within host OS 104" or guest window list 128 within guest OS A 112 to reflect relevant changes in, for example, open application windows, window focus, Z-order of the windows, or arrangement of doppelgangers” [Neil ¶ 40]. synchronize the UI focus of the primary operating system and a UI focus of the secondary operating system by switching the UI focus of the secondary operating system away from the guest application “At step 154, VMM 104' determines whether the user of computer 20 has requested a change to the current focused window. In one example, the user makes this request with mouse 42 by clicking the cursor onto a window (such as window G.2) that is not currently the focused window. If a change in focus has been requested, method 146 proceeds to step 164; … At step 164, VMM 104' adjusts composite window list 144 to reflect changes to the arrangement of windows. At step 166, VMM 104' sends an update to either host window list 136 within host OS 104" or guest window list 128 within guest OS A 112 to reflect relevant changes in, for example, open application windows, window focus, Z-order of the windows, or arrangement of doppelgangers” [Neil ¶ 40]. in response to determining that the UI focus of the primary operating system has switched from the proxy application to the commanding application; “According to the present invention, VMM 104' utilizes composite window list 144 to manage windows G.1', H.1', G.2', and H.0' across host OS 104" and guest OS A 112. In one example, as shown in FIG. 4B, the Z-order of windows in VMM 104' is window G.1', window H.1', window G.2', and window H.0'. Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. by providing the command to the secondary operating system, “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. and wherein the secondary operating system forwards the command to the guest application as the currently UI focused application. “The focused application is the software application that has the "focus" of the "cursor" (for end-user input devices). In one example, window G.1 is application A1116 running MS Word and the focus of the cursor is on window G.1. In this example, any keystrokes made by an end-user are recorded in MS Word, and these key strokes are not recorded nor have any impact upon other windows, such as window G.2” [Neil ¶ 34]. Neil fails to explicitly a commanding application; determine that the commanding application invokes an application program interface indicative of commanding applications; enter a UI fixed focus mode that restores the UI focus of the secondary operating system to the guest application and that allows the guest application to retain the UI focus of the secondary operating system while the commanding application retains the UI focus of the primary operating system; and provide a command from the commanding application to the guest application while in the UI fixed focus mode wherein the commanding application has the UI focus of the primary operating system when the command is provided. However, Russell teaches: a commanding application; “Execution environments (e.g., execution environment 1 112, execution environment x 114) may correspond to software-based environments that enable user interaction with the applications. For example, a user may interact with a spell checking plugin through a word processing application. Similarly, applications may be initialized and executed from a desktop environment. Execution environments may also refer to various software components on host 102. For example, execution environments may include application software (commanding applications) (e.g., word processors, spreadsheets, media players, web browsers, etc.), through which plugins, applets, and widgets may run” [Russell ¶ 29]. determine that the commanding application (is) invokes an application program interface indicative of commanding applications; “However, if the visual representation of the applet is released on top of a visual representation of web browser 132 or an incompatible execution environment (e.g., an incompatible application), the applet may remain associated with message passing service implementation 144 while the visual representation of the applet returns to its original position within web browser 132” [Russell ¶ 46]. enter a UI fixed focus mode “In other words, a change in an applet's execution environment may involve a change in the service implementation (e.g., message passing service implementation 144, standalone service implementation 146, message passing service implementation 148) provided to the applet by the corresponding container and/or JVM” [Russell ¶ 48 Examiner notes entering a message passing service implementation is considered entering a UI fixed focus mode]. that restores the UI focus of the secondary operating system to the guest application and that allows the guest application to retain the UI focus of the secondary operating system while the commanding application retains the UI focus of the primary operating system; “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132 (commanding application). For example, applet 156 may be started by navigating web browser 132 to a webpage in which applet 156 is embedded. Upon loading the page, applet 156 is executed within a container 150 provided by NM 138, and a visual representation 168 of the applet is displayed in web browser 132” [Russell ¶ 36, Fig. 1B]. “The message-based nature of message passing service implementation 144 may further decouple the applets from web browser 132 by allowing the applets and web browser 132 to communicate using mechanisms other than function calls. As a result, message passing service implementation 144 may enable the applets to run independently of web browser 132” [Russell ¶ 41]. and provide a command from the commanding application to the guest application while in the UI fixed focus mode “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132” [Russell ¶ 36]. “In addition, plugin 162 and/or JVM 138 may display visual representation 168 within web browser 132 through communications with the operating system installed on host 102. For example, visual representation 168 may be displayed within the visual representation of web browser 132 using techniques such as inheritance of window handles and/or protocols such as XEmbed” [Russell ¶ 37]. “In one or more embodiments of the invention, the execution environment change notification corresponds to a drag-and-drop action or cut-and-paste action which moves a visual representation (e.g., visual representations 168-172) of the applet from a visual representation of web browser 132 to a visual representation of the second execution environment. The drag-and-drop action may be performed using a computer mouse, trackball, touchpad, touchscreen, button, and/or other input device on host 102” [Russell ¶ 44]. wherein the commanding application has the UI focus of the primary operating system when the command is provided, “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132” [Russell ¶ 36]. Russell is considered to be analogous to the claimed invention because it is in the same field of arrangements for executing specific programs. Therefore, it would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil to incorporate the teachings of Russell and include a commanding application; determine that the commanding application invokes an application program interface indicative of commanding applications; enter a UI fixed focus mode that restores the UI focus of the secondary operating system to the guest application and that allows the guest application to retain the UI focus of the secondary operating system while the commanding application retains the UI focus of the primary operating system; and provide a command from the commanding application to the guest application while in the UI fixed focus mode wherein the commanding application has the UI focus of the primary operating system when the command is provided. Doing so would allow for the execution of an application running within a virtual machine or container to operate within different environments including within other applications of the host system. “Specifically, embodiments of the invention provide a method and apparatus for changing execution environments during application execution. In one or more embodiments of the invention, an application may be started in a first execution environment, such as a web browser. The application may then be transitioned to a second execution environment, such as a cooperating application or a desktop environment (e.g., local desktop environment, virtual desktop environment, remote desktop environment, etc.), without interrupting the execution of the application” [Russell ¶ 24]. Neil in view of Russell fails to explicitly teach determine that the commanding application invokes an application program interface indicative of commanding applications However, Hang teaches determine that the commanding application invokes an application program interface indicative of commanding applications; “The services executing on the cloud platform typically provide administration APIs (application programming interfaces). An administration API performs an administration operation” [Hang ¶ 53]. “The auxiliary service 1275 may also perform an "allow-list" check to determine whether one or more administration API' s that the auxiliary service 1275 is responsible for are included in the list of allowed API's in the authorization token” [Hang ¶ 198]. Hang is considered to be analogous to the claimed invention because it is in the same field of execution arrangements for user interfaces. Therefore, it would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil in view of Russell to incorporate the teachings of Russell and include determine that the commanding application invokes an application program interface indicative of commanding applications. Doing so would allow for the identification and use of authorized APIs. “In one embodiment, the allowed list of administration API's is recorded in the authorization token using a data structure that allows encoding of multiple API's” [Hang ¶ 193]. Regarding claim 13, the combination of Neil in view of Russell in view of Hang teaches the computing device of claim 10 as referenced above. Neil fails to teach wherein the UI fixed focus mode restores the UI focus of the secondary operating system to the guest application in response to the guest application being targeted by the application program interface that is indicative of commanding applications. However, Russell teaches wherein the UI fixed focus mode restores the UI focus of the secondary operating system to the guest application in response to the guest application being targeted by the application program interface that is indicative of commanding applications. “In some embodiments, the application is transitioned to the second execution environment by replacing the message passing service implementation with a new message passing service implementation, wherein the new message passing service implementation facilitates communication between the application and the cooperating application” [Russell ¶ 12]. “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132. For example, applet 156 may be started by navigating web browser 132 to a webpage in which applet 156 is embedded. Upon loading the page, applet 156 is executed within a container 150 provided by NM 138, and a visual representation 168 of the applet is displayed in web browser 132” [Russell ¶ 36]. Neil in view of Russell fails to explicitly teach the application program interface that is indicative of commanding applications. However, Hang teaches the application program interface that is indicative of commanding applications. “The services executing on the cloud platform typically provide administration APIs (application programming interfaces). An administration API performs an administration operation” [Hang ¶ 53]. “The auxiliary service 1275 may also perform an "allow-list" check to determine whether one or more administration API' s that the auxiliary service 1275 is responsible for are included in the list of allowed API's in the authorization token” [Hang ¶ 198]. Claim 11 is rejected under 35 U.S.C. 103 as being unpatentable over Neil (US 2006/0005187 A1) in view of Russell (US 2009/0100425 A1) in view of Hang (US 2023/0168872 A1) in view of Ozerov (US 10,848,568 B1). Regarding claim 11, the combination of Neil in view of Russell in view of Hang teaches the computing device of claim 10 as referenced above. Neil in view of Russell in view of Hang fails to explicitly teach wherein the UI focus of the primary operating system and the UI focus of the secondary operating system is synchronized by switching the UI focus of the secondary operating system to a placeholder application. However, Ozerov teaches wherein the UI focus of the primary operating system and the UI focus of the secondary operating system is synchronized by switching the UI focus of the secondary operating system to a placeholder application. “For example, if the remote applications are not being used by the user of client device 132, the applications will become inactive, and the activity on the server 101 drops to a base level. In some aspects, the base level of activity includes the server 101 only running those modules or processes which maintain the session between client device 132 and the server 101” [Ozerov Col. 6-7, lines 66-67, 1-6]. It would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil in view of Russell in view of Hang to incorporate the teachings of Ozerov and include that the UI focus of the primary operating system and the UI focus of the secondary operating system is synchronized by switching the UI focus of the secondary operating system to a placeholder application. Doing so would allow for preserved power usage of the secondary desktop. “Aspects of the present disclosure relate to systems and methods for managing power of remote and virtual desktops. Exemplary aspects of the present disclosure manage computer power consumption.” [Ozerov Col. 2 Lines 11-14]. Claim 14 is rejected under 35 U.S.C. 103 as being unpatentable over Neil (US 2006/0005187 A1) in view of Russell (US 2009/0100425 A1) in view of Hang (US 2023/0168872 A1) in view of Mandanapu (WO 2012/090072 A1). Regarding claim 14, Neil in view of Russell in view of Hang teaches the computing device of claim 10, as referenced above. Neil fails to teach wherein entering the UI fixed focus mode suspends the synchronization of the UI focus of the primary operating system and the UI focus of the secondary operating system. However, Russell teaches wherein entering the UI fixed focus mode suspends the synchronization of the UI focus of the primary operating system and the UI focus of the secondary operating system “As a result, visual representations 168-172 of applets within host 102 may initially be embedded and displayed within web browser 132. The user may further interact with the applets by providing input through web browser 132. For example, applet 156 may be started by navigating web browser 132 to a webpage in which applet 156 is embedded. Upon loading the page, applet 156 is executed within a container 150 provided by NM 138, and a visual representation 168 of the applet is displayed in web browser 132” [Russell ¶ 36]. Neil in view of Russell in view of Hang fails to explicitly teach wherein the instructions further cause the processor to: maintain synchronization of the UI focus of the primary operating system and the UI focus of the secondary operating system by setting the UI focus of the secondary operating system to the guest application if and only if the UI focus of the primary operating system is set to the proxy application. However, Mandanapu teaches wherein the instructions further cause the processor to: maintain synchronization of the UI focus of the primary operating system and the UI focus of the secondary operating system by setting the UI focus of the secondary operating system to the guest application if and only if the UI focus of the primary operating system is set to the proxy application, “The virtualization layer 30 acts as a messenger between the OSs 130, 230. Each event/activity that occurs on the host user interface is translated and sent to the guest application. Similarly, any display update that is generated by the guest application is translated and sent to the host user interface. This continues in a cycle until termination of the guest application. The display continues to change, but the constant cycling ensures that there is a synchronization between the host side of the system and the guest side of the system.” [Mandanapu ¶ 35]. Mandanapu is considered to be analogous to the claimed invention because it is in the same field of managing host operating system and non-native application interactions. It would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil in view of Russell to incorporate the teachings of Mandanapu and include that wherein the instructions further cause the processor to: maintain synchronization of the UI focus of the primary operating system and the UI focus of the secondary operating system by setting the UI focus of the secondary operating system to the guest application if and only if the UI focus of the primary operating system is set to the proxy application. This would allow for more seamless user interaction with non-native applications. “Although it is known to permit execution of guest (or "non-native") applications in a virtual machine on a device running a host OS and providing a mechanism for providing guest application input and output from/to the user, what is not known is providing an experience for the user in which the user can interact with guest applications using low-level user interface components (buttons, menus, and the like) that have the same look and feel as the low-level user interface components of the host applications.” [Mandanapu ¶ 8]. Claims 17, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Neil (US 2006/0005187 A1) in view of Russell (US 2009/0100425 A1) in view of Neiger (US 2023/0281016 A1). Regarding claim 17, Neil in view of Russell teaches the computer-readable storage medium of claim 15 as referenced above. Neil in view of Russell fails to explicitly teach wherein the instructions further cause the processor to: restore the UI focus of the secondary operating system to the guest application when the UI focus of the secondary operating system changes unexpectedly. However, Neiger teaches wherein the instructions further cause the processor to: restore the UI focus of the secondary operating system to the guest application when the UI focus of the secondary operating system changes unexpectedly. “An arrival of events such as interrupts, exceptions, and system calls from an operating system (OS) typically results in a transfer of control from an interrupted context (possibly a user application) to an event handler in the OS; such a transfer is called event delivery. Following its handling of a delivered event, the OS generally transfers control back to the interrupted context, typically using an event-return instruction” [Neiger ¶ 1]. Neiger is considered to be analogous to the claimed invention because it is in the same field of arrangements for program control. It would be obvious to someone of ordinary skill in the art before the effective filing date of the claimed invention to have modified Neil in view of Russell to incorporate the teachings of Neiger and include that the instructions further cause the processor to: restore the UI focus of the secondary operating system to the guest application when the UI focus of the secondary operating system changes unexpectedly. Doing so would allow the system to complete unfinished processes after they have been paused or stopped. “For correct behavior, an OS may expect an ISA to be such that a microprocessor modifies its handling of certain events as part of event delivery and return. For example, operating systems expect delivery of a non-maskable interrupt (NMI) to block additional NMls until the original NMI handler returns. In another example, if a user application is being single-stepped by a debugger (generating a debug exception after each instruction), an OS expects this single-stepping to be suspended upon entering the OS (as part of delivery of any event, e.g., a system call) and then restored upon return to the interrupt context.” [Neiger ¶ 53]. Regarding claim 18, Neil in view of Russell in view of Neiger teaches the computer-readable storage medium of claim 17 as referenced above. Neil further teaches: wherein the UI focus of the secondary operating system is restored to the guest application “Continuing with this example, if the user of computer 20 clicks on window G.2' within composite video display 130' by using mouse 42 (shown in FIG. 1) and thereby brings window G.2' into focus, the Z-order of windows in composite window list 144 is altered to reflect this, and these changes are sent from composite window list 144 to guest window list 128” [Neil ¶ 36]. by sending a synthetic command to the secondary operating system that focuses the guest application. “To expand the number of operating systems and application programs that can run on a computer system, a field of technology has developed in which a given computer having one type of CPU, called a host, will include an emulator program that allows the host computer to emulate the instructions of an unrelated type of CPU, called a guest” [Neil ¶ 6]. “Likewise, the use of synthetic instructions for purposes other than processor virtualization are also anticipated by the disclosures made herein, and any such utilization of synthetic instructions in contexts other than processor virtualization should be most broadly read into the disclosures made herein” [Neil ¶ 44]. Response to Arguments Applicant's arguments filed 12/04/2025 have been fully considered but they are not persuasive. Applicant argues in substance: I. Applicant's representative respectfully submits that the proposed combination of Neil and Dobrovolskiy fails to teach or suggest "entering a UI fixed focus mode that suspends the UI focus synchronicity by restoringUI focus of the secondary operating system to the guest application while allowing the commanding application to retain[[s]] the UI focus of the primary operating system" as recited in amended claim 1. Neil, which is directed to a virtual machine manager that maps input focus on a host system to a remote or virtualized environment, is not cited in the rejection of this element. a) Applicant’s arguments with respect to claim(s) 1, 10, and 15 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. II. Applicant's representative respectfully submits that neither Neil nor Dobrovolskiy teaches or suggests (i) an API that is "indicative of commanding applications," (ii) using such an API to target a specific guest application, or (iii) restoring UI focus of the secondary operating system to the guest application in response to the guest application being targeted by the API indicative of commanding applications. Applicant's representative respectfully submits that one beneficial effect of the claimed embodiments is being able to determine which guest application to restore the focus of the secondary operating system to. a) Applicant’s arguments with respect to claim(s) 13 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Conclusion Examiner respectfully requests, in response to this Office action, support be shown for language added to any original claims on amendment and any new claims. That is, indicate support for newly added claim language by specifically pointing to page(s) and line number(s) in the specification and/or drawing figure(s). This will assist Examiner in prosecuting the application. When responding to this Office Action, Applicant is advised to clearly point out the patentable novelty which he or she thinks the claims present, in view of the state of the art disclosed by the references cited or the objections made. He or she must also show how the amendments avoid such references or objections. See 37 CFR 1.111(c). Any inquiry concerning this communication or earlier communications from the examiner should be directed to ARI F RIGGINS whose telephone number is (571)272-2772. The examiner can normally be reached Monday-Friday 7:00AM-4:30PM. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Bradley Teets can be reached on (571) 272 3338. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /A.F.R./Examiner, Art Unit 2197 /BRADLEY A TEETS/Supervisory Patent Examiner, Art Unit 2197
Read full office action

Prosecution Timeline

Jun 28, 2022
Application Filed
Feb 11, 2025
Non-Final Rejection — §103, §112
Mar 21, 2025
Interview Requested
Mar 26, 2025
Examiner Interview Summary
Jun 16, 2025
Response Filed
Sep 02, 2025
Final Rejection — §103, §112
Dec 04, 2025
Request for Continued Examination
Dec 11, 2025
Response after Non-Final Action
Feb 17, 2026
Non-Final Rejection — §103, §112 (current)

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

3-4
Expected OA Rounds
0%
Grant Probability
0%
With Interview (+0.0%)
3y 3m
Median Time to Grant
High
PTA Risk
Based on 1 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month