ES2968336T3 - Hibernación selectiva de actividades en un dispositivo informático móvil - Google Patents
Hibernación selectiva de actividades en un dispositivo informático móvil Download PDFInfo
- Publication number
- ES2968336T3 ES2968336T3 ES21187717T ES21187717T ES2968336T3 ES 2968336 T3 ES2968336 T3 ES 2968336T3 ES 21187717 T ES21187717 T ES 21187717T ES 21187717 T ES21187717 T ES 21187717T ES 2968336 T3 ES2968336 T3 ES 2968336T3
- Authority
- ES
- Spain
- Prior art keywords
- application
- computing device
- mobile computing
- card
- cards
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000006266 hibernation Effects 0.000 title claims abstract description 121
- 230000000694 effects Effects 0.000 title abstract description 288
- 238000000034 method Methods 0.000 claims description 62
- 230000015654 memory Effects 0.000 claims description 33
- 230000003068 static effect Effects 0.000 claims description 27
- 230000004044 response Effects 0.000 claims description 26
- 238000012545 processing Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 7
- 230000000007 visual effect Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 230000007704 transition Effects 0.000 description 6
- 230000001960 triggered effect Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000002085 persistent effect Effects 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000001010 compromised effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000001627 detrimental effect Effects 0.000 description 2
- 238000010079 rubber tapping Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000003339 best practice Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000009931 harmful effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000002853 ongoing effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 230000007958 sleep Effects 0.000 description 1
- 238000009987 spinning Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3225—Monitoring of peripheral devices of memory devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0485—Scrolling or panning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0483—Interaction with page-structured environments, e.g. book metaphor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3228—Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0261—Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
- H04W52/0264—Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level by selectively disabling software applications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
- Stored Programmes (AREA)
Abstract
En un dispositivo electrónico capaz de ejecutar múltiples aplicaciones de software simultáneamente, se pueden seleccionar aplicaciones, documentos, tarjetas u otras actividades para hibernación a fin de liberar recursos del sistema para otras actividades que están en uso activo. Se determina qué actividades deben hibernar, por ejemplo basándose en una determinación de qué actividades no se han utilizado recientemente o en función del uso relativo de recursos. Cuando una actividad va a hibernar, su estado se conserva en un medio de almacenamiento como un disco, de modo que la actividad pueda luego reactivarse en el mismo estado y el usuario pueda continuar con la misma tarea que estaba realizando antes de que la actividad entrara en hibernación. . (Traducción automática con Google Translate, sin valor legal)
Description
DESCRIPCIÓN
Hibernación selectiva de actividades en un dispositivo informático móvil
Campo de la invención
En diversas realizaciones, la presente invención se refiere a la gestión de aplicaciones en dispositivos electrónicos, y más particularmente a sistemas y métodos para provocar selectivamente actividades, tales como aplicaciones, para hibernar en un entorno informático en donde pueden abrirse simultáneamente múltiples aplicaciones.
Descripción de la técnica relacionada
Muchos dispositivos informáticos disponibles actualmente ejecutan sistemas operativos que ofrecen a los usuarios la oportunidad de ejecutar varias aplicaciones de software al mismo tiempo, e incluso realizar varias actividades simultáneamente, dentro de una única aplicación de software y/o entre dos o más aplicaciones de software. Por ejemplo, un usuario puede abrir una aplicación de correo electrónico, una aplicación de procesamiento de texto, calculadora en pantalla, y un navegador web, de modo que todas las aplicaciones estén abiertas al mismo tiempo. El usuario puede abrir varios documentos dentro de la aplicación de procesamiento de texto, y puede abrir varios mensajes de correo electrónico. Tal disposición permite al usuario moverse de una tarea a otra al mantener abiertas estas diversas aplicaciones y actividades al mismo tiempo.
Diversos paradigmas visuales están disponibles para presentar múltiples aplicaciones que se ejecutan simultáneamente y otras actividades dentro de una interfaz gráfica de usuario. En algunos sistemas informáticos, se ponen a disposición múltiples ventanas superpuestas, con cada ventana representa una aplicación, documento, tarea, u otra actividad. A menudo se emplea una metáfora de escritorio, en donde el usuario puede mover y cambiar el tamaño de las ventanas en una pantalla de visualización mediante manipulación directa. En cualquier dado momento, una ventana tiene foco (habitualmente indicado como tal al estar situado sobre la parte superior de las otras ventanas). Otras ventanas pueden ser visibles, invisibles, parcialmente visibles (por ejemplo, si otras ventanas las ocultan parcial 0 completamente). Un usuario puede cambiar de una actividad a otra haciendo que una ventana diferente tenga foco; esto se logra comúnmente haciendo clic sobre una porción visible de la ventana que se está activando, o haciendo clic sobre un botón o icono que representa la ventana en una barra de tareas, área de inicio rápido, o una construcción similar. En algunos sistemas operativos, los menús emergentes y/o los accesos directos de teclado pueden estar disponibles para cambiar entre aplicaciones, documentos, y otras actividades.
En otros sistemas, se utiliza una metáfora de tarjeta, en la que cada aplicación u otra actividad se puede representar dentro de un área de la pantalla. Las tarjetas se pueden mover sobre una pantalla de visualización, por ejemplo, mediante manipulación directa a través de una interfaz de usuario de pantalla táctil. Se pueden proporcionar varios modos de visualización de tarjetas. Diversas realizaciones de una metáfora de la tarjeta se describen en la solicitud de patente relacionada de e E.UU. US 2009/0293007 A1, presentada el 23 de mayo de 2008, "Navigating Among Activities in a Computing Device" y la solicitud de patente relacionada de EE.UU. US 2010/0095240 A1, presentada el 1 de abril de 2009, “Card Metaphor for Activities in a Computing Device”.
Tales sistemas proporcionan mecanismos mediante los cuales varias aplicaciones y/u otras actividades pueden mantenerse abiertas al mismo tiempo, lo cual permite al usuario cambiar fácilmente entre actividades con una sobrecarga mínima. La capacidad de mantener abiertas varias actividades es ventajosa porque evita la necesidad de abrir y cerrar aplicaciones repetidamente. De forma adicional, muchos sistemas (incluidos los descritos anteriormente) permiten a los usuarios ver resultados de (y/o interactuar con) dos o más actividades sobre una pantalla común (o sobre múltiples pantallas) al mismo tiempo. Las tarjetas o ventanas de dos o más aplicaciones se pueden mostrar simultáneamente, lo cual permite al usuario hacer referencia a una mientras interactúa con otra, o realizar otras tareas que implican la interacción con dos o más aplicaciones. Ciertas operaciones se benefician enormemente de tal disposición, tal como, por ejemplo, cortar y pegar contenido de una aplicación a otra.
Los dispositivos móviles tales como teléfonos inteligentes, asistentes digitales personales, reproductores de música, ordenadores de mano, y similares se están volviendo cada vez más potentes. Muchos ahora pueden ejecutar varias aplicaciones al mismo tiempo, y realizar funciones sofisticadas que rivalizan con los dispositivos informáticos tradicionales. No obstante, muchos de tales dispositivos tienen recursos informáticos limitados, incluida la velocidad limitada del procesador y/o la memoria disponible. Debido a estas limitaciones, tales dispositivos a menudo pueden ejecutar un número limitado de aplicaciones simultáneamente; exceder el límite puede causar un bajo rendimiento, inestabilidad, bloqueos, u otros efectos perjudiciales.
En tales dispositivos, si un usuario intenta abrir una aplicación, abrir un documento, o iniciar otra actividad que hace que se alcance un límite de memoria o procesamiento, se le puede presentar al usuario un mensaje de error que le informa que la tarea solicitada no se puede realizar a menos que algunas aplicaciones, documentos, ventanas, tarjetas, u otras actividades se cierren primero. Alternativamente, de forma alternativa, al usuario se le puede presentar un mensaje simplemente informándole que no le queda memoria. En el peor de los casos, el sistema puede fallar y el usuario puede perder datos valiosos en los que estaba trabajando.
Ninguno de estos escenarios es satisfactorio. Lo que se necesita es un sistema y un método que maneje las limitaciones de recursos sin afectar la capacidad del usuario para realizar la tarea que desea realizar. Lo que se necesita además es un sistema y método que permita al usuario abrir una actividad incluso cuando se han abierto muchas otras actividades, e incluso ante las limitaciones de recursos en el sistema informático.
Incluso cuando no se alcanza un límite de recursos, la operación continua de una actividad puede ser un desperdicio en términos de recursos del sistema, lo cual tiene un efecto perjudicial en el rendimiento del dispositivo informático. Ejecutar una aplicación, o mantener abierto un documento, que no es necesario puede consumir recursos informáticos valiosos, incluida la memoria, el tiempo de procesamiento, el ancho de banda de la red, la energía de la batería, o cualquier combinación de los mismos. En algunas situaciones, los usuarios dejan aplicaciones y/o documentos abiertos incluso cuando no son necesarios. El usuario puede no darse cuenta de que una actividad aún se está ejecutando, o puede no comprender que la actividad está consumiendo una cantidad significativa de recursos del sistema. Lo que se necesita, por lo tanto, es un sistema y un método para detectar tales condiciones y evitar el uso derrochador de los recursos del sistema para actividades que se dejan abiertas pero que no están en uso activo. El documento US 2009/0013282 A1 divulga un sistema y un método para implementar un gestor de ventanas de un único eje en un dispositivo informático móvil para ver y acceder a múltiples aplicaciones en un área de visualización limitada utilizando capacidades de entrada limitadas. El dispositivo informático móvil inicializa un espacio de visualización virtual que tiene una primera dimensión con un tamaño fijo. Por ejemplo, el espacio de visualización virtual se inicializa para tener una dimensión horizontal igual a la dimensión horizontal de la pantalla de visualización. Se genera al menos una ventana que tiene un tamaño fijo en la primera dimensión, pero también considerable en una segunda dirección. Por ejemplo, al menos una ventana tiene una dimensión horizontal fija, pero es verticalmente considerable. A continuación, se inserta al menos una ventana en el espacio de visualización virtual y se muestra sobre un dispositivo de visualización.
El documento US 5.499.334 A proporciona un método y un sistema para gestionar configuraciones de ventana en una configuración de escritorio.
Sumario
La invención se define por las reivindicaciones.
En diversas realizaciones, el sistema y el método de la presente invención operan en un dispositivo electrónico capaz de ejecutar dos o más aplicaciones de software simultáneamente. En diversas realizaciones, cada aplicación de software puede ser capaz de abrir dos o más documentos, o habilitar dos o más actividades simultáneamente. El término "actividad" se utiliza en el presente documento para referirse a una aplicación de software, tarea, documento, mensaje, página, imagen, tarjeta, ventana, elemento de contenido, o cualquier otra construcción que represente datos y/o funcionalidad definible mediante programación, y con el cual el usuario puede interactuar a través de una interfaz de usuario sobre el dispositivo electrónico. En diversas realizaciones descritas en el presente documento, las actividades pueden representarse mediante una interfaz de usuario sobre una pantalla de visualización, y un usuario puede interactuar con actividades a través de un dispositivo de entrada. En diversas realizaciones, el dispositivo electrónico puede presentar múltiples actividades simultáneas utilizando cualquier paradigma o metáfora deseada, incluyendo, por ejemplo, una metáfora de escritorio que tiene múltiples ventanas superpuestas o una metáfora de tarjeta, como se describe en las solicitudes de patente relacionadas mencionadas anteriormente. Por ejemplo, en una metáfora de tarjeta, las actividades están representadas por "tarjetas", que es un término utilizado en el presente documento para referirse a las áreas de la pantalla que pueden ser movidas y manipuladas por el usuario. Los usuarios interactúan con las tarjetas para iniciar, finalizar y reordenar actividades, así como para navegar entre actividades y realizar otras operaciones.
En diversas realizaciones, algunas actividades pueden estar abiertas, pero no visibles sobre la pantalla de visualización; por ejemplo, se pueden mover fuera de la pantalla, minimizarse, superponerse o similares; el usuario puede mover elementos en la pantalla o realizar otras operaciones para hacer que estas actividades abiertas sean visibles. En diversas realizaciones, múltiples documentos, ventanas, o tarjetas simultáneamente para una aplicación de software dada; el término "actividad" puede referirse a la aplicación de software en sí y/o a documentos, ventanas, o tarjetas individuales asociados con la aplicación de software.
En diversas realizaciones, el sistema y el método de la presente invención provocan selectivamente que ciertas actividades hibernen, o se "congelen", para liberar recursos del sistema para otras actividades que están en uso activo. Se determina qué actividades deben hibernar, por ejemplo, basándose en una determinación de qué actividades no se han utilizado recientemente o basándose en el uso relativo de los recursos. En una realización, cuando una actividad va a hibernar, su estado se conserva sobre un medio de almacenamiento, tal como un disco, de modo que la actividad pueda revivirse posteriormente en el mismo estado y el usuario pueda continuar con la misma tarea que se estaba realizando antes la actividad entró en hibernación. En una situación en la que múltiples documentos, ventanas, o tarjetas están abiertos y activos simultáneamente para una aplicación de software determinada, la aplicación de software en sí puede hibernar, o documentos, ventanas, o tarjetas individuales asociados con la aplicación de software pueden hibernar individualmente.
Para los fines de la descripción proporcionada en el presente documento, el término "hibernar" se refiere a la operación mediante la cual una actividad (tal como una aplicación, documento, tarjeta, o ventana) queda inactiva, y su información de estado actual se almacena en algún medio de almacenamiento, para reducir el uso de ciertos recursos del sistema tal como, por ejemplo, memoria. En una realización, las actividades de hibernación permanecen visibles en la pantalla, de la misma manera que las actividades activas, o "en vivo", actividades, aunque se puede aplicar una característica visual distintiva para informar al usuario que la actividad está hibernando; por ejemplo, la actividad se puede presentar sombreada o con brillo atenuado, o con un icono superpuesto o adyacente que indica que está hibernando. En otras realizaciones, se pueden usar otros mecanismos para indicar que una actividad está hibernando. En otras realizaciones, no se proporciona un indicador visual para informar al usuario que la actividad está hibernando.
En una realización, las actividades hibernan automáticamente en respuesta a una determinación de que se necesitan recursos adicionales del sistema, o en respuesta a una determinación de que una actividad está teniendo un efecto adverso sobre el rendimiento del sistema, o en respuesta a otros eventos o factores desencadenantes. En una realización, se determina qué actividades deben hibernar, basándose en cuán recientemente se haya utilizado la actividad, la cantidad de recursos del sistema que está utilizando la actividad y/u otros factores. En otra realización, un usuario puede especificar manualmente que una o más actividades deben hibernar.
En una realización, una actividad de hibernación se revive automáticamente cuando un usuario intenta interactuar con la actividad. En otra realización, una actividad de hibernación se revive automáticamente cuando hay suficientes recursos del sistema disponibles para ejecutar la actividad sin afectar negativamente a otras actividades. En otra realización, se revive una actividad de hibernación en respuesta a un comando explícito del usuario. Cuando se revive una actividad, la información de estado se recupera del almacenamiento y, si es necesario, la actividad se vuelve a iniciar para que el usuario pueda reanudar la interacción con ella en el mismo punto en que se encontraba inicialmente en hibernación.
En una realización, la recuperación de una actividad de hibernación puede hacer que otra actividad hiberne automáticamente, particularmente si los recursos del sistema necesitan estar disponibles para revivir la primera actividad.
En una realización, una actividad de hibernación puede cerrarse o descartarse, después de un período de tiempo o en respuesta a algún evento. Tal descartación puede ser apropiada, por ejemplo, cuando hay alguna indicación de que el usuario ya no está interesado en la actividad. El descarte de una actividad hace que se descarte la información del estado, aunque se pueden guardar los archivos de datos abiertos.
En algunas realizaciones, en lugar de provocar automáticamente que las actividades hibernen y/o se descarten, el sistema puede dar al usuario una recomendación de que una o más actividades hibernen y/o se descarten (ya sea para conservar los recursos del sistema o por cualquier otro motivo). El usuario tiene la oportunidad de indicar si la acción recomendada se lleva a cabo o no.
En algunas realizaciones, el usuario puede controlar si tiene lugar la hibernación automática y/o la descartación automática, por ejemplo, a través de una pantalla de preferencias u opciones.
En algunas realizaciones, las actividades pueden hibernar por razones distintas a la gestión de recursos. Por ejemplo, puede ser deseable mantener un límite en el número total de actividades actualmente activas, o "en vivo", actividades, para reducir la confusión del usuario que puede tener lugar si hay demasiadas actividades activas simultáneamente. En tal realización, las actividades pueden hibernar automáticamente cuando se alcanza tal límite. Alternativamente, se le puede solicitar al usuario que seleccione actividades para la hibernación, mientras le permite decidir si las actividades deben o no hibernar.
En una realización, en donde la invención se implementa en un sistema que usa una metáfora de tarjeta, se establece y mantiene una relación posicional persistente entre las tarjetas. La relación posicional puede ser una secuencia unidimensional o alguna relación bidimensional más compleja. La relación posicional es persistente en el sentido de que no cambia a menos que el usuario indique que se debe cambiar, o se produce algún otro evento que indique que un cambio está justificado (tal como el no uso de una actividad, o una actividad que se bloquea o es descartada). En tal realización, las tarjetas para actividades de hibernación pueden mantener sus posiciones con respecto a las tarjetas para actividades en vivo, aunque se puede proporcionar un indicador visual para denotar el estado de hibernación. En otras realizaciones, las tarjetas se reposicionan dentro de la secuencia cuando sus actividades hibernan, por ejemplo, al agruparse entre sí, o se mueven al final de la secuencia de tarjetas, o se reposicionan de otra manera para indicar el estado de hibernación.
En una realización, las técnicas de la presente invención se aplican a cualquier actividad que pueda realizarse sobre un dispositivo informático o cualquier elemento de software que pueda aparecer en un dispositivo informático. El uso del término "actividad" está destinado a referirse a cualquiera de tal actividad o elemento, y no está limitado estrictamente a una aplicación de software autónoma. De este modo, las técnicas de hibernación y reavivación descritas en el presente documento se pueden aplicar a las aplicaciones de software en su conjunto, y/o documentos, tareas, cuadros de diálogo, ventanas, applets, paneles, banners, barras de herramientas, menús, elementos de contenido, imágenes, vídeos, paneles de control, o similares.
En una realización, las técnicas descritas en el presente documento pueden combinarse con las técnicas de reposicionamiento y/o agrupación de tarjetas descritas en la solicitud de patente estadounidense relacionada US 2010/0095240 A1, presentada el 1 de abril de 2009, “Card Metaphor for Activities in a Computing Device”.
Las diversas características descritas anteriormente y en el presente documento se pueden implementar individualmente o en cualquier combinación, como le resultará evidente a un experto en la materia. En la descripción que se proporciona a continuación, se pondrán de manifiesto características y ventajas adicionales.
Breve descripción de las figuras
Los dibujos adjuntos ilustran varias realizaciones de la invención y, junto con la descripción, sirven para explicar los principios de la invención. Un experto en la materia reconocerá que las realizaciones particulares ilustradas en los dibujos son meramente de ejemplo, y no pretenden limitar el alcance de la presente invención.
La Fig. 1A representa un ejemplo de una pantalla de visualización en modo tarjeta, que muestra una tarjeta con foco y una tarjeta parcialmente visualizada, de acuerdo con una realización de la presente invención.
La Fig. 1B representa la pantalla de visualización en modo tarjeta, en donde una actividad está hibernando. La Fig. 1C representa la pantalla de visualización en modo tarjeta, en donde la tarjeta para la actividad de hibernación está en una posición central sobre la pantalla.
La Fig. 1D representa la pantalla de visualización en modo de pantalla completa, en donde se está reviviendo la actividad de hibernación.
La Fig. 1E representa la pantalla de visualización en modo de pantalla completa, en donde se ha revivido la actividad de hibernación previa.
Las Figs. 2A a 2B son una ilustración conceptual que muestra una secuencia en donde el lanzamiento de una primera actividad provoca que una segunda actividad hiberne, de acuerdo con una realización.
Las Figs. 3A a 3D son una serie de ilustraciones conceptuales que muestran una secuencia para revivir una actividad de hibernación de acuerdo con una realización.
La Fig. 4 representa una pantalla de visualización en modo aleatorio, en donde algunas actividades están hibernando, de acuerdo con una realización.
La Fig. 5 representa una pantalla de visualización en modo rejilla, en donde algunas actividades están hibernando, de acuerdo con una realización no reivindicada.
La Fig. 6A representa una pantalla de visualización en modo tarjeta, en donde una actividad asociada con un grupo de tarjetas está hibernando, de acuerdo con una realización.
La Fig. 6B representa una pantalla de visualización en modo aleatorio, en donde una actividad asociada con un grupo de tarjetas está hibernando, de acuerdo con una realización.
La Fig. 7 es un diagrama de flujo que representa un método para provocar que una o más actividades hibernen de acuerdo con una realización.
La Fig. 8 es un diagrama de flujo que representa un método para revivir una actividad de hibernación de acuerdo con una realización.
La Fig. 9 representa un ejemplo de una pantalla de visualización que muestra una advertencia de memoria baja, de acuerdo con una realización.
La Fig. 10A representa un ejemplo de una pantalla de visualización para una realización alternativa de la invención utilizando una interfaz de usuario de escritorio que tiene ventanas superpuestas, en donde una actividad está hibernando, de acuerdo con una realización.
La Fig. 10B representa el ejemplo de la Fig. 10A, en donde se está reviviendo la actividad de hibernación, de acuerdo con una realización.
La Fig. 10C representa el ejemplo de la Fig. 10A, en donde la actividad de hibernación ha sido revivida, de acuerdo con una realización.
La Fig. 11 representa una arquitectura funcional para implementar la invención de acuerdo con una realización.
Descripción detallada de realizaciones
La solicitud de patente estadounidense relacionada US 2009/0293007 A1, presentada el 23 de mayo de2008, "Navigating Among Activities in a Computing Device" y la solicitud de patente estadounidense US 2010/0095240 A1, presentada el 1 de abril de 2009, “Card Metaphor for Activities in a Computing Device”, describen diversas realizaciones para ejecutar dos o más actividades simultáneamente sobre un dispositivo informático, y para interactuar con estas actividades utilizando varios modos y paradigmas de interfaz de usuario. En una realización, la presente invención se implementa en conjunción con las diversas técnicas descritas en estas aplicaciones relacionadas, aunque un experto en la materia reconocerá que la presente invención también puede ser implementada de otras maneras.
Arquitectura del sistema
Haciendo referencia ahora a la Fig. 11, se muestra una arquitectura funcional para implementar la invención de acuerdo con una realización. En diversas realizaciones, la presente invención puede implementarse sobre cualquier dispositivo electrónico 100, tal como un ordenador de mano, asistente digital personal (PDA), ordenador personal, cabina, teléfono móvil, y similares. El dispositivo 100 incluye un procesador 1101 para realizar las etapas de la invención y para realizar otras operaciones relacionadas con la operación del dispositivo 100, que incluyen la ejecución de programas de software y un sistema operativo, y el control de la operación de diversos componentes del dispositivo 100. El dispositivo 100 también incluye el dispositivo de entrada 1104 (tal como un teclado, bola de seguimiento, interruptor basculante, interruptor de cinco direcciones, teclado o pantalla sensible al tacto, o similares), dispositivo de salida 1105 (tal como una pantalla de visualización), y memoria 1106. En algunas realizaciones, el dispositivo de entrada 1104 y el dispositivo de salida 1105 se implementan en combinación, como por ejemplo una pantalla sensible al tacto que permite la manipulación directa de elementos de interfaz de usuario visualizados.
El dispositivo 100 también incluye el dispositivo de almacenamiento 1102, que puede ser un disco duro, memoria flash, o cualquier otro componente fijo o extraíble para el almacenamiento de datos. En una realización, como se explica con más detalle a continuación, el sistema y el método de la presente invención almacenan información de estado de actividad 1103 en el dispositivo de almacenamiento 1102 cuando las actividades entran en hibernación, y recuperan tal información de estado 1103 del dispositivo de almacenamiento 1102 cuando reviven actividades.
En diversas realizaciones, el dispositivo 100 también puede incluir componentes adicionales, tal como, opcionalmente, la interfaz de red 1107 (como Bluetooth® y/o conectividad por cable a una red tal como Internet), y/o la interfaz de red celular 1108 que proporciona funcionalidad de telefonía celular. Es bien conocido proporcionar tal funcionalidad sobre teléfonos inteligentes.
Un experto en la materia reconocerá que la arquitectura funcional representada en la Fig. 11 es meramente a modo de ejemplo, y que se pueden usar otras disposiciones y componentes para implementar la presente invención. Los componentes particulares mostrados en la Fig. 11 no son necesarios para practicar la invención como se reivindica en el presente documento; algunos componentes pueden omitirse, y otros agregarse, sin apartarse de las características esenciales de la invención como se establece en las reivindicaciones.
En una realización, la invención puede implementarse como una característica de un paradigma de gestión de aplicaciones para una aplicación de software o sistema operativo que se ejecuta sobre tal dispositivo. En consecuencia, ciertos aspectos de la presente invención pueden implementarse como parte de una interfaz gráfica de usuario para controlar el software sobre tal dispositivo.
En diversas realizaciones, la invención es particularmente adecuada para dispositivos 100 tales como teléfonos inteligentes, ordenadores de mano, y PDA, que a menudo tienen recursos limitados tales como potencia de procesamiento, memoria, ancho de banda de red, y que son capaces de ejecutar varias aplicaciones de software simultáneamente. Un experto en la materia reconocerá, sin embargo, que la invención se puede poner en práctica en muchos otros contextos, incluyendo cualquier entorno en el que pueda ser deseable proporcionar un mecanismo para hacer que las actividades hibernen, ya sea para conservar los recursos del sistema, mejorar la capacidad de respuesta del sistema, reducir la confusión del usuario, o por cualquier otra razón. En consecuencia, la siguiente descripción pretende ilustrar la invención a modo de ejemplo, en lugar de limitar el alcance de la invención reivindicada.
Haciendo referencia ahora a la Fig. 1A, se muestra un ejemplo de un ejemplo de un dispositivo 100 que incluye una pantalla de visualización 101 que muestra varias actividades simultáneamente utilizando una metáfora de tarjeta. En esta realización, las actividades están asociadas con las tarjetas 301, en donde una o más tarjetas pueden corresponder a una aplicación de software dada. Como se describe en las solicitudes de patente relacionadas mencionadas anteriormente, un usuario puede navegar entre las actividades moviendo las tarjetas dentro y fuera de la pantalla 101. En una realización, las tarjetas 301 retienen una relación posicional persistente entre sí, y están obligadas a moverse a lo largo de un único eje (tal como horizontalmente). En una realización, están disponibles diversos modos para ver e interactuar con las tarjetas 301 de diferentes maneras, como se describe en las solicitudes de patente relacionadas mencionadas anteriormente. El modo representado en la Fig. 1A, en donde una única tarjeta 301C es visible en su totalidad, con una o dos tarjetas adyacentes 301B siendo parcialmente visibles, se denomina "modo de tarjeta", aunque pueden estar disponibles otros modos.
En el ejemplo de la Fig. 1A, la pantalla de visualización 101 también incluye un área de inicio rápido 105, que incluye iconos adicionales 106 para iniciar aplicaciones de software comúnmente utilizadas y otras actividades. El área 105 de inicio rápido no es necesaria para la presente invención, pero se muestra solo con fines ilustrativos. En una realización, como se describe con más detalle a continuación, el sistema de la presente invención hace que las actividades hibernen en respuesta a ciertas condiciones que pueden surgir cuando el usuario intenta iniciar una actividad.
En una realización, la pantalla 101 es sensible al tacto, de modo que un usuario puede iniciar una aplicación de software, o abrir un documento, o iniciar cualquier otra actividad tocando un icono visualizado 106, y puede manipular las tarjetas 301 y otros objetos mostrados tocando y/o gesticulando en diversas áreas de la pantalla 101. Por ejemplo, en una realización el usuario puede descartar una aplicación u otra actividad arrastrando su tarjeta 301 hacia arriba hacia el borde superior de la pantalla 101. En una realización, el usuario puede acceder a actividades abiertas cuyas tarjetas 301 no están visibles actualmente sobre la pantalla 101, arrastrando las tarjetas sobre pantalla 301 en una dirección horizontal, haciendo que las tarjetas fuera de la pantalla 301 salgan a la vista. Los detalles de tales operaciones se describen en las solicitudes de patente relacionadas citadas anteriormente. Un experto en la materia reconocerá que la presente invención puede implementarse en otras realizaciones en donde la pantalla 101 no sea sensible al tacto, y que las técnicas descritas en el presente documento no están limitadas a su aplicabilidad con ningún mecanismo de entrada en particular.
En una realización, el dispositivo 100 también incluye un área de gestos sensible al tacto 102 para ingresar comandos basados en gestos, como se describe en las solicitudes de patente relacionadas mencionadas anteriormente. En otra realización, la pantalla 101 y/o el área de gestos 102 son sensibles al movimiento del usuario en proximidad a la superficie, para detectar gestos y comandos realizados cerca de la superficie, pero sin entrar necesariamente en contacto con la superficie.
Con fines ilustrativos, el dispositivo 100 como se muestra en la Fig. 1A es un asistente digital personal o teléfono inteligente. Tales dispositivos suelen tener capacidad de teléfono, correo electrónico, y capacidad de mensajería de texto, y pueden realizar otras funciones que incluyen, por ejemplo, reproducir música y/o vídeo, navegar por la web, ejecutar aplicaciones de productividad, y similares. La presente invención puede ser implementada, de acuerdo con diversas realizaciones, en cualquier tipo de dispositivo electrónico capaz de ejecutar múltiples aplicaciones de software simultáneamente, y no se limita a dispositivos que tienen la funcionalidad enumerada. De forma adicional, el diseño particular y la disposición de diversas características del dispositivo 100 como se muestra en las Figuras son meramente a modo de ejemplo y no pretenden ser restrictivos del alcance de la invención reivindicada.
En diversas realizaciones, la pantalla táctil 101 y el área de gestos 102 pueden implementarse usando cualquier tecnología que sea capaz de detectar una ubicación de contacto y/o movimiento del usuario próximo a la superficie. Como alternativa, tal y como se ha mencionado anteriormente, la presente invención puede implementarse con otros mecanismos de entrada del usuario, tales como un teclado, una rueda de desplazamiento, un lápiz óptico o similares.
En una realización, el dispositivo 100 como se muestra en la Fig. 1 también tiene un botón físico 103. En una realización, el botón físico 103 puede usarse para alternar entre el modo de pantalla completa y el modo de tarjeta, como se describe en las solicitudes de patente relacionadas. El botón físico 103 no es necesario para la presente invención, y se muestra solo con fines ilustrativos.
Hibernación
En una realización de la presente invención, el dispositivo 100 provoca selectivamente que las actividades hibernen. Esto se puede hacer automáticamente, por ejemplo, en respuesta a ciertos eventos o condiciones de activación, tal como la detección de una condición de poca memoria. Tal condición puede ocurrir, por ejemplo, cuando el número de actividades abiertas excede (o está cerca de exceder) las capacidades del dispositivo 100, o cuando el rendimiento, fiabilidad, y/o estabilidad del dispositivo 100 está/están en peligro de verse comprometidos debido a un exceso de actividades concurrentes. La hibernación puede tener lugar automáticamente, sin intervención del usuario. Alternativamente, se le puede solicitar al usuario que indique si debe continuar con la hibernación, de modo que la hibernación se realice solo si el usuario indica que debería llevarse a cabo. En una realización, un usuario puede iniciar manualmente la hibernación de una actividad, por ejemplo, seleccionando un botón o comando de "hibernación".
Al proporcionar una hibernación selectiva de actividades, la presente invención permite la implementación de un sistema en donde se puede abrir un mayor número de actividades, y en donde el usuario no tiene la carga de cerrar y/o abrir actividades repetidamente, y restaurar el estado manualmente, con el fin de evitar exceder los límites de los recursos del sistema. Como se describe con más detalle a continuación, las actividades de hibernación se pueden revivir fácilmente según sea necesario, con un mínimo de retraso y sin requerir que el usuario vuelva a iniciar o restaurar explícitamente el estado.
También puede ser útil hacer que una actividad hiberne por otras razones, tal como simplificar la operación del dispositivo 100, conservar la atención del usuario, y/o mejorar la seguridad (por ejemplo, para evitar mantener abierta una actividad que pueda hacer que el dispositivo 100 sea vulnerable al acceso no autorizado a través de una red informática).
En una realización, en donde una aplicación de software puede tener más de una tarjeta 301 asociada con ella, las actividades asociadas con tarjetas individuales 301 pueden colocarse en hibernación independientemente una de otra. Alternativamente, las actividades para todas las tarjetas 301 asociadas con una aplicación de software se pueden colocar en hibernación.
En una realización, como se describe con más detalle a continuación, cuando se inicia la hibernación de una actividad, el dispositivo 100 guarda el estado de la actividad en el almacenamiento 1102 para que luego pueda restaurarse. Se toma una instantánea de la interfaz de usuario de la actividad. Esta instantánea, o una porción de la misma, o una imagen derivada de la misma, se usa para reemplazar la vista en vivo presentada en la tarjeta 301 (o tarjetas 301) correspondiente a la actividad. En una realización, se aplica una característica o efecto visual distintivo a la tarjeta 301 correspondiente a la actividad, para informar al usuario que la actividad está hibernando y que la imagen mostrada en la tarjeta 301 es una instantánea estática en lugar de una presentación en vivo de la interfaz de usuario. En una realización, la característica visual distintiva es un icono o indicador de texto; en otra realización, la imagen mostrada en la tarjeta 301 está sombreada, mostrada en blanco y negro, o de otra manera modificada o transformada. En otra realización, el tamaño, orientación, u otra característica visual de la tarjeta 301 se cambia para indicar que la actividad está hibernando. En otra realización la imagen mostrada en la tarjeta 301 se oscurece o aligera, por ejemplo, aplicando una superposición de escala de grises transparente, denominada "malla", encima de la imagen mostrada en la tarjeta 301. En una realización, el sistema operativo del dispositivo 100 aplica la malla cuando se visualiza la tarjeta 301; de este modo, la pantalla 101 muestra la instantánea de la tarjeta 301 con la malla aplicada. En otra realización, la malla se aplica en el momento en que se realiza la instantánea, de modo que la imagen de la instantánea incorpore la malla, y no es necesario aplicar ningún procesamiento adicional cuando se visualiza la instantánea.
En una realización, la instantánea se toma a un nivel de resolución relativamente alto para que se pueda escalar según sea apropiado dependiendo del tamaño visualizado actual de la tarjeta asociada 301. En una realización, la instantánea ocupa la tarjeta 301 asociada con la actividad de hibernación. En otra realización, se introduce alguna animación, por ejemplo, para enfatizar el hecho de que la actividad está hibernando. En aún otra realización, las actividades de hibernación se representan de alguna otra manera, tal como una imagen genérica o un indicador textual, en lugar de representarse mediante una instantánea de la interfaz de usuario.
Haciendo referencia ahora a la Fig. 1B, se muestra la pantalla de visualización 101 en modo tarjeta, en donde la actividad representada por la tarjeta 301B está hibernando. Se ha aplicado una malla a la tarjeta 301B. La malla se representa en la Figura mediante líneas diagonales; no obstante, puede adoptar cualquier forma visual, incluido, por ejemplo, un oscurecimiento general de la imagen asociada con la tarjeta 301B.
En el ejemplo de la Fig. 1B, la imagen que se muestra en la tarjeta 301B es una instantánea estática 152 en lugar de una interfaz de usuario en vivo, ya que la actividad asociada con la tarjeta 301B no se está ejecutando actualmente. Otras actividades en vivo, tal como la representada por la tarjeta 301C, están representadas por una interfaz de usuario en vivo con la que el usuario puede interactuar.
En una realización, las tarjetas 301 para actividades de hibernación mantienen sus posiciones con respecto a las tarjetas 301 para actividades en vivo. En otras realizaciones, las tarjetas 301 se reposicionan dentro de la secuencia cuando sus actividades hibernan, por ejemplo, al agruparse entre sí, o se mueven al final de la secuencia de tarjetas 301, o se reposicionan de otra manera para indicar el estado de hibernación.
Las tarjetas 301 para actividades de hibernación se pueden mover, reposicionar, y manipular de la misma manera que las tarjetas 301 para actividades en vivo, aunque las tarjetas 301 para actividades de hibernación están ocupadas por instantáneas estáticas de sus respectivas interfaces de usuario. De este modo, en una realización, las diversas técnicas para interactuar con las tarjetas 301, como se describe en las solicitudes de patente relacionadas mencionadas anteriormente, pueden aplicarse todas a las tarjetas 301 para actividades de hibernación. Como se describirá con más detalle a continuación, ciertas acciones realizadas por el usuario pueden provocar que se reanude una actividad de hibernación.
Haciendo referencia ahora a la Fig. 1C, se muestra la pantalla de visualización 101 en modo tarjeta, en donde la tarjeta 301B para la actividad de hibernación se ha movido a la posición central sobre la pantalla 101. En una realización, la actividad permanece en el estado de hibernación independientemente de su posición sobre la pantalla 101; de este modo, la instantánea estática 152 se muestra con una malla superpuesta representada aquí por líneas diagonales. Las tarjetas 301A y 301C, ambas representando actividades en vivo, son parcialmente visibles a ambos lados de la tarjeta 301B. En algunas realizaciones, colocar una tarjeta 301 en la posición central hace que su actividad reviva. En otras realizaciones, la reavivación tiene lugar después de que la tarjeta 301 haya ocupado la posición central durante algún período de tiempo.
En una realización, las tarjetas 301 para actividades de hibernación se pueden visualizar también en otros modos. Haciendo referencia ahora a la Fig. 4, se muestra un ejemplo de pantalla 101 en un modo "aleatorio", en el que las tarjetas 301 se presentan en un tamaño reducido con respecto al modo de tarjeta, de modo que se puede presentar más de una tarjeta 301 al completo.
Como se describe en las solicitudes de patente relacionadas mencionadas anteriormente, el modo aleatorio está optimizado para reordenar y manipular tarjetas 301 que representan actividades. En una realización, en modo aleatorio, las tarjetas 301 se muestran en un tamaño reducido, permitiendo de este modo que se muestren más tarjetas 301 en la pantalla 101 simultáneamente. En una realización, cuando el dispositivo 100 está en modo aleatorio, las tarjetas 301 están dispuestas linealmente tal como están en modo de tarjeta. El usuario puede reorganizar las tarjetas 301 como se describe anteriormente para el modo de tarjeta, y sustancialmente todos los comportamientos descritos anteriormente con respecto al modo de tarjeta también se aplican al modo aleatorio. De este modo, cuando el usuario arrastra una tarjeta 301 hacia la izquierda o hacia la derecha dentro de la pantalla de visualización 100, otras tarjetas 301 se mueven en concierto con la tarjeta arrastrada 301. El modo aleatorio proporciona una forma de reorganizar las tarjetas mientras se pueden ver más tarjetas 301 simultáneamente.
Como se muestra en la Fig. 4, en una realización se muestran tres tarjetas 301C, 301D, 301E en su totalidad, y se muestran porciones de otras dos tarjetas 301B, 301F. Las tarjetas 301A y 301G se muestran en la Fig. 4 con fines ilustrativos para representar su relación posicional con las tarjetas visibles 301C, 301D, 301E, aunque las tarjetas 301A y 301G están fuera de la pantalla y actualmente no son visibles sobre la pantalla 101.
En el ejemplo de la Fig. 4, las actividades correspondientes a las tarjetas 301A, 301E, y 301G están hibernando. En consecuencia, se muestran instantáneas estáticas 152A, 152E y 152G, respectivamente, dentro de las tarjetas 301A, 301E y 301G, reemplazando la interfaz de usuario en vivo para esas tarjetas. En una realización, las tarjetas 301A, 301E, y 301G se superponen mediante mallas para indicar el estado de hibernación. Alternativamente, como se describió anteriormente, se pueden usar otros mecanismos para indicar el estado de hibernación.
Haciendo referencia ahora a la Fig. 5, se muestra un ejemplo de pantalla 101 en un modo de "cuadrícula", en el que el tamaño de la tarjeta se reduce de acuerdo con el espacio de pantalla disponible. En una realización, el modo de cuadrícula permite al usuario ver más tarjetas 301 en la pantalla 101 presentando tarjetas 301 en una cuadrícula bidimensional.
Como se describe en las solicitudes de patente relacionadas mencionadas anteriormente, en modo de cuadrícula, las tarjetas 301 se presentan en un tamaño que permite que todas las tarjetas 301 se muestren simultáneamente. De este modo, por ejemplo, en la Fig. 5, las tarjetas 301 se muestran en un tamaño que permite que las siete tarjetas abiertas 301 se muestren simultáneamente. A medida que las tarjetas 301 se descartan o se lanzan, las tarjetas 301 se pueden escalar adecuadamente para permitir que todas las tarjetas 301 se muestren simultáneamente.
Como se describe en las solicitudes de patente relacionadas mencionadas anteriormente, en una realización, en modo de cuadrícula, se aplica un tamaño mínimo de tarjeta 301 (o un número máximo de tarjetas mostradas 301), incluso si esto significa que solo puede visualizarse un subconjunto de tarjetas 301. De este modo, en efecto, una vez que las tarjetas 301 se han reducido al tamaño mínimo (o una vez que se muestra el número máximo de tarjetas visualizadas 301 en la pantalla 101), no tiene lugar un mayor escalado descendente. En cambio, se permite el desplazamiento para permitir al usuario acceder a las tarjetas 301 restantes que no se visualizan. Se puede proporcionar alguna indicación visual para informar al usuario que se puede acceder a las tarjetas adicionales 301 mediante desplazamiento, por ejemplo, mostrando los bordes de las tarjetas 301 que están fuera de la pantalla. El usuario puede desplazarse, por ejemplo, moviendo las tarjetas 301 hacia la izquierda o hacia la derecha, o realizando un gesto en el área de gestos 102, o por cualquier otro medio conocido.
En el ejemplo de la Fig. 5, en una realización, las tarjetas 301A a 301G se visualizan completas mientras el dispositivo 100 está en modo de cuadrícula. Las actividades correspondientes a las tarjetas 301A, 301E, y 301G están hibernando. En consecuencia, las instantáneas estáticas 152<a>, 152E, y 152G se muestran, respectivamente, dentro de las tarjetas 301A, 301E, y 301G, reemplazando la interfaz de usuario en vivo para esas tarjetas. En una realización, las tarjetas 301A, 301E, y 301G superpuestas mediante mallas para indicar el estado de hibernación. Alternativamente, como se describió anteriormente, se pueden usar otros mecanismos para indicar el estado de hibernación.
En una realización, como se describe en las solicitudes de patente relacionadas mencionadas anteriormente, las tarjetas 301 pueden agruparse visualmente entre sí. De este modo, las tarjetas 301 que tienen alguna relación entre sí (tal como las tarjetas 301 asociadas con una aplicación de software particular) pueden mostrarse de una manera que indique y/o refuerce la relación. Por ejemplo, se pueden agrupar las tarjetas 301 que representan diversas páginas web que se ven a través de una aplicación de navegador.
En una realización, si una aplicación de software asociada con un grupo de tarjetas 301 está hibernando, todas las tarjetas 301 en el grupo se muestran con instantáneas estáticas 152 y mallas.
Por ejemplo, un paradigma visual para indicar grupos de tarjetas 301 es representar las tarjetas 301 de una manera que se parezca a una pila o mazo, con una tarjeta frontal completamente visible 301 (o "tarjeta superior") y una o más tarjetas adicionales 301 representadas como si estuvieran detrás de la tarjeta frontal 301. Haciendo referencia ahora a la Fig. 6A, se muestra un ejemplo de tal paradigma para indicar grupos de tarjetas 301 en modo tarjeta, en donde ocho tarjetas 301A, 301B, 301C, 301C', 301C", 301C''', 301D, y 301E están abiertas, y la tarjeta 301C está actualmente en la posición de foco (centro de la pantalla 101). Las tarjetas 301C, 301C', 301C", and 301C''' forman un grupo de tarjetas, por ejemplo, debido al hecho de que todas están asociadas con una aplicación de software común; por lo tanto, se representan en una pila. En el ejemplo, la aplicación de software asociada con el grupo de tarjetas está hibernando; por lo tanto, las tarjetas 301C, 301C', 301C", y 301C'" contienen instantáneas estáticas 152 de sus respectivas interfaces de usuario, y se superponen con mallas. Para algunas de las tarjetas 301, solo una porción de la instantánea estática 152 es visible porque la tarjeta 301 se representa como detrás de otras tarjetas 301.
Otro ejemplo de un paradigma visual para indicar grupos de tarjetas 301 es representar las tarjetas agrupadas 301 en un tamaño diferente o desplazamiento vertical con respecto a otras tarjetas 301. Haciendo referencia ahora a la Fig. 6B, se muestra un ejemplo de tal paradigma para indicar grupos de tarjetas 301 en modo aleatorio, en donde ocho tarjetas 301A, 301B, 301C, 301C', 301C", 301C''', 301D, y 301E están abiertas. Las tarjetas 301C, 301C', 301C", and 301C''' forman un grupo de tarjetas, por ejemplo, debido al hecho de que todas están asociadas con una aplicación de software común; por lo tanto, se representan con un desplazamiento vertical diferente al de otras tarjetas 301A, 301B, 301D, 301E. En el ejemplo, la aplicación de software asociada con el grupo de tarjetas está hibernando; por lo tanto, las tarjetas 301C, 301C', 301C", y 301C'" contienen instantáneas estáticas 152 de sus respectivas interfaces de usuario, y se superponen con mallas.
Revivir
En una realización, una actividad de hibernación se revive cuando un usuario intenta interactuar con ella. Como se describe en las solicitudes de patente relacionadas mencionadas anteriormente, si un usuario toca o hace clic en la tarjeta 301 para una actividad, esa actividad se enfoca; en una realización, el dispositivo 100 cambia a un modo de pantalla completa en donde el usuario puede interactuar con la actividad. En una realización, si el usuario toca o hace clic en la tarjeta 301 para una actividad de hibernación, la actividad se revive automáticamente para que el usuario pueda interactuar con ella. En una realización, primero se pregunta al usuario, por ejemplo, a través de un cuadro de diálogo (no mostrado) si la actividad seleccionada debe revivirse. En otra realización, la actividad se reaviva sin preguntar primero al usuario.
La reavivación de una o más actividades puede tener lugar en cualquier modo de visualización, ya sea en modo tarjeta, modo pantalla completa, modo barajar, modo cuadrícula o cualquier otro modo. De acuerdo con varias realizaciones de la invención, diferentes tipos de eventos desencadenantes pueden hacer que una actividad sea revivida. En una realización, la conmutación de un modo a otro puede desencadenar la reavivación; en otras realizaciones, comunicaciones entrantes, alertas, intentos del usuario de realizar determinadas acciones, y/u otros eventos pueden desencadenar la reavivación de una o más actividades. En algunas realizaciones, la colocación de una tarjeta 301 en la posición central provoca la reavivación de su actividad. En otras realizaciones, la reavivación tiene lugar después de que la tarjeta 301 haya ocupado la posición central durante cierto período de tiempo.
En algunos casos, puede llevar tiempo revivir una actividad, a medida que se recuperan los datos de la información de estado de actividad 1103 y se vuelve a iniciar la actividad. Con referencia ahora a la Fig. 1D, se muestra un ejemplo de pantalla 101 en modo de pantalla completa, mientras se revive la actividad de hibernación representada por la tarjeta 301B de la Fig. 1C. Esto puede ocurrir, por ejemplo, si el usuario toca la tarjeta 301B de la Fig. 1C. En una realización, el dispositivo 100 inicia la actividad de hibernación, recupera la información de estado 1103, y restaura la actividad a su estado en el momento en que entró en hibernación. En una realización, mientras tiene lugar la reavivación, la instantánea estática 152 se amplía para llenar la pantalla 101, y se muestra el indicador de progreso 151. En el ejemplo de la Fig. 1D, el indicador de progreso 151 se muestra como una rueda giratoria; no obstante, un experto en la técnica reconocerá que puede usarse cualquier otro indicador de progreso 151, tal como una barra de estado, reloj de arena, icono de reloj, o similares. El indicador de progreso 151 puede ser estático o animado.
Una vez que la reavivación se completa, la instantánea estática 152 se sustituye por una interfaz de usuario activa para la actividad, y se descarta la malla (u otra indicación visual del estado de hibernación). En una realización, un efecto de transición visual, tal como un efecto de disolución, se realiza entre la visualización de la instantánea estática 152 y la visualización de la interfaz de usuario activa. Una vez completado el proceso de reavivación, se descarta el indicador de progreso 151.
Haciendo referencia ahora a la Fig. 1E, se muestra un ejemplo de pantalla de visualización 101 en modo de pantalla completa una vez completado el proceso de reavivación. Se ha revivido la actividad de hibernación previa, se han suprimido la malla y el indicador de progreso 151, y se presenta una interfaz de usuario activa 153 para la actividad en lugar de la instantánea estática 152.
Haciendo ahora referencia a las Figs. 3A a 3D son una serie de ilustraciones conceptuales que muestran una secuencia para revivir una actividad de hibernación de acuerdo con una realización. En la Fig. 3A, siete tarjetas 301A-301G están abiertas, con cinco de las tarjetas 301A, 301D, 301E, 301F, 301G representando actividades en vivo con las que el usuario puede interactuar, y dos tarjetas 301B, 301C representando las actividades en hibernación. Las instantáneas estáticas 152B, 152C se presentan en tarjetas 301B, 301C, respectivamente, para reemplazar las interfaces de usuario en vivo para esas tarjetas 301B, 301C. Una malla, representadas por líneas diagonales, superpone instantáneas estáticas 152B, 152C. La información de estado 1103 para las actividades de hibernación se ha almacenado en el dispositivo de almacenamiento 1102 del dispositivo 100.
Las Figs. 3A a 3D son ilustraciones conceptuales, en las que se representan las tarjetas 301 que no se muestran actualmente en la pantalla 101. Por ejemplo, en la Fig. 3A, la tarjeta 301D se muestra en su totalidad, mientras que se muestran porciones de las tarjetas 301C y 301E. Otras tarjetas 301 se muestran con fines ilustrativos para representar su relación posicional con las tarjetas visibles, a pesar de que estas otras tarjetas 301 están fuera de la pantalla y no están visibles actualmente en la pantalla 101. Como se describe en las solicitudes de patente relacionadas mencionadas anteriormente, el usuario puede interactuar con el dispositivo 100 para hacer que otras tarjetas 301A, 301B, 301F, 301G se muestren, y cambiar las posiciones de las tarjetas 301 y/o interactuar de otra manera con las tarjetas 301.
En una realización, una actividad de hibernación se reactiva cuando el usuario intenta interactuar con la tarjeta 301 asociada (que no sea para cambiar la posición o descartar la tarjeta 301). Por ejemplo, si el usuario cambia al modo de pantalla completa mientras una tarjeta 301 para una actividad de hibernación está en la posición de foco (posición central) en la pantalla 101, en una realización la actividad se reactivará automáticamente. Las Figs. 3B a 3D muestran un ejemplo de tal proceso.
En la Fig. 3B, el usuario ha cambiado las posiciones de las tarjetas 301 para que la tarjeta 301C esté ahora en la posición central (de foco) en la pantalla 101.
En la Fig. 3C, el usuario ha hecho que la pantalla 101 cambie al modo de pantalla completa, por ejemplo, tocando en la tarjeta 301C o indicando de otro modo que desea interactuar con la tarjeta 301C. En consecuencia, la instantánea estática 152C asociada a la tarjeta 301C ahora ocupa sustancialmente toda la pantalla 101 (aunque en algunas realizaciones, una porción de la pantalla 101 puede estar dedicada a indicadores de estado y otra información, no mostrado en la Fig. 3C). La instantánea estática 152C se escala verticalmente para ajustarse al área mostrada. Mientras se relanzó la actividad y se recupera la información de estado 1103 del dispositivo de almacenamiento 1102, y se muestra el indicador de progreso 151. En una realización, el indicador de progreso 151 podrá incluir animación, y puede tomar cualquier forma; la rueca que se muestra en la Fig. 3C es simplemente un ejemplo.
En la Fig. 3D, el proceso de reavivación se ha completado y la pantalla de visualización 101 está en modo de pantalla completa. Se ha revivido la actividad de hibernación previa, se han suprimido la malla y el indicador de progreso 151, y se presenta una interfaz de usuario activa 153C para la actividad en lugar de la instantánea estática 152C. Como se ha mencionado anteriormente, un efecto de transición, tal como un efecto de disolución, se puede utilizar para suavizar la transición de la Fig. 3C a la Fig. 3D.
Eventos desencadenantes
De acuerdo con diversas realizaciones de la presente invención, la hibernación de las actividades se puede iniciar en respuesta a cualquiera de una serie de eventos desencadenantes diferentes. En una realización, la hibernación se inicia cuando se detecta una condición de memoria insuficiente. En otras realizaciones, la hibernación se inicia cuando se determina que el rendimiento, fiabilidad, y/o la estabilidad del dispositivo 100 puede(n) verse comprometida(s) por el agotamiento o la sobrecarga de los recursos del sistema, tal como la memoria, velocidad del procesador, el ancho de banda de la red, o similares. Tales condiciones pueden ocurrir, por ejemplo, cuando demasiadas actividades están abiertas simultáneamente, o cuando algunas o todas las actividades abiertas consumen una fracción excesivamente grande de los recursos del sistema disponibles.
En una realización, un intento de iniciar una nueva actividad puede desencadenar la hibernación de una actividad ya abierta. Por ejemplo, si la actividad recién iniciada no puede iniciarse sin liberar algunos recursos del sistema, o si la actividad recién lanzada no puede añadirse al conjunto de actividades actualmente abiertas sin efectos perjudiciales para el rendimiento del sistema, a continuación, la hibernación de una actividad previamente abierta puede iniciarse automáticamente en respuesta al intento de lanzamiento de la nueva actividad.
Haciendo referencia ahora a las Figs. 2A y 2B, se muestra una ilustración conceptual que muestra una secuencia en donde el lanzamiento de una primera actividad provoca que una segunda actividad hiberne. En la Fig. 2A, una serie de actividades están abiertas, cada una representada por una tarjeta 301A a 301D dispuesta en una fila. Las tarjetas 301A a 301D representan vistas de la interfaz de usuario para las actividades abiertas que se pueden mover a la pantalla de visualización 101 en respuesta a los comandos del usuario. En la Fig. 2A, el usuario está lanzando una nueva actividad representada por la tarjeta 301E. La tarjeta 301E se está introduciendo en una posición en la fila a la derecha de la tarjeta 301D. Las tarjetas 301A, 301B, y 301C se muestran en las Figs. 2A y 2B con fines ilustrativos para representar su relación posicional con las tarjetas visibles 301D y 301E, aunque las tarjetas 301A, 301B, y 301C están fuera de la pantalla y actualmente no son visibles sobre la pantalla 101.
En este ejemplo, el sistema determina que el inicio de la nueva actividad dará lugar a una condición de memoria insuficiente u otra sobrecarga de recursos del sistema. En consecuencia, el dispositivo 101 hace que una de las actividades abiertas hiberna, liberando así recursos del sistema y permitiendo el lanzamiento de la nueva actividad. Como se muestra en la Fig. 2B, la tarjeta 301B está superpuesta con una malla, y la interfaz de usuario que se presenta en ella se reemplaza por una captura de pantalla estática que representa el estado de la actividad asociada. La nueva actividad se ha puesto en marcha en modo de pantalla completa, de modo que la nueva tarjeta 301E ocupe toda la pantalla 101.
Las técnicas particulares para determinar qué actividad debe seleccionarse para la hibernación se discuten con más detalle a continuación.
En algunas realizaciones, cuando una aplicación de software pueda estar asociada a dos o más tarjetas 301, las tarjetas 301 pueden hibernar y/o ser revividas independientemente unas de otras. De este modo, una tarjeta 301 asociada con una aplicación de software puede ser seleccionada para la hibernación, mientras que otra tarjeta 301 para la misma aplicación de software permanece activa. En cambio, una tarjeta en hibernación 301 asociada con una aplicación de software puede ser revivida mientras que otra tarjeta 301 para la misma aplicación de software permanece en hibernación.
En otras realizaciones, se puede seleccionar una aplicación de software para la hibernación, de modo que todas las tarjetas 301 asociadas con esa aplicación de software hibernan en concierto entre sí. En cambio, cuando se está reviviendo la aplicación de software, todas las tarjetas 301 asociadas con esa aplicación de software se reviven en concierto entre sí.
Método
Haciendo referencia ahora a la Fig. 7, se muestra un diagrama de flujo que representa un método para provocar que una o más actividades hibernen de acuerdo con una realización.
En una realización, el procesador 1101 en el dispositivo 100 detecta 701 una condición de memoria baja o una condición de memoria baja potencial. En otras realizaciones, otros eventos pueden desencadenar la hibernación, tal como la detección de que se ha alcanzado algún límite fijo en las actividades abiertas, o que algunas actividades han estado abiertas sin ser utilizadas por el usuario durante algún período de tiempo, o cualquier otro evento desencadenante. Si no se ha producido ningún tal evento o condición desencadenante de este tipo, el método termina 799.
El procesador 1101 selecciona 702 una actividad (o más de una actividad) para la hibernación. La selección 702 se puede hacer en base a cualquier factor o combinación de factores, incluido el uso de memoria, la importancia percibida de la actividad, tiempo transcurrido desde la última vez que el usuario vio o utilizó la actividad, o similares.
En una realización, se establece un orden de prioridad con el fin de determinar qué categorías de actividades deben ponerse en hibernación primero. Un ejemplo de tal orden de prioridad es el siguiente (desde el primero que se coloca en hibernación hasta el último):
navegador web;
otras actividades no directamente asociadas con la comunicación con otras partes;
aplicación de mensajería;
aplicación de correo electrónico;
aplicación telefónica.
En una realización, la aplicación telefónica no se pone en hibernación si una llamada activa está en curso.
En una realización, el procesador 1101 selecciona 702 una actividad para la hibernación de acuerdo con la lista de prioridades. Si la hibernación de la actividad seleccionada es insuficiente para resolver la condición de memoria insuficiente (o cualquier condición que desencadenó la operación de hibernación), se selecciona otra actividad. El proceso se repite hasta que se ha resuelto la condición que desencadenó la hibernación.
En una realización, donde una aplicación de software puede tener más de una tarjeta 301 asociada con ella, las tarjetas individuales 301 pueden colocarse en hibernación independientemente una de otra. De este modo, el procesador 1101 selecciona 702, para la hibernación, una tarjeta individual 301 asociada a una aplicación de software de acuerdo con la lista de prioridades. En una realización, el procesador 1101 selecciona la tarjeta 301 que ocupa más memoria, o consumir la mayoría de los recursos del sistema entre las tarjetas asociadas con la aplicación de software seleccionada. En otra realización, algún otro criterio (o más de un criterio) se puede utilizar para seleccionar una tarjeta individual 301 para la hibernación. Si la hibernación de la actividad asociada con la tarjeta 301 seleccionada es insuficiente para resolver la condición de memoria insuficiente (o cualquier condición que desencadenó la operación de hibernación), se selecciona otra tarjeta 301 para esa aplicación de software. El proceso se repite hasta que se ha resuelto la condición que desencadenó la hibernación.
De este modo, en una realización, las tarjetas sucesivas 301 para una aplicación de software dada se seleccionan para la hibernación antes de que las tarjetas 301 para una aplicación de software diferente se seleccionen para la hibernación. En otra realización, las tarjetas 301 se seleccionan en función de la cantidad de memoria u otros recursos que consumen, independientemente de la aplicación de software a la que estén asociados. De este modo, en esta segunda realización, no es necesario que todas las tarjetas 301 para una aplicación de software determinada se seleccionen para la hibernación antes de que se seleccionen las tarjetas 301 para una aplicación de software diferente.
En otras realizaciones, se pueden emplear otros criterios para seleccionar 702 actividades para la hibernación. La selección puede basarse en cualquiera de lo siguiente, solo o en cualquier combinación:
• Qué actividad está utilizando la mayor cantidad de memoria;
• Qué actividad está utilizando la mayoría de los recursos del sistema;
• Qué actividad está utilizando la mayor cantidad de memoria, pero no está actualmente en foco (uso activo);
• Qué actividad está utilizando la mayor cantidad de recursos del sistema, pero no está actualmente en foco (uso activo);
• Qué actividad está utilizando la mayor cantidad de memoria, pero no está actualmente visible en la pantalla 101;
• Qué actividad está utilizando la mayor cantidad de recursos del sistema, pero no está actualmente visible en la pantalla 101;
• Qué actividad fue utilizada o vista menos recientemente por el usuario;
• Qué actividad se lanzó menos recientemente;
• Qué actividad ha sido designada por el usuario como apropiada para la hibernación.
En una realización, podrá emplearse una heurística, incluyendo una combinación de cualquiera o todos los factores anteriores. Un experto en la materia reconocerá que la lista anterior es meramente a modo de ejemplo, y que se pueden emplear otros factores.
La Fig. 7 muestra detalles adicionales para el proceso de hibernación de acuerdo con una realización. Se toma una instantánea y se guarda 703 de la interfaz de usuario asociada con la actividad que se va a poner en hibernación. La interfaz de usuario o el contenido de la tarjeta 301 se reemplazan 704 con la instantánea. Como se discutió anteriormente, la instantánea puede ser una imagen estática o puede ser animada. Una malla se puede superponer sobre la instantánea, y/o se puede aplicar alguna otra indicación del estado de hibernación. En una realización, se puede emplear un efecto de transición mientras la malla está superpuesta.
El procesador 1101 guarda 705 la información de estado de actividad 1103 en el dispositivo de almacenamiento 1102. Si una o más tarjetas individuales 301 para una aplicación de software se están colocando en hibernación, en una realización se almacena el estado de esa(s) tarjeta(s) 301. En una realización, si no quedan actividades en curso para una aplicación de software, la aplicación de software está cerrada 706 con el fin de liberar recursos para otras actividades.
El procesador 1101 determina 707 si se ha liberado suficiente memoria (o si se ha resuelto cualquier condición desencadenada por la operación de hibernación). En caso afirmativo, el proceso termina 799. De otra manera, el procesador vuelve a la etapa 702 para seleccionar otra actividad para la hibernación.
Haciendo referencia ahora a la Fig. 8, se muestra un diagrama de flujo que representa un método para revivir una actividad de hibernación de acuerdo con una realización. El procesador 801 detecta un evento desencadenante para revivir una actividad de hibernación. En una realización, un usuario que intenta interactuar con una tarjeta 301 es tal evento desencadenante. En otras realizaciones, se pueden aplicar otros eventos desencadenantes, tal como un comando explícito del usuario para revivir una actividad, o un cambio al modo de pantalla completa mientras una tarjeta 301 está en una posición de foco. Si no se detecta ningún evento desencadenante 801, el método termina 899.
En una realización, mientras se reaviva la actividad, la pantalla de visualización 101 muestra el indicador de progreso 151. La actividad que se está reavivando se lanza 803, si aún no se ha puesto en marcha. En una realización, cuando se esté reviviendo una tarjeta individual 301, la aplicación de software asociada con la tarjeta 301 ya puede estar activa porque existen otras tarjetas 301 y están en vivo para la aplicación de software. De este modo, puede que no sea necesario iniciar la aplicación de software. El procesador 1101 recupera la información de estado de actividad 804 1103 del dispositivo de almacenamiento 1102, con el fin de restaurar el estado de la actividad. La instantánea para la tarjeta 301 se reemplaza 805 con la interfaz de usuario activa adecuada; cualquier malla u otro indicador del estado de hibernación se descarta. En una realización, se puede emplear un efecto de transición mientras se introduce la interfaz de usuario en vivo y se descarta la malla u otro indicador. Una vez que la actividad se reactiva por completo, se descarta 806 el indicador de progreso 151, y el método termina 899.
Notificación al usuario
Como se describió anteriormente, en una realización, las actividades se ponen en hibernación automáticamente en respuesta a ciertos eventos desencadenantes. En otras realizaciones, es posible que se pida al usuario que indique si las actividades deben ponerse en hibernación.
En algunas realizaciones, cuando los recursos (tal como la memoria 1106) del dispositivo 100 son bajos, y las actividades están en hibernación, puede ser conveniente prevenir o limitar el lanzamiento de nuevas actividades. De este modo, si el usuario intenta iniciar una nueva actividad en tales condiciones, se puede pedir al usuario que descarte las actividades con el fin de liberar recursos para nuevas actividades. Tal mensaje también puede ser apropiado cuando una nueva actividad se lanzaría automáticamente, tal como para mostrar un nuevo mensaje de correo electrónico entrante o por cualquier otro motivo.
Haciendo referencia ahora a la Fig. 9, se muestra un ejemplo de una pantalla de visualización que muestra una advertencia de memoria baja, de acuerdo con una realización. Como se muestra en la Fig. 9, se presenta un mensaje de memoria baja 901, pedir al usuario que deseche (descarte) las tarjetas 301 para liberar memoria para las nuevas tarjetas. El mensaje 901, por lo tanto, puede dar al usuario la oportunidad de evitar la hibernación no deseada de actividades descartando las tarjetas 301 que representan actividades innecesarias. El usuario puede activar el botón Aceptar 902 para indicar que ha terminado de descartar las tarjetas 301 que representan actividades.
En una realización, se puede proporcionar un indicador visual para indicar al usuario que una actividad está potencialmente sujeta a hibernación en caso de que surja la necesidad, o que la hibernación es inminente. Por ejemplo, se puede presentar un indicador visual para informar al usuario de que, en caso de que la hibernación se considere necesaria o aconsejable, es probable que se seleccione una actividad determinada (tal como una que es de baja prioridad o que el usuario no ha utilizado recientemente). Un ejemplo de tal indicador es una representación visual de la decadencia, por ejemplo, superpuesto sobre la interfaz de usuario para la tarjeta 301.
En una realización, en determinadas condiciones, las actividades de hibernación se pueden descartar por completo. Por ejemplo, en una realización, si el dispositivo 100 está apagado, o entra en un estado de suspensión, se descartan las actividades de hibernación, y su información de estado 1103 se descarta del dispositivo de almacenamiento 1102. En una realización, se guardan todos los documentos abiertos asociados con las actividades de hibernación. En una realización, se puede presentar una notificación para informar al usuario de que estas actividades deben ser (o han sido) descartadas.
En una realización, la hibernación se implementa como preludio del despido. De este modo, se emplea un proceso en dos etapas, en donde las actividades se ponen en hibernación para conservar los recursos del sistema; entonces, después de algún período de tiempo, si las actividades de hibernación no se reactivan, se descartan.
Metáfora de escritorio
La metáfora de la tarjeta descrita anteriormente es meramente un ejemplo de un entorno para la implementación de la presente invención. En otras realizaciones la presente invención se puede implementar en relación con otros tipos de interfaces de usuario, incluyendo, por ejemplo, una interfaz basada en escritorio que tiene ventanas superpuestas. Haciendo referencia ahora a las Figs. 10A a 10C, se muestran ejemplos de una pantalla de visualización 1000 para tal implementación de la presente invención.
La Fig. 10A muestra un ejemplo de una pantalla de visualización 100 para una realización de la invención utilizando una interfaz de usuario de escritorio con ventanas superpuestas. Cuatro ventanas 1001A, 1001B, 1001C, y 1001D están abiertas. Estas ventanas 1001A, 1001B, 1001C, y 1001D puede estar asociadas con diferentes aplicaciones de software, o dos o más ventanas 1001A, 1001B, 1001C, y 1001D pueden estar asociadas con una única aplicación de software. En el ejemplo de la Fig. 10A, una actividad asociada con la ventana 1001C está hibernando, para que la ventana 1001C incluya una instantánea estática de la actividad con una malla superpuesta. El usuario puede manipular la ventana 1001C de la misma manera que otras ventanas 1001A, 1001B, y 1001D, incluido el cambio de tamaño, mover, minimizar, maximizar y similares, como es bien sabido en la técnica de las interfaces gráficas de usuario que utilizan ventanas superpuestas de tamaño variable en un entorno que emplea una metáfora de escritorio.
En la Fig. 10B, se ha desencadenado la reavivación de la actividad asociada a la ventana 1001C. Por ejemplo, el usuario puede haber intentado interactuar con el contenido de la ventana 1001C, hacer a doble clic sobre la ventana 1001C, o puede haber activado un comando explícito para revivir la actividad. La actividad se reactiva restaurando su estado almacenado anteriormente. Si se ha cerrado la aplicación de software subyacente, re vuelve a lanzar. Como se muestra en la Fig. 10B, el indicador de progreso 1002, aquí se muestra como una barra de estado, informa al usuario que la reavivación está en curso.
En la Fig. 10C, se ha completado la operación de reavivación, y el usuario puede interactuar con una interfaz de usuario activa en la ventana 1001C. En consecuencia, se han suprimido la malla y el indicador de progreso 1002. En una realización, como se describió anteriormente, se puede emplear un efecto de transición antes de presentar la interfaz de usuario en vivo.
En diversas realizaciones, la presente invención puede ser implementada como un sistema o un método para realizar las técnicas descritas anteriormente, ya sea por separado o en cualquier combinación. En otra realización, la presente invención puede ser implementada como un producto de programa informático que comprende un medio de almacenamiento legible por ordenador y un código de programa de ordenador, codificado sobre el medio, para realizar las técnicas descritas anteriormente.
Las diversas características descritas anteriormente se pueden implementar por separado o en cualquier combinación, como será evidente para un experto en la materia.
La presente invención ha sido descrita con particular detalle con respecto a posibles realizaciones. Aquellos expertos en la materia apreciarán que la invención puede ser practicada en otras realizaciones. Primero, la denominación particular de los componentes, capitalización de términos, los atributos, estructuras de datos, o cualquier otro aspecto de programación o estructural no sea obligatorio o significativo, y los mecanismos que implementan la invención o sus características pueden tener diferentes nombres, formatos, o protocolos. Además, el sistema podrá implantarse mediante una combinación de hardware y software, como se describe, o enteramente en elementos de hardware, o completamente en elementos de software. Además, la división particular de la funcionalidad entre los diversos componentes del sistema descritos en el presente documento es meramente ejemplar, y no es obligatorio; en su lugar, las funciones realizadas por un único componente del sistema pueden ser realizadas por múltiples componentes, y las funciones realizadas por varios componentes pueden ser realizadas por un único componente.
En diversas realizaciones, la presente invención puede ser implementada como un sistema o un método para realizar las técnicas descritas anteriormente, ya sea por separado o en cualquier combinación. En otra realización, la presente invención puede ser implementada como un producto de programa informático que comprende un medio de almacenamiento legible por ordenador y un código de programa de ordenador, codificado sobre el medio, por hacer que un procesador en un dispositivo informático u otro dispositivo electrónico realice las técnicas descritas anteriormente.
La referencia en la memoria descriptiva a "una realización" o a "la realización" significa que una característica particular, estructura, o característica descrita en relación con las realizaciones se incluye en al menos una realización de la invención. Las apariencias de la frase "en una realización" en diversos lugares de la memoria descriptiva no se refieren necesariamente a la misma realización.
Algunas porciones de lo anterior se presentan en términos de algoritmos y representaciones simbólicas de operaciones en bits de datos dentro de una memoria informática. Estas descripciones y representaciones algorítmicas son los medios que los expertos en la materia de procesamiento de datos utilizan para transportar más efectivamente la sustancia de su trabajo a otros expertos en la materia. Un algoritmo está aquí, y en general, concebido para ser una secuencia autoconsistente de etapas (instrucciones) que conduce a un resultado deseado. Las etapas son las que requieren manipulaciones físicas de cantidades físicas. Usualmente, aunque no necesariamente, dichas cantidades adoptarán la forma de señales eléctricas, magnéticas u ópticas susceptibles de ser almacenadas, transferidas, combinadas, comparadas, transformadas, y de otra manera manipuladas. Es conveniente a veces, principalmente por razones de uso común, referirse a estas señales como bits, valores, elementos, símbolos, caracteres, términos, números, o similares. Asimismo, también es conveniente a veces, hacer referencia a determinadas disposiciones de etapas que requieren manipulaciones físicas de cantidades físicas como módulos o dispositivos de código, sin pérdida de generalidad.
Hay que tenerlo en cuenta, no obstante, que todos estos y otros términos similares se asocien a las cantidades físicas apropiadas y que sean meras etiquetas convenientes aplicadas a estas cantidades. A menos que se indique específicamente lo contrario, como se desprende de la siguiente discusión, se aprecia que, a lo largo de la descripción, discusiones que utilizan términos tales como "procesamiento" o "computación" o "cálculo" o "visualización" o "determinación" o similares, se refieren a la acción y procesos de un sistema informático, o módulo y/o dispositivo informático electrónica similar, que manipula y transforma los datos representados como cantidades físicas (electrónicas) dentro de las memorias o registros del sistema informático u otro tipo de almacenamiento de información, dispositivos de transmisión o visualización.
Ciertos aspectos de la presente invención incluyen las etapas del proceso y las instrucciones aquí en el presente documento en forma de algoritmo. Cabe señalar que las etapas del proceso y las instrucciones de la presente invención pueden ser incorporados en software, firmware y/o hardware, y cuando se incorpora en software, se puede descargar para residir y ser operado desde diferentes plataformas utilizadas por una variedad de sistemas operativos.
La presente invención también se refiere a un aparato para realizar las operaciones realizadas en el presente documento. Este aparato se puede construir especialmente para los fines requeridos, o puede comprender un ordenador de propósito general activado o reconfigurado selectivamente por un programa informático almacenado en el ordenador. Tal programa informático podrá almacenarse en un soporte de almacenamiento legible por ordenador, tal como, pero sin limitarse a, cualquier tipo de disco, incluidos los disquetes, discos ópticos, CD-ROM, discos magnético-ópticos, memorias de solo lectura (ROM), memorias de acceso aleatorio (RAM), EPROM, EEPROM, tarjetas magnéticas u ópticas, circuitos integrados específicos de aplicación (ASIC), o cualquier tipo de soporte adecuado para almacenar instrucciones electrónicas, y cada uno acoplado a un bus de sistema informático. Asimismo, los ordenadores y/u otros dispositivos informáticos a los que se hace referencia en la memoria descriptiva pueden incluir un único procesador o pueden ser arquitecturas que emplean múltiples diseños de procesadores para aumentar la capacidad informática.
Los algoritmos y pantallas presentados en el presente documento no están intrínsecamente relacionados con ningún ordenador en particular, sistema virtualizado, u otros aparatos. Diversos sistemas de propósito general también se pueden utilizar con programas de acuerdo con las enseñanzas contenidas en el presente documento, o puede resultar conveniente construir aparatos más especializados para realizar las etapas de método requeridos. La estructura requerida para una variedad de estos sistemas será evidente a partir de la descripción proporcionada en el presente documento. De forma adicional, la presente invención no se describe con referencia a ningún lenguaje de programación en particular. Se apreciará que una variedad de lenguajes de programación puede ser utilizada para implementar las enseñanzas de la presente invención como se describe en el presente documento, y cualquier referencia anterior a idiomas específicos se proporciona para la divulgación de la habilitación y el mejor modo de la presente invención.
En consecuencia, en diversas realizaciones, la presente invención puede ser implementada como software, hardware, y/u otros elementos para controlar un sistema informático, un dispositivo informático, u otro dispositivo electrónico o cualquier combinación o pluralidad de los mismos. Tal dispositivo electrónico puede incluir, por ejemplo, un procesador, un dispositivo de entrada (tal como un teclado, ratón, panel táctil, trackpad, joystick, bola de seguimiento, micrófono, y/o cualquier combinación de los mismos), un dispositivo de salida (tal como una pantalla, altavoz, y/o similares), memoria, almacenamiento a largo plazo (tal como almacenamiento magnético, almacenamiento óptico, y/o similares), y/o conectividad de red, de acuerdo con técnicas que son bien conocidas en la materia. Tal dispositivo electrónico puede ser portátil o no portátil. Ejemplos de dispositivos electrónicos que pueden ser utilizados para la implementación de la invención incluyen: un teléfono móvil, asistente digital personal, teléfono inteligente, cabina, ordenador de escritorio, ordenador portátil, dispositivo electrónico de consumo, televisor, decodificador o similar. Un dispositivo electrónico para implementar la presente invención puede utilizar un sistema operativo tal como, por ejemplo, Microsoft Windows Vista disponible en Microsoft Corporation de Redmond, Washington, o cualquier otro sistema operativo que esté adaptado para su uso en el dispositivo. En algunas realizaciones, el dispositivo electrónico para la implementación de la presente invención incluye funcionalidad para la comunicación a través de una o más redes, incluyendo, por ejemplo, una red de telefonía celular, red inalámbrica, y/o red informática tal como Internet.
Por último, se debe tener en cuenta que el idioma utilizado en la memoria descriptiva se ha seleccionado principalmente con fines de legibilidad e instrucción, y puede no haber sido seleccionado para delinear o circunscribir la materia objeto inventiva. En consecuencia, la divulgación de la presente invención pretende ser ilustrativa, pero sin limitarse a, el alcance de la invención, que se establece en las reivindicaciones.
Claims (27)
1. Un método para operar un dispositivo informático móvil (100), comprendiendo el método:
en ejecución simultánea, sobre el dispositivo informático móvil (100), múltiples aplicaciones cada una de ellas representable en una pantalla de visualización (101) del dispositivo informático móvil (100) por una tarjeta correspondiente (301) que contiene una interfaz de usuario para la aplicación correspondiente;
colocar una primera aplicación de las múltiples aplicaciones en un estado de hibernación, en donde la tarjeta correspondiente (301) de la primera aplicación comprende una instantánea estática de la interfaz de usuario para la primera aplicación;
alternar, en respuesta a una entrada del usuario, la operación del dispositivo informático móvil (100) desde un modo de pantalla completa a un modo de tarjeta, en donde, mientras se opera en el modo de tarjeta, el método comprende, además:
mostrar, sobre la pantalla de visualización (101), las tarjetas (301) en una disposición lineal a lo largo de un eje de la pantalla de visualización (101);
mover, en respuesta a una entrada táctil direccional a lo largo del eje de la pantalla de visualización (101), las tarjetas (301) a través de la pantalla de visualización (101) en la misma dirección que la entrada táctil direccional; y
detectar una entrada táctil en la tarjeta correspondiente (301) de la primera aplicación mostrada en la pantalla de visualización (101);
alternar, en respuesta a que una entrada táctil en la tarjeta correspondiente (301) de la primera aplicación, la operación del dispositivo informático móvil desde el modo de tarjeta hasta el modo de pantalla completa; y revivir la primera aplicación en respuesta a una entrada táctil en la tarjeta correspondiente (301) de la primera aplicación.
2. El método de la reivindicación 1, en donde:
colocar la primera aplicación en el estado de hibernación comprende:
almacenar, en un dispositivo de almacenamiento del dispositivo informático móvil, información de estado de la primera aplicación en respuesta a su colocación en estado de hibernación; y
revivir la primera aplicación comprende:
recuperar la información de estado de la primera aplicación desde el dispositivo de almacenamiento; y restaurar la primera aplicación basándose en la información de estado recuperada.
3. El método de la reivindicación 2, en donde la primera aplicación se restaura en función de la información de estado recuperada al estado de la primera aplicación en el momento en que la primera aplicación se colocó en el estado de hibernación.
4. El método de cualquiera de las reivindicaciones anteriores 2 o 3, en donde el dispositivo de almacenamiento comprende memoria flash.
5. El método de cualquiera de las reivindicaciones anteriores, en donde el dispositivo informático móvil se alterna de operar en el modo de tarjeta a operar en el modo de pantalla completa en respuesta a revivir la primera aplicación de tal manera que la interfaz de usuario de la primera aplicación ocupa sustancialmente toda la pantalla de visualización.
6. El método de cualquiera de las reivindicaciones anteriores, en donde cada tarjeta para una aplicación en hibernación comprende una instantánea estática de la interfaz de usuario para la aplicación correspondiente.
7. El método de cualquiera de las reivindicaciones anteriores, además, comprende:
mantener la primera aplicación en estado de hibernación durante el movimiento de las tarjetas a través de la pantalla de visualización.
8. El método de cualquiera de las reivindicaciones anteriores, además, comprende:
descartar la primera aplicación en función de que el usuario arrastre la tarjeta correspondiente en dirección ascendente hacia la parte superior de la pantalla, para cerrar la primera aplicación.
9. El método de la reivindicación 8, que comprende, además:
descartar la información de estado para la primera aplicación descartada.
10. El método de cualquiera de las reivindicaciones anteriores, en donde la primera aplicación se coloca en el estado de hibernación después de no ser utilizada durante un primer período de tiempo.
11. El método de cualquiera de las reivindicaciones 1 a 9, en donde la primera aplicación se coloca en el estado de hibernación en respuesta al inicio de una segunda aplicación.
12. El método de cualquiera de las reivindicaciones 1 a 9, en donde la primera aplicación se coloca en el estado de hibernación en respuesta a una condición de poca memoria del dispositivo informático móvil.
13. El método de cualquiera de las reivindicaciones 1 a 9, en donde la primera aplicación se coloca en el estado de hibernación basado en al menos una de las preferencias del usuario, una cantidad de recursos de procesamiento consumidos por las aplicaciones en ejecución, o un límite en el número de aplicaciones que se ejecutan simultáneamente en el dispositivo informático móvil.
14. Un programa informático que comprende instrucciones para realizar un método de acuerdo con cualquiera de las reivindicaciones 1 a 13 cuando lo ejecuta un procesador.
15. Dispositivo informático móvil (100), que comprende:
medios para la ejecución simultánea, sobre el dispositivo informático móvil (100), de múltiples aplicaciones cada una de ellas representable sobre una pantalla de visualización (101) del dispositivo informático móvil (100) mediante una tarjeta correspondiente que contiene una interfaz de usuario para la aplicación correspondiente; medios para colocar una primera aplicación de las múltiples aplicaciones en un estado de hibernación, en donde la tarjeta correspondiente (301) de la primera aplicación comprende una instantánea estática de la interfaz de usuario para la primera aplicación;
medios para alternar, en respuesta a una entrada del usuario, la operación del dispositivo informático móvil (100) desde un modo de pantalla completa a un modo de tarjeta, en donde el dispositivo informático móvil (100) comprende además los siguientes medios, adaptados para funcionar mientras está en el modo tarjeta:
medios para mostrar, sobre la pantalla de visualización (101), las tarjetas en una disposición lineal a lo largo de un eje de la pantalla de visualización (101);
medios para mover, en respuesta a una entrada táctil direccional a lo largo del eje de la pantalla de visualización (101), las tarjetas (301) a través de la pantalla de visualización (101) en la misma dirección que la entrada táctil direccional; y
medios para detectar una entrada táctil en la tarjeta correspondiente (301) de la primera aplicación mostrada en la pantalla de visualización (101);
medios para alternar, en respuesta a una entrada táctil en la tarjeta correspondiente (301) de la primera aplicación, la operación del dispositivo informático móvil (100) desde el modo de tarjeta hasta el modo de pantalla completa; y
medios para revivir la primera aplicación en respuesta a una entrada táctil en la tarjeta correspondiente (301) de la primera aplicación.
16. El dispositivo informático móvil de la reivindicación 15, en donde:
los medios para colocar la primera aplicación en el estado de hibernación se adaptan aún más a: almacenar, en un dispositivo de almacenamiento del dispositivo informático móvil, información de estado de la primera aplicación en respuesta a su colocación en estado de hibernación; y
en donde los medios para revivir la primera aplicación se adaptan aún más a:
recuperar la información de estado de la primera aplicación desde el dispositivo de almacenamiento; y restaurar la primera aplicación basándose en la información de estado recuperada.
17. El dispositivo informático móvil de la reivindicación 16, en donde la primera aplicación se restaura en función de la información de estado recuperada al estado de la primera aplicación en el momento en que la primera aplicación se colocó en el estado de hibernación.
18. El dispositivo informático móvil de cualquiera de las reivindicaciones anteriores 16 o 17, en donde el dispositivo de almacenamiento comprende una memoria flash.
19. El dispositivo informático móvil de cualquiera de las reivindicaciones anteriores 15 a 18, en donde los medios para alternar se adaptan aún más para evitar que el dispositivo informático móvil opere en el modo de tarjeta a funcione en el modo de pantalla completa en respuesta a revivir la primera aplicación de tal manera que la interfaz de usuario de la primera aplicación ocupe sustancialmente toda la pantalla de visualización.
20. El dispositivo informático móvil de cualquiera de las reivindicaciones anteriores 15 a 19, en donde cada tarjeta para una aplicación en hibernación comprende una instantánea estática de la interfaz de usuario para la aplicación correspondiente.
21. El dispositivo informático móvil de cualquiera de las reivindicaciones anteriores 15 a 20, además, comprende: medios para mantener la primera aplicación en estado de hibernación durante el movimiento de las tarjetas a través de la pantalla de visualización.
22. El dispositivo informático móvil de cualquiera de las reivindicaciones anteriores 15 a 21, además, comprende: medios para descartar la primera aplicación en función de que el usuario arrastre la tarjeta correspondiente en dirección ascendente hacia la parte superior de la pantalla, para cerrar la primera aplicación.
23. El dispositivo informático móvil de la reivindicación 22, que, además, comprende:
descartar la información de estado para la primera aplicación descartada.
24. El dispositivo informático móvil de cualquiera de las reivindicaciones anteriores 15 a 23, en donde la primera aplicación se coloca en el estado de hibernación después de no ser utilizada durante un primer período de tiempo.
25. El dispositivo informático móvil de cualquiera de las reivindicaciones anteriores 15 a 23, en donde la primera aplicación se coloca en el estado de hibernación en respuesta al inicio de una segunda aplicación.
26. El dispositivo informático móvil de cualquiera de las reivindicaciones anteriores 15 a 23, en donde la primera aplicación se coloca en el estado de hibernación en respuesta a una condición de poca memoria del dispositivo informático móvil.
27. El dispositivo informático móvil de cualquiera de las reivindicaciones anteriores 15 a 23, en donde la primera aplicación se coloca en el estado de hibernación basado en al menos una de las preferencias del usuario, una cantidad de recursos de procesamiento consumidos por las aplicaciones en ejecución, o un límite en el número de aplicaciones que se ejecutan simultáneamente en el dispositivo informático móvil.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/505,541 US9274807B2 (en) | 2006-04-20 | 2009-07-20 | Selective hibernation of activities in an electronic device |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2968336T3 true ES2968336T3 (es) | 2024-05-09 |
Family
ID=43466122
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES19186578T Active ES2884128T3 (es) | 2009-07-20 | 2010-06-09 | Hibernación selectiva de actividades en un dispositivo informático móvil |
ES21187717T Active ES2968336T3 (es) | 2009-07-20 | 2010-06-09 | Hibernación selectiva de actividades en un dispositivo informático móvil |
ES17205386T Active ES2751881T3 (es) | 2009-07-20 | 2010-06-09 | Hibernación selectiva de actividades en un dispositivo electrónico |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES19186578T Active ES2884128T3 (es) | 2009-07-20 | 2010-06-09 | Hibernación selectiva de actividades en un dispositivo informático móvil |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES17205386T Active ES2751881T3 (es) | 2009-07-20 | 2010-06-09 | Hibernación selectiva de actividades en un dispositivo electrónico |
Country Status (10)
Country | Link |
---|---|
US (6) | US9274807B2 (es) |
EP (4) | EP3324279B1 (es) |
CN (2) | CN102754058B (es) |
DK (2) | DK3598286T3 (es) |
ES (3) | ES2884128T3 (es) |
HU (2) | HUE055854T2 (es) |
PL (3) | PL3324279T3 (es) |
PT (2) | PT3598286T (es) |
SI (2) | SI3598286T1 (es) |
WO (1) | WO2011011120A2 (es) |
Families Citing this family (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8698751B2 (en) * | 2010-10-01 | 2014-04-15 | Z124 | Gravity drop rules and keyboard display on a multiple screen device |
US9274807B2 (en) | 2006-04-20 | 2016-03-01 | Qualcomm Incorporated | Selective hibernation of activities in an electronic device |
US9232043B2 (en) * | 2010-03-03 | 2016-01-05 | Lg Electronics Inc. | Mobile terminal and control method thereof |
WO2011111120A1 (ja) | 2010-03-12 | 2011-09-15 | 株式会社 東芝 | 通信装置 |
CN102934065B (zh) * | 2010-04-09 | 2016-03-16 | 索尼电脑娱乐公司 | 信息处理装置 |
US9372618B2 (en) | 2010-10-01 | 2016-06-21 | Z124 | Gesture based application management |
JP6034297B2 (ja) * | 2010-11-19 | 2016-11-30 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | 手術器具の三次元超音波ガイダンス |
US8775607B2 (en) * | 2010-12-10 | 2014-07-08 | International Business Machines Corporation | Identifying stray assets in a computing enviroment and responsively taking resolution actions |
US10620794B2 (en) | 2010-12-23 | 2020-04-14 | Apple Inc. | Device, method, and graphical user interface for switching between two user interfaces |
KR20120071670A (ko) * | 2010-12-23 | 2012-07-03 | 엘지전자 주식회사 | 이동단말기 및 그 제어방법 |
US9465440B2 (en) * | 2011-01-06 | 2016-10-11 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
US9471145B2 (en) | 2011-01-06 | 2016-10-18 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
US9423878B2 (en) | 2011-01-06 | 2016-08-23 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
US9383800B2 (en) | 2011-03-22 | 2016-07-05 | International Business Machines Corporation | Managing a portal application |
TW201239730A (en) * | 2011-03-24 | 2012-10-01 | Acer Inc | Method for customizing user interface and electronic device thereof |
US20120266100A1 (en) * | 2011-04-12 | 2012-10-18 | Caliendo Jr Neal Robert | Dynamic Tile Billboard User Interface |
CN102736832A (zh) * | 2011-04-13 | 2012-10-17 | 宏碁股份有限公司 | 自订使用者接口的方法及其电子装置 |
US9116698B2 (en) * | 2011-06-07 | 2015-08-25 | Google Inc. | Intelligent selection of operating state upon change of power state |
US9324183B2 (en) * | 2011-11-29 | 2016-04-26 | Apple Inc. | Dynamic graphical interface shadows |
CN103975308B (zh) | 2011-12-13 | 2019-07-19 | 索尼电脑娱乐公司 | 信息处理设备、信息处理方法、程序以及信息存储介质 |
US9191417B2 (en) * | 2012-06-28 | 2015-11-17 | Microsoft Technology Licensing, Llc | Cross-process media handling in a voice-over-internet protocol (VOIP) application platform |
US9367211B1 (en) * | 2012-11-08 | 2016-06-14 | Amazon Technologies, Inc. | Interface tab generation |
US9959007B2 (en) * | 2012-12-05 | 2018-05-01 | Facebook, Inc. | Card-stack interface |
EP2741199B1 (en) * | 2012-12-06 | 2020-08-05 | Samsung Electronics Co., Ltd | Application individual lock mechanism for a touch screen device |
TWI486875B (zh) * | 2012-12-28 | 2015-06-01 | Mstar Semiconductor Inc | 電子裝置休眠回復設定方法以及具有休眠狀態以及休眠回復機制的電子裝置 |
CN103927226B (zh) * | 2013-01-15 | 2018-05-25 | 晨星软件研发(深圳)有限公司 | 电子装置休眠回复设定方法以及电子装置 |
JP6016670B2 (ja) * | 2013-02-26 | 2016-10-26 | シャープ株式会社 | 携帯端末装置 |
USD851663S1 (en) * | 2013-04-05 | 2019-06-18 | Thales Avionics, Inc. | Display screen or portion thereof with graphical user interface |
USD738394S1 (en) | 2013-06-09 | 2015-09-08 | Apple Inc. | Display screen or portion thereof with animated graphical user interface |
USD741350S1 (en) | 2013-06-10 | 2015-10-20 | Apple Inc. | Display screen or portion thereof with animated graphical user interface |
CN109120823B (zh) * | 2013-08-01 | 2020-07-14 | 核心光电有限公司 | 具有自动聚焦的纤薄多孔径成像系统及其使用方法 |
USD772278S1 (en) | 2013-12-18 | 2016-11-22 | Apple Inc. | Display screen or portion thereof with animated graphical user interface |
JP5979161B2 (ja) * | 2014-01-15 | 2016-08-24 | コニカミノルタ株式会社 | 表示装置、表示制御方法及びプログラム |
USD761830S1 (en) * | 2014-04-28 | 2016-07-19 | Google Inc. | Portion of a display panel with an animated computer icon |
USD761829S1 (en) * | 2014-04-28 | 2016-07-19 | Google Inc. | Portion of a display panel with an animated computer icon |
KR102151178B1 (ko) | 2014-05-19 | 2020-09-02 | 삼성전자 주식회사 | 직렬 통신 장치 및 그 방법 |
USD769892S1 (en) | 2014-05-30 | 2016-10-25 | Apple Inc. | Display screen or portion thereof with graphical user interface |
USD787537S1 (en) * | 2014-08-05 | 2017-05-23 | Naver Corporation | Display screen with animated graphical user interface |
USD765134S1 (en) * | 2014-12-31 | 2016-08-30 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with animated graphical user interface |
USD763906S1 (en) * | 2014-12-31 | 2016-08-16 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with animated graphical user interface |
USD782513S1 (en) * | 2015-01-02 | 2017-03-28 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with graphical user interface |
US10318338B2 (en) | 2015-01-08 | 2019-06-11 | International Business Machines Corporation | Re-launching contextually related application sets |
USD768177S1 (en) * | 2015-02-27 | 2016-10-04 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with animated graphical user interface |
USD769295S1 (en) * | 2015-02-27 | 2016-10-18 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with animated graphical user interface |
USD765699S1 (en) | 2015-06-06 | 2016-09-06 | Apple Inc. | Display screen or portion thereof with graphical user interface |
US9996222B2 (en) * | 2015-09-18 | 2018-06-12 | Samsung Electronics Co., Ltd. | Automatic deep view card stacking |
US10802838B2 (en) * | 2016-01-07 | 2020-10-13 | Apple Inc. | Dynamic graphical user interface previews |
KR102459031B1 (ko) * | 2016-02-15 | 2022-10-26 | 삼성전자 주식회사 | 전자 장치 및 그 어플리케이션 표시 방법 |
US10797977B2 (en) | 2016-03-22 | 2020-10-06 | Citrix Systems, Inc. | Robust suspension and resumption of desktop virtualization |
JP6724454B2 (ja) * | 2016-03-22 | 2020-07-15 | 富士ゼロックス株式会社 | 表示制御装置、電子機器及びプログラム |
US10216498B2 (en) * | 2016-05-13 | 2019-02-26 | Tibco Software Inc. | Custom-built process engine with minimal memory and disk resource consumption |
USD813263S1 (en) * | 2016-06-15 | 2018-03-20 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with transitional graphical user interface |
CN106201544A (zh) * | 2016-07-19 | 2016-12-07 | 北京智能管家科技有限公司 | 在机器人系统中的动态交互展示方法及装置 |
US11599383B2 (en) * | 2016-08-30 | 2023-03-07 | Microsoft Technology Licensing, Llc | Concurrent execution of task instances relating to a plurality of applications |
US10466891B2 (en) * | 2016-09-12 | 2019-11-05 | Apple Inc. | Special lock mode user interface |
JP2018055210A (ja) * | 2016-09-27 | 2018-04-05 | オムロン株式会社 | 表示画面作成装置、表示画面作成方法、および、表示画面作成プログラム |
USD800152S1 (en) * | 2016-12-23 | 2017-10-17 | Beijing Kingsoft Internet Security Software Co., Ltd. | Mobile terminal display screen with a graphical user interface |
USD802006S1 (en) * | 2016-12-23 | 2017-11-07 | Beijing Kingsoft Internet Security Software Co., Ltd. | Mobile terminal display screen with a graphical user interface |
US10228966B2 (en) * | 2017-02-03 | 2019-03-12 | Huawei Technologies Co., Ltd. | Methods ad systems for hibernation of processes in computing devices |
USD846587S1 (en) | 2017-06-04 | 2019-04-23 | Apple Inc. | Display screen or portion thereof with animated graphical user interface |
DK180639B1 (en) * | 2018-06-01 | 2021-11-04 | Apple Inc | DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT |
US20190370009A1 (en) * | 2018-06-03 | 2019-12-05 | Apple Inc. | Intelligent swap for fatigable storage mediums |
USD877175S1 (en) | 2018-06-04 | 2020-03-03 | Apple Inc. | Electronic device with graphical user interface |
USD883319S1 (en) | 2018-10-29 | 2020-05-05 | Apple Inc. | Electronic device with graphical user interface |
US11409430B2 (en) * | 2018-11-02 | 2022-08-09 | Benjamin Firooz Ghassabian | Screen stabilizer |
US11150782B1 (en) | 2019-03-19 | 2021-10-19 | Facebook, Inc. | Channel navigation overviews |
US10868788B1 (en) | 2019-03-20 | 2020-12-15 | Facebook, Inc. | Systems and methods for generating digital channel content |
US11308176B1 (en) | 2019-03-20 | 2022-04-19 | Meta Platforms, Inc. | Systems and methods for digital channel transitions |
USD943625S1 (en) * | 2019-03-20 | 2022-02-15 | Facebook, Inc. | Display screen with an animated graphical user interface |
USD938482S1 (en) * | 2019-03-20 | 2021-12-14 | Facebook, Inc. | Display screen with an animated graphical user interface |
USD933696S1 (en) * | 2019-03-22 | 2021-10-19 | Facebook, Inc. | Display screen with an animated graphical user interface |
USD937889S1 (en) * | 2019-03-22 | 2021-12-07 | Facebook, Inc. | Display screen with an animated graphical user interface |
USD949907S1 (en) | 2019-03-22 | 2022-04-26 | Meta Platforms, Inc. | Display screen with an animated graphical user interface |
USD943616S1 (en) | 2019-03-22 | 2022-02-15 | Facebook, Inc. | Display screen with an animated graphical user interface |
USD944827S1 (en) | 2019-03-26 | 2022-03-01 | Facebook, Inc. | Display device with graphical user interface |
USD934287S1 (en) | 2019-03-26 | 2021-10-26 | Facebook, Inc. | Display device with graphical user interface |
USD944848S1 (en) | 2019-03-26 | 2022-03-01 | Facebook, Inc. | Display device with graphical user interface |
USD944828S1 (en) | 2019-03-26 | 2022-03-01 | Facebook, Inc. | Display device with graphical user interface |
CN110196674B (zh) * | 2019-05-07 | 2020-11-20 | 珠海格力电器股份有限公司 | 一种终端交互方法、装置、介质及终端 |
USD987681S1 (en) * | 2019-10-30 | 2023-05-30 | Lyft, Inc. | Display screen or portion thereof with graphical user interface |
CN113076154B (zh) * | 2020-01-03 | 2023-09-05 | 华为技术有限公司 | 多应用下进行分屏的方法、装置以及电子设备 |
USD964419S1 (en) * | 2020-04-17 | 2022-09-20 | Xokind, Inc. | Display screen with transitional graphical user interface for integrated travel itinerary planning, booking and viewing |
USD938447S1 (en) | 2020-08-31 | 2021-12-14 | Facebook, Inc. | Display screen with a graphical user interface |
US11188215B1 (en) | 2020-08-31 | 2021-11-30 | Facebook, Inc. | Systems and methods for prioritizing digital user content within a graphical user interface |
USD938450S1 (en) | 2020-08-31 | 2021-12-14 | Facebook, Inc. | Display screen with a graphical user interface |
USD938449S1 (en) | 2020-08-31 | 2021-12-14 | Facebook, Inc. | Display screen with a graphical user interface |
USD938448S1 (en) | 2020-08-31 | 2021-12-14 | Facebook, Inc. | Display screen with a graphical user interface |
USD938451S1 (en) | 2020-08-31 | 2021-12-14 | Facebook, Inc. | Display screen with a graphical user interface |
US11347388B1 (en) | 2020-08-31 | 2022-05-31 | Meta Platforms, Inc. | Systems and methods for digital content navigation based on directional input |
USD1010674S1 (en) * | 2020-12-31 | 2024-01-09 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Display screen or portion thereof with transitional graphical user interface |
USD980865S1 (en) * | 2021-01-18 | 2023-03-14 | Kwai Games Pte. Ltd. | Display screen or portion thereof with graphical user interface |
CN113535292A (zh) * | 2021-03-31 | 2021-10-22 | 北京达佳互联信息技术有限公司 | 界面信息控制方法、装置、电子设备及存储介质 |
US20230297594A1 (en) * | 2022-03-18 | 2023-09-21 | Zoho Corporation Private Limited | Entity interaction trends |
US11972267B2 (en) | 2022-10-04 | 2024-04-30 | International Business Machines Corporation | Hibernation of computing device with faulty batteries |
Family Cites Families (206)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US1043745A (en) | 1910-11-28 | 1912-11-05 | W B Worthington | Mold for concrete wall construction. |
US4680577A (en) * | 1983-11-28 | 1987-07-14 | Tektronix, Inc. | Multipurpose cursor control keyswitch |
US5610828A (en) * | 1986-04-14 | 1997-03-11 | National Instruments Corporation | Graphical system for modelling a process and associated method |
US5737622A (en) * | 1986-04-14 | 1998-04-07 | National Instruments Corporation | Method and apparatus for more efficient function synchronization in a data flow program |
US5075675A (en) | 1988-06-30 | 1991-12-24 | International Business Machines Corporation | Method and apparatus for dynamic promotion of background window displays in multi-tasking computer systems |
US5146556A (en) * | 1988-10-11 | 1992-09-08 | Next Computer, Inc. | System and method for managing graphic images |
US6782483B2 (en) * | 1990-03-23 | 2004-08-24 | Matsushita Electric Industrial Co., Ltd. | Data processing apparatus |
JP2613326B2 (ja) | 1991-07-15 | 1997-05-28 | 財団法人ニューメディア開発協会 | 情報処理装置の履歴内容提示方法、及びその装置 |
US5349658A (en) * | 1991-11-01 | 1994-09-20 | Rourke Thomas C O | Graphical user interface |
US5377317A (en) | 1991-12-20 | 1994-12-27 | International Business Machines Corporation | Method and apparatus for distinctively displaying windows on a computer display screen |
US5499334A (en) * | 1993-03-01 | 1996-03-12 | Microsoft Corporation | Method and system for displaying window configuration of inactive programs |
US5499330A (en) * | 1993-09-17 | 1996-03-12 | Digital Equipment Corp. | Document display system for organizing and displaying documents as screen objects organized along strand paths |
DE69434717T2 (de) * | 1993-12-09 | 2007-04-12 | Canon K.K. | Datenverarbeitungsgerät das als Host arbeitet und Verfahren um das Datenverarbeitungsgerät zu steuern |
US5473745A (en) | 1994-12-14 | 1995-12-05 | International Business Machines Corporation | Exposing and hiding a title bar behind its window using a visual cue |
US5677708A (en) | 1995-05-05 | 1997-10-14 | Microsoft Corporation | System for displaying a list on a display screen |
US5675361A (en) | 1995-08-23 | 1997-10-07 | Santilli; Donald S. | Computer keyboard pointing device |
US6061050A (en) * | 1995-10-27 | 2000-05-09 | Hewlett-Packard Company | User interface device |
US5766708A (en) | 1996-08-01 | 1998-06-16 | Gabel S.R.L. | Ski poles for skiers made of material having high resistance and inherently fragile |
US6407757B1 (en) * | 1997-12-18 | 2002-06-18 | E-Book Systems Pte Ltd. | Computer-based browsing method and computer program product for displaying information in an electronic book form |
US5944829A (en) * | 1996-09-30 | 1999-08-31 | Intel Corporation | Adjusting software characteristics by user interface based upon battery level and the amount of time the user wants the battery to last |
US5892511A (en) | 1996-09-30 | 1999-04-06 | Intel Corporation | Method for assisting window selection in a graphical user interface |
US6011537A (en) * | 1997-01-27 | 2000-01-04 | Slotznick; Benjamin | System for delivering and simultaneously displaying primary and secondary information, and for displaying only the secondary information during interstitial space |
US6938254B1 (en) * | 1997-05-06 | 2005-08-30 | Microsoft Corporation | Controlling memory usage in systems having limited physical memory |
US5978923A (en) * | 1997-08-07 | 1999-11-02 | Toshiba America Information Systems, Inc. | Method and apparatus for a computer power management function including selective sleep states |
CN1126025C (zh) * | 1997-08-12 | 2003-10-29 | 松下电器产业株式会社 | 窗口显示装置 |
US6166736A (en) * | 1997-08-22 | 2000-12-26 | Natrificial Llc | Method and apparatus for simultaneously resizing and relocating windows within a graphical display |
US5954820A (en) * | 1997-09-26 | 1999-09-21 | International Business Machines Corporation | Portable computer with adaptive demand-driven power management |
WO1999022314A1 (fr) | 1997-10-29 | 1999-05-06 | Sharp Kabushiki Kaisha | Dispositif de commande d'affichage et dispositif de reproduction d'affichage pour livres electroniques |
US6613100B2 (en) * | 1997-11-26 | 2003-09-02 | Intel Corporation | Method and apparatus for displaying miniaturized graphical representations of documents for alternative viewing selection |
US7800592B2 (en) | 2005-03-04 | 2010-09-21 | Apple Inc. | Hand held electronic device with multiple touch sensing devices |
US7844914B2 (en) * | 2004-07-30 | 2010-11-30 | Apple Inc. | Activating virtual keys of a touch-screen virtual keyboard |
US7614008B2 (en) | 2004-07-30 | 2009-11-03 | Apple Inc. | Operation of a computer with touch screen interface |
US7663607B2 (en) * | 2004-05-06 | 2010-02-16 | Apple Inc. | Multipoint touchscreen |
EP2256605B1 (en) | 1998-01-26 | 2017-12-06 | Apple Inc. | Method and apparatus for integrating manual input |
US6182231B1 (en) * | 1998-03-31 | 2001-01-30 | International Business Machines Corporation | Dynamic program suspension |
US7831930B2 (en) * | 2001-11-20 | 2010-11-09 | Universal Electronics Inc. | System and method for displaying a user interface for a remote control application |
JP2000105772A (ja) * | 1998-07-28 | 2000-04-11 | Sharp Corp | 情報管理装置 |
JP3831538B2 (ja) * | 1998-11-26 | 2006-10-11 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ディスプレイの省電力方法及び装置 |
US7216300B2 (en) * | 1998-12-30 | 2007-05-08 | Ncr Corp. | Method and apparatus for an applet to display multiple windows |
DE69921956T2 (de) * | 1999-02-11 | 2006-02-09 | Sony International (Europe) Gmbh | Edgerät für die drahtlose Telekommunikation und Verfahren zur Anzeige von Symbolen auf einer Anzeigevorrichtung eines solchen Endgeräts |
AU3932300A (en) * | 1999-04-06 | 2000-10-23 | Microsoft Corporation | Method and apparatus for providing a three-dimensional task gallery computer interface |
US20030006956A1 (en) * | 1999-05-24 | 2003-01-09 | Charles Yimin Wu | Data entry device recording input in two dimensions |
US7151528B2 (en) | 1999-06-22 | 2006-12-19 | Cirque Corporation | System for disposing a proximity sensitive touchpad behind a mobile phone keypad |
US7007239B1 (en) | 2000-09-21 | 2006-02-28 | Palm, Inc. | Method and apparatus for accessing a contacts database and telephone services |
US6734880B2 (en) * | 1999-11-24 | 2004-05-11 | Stentor, Inc. | User interface for a medical informatics systems |
US7434177B1 (en) | 1999-12-20 | 2008-10-07 | Apple Inc. | User interface for providing consolidation and access |
US6957395B1 (en) * | 2000-01-04 | 2005-10-18 | Apple Computer, Inc. | Computer interface having a single window mode of operation |
US7137115B2 (en) * | 2000-01-25 | 2006-11-14 | Fujitsu Limited | Method for controlling multithreading |
JP2001265481A (ja) * | 2000-03-21 | 2001-09-28 | Nec Corp | ページ情報表示方法及び装置並びにページ情報表示用プログラムを記憶した記憶媒体 |
JP4325075B2 (ja) * | 2000-04-21 | 2009-09-02 | ソニー株式会社 | データオブジェクト管理装置 |
FI108901B (fi) * | 2000-06-26 | 2002-04-15 | Nokia Corp | Kosketustuntumaltaan hyvä sähkömekaaninen tietojen syöttömekanismi |
US7170500B2 (en) * | 2000-08-29 | 2007-01-30 | Palm, Inc. | Flip-style user interface |
JP3805180B2 (ja) * | 2000-09-14 | 2006-08-02 | 株式会社東芝 | 表示素子 |
GB2367530B (en) | 2000-10-03 | 2003-07-23 | Nokia Mobile Phones Ltd | User interface device |
US6680677B1 (en) * | 2000-10-06 | 2004-01-20 | Logitech Europe S.A. | Proximity detector to indicate function of a key |
US6677932B1 (en) * | 2001-01-28 | 2004-01-13 | Finger Works, Inc. | System and method for recognizing touch typing under limited tactile feedback conditions |
US7030861B1 (en) * | 2001-02-10 | 2006-04-18 | Wayne Carl Westerman | System and method for packing multi-touch gestures onto a hand |
US6570557B1 (en) * | 2001-02-10 | 2003-05-27 | Finger Works, Inc. | Multi-touch system and method for emulating modifier keys via fingertip chords |
EP1253500A1 (en) | 2001-04-26 | 2002-10-30 | Nokia Corporation | Method and device for authenticating a user on a remote server |
US6943773B2 (en) * | 2001-05-11 | 2005-09-13 | Palmone, Inc. | Page flicking mechanism for electronic display devices that paginate content |
US6836870B2 (en) | 2001-06-15 | 2004-12-28 | Cubic Corporation | Method and system for incorporating a dynamic situation display in a powerpoint slide show presentation |
US7159176B2 (en) * | 2001-08-29 | 2007-01-02 | Digeo, Inc. | System and method for focused navigation within a user interface |
US7650569B1 (en) * | 2001-08-29 | 2010-01-19 | Allen Paul G | System and method for focused navigation within a user interface |
US7120806B1 (en) * | 2001-10-31 | 2006-10-10 | Western Digital Technologies, Inc. | Method for setting a power operating mode transition interval of a disk drive in a mobile device based on application category |
JP4039851B2 (ja) | 2001-12-07 | 2008-01-30 | 株式会社エヌ・ティ・ティ・ドコモ | 移動通信端末、アプリケーションプログラムの実行状態制御方法、アプリケーションプログラム、及びアプリケーションプログラムを記録した記録 |
TW563974U (en) * | 2002-02-06 | 2003-11-21 | Lite On Technology Corp | Electricity saving device for user for user interface terminal device of cellular phone |
GB0204652D0 (en) | 2002-02-28 | 2002-04-10 | Koninkl Philips Electronics Nv | A method of providing a display gor a gui |
TWI238348B (en) * | 2002-05-13 | 2005-08-21 | Kyocera Corp | Portable information terminal, display control device, display control method, and recording media |
TWI313835B (en) | 2002-06-04 | 2009-08-21 | Koninkl Philips Electronics Nv | Method of measuring the movement of an object relative to a user's input device and related input device,mobile phone apparatus, cordless phone apparatus, laptor computer, mouse and remote control |
US11275405B2 (en) | 2005-03-04 | 2022-03-15 | Apple Inc. | Multi-functional hand-held device |
US7058901B1 (en) * | 2002-10-29 | 2006-06-06 | Koninklijke Philips Electronics N.V. | Methods and apparatus for controlling the display of medical images |
US7461352B2 (en) * | 2003-02-10 | 2008-12-02 | Ronald Mark Katsuranis | Voice activated system and methods to enable a computer user working in a first graphical application window to display and control on-screen help, internet, and other information content in a second graphical application window |
EP1599998B1 (en) * | 2003-02-11 | 2011-04-06 | NDS Limited | Apparatus and methods for handling interactive applications in broadcast networks |
US7139920B2 (en) | 2003-03-13 | 2006-11-21 | Sun Microsystems, Inc. | Method and apparatus for supplying power in electronic equipment |
US7665041B2 (en) | 2003-03-25 | 2010-02-16 | Microsoft Corporation | Architecture for controlling a computer using hand gestures |
KR20040083788A (ko) | 2003-03-25 | 2004-10-06 | 삼성전자주식회사 | 제스쳐 커맨드를 이용하여 프로그램을 구동시킬 수 있는휴대용 단말기 및 이를 이용한 프로그램 구동 방법 |
US7340740B2 (en) | 2003-04-22 | 2008-03-04 | International Business Machines Corporation | Cooperatively multitasking in an interrupt free computing environment |
US7073052B2 (en) | 2003-05-22 | 2006-07-04 | International Business Machines Corporation | Method and system for storing active files and programs in a hibernation mode |
US20050003851A1 (en) * | 2003-06-05 | 2005-01-06 | Visteon Global Technologies, Inc. | Radio system with touch pad interface |
US7159189B2 (en) * | 2003-06-13 | 2007-01-02 | Alphabase Systems, Inc. | Method and system for controlling cascaded windows on a GUI desktop on a computer |
US20040261039A1 (en) * | 2003-06-19 | 2004-12-23 | International Business Machines Corporation | Method and system for ordering on-screen windows for display |
US7352363B2 (en) * | 2003-06-27 | 2008-04-01 | Microsoft Corporation | Single finger or thumb method for text entry via a keypad |
US7580033B2 (en) * | 2003-07-16 | 2009-08-25 | Honeywood Technologies, Llc | Spatial-based power savings |
US7583260B2 (en) * | 2003-07-16 | 2009-09-01 | Honeywood Technologies, Llc | Color preservation for spatially varying power conservation |
US7164410B2 (en) * | 2003-07-28 | 2007-01-16 | Sig G. Kupka | Manipulating an on-screen object using zones surrounding the object |
US7225448B2 (en) * | 2003-08-14 | 2007-05-29 | Lenovo (Singapore) Pte. Ltd. | System and method for hibernating application state data on removable module |
US7411575B2 (en) * | 2003-09-16 | 2008-08-12 | Smart Technologies Ulc | Gesture recognition method and touch system incorporating the same |
US7176902B2 (en) * | 2003-10-10 | 2007-02-13 | 3M Innovative Properties Company | Wake-on-touch for vibration sensing touch input devices |
US7145552B2 (en) * | 2003-10-22 | 2006-12-05 | Solectron Corporation | Electric field proximity keyboards and detection systems |
US20050102638A1 (en) * | 2003-11-10 | 2005-05-12 | Jiang Zhaowei C. | Navigate, click and drag images in mobile applications |
US7416186B2 (en) * | 2004-01-20 | 2008-08-26 | Walker Digital, Llc | Methods and system for facilitating a secondary card game |
US8001479B2 (en) * | 2004-02-03 | 2011-08-16 | Ronald Mark Katsuranis | System and methods to access computer files and position and control application window(s) on a graphical user interface |
US7437005B2 (en) | 2004-02-17 | 2008-10-14 | Microsoft Corporation | Rapid visual sorting of digital files and data |
US20050190280A1 (en) | 2004-02-27 | 2005-09-01 | Haas William R. | Method and apparatus for a digital camera scrolling slideshow |
US20050240699A1 (en) * | 2004-03-31 | 2005-10-27 | Yoder Michael E | Safe process deactivation |
EP1739525A4 (en) * | 2004-03-31 | 2011-08-10 | Sharp Kk | ELECTRONIC EQUIPMENT |
US20050235332A1 (en) * | 2004-04-16 | 2005-10-20 | Manson Azita M | Interactive icon management |
TWI272539B (en) * | 2004-06-03 | 2007-02-01 | Atlab Inc | Electrical touch sensor and human interface device using the same |
TW200622893A (en) * | 2004-07-09 | 2006-07-01 | Nokia Corp | Cute user interface |
US20060015878A1 (en) * | 2004-07-14 | 2006-01-19 | Ritter Gerd M | Command entry portal navigation |
JP2006101041A (ja) | 2004-09-28 | 2006-04-13 | Fujitsu Ltd | 携帯電話機 |
US7640502B2 (en) * | 2004-10-01 | 2009-12-29 | Microsoft Corporation | Presentation facilitation |
US7614011B2 (en) * | 2004-10-21 | 2009-11-03 | International Business Machines Corporation | Apparatus and method for display power saving |
US20060129948A1 (en) * | 2004-12-14 | 2006-06-15 | Hamzy Mark J | Method, system and program product for a window level security screen-saver |
CN100375034C (zh) | 2005-01-05 | 2008-03-12 | 联想(新加坡)私人有限公司 | 在计算机系统中用于对进程进行休眠的方法和系统 |
US7266663B2 (en) * | 2005-01-13 | 2007-09-04 | International Business Machines Corporation | Automatic cache activation and deactivation for power reduction |
US7747965B2 (en) * | 2005-01-18 | 2010-06-29 | Microsoft Corporation | System and method for controlling the opacity of multiple windows while browsing |
US8341541B2 (en) * | 2005-01-18 | 2012-12-25 | Microsoft Corporation | System and method for visually browsing of open windows |
US7426697B2 (en) * | 2005-01-18 | 2008-09-16 | Microsoft Corporation | Multi-application tabbing system |
EP1688830A1 (en) | 2005-02-08 | 2006-08-09 | Research In Motion Limited | Handheld electronic device having keyboard that provides two-dimensional navigation, and associated method |
US7383451B2 (en) * | 2005-02-18 | 2008-06-03 | Lenovo (Singapore) Pte. Ltd. | Controlling power usage of computing device components in holistic manner |
JP4281700B2 (ja) | 2005-03-23 | 2009-06-17 | ヤマハ株式会社 | 複数のウィンドウを管理する方法 |
US20060227125A1 (en) * | 2005-03-29 | 2006-10-12 | Intel Corporation | Dynamic backlight control |
US7661069B2 (en) * | 2005-03-31 | 2010-02-09 | Microsoft Corporation | System and method for visually expressing user interface elements |
US7478339B2 (en) | 2005-04-01 | 2009-01-13 | Microsoft Corporation | Method and apparatus for application window grouping and management |
US7932895B2 (en) | 2005-05-24 | 2011-04-26 | Nokia Corporation | Control of an electronic device using a gesture as an input |
US20070004451A1 (en) * | 2005-06-30 | 2007-01-04 | C Anderson Eric | Controlling functions of a handheld multifunction device |
US7360166B1 (en) * | 2005-08-17 | 2008-04-15 | Clipmarks Llc | System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources |
US7523323B2 (en) * | 2005-09-15 | 2009-04-21 | Intel Corporation | Method and apparatus for quick resumption |
US7788577B2 (en) | 2005-09-23 | 2010-08-31 | Google Inc. | Displaying information on a mobile device |
US7954064B2 (en) * | 2005-10-27 | 2011-05-31 | Apple Inc. | Multiple dashboards |
US9069877B2 (en) * | 2005-12-07 | 2015-06-30 | Ziilabs Inc., Ltd. | User interface with variable sized icons |
KR100799565B1 (ko) | 2005-12-08 | 2008-01-30 | 한국전자통신연구원 | 웹 서비스 프로세스를 하이버네이션시키고 복원하는 방법및 그 장치 |
CN101379461A (zh) * | 2005-12-30 | 2009-03-04 | 苹果公司 | 具有多重触摸输入的便携式电子设备 |
US8421755B2 (en) * | 2006-01-17 | 2013-04-16 | World Properties, Inc. | Capacitive touch sensor with integral EL backlight |
US8145719B2 (en) * | 2006-03-03 | 2012-03-27 | Gogroups | Method and system for messaging and communication based on groups |
KR100754211B1 (ko) | 2006-03-15 | 2007-09-03 | 삼성전자주식회사 | 멀티태스킹을 위한 사용자 인터페이스 방법 및 그 방법을수행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록매체 |
KR100877829B1 (ko) * | 2006-03-21 | 2009-01-12 | 엘지전자 주식회사 | 스크롤링 기능을 갖는 단말기 및 그 스크롤링 방법 |
US7595810B2 (en) | 2006-03-22 | 2009-09-29 | Apple Inc. | Methods of manipulating a screen space of a display device |
US20070245263A1 (en) | 2006-03-29 | 2007-10-18 | Alltel Communications, Inc. | Graphical user interface for wireless device |
US9395905B2 (en) * | 2006-04-05 | 2016-07-19 | Synaptics Incorporated | Graphical scroll wheel |
KR20070113025A (ko) | 2006-05-24 | 2007-11-28 | 엘지전자 주식회사 | 터치스크린 장치 및 이의 작동방법 |
US20070247431A1 (en) | 2006-04-20 | 2007-10-25 | Peter Skillman | Keypad and sensor combination to provide detection region that overlays keys |
US8683362B2 (en) * | 2008-05-23 | 2014-03-25 | Qualcomm Incorporated | Card metaphor for activities in a computing device |
US20090278806A1 (en) | 2008-05-06 | 2009-11-12 | Matias Gonzalo Duarte | Extended touch-sensitive control area for electronic device |
US9274807B2 (en) | 2006-04-20 | 2016-03-01 | Qualcomm Incorporated | Selective hibernation of activities in an electronic device |
US8296684B2 (en) | 2008-05-23 | 2012-10-23 | Hewlett-Packard Development Company, L.P. | Navigating among activities in a computing device |
US7519808B2 (en) | 2006-04-25 | 2009-04-14 | Apple Inc. | Method and apparatus for quickly reanimating devices from hibernation |
US7598702B2 (en) * | 2006-04-27 | 2009-10-06 | Hewlett-Packard Development Company, L.P. | Power management system and method for controlling use of power-consuming applications |
TW200805131A (en) | 2006-05-24 | 2008-01-16 | Lg Electronics Inc | Touch screen device and method of selecting files thereon |
US8555099B2 (en) * | 2006-05-30 | 2013-10-08 | Ati Technologies Ulc | Device having multiple graphics subsystems and reduced power consumption mode, software and methods |
DE112007002544A1 (de) * | 2006-06-09 | 2010-07-22 | Apple Inc., Cupertino | Flüssigkristallanzeige mit Berührungsbildschirm |
US8243027B2 (en) * | 2006-06-09 | 2012-08-14 | Apple Inc. | Touch screen liquid crystal display |
US8068097B2 (en) | 2006-06-27 | 2011-11-29 | Cypress Semiconductor Corporation | Apparatus for detecting conductive material of a pad layer of a sensing device |
US10503342B2 (en) * | 2006-08-04 | 2019-12-10 | Apple Inc. | User interface spaces |
US7853567B2 (en) * | 2006-08-04 | 2010-12-14 | Apple Inc. | Conflict resolution in recovery of electronic data |
US7847790B2 (en) * | 2006-08-30 | 2010-12-07 | Elan Home Systems | Interactive touchpad |
US10313505B2 (en) * | 2006-09-06 | 2019-06-04 | Apple Inc. | Portable multifunction device, method, and graphical user interface for configuring and displaying widgets |
US8564544B2 (en) | 2006-09-06 | 2013-10-22 | Apple Inc. | Touch screen device, method, and graphical user interface for customizing display of content category icons |
GB2480777B (en) | 2006-09-11 | 2012-01-04 | Apple Inc | Media player with image-based browsing |
CN104656900A (zh) * | 2006-09-13 | 2015-05-27 | 意美森公司 | 用于游戏厅游戏触觉的系统和方法 |
US7978177B2 (en) * | 2006-09-29 | 2011-07-12 | Varia Holdings Llc | Scrolling behavior-influenced algorithm selection to facilitate adaptive scrolling |
DE602007008808D1 (de) * | 2006-10-04 | 2010-10-14 | Canon Kk | Komponententräger, Druckkopf und Kopfpatrone mit dem Komponententräger |
US20080084400A1 (en) | 2006-10-10 | 2008-04-10 | Outland Research, Llc | Touch-gesture control of video media play on handheld media players |
JP2008102830A (ja) * | 2006-10-20 | 2008-05-01 | Denso Corp | マイクロコンピュータ、プログラム及び車両用電子制御装置 |
US7969426B2 (en) * | 2006-10-31 | 2011-06-28 | Hewlett-Packard Development Company, L.P. | Light sensitive display interface for computing devices |
US8756516B2 (en) * | 2006-10-31 | 2014-06-17 | Scenera Technologies, Llc | Methods, systems, and computer program products for interacting simultaneously with multiple application programs |
US8146006B2 (en) * | 2006-12-01 | 2012-03-27 | International Business Machines Corporation | Method and apparatus for obtaining user interface information from executable program code |
US8214768B2 (en) | 2007-01-05 | 2012-07-03 | Apple Inc. | Method, system, and graphical user interface for viewing multiple application windows |
US8063872B2 (en) * | 2007-01-07 | 2011-11-22 | Apple Inc. | Portable electronic device with auto-dim timers |
US8082523B2 (en) * | 2007-01-07 | 2011-12-20 | Apple Inc. | Portable electronic device with graphical user interface supporting application switching |
US7827358B2 (en) * | 2007-01-07 | 2010-11-02 | Apple Inc. | Memory management methods and systems |
KR100894146B1 (ko) * | 2007-02-03 | 2009-04-22 | 엘지전자 주식회사 | 이동통신 단말기 및 그 동작 제어방법 |
US8176486B2 (en) | 2007-02-15 | 2012-05-08 | Clearcube Technology, Inc. | Maintaining a pool of free virtual machines on a server computer |
EP2132920A1 (en) | 2007-04-10 | 2009-12-16 | Nokia Corporation | Improvements in or relating to electronic devices |
US20080281689A1 (en) | 2007-05-09 | 2008-11-13 | Yahoo! Inc. | Embedded video player advertisement display |
KR20080104858A (ko) | 2007-05-29 | 2008-12-03 | 삼성전자주식회사 | 터치 스크린 기반의 제스쳐 정보 제공 방법 및 장치, 그장치를 포함하는 정보 단말 기기 |
US8261205B2 (en) * | 2007-05-30 | 2012-09-04 | Hewlett-Packard Development Company, L.P. | User interface for presenting a list of thumbnail items associated with media items |
US8269728B2 (en) | 2007-06-07 | 2012-09-18 | Smart Technologies Ulc | System and method for managing media data in a presentation system |
US8667418B2 (en) | 2007-06-08 | 2014-03-04 | Apple Inc. | Object stack |
US8059101B2 (en) | 2007-06-22 | 2011-11-15 | Apple Inc. | Swipe gestures for touch screen keyboards |
USD615989S1 (en) | 2007-06-28 | 2010-05-18 | Apple Inc. | Animated graphical user interface for a display screen or portion thereof |
US9116593B2 (en) * | 2007-07-06 | 2015-08-25 | Qualcomm Incorporated | Single-axis window manager |
US7941429B2 (en) * | 2007-07-10 | 2011-05-10 | Yahoo! Inc. | Interface for visually searching and navigating objects |
US8589563B2 (en) * | 2007-07-10 | 2013-11-19 | Cisco Technology, Inc. | System, method, and apparatus for maintaining call state information for real-time call sessions |
JP4796017B2 (ja) * | 2007-07-30 | 2011-10-19 | 京セラ株式会社 | 電子機器 |
JP5143503B2 (ja) * | 2007-08-28 | 2013-02-13 | 任天堂株式会社 | プログラム、情報処理装置、情報処理システムおよび情報処理方法 |
WO2009032151A1 (en) * | 2007-09-05 | 2009-03-12 | Wms Gaming Inc. | Gaming system having dynamic player inputs |
US20090070691A1 (en) * | 2007-09-12 | 2009-03-12 | Devicefidelity, Inc. | Presenting web pages through mobile host devices |
US20090089692A1 (en) * | 2007-09-28 | 2009-04-02 | Morris Robert P | Method And System For Presenting Information Relating To A Plurality Of Applications Using A Three Dimensional Object |
US8510743B2 (en) * | 2007-10-31 | 2013-08-13 | Google Inc. | Terminating computer applications |
KR101387527B1 (ko) * | 2007-12-06 | 2014-04-23 | 엘지전자 주식회사 | 단말기 및 그 메뉴 아이콘 디스플레이 방법 |
US9767681B2 (en) | 2007-12-12 | 2017-09-19 | Apple Inc. | Handheld electronic devices with remote control functionality and gesture recognition |
WO2009076974A1 (en) * | 2007-12-14 | 2009-06-25 | Nokia Corporation | Mode control for an electronic device with touch ui |
US20090164928A1 (en) * | 2007-12-21 | 2009-06-25 | Nokia Corporation | Method, apparatus and computer program product for providing an improved user interface |
US8407603B2 (en) * | 2008-01-06 | 2013-03-26 | Apple Inc. | Portable electronic device for instant messaging multiple recipients |
US8490019B2 (en) * | 2008-01-29 | 2013-07-16 | Microsoft Corporation | Displaying thumbnail copies of each running item from one or more applications |
US8677285B2 (en) | 2008-02-01 | 2014-03-18 | Wimm Labs, Inc. | User interface of a small touch sensitive display for an electronic data and communication device |
US8250604B2 (en) * | 2008-02-05 | 2012-08-21 | Sony Corporation | Near real-time multiple thumbnail guide with single tuner |
US8069362B2 (en) * | 2008-02-26 | 2011-11-29 | Sap Ag | Automated electrical power savings in virtualization environments |
KR100977385B1 (ko) * | 2008-04-10 | 2010-08-20 | 주식회사 팬택 | 위젯형 대기화면을 제어할 수 있는 이동 단말기 및 그를이용한 대기화면 제어 방법 |
US8510577B2 (en) * | 2008-07-28 | 2013-08-13 | Microsoft Corporation | Reducing power consumption by offloading applications |
US8156320B2 (en) * | 2008-08-27 | 2012-04-10 | Wireless Silicon Group, Llc | Method and apparatus for fast booting a portable computing device allowing for immediate operation |
US8341557B2 (en) * | 2008-09-05 | 2012-12-25 | Apple Inc. | Portable touch screen device, method, and graphical user interface for providing workout support |
US8600446B2 (en) * | 2008-09-26 | 2013-12-03 | Htc Corporation | Mobile device interface with dual windows |
US20100146449A1 (en) | 2008-12-09 | 2010-06-10 | Michael William Brown | Method, apparatus and system for management of application switching in an electronic device |
US8451236B2 (en) * | 2008-12-22 | 2013-05-28 | Hewlett-Packard Development Company L.P. | Touch-sensitive display screen with absolute and relative input modes |
US8547244B2 (en) * | 2008-12-22 | 2013-10-01 | Palm, Inc. | Enhanced visual feedback for touch-sensitive input device |
US8291348B2 (en) * | 2008-12-31 | 2012-10-16 | Hewlett-Packard Development Company, L.P. | Computing device and method for selecting display regions responsive to non-discrete directional input actions and intelligent content analysis |
US8365091B2 (en) * | 2009-01-06 | 2013-01-29 | Microsoft Corporation | Non-uniform scrolling |
US9176747B2 (en) | 2009-02-17 | 2015-11-03 | Sandisk Il Ltd. | User-application interface |
US20100235787A1 (en) * | 2009-03-11 | 2010-09-16 | Mitel Networks Corporation | System and method for accessing internet protocol phone based applications |
US8175653B2 (en) * | 2009-03-30 | 2012-05-08 | Microsoft Corporation | Chromeless user interface |
US8612883B2 (en) * | 2009-06-08 | 2013-12-17 | Apple Inc. | User interface for managing the display of multiple display regions |
US7873849B2 (en) | 2009-09-02 | 2011-01-18 | Apple Inc. | Motion sensor data processing using various power management modes |
US20190163292A1 (en) | 2017-11-28 | 2019-05-30 | Egalax_Empia Technology Inc. | Electronic Board Eraser and Controlling Method Thereof |
-
2009
- 2009-07-20 US US12/505,541 patent/US9274807B2/en active Active
-
2010
- 2010-06-09 HU HUE19186578A patent/HUE055854T2/hu unknown
- 2010-06-09 EP EP17205386.0A patent/EP3324279B1/en active Active
- 2010-06-09 PL PL17205386T patent/PL3324279T3/pl unknown
- 2010-06-09 SI SI201032088T patent/SI3598286T1/sl unknown
- 2010-06-09 WO PCT/US2010/038006 patent/WO2011011120A2/en active Application Filing
- 2010-06-09 EP EP19186578.1A patent/EP3598286B1/en active Active
- 2010-06-09 PT PT191865781T patent/PT3598286T/pt unknown
- 2010-06-09 PL PL21187717.0T patent/PL3920015T3/pl unknown
- 2010-06-09 DK DK19186578.1T patent/DK3598286T3/da active
- 2010-06-09 PL PL19186578T patent/PL3598286T3/pl unknown
- 2010-06-09 ES ES19186578T patent/ES2884128T3/es active Active
- 2010-06-09 ES ES21187717T patent/ES2968336T3/es active Active
- 2010-06-09 SI SI201031919T patent/SI3324279T1/sl unknown
- 2010-06-09 CN CN201080032966.3A patent/CN102754058B/zh active Active
- 2010-06-09 ES ES17205386T patent/ES2751881T3/es active Active
- 2010-06-09 HU HUE17205386A patent/HUE045552T2/hu unknown
- 2010-06-09 CN CN201711026391.4A patent/CN107577500B/zh active Active
- 2010-06-09 DK DK17205386.0T patent/DK3324279T3/da active
- 2010-06-09 EP EP21187717.0A patent/EP3920015B1/en active Active
- 2010-06-09 PT PT172053860T patent/PT3324279T/pt unknown
- 2010-06-09 EP EP10802592.5A patent/EP2457148B1/en active Active
-
2016
- 2016-01-21 US US15/003,496 patent/US10877657B2/en active Active
- 2016-01-21 US US15/003,451 patent/US10268358B2/en active Active
-
2019
- 2019-02-13 US US16/275,067 patent/US10901602B2/en active Active
-
2020
- 2020-12-16 US US17/124,233 patent/US11500532B2/en active Active
-
2022
- 2022-10-05 US US17/938,293 patent/US20230081380A1/en active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2968336T3 (es) | Hibernación selectiva de actividades en un dispositivo informático móvil | |
US11989409B2 (en) | Device, method, and graphical user interface for displaying a plurality of settings controls | |
US20220283682A1 (en) | Application management in a computing device | |
US11567644B2 (en) | Cursor integration with a touch screen user interface | |
US10613701B2 (en) | Customizable bladed applications | |
KR102430623B1 (ko) | 소형 스크린 디스플레이를 위한 애플리케이션 명령 제어 | |
ES2728417T3 (es) | Navegación entre actividades en un dispositivo informático | |
US20140232671A1 (en) | Device, Method, and Graphical User Interface for Managing Concurrently Open Software Applications | |
US20140282110A1 (en) | Device, method, and graphical user interface for managing concurrently open software applications | |
US20140173517A1 (en) | Device, Method, and Graphical User Interface for Managing Concurrently Open Software Applications | |
US20150177927A1 (en) | Device, method, and graphical user interface for managing concurrently open software applications | |
US20120200503A1 (en) | Sizeable virtual keyboard for portable computing devices |