WO2013004183A1 - 桌面切换方法、装置和系统 - Google Patents

桌面切换方法、装置和系统 Download PDF

Info

Publication number
WO2013004183A1
WO2013004183A1 PCT/CN2012/078169 CN2012078169W WO2013004183A1 WO 2013004183 A1 WO2013004183 A1 WO 2013004183A1 CN 2012078169 W CN2012078169 W CN 2012078169W WO 2013004183 A1 WO2013004183 A1 WO 2013004183A1
Authority
WO
WIPO (PCT)
Prior art keywords
desktop
window
desktop window
application
relative relationship
Prior art date
Application number
PCT/CN2012/078169
Other languages
English (en)
French (fr)
Inventor
杨光
李茁萌
彭勇
谢昕虬
刘红杰
Original Assignee
腾讯科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2013004183A1 publication Critical patent/WO2013004183A1/zh
Priority to US14/147,781 priority Critical patent/US20140143708A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context

Definitions

  • the present invention relates to the field of computers, and in particular, to a desktop switching method, apparatus, and system. Background of the invention
  • the operating system's desktop is undoubtedly the most convenient operating portal. Users typically place application icons, such as software icons or files, on the desktop, and launch software or open files through the desktop. Over time, the desktop will become more and more chaotic. For most ordinary users, it's not clear how to clean up the desktop. In this context, many desktop management software has been spawned, but these desktop management softwares are more like positioning themselves as a kind of desktop editing software, allowing users to manage the desktop through these software, or the software icons on the desktop or Files are edited or sorted.
  • the existing desktop management software allows users to manage application icons in a desktop.
  • many application icons are placed on one desktop, which is confusing, and it is still not very convenient for users to use the application through the desktop.
  • a desktop switching method comprising:
  • the desktop switch is performed according to the current desktop window and the relative relationship between the first desktop window and the second desktop window.
  • a desktop switching device comprising:
  • a frame entry module configured to generate a first desktop window; and set the first desktop window according to a relative relationship between the first desktop window and the second desktop window;
  • a desktop manager configured to perform desktop switching according to a current desktop window and a relative relationship between the first desktop window and the second desktop window.
  • a desktop switching system includes a desktop switching device and a server, wherein:
  • a desktop switching device configured to generate a first desktop window, set the first desktop window according to a relative relationship between the first desktop window and the second desktop window; detect a trigger instruction of the user switching the desktop, and trigger the Triggering an event corresponding to the triggering event; after listening to the triggering event, performing a desktop switching according to a current desktop window and a relative relationship between the first desktop window and the second desktop window; and sending a user data synchronization update request to the server ;
  • the server is configured to store user data, and return user data to the desktop switching device in response to the user data synchronization update request sent by the desktop switching device.
  • the first desktop window is set according to the relative relationship between the first desktop window and the second desktop window by generating the first desktop window; according to the current desktop window and the relative relationship between the first desktop window and the second desktop window , for desktop switching, implemented two desktops Switching between windows allows users to select the appropriate desktop and use the applications on the desktop according to their needs for the application.
  • FIG. 1 is a schematic diagram of an exemplary operating environment architecture of a desktop management system provided in an embodiment of the present invention
  • FIG. 2 is a schematic diagram of a frame platform provided in an embodiment of the present invention.
  • FIG. 3 is a flowchart of a desktop switching method provided in an embodiment of the present invention.
  • FIG. 4 is an information interaction diagram of loading an application provided in an embodiment of the present invention
  • FIG. 5 is a schematic structural diagram of a desktop switching apparatus provided in an embodiment of the present invention
  • FIG. 6 is another desktop switching apparatus provided in an embodiment of the present invention
  • the embodiment of the present invention provides a desktop management system.
  • the schematic diagram of the exemplary operating environment of the system is shown in FIG. 1.
  • the system mainly includes: a data service module 101, a framework platform 102, and an application extension module 103.
  • the framework platform 102 is responsible for building a framework of the first desktop window.
  • the first desktop window may be a Q+ desktop window, a Google (Google) desktop window, and Yahoo (Yahoo).
  • Desktop window Sina (Sina) desktop window and other desktop windows; also responsible for displaying the interface according to the data provided by the data service module 101, and providing the application programming interface (API) of the platform to the application extension module 103
  • the application is implemented, and the application of the desktop, the management of the desktop, and the switching of the second desktop window, and the like, wherein the second desktop window may be a Windows desktop window, or an operating system desktop window such as a Linux desktop window.
  • the framework platform 102 shown in FIG. 1 may specifically include: an application loader 201, a task manager 202, a desktop manager 203, and a docking controller (Dock bar) 204.
  • the first desktop window (such as Q+ desktop window, Google (Google) desktop window, Yahoo (Yahoo) desktop window, Sina (Sina) desktop window, etc.).
  • the application extension module 103 is responsible for implementing a specific application using the API provided by the framework platform 102.
  • Each application has an application identifier, and the application is registered in the framework platform 102, and then the application can be used under the framework platform 102. .
  • system can also include a framework entry module 104 and a server 105.
  • the data service module 101 is mainly responsible for providing a data access interface to the framework platform 102, interacting with the server 105, accessing data to the server 105, and maintaining synchronization of the data with the server 105. Through the data service module 101, the user's data is Existing at the server 105, roaming of user data can be achieved.
  • the framework entry module 104 is responsible for the initialization, loading, starting, and exit of the entire framework, and is also responsible for software single instance control, command line parameter analysis, software upgrade, and the like.
  • the framework entry module 104 may specifically be the entrance of a first desktop window (such as a Q+ desktop window, a Google desktop window, a Yahoo desktop window, a Sina desktop window, etc.).
  • Server 105 responsible for logic such as user authentication, data storage and reading. Based on the foregoing system, an embodiment of the present invention further provides a desktop switching method. Referring to FIG. 3, the method includes:
  • Step 301 Generate a first desktop window.
  • the step can be specifically performed by the framework entry module. For example, you can perform this step when triggering a new desktop window generation command in desktop management software such as Q+ desktop window, Google (Google) desktop window, Yahoo desktop window, Sina desktop window, etc. 301.
  • desktop management software such as Q+ desktop window, Google (Google) desktop window, Yahoo desktop window, Sina desktop window, etc. 301.
  • Step 302 Set a first desktop window according to a relative relationship between the first desktop window and the second desktop window.
  • the relative relationship between the first desktop window and the second desktop window may be preset by the user based on the requirements, and the relative relationship is preferably editable.
  • the relative relationship between the first desktop window and the second desktop window may be preset to be a side-by-side relationship, or the first desktop window may be a child window of the second desktop window.
  • the relative relationship between the first desktop window and the second desktop window may be pre-stored in the desktop management software, and then the framework entry module retrieves the relative relationship from the desktop management software, and based on the relative relationship The relationship is set for the first desktop window.
  • This step can be specifically performed by the framework entry module.
  • This embodiment provides at least two setting methods:
  • the first desktop window and the second desktop window are set in a side-by-side relationship, including the step a-a2, and further may include the step a3 or a4, as follows: al: setting the first desktop window to Top-level window
  • the first desktop window is set as a top-level window, which can be implemented by setting the parent window of the first desktop window to none (NULL).
  • A2 setting the first desktop window to be overlaid on the second desktop window, and located under the normal window corresponding to the application;
  • the setting a first desktop window to be over the second desktop window may include: setting a window order by using a function for setting a window order, and specifying a window to be set as the first desktop window in the function, and The order in which the first desktop window is set in the function is above the second desktop window and is located below the normal window corresponding to the application.
  • the functions for setting the window order may be different. This embodiment does not limit the specific function of setting the window order.
  • the second desktop window is a Windows desktop window
  • the first desktop window is a desktop window such as a Q+ desktop window, a Google (Google) desktop window, a Yahoo desktop window, or a Sina desktop window
  • the following functions may be implemented. :
  • the first parameter represents the window handle.
  • the first parameter is the first desktop window, in this case hQPlusWindow, which is the Q+ desktop window.
  • the second parameter indicates the handle of the sort order.
  • the second parameter is HWND_BOTTOM, which means that the window is placed at the bottom of the Z order.
  • the function further includes other parameters, the third parameter and the fourth parameter respectively represent horizontal coordinates and vertical coordinates; the fifth parameter and the sixth parameter respectively represent width and height; and the seventh parameter represents window positioning identifier .
  • the common window corresponding to the application may be a QQ window, an operating system application window, a Google desktop window, a Yahoo desktop window, or a Sina desktop window.
  • A3 Set the first desktop window to return no when responding to the window message of the first desktop window Activate the message (MA_NOACTIVATE), so that when the user triggers the first desktop window, the first desktop window is still under the normal window and will not be activated above the normal window;
  • A4 Set all the child controls on the first desktop window to be drawn and windowless, so that when the user triggers the child control of the first desktop window, the first desktop window is still under the normal window and will not be activated. Above the normal window;
  • the first desktop window is set as the sub-window of the second desktop window, including the step bl-b2, as follows:
  • the second desktop window may be directly searched by using a function of the search window; or, the second desktop window may be searched by using the sub-window of the second desktop window, specifically: using a function of the search window to find a certain window, and determining the second desktop Whether the child window of the window is a child window of the found window, and if so, the window that is found is the second desktop window, and the searching process ends. If not, the window is searched for by using a window function that has a specific relationship with the specified window. And the above judgment is made until the second desktop window is found, and the search process ends.
  • the second desktop window can be a Windows desktop window, a Linux desktop window, or another operating system desktop window.
  • the name of the system desktop is Progman. Then look for the second desktop window to use the following methods:
  • HWND hWnd FindWindow("Progman", NULL) , judge Whether SHELLDLL_DefView is a child window of hWnd, if yes, the search ends, otherwise go to step 2;
  • hWnd GetWindow(hWnd, GW_HWNDNEXT), determine whether SHELLDLL_DEFView is a child window of hWnd, if yes, the search ends; otherwise, continue to step 2.
  • the FindWindow function returns the window handle of the top-level window of the window class name or window name that matches the specified string. This function does not find the child window.
  • the GetWindow function returns a window handle that has a specific relationship (such as Z order or owner) to the specified window.
  • the first desktop window is set as a child window of the second desktop window by using a handle of the second desktop window.
  • the user can place different application icons in the first desktop window and the second desktop window according to his own needs, so that the user can enable different applications in different desktop windows.
  • Step 303 Detect a trigger instruction that the user switches the desktop, and trigger a trigger event corresponding to the trigger instruction.
  • this step can be specifically performed by the docking controller.
  • the docking controller can float anywhere on the top, bottom, leftmost or rightmost side of the screen, and exists in the first desktop window (such as Q+ desktop window, Google (Google) desktop window, Yahoo desktop window or Sina (Sina) desktop windows, etc.) and second desktop windows (such as Windows desktop windows, Linux desktop windows, or other operating system desktop windows).
  • first desktop window such as Q+ desktop window, Google (Google) desktop window, Yahoo desktop window or Sina (Sina) desktop windows, etc.
  • second desktop windows such as Windows desktop windows, Linux desktop windows, or other operating system desktop windows.
  • the triggering command may be a click operation, a moving operation or a dwell time, and the like, and the specific triggering instruction is not limited in this embodiment.
  • the correspondence between the triggering instruction and the triggering event may be preset Relationship
  • the docking controller may trigger a trigger event corresponding to the trigger instruction.
  • a trigger operation such as a click operation, a move operation, or a dwell time can be set as a correspondence relationship with a desktop switch trigger event.
  • detecting a triggering operation such as a click operation, a moving operation, or a dwell time
  • it may be determined that the trigger event corresponding to the detected trigger instruction is a desktop switching trigger event, and the desktop switching trigger event is triggered.
  • Step 304 After the trigger event is monitored, the desktop switch is performed according to the current desktop window and the relative relationship between the first desktop window and the second desktop window.
  • the step can be specifically performed by the desktop manager.
  • the desktop switching process is:
  • the desktop switching process is:
  • the first desktop window may be overlaid on the second desktop Displayed on the window, if the current desktop window is the first desktop window, the first desktop window is notified to be hidden in the second desktop window, and the second desktop window is displayed.
  • the method may further include the first table The step of loading an application into a face window.
  • Step 401 The docking controller detects that the user triggers an application instruction in the first desktop window, and triggers a corresponding application trigger event, for example, the trigger instruction may be a click operation, a mobile operation or a dwell time, and the application trigger event is a desktop switch. trigger event;
  • Step 402 After the desktop manager detects the application trigger event, the task manager is invoked to run the application by using the identifier of the application.
  • Step 403 The task manager queries whether the application has been run according to the identifier of the application. If it is already running, step 404 is performed. If not, step 405 is performed.
  • Step 404 If it is already running, there is no need to load again, and step 406 is performed;
  • Step 405 If not running, invoke the application loader to load the application by using the identifier of the application;
  • Step 406 The application loader searches for a code file corresponding to the application according to the identifier of the application, and loads the code file.
  • the first desktop window is set according to the relative relationship between the first desktop and the second desktop window, and the triggering instruction of the user switching the desktop is triggered, and the trigger corresponding to the triggering instruction is triggered.
  • the desktop switch is performed according to the current desktop window and the relative relationship between the first desktop window and the second desktop window, and the switching between the two desktop windows is realized, and the user can customize the application according to the application. Need, choose the right desktop, and use the apps on your desktop.
  • an embodiment of the present invention further provides a desktop switching device, where the device includes:
  • a frame entry module 501 configured to generate a first desktop window; and set a first desktop window according to a relative relationship between the first desktop window and the second desktop window; wherein the first desktop window and the second desktop window are Relative relationships can be framed by users based on needs
  • the entry module 501 is pre-set and this relative relationship is preferably editable.
  • the relative relationship between the first desktop window and the second desktop window may be preset to be a side-by-side relationship, or the first desktop window may be a child window of the second desktop window.
  • the relative relationship between the first desktop window and the second desktop window may be pre-stored in the desktop management software, and then the framework entry module 501 retrieves the relative relationship from the desktop management software, and based on the The relative relationship is set for the first desktop window.
  • the docking controller 503 is configured to detect a triggering instruction of the user to switch the desktop, and trigger a triggering event corresponding to the triggering instruction.
  • the desktop manager 502 is configured to perform desktop switching according to the current desktop window and the relative relationship between the first desktop window and the second desktop window after the trigger event is monitored.
  • the frame entry module 501 is configured to set the first desktop window to be the same as the second desktop window when the first desktop window is set according to the relative relationship between the first desktop window and the second desktop window. Side by side desktop window.
  • the first desktop window is set to overlie the second desktop window and is located below the normal window corresponding to the application.
  • the frame entry module 501 when the frame entry module 501 sets the first desktop window according to the relative relationship between the first desktop window and the second desktop window, the frame entry module 501 is further configured to:
  • Setting the first desktop window returns a no activation message when responding to the window message of the first desktop window, and the no activation message is used when the user triggers the first desktop window, the first desktop window is located under the normal window, and is not activated to Above the normal window.
  • the frame entry module 501 is further configured to: Sets all child controls on the first desktop window to be drawn and windowless. The child controls are set to draw and are not windowed. When the user triggers the child controls on the first desktop window, the first desktop window is still located. Under the normal window, it will not be activated above the normal window.
  • the frame entry module 501 when the frame entry module 501 sets the first desktop window according to the relative relationship between the first desktop window and the second desktop window, the frame entry module 501 is further configured to:
  • For the first desktop window remove the title attribute, leave the window client area; add the tool window attribute, remove the window task bar display; set the window size to the size of the screen desktop.
  • a screenshot of the first desktop and the second desktop is captured, and the first desktop screenshot and the second desktop screenshot are stitched into a side-by-side screenshot;
  • Determining whether the current desktop window is the second desktop and if so, squeezing the second desktop by means of animation, pop-up window, window fade, etc., and displaying the first desktop in the first desktop window; or, determining whether the current desktop window is For the first desktop, if yes, the first desktop is squeezed by animation, pop-up window, window fade, etc., and the second desktop is displayed in the second desktop window.
  • the frame entry module 501 is specifically configured to set the first desktop window as the second desktop window. window.
  • the frame entry module 501 is specifically used when the first desktop window is set as a child window of the second desktop window.
  • the current desktop window is the second desktop window, and if so, the first desktop window is notified to be overwritten in the second desktop window; or, the current desktop window is determined to be the first desktop window, and if so, The first desktop window is notified to be hidden in the second desktop window, and the second desktop window is displayed.
  • the apparatus further includes: a task manager 604 and an application loader 605;
  • the docking controller 603 is further configured to detect an instruction that the user triggers an application in the first desktop window, and trigger a corresponding application triggering event;
  • the desktop manager 602 is further configured to: after monitoring the application trigger event, invoke the task manager 204 to run the application by using the identifier of the application;
  • the task manager 604 is configured to query whether the application has been run according to the identifier of the application, and if not, the application is not loaded, if not, the application loader 205 is called by the identifier of the application to load the application;
  • the application loader 605 is configured to find the code file corresponding to the application according to the identifier of the application, and load the code file.
  • the first desktop window is set according to the relative relationship between the first desktop window and the second desktop window, and the triggering instruction of the user switching the desktop is detected, and the triggering instruction corresponding to the triggering instruction is triggered.
  • Triggering an event after listening to the triggering event, according to the current desktop window and the relative relationship between the first desktop window and the second desktop window, performing desktop switching, realizing switching between two desktop windows, the user can For the needs of the application, choose the right desktop and use the applications on the desktop.
  • a person skilled in the art may understand that all or part of the steps of implementing the above embodiments may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
  • the storage medium mentioned may be a read only memory, a magnetic disk or an optical disk or the like.
  • all or part of the steps of the foregoing embodiments of the present invention may also be implemented by a network system including a network node, which can fully utilize the advantages of the hardware environment at both ends of the client and the server, and allocate tasks to the client and the server reasonably.
  • the end is implemented to reduce the communication overhead of the system.
  • the client can be a thin client (Thin Client), which can be a basic application-free computer terminal in the client-server network system, and the thin client can communicate with the server through some common communication protocols. And then access the office i or the network.
  • Each of the embodiments of the present invention can be implemented by a data processing program executed by a data processing device such as a computer.
  • the data processing program constitutes the present invention.
  • a data processing program that is typically stored in a storage medium is executed by directly reading the program out of the storage medium or by installing or copying the program to a storage device (such as a hard disk and or a memory) of the data processing device. Therefore, such a storage medium also constitutes the present invention.
  • the storage medium can use any type of recording method, such as paper storage medium (such as paper tape, etc.), magnetic storage medium (such as floppy disk, hard disk, flash memory, etc.), optical storage medium (such as CD-ROM, etc.), magneto-optical storage medium ( Such as MO, etc.).
  • the present invention therefore also discloses a storage medium in which is stored a data processing program for performing any of the above embodiments of the present invention.

Abstract

本发明公开了一种桌面切换方法、装置和系统,属于计算机领域。所述方法包括:生成第一桌面窗口;根据第二桌面窗口与第一桌面窗口之间的相对关系,对第一桌面窗口进行设置;根据当前桌面窗口以及所述第一桌面窗口与第二桌面窗口之间的相对关系,进行桌面切换。所述装置包括:框架入口模块、停靠控制器、和桌面管理器。本发明通过上述方案实现了两个桌面窗口之间的切换,用户可以根据自己对应用的需要,选择合适的桌面,并使用桌面中的应用。

Description

桌面切换方法、 装置和系统
本申请要求于 2011 年 07 月 6 日提交中国专利局、 申请号为 201110188336.1、 发明名称为 "桌面切换方法和装置" 的中国专利申请 的优先权, 其全部内容通过引用结合在本申请中。 技术领域
本发明涉及计算机领域,特别涉及一种桌面切换方法、装置和系统。 发明背景
随着计算机的普及, 越来越多的人都在使用计算机, 计算机已经成 为普通民众日常生活中不可缺少的工具之一。
对于大部分的计算机用户来说, 操作系统的桌面无疑是最便捷的操 作入口。 用户通常将应用图标, 如软件图标或文件, 放置在桌面, 并通 过桌面启动软件或打开文件等。 久而久之, 桌面就会变得越来越混乱。 对于大部分的普通用户来说, 并不是 4艮清楚该如何去清理桌面。 在这样 的背景下, 催生了 艮多桌面管理软件, 但是这些桌面管理软件更多地是 将自身定位为一种桌面编辑软件, 允许用户通过这些软件对桌面进行管 理, 对桌面上的软件图标或文件进行编辑或分类等操作。
综上所述, 现有的桌面管理软件允许用户对一个桌面中的应用图标 进行管理, 但是, 众多的应用图标放置在一个桌面中, 容易混淆, 用户 通过桌面使用应用时仍然不是很便捷。 发明内容
为了解决现有技术的问题, 本发明实施方式提供了一种桌面切换方 法、 装置和系统。 所述技术方案如下: 一种桌面切换方法, 所述方法包括:
生成第一桌面窗口;
根据第一桌面窗口与第二桌面窗口之间的相对关系, 对所述第一桌 面窗口进行设置;
根据当前桌面窗口以及所述第一桌面窗口与第二桌面窗口之间的相 对关系, 进行桌面切换。
一种桌面切换装置, 所述装置包括:
框架入口模块, 用于生成第一桌面窗口; 根据第一桌面窗口与第二 桌面窗口之间的相对关系, 对所述第一桌面窗口进行设置;
桌面管理器, 用于根据当前桌面窗口以及所述第一桌面窗口与第二 桌面窗口之间的相对关系, 进行桌面切换。
一种桌面切换系统, 该桌面切换系统包括桌面切换装置和服务器, 其中:
桌面切换装置, 用于生成第一桌面窗口, 根据第一桌面窗口与第二 桌面窗口之间的相对关系, 对所述第一桌面窗口进行设置; 检测用户切 换桌面的触发指令, 并触发所述触发指令对应的触发事件; 监听到所述 触发事件之后, 根据当前桌面窗口以及所述第一桌面窗口与第二桌面窗 口之间的相对关系, 进行桌面切换; 并向服务器发送用户数据同步更新 请求;
服务器, 用于存储用户数据, 并响应于桌面切换装置发送来的用户 数据同步更新请求, 向桌面切换装置返回用户数据。 本发明实施方式提 供的技术方案带来的有益效果是:
通过生成第一桌面窗口, 根据第一桌面窗口与第二桌面窗口之间的 相对关系, 对第一桌面窗口进行设置; 根据当前桌面窗口以及第一桌面 窗口与第二桌面窗口之间的相对关系, 进行桌面切换, 实现了两个桌面 窗口之间的切换, 用户可以根据自己对应用的需要, 选择合适的桌面, 并使用桌面中的应用。 附图简要说明
为了更清楚地说明本发明或现有技术中的技术方案, 下面将对本发 明或现有技术描述中所需要使用的附图作筒单地介绍, 显而易见地, 下 面描述中的附图仅仅是本发明的一些实施方式, 对于本领域普通技术人 员来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获得其 他的附图。
图 1是本发明实施方式中提供的桌面管理系统的示范性运行环境架 构示意图;
图 2是本发明实施方式中提供的框架平台示意图;
图 3是本发明实施方式中提供的桌面切换方法流程图;
图 4是本发明实施方式中提供的加载某一应用的信息交互图; 图 5是本发明实施方式中提供的桌面切换装置结构示意图; 图 6是本发明实施方式中提供的桌面切换装置另一结构示意图。 实施本发明的方式
为使本发明的技术方案和优点更加清楚, 下面将结合附图对本发明 实施方式作进一步地详细描述。
本发明实施方式提供了一种桌面管理系统, 该系统示范性运行环境 架构示意图参见图 1所示, 该系统主要包括: 数据服务模块 101 , 框架 平台 102, 以及应用扩展模块 103。
框架平台 102: 负责搭建第一桌面窗口的框架, 第一桌面窗口在本 发明中可以是 Q+桌面窗口、 谷歌 ( Google ) 桌面窗口、 雅虎(Yahoo ) 桌面窗口、 新浪(Sina ) 桌面窗口等桌面窗口; 还负责根据数据服务模 块 101提供的数据进行界面的展示, 同时提供本平台的应用程序编程接 口 ( Application Programming Interface, API )给应用扩展模块 103以实 现各个应用; 还负责加载应用, 桌面的管理, 与第二桌面窗口的切换等, 其中, 第二桌面窗口在本发明中可以是 Windows桌面窗口, 或 Linux桌 面窗口等操作系统桌面窗口。
参见图 2 , 图 1 所示框架平台 102 具体可以包括: 应用加载器 (Application Loader)201、 任务管理器 (Task Manager)202、 桌面管理器 (Desktop Manager)203、 停靠控制器 ( Dock bar ) 204、 以及第一桌面窗 口 (如 Q+桌面窗口、 谷歌 ( Google ) 桌面窗口、 雅虎(Yahoo ) 桌面窗 口、 新浪(Sina ) 桌面窗口, 等等)。
应用扩展模块 103 , 负责使用框架平台 102提供的 API实现一个个 具体的应用,每个应用都有一个应用标识,并将应用注册到框架平台 102 中来, 之后在框架平台 102下可以使用该应用。
另外, 该系统还可以包括框架入口模块 104和服务器 105。
数据服务模块 101 , 主要负责提供数据访问接口给框架平台 102使 用, 与服务器 105的交互, 向服务器 105存取数据, 并保持数据与服务 器 105的同步; 通过数据服务模块 101 , 使得用户的数据都存在于服务 器 105 , 可以实现用户数据的漫游。
框架入口模块 104: 负责整个框架的初始化、 加载、 启动、 退出, 还负责软件单实例控制, 命令行参数解析, 软件升级等。 在本发明中, 框架入口模块 104 具体可以是第一桌面窗口 (如 Q+桌面窗口、 谷歌 ( Google )桌面窗口、 雅虎( Yahoo )桌面窗口、 新浪( Sina )桌面窗口 等桌面窗口) 的入口。 服务器 105: 负责用户验证, 数据存储和读取等 逻辑。 基于上述系统, 本发明实施方式还提供了一种桌面切换方法, 参见 图 3 , 该方法包括:
步骤 301 : 生成第一桌面窗口;
其中, 本步骤具体可以由框架入口模块执行。 比如, 当在桌面管理 软件 (比如 Q+桌面窗口、 谷歌 ( Google ) 桌面窗口、 雅虎( Yahoo ) 桌 面窗口、 新浪(Sina )桌面窗口, 等等) 中触发新桌面窗口生成命令时, 可以执行该步骤 301。
步骤 302: 根据第一桌面窗口与第二桌面窗口之间的相对关系, 对 第一桌面窗口进行设置;
其中, 第一桌面窗口与第二桌面窗口之间的相对关系可以由用户基 于需求而预先设定, 而且这种相对关系优选是可以编辑的。 比如, 可以 预先设置第一桌面窗口与第二桌面窗口之间的相对关系为并列关系, 或 者第一桌面窗口是第二桌面窗口的子窗口。 在一个实施方式中, 可以在 桌面管理软件中预先存储第一桌面窗口与第二桌面窗口之间的相对关 系, 然后框架入口模块从桌面管理软件中调取出这种相对关系, 并基于 该相对关系对第一桌面窗口进行设置。
本步骤具体可以由框架入口模块执行。 本实施方式提供了至少两种 设置方法:
在第一种设置方法中, 将第一桌面窗口与第二桌面窗口设置为并列 关系, 包括步骤 al-a2, 进一步还可以包括步骤 a3或 a4, 具体如下: al : 将第一桌面窗口设置为顶层窗口;
其中, 将第一桌面窗口设置为顶层窗口, 具体可以通过将第一桌面 窗口的父窗口设置为无 (NULL ) 实现。
进一步的, 对第一桌面窗口进行以下处理:
去掉标题 (title ) 属性, 保留窗口客户区; 加上工具窗口 (tool window )属性, 去掉窗口任务栏显示; 将窗口大小设置成屏幕桌面的尺 寸。
a2: 设置第一桌面窗口覆盖在第二桌面窗口之上, 并且位于应用程 序对应的普通窗口之下;
其中,设置第一桌面窗口覆盖在第二桌面窗口之上,具体可以包括: 使用设置窗口顺序的函数对窗口的顺序进行设置, 在该函数中指定需要 设置的窗口为第一桌面窗口, 并在该函数中设置第一桌面窗口的顺序为 在第二桌面窗口之上, 并且位于应用程序对应的普通窗口之下。 根据第 一桌面窗口和第二桌面窗口的具体类型, 设置窗口顺序的函数可以各不 相同, 本实施方式并不限定具体的设置窗口顺序的函数。
当第二桌面窗口是 Windows桌面窗口, 第一桌面窗口是 Q+桌面窗 口、 谷歌 ( Google ) 桌面窗口、 雅虎( Yahoo ) 桌面窗口或新浪( Sina ) 桌面窗口等桌面窗口时, 具体可以采用如下函数实现:
SetWindowPos
(hQ PlusWindow,HWND_BOTTOM,0,0,width,height,0);
第一个参数表示窗口句柄, 本实施方式中第一个参数为第一桌面窗 口, 在这个例子中为 hQPlusWindow, 即 Q+桌面窗口。 第二个参数表示 排列顺序的句柄, 本实施方式中第二个参数为 HWND_BOTTOM, 表示 将窗口置于 Z序的底部。 进一步的, 该函数还包括其他参数, 第三个参 数和第四个参数分别表示水平坐标和垂直坐标; 第五个参数和第六个参 数分别表示宽和高; 第七个参数表示窗口定位标识。
其中, 应用程序对应的普通窗口可以是 QQ窗口、 操作系统应用窗 口、 谷歌 ( Google ) 桌面窗口、 雅虎( Yahoo ) 桌面窗口或新浪( Sina ) 桌面窗口等。
a3: 设置第一桌面窗口在响应第一桌面窗口的窗口消息时, 返回无 激活消息 (MA_NOACTIVATE ), 从而在用户触发第一桌面窗口时, 第 一桌面窗口仍位于普通窗口之下, 不会被激活到普通窗口之上;
a4: 设置第一桌面窗口上的所有子控件都是绘制且无窗口化的, 从 而在用户触发第一桌面窗口的子控件时, 第一桌面窗口仍位于普通窗口 之下, 不会被激活到普通窗口之上;
需要说明的是, 第二桌面窗口上的所有子控件可以是窗口化的。 在第二种设置方法中, 将第一桌面窗口设置为第二桌面窗口的子窗 口, 包括步骤 bl-b2, 具体如下:
bl : 查找第二桌面窗口;
具体的, 可以使用查找窗口的函数直接查找第二桌面窗口; 或者, 利用第二桌面窗口的子窗口查找第二桌面窗口, 具体包括: 使用查找窗 口的函数查找到某一窗口, 判断第二桌面窗口的子窗口是否是查找到的 窗口的子窗口, 如果是, 则查找到的窗口是第二桌面窗口, 查找过程结 束, 如果不是, 使用查找与指定窗口有特定关系的窗口函数继续查找窗 口, 并进行上述判断, 直至查找到第二桌面窗口, 查找过程结束。
第二桌面窗口具体可以是 Windows桌面窗口、 Linux桌面窗口, 或 其他操作系统桌面窗口。 一般而言, 系统桌面的名称为 Progman。 则查 找第二桌面窗口具体可以采用以下方法:
在 Windows XP下,通过 FindWindow("Progman", NULL)就可以找到 系统桌面。
在 Windows 7下,由于有一个用来支持动态背景的名叫 WorkerW的 窗口可能会混淆查找到真正的系统桌面, 而真正的系统桌面上有一个名 叫 SHELLDLL_DefView的子窗口, 用来显示快捷方式图标, 因此查找 真正的系统桌面方法如下:
1 、 HWND hWnd = FindWindow("Progman", NULL) , 判断 SHELLDLL_DefView是否是 hWnd的子窗口, 如果是, 查找结束, 否则 进入第 2步;
2 、 hWnd = GetWindow(hWnd, GW_HWNDNEXT) , 判断 SHELLDLL_DEFView是否是 hWnd的子窗口, 如果是, 查找结束; 否 则继续执行第 2步。
其中, FindWindow 函数返回与指定字符串相匹配的窗口类名或窗 口名的最顶层窗口的窗口句柄, 这个函数不会查找子窗口。 GetWindow 函数返回与指定窗口有特定关系 (如 Z序或所有者) 的窗口句柄。
b2: 将第一桌面窗口设置为第二桌面窗口的子窗口。
具体的, 通过该第二桌面窗口的句柄, 将该第一桌面窗口设置为该 第二桌面窗口的子窗口。
其中, 用户可以根据自己的需要, 在第一桌面窗口和第二桌面窗口 中放置不同的应用图标, 以便于用户在不同的桌面窗口分别启用不同的 应用。 当然, 也可以在第一桌面窗口和第二桌面窗口放置全部相同或部 分相同的应用。
步骤 303: 检测用户切换桌面的触发指令, 并触发该触发指令对应 的触发事件;
其中, 本步骤具体可以由停靠控制器执行。 停靠控制器可以浮动在 屏幕的最上方、 最下方、 最左边或最右边等任意位置, 同时存在于第一 桌面窗口 (如 Q+桌面窗口、 谷歌 ( Google ) 桌面窗口、 雅虎(Yahoo ) 桌面窗口或新浪(Sina ) 桌面窗口等等)和第二桌面窗口 (如 Windows 桌面窗口、 Linux桌面窗口, 或其他操作系统桌面窗口)上。
其中, 触发指令可以是点击操作, 移动操作或停留时间等, 本实施 方式并不限定具体的触发指令。
在一个实施方式中, 可以预先设置触发指令与触发事件之间的对应 关系, 当检测到用户切换桌面的触发指令之后, 停靠控制器可以触发与 触发指令所对应的触发事件。 比如, 可以将点击操作、 移动操作或停留 时间等触发指令与桌面切换触发事件设置为对应关系。 当检测到点击操 作、 移动操作或停留时间等触发指令之后, 可以确定出对应于所检测到 触发指令的触发事件为桌面切换触发事件, 并触发该桌面切换触发事 件。
步骤 304: 监听到该触发事件之后, 根据当前桌面窗口以及第一桌 面窗口与第二桌面窗口之间的相对关系, 进行桌面切换。
其中, 本步骤具体可以由桌面管理器执行。
对于第一种设置方法, 即第一桌面窗口与第二桌面窗口是并列关系 时, 桌面切换过程为:
监听到该触发事件之后, 抓取第一桌面和第二桌面的截图, 将第一 桌面截图和第二桌面截图拼接成一个并列的截图; 判断当前桌面窗口是 否是第二桌面, 如果是, 则通过动画方式、 弹出窗口方式、 窗口淡化等 方式挤去第二桌面, 并将第一桌面显示在第一桌面窗口; 或者, 如果当 前桌面窗口是第一桌面, 通过动画方式、 弹出窗口方式、 窗口淡化等方 式挤去第一桌面, 并将第二桌面显示在第二桌面窗口。
对于第二种设置方法,即第一桌面窗口是第二桌面窗口的子窗口时, 桌面切换过程为:
监听到该触发事件之后, 判断当前桌面窗口是否是第二桌面窗口, 如果是, 通知该第一桌面窗口在该第二桌面窗口进行显示, 具体的, 第 一桌面窗口可以覆盖在该第二桌面窗口上进行显示, 如果当前桌面窗口 是第一桌面窗口, 通知该第一桌面窗口在该第二桌面窗口进行隐藏, 并 显示该第二桌面窗口。
步骤 304中切换到第一桌面窗口之后, 该方法还可以包括在第一桌 面窗口加载某一应用的步骤。
参见图 4, 具体包括步骤 401-406:
步骤 401 : 停靠控制器检测该用户在该第一桌面窗口触发一应用的 指令, 并触发相应的应用触发事件, 比如触发指令可以为点击操作、 移 动操作或停留时间, 而应用触发事件为桌面切换触发事件;
步骤 402: 桌面管理器监测到该应用触发事件之后, 通过该应用的 标识调用任务管理器运行该应用;
步骤 403: 该任务管理器根据该应用的标识查询该应用是否已经运 行, 如果已经运行, 则执行步骤 404, 如果没有运行, 则执行步骤 405。
步骤 404: 如果已经运行, 则无须再加载, 并执行步骤 406;
步骤 405: 如果没有运行, 通过该应用的标识调用应用加载器加载 该应用;
步骤 406: 该应用加载器根据该应用的标识查找该应用对应的代码 文件, 并加载该代码文件。
本发明实施方式通过生成第一桌面窗口, 根据第一桌面与第二桌面 窗口之间的相对关系, 对第一桌面窗口进行设置, 检测用户切换桌面的 触发指令, 并触发该触发指令对应的触发事件, 监听到触发事件之后, 根据当前桌面窗口以及第一桌面窗口与第二桌面窗口之间的相对关系, 进行桌面切换, 实现了两个桌面窗口之间的切换, 用户可以根据自己对 应用的需要, 选择合适的桌面, 并使用桌面中的应用。
参见图 5 , 本发明实施方式还提供了一种桌面切换装置, 该装置包 括:
框架入口模块 501 , 用于生成第一桌面窗口; 根据第一桌面窗口与 第二桌面窗口之间的相对关系, 对第一桌面窗口进行设置; 其中第一桌 面窗口与第二桌面窗口之间的相对关系可以由用户基于需求而在框架 入口模块 501中预先设定,而且这种相对关系优选是可以编辑的。比如, 可以预先设置第一桌面窗口与第二桌面窗口之间的相对关系为并列关 系, 或者第一桌面窗口是第二桌面窗口的子窗口。
在一个实施方式中, 可以在桌面管理软件中预先存储第一桌面窗口 与第二桌面窗口之间的相对关系, 然后框架入口模块 501从桌面管理软 件中调取出这种相对关系, 并基于该相对关系对第一桌面窗口进行设 置。
停靠控制器 503 , 用于检测用户切换桌面的触发指令, 并触发该触 发指令对应的触发事件。
桌面管理器 502, 用于监听到触发事件之后, 根据当前桌面窗口以 及第一桌面窗口与第二桌面窗口之间的相对关系, 进行桌面切换。
一方面, 框架入口模块 501在根据第一桌面窗口与第二桌面窗口之 间的相对关系, 对第一桌面窗口进行设置时, 具体用于将第一桌面窗口 设置为与第二桌面窗口是相互并列的桌面窗口。
更具体地, 用于:
设置第一桌面窗口为顶层窗口;
设置第一桌面窗口覆盖在第二桌面窗口之上, 并且位于应用程序对 应的普通窗口之下。
进一步的, 框架入口模块 501在根据第一桌面窗口与第二桌面窗口 之间的相对关系, 对第一桌面窗口进行设置时, 还用于:
设置第一桌面窗口在响应第一桌面窗口的窗口消息时, 返回无激活 消息, 无激活消息用于在用户触发第一桌面窗口时, 第一桌面窗口位于 普通窗口之下, 不会被激活到普通窗口之上。
进一步的, 框架入口模块 501在根据第一桌面窗口与第二桌面窗口 之间的相对关系, 对第一桌面窗口进行设置时, 还用于: 设置第一桌面窗口上的所有子控件都是绘制且无窗口化的, 子控件 被设置为绘制且无窗口化用于在用户触发第一桌面窗口上的子控件时, 第一桌面窗口仍位于普通窗口之下, 不会被激活到普通窗口之上。
进一步的, 框架入口模块 501在根据第一桌面窗口与第二桌面窗口 之间的相对关系, 对第一桌面窗口进行设置时, 还用于:
对第一桌面窗口, 去掉标题(title )属性, 保留窗口客户区; 加上工 具窗口 (tool window )属性, 去掉窗口任务栏显示; 将窗口大小设置成 屏幕桌面的尺寸。
桌面管理器 502, 具体用于:
监听到触发事件之后, 抓取第一桌面和第二桌面的截图, 将第一桌 面截图和第二桌面截图拼接成一个并列的截图;
判断当前桌面窗口是否为第二桌面, 如果是, 通过动画方式、 弹出 窗口方式、 窗口淡化等方式挤去第二桌面, 并将第一桌面显示在第一桌 面窗口; 或者, 判断当前桌面窗口是否为第一桌面, 如果是, 通过动画 方式、 弹出窗口方式、 窗口淡化等方式挤去第一桌面, 并将第二桌面显 示在第二桌面窗口。
另一方面, 框架入口模块 501在根据第一桌面窗口与第二桌面窗口 之间的相对关系, 对第一桌面窗口进行设置时, 具体用于将第一桌面窗 口设置为第二桌面窗口的子窗口。
更具体地, 用于:
查找第二桌面窗口;
将第一桌面窗口设置为第二桌面窗口的子窗口。
框架入口模块 501在将第一桌面窗口设置为第二桌面窗口的子窗口 时, 具体用于
通过第二桌面窗口的句柄, 将第一桌面窗口设置为第二桌面窗口的 子窗口。
桌面管理器 502, 具体用于:
监听到触发事件之后, 判断当前桌面窗口是否为第二桌面窗口, 如 果是, 通知第一桌面窗口覆盖在第二桌面窗口进行显示; 或者, 判断当 前桌面窗口是否为第一桌面窗口, 如果是, 通知第一桌面窗口在第二桌 面窗口进行隐藏, 并显示第二桌面窗口。
进一步的, 参见图 6, 与图 5相比较, 该装置还包括: 任务管理器 604和应用加载器 605;
当桌面切换到第一桌面窗口之后,
停靠控制器 603 , 还用于检测用户在第一桌面窗口触发一应用的指 令, 并触发相应的应用触发事件;
桌面管理器 602, 还用于监测到应用触发事件之后, 通过应用的标 识调用任务管理器 204运行应用;
任务管理器 604, 用于根据应用的标识查询应用是否已经运行, 如 果已经运行, 则不加载应用, 如果没有运行, 通过应用的标识调用应用 加载器 205加载应用;
当加载应用时, 应用加载器 605 , 用于根据应用的标识查找应用对 应的代码文件, 并加载代码文件。
本发明关于装置的实施方式与关于方法的实施方式属于同一构思, 其具体实现过程详见方法实施方式。
本发明实施方式通过生成第一桌面窗口, 根据第一桌面窗口与第二 桌面窗口之间的相对关系, 对第一桌面窗口进行设置, 检测用户切换桌 面的触发指令, 并触发该触发指令对应的触发事件, 监听到触发事件之 后, 根据当前桌面窗口以及第一桌面窗口与第二桌面窗口之间的相对关 系, 进行桌面切换, 实现了两个桌面窗口之间的切换, 用户可以根据自 己对应用的需要, 选择合适的桌面, 并使用桌面中的应用。
本领域普通技术人员可以理解实现上述实施方式的全部或部分步骤 可以通过硬件来完成, 也可以通过程序来指令相关的硬件完成, 所述的 程序可以存储于一种计算机可读存储介质中, 上述提到的存储介质可以 是只读存储器, 磁盘或光盘等。
而且, 还可以通过包含网络节点的网络系统来实施本发明上述实施 方式的全部或部分步骤, 该网络系统可以充分利用客户端和服务器两端 硬件环境的优势, 将任务合理分配到客户端和服务器端来实现, 从而降 低系统的通讯开销。 客户端具体可以为瘦客户端(Thin Client ) , 该瘦客 户端可以是在客户端-服务器网络体系中的一个基本无需应用程序的计 算机终端, 而且瘦客户端可以通过一些常见通信协议和服务器通信, 进 而接入局 i或网。
本发明的每一个实施例可以通过由数据处理设备如计算机执行的数 据处理程序来实现。 显然, 数据处理程序构成了本发明。 此外, 通常存 储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质 或者通过将程序安装或复制到数据处理设备的存储设备 (如硬盘和或内 存) 中执行。 因此, 这样的存储介质也构成了本发明。 存储介质可以使 用任何类型的记录方式, 例如纸张存储介质 (如纸带等)、 磁存储介质 (如软盘、 硬盘、 闪存等)、 光存储介质 (如 CD-ROM等)、 磁光存储 介质 (如 MO等)等。
因此本发明还公开了一种存储介质, 其中存储有数据处理程序, 该 数据处理程序用于执行本发明上述方法的任何一种实施例。
以上所述仅为本发明的较佳实施方式, 并不用以限制本发明, 凡在 本发明的精神和原则之内, 所作的任何修改、 等同替换、 改进等, 均应 包含在本发明的保护范围之内。

Claims

权利要求书
1、 一种桌面切换方法, 其特征在于, 所述方法包括:
生成第一桌面窗口;
根据第一桌面窗口与第二桌面窗口之间的相对关系, 对所述第一桌 面窗口进行设置;
根据当前桌面窗口以及所述第一桌面与第二桌面窗口之间的相对关 系, 进行桌面切换。
2、根据权利要求 1所述的桌面切换方法, 其特征在于, 该方法进一 步包括: 检测用户切换桌面的触发指令, 并触发所述触发指令对应的触 发事件;
在监听到所述触发事件之后, 执行所述根据当前桌面窗口以及第一 桌面与第二桌面窗口之间的相对关系进行桌面切换。
3、根据权利要求 2所述的桌面切换方法, 其特征在于, 所述第一桌 面窗口与第二桌面窗口之间的相对关系为: 第一桌面窗口与第二桌面窗 口是相互并列的桌面窗口。
4、根据权利要求 3所述的方法, 其特征在于, 所述根据第一桌面窗 口与第二桌面窗口之间的相对关系, 对所述第一桌面窗口进行设置, 包 括:
设置所述第一桌面窗口为顶层窗口;
设置所述第一桌面窗口覆盖在所述第二桌面窗口之上, 并且位于应 用程序对应的普通窗口之下。
5、根据权利要求 4所述的方法, 其特征在于, 所述根据第一桌面窗 口与第二桌面窗口之间的相对关系, 对所述第一桌面窗口进行设置, 还 包括:
设置所述第一桌面窗口在响应所述第一桌面窗口的窗口消息时, 返 回无激活消息, 所述无激活消息用于在用户触发所述第一桌面窗口时, 所述第一桌面窗口位于所述普通窗口之下, 不会被激活到所述普通窗口 之上。
6、根据权利要求 4所述的方法, 其特征在于, 所述根据第一桌面窗 口与第二桌面窗口之间的相对关系, 对所述第一桌面窗口进行设置, 还 包括:
设置所述第一桌面窗口上的所有子控件都是绘制且无窗口化的, 所 述子控件被设置为绘制且无窗口化用于在用户触发所述第一桌面窗口 上的子控件时, 所述第一桌面窗口仍位于所述普通窗口之下, 不会被激 活到所述普通窗口之上。
7、根据权利要求 4所述的方法, 其特征在于, 所述根据第一桌面窗 口与第二桌面窗口之间的相对关系, 对所述第一桌面窗口进行设置, 还 包括:
对所述第一桌面窗口, 去掉标题属性, 保留窗口客户区; 加上工具 窗口属性, 去掉窗口任务栏显示; 将窗口大小设置成屏幕桌面的尺寸。
8、 根据权利要求 2-7任一权利要求所述的方法, 其特征在于, 所述 监听到所述触发事件之后, 根据当前桌面窗口以及所述第一桌面窗口与 第二桌面窗口之间的相对关系, 进行桌面切换, 包括:
监听到所述触发事件之后, 抓取第一桌面和第二桌面的截图, 将第 一桌面截图和第二桌面截图拼接成一个并列的截图;
判断当前桌面窗口是否为第二桌面, 如果是, 通过动画方式挤去第 二桌面, 并将第一桌面显示在第一桌面窗口; 或者, 判断当前桌面窗口 是否为第一桌面, 如果是, 通过动画方式挤去第一桌面, 并将第二桌面 显示在第二桌面窗口。
9、根据权利要求 1所述的桌面切换方法, 其特征在于, 所述第一桌 面窗口与第二桌面窗口之间的相对关系为: 第一桌面窗口是第二桌面窗 口的子窗口。
10、 根据权利要求 9所述的方法, 其特征在于, 所述根据第一桌面 窗口与第二桌面窗口之间的相对关系, 对所述第一桌面窗口进行设置, 包括:
查找第二桌面窗口;
将所述第一桌面窗口设置为所述第二桌面窗口的子窗口。
11、根据权利要求 10所述的方法, 其特征在于, 所述将所述第一桌 面窗口设置为所述第二桌面窗口的子窗口, 包括:
通过所述第二桌面窗口的句柄, 将所述第一桌面窗口设置为所述第 二桌面窗口的子窗口。
12、 根据权利要求 10或 11所述的方法, 其特征在于, 所述监听到 所述触发事件之后, 根据当前桌面窗口以及所述第一桌面窗口与第二桌 面窗口之间的相对关系, 进行桌面切换, 包括:
监听到所述触发事件之后,判断当前桌面窗口是否为第二桌面窗口, 如果是, 通知所述第一桌面窗口覆盖在所述第二桌面窗口进行显示; 或 者, 判断当前桌面窗口是否为第一桌面窗口, 如果是, 通知所述第一桌 面窗口在所述第二桌面窗口进行隐藏, 并显示所述第二桌面窗口。
13、 根据权利要求 2所述的方法, 其特征在于, 当桌面切换到所述 第一桌面窗口之后, 所述方法还包括:
停靠控制器检测所述用户在所述第一桌面窗口触发应用的指令, 并 触发相应的应用触发事件;
桌面管理器监测到所述应用触发事件之后, 通过所述应用的标识调 用任务管理器运行所述应用;
所述任务管理器根据所述应用的标识查询所述应用是否已经运行, 如果已经运行, 则不加载所述应用, 如果没有运行, 通过所述应用的标 识调用应用加载器加载所述应用;
当加载所述应用时, 所述应用加载器根据所述应用的标识查找所述 应用对应的代码文件, 并加载所述代码文件。
14、 根据权利要求 2所述的桌面切换方法, 其特征在于, 所述第一 桌面窗口为桌面管理平台的桌面窗口; 所述第二桌面窗口为操作系统的 桌面窗口。
15、 根据权利要求 1所述的桌面切换方法, 其特征在于, 该方法被 数据处理指令所执行, 而且该数据处理指令被存储于存储介质中。
16、 一种桌面切换装置, 其特征在于, 所述装置包括:
框架入口模块, 用于生成第一桌面窗口; 根据第一桌面窗口与第二 桌面窗口之间的相对关系, 对所述第一桌面窗口进行设置;
桌面管理器, 用于根据当前桌面窗口以及所述第一桌面窗口与第二 桌面窗口之间的相对关系, 进行桌面切换。
17、根据权利要求 16所述的桌面切换装置, 其特征在于, 所述装置 进一步包括停靠控制器;
停靠控制器, 用于检测用户切换桌面的触发指令, 并触发所述触发 指令对应的触发事件;
桌面管理器, 用于监听到所述触发事件之后, 根据当前桌面窗口以 及所述第一桌面窗口与第二桌面窗口之间的相对关系, 进行桌面切换。
18、根据权利要求 17所述的装置,其特征在于,所述框架入口模块, 用于将第一桌面窗口设置为与第二桌面窗口是相互并列的桌面窗口。
19、根据权利要求 18所述的装置,其特征在于,所述框架入口模块, 在根据第一桌面窗口与第二桌面窗口之间的相对关系, 对所述第一桌面 窗口进行设置时, 具体用于: 设置所述第一桌面窗口为顶层窗口;
设置所述第一桌面窗口覆盖在所述第二桌面窗口之上, 并且位于应 用程序对应的普通窗口之下;
设置所述第一桌面窗口在响应所述第一桌面窗口的窗口消息时, 返 回无激活消息, 所述无激活消息用于在用户触发所述第一桌面窗口时, 所述第一桌面窗口位于所述普通窗口之下, 不会被激活到所述普通窗口 之上;
设置所述第一桌面窗口上的所有子控件都是绘制且无窗口化的, 所 述子控件被设置为绘制且无窗口化用于在用户触发所述第一桌面窗口 上的子控件时, 所述第一桌面窗口仍位于所述普通窗口之下, 不会被激 活到所述普通窗口之上;
所述第一桌面窗口, 去掉标题属性, 保留窗口客户区; 加上工具窗 口属性, 去掉窗口任务栏显示; 将窗口大小设置成屏幕桌面的尺寸。
20、 根据权利要求 18-19任一权利要求所述的装置, 其特征在于, 所述桌面管理器, 具体用于:
监听到所述触发事件之后, 抓取第一桌面和第二桌面的截图, 将第 一桌面截图和第二桌面截图拼接成一个并列的截图;
如果当前桌面窗口是第二桌面, 通过动画方式挤去第二桌面, 并将 第一桌面显示在第一桌面窗口; 或者, 如果当前桌面窗口是第一桌面, 通过动画方式挤去第一桌面, 并将第二桌面显示在第二桌面窗口。
21、根据权利要求 16所述的装置,其特征在于,所述框架入口模块, 用于将第一桌面窗口设置为第二桌面窗口的子窗口。
22、根据权利要求 21所述的装置, 其特征在于, 所述框架入口模块 在根据第一桌面窗口与第二桌面窗口之间的相对关系, 对所述第一桌面 窗口进行设置时, 具体用于: 查找第二桌面窗口;
将所述第一桌面窗口设置为所述第二桌面窗口的子窗口。
23、根据权利要求 22所述的装置, 其特征在于, 所述框架入口模块 在根据第一桌面窗口与第二桌面窗口之间的相对关系, 对所述第一桌面 窗口进行设置, 具体用于:
通过所述第二桌面窗口的句柄, 将所述第一桌面窗口设置为所述第 二桌面窗口的子窗口。
24、 根据权利要求 21、 22或 23所述的装置, 其特征在于, 所述桌 面管理器, 具体用于:
监听到所述触发事件之后,判断当前桌面窗口是否为第二桌面窗口, 如果是, 通知所述第一桌面窗口覆盖在所述第二桌面窗口进行显示; 或 者, 判断当前桌面窗口是否为第一桌面窗口, 如果是, 通知所述第一桌 面窗口在所述第二桌面窗口进行隐藏, 并显示所述第二桌面窗口。
25、 根据权利要求 16所述的装置, 其特征在于, 所述装置还包括: 任务管理器和应用加载器;
当桌面切换到所述第一桌面窗口之后,
停靠控制器, 还用于检测所述用户在所述第一桌面窗口触发一应用 的指令, 并触发相应的应用触发事件;
桌面管理器, 还用于监测到所述应用触发事件之后, 通过所述应用 的标识调用任务管理器运行所述应用;
所述任务管理器, 用于根据所述应用的标识查询所述应用是否已经 运行, 如果已经运行, 则不加载所述应用, 如果没有运行, 通过所述应 用的标识调用应用加载器加载所述应用;
当加载所述应用时, 所述应用加载器, 用于 ^据所述应用的标识查 找所述应用对应的代码文件, 并加载所述代码文件。
26、 一种桌面切换系统, 其特征在于, 该桌面切换系统包括桌面切 换装置和服务器, 其中:
桌面切换装置, 用于生成第一桌面窗口, 根据第一桌面窗口与第二 桌面窗口之间的相对关系, 对所述第一桌面窗口进行设置; 检测用户切 换桌面的触发指令, 并触发所述触发指令对应的触发事件; 监听到所述 触发事件之后, 根据当前桌面窗口以及所述第一桌面窗口与第二桌面窗 口之间的相对关系, 进行桌面切换; 并向服务器发送用户数据同步更新 请求;
服务器, 用于存储用户数据, 并响应于桌面切换装置发送来的用户 数据同步更新请求, 向桌面切换装置返回用户数据。
PCT/CN2012/078169 2011-07-06 2012-07-04 桌面切换方法、装置和系统 WO2013004183A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/147,781 US20140143708A1 (en) 2011-07-06 2014-01-06 Desktop Switching Method And Device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110188336.1 2011-07-06
CN201110188336.1A CN102866907B (zh) 2011-07-06 2011-07-06 桌面切换方法和装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/147,781 Continuation US20140143708A1 (en) 2011-07-06 2014-01-06 Desktop Switching Method And Device

Publications (1)

Publication Number Publication Date
WO2013004183A1 true WO2013004183A1 (zh) 2013-01-10

Family

ID=47436516

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/078169 WO2013004183A1 (zh) 2011-07-06 2012-07-04 桌面切换方法、装置和系统

Country Status (3)

Country Link
US (1) US20140143708A1 (zh)
CN (1) CN102866907B (zh)
WO (1) WO2013004183A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9075566B2 (en) 2012-03-02 2015-07-07 Microsoft Technoogy Licensing, LLC Flexible hinge spine
US9158383B2 (en) 2012-03-02 2015-10-13 Microsoft Technology Licensing, Llc Force concentrator
US20130300590A1 (en) 2012-05-14 2013-11-14 Paul Henry Dietz Audio Feedback
CN103530019B (zh) * 2013-10-11 2016-09-28 广州华多网络科技有限公司 一种切换窗口的方法和装置
US10324733B2 (en) 2014-07-30 2019-06-18 Microsoft Technology Licensing, Llc Shutdown notifications
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US9787576B2 (en) 2014-07-31 2017-10-10 Microsoft Technology Licensing, Llc Propagating routing awareness for autonomous networks
US10338765B2 (en) 2014-09-05 2019-07-02 Microsoft Technology Licensing, Llc Combined switching and window placement
US20160132992A1 (en) 2014-11-06 2016-05-12 Microsoft Technology Licensing, Llc User interface scaling for devices based on display size
US10949075B2 (en) 2014-11-06 2021-03-16 Microsoft Technology Licensing, Llc Application command control for small screen display
CN104965702B (zh) * 2015-06-15 2017-08-25 广东欧珀移动通信有限公司 一种智能终端的多窗口运行方法、装置及智能终端
CN106990887A (zh) * 2016-01-21 2017-07-28 阿里巴巴集团控股有限公司 信息输入方法、装置及终端设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1690927A (zh) * 2004-04-23 2005-11-02 千乡万才科技(中国)有限公司 计算机屏幕窗口切换方法及接口
CN1904821A (zh) * 2005-07-25 2007-01-31 联想(北京)有限公司 一种多显示器系统及其窗口切换方法
JP2008077415A (ja) * 2006-09-21 2008-04-03 Toshiba Information Systems (Japan) Corp モデルベース開発補助ブロック、シミュレーションシステム及び自動コード生成方法
CN102063281A (zh) * 2011-01-14 2011-05-18 广东威创视讯科技股份有限公司 快速切换窗口布局方法及快速切换窗口布局系统

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0717344B1 (en) * 1994-12-13 2001-10-31 Microsoft Corporation Taskbar with start menu
US5790127A (en) * 1996-05-03 1998-08-04 Intel Corporation Supervising activations states in application sharing
US5835090A (en) * 1996-10-16 1998-11-10 Etma, Inc. Desktop manager for graphical user interface based system with enhanced desktop
US5910802A (en) * 1997-06-11 1999-06-08 Microsoft Corporation Operating system for handheld computing device having taskbar auto hide
US20110271226A1 (en) * 2001-06-08 2011-11-03 Real Enterprise Solutions Nederland B.V. Integrated Icon View in a Server-Based Computing Environment
US7010755B2 (en) * 2002-04-05 2006-03-07 Microsoft Corporation Virtual desktop manager
US7403211B2 (en) * 2003-02-13 2008-07-22 Lumapix, Inc. Method and system for interactive region segmentation
WO2004104982A1 (en) * 2003-05-14 2004-12-02 Collaborative Sciences And Technology, Inc. Persistent portal
US10152190B2 (en) * 2003-12-15 2018-12-11 Open Invention Network, Llc Systems and methods for improved application sharing in a multimedia collaboration session
US8532282B2 (en) * 2004-06-14 2013-09-10 At&T Intellectual Property I, L.P. Tracking user operations
US7523413B2 (en) * 2004-06-14 2009-04-21 At&T Intellectual Property I, L.P. Organizing session applications
US7607090B2 (en) * 2004-06-14 2009-10-20 At&T Intellectual Property I, L.P. Frameless data presentation
US20050278655A1 (en) * 2004-06-14 2005-12-15 Sims Lisa K Multiple application viewing
US7590945B2 (en) * 2004-06-14 2009-09-15 At&T Intellectual Property I, L.P. Viewing applications from inactive sessions
US20050278650A1 (en) * 2004-06-14 2005-12-15 Sims Lisa K Floating user interface
US7490299B2 (en) * 2004-06-30 2009-02-10 International Business Machines Corporation System and method for handling unexpected focus change messages in a computing device
US20070094597A1 (en) * 2004-11-04 2007-04-26 Rostom Mohamed A Dynamic graphical user interface for a desktop environment
US20060095865A1 (en) * 2004-11-04 2006-05-04 Rostom Mohamed A Dynamic graphical user interface for a desktop environment
US8639812B2 (en) * 2005-04-12 2014-01-28 Belkin International, Inc. Apparatus and system for managing multiple computers
US20060248471A1 (en) * 2005-04-29 2006-11-02 Microsoft Corporation System and method for providing a window management mode
US7928959B1 (en) * 2005-05-05 2011-04-19 Imi Innovations Inc. System and method for multiple independent computer inputs using unique device and source identification systems
US8578290B2 (en) * 2005-08-18 2013-11-05 Microsoft Corporation Docking and undocking user interface objects
US7663620B2 (en) * 2005-12-05 2010-02-16 Microsoft Corporation Accessing 2D graphic content using axonometric layer views
US20070143702A1 (en) * 2005-12-21 2007-06-21 Fabio Maggi Method, Computer Program, and System Improving the Graphical User Interface of a Desktop
US20070180398A1 (en) * 2006-01-30 2007-08-02 Mcardle James M Window cleanup via desktop icon
US8296684B2 (en) * 2008-05-23 2012-10-23 Hewlett-Packard Development Company, L.P. Navigating among activities in a computing device
US7676761B2 (en) * 2006-06-30 2010-03-09 Microsoft Corporation Window grouping
US10503342B2 (en) * 2006-08-04 2019-12-10 Apple Inc. User interface spaces
US20080307362A1 (en) * 2007-06-08 2008-12-11 Apple Inc. Desktop Filter
JP4971203B2 (ja) * 2008-01-07 2012-07-11 株式会社エヌ・ティ・ティ・ドコモ 情報処理装置及びプログラム
US8356258B2 (en) * 2008-02-01 2013-01-15 Microsoft Corporation Arranging display areas utilizing enhanced window states
US20090204915A1 (en) * 2008-02-08 2009-08-13 Sony Ericsson Mobile Communications Ab Method for Switching Desktop Panels in an Active Desktop
US20090204925A1 (en) * 2008-02-08 2009-08-13 Sony Ericsson Mobile Communications Ab Active Desktop with Changeable Desktop Panels
CN101770399B (zh) * 2009-01-05 2014-04-23 联想(北京)有限公司 一种电子设备及切换其操作系统桌面的方法、装置
US8621387B2 (en) * 2009-06-08 2013-12-31 Apple Inc. User interface for multiple display regions
US9400659B2 (en) * 2009-09-29 2016-07-26 Verizon Patent And Licensing Inc. Graphical user interface window attachment
US9268466B2 (en) * 2009-12-09 2016-02-23 Citrix Systems, Inc. Methods and systems for updating a dock with a user interface element representative of a remote application
US9116594B2 (en) * 2010-01-19 2015-08-25 Lg Electronics Inc. Mobile terminal and control method thereof
US8560960B2 (en) * 2010-11-23 2013-10-15 Apple Inc. Browsing and interacting with open windows
US9069577B2 (en) * 2010-11-23 2015-06-30 Apple Inc. Grouping and browsing open windows
CN102004610A (zh) * 2010-12-02 2011-04-06 无敌科技(西安)有限公司 以拖曳行为执行或结束程序的使用者界面、系统及其方法
US9003291B2 (en) * 2010-12-23 2015-04-07 Microsoft Technology Licensing, Llc Private pinning including task bar pinning and jump list task and item launching
US20120173986A1 (en) * 2011-01-04 2012-07-05 Motorola-Mobility, Inc. Background synchronization within a multi-environment operating system
US20120278747A1 (en) * 2011-04-28 2012-11-01 Motorola Mobility, Inc. Method and apparatus for user interface in a system having two operating system environments
US20120311457A1 (en) * 2011-06-06 2012-12-06 Cisco Technology, Inc. Merging Remote and Local Interfaces for Application Integration

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1690927A (zh) * 2004-04-23 2005-11-02 千乡万才科技(中国)有限公司 计算机屏幕窗口切换方法及接口
CN1904821A (zh) * 2005-07-25 2007-01-31 联想(北京)有限公司 一种多显示器系统及其窗口切换方法
JP2008077415A (ja) * 2006-09-21 2008-04-03 Toshiba Information Systems (Japan) Corp モデルベース開発補助ブロック、シミュレーションシステム及び自動コード生成方法
CN102063281A (zh) * 2011-01-14 2011-05-18 广东威创视讯科技股份有限公司 快速切换窗口布局方法及快速切换窗口布局系统

Also Published As

Publication number Publication date
US20140143708A1 (en) 2014-05-22
CN102866907B (zh) 2015-11-25
CN102866907A (zh) 2013-01-09

Similar Documents

Publication Publication Date Title
WO2013004183A1 (zh) 桌面切换方法、装置和系统
US10116525B2 (en) Extensible infrastructure for representing networks including virtual machines
CN101770399B (zh) 一种电子设备及切换其操作系统桌面的方法、装置
US20130055092A1 (en) User interface for networks including virtual machines
TWI604375B (zh) 螢幕分享方法以及使用該方法的裝置
US11620034B2 (en) Systems and methods for providing tab previews via an operating system user interface
CN105183495B (zh) 跨操作系统域来协调活动视图
US11334374B2 (en) Modifying readable and focusable elements on a page during execution of automated scripts
US10831331B2 (en) Window control for simultaneously running applications
CN110471591A (zh) 一种交互方法、装置及计算机存储介质
CN105988860A (zh) 执行应用程序的方法及移动装置
US20180196584A1 (en) Execution of multiple applications on a device
US20140351215A1 (en) Application Management Method And Device
WO2014194654A1 (en) Method and apparatus for page view switching
US20180101574A1 (en) Searching index information for application data
CN110780930A (zh) 启动Android系统的方法、装置、电子设备及存储介质
US9880861B2 (en) Method and apparatus for page view switching
WO2023029747A1 (zh) 一种应用单例功能的实现方法和装置
US11249771B2 (en) Terminal input invocation
WO2008069508A1 (en) Portable storage apparatus for providing working environment migration service and method thereof
CN115756690A (zh) 一种桌面窗口显示方法、装置、终端及存储介质
CN115617223A (zh) 切换控制方法、装置、交互智能平板及存储介质
US10019274B2 (en) Menu bar integration in desktop virtualization environments
CN114816203B (zh) 适用于网盘盘符的快捷操作方法、装置、终端及存储介质
WO2021073549A1 (zh) 转屏画面显示方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12808074

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 02/06/2014)

122 Ep: pct application non-entry in european phase

Ref document number: 12808074

Country of ref document: EP

Kind code of ref document: A1