IP Library Granted Patent US 10,416,952
Granted Patent B2
US 10,416,952 · App. 15/634,882 · Granted Sep 17, 2019

Identifying a viewport within a browser window

Inventor: Peter Cyr (Halifax, CA)
Assignee: salesforce.com, inc.
G06F3/1462G06F3/04845G06T3/40G06F2203/04806G06T7/60G06T7/70
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 10,416,952
App. No.
15/634,882
Granted
Sep 17, 2019
Kind
B2
Abstract

Disclosed are some implementations of systems, apparatus, methods and computer program products for facilitating the identification of a viewport within a browser window of a screen that is shared via a screen-sharing application. By accurately identifying the location and dimensions of the viewport within the browser window, it is possible to render the viewport in the correct location within a screen of a remotely located device.

Claims (52)

1. A computer program product comprising computer-readable program code capable of being executed by one or more processors when retrieved from a non-transitory computer-readable medium, the program code comprising instructions configurable to cause:

displaying, in a display of a first computing device, a pattern image in a bottom right corner of a browser window, a first portion of the pattern image abutting a bottom edge of a viewport within the browser window and a second portion of the pattern image abutting a right edge of the view port, the viewport defining an area of a web page within the browser window, the pattern image including a pattern composed of two or more colors;

after displaying the pattern image, capturing an image of the browser window;

detecting, within the captured image, a location of the pattern image, the location of the pattern image indicating a location of a bottom right corner of the viewport;

ascertaining an inner width of the viewport;

ascertaining an inner height of the viewport;

determining coordinates that define the viewport within the browser window based, at least in part, on the location of the bottom right corner of the viewport, the inner width of the viewport, and the inner height of the viewport; and

transmitting information indicating the coordinates that define the viewport within the browser window to a second computing device.

2. The computer program product of claim 1 , the program code further comprising instructions configurable to cause:

ascertaining a zoom ratio indicated by a zoom feature of the first computing device; and

identifying a location of the top left corner of the viewport within the browser window based, at least in part, on the location of the bottom right corner of the viewport, the zoom ratio, the inner width of the viewport, and the inner height of the viewport;

wherein the information further indicates the location of the top left corner of the viewport.

3. The computer program product of claim 1 , the program code further comprising instructions configurable to cause:

receiving information pertaining to a drawing performed at the second computing device in relation to the viewport;

ascertaining a zoom ratio indicated by a zoom feature of the first computing device;

modifying at least one aspect of the drawing based, at least in part, on the zoom ratio; and

after modifying at least one aspect of the drawing, rendering the drawing at the first computing device.

4. The computer program product of claim 3 , wherein the at least one aspect comprises at least one of: a location of the drawing or a width of at least one line of the drawing.

5. The computer program product of claim 3 , wherein modifying the at least one aspect of the drawing comprises reducing the width of at least one line of the drawing.

6. The computer program product of claim 1 , the program code further comprising instructions configurable to cause:

ascertaining a zoom ratio indicated by a zoom feature of the first computing device; and

multiplying pixels of the pattern image by the zoom ratio.

7. The computer program product of claim 1 , wherein displaying the pattern image, capturing an image of the browser window, detecting a location of the pattern image, ascertaining an inner width of the viewport, ascertaining an inner height of the viewport, determining the coordinates that define the viewport, and transmitting the information are performed after a resize event.

8. The computer program product of claim 7 , wherein the resize event comprises a zoom operation.

9. The computer program product of claim 7 , wherein the resize event comprises a resize of the browser window.

10. The computer program product of claim 1 , wherein the pattern image comprises black pixels that surround the pattern.

11. The computer program product of claim 1 , wherein the pattern comprises a sequence in which the two or more colors are alternated.

12. The computer program product of claim 1 , wherein the pattern comprises an alternating sequence of dashes of the two or more colors.

13. The computer program product of claim 1 , wherein the two or more colors comprise black.

14. The computer program product of claim 1 , wherein the first computing device comprises a mobile device.

15. The computer program product of claim 1 , the viewport defining an area of the browser window being shared with the second computing device.

16. An apparatus, comprising:

a processor; and

a memory, the memory including instructions configurable to cause:

displaying, in a display of a first computing device, a pattern image in a bottom right corner of a browser window, a first portion of the pattern image abutting a bottom edge of a viewport within the browser window and a second portion of the pattern image abutting a right edge of the view port, the viewport defining an area of a web page within the browser window, the pattern image including a pattern composed of two or more colors;

after displaying the pattern image, capturing an image of the browser window;

detecting, within the captured image, a location of the pattern image, the location of the pattern image indicating a location of a bottom right corner of the viewport;

ascertaining an inner width of the viewport;

ascertaining an inner height of the viewport;

determining coordinates that define the viewport within the browser window based, at least in part, on the location of the bottom right corner of the viewport, the inner width of the viewport, and the inner height of the viewport; and

transmitting information indicating the coordinates that define the viewport within the browser window to a second computing device.

17. The apparatus of claim 16 , wherein the pattern includes a sequence in which the two or more colors are alternated.

18. The apparatus of claim 16 , wherein the first computing device comprises a mobile device.

19. A method, comprising:

displaying, in a display of a first computing device, a pattern image in a bottom right corner of a browser window, a first portion of the pattern image abutting a bottom edge of a viewport within the browser window and a second portion of the pattern image abutting a right edge of the view port, the viewport defining an area of a web page within the browser window, the pattern image including a pattern composed of two or more colors;

after displaying the pattern image, capturing an image of the browser window;

detecting, within the captured image, a location of the pattern image, the location of the pattern image indicating a location of a bottom right corner of the viewport;

ascertaining an inner width of the viewport;

ascertaining an inner height of the viewport;

determining coordinates that define the viewport within the browser window based, at least in part, on the location of the bottom right corner of the viewport, the inner width of the viewport, and the inner height of the viewport; and

transmitting information indicating the coordinates that define the viewport within the browser window to a second computing device.

20. The computer program product of claim 1 , wherein the information comprises the coordinates that define the viewport within the browser window.

Assignments (2)
CHANGE OF NAME Recorded Nov 21, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069431/0203 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 1, 2019
From: CYR, PETER
To: SALESFORCE.COM, INC.
Reel/Frame 049055/0468 →
Continuity (1)
Related Publication 20180373485A1 · Dec 27, 2018
Cited By (1)
US 12,356,107