IP Library Granted Patent US 7,904,823
Granted Patent B2
US 7,904,823 · App. 10/391,073 · Granted Mar 8, 2011

Transparent windows methods and apparatus therefor

Assignee: Oracle International Corporation
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,904,823
App. No.
10/391,073
Granted
Mar 8, 2011
Kind
B2
Abstract

A method for optimizing pen-based annotations on a non-pen enabled window. The method includes starting a visible non-pen-enabled window further including position indicia and size indicia; starting a transparent pen-enabled window; and associating the visible non-pen-enabled window with the transparent pen-enabled window based on the position indicia and size indicia. The method further includes aligning the transparent pen-enabled window with the visible non-pen-enabled window, and accepting user input comprising a message. If the message further includes pen indicia, the method also includes forwarding the message to the transparent pen-enabled window. Else, the method includes forwarding the message to the first application.

Claims (66)

1. A method of optimizing pen-based annotations on a non-pen enabled window comprising:

providing a first application associated with a visible non-pen-enabled window including position indicia, size indicia, and order indicia;

providing a second application associated with a transparent pen-enabled window including position indicia, size indicia, and order indicia;

associating said visible non-pen-enabled window with said transparent pen-enabled window based on said position indicia and size indicia;

receiving a first user input from a first input source of a plurality of input sources, the plurality of input sources including a pen input device and a non-pen input device;

accepting the first user input;

determining a source of the first user input;

forwarding said first user input to said second application using the transparent pen-enabled window and adjusting the order indicia of at least one of the visible non-pen-enabled window or the transparent pen-enabled window to position the transparent pen-enabled window over the visible non-pen-enabled window in response to determining that the source of the first user input is the pen input device;

receiving a second user input from a second input source of the plurality of input sources;

accepting the second user input;

determining a source of the second user input; and

forwarding said second user input to the first application using the visible non-pen-enabled window and adjusting the order indicia of at least one of the visible non-pen-enabled window or the transparent pen-enabled window to position the visible non-pen-enabled window over the transparent pen-enabled window in response to determining that the source of the second user input is the non-pen input device.

2. The method of claim 1 , where said transparent pen-enabled window comprises a transparent control.

3. The method of claim 2 , where said non-pen enabled window comprises a non-transparent control of a collaborative application.

4. The method of claim 3 , where said non-pen enabled window comprises a button.

5. The method of claim 4 , where said non-pen enabled window comprises a browser.

6. The method of claim 4 , where said non-pen enabled window comprises a menu.

7. The method of claim 1 further comprising registering the second application with an operating system for receiving pen messages.

8. The method of claim 7 wherein pen messages describe pen angle, writing surface pressure, or pen speed.

9. A method of optimizing pen-based annotations on a non-pen enabled window comprising:

providing a visible non-pen-enabled window including position indicia and size indicia;

providing a transparent pen-enabled window including position indicia and size indicia;

accepting user input;

receiving a first user input from a first input source of a plurality of input sources, the plurality of input sources including a pen input device and a non-pen input device;

determining a source of the first user input;

aligning the transparent pen-enabled window over the visible non-pen-enabled window based on the position indicia and the size indicia;

forwarding the first user input to a first handler of an application, the first handler configured to process pen messages in response to determining that the source of the first user input is the pen input device;

receiving a second user input from a second input source of the plurality of input sources;

determining a source of the second user input; and

forwarding the second user input to a second handler of the application, the second handler configured to process non-pen messages and moving said transparent pen-enabled window such that said transparent pen-enabled window is no longer aligned over said visible non-pen-enabled window in response to determining that the source of the second user input is the non-pen input device.

10. The method of claim 9 , where said transparent pen-enabled window comprises a transparent control.

11. The method of claim 9 , where said non-pen enabled window comprises a non-transparent control of a collaborative application.

12. The method of claim 11 , wherein said moving said transparent pen-enabled window includes at least one of placing said transparent pen-enabled window in a lower Z-order than said visible non-pen-enabled window and removing said transparent pen-enabled window from a visible desktop.

13. The method of claim 12 , where said non-pen enabled window comprises a browser.

14. The method of claim 13 , where said non-pen enabled window comprises a menu.

15. An apparatus for optimizing pen-based annotations on a non-pen enabled window comprising:

a means of providing a first application associated with a visible non-pen-enabled window including position indicia, size indicia, and order indicia;

a means of providing a second application associated with a transparent pen-enabled window including position indicia, size indicia, and order indicia;

a means of associating said visible non-pen-enabled window with said transparent pen-enabled window based on said position indicia and size indicia;

a means of receiving a first user input from a first input source of a plurality of input sources, the plurality of input sources including a pen input device and a non-pen input device;

a means of accepting the first user input;

a means of determining a source of the first user input;

a means of forwarding said first user input to said second application using the transparent pen-enabled window and adjusting the order indicia of at least one of the visible non-pen-enabled window or the transparent pen-enabled window to position the transparent pen-enabled window over the visible non-pen-enabled window in response to determining that the source of the first user input is the pen input device;

a means of receiving a second user input from a second input source of the plurality of input sources;

a means of accepting the second user input;

a means of determining a source of the second user input; and

a means of forwarding said second user input to the first application using the visible non-pen-enabled window and adjusting the order indicia of at least one of the visible non-pen-enabled window or the transparent pen-enabled window to position the visible non-pen-enabled window over the transparent pen-enabled window in response to determining that the source of the second user input is the non-pen input device.

16. The apparatus of claim 15 , where said transparent pen-enabled window comprises a transparent control.

17. The apparatus of claim 15 , where said non-pen enabled window comprises a control.

18. The apparatus of claim 15 , where said non-pen enabled window comprises a button.

19. The apparatus of claim 15 , where said non-pen enabled window comprises a browser.

20. The apparatus of claim 15 , where said non-pen enabled window comprises a menu.

21. An apparatus for optimizing pen-based annotations on a non-pen enabled window comprising:

a means of providing a visible non-pen-enabled window including position indicia and size indicia;

a means of providing a transparent pen-enabled window including position indicia and size indicia;

a means of accepting user input;

a means of receiving a first user input from a first input source of a plurality of input sources, the plurality of input sources including a pen input device and a non-pen input device;

a means of determining a source of the first user input;

a means of aligning the transparent pen-enabled window over the visible non-pen-enabled window based on the position indicia and the size indicia;

a means of forwarding the first user input to a first handler of an application, the first handler configured to process pen messages in response to determining that the source of the first user input is the pen input device;

a means of receiving a second user input from a second input source of the plurality of input sources;

a means of determining a source of the second user input; and

a means of forwarding the second user input to a second handler of the application, the second handler configured to process non-pen messages and moving said transparent pen-enabled window such that said transparent pen-enabled window is no longer aligned over said visible non-pen-enabled window in response to determining that the source of the second user input is the non-pen input device.

22. The apparatus of claim 21 , where said transparent pen-enabled window comprises a transparent control.

23. The apparatus of claim 21 , where said non-pen enabled window comprises a control.

24. The apparatus of claim 21 , wherein said moving means includes at least one of means for placing said transparent pen-enabled window in a lower Z-order than said visible non-pen-enabled window and means for removing said transparent pen-enabled window from a visible desktop.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE FROM "CHANGE OF NAME" TO "ASSIGNMENT OF ASSIGNOR'S INTEREST" PREVIOUSLY RECORDED ON REEL 019930 FRAME 0108. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT OF THE PROPERTY IDENTIFIED IN THE ASSIGNMENT. Recorded Oct 26, 2007
From: ISTANTE SOFTWARE, INC.
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 020018/0684 →
CHANGE OF NAME Recorded Oct 8, 2007
From: ISTANTE SOFTWARE, INC.
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 019930/0108 →
CHANGE OF NAME Recorded Sep 27, 2007
From: ITERATION SOFTWARE, INC.
To: ISTANTE SOFTWARE, INC.
Reel/Frame 019892/0117 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2003
From: BEAUCHAMP, TIM J.; NICHOLLS, GEOFFREY DEANE OWEN
To: ITERATION SOFTWARE, INC.
Reel/Frame 013892/0097 →
Continuity (1)
Related Publication 20080046837A1 · Feb 21, 2008