IP Library Granted Patent US 7,559,034
Granted Patent B1
US 7,559,034 · App. 09/692,498 · Granted Jul 7, 2009

Method and system for using a hyperlink, banner, or graphical icon to initiate the overlaying of an object on a window

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,559,034
App. No.
09/692,498
Granted
Jul 7, 2009
Kind
B1
Abstract

A method and system for overlaying an object in a window of a software application where an overlay plane is composed of at least one object and the overlay plane is overlaid with the window using either a layering feature of the software application or by directly compositing the overlay plane with the window using enhanced functionality not included in the software application. The overlaying of the overlay plane in relation to the window does not depend on a cursor or pointing device designated position but may rather, for example, be arbitrarily placed or may be positioned in proximity to the text or graphic link used to initiate the overlaying process. The method and system may be implemented using a plugin-control for the software application.

Claims (185)

1. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating an overlay plane including the object as a function of the receiving step in a layer, the layer containing the object is defined based on a definition of the window; and

displaying the object, in response to the request, by overlaying the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device that is positioned based on a behavior of a user viewing the window.

2. The method according to claim 1 , wherein the window is a markup language document.

3. The method according to claim 2 , wherein the markup language document is an HTML document.

4. The method according to claim 2 , wherein the markup language document is an XML document.

5. The method according to claim 1 , wherein the software application is a Web browser.

6. The method according to claim 5 , wherein the Web browser is at least one of Netscape Navigator, Netscape Communicator, and Microsoft Internet Explorer.

7. The method according to claim 1 , wherein the receiving step includes receiving the request as a result of the user clicking on a hyperlink.

8. The method according to claim 1 , wherein the receiving step includes receiving the request as a result of the user clicking on a banner.

9. The method according to claim 1 , wherein the receiving step includes receiving the request as a result of the user clicking on a graphical icon.

10. The method according to claim 1 , wherein the receiving step includes receiving the request as a result of the user initiating a click event.

11. The method according to claim 1 , wherein the receiving step includes receiving the request as a result of the user initiating a rollover event.

12. The method according to claim 1 , wherein the receiving step includes receiving the request as a result of the user initiating a timing event.

13. The method according to claim 1 , wherein the receiving step includes receiving the request as a result of the user requesting a new window to be displayed.

14. The method according to claim 13 , wherein the new window is defined by a markup language document.

15. The method according to claim 14 , wherein the markup language document is an HTML document.

16. The method according to claim 14 , wherein the markup language document is an XML document.

17. The method according to claim 1 , wherein the creating step further comprises:

creating an overlay image including the object as a function of the receiving step.

18. The method according to claim 17 , wherein the displaying step further comprises:

displaying the object, in response to the request, by overlaying the created overlay image in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

19. The method according to claim 1 , wherein the overlay plane utilizes semi-transparent edges.

20. The method according to claim 1 , wherein the displaying step includes the step of:

using a transition effect to display the created overlay plane, wherein the transition effect is at least one of a transparent transition, a rotating object transition, a zoom transition, an animation transition, a wipe transition, a page curl transition, and a ripple transition.

21. The method according to claim 1 , wherein the displaying step further comprises:

displaying the object, in response to the request, by overlaying the created overlay plane in the window, wherein the overlay plane is directly composited with the window without using functionality of the software application and wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

22. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating an overlay plane using at least one layer including the object as a function of the receiving step, wherein the layer is created using a layering functionality of the software application and is defined based on a definition of the window; and

displaying the object, in response to the request, by overlaying the layer in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

23. The method according to claim 22 , wherein the layer is a DHTML layer.

24. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving a request for the object to be displayed in the window, the request being included in at least one of the definition of the window and a content for the window;

creating an overlay plane using at least one layer including a reference to the object as a function of the receiving step, wherein the layer is created using a layering functionality of the software application and the layer, defined based on the window definition, is hidden from a user; and displaying the object, in response to the request, by overlaying the layer in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

25. The method according to claim 24 , wherein the displaying step further comprises:

displaying the layer to the user in response to the request by overlaying the layer in the window, wherein the reference to the object initiates the streaming of an object data to the layer and the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

26. The method according to claim 24 , wherein the layer is a DHTML layer.

27. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving a request for the object to be displayed in the window, the request being included in at least one of the definition of the window and a content for the window;

creating an overlay plane using at least one layer including the object as a function of the receiving step, wherein the layer is created using a layering functionality of the software application and the layer, defined based on the window definition, is hidden from a user;

after creating the overlay plane, overlaying the hidden layer over content being displayed in the window and hiding the hidden layer from a user for a specified time period; and

at the end of the specified time period, displaying the object hidden in the layer over the content in the window, wherein the object is viewable by the user and displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

28. The method according to claim 27 , wherein the layer is a DHTML layer.

29. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving, by a plugin-control, a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating, by the plugin-control, an overlay plane including the object as a function of the receiving step, the object is contained in a layer defined by a definition of the window; and

displaying the object in response to the request by overlaying, by the plugin-control, the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

30. The method according to claim 29 , wherein the window is a markup language document.

31. The method according to claim 30 , wherein the markup language document is an HTML document.

32. The method according to claim 30 , wherein the markup language document is an XML document.

33. The method according to claim 29 , wherein the software application is a Web browser.

34. The method according to claim 33 , wherein the Web browser is at least one of Netscape Navigator, Netscape Communicator, and Microsoft Internet Explorer.

35. The method according to claim 29 , wherein the receiving step includes receiving, by the plugin-control, the request as a result of the user clicking on a hyperlink.

36. The method according to claim 29 , wherein the receiving step includes receiving, by the plugin-control, the request as a result of the user clicking on a banner.

37. The method according to claim 29 , wherein the receiving step includes receiving, by the plugin-control, the request as a result of the user clicking on a graphical icon.

38. The method according to claim 29 , wherein the receiving step includes receiving, by the plugin-control, the request as a result of the user initiating a click event.

39. The method according to claim 29 , wherein the receiving step includes receiving, by the plugin-control, the request as a result of the user initiating a rollover event.

40. The method according to claim 29 , wherein the receiving step includes receiving, by the plugin-control, the request as a result of the user initiating a timing event.

41. The method according to claim 29 , wherein the receiving step includes receiving, by the plugin-control, the request as a result of the user requesting a new window to be displayed.

42. The method according to claim 41 , wherein the new window is defined by a markup language document.

43. The method according to claim 42 , wherein the markup language document is an HTML document.

44. The method according to claim 42 , wherein the markup language document is an XML document.

45. The method according to claim 29 , wherein the creating step further comprises:

creating, by the plugin-control, a layer wherein the layer is hidden from the user and the layer includes a reference to the object.

46. The method according to claim 45 , wherein the displaying step further comprises:

displaying the layer to the user in response to the request by overlaying, by the plugin-control, the layer in the window, wherein the reference to the object initiates the streaming of an object data to the layer and wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

47. The method according to claim 46 , wherein the layer is a DHTML layer.

48. The method according to claim 29 , wherein the creating step further comprises:

creating, by the plugin-control, a layer wherein the layer is hidden from the user and the layer includes the object.

49. The method according to claim 48 , wherein the displaying step further comprises:

displaying the layer to the user in response to the request by overlaying, by the plugin-control, the layer in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

50. The method according to claim 49 , wherein the layer is a DHTML layer.

51. The method according to claim 29 , wherein the creating step further comprises:

creating, by the plugin-control, a overlay image including the object as a function of the receiving step.

52. The method according to claim 51 , wherein the displaying step further comprises:

displaying the object in response to the request by overlaying, by the plugin-control, the created overlay image in the window using the software application provided mechanism for the display of layers with the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

53. The method according to claim 51 , wherein the displaying step further comprises:

displaying the object in response to the request by overlaying, by the plugin-control, the created overlay image in the window using a plugin-control provided mechanism for the display of content with the window bypassing the software application provided mechanism for the display of layers, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

54. The method according to claim 29 , wherein the overlay plane utilizes semi-transparent edges.

55. The method according to claim 29 , wherein the displaying step includes the step of:

using a transition effect to display the created overlay plane, wherein the transition effect is at least one of a transparent transition, a rotating object transition, a zoom transition, an animation transition, a wipe transition, a page curl transition, and a ripple transition.

56. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving, by a plugin-control, a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating, by the plugin-control, an overlay plane using at least one layer including the object as a function of the receiving step, wherein the layer is created using a layering functionality of the software application and is defined by a definition of the window; and displaying the object in response to the request by overlaying, by the plugin-control, the layer in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

57. The method according to claim 56 , wherein the displaying step further comprises:

displaying the object in response to the request by overlaying, by the plugin-control, the layer in the window, wherein the layer is overlaid with the window using a software application provided mechanism for a display of layers and wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

58. The method according to claim 57 , wherein the layer is a DHTML layer.

59. The method according to claim 56 , wherein the displaying step further comprises:

displaying the object in response to the request by overlaying, by the plugin-control, the layer in the window, wherein the layer is overlaid in the window using a plugin-control provided mechanism for a display of content in the window bypassing a software application provided mechanism for a display of layers and wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

60. The method according to claim 59 , wherein the layer is a DHTML layer.

61. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving, by a plugin-control, a request for the object, the request being initiated by a behavior of a user viewing the window;

creating, by the plugin-control, an overlay plane including the object as a function of the receiving step; defining a layer using the software application provided functionality, wherein a layer definition is included in a definition of the window and the layer is based on the window definition; placing the created overlay plane in the defined layer; and overlaying, by the plugin-control, the created overlay plane in the window.

62. The method according to claim 61 , wherein the overlaying step further comprises:

overlaying the defined layer with the window, wherein the defined layer is overlaid with the window using the software application provided mechanism for the display of layers.

63. The method according to claim 62 , wherein the layer is a DHTML layer.

64. The method according to claim 61 , wherein the overlaying step further comprises:

overlaying the defined layer with the window, wherein the defined layer is overlaid with the window using a plugin-control provided mechanism for the display of the object in the layer with a window bypassing the software application provided mechanism for the display of layers.

65. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving, by a plugin-control, a request for the object, the request being initiated by a behavior of a user viewing the window;

creating, by the plugin-control, an overlay plane including the object as a function of the receiving step;

defining a layer using the software application provided functionality, wherein the layer definition is included in the definition of the window, the layer is hidden from the user, the layer is defined on the window definition, and the layer includes a reference to the object;

placing the created overlay plane in the defined layer; and

overlaying, by the plugin-control, the created overlay plane in the window.

66. The method according to claim 65 , wherein the overlaying step further comprises:

displaying the defined layer to the user, wherein the reference to the object initiates the streaming of the object data to the defined layer which is overlaid with the window using the software application provided mechanism for the display of layers.

67. The method according to claim 66 , wherein the layer is a DHTML layer.

68. The method according to claim 65 , wherein the overlaying step further comprises:

displaying the defined layer to the user, wherein the reference to the object initiates the streaming of the object data to the defined layer which is overlaid with the window using a plugin-control provided mechanism for the display of content with a window bypassing the software application provided mechanism for the display of layers.

69. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving, by a plugin-control, a request for the object, the request being initiated by a behavior of a user viewing the window;

creating, by the plugin-control, an overlay plane including the object as a function of the receiving step;

defining a layer using the software application provided functionality, wherein a layer definition is included in a definition of the window, the layer is hidden from the user, the layer is defined on the window definition, and the layer includes the object;

placing the created overlay plane in the defined layer; and

overlaying, by the plugin-control, the created overlay plane in the window.

70. The method according to claim 69 , wherein the overlaying step further comprises:

displaying the defined layer to the user, wherein the defined layer is overlaid with the window using the software application provided mechanism for the display of layers.

71. The method according to claim 70 , wherein the layer is a DHTML layer.

72. The method according to claim 69 , wherein the overlaying step further comprises:

displaying the defined layer to the user, wherein the defined layer is overlaid with the window using a plugin-control provided mechanism for the display of content with a window bypassing the software application provided mechanism for the display of layers.

73. A system for overlaying an object in a window of a software application, comprising:

a program memory;

a storage device; and

a processor, wherein the processor is adapted to:

(i) receive a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

(ii) create an overlay plane including the object as a function of the receiving step, the object contained in a layer that is defined based on a definition of the window; and

(iii) display the object, in response to the request, by overlaying the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

74. The system according to claim 73 , further including:

a browser program and a browser plugin-control, executing in the processor, the browser plugin-control causing the processor to:

(i) receive a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

(ii) create an overlay plane including the object as a function of the receiving step; and

(iii) display the object, in response to the request, by overlaying the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

75. The system according to claim 74 , wherein the browser program is at least one of Netscape Navigator, Netscape Communicator, and Microsoft Internet Explorer.

76. The system according to claim 74 , wherein the browser plugin-control is defined using the Netscape Application Programming Interface (API).

77. The system according to claim 74 , wherein the browser plugin-control is at least one of a Netscape Navigator plugin and a Netscape Communicator plugin.

78. The system according to claim 74 , wherein the browser plugin-control is an ActiveX control.

79. A computer-readable medium storing a set of instructions, the set of instructions capable of being executed by a processor to implement a method for overlaying an object in a window of a software application, the method comprising the steps of:

receiving a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating an overlay plane including the object as a function of the receiving step, the object contained in a layer that is defined based on a definition of the window; and

displaying the object, in response to the request, by overlaying the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

80. A computer-readable medium storing a set of instructions, the set of instructions capable of being executed by a processor to implement a method for overlaying an object in a window of a software application, the method comprising the steps of:

receiving, by a plugin-control, a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating, by the plugin-control, an overlay plane including the object as a function of the receiving step, the object contained in a layer that is defined based on a definition of the window; and

displaying the object in response to the request by overlaying, by the plugin-control, the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device.

81. A method for initiating the overlaying of an object in a window of a software application, comprising the steps of:

clicking by a user an element of the window;

creating a layer as a function of the clicking step, wherein the layer includes the object and is defined based on a definition of the window; and

displaying the object by overlaying the created layer in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device and wherein the layer is directly composited in the window without using a layering feature of the software application.

82. The method according to claim 81 , wherein the window is a Web page.

83. The method according to claim 81 , wherein the software application is a Web browser.

84. The method according to claim 83 , wherein the Web browser is at least one of Netscape Navigator, Netscape Communicator, and Microsoft Internet Explorer.

85. The method according to claim 81 , wherein the clicking step includes clicking by a user a hyperlink in the window.

86. The method according to claim 81 , wherein the clicking step includes clicking by a user a banner in the window.

87. The method according to claim 81 , wherein the clicking step includes clicking by a user a graphical icon in the window.

88. The method according to claim 81 , wherein the clicking step includes clicking by a user a hot spot on the window.

89. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating an overlay plane including the object as a function of the receiving step, the object contained in a layer that is defined based on a definition of the window; and

displaying the object, in response to the request, by overlaying the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device and wherein the overlay plane is directly composited in the window without using a layering feature of the software application.

90. A medium storing a set of instructions, the set of instructions capable of being executed by a processor to implement a method for overlaying an object in a window of a software application, the method comprising the steps of:

receiving a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating an overlay plane including the object as a function of the receiving step; and

displaying the object, in response to the request, by overlaying the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device and wherein the overlay plane is directly composited in the window without using a layering feature of the software application.

91. A method for overlaying an object in a window of a software application, comprising the steps of:

receiving, by a plugin-control, a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating, by the plugin-control, an overlay plane including the object as a function of the receiving step; and

displaying the object in response to the request by overlaying, by the plugin-control, the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device and wherein the overlay plane is directly composited in the window without using a layering feature of the software application.

92. A medium storing a set of instructions, the set of instructions capable of being executed by a processor to implement a method for overlaying an object in a window of a software application, the method comprising the steps of:

receiving, by a plugin-control, a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

creating, by the plugin-control, an overlay plane including the object as a function of the receiving step; and

displaying the object in response to the request by overlaying, by the plugin-control, the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device and wherein the overlay plane is directly composited in the window without using a layering feature of the software application.

93. A system for overlaying an object in a window of a software application, comprising:

a program memory;

a storage device; and

a processor, wherein the processor is adapted to:

(i) receive a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

(ii) create an overlay plane including the object as a function of the receiving step; and

(iii) display the object, in response to the request, by overlaying the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device and wherein the overlay plane is directly composited in the window without using a layering feature of the software application.

94. The system according to claim 93 , further including:

a browser program and a browser plugin-control, executing in the processor, the browser plugin-control causing the processor to:

(i) receive a request for the object to be displayed in the window, the request being initiated by a behavior of a user viewing the window;

(ii) create an overlay plane including the object as a function of the receiving step; and

(iii) display the object, in response to the request, by overlaying the created overlay plane in the window, wherein the object is displayed in a predetermined location relative to the window that is independent of a location of a pointing device and wherein the overlay plane is directly composited in the window without using a layering feature of the software application.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2019
From: SIZMEK TECHNOLOGIES, INC.
To: ANDREAS ACQUISITION LLC
Reel/Frame 050568/0868 →
SECURITY INTEREST Recorded Aug 7, 2018
From: SIZMEK TECHNOLOGIES, INC.; X PLUS ONE SOLUTIONS, INC.; ROCKET FUEL INC.
To: CERBERUS BUSINESS FINANCE, LLC
Reel/Frame 046730/0579 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Sep 15, 2017
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: SIZMEK TECHNOLOGIES, INC.; POINT ROLL, INC.
Reel/Frame 043735/0013 →
ASSIGNMENT FOR SECURITY - PATENTS Recorded Sep 6, 2017
From: SIZMEK TECHNOLOGIES, INC.; POINT ROLL, INC.; ROCKET FUEL INC.
To: CERBERUS BUSINESS FINANCE, LLC, AS COLLATERAL AGENT
Reel/Frame 043767/0793 →
RELEASE OF SECURITY INTEREST AT REEL/FRAME: 026653/0275 Recorded Nov 11, 2016
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: SIZMEK TECHNOLOGIES, INC., AS SUCCESSOR TO IN INTEREST TO DIGITAL GENERATION, INC., F/K/A DG FASTCHANNEL, INC.
Reel/Frame 040600/0067 →
RELEASE OF SECURITY INTEREST Recorded Oct 27, 2016
From: BANK OF MONTREAL
To: SIZMEK TECHNOLOGIES, INC. (SUCCESSOR IN INTEREST TO ENLIVEN MARKETING TECHNOLOGIES CORPORATION)
Reel/Frame 040151/0988 →
PATENT SECURITY AGREEMENT Recorded Sep 30, 2016
From: SIZMEK TECHNOLOGIES, INC.; POINT ROLL, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 040184/0582 →
CHANGE OF NAME Recorded Feb 20, 2014
From: DG FASTCHANNEL, INC.
To: DIGITAL GENERATION, INC.
Reel/Frame 032288/0595 →
MERGER Recorded Feb 20, 2014
From: ENLIVEN MARKETING TECHNOLOGIES CORPORATION
To: DG FASTCHANNEL, INC.
Reel/Frame 032254/0168 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 10, 2014
From: DIGITAL GENERATION, INC.
To: SIZMEK TECHNOLOGIES, INC.
Reel/Frame 032179/0782 →