DETAILED ACTION
1. Claims 1-8 and 10-20 are pending.
Notice of Pre-AIA or AIA Status
2. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
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.
3. Claim(s) 1-4, 6-8, 10-13, 15-19 is/are rejected under 35 U.S.C. 103 as being unpatentable over Applicants Admitted Prior Art (Background Section, Paragraphs 0001-0005, of the present application), hereinafter referred to as AAPA, and further in view of Korobov et al. (US 11477290 B1) and Joseph (US 2022/0269378 A1).
In regard to claim 1, AAPA discloses a method of displaying windows in a remote desktop system, comprising:
obtaining, by a remote desktop client executing on a local computer having a local operating system (OS), information relating a first window associated with a remote desktop session to a first virtual desktop generated by the local OS (Paragraph 0005 lines 1-5: “In a remote desktop session, when the user performs an action that opens a new remote window on the remote desktop, the remote desktop client can generate a new seamless window on the local desktop to display the contents of the remote window. The local OS positions the new seamless window on the active desktop being one of multiple virtual desktops generated by local OS”);
a remote window that corresponds to the first window, wherein the remote window is generated by the remote OS (Paragraph 0003 lines 7-11: “In another type of remote desktop system, windows on the remote desktop appear as if they are running directly on the user’s local desktop (such as system is referred to herein as being “seamless”). Thus, in a seamless system, a window on the local desktop (referred to herein as a “seamless window”) shows the contents of a corresponding window on the remote desktop (referred to herein as a “remote window”));
and displaying, by the remote desktop client in cooperation with the local OS, the first window on the first virtual desktop, upon reestablishment of the remote desktop session (Paragraph 0005 lines 11-12: “Once the remote desktop session is resumed, the local desktop client will display all seamless windows on the active desktop”).
While AAPA teaches the above and further teaches a remote desktop server and remote OS on a remote server (Paragraph 0001 and Paragraph 0003), they fail to show the sending the information from the remote desktop client to a remote desktop server providing the remote desktop session; setting, by the remote desktop server, a tag in a remote window object maintained by a remote OS on a remote computer, the tag being set based on the information; receiving, at the remote desktop client, at least a portion of the remote window object including the tag; and displaying, by the remote desktop client in cooperation with the local OS, the first window on the first virtual desktop selected from the plurality of virtual desktops based on the tag,, including, upon reestablishment of the remote desktop session, restoring the first window to the first virtual desktop based on the tag, as recited in the claims. Korobov teaches a remote desktop system similar to that of AAPA. In addition, Korobov further teaches
obtaining and sending information relating to a first window from a remote desktop client to a remote desktop server (Column 19 lines 55-59, Column 20 lines 7-13, Column 20 lines 52-67, Column 21 lines 1-25, Column 23 lines 55-60, and Column 24 lines 1-5: information (e.g. state of a window) from a client with respect to a first window corresponding to a remote application is provided to a remote server);
setting, by the remote desktop server, a tag in a remote window object representing a remote window that corresponds to the first window based on the information, the tag being set based on the information (Column 20 lines 52-67, Column 23 lines 55-60, and Column 24 lines 1-5: the information is set in a new window object in a session state, the new window object provides data fields (e.g. tags) for window state information including the geometry and position of the window in a graphical user interface);
receiving, at the remote desktop client, at least a portion of the remote window object including the tag (Column 24 lines 50-52 and Column 25 lines 5-8: client reads previous session state by receiving the previous session state from the remote server);
and displaying, by the remote desktop client, the first window based on the tag, including, upon reestablishment of the remote desktop session, restoring the first window based on the tag (Column 18 lines 36-41Column 24 lines 57-61 and Column 25 lines 35-47: the first window is displayed at the client according the new window object and corresponding values of the data fields).
It would have been obvious to one of ordinary skill in the art, having the teachings of AAPA and Korobov before him before the effective filing date of the claimed invention, to modify AAPA to include the above of Korobov, in order to obtain sending the information from the remote desktop client to a remote desktop server providing the remote desktop session; setting, by the remote desktop server, a tag in a remote window object maintained by a remote OS on a remote computer, the tag being set based on the information, the remote window object representing a remote window that corresponds to the first window; receiving, at the remote desktop client, at least a portion of the remote window object including the tag; and displaying, by the remote desktop client in cooperation with the local OS, the first window on the first virtual desktop based on the tag, including, upon reestablishment of the remote desktop session, restoring the first window to the first virtual desktop based on the tag. It would have been advantageous for one to utilize such a combination as providing users with the features of the client device upon the remote system such that the remote system captures a current session state of a user's virtual session allowing it to be stored and then allows for subsequent restoration of the session upon the same remote system, as suggested by Korobov (Column 1 lines 45-51).
While the combination of AAPA and Korobov teaches obtaining, by a remote desktop client executing on a local computer having a local operating system (OS), information relating a first window associated with a remote desktop session to a first virtual desktop generated by the local OS; setting, by the remote desktop server, a tag in a remote window object maintained by a remote OS on a remote computer, the tag being set based on the information; and displaying, by the remote desktop client in cooperation with the local OS, the first window on the first virtual desktop based on the tag, including, upon reestablishment of the remote desktop session, restoring the first window to the first virtual desktop based on the tag, and AAPA further teaches multiple virtual desktops generated by the local OS (Paragraph 0004), they fail to show the information identifying a first virtual desktop of a plurality of virtual desktops generated by the local OS and relating a first window associated with a remote desktop session to the first virtual desktop; and displaying, by the remote desktop client in cooperation with the local OS, the first window on the first virtual desktop selected from the plurality of virtual desktops based on the tag, including, upon reestablishment of the remote desktop session, restoring the first window to the first virtual desktop based on the tag, as recited in the claims. Joseph teaches features of a client device suspending and resuming user sessions similar to that as described (Korobov Column 18 lines 18-25) by Korobov. In addition, Joseph further teaches
information including value that identifies a virtual desktop, of a plurality of virtual desktops generated by a local OS, where an application window is located during a client device session (Paragraph 0067, Paragraph 0069 lines 13-14, and Paragraph 0075: a window is mapped to a virtual desktop where the window is located and information identifying the window and the virtual desktop is stored so that the window can be restored in the virtual desktop);
displaying, the application window on the virtual desktop selected from the plurality of virtual desktops based on the information, including, upon reestablishment of the session, restoring the application window to the selected virtual desktop based on the information (Paragraph 0069 lines 15-20 and Paragraph 0070: the session is restored such that an application window that was displayed in a virtual desktop of a plurality of virtual desktops is redisplayed in the virtual desktop based on the information identifying the virtual desktop).
It would have been obvious to one of ordinary skill in the art, having the teachings of AAPA, Korobov, and Joseph before him before the effective filing date of the claimed invention, to modify the information, the setting a tag in a remote window object based on the information, and the displaying, by the remote desktop client in cooperation with the local OS, the first window on the first virtual desktop based on the tag, including, upon reestablishment of the remote desktop session, restoring the first window to the first virtual desktop based on the tag taught by AAPA and Korobov to include the information including value that identifies a virtual desktop, of a plurality of virtual desktops generated by a local OS, where an application window is located during a client device session and displaying, the application window on the virtual desktop selected from the plurality of virtual desktops based on the information, including, upon reestablishment of the session, restoring the application window to the virtual desktop based on the information of Joseph, in order to obtain obtaining, by a remote desktop client executing on a local computer having a local operating system (OS), information identifying a first virtual desktop of a plurality of virtual desktops generated by the local OS and relating a first window associated with a remote desktop session to the first virtual desktop; setting, by the remote desktop server, a tag in a remote window object maintained by a remote OS on a remote computer, the tag being set based on the information; and displaying, by the remote desktop client in cooperation with the local OS, the first window on the first virtual desktop selected from the plurality of virtual desktops based on the tag, including, upon reestablishment of the remote desktop session, restoring the first window to the first virtual desktop based on the tag. It would have been advantageous for one to utilize such a combination as a user can pick up where they left off organizationally, therefore avoiding lost time, as suggested by Joseph (Paragraph 0065). Further as suggested by Korobov, it is beneficial to provide features of the client device upon the remote system with respect to operating systems on client devices suspending and resuming user sessions (Column 18 lines 18-25 and lines 36-37) and therefore, would be obvious to include the features of Joseph with respect to virtual desktops and associated windows when suspending and resuming user sessions.
In regard to claim 2, AAPA discloses wherein the first window comprises a seamless window that displays contents of the remote window (Paragraph 0005 lines 1-5: “In a remote desktop session, when the user performs an action that opens a new remote window on the remote desktop, the remote desktop client can generate a new seamless window on the local desktop to display the contents of the remote window”).
In regard to claim 3, Joseph further teaches information including value that identifies a virtual desktop where an application window is located (Paragraph 0067, Paragraph 0069 lines 13-14, and Paragraph 0075: a window is mapped to a virtual desktop where the window is located and information identifying the window and the virtual desktop is stored so that the window can be restored in the virtual desktop). Accordingly, the combination further teaches wherein the information comprises a value that identifies the first virtual desktop. It would have been advantageous for one to utilize such a combination as a user can pick up where they left off organizationally, therefore avoiding lost time, as suggested by Joseph (Paragraph 0065). Further as suggested by Korobov, it is beneficial to provide features of the client device upon the remote system with respect to operating systems on client devices suspending and resuming user sessions (Column 18 lines 18-25 and lines 36-37) and therefore, would be obvious to include the features of Joseph with respect to virtual desktops and associated windows when suspending and resuming user sessions.
In regard to claim 4, the combination of AAPA, Korobov, and Joseph further discloses wherein the remote desktop server sets the tag to the value that identifies the first virtual desktop (The rejections of claims 1 and 3 are incorporated herein in their entirety. As the combination provides for information relating to a first window in a first virtual desktop, setting a tag according to the information, and including a value that identifies the first virtual desktop, the combination would reasonably provide the value in the new window object of Korobov as a data field (e.g. tag) so that state of the window is accurately stored so that when the remote session is restored, the window can be opened in the correct position on the user interface (e.g. the virtual desktop where the application was positioned) thereby the remote system captures a current session state of a user's virtual session allowing it to be stored and then allows for subsequent restoration of the session upon the same remote system and a user can pick up where they left off organizationally).
In regard to claim 6, AAPA discloses wherein the first virtual desktop comprises a desktop generated by the local OS (Paragraph 0004 lines 7-8: “A virtual desktop comprises a local desktop generated by the local OS of the local computer.”).
In regard to claim 7, AAPA discloses wherein the first virtual desktop comprises a region of a desktop generated by the local OS (Paragraph 0001 lines 5-8: “A desktop is the primary graphical user interface (GUI) generated by an operating system (OS) executing on a computer… A desktop generated by an OS on a local computer is referred to herein as a “local desktop.”” and Paragraph 0004 lines 1-4: “An OS executing on a computer can manage multiple virtual desktops. Virtual desktops allow a user to expand their workspace across multiple, separate desktops on the same computer (referred to herein as “virtual desktops”). Typically the OS displays only one of the virtual desktops to the user as selected by the user (referred to herein as the “active desktop”)”: the virtual desktop is a desktop of the local device and therefore comprises a region (e.g. the entire area) of the desktop).
In regard to claim 8, Korobov further discloses wherein the client performs the steps of obtaining and sending in a remote desktop session (Column 23 lines 55-60, Column 24 lines 1-5, and Column 24 lines 24-38: the obtaining and sending is performed while the client is connected to a remote session),
and wherein the client performs the steps of receiving and displaying in response to reconnection of the remote desktop session (Column 24 lines 39-41, Column 24 lines 50-52, Column 24 lines 57-61, and Column 25 lines 35-47: the receiving and displaying is in response to restoration of the remote session).
Accordingly, the combination further teaches wherein the remote desktop client performs the steps of obtaining and sending in a remote desktop session, and wherein the remote desktop client performs the steps of receiving and displaying in response to reconnection of the remote desktop session. It would have been advantageous for one to utilize such a combination as providing users with the features of the client device upon the remote system such that the remote system captures a current session state of a user's virtual session allowing it to be stored and then allows for subsequent restoration of the session upon the same remote system, as suggested by Korobov (Column 1 lines 45-51).
In regard to claims 10, 11, 12, 13, 15, and 16, medium claims 10, 11, 12, 13, 15, and 16 correspond generally to method claims 1, 2, 3, 4, 6, and 7, respectively, and recite similar features in medium form, and therefore are rejected under the same rationale.
In regard to claims 17 and 18, system claims 17 and 18 correspond generally to method claims 1 and 2, respectively, and recite similar features in system form, and therefore are rejected under the same rationale.
In regard to claim 19, medium claim 19 correspond generally to method claims 3 and 4 and recites similar features in medium form, and therefore is rejected under the same rationale.
4. Claim(s) 5, 14, and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Applicants Admitted Prior Art (Background Section, Paragraphs 0001-0005, of the present application), hereinafter referred to as AAPA, Korobov et al. (US 11477290 B1), Joseph (US 2022/0269378 A1), and further in view of Smith et al. (US 5181162).
In regard to claim 5, while the combination teaches the remote desktop server setting a tag and Korobov further teaches the remote desktop server storing the information externally (Column 24 line 62-Column 25 line 13), they fail to show the wherein the remote desktop server stores the information and sets the tag to a pointer to the stored information, as recited in the claims. Smith teaches storing and accessing data objects similar to that of Korobov. In addition, Smith further teaches
providing a pointer to memory address of stored information for a content object (Column 4 lines 25-29).
It would have been obvious to one of ordinary skill in the art, having the teachings of AAPA, Korobov, Joseph, and Smith before him before the effective filing date of the claimed invention, to modify he remote desktop server setting a tag and the remote desktop storing the information taught by the combination to include the providing a pointer to memory address of stored information for a content object of Smith, in order to obtain wherein the remote desktop server stores the information and sets the tag to a pointer to the stored information. It would have been advantageous for one to utilize such a combination as accessing information stored externally would have been obtained, as suggested by Smith (Column 4 lines 25-29).
In regard to claim 14, medium claim 14 corresponds generally to method claim 5 and recites similar features in medium form and therefore is rejected under the same rationale.
In regard to claim 20, system claim 20 corresponds generally to method claim 5 and recites similar features in system form and therefore is rejected under the same rationale.
Response to Arguments
5. The amendments to the abstract overcome the objection to the specification. Accordingly, the objection is withdrawn in view of the amendments.
6. The amendments to claim 17 have overcome the objection to claim 17. Accordingly, the objection is withdrawn in view of the amendments.
7. The amendments to claims 17-20 have overcome the 35 U.S.C. 101 rejection of claims 17-20. Accordingly, the 35 U.S.C. 101 rejection of claims 17-20 are withdrawn in view of the amendments.
8. The amendments to claims 5, 14, and 20 have overcome the 35 U.S.C. 112 rejections of claims 5, 14, and 20. Accordingly, the 35 U.S.C. 112 rejections of claims 5, 14, and 20 are withdrawn in view of the amendments.
9. The arguments with respect to 35 U.S.C. 103 rejections of the pending claims have been fully considered but are moot in view of the claim amendments and new grounds of rejection.
The arguments are directed towards the combination of AAPA and Korobov. The amended claims, as argued, are now rejected on the combination of AAPA, Korobov, and Joseph.
It is argued that “Korobov instead relies on session state description objects that represent overall session information, rather than tagging…. claimed use of a tag within a remote window object maintained by the remote OS establishes a persistent, per-window association… which is fundamentally different from the generalized session state management described in Korobov”. The examiner respectfully disagrees.
The specification defines a tag as a field of a data object, see paragraph 0019 lines 8-9. As provided in Korobov, a new window object (e.g. data object) (Column 23 lines 57-60) is provided which identifies the opened window including a field (e.g. window identifier, window title, set of coordinates, etc.)(Column 20 lines 52-67). Accordingly, Korobov appears to teach a tag as defined in the specification.
Conclusion
10. Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
11. Any inquiry concerning this communication or earlier communications from the examiner should be directed to NICHOLAS S ULRICH whose telephone number is (571)270-1397. The examiner can normally be reached M-F 8-4.
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, Fred Ehichioya can be reached at (571)272-4034. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
12. 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.
/Nicholas Ulrich/Primary Examiner, Art Unit 2179