IP Library Granted Patent US 7,996,787
Granted Patent B2
US 7,996,787 · App. 11/702,646 · Granted Aug 9, 2011

Plug-in architecture for window management and desktop compositing effects

Assignee: CPTN Holdings LLC
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,996,787
App. No.
11/702,646
Granted
Aug 9, 2011
Kind
B2
Abstract

A system and method that relates to a plug-in architecture that enables accelerated rendering and compositing of one or more graphical effects instantiated by one or more separate visual effect plug-ins. The plug-in architecture enables setting up visual effects, accepting graphical output requests, customizing visual effects, and/or allowing enhanced graphics rendering for desktop usage, among other things. The invention provides a modular approach to customizing and rendering visual effects. The plug-in architecture enables plug-ins to be exchanged, modified, removed, and added, among other things.

Claims (39)

1. A system for window management and desktop compositing effects, wherein the system comprises:

a plug-in architecture storing a plurality of visual effect plug-ins, wherein the plurality of visual effect plug-ins include visual effect instructions for rendering a plurality of visual effects on a desktop;

a computing device coupled to the plug-in architecture storing the plurality of visual effect plug-ins, wherein the computing device includes a desktop manager configured to:

display the desktop on a screen coupled to the computing device;

receive information relating to one or more events detected on the computing device, wherein the one or more events detected on the computing device relate to at least one window presented on the desktop displayed on the screen coupled to the computing device;

instantiate one or more of the plurality of visual effect plug-ins stored in the plug-in architecture in response to receiving the information relating to the one or more events detected on the computing device, wherein the desktop manager includes one or more pre-configured event bindings that cause the one or more detected events to trigger the one or more instantiated visual effect plug-ins; and

composite the at least one window presented on the desktop displayed on the screen with one or more of the plurality visual effects that are associated with the one or more instantiated visual effect plug-ins, wherein the desktop manager combines the at least one window and the one or more visual effects associated with the instantiated visual effect plug-ins to composite the at least one window;

a graphics card configured to receive one or more visual effect instructions associated with the instantiated visual effect plug-ins from the desktop manager, wherein the one or more visual effect instructions cause the graphics card to render the one or more visual effects combined with the composited window on the desktop displayed on the screen coupled to the computing device; and

a configuration interface coupled to the computing device including the one or more pre-configured event bindings, wherein the configuration interface enables a user to customize the one or more pre-configured event bindings for the one or more instantiated visual effect plug-ins.

2. The system of claim 1 , wherein the plurality of visual effects associated with the plurality of visual effect plug-ins comprise one or more of decoration, fade, wobble, minimize, cube, rotate, zoom, scale, move, resize, place, or switcher visual effects.

3. The system of claim 1 , wherein the configuration interface further includes one or more properties associated with the one or more instantiated visual effect plug-ins.

4. The system of claim 3 , wherein the one or more visual effect instructions further cause the graphics card to render the one or more visual effects with the one or more properties associated with the one or more instantiated visual effect plug-ins.

5. The system of claim 3 , wherein the one or more pre-configured event bindings include one or more key bindings, mouse bindings, or application bindings that associate events occurring on the computing device with the plurality of visual effect plug-ins stored in the plug-in architecture.

6. The system of claim 3 , wherein the one or more properties associated with the one or more instantiated visual effect plug-ins further cause the graphics card to configure a speed for the rendered visual effects, a placement for the composited window on the desktop, an opacity for the composited window while the composited window moves on the desktop, or a shadow size for the composited window on the desktop.

7. The system of claim 1 , wherein the configuration interface enables adding new visual effect plug-ins to plurality of visual effect plug-ins in the plug-in architecture, deleting one or more of the plurality of visual effect plug-ins from the plug-in architecture, and editing the plurality of visual effect plugs-ins in the plug-in architecture.

8. The system of claim 1 , wherein one or more of the plurality of visual effect plug-ins stored in the plug-in architecture are provided by a third party.

9. The system of claim 1 , wherein the graphics card includes a 3D accelerator that renders the one or more visual effects combined with the composited window.

10. The system of claim 1 , wherein the one or more visual effect instructions include hardware instructions that further cause the graphics card to hardware render the one or more visual effects combined with the composited window.

11. The system of claim 1 , wherein the desktop manager is further configured to identify at least one of the plurality of visual effects plug-ins stored in the plug-in architecture that depends on one or more of the instantiated visual effect plug-ins, wherein the desktop manager further combines the at least one window with one or more of the plurality of visual effects that are associated with the identified visual effect plug-in that depends on one or more of the instantiated visual effect plug-ins to composite the at least one window.

12. The system of claim 11 , wherein the one or more visual effects associated with the instantiated visual effect plug-ins include a cube visual effect and the one or more visual effects associated with the identified visual effect plug-in include a rotate visual effect for manipulating the cube visual effect.

13. A method for window management and desktop compositing effects, comprising:

storing a plurality of visual effect plug-ins in a plug-in architecture coupled to a computing device, wherein the plurality of visual effect plug-ins include visual effect instructions for rendering a plurality of visual effects on a desktop;

displaying the desktop on a screen coupled to the computing device;

receiving information relating to one or more events detected on the computing device, wherein the one or more events detected on the computing device relate to at least one window presented on the desktop displayed on the screen coupled to the computing device;

instantiating one or more of the plurality of visual effect plug-ins stored in the plug-in architecture in response to receiving the information relating to the one or more events detected on the computing device, wherein one or more pre-configured event bindings cause the one or more detected events to trigger one or more instantiated visual effect plug-ins;

compositing the at least one window presented on the desktop displayed on the screen with one or more of the plurality visual effects that are associated with the one or more instantiated visual effect plug-ins, wherein compositing the at least one window includes combining the at least one window and the one or more visual effects associated with the instantiated visual effect plug-ins; and

transmitting one or more visual effect instructions associated with the instantiated visual effect plug-ins to a graphics card coupled to the computing device, wherein the one or more visual effect instructions cause the graphics card to render the one or more visual effects combined with the composited window on the desktop displayed on the screen coupled to the computing device;

wherein a configuration interface coupled to the computing device includes the one or more pre-configured event bindings that enable a user to customize the one or more pre-configured event bindings for the one or more instantiated visual effect plug-ins.

14. The method of claim 13 , wherein the plurality of visual effects associated with the plurality of visual effect plug-ins comprise one or more of decoration, fade, wobble, minimize, cube, rotate, zoom, scale, move, resize, place, or switcher visual effects.

15. The method of claim 13 , wherein the configuration interface further includes one or more properties associated with the one or more instantiated visual effect plug-ins.

16. The method of claim 15 , wherein the one or more visual effect instructions further cause the graphics card to render the one or more visual effects with the one or more properties associated with the one or more instantiated visual effect plug-ins.

17. The method of claim 15 , wherein the one or more pre-configured event bindings include one or more key bindings, mouse bindings, or application bindings that associate events occurring on the computing device with the plurality of visual effect plug-ins stored in the plug-in architecture.

18. The method of claim 15 , wherein the one or more properties associated with the one or more instantiated visual effect plug-ins further cause the graphics card to configure a speed for the rendered visual effects, a placement for the composited window on the desktop, an opacity for the composited window while the composited window moves on the desktop, or a shadow size for the composited window on the desktop.

19. The method of claim 13 , wherein the configuration interface enables adding new visual effect plug-ins to plurality of visual effect plug-ins in the plug-in architecture, deleting one or more of the plurality of visual effect plug-ins from the plug-in architecture, and editing the plurality of visual effect plugs-ins in the plug-in architecture.

20. The method of claim 13 , wherein one or more of the plurality of visual effect plug-ins stored in the plug-in architecture are provided by a third party.

21. The method of claim 13 , wherein the graphics card includes a 3D accelerator that renders the one or more visual effects combined with the composited window.

22. The method of claim 13 , wherein the one or more visual effect instructions include hardware instructions that further cause the graphics card to hardware render the one or more visual effects combined with the composited window.

23. The method of claim 13 , further comprising identifying at least one of the plurality of visual effects plug-ins stored in the plug-in architecture that depends on one or more of the instantiated visual effect plug-ins, wherein compositing the at least one window further includes combining the at least one window and one or more of the plurality of visual effects that are associated with the identified visual effect plug-in that depends on one or more of the instantiated visual effect plug-ins.

24. The method of claim 23 , wherein the one or more visual effects associated with the instantiated visual effect plug-ins include a cube visual effect and the one or more visual effects associated with the identified visual effect plug-in include a rotate visual effect for manipulating the cube visual effect.

Assignments (7)
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0216 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034470/0680 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0316 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034469/0057 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2012
From: CPTN HOLDINGS LLC
To: APPLE INC.
Reel/Frame 028856/0230 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2012
From: NOVELL, INC.
To: CPTN HOLDINGS LLC
Reel/Frame 028841/0047 →
GRANT OF PATENT SECURITY INTEREST SECOND LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0316 →
GRANT OF PATENT SECURITY INTEREST FIRST LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0216 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2007
From: REVEMAN, DAVID
To: NOVELL, INC.
Reel/Frame 018984/0590 →
Continuity (1)
Related Publication 20080189651A1 · Aug 7, 2008