Dynamic screen filtering

Apparatuses, methods, systems, and program products are disclosed for sharing content with a detected device. An apparatus includes a processor and a memory that stores code executable by the processor. The memory stores code executable by the processor to detect that an input field of a graphical display is an active graphical field for receiving input. The memory stores code executable by the processor to dynamically enable an electronic privacy filter for the graphical display. The memory stores code executable by the processor to receive input within the input field while the electronic privacy filter is enabled for the graphical display.

FIELD

The subject matter disclosed herein relates to providing input on a device, and more particularly relates to dynamically enabling an electronic screen filter when input is provided on a device.

BACKGROUND

Graphical displays are used to present and receive information. Information may be received on a graphical display by entering the information into input fields that are presented on the graphical display. The information that is entered in the input fields, however, may be available for viewing by unintended persons.

BRIEF SUMMARY

An apparatus for dynamic screen filtering is disclosed. The apparatus, in one embodiment, includes a processor and a memory that stores code executable by the processor. In one embodiment, the memory stores code executable by the processor to detect that an input field of a graphical display is an active graphical field for receiving input. In a further embodiment, the memory stores code executable by the processor to dynamically enable an electronic privacy filter for the graphical display. In certain embodiments, the memory stores code executable by the processor to receive input within the input field while the electronic privacy filter is enabled for the graphical display.

A method for dynamic screen filtering includes, in one embodiment, detecting, by a processor, that an input field of a graphical display is an active graphical field for receiving input. The method, in some embodiments, includes dynamically enabling an electronic privacy filter for the graphical display. The method, in various embodiments, includes receiving input within the input field while the electronic privacy filter is enabled for the graphical display.

A program product for dynamic screen filtering, in one embodiment, includes a computer readable storage medium that stores code executable by a processor. In some embodiments, the executable code includes code to perform detecting that an input field of a graphical display is an active graphical field for receiving input. The executable code, in certain embodiments, includes code to perform dynamically enabling an electronic privacy filter for the graphical display. The executable code, in certain embodiments, includes code to perform receiving input within the input field while the electronic privacy filter is enabled for the graphical display.

DETAILED DESCRIPTION

An apparatus for dynamic screen filtering is disclosed. The apparatus, in one embodiment, includes a processor and a memory that stores code executable by the processor. In one embodiment, the memory stores code executable by the processor to detect that an input field of a graphical display is an active graphical field for receiving input. In a further embodiment, the memory stores code executable by the processor to dynamically enable an electronic privacy filter for the graphical display. In certain embodiments, the memory stores code executable by the processor to receive input within the input field while the electronic privacy filter is enabled for the graphical display.

In one embodiment, the code is further executable by the processor to prevent receiving input within the input field until the electronic privacy filter is enabled. In certain embodiments, the code is further executable by the processor to disable the electronic privacy filter in response to the input field not being the active graphical field for receiving input. In one embodiment, the code is further executable by the processor to disable the electronic privacy filter in response to the input field comprising entered input not being visible within a display area of the graphical display.

In some embodiments, the input comprises alpha-numeric characters received from at least one of a physical keyboard and an on-screen keyboard. In various embodiments, the code is further executable by the processor to present the on-screen keyboard with scrambled alpha-numeric characters such that the alpha-numeric characters are presented in a layout that is different than a QWERTY keyboard layout. In certain embodiments, the code is further executable by the processor to present a transpose map of a keyboard layout that corresponds to the keys of the physical keyboard such that the alpha-numeric characters are presented in a layout that is different than a QWERTY keyboard layout.

In one embodiment, the code is further executable by the processor to start an enable timer in response to the input field becoming the active graphical field and in response to the electronic privacy filter not currently being enabled. The electronic privacy filter may be enabled in response to expiration of the enable timer. In various embodiments, the code is further executable by the processor to start a disable timer in response to the input field not being the active graphical field. The electronic privacy filter may be disabled in response to expiration of the disable timer and in response to a different input field not becoming the active graphical field.

In some embodiments, the input field comprises an input field for a web page presented within a web browser. In certain embodiments, the input field comprises an input field for an operating system application. In one embodiment, the input field comprises an input field for a command line terminal. In some embodiments, the input field comprises an input field for receiving sensitive information such as a username, a password, financial information, personal identification information, and health information.

A method for dynamic screen filtering includes, in one embodiment, detecting, by a processor, that an input field of a graphical display is an active graphical field for receiving input. The method, in some embodiments, includes dynamically enabling an electronic privacy filter for the graphical display. The method, in various embodiments, includes receiving input within the input field while the electronic privacy filter is enabled for the graphical display.

In one embodiment, the method further includes preventing receiving input within the input field until the electronic privacy filter is enabled. In various embodiments, the method further includes disabling the electronic privacy filter in response to the input field not being the active graphical field for receiving input.

In one embodiment, the input comprises alpha-numeric characters received from at least one of a physical keyboard and an on-screen keyboard. In certain embodiments, the method further includes presenting the on-screen keyboard with scrambled alpha-numeric characters such that the alpha-numeric characters are presented in a layout that is different than a QWERTY keyboard layout. In some embodiments, the method further includes presenting a transpose map of a keyboard layout that corresponds to the keys of the physical keyboard such that the alpha-numeric characters are presented in a layout that is different than a QWERTY keyboard layout.

A program product for dynamic screen filtering, in one embodiment, includes a computer readable storage medium that stores code executable by a processor. In some embodiments, the executable code includes code to perform detecting that an input field of a graphical display is an active graphical field for receiving input. The executable code, in certain embodiments, includes code to perform dynamically enabling an electronic privacy filter for the graphical display. The executable code, in certain embodiments, includes code to perform receiving input within the input field while the electronic privacy filter is enabled for the graphical display.

FIG. 1is a schematic block diagram illustrating one embodiment of a system100for dynamic screen filtering. In one embodiment, the system100includes one or more information handling devices102, one or more privacy apparatuses104, one or more data networks106, and one or more servers108. In certain embodiments, even though a specific number of information handling devices102, privacy apparatuses104, data networks106, and servers108are depicted inFIG. 1, one of skill in the art will recognize, in light of this disclosure, that any number of information handling devices102, privacy apparatuses104, data networks106, and servers108may be included in the system100.

In one embodiment, the system100includes one or more information handling devices102. The information handling devices102may include one or more of a desktop computer, a laptop computer, a tablet computer, a smart phone, a smart speaker (e.g., Amazon Echo®, Google Home®, Apple HomePod®), a security system, a set-top box, a gaming console, a smart TV, a smart watch, a fitness band or other wearable activity tracking device, an optical head-mounted display (e.g., a virtual reality headset, smart glasses, or the like), a High-Definition Multimedia Interface (“HDMI”) or other electronic display dongle, a personal digital assistant, a digital camera, a video camera, or another computing device comprising a processor (e.g., a central processing unit (“CPU”), a processor core, a field programmable gate array (“FPGA”) or other programmable logic, an application specific integrated circuit (“ASIC”), a controller, a microcontroller, and/or another semiconductor integrated circuit device), a volatile memory, and/or a non-volatile storage medium.

In certain embodiments, the information handling devices102are communicatively coupled to one or more other information handling devices102and/or to one or more servers108over a data network106, described below. The information handling devices102, in a further embodiment, may include processors, processor cores, and/or the like that are configured to execute various programs, program code, applications, instructions, functions, and/or the like. The information handling devices102may include a touch-sensitive display that is configured to detect, sense, determine, and/or the like touch input from a user's finger, a stylus, and/or the like.

The information handling devices102may be configured to receive input from one or more input sources such as a physical keyboard, an on-screen keyboard, voice input, and/or the like. The information handling devices102may include or may be operably coupled to a graphical display such as a touch-sensitive display, an LCD display, an LED display, and/or the like that has an electronic screen filter, described below. In various embodiments, the information handling devices102are configured to present one or more input fields for receiving input from a user. The input fields, described in more detail below, may include a terminal console for receiving command line input, a graphical input field that an operating system presents, a graphical input field presented in a web browser as part of a webpage, and/or the like.

In one embodiment, the privacy apparatus104is configured to dynamically activate a screen filter while input is entered into an input field that is presented on a graphical display. In one embodiment, the privacy apparatus104is configured to detect that an input field of a graphical display is an active graphical field for receiving input, dynamically enable an electronic privacy filter for the graphical display, and receive input within the input field while the electronic privacy filter is enabled for the graphical display. The privacy apparatus104, including its various sub-modules, may be located on one or more information handling devices102in the system100, one or more servers108, one or more network devices, and/or the like. The privacy apparatus104is described in more detail below with reference toFIGS. 2 and 3.

In one embodiment, the privacy apparatus104improves the security for entering input into graphical input fields. For instance, without the privacy apparatus104, the information that a user enters in a graphical input field could be viewed by unintended parties. For example, an unintended party may watch as a user enters his/her username and password into input fields presented on a website to steal the user's credentials. Some input fields may attempt to mask the entered information, but not all input fields are configured to mask the entered information, may be configured to mask certain types of information (e.g., an input field for a password may mask the entered information while an input field for a username may not mask the information), or may not be configured to mask the information at all. Thus, there is inconsistencies among different input fields for web browsers, operating system, and lower-level input fields such as a command-line terminal. The privacy apparatus104enhances or provides a secure way to enter information into input fields by reducing the amount of the graphical display that is viewable, e.g., by reducing the viewing angle using an electronic screen filter that is dynamically enabled when an input field is activated on a graphical display.

In various embodiments, the privacy apparatus104may be embodied as a hardware appliance that can be installed or deployed on an information handling device102, on a server108, or elsewhere on the data network106. In certain embodiments, the privacy apparatus104may include a hardware device such as a secure hardware dongle or other hardware appliance device (e.g., a set-top box, a network appliance, or the like) that attaches to a device such as a laptop computer, a server108, a tablet computer, a smart phone, a security system, or the like, either by a wired connection (e.g., a universal serial bus (“USB”) connection) or a wireless connection (e.g., Bluetooth®, Wi-Fi, near-field communication (“NFC”), or the like); that attaches to an electronic display device (e.g., a television or monitor using an HDMI port, a DisplayPort port, a Mini DisplayPort port, VGA port, DVI port, or the like); and/or the like. A hardware appliance of the privacy apparatus104may include a power interface, a wired and/or wireless network interface, a graphical interface that attaches to a display, and/or a semiconductor integrated circuit device as described below, configured to perform the functions described herein with regard to the privacy apparatus104.

The privacy apparatus104, in such an embodiment, may include a semiconductor integrated circuit device (e.g., one or more chips, die, or other discrete logic hardware), or the like, such as a field-programmable gate array (“FPGA”) or other programmable logic, firmware for an FPGA or other programmable logic, microcode for execution on a microcontroller, an application-specific integrated circuit (“ASIC”), a processor, a processor core, or the like. In one embodiment, the privacy apparatus104may be mounted on a printed circuit board with one or more electrical lines or connections (e.g., to volatile memory, a non-volatile storage medium, a network interface, a peripheral device, a graphical/display interface, or the like). The hardware appliance may include one or more pins, pads, or other electrical connections configured to send and receive data (e.g., in communication with one or more electrical lines of a printed circuit board or the like), and one or more hardware circuits and/or other electrical circuits configured to perform various functions of the privacy apparatus104.

The semiconductor integrated circuit device or other hardware appliance of the privacy apparatus104, in certain embodiments, includes and/or is communicatively coupled to one or more volatile memory media, which may include but is not limited to random access memory (“RAM”), dynamic RAM (“DRAM”), cache, or the like. In one embodiment, the semiconductor integrated circuit device or other hardware appliance of the privacy apparatus104includes and/or is communicatively coupled to one or more non-volatile memory media, which may include but is not limited to: NAND flash memory, NOR flash memory, nano random access memory (nano RAM or NRAM), nanocrystal wire-based memory, silicon-oxide based sub-10 nanometer process memory, graphene memory, Silicon-Oxide-Nitride-Oxide-Silicon (“SONOS”), resistive RAM (“RRAM”), programmable metallization cell (“PMC”), conductive-bridging RAM (“CBRAM”), magneto-resistive RAM (“MRAM”), dynamic RAM (“DRAM”), phase change RAM (“PRAM” or “PCM”), magnetic storage media (e.g., hard disk, tape), optical storage media, or the like.

The data network106, in one embodiment, includes a digital communication network that transmits digital communications. The data network106may include a wireless network, such as a wireless cellular network, a local wireless network, such as a Wi-Fi network, a Bluetooth® network, a near-field communication (“NFC”) network, an ad hoc network, and/or the like. The data network106may include a wide area network (“WAN”), a storage area network (“SAN”), a local area network (LAN), an optical fiber network, the internet, or other digital communication network. The data network106may include two or more networks. The data network106may include one or more servers, routers, switches, and/or other networking equipment. The data network106may also include one or more computer readable storage media, such as a hard disk drive, an optical drive, non-volatile memory, RAM, or the like.

The wireless connection may be a mobile telephone network. The wireless connection may also employ a Wi-Fi network based on any one of the Institute of Electrical and Electronics Engineers (“IEEE”) 802.11 standards. Alternatively, the wireless connection may be a Bluetooth® connection. In addition, the wireless connection may employ a Radio Frequency Identification (“RFID”) communication including RFID standards established by the International Organization for Standardization (“ISO”), the International Electrotechnical Commission (“IEC”), the American Society for Testing and Materials® (ASTM®), the DASH7™ Alliance, and EPCGlobal™.

Alternatively, the wireless connection may employ a ZigBee® connection based on the IEEE 802 standard. In one embodiment, the wireless connection employs a Z-Wave® connection as designed by Sigma Designs®. Alternatively, the wireless connection may employ an ANT® and/or ANT+® connection as defined by Dynastream® Innovations Inc. of Cochrane, Canada.

The wireless connection may be an infrared connection including connections conforming at least to the Infrared Physical Layer Specification (“IrPHY”) as defined by the Infrared Data Association® (“IrDA”®). Alternatively, the wireless connection may be a cellular telephone network communication. All standards and/or connection types include the latest version and revision of the standard and/or connection type as of the filing date of this application.

The one or more servers108, in one embodiment, may be embodied as blade servers, mainframe servers, tower servers, rack servers, and/or the like. The one or more servers108may be configured as mail servers, web servers, application servers, FTP servers, media servers, data servers, web servers, file servers, virtual servers, and/or the like. The one or more servers108may be communicatively coupled (e.g., networked) over a data network106to one or more information handling devices102.

FIG. 2is a schematic block diagram illustrating one embodiment of an apparatus200for dynamic screen filtering. In one embodiment, the apparatus200includes an embodiment of a privacy apparatus104. The privacy apparatus104, in some embodiments, includes one or more of a field module202, a filter module204, and an input receiving module206, which are described in more detail below.

The field module202, in one embodiment, is configured to detect that an input field of a graphical display is an active graphical field for receiving input. As described above, the input field may comprise a graphical element for receiving user input such as a username, a password, credit card or other financial information, personal identification information (e.g., an address, a phone number, a name, a PIN number, a social security number, etc.), health information, and/or the like.

The field module202, in certain embodiments, detects that an input field is an active input field in response to detecting or receiving a trigger, signal, message, notification, and/or the like in response to a key event (e.g., tabbing to an input field), a mouse event (e.g. hovering or clicking on an input field), a touch event (e.g., selecting an input field with a finger or stylus), and/or the like.

In one embodiment, the input field may include an input field on a web page, an input field for an operating system or an application executing in the operating system, an input field as part of a command-line terminal, and/or the like. In certain embodiments, the field module202may identify, determine, detect, and/or the like an input field based on identifiers for the input field. For instance, in a web page, the markup of the webpage, e.g., the HTML code may include tags or other identifiers that indicate an input field on the webpage. Similarly, an input field for an operating system or an application executing in an operating system may be assigned a graphical user interface identifier (“GUID”) that identifies the input field. For a command-line interface, the field module202may detect when the cursor is waiting for input from a user.

In certain embodiments, the filter module204is configured to dynamically enable an electronic privacy filter for the graphical display in response to the field module202detecting that an input field of the graphical display is an active graphical field for receiving input. As used herein, an electronic privacy filter may be a digital screen filter for a graphical display that reduces the viewing angle of the graphical display so that information presented on the graphical display is not visible to persons who are attempting to view information on the display from the side or periphery of the graphical display. For instance, the electronic privacy filter may use a combination of a backlight, a light control film within the display, and other hardware and logic controls to enable the privacy filter and reduce the viewing angle of the graphical display. The viewing angle, for example, may be reduced from between 170°-180° to about 70° so that only users who are within the 70° viewing angle directly in front of the graphical display can see information presented on the graphical display.

The filter module204may automatically enable, activate, turn on, or the like the electronic privacy filter for the graphical display when the field module202determines that an input field is the active graphical field on the display for receiving input (e.g., in response to a user clicking, touching, or otherwise selecting an input field such as a text input box), unlike conventional privacy filter systems that may require the user to manually enable an electronic privacy filter or to attach a separate privacy filter to the display. In this manner, the filter module204can prevent people from viewing information that a user enters in an input field on the graphical display from the side or from within the blocked viewing angle so that users can enter sensitive information without fear that people next to them will steal, copy, or otherwise misappropriate the information.

In some embodiments, the filter module204enables the electronic privacy filter when it detects or determines that an input field is visible on the graphical display, even before the user clicks, touches, or otherwise selects an input field for entering input. For example, if the user browses to a web page in a web browser, the filter module204may determine that there are two input fields on the web page, e.g., from parsing the markup language (HTML, JavaScript, XML, etc.) for the webpage, and may then enable the electronic privacy filter to proactively prevent others from viewing the input that the user may enter in the input fields.

In one embodiment, the filter module204disables the electronic privacy filter in response to the currently active input field no longer being the active graphical field for receiving input on the graphical display. For instance, if the user enters input into an input field, and the clicks on the display outside of the input field such that the input field is no longer the active graphical field for receiving input, the filter module204may disable the electronic privacy filter so that it is not persistently enabled.

In certain embodiments, the filter module204disables the electronic privacy filter in response to an input field that is visible on the graphical display and contains input that a user entered no longer being visible on the display. For instance, if the user enters input into a username field and then clicks on a different part of the display such that the username field is not the active graphical field, the filter module204may not disable the electronic privacy filter because, even though an input field is not currently the active graphical field on the display, the username input may still be viewable on the display. However, if the user scrolls past the username field, switches to a different browser window, minimizes the web browser, or the like, then the filter module204may disable the electronic privacy filter. For example, if a user enters a username into an input field presented in a web browser while the electronic privacy filter is active, and then scrolls down the web page so that the username field is no longer visible on the display, the filter module204may then disable the electronic privacy filter204.

In one embodiment, the input receiving module206is configured to receive input within the input field that is the active graphical field of the graphical display. In certain embodiments, the input comprises alpha-numeric characters that are entered using a physical keyboard, an on-screen keyboard, and/or the like. In one embodiment, the input receiving module206prevents receiving input in the input field until the electronic privacy filter is enabled.

For example, if a user clicks in an input field to enter input and attempts to type characters before the electronic privacy filter is fully enabled, the input receiving module206may not receive the typed characters, e.g. the input receiving module206may ignore or disregard the input and may not present the characters in the graphical input field. In some embodiments, the input receiving module206may buffer input that is entered by the user prior to the electronic privacy filter being enabled until the electronic privacy filter is enabled, at which point the input receiving module206may present the input that the user entered in the input field.

FIG. 3is a schematic block diagram illustrating one embodiment of an apparatus300for dynamic screen filtering. In one embodiment, the apparatus300includes an embodiment of a privacy apparatus104. The privacy apparatus104, in some embodiments, includes one or more of a field module202, a filter module204, and an input receiving module206, which may be substantially similar to the field module202, the filter module204, and the input receiving module206described above with reference toFIG. 2. In further embodiments, the privacy apparatus104includes one or more of a keyboard module302and a timer module304, which are described in more detail below.

The keyboard module302, in one embodiment, is configured to present an on-screen keyboard for receiving touch input from a user for the input field on a touch-enabled display. In certain embodiments, the keyboard module302presents the on-screen keyboard with scrambled alpha-numeric characters, e.g., characters that are positioned on the display in a location that is different from the standard QWERTY layout. In certain embodiments, the keyboard module302changes the scrambled layout of the characters of the on-screen keyboard so that it is different each time that the on-screen keyboard is presented on the display. In this manner, if a bystander can see the user entering characters using the on-screen keyboard, the bystander will not be able to guess, estimate, or the like the QWERTY characters that the user is pressing based on the location of the user's finger or stylus on the display because the on-screen keyboard layout is different than a standard QWERTY keyboard layout.

The keyboard module302, in further embodiments, is configured to present a transpose map of a keyboard layout that corresponds to the keys of a physical keyboard that is used to enter input for the input field. In such an embodiment, the keyboard module302presents a transpose map that scrambles the characters of the keyboard layout, e.g., of a standard QWERTY keyboard layout, so that a bystander cannot guess, estimate, or the like the keys that the user is entering into the input field. For instance, the keyboard module302may present a transpose map where the rows of keys of a keyboard are switched, wherein only a few characters are swapped, where the entire keyboard layout is randomly changed, and/or the like. For example, the keyboard module302may present a transpose map where the normal position of the ‘Q’ character on the QWERTY keyboard is now the ‘A’ character such that when the user presses the ‘Q’ key on the keyboard, the input that is received is the ‘A’ character. The keyboard module302may present a different transpose map each time an input field is activated for receiving input.

In one embodiment, the timer module304is configured to start an enable timer in response to (1) an input field presented on the graphical display becoming the active input field for receiving input and (2) the electronic privacy filter not currently being enabled. For example, when a user clicks in an input field to enter input in the input field, the timer module304may determine whether the electronic privacy filter is currently enabled, and if not, start a timer such that when the timer expires the electronic privacy filter is enabled. The timer may be for a short period of time such as on the order or milliseconds or microseconds. In this manner, if the user is clicking around on the display or inadvertently clicks on an input field and then clicks somewhere else such that the input field is no longer the active input field, the electronic privacy filter will not constantly be enabled and disabled. Instead, the electronic privacy filter may be enabled when an input field is active for a period of time that is indicated by the enable timer.

Similarly, the timer module304may be configured to start a disable timer in response to the input field not being the active graphical field. For example, when the user clicks on an area of the display that is not within the currently active input field, the currently active input field may become inactive, e.g., may not be active for receiving input. In such an embodiment, the timer module304starts a disable timer such that when the timer expires, the electronic privacy filter that is currently enabled will be disabled. The timer may be for a short period of time such as on the order or milliseconds or microseconds. In further embodiments, the electronic privacy filter is disabled in response to (1) expiration of the disable timer and (2) a different input field not becoming the active graphical field on the display. For instance, if a new input field become the active input field and the current input field becomes an inactive input field, the timer module304resets, disables, or ignores the disable timer so that the electronic privacy filter will not be disabled until an input field is no longer the active graphical field for receiving input on the display.

FIG. 4is a schematic flow chart diagram illustrating one embodiment of a method400for dynamic screen filtering. In one embodiment, the method400begins and the field module202detects402that an input field of a graphical display in an active input field for receiving input. In certain embodiments, the filter module204enables404an electronic privacy filter for the graphical display in response to the field module202detecting402the input filed being the active graphical field for receiving input. In further embodiments, the input receiving module206receives406input within the input field while the electronic privacy filter is enabled, and the method400ends.

FIG. 5is a schematic flow chart diagram illustrating one embodiment of another method500for dynamic screen filtering. In one embodiment, the method500begins and the field module202detects502that an input field of a graphical display in an active input field for receiving input. In certain embodiments, the input receiving module206prevents504receiving input within the input field until the electronic privacy filter is enabled. In various embodiments, the timer module304starts506an enable timer in response to the field module202detecting502that an input field of a graphical display in an active input field for receiving input.

In certain embodiments, the timer module304determines508whether the enable timer has expired. If not, the timer module304may continue to check for expiration of the enabled timer. Otherwise, the filter module204enables510an electronic privacy filter for the graphical display. The input receiving module206may then allow512input to be received within the input field. To facilitate entering input in the input field, and to increase the security that the electronic privacy filter provides, the keyboard module302may present514an on-screen keyboard with scrambled characters (e.g., different than a standard layout such as a QWERTY layout) for entering input and/or may present516a transpose map of a different keyboard layout that corresponds to the keys of a physical keyboard (e.g., a transpose map that has a keyboard layout that is different than a standard layout such as a QWERTY layout). In certain embodiments, the input receiving module206receives518input within the input field while the electronic privacy filter is enabled, and the method500ends.

Embodiments may be practiced in other specific forms. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the subject matter disclosed herein is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.