CN105683907A - 按比例持久保存跨浏览器会话的状态 - Google Patents
按比例持久保存跨浏览器会话的状态 Download PDFInfo
- Publication number
- CN105683907A CN105683907A CN201480053811.6A CN201480053811A CN105683907A CN 105683907 A CN105683907 A CN 105683907A CN 201480053811 A CN201480053811 A CN 201480053811A CN 105683907 A CN105683907 A CN 105683907A
- Authority
- CN
- China
- Prior art keywords
- user interface
- state
- father
- interface element
- user
- 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.)
- Granted
Links
- 230000002085 persistent effect Effects 0.000 title description 3
- 238000003860 storage Methods 0.000 claims abstract description 68
- 239000011232 storage material Substances 0.000 claims abstract description 7
- 238000000034 method Methods 0.000 claims description 15
- 230000008859 change Effects 0.000 claims description 14
- 230000009471 action Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 10
- 238000010422 painting Methods 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 229920003266 Leaf® Polymers 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 241000422846 Sequoiadendron giganteum Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008846 dynamic interplay Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000005469 granulation Methods 0.000 description 1
- 230000003179 granulation Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- 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/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2428—Query predicate definition using graphical user interfaces, including menus and forms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- 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/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- 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]
-
- 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/04817—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 using icons
-
- 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/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
-
- 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
- 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
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- 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
-
- 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/451—Execution arrangements for user interfaces
-
- 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/451—Execution arrangements for user interfaces
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- User Interface Of Digital Computer (AREA)
- Stored Programmes (AREA)
- Woven Fabrics (AREA)
- Image Analysis (AREA)
Abstract
与分层应用相关联的应用状态存储的管理。分层应用包括多个父用户界面元素,至少一些父用户界面元素中的每个元素具有布置在对应层次上的子用户界面元素。用户可导航遍历分层应用。例如,通过选择具有第一层次的子用户界面元素的第一父用户界面元素的一个子用户界面元素,用户可以导航到(并且也可能创建)具有第二层次的子用户界面元素的第二父用户界面元素。分层存储代理管理分层应用的状态。分层存储代理以持久保存分层应用的一个或多个父用户界面元素的至少一些层次的方式通过应用程序接口将应用状态提供给远程存储。
Description
背景
通常,用户与应用交互直至某个点,并且随后重启所述应用。在因特网浏览器中运行的web应用中,通过运行浏览器的标准刷新命令或导航到不同的网站并返回,重启所述应用是相当简单的。有时应用的一些或所有状态在重启之前未被持久保存。在同时示出大量用户界面(例如多个窗口/页面、多个用户界面控件等等)的计算机应用中,这可能表示大量的状态丢失。
为了持久保存状态,一些应用允许用户响应于明确的保存命令(例如通过按下保存按钮)来保存。其他应用允许用户指定自动保存状态的时间间隔。然而,在任一情况下,经常存在在重启过程中没有被持久保存的某个状态。当一些应用被关闭时,所述应用自动保存应用状态,但是并不是所有的关闭都是有序的,因而有时在关闭时保存并未发生。即使保存发生,所述保存经常仅以本地保存形式发生,因而无法在不丢失状态的情况下从不同的机器进行重启。而且,如果在执行本地存储过程中出现丢失,则本地保存的状态可能无论如何都无法发挥功能。
简要概述
本文描述的至少一些实施例涉及与分层应用相关联的对应用状态存储的管理。分层应用包括多个父用户界面元素,至少一些父用户界面元素中的每个元素具有布置在对应层次上的子用户界面元素。用户可导航遍历分层应用。例如,通过选择具有第一层次的子用户界面元素的第一父用户界面元素的一个子用户界面元素,用户可以导航到(并且也可能创建)具有第二层次的子用户界面元素的第二父用户界面元素。
分层存储代理管理分层应用的状态。分层存储代理以持久保存分层应用的一个或多个父用户界面元素的至少一些层次的方式通过应用程序接口将应用状态提供给远程存储。应用程序接口也允许对远程保存的状态的分层描述的部分的检索。因此,由于导航和编辑操作发生在分层应用中,可以增量地持久保存对应的导航或编辑状态。由于归因于存储的分层结构通过API的信息量小得多,状态的提供(例如保存)可以可能响应于改变应用状态的每次导航或编辑事件而被频繁得多地执行。
提供本发明内容以便以简化的形式介绍将在以下的具体实施方式中进一步描述的一些概念。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用作辅助确定要求保护的主题的范围。
附图简述
为了描述可获得本发明的上述和其它优点和特征的方式,将通过参考附图中示出的本发明的具体实施例来呈现以上简要描述的本发明的更具体描述。可以理解,这些附图只描绘了本发明的各典型实施例,并且因此不被认为是对其范围的限制,将通过使用附图并利用附加特征和细节来描述和解释本发明,在附图中:
图1抽象地示出其中可采用本文中所描述的原理的示例计算系统;
图2抽象地示出用户可能体验并与之交互的用户界面,并且包括多个父用户界面元素,每个元素具有对应层次的子用户界面元素;
图3示出了针对用户界面呈现组件的支持体系结构,允许示出分层应用的用户界面以持久保存层次方式分层地在一个存储中存储应用状态并从所述存储中检索应用状态;
图4示出了一种用于重构先前与用户交互的用户界面的全部或一部分的方法的流程图;
图5示出包括示出4个叶片(blade)的用户界面的所显示部分的环境,每个叶片具有一个层次的部分;以及
图6示出在其中应用通过视图模型将状态提供给用户界面元素的环境。
详细描述
在同时示出显著用户界面(例如多个窗口/页面、多个用户界面控件等等)的计算机应用中,当应用被重启时用户经常希望恢复聚集应用用户界面的用户界面状态。重要的是,在因特网浏览器中运行的web应用中,通过运行浏览器的标准“刷新”命令或导航到不同的网站并返回,重启所述应用是相当简单的。
在此所述的原理涉及以这样的方式来增强应用:用户界面状态在当用户与应用交互时被隐式地且自动地保存,并且随后被恢复以便当其被重新呈现时用户界面状态保持一致。例如,当重启应用时状态将被恢复。状态也可在当窗口/页面由于用户交互在屏幕上被恢复时用户界面控件被实例化时被恢复。因此,用户体验具有两个不同的阶段,一个是当用户首先与用户界面交互以由此影响用户界面状态时,而一个是当所述应用被重启且用户希望相同的用户界面状态。
根据在此所述的原理,用户界面程序呈现多个父用户界面元素,每个元素具有对应层次的所包含的用户界面元素。在用户体验的第一阶段中,当状态被生成并存储时,用户可以在父用户界面元素之间导航。例如,用户可以选择或以其他方式与一个父用户界面元素的子用户界面元素交互以生成另一个父用户界面元素。用户还可以通过键入或输入数据到用户界面元素中或重新配置一个或多个用户界面元素来编辑用户界面元素。
分层存储代理跟踪用户的导航和编辑活动并使用应用程序接口向远程存储提供对应的状态。所提供的状态包括用户已经导航多个父用户界面的导航顺序。而且,对于用户界面元素的一些或全部中的每个元素来说,所提供的状态包括描述用户如何用还未保存的数据填充所述用户界面元素的用户界面元素的编辑状态。
以下述方式提供所提供的状态:将关于对应层次的父用户界面元素的信息持久保存在远程存储中。针对该目的提供应用程序接口,其还允许从可能该用户界面的全部状态到可能仅单个父用户界面元素的状态、到可能仅特定用户界面元素的分层描述的部分的范围中检索不同粒度的状态。
在用户体验的第二阶段中,用户界面可以检索所提供的状态以由此重新填充用户界面的全部或部分。例如,这可以在单个重启场景中被使用,在所述场景中,浏览器刷新并且通过全部被持久保存的用户工作来恢复所述状态。这可以在共享场景中被使用,在所述场景中,用户允许另一个用户访问状态以将第一用户工作和用户界面体验恢复给第二用户。如果这与第一用户工作同时完成,则这也可以支持协作体验。同一用户也可以从一个计算机漫游到另一个计算机,并且使用经恢复的状态来继续用户已停止的工作。这样,即使是在涉及分层结构化用户元素的复杂环境中,也增强了用户体验。
将参考图1描述对计算设备的一些介绍性讨论。随后,将参考后续的附图来描述示例用户界面、方法和支持体系结构。
计算系统现在越来越多地采取多种多样的形式。例如,计算系统可以是手持式设备、电器、膝上型计算机、台式计算机、大型机、分布式计算系统或甚至常规上不被认为是计算系统的设备。在本说明书以及权利要求书中,术语“计算系统”被广义地定义为包括任何设备或系统(或其组合),该设备或系统包含至少一个物理且有形的处理器以及其上能具有可由处理器执行的计算机可执行指令的物理且有形的存储器。存储器可以采取任何形式,并可以取决于计算系统的性质和形式。计算系统可以分布在网络环境中,并可包括多个组分计算系统。
如图1所例示,在其最基本的配置中,计算系统100通常包括至少一个处理单元102和存储器104。存储器104可以是物理系统存储器,该物理系统存储器可以是易失性的、非易失性的、或两者的某种组合。术语“存储器”也可在此用来指示诸如物理存储介质这样的非易失性大容量存储器。如果计算系统是分布式的,则处理、存储器和/或存储能力也可以是分布式的。如本文中所使用的,术语可执行模块摂或可执行组件摂可指可在计算系统上执行的软件对象、例程或方法。此处所描述的不同组件、模块、引擎以及服务可以实现为在计算系统上执行的对象或进程(例如,作为分开的线程)。
在随后的描述中,参考由一个或多个计算系统执行的动作描述了各实施例。如果这样的动作是以软件实现的,则执行动作的相关联计算系统的一个或多个处理器响应于已经执行了计算机可执行指令来引导计算系统的操作。例如,这样的计算机可执行指令可以在形成计算机程序产品的一个或多个计算机可读介质上实现。这样的操作的示例涉及对数据的操纵。计算机可执行指令(以及被操纵的数据)可以存储在计算系统100的存储器104中。计算系统100还可包含允许计算系统100例如通过网络110与其他消息处理器通信的通信信道108。
计算系统100还包括在其上可以呈现诸如在此所述的用户界面之类的用户界面的显示器112。这样的用户界面可以在渲染之前就在计算机硬件或其他由计算机表现的形式来生成。这样的用户界面的呈现和/或渲染可以由具有处理单元102的计算系统100来执行,所述处理单元执行在一个或多个计算机可读介质上具体化的一个或多个计算机可执行指令这样的计算机可读介质可以形成计算机程序产品的全部或部分。
本文中描述的各实施例可包括或利用专用或通用计算机,该专用或通用计算机包括诸如例如一个或多个处理器和系统存储器等计算机硬件,如以下更详细讨论的本文中描述的各实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。承载计算机可执行指令的计算机可读介质是传输介质。由此,作为示例而非限制,本发明的各实施例可包括至少两种显著不同的计算机可读介质:计算机存储介质和传输介质。
计算机存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或者可用于存储以计算机可执行指令或数据结构的形式的期望程序代码手段且可由通用或专用计算机访问的任何其他有形介质。
“网络”被定义为使得电子数据能够在计算机系统和/或模块和/或其它电子设备之间传输的一个或多个数据链路。当信息通过网络或另一个通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输介质。传输介质可以包括可用于携带计算机可执行指令或数据结构形式的期望程序代码装置并可被通用或专用计算机访问的网络和/或数据链路。上述的组合应当也被包括在计算机可读介质的范围内。
此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程序代码资料可从传输介质自动传输到计算机存储介质(或反之亦然)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可以在网络接口模块(例如,“NIC”)内的RAM中被缓冲,然后最终被传输至计算机系统RAM和/或计算机系统处的较不易失性的计算机存储介质。因而,应当理解,计算机存储介质可被包括在还利用(或甚至主要利用)传输介质的计算机系统组件中。
计算机可执行指令例如包括,当在处理器处执行时使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特征或动作。相反,上述特征和动作是作为实现权利要求的示例形式而公开的。
本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机等等。本发明也可在其中通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实施。在分布式系统环境中,程序模块可以位于本地和远程存储器存储设备二者中。
图2解说用户可以体验和与之交互的一个用户界面200。用户界面200包括第一父用户界面元素201,它包括根据适合于第一父用户界面元素201的特定层次的多个子用户界面元素211到215。第二父用户界面元素202还包含根据适合于第二父用户界面元素202的另一个特定层次布置的多个子用户界面元素221到226。椭圆203表示在用户界面200中存在更多的父用户界面元素。用户可以导航遍历用户界面200。例如,为了生成第二父用户界面元素202,用户可能已经选择了第一父用户界面元素201的子用户界面元素中的一个。
图3示出了用于用户界面组件的支持体系结构300。用户界面呈现组件302呈现了一个用户界面301。例如,用户界面301可以表示图2的用户界面200。分层存储代理303使用应用程序接口(API)320)向远程存储321提供状态(由箭头311表示)。远程存储321可以是例如基于云的存储、存储区域网络内的存储或任何其他远程存储。
所提供的状态包括表示用户如何导航遍历至少一些用户界面元素以到达当前状态的导航状态。所提供的状态还包括在用户界面301内的一些或全部用户界面元素的每个的状态。
例如,在图2的情况中,所提供的状态可以包括来自父用户界面元素201和202以及它们的子用户元素或这些用户界面元素的子集的状态。状态通过灵活的API320来提供。API320和/或所提供的状态结构化的方式持久保存了从中获得所述状态的关于原始层次的用户界面元素的信息。通过那种方式,当状态被检索时,相关的状态可以被应用于合适的用户界面元素。
另外,API320可能提供了要被并保存的状态和/或使用不同的粒度检索状态。例如,用户界面200的所有状态可以在单个调用或握手中被保存和/或检索。然而,可以保存和/或检索更精细粒度,诸如可能是父用户界面元素级别的粒度、子用户界面元素级别的粒度、或甚至可能以用户界面元素的状态的一部分级别的粒度。API320将通过从远程存储321检索分层结构化数据或将这种分层结构化数据提供给远程存储321来响应由分层存储代理303所提供的分层数据标识。
根据用户的进一步导航,分层存储代理303更新所提供的状态。例如,导航组件304检测用户导航遍历用户界面301。导航组件304通知用户界面呈现组件302,以便可在用户界面301中反映所述导航,并且还通知存储代理303,以便所述导航状态可以持久保存在存储321中。
根据用户界面元素的至少一些状态中的改变,分层存储代理303还更新所提供的状态。例如,编辑组件305允许用户编辑用户界面301内的用户界面组件。编辑由编辑组件305检测并使得通过用户界面呈现组件302投射回用户界面301。还有,所述编辑使得分层存储代理将表示所述编辑的进一步状态提供给远程存储。例如,用户可以在一个字段内编辑数据,在宽泛的上下文中,这是用户界面元素的一种状态。另一方面,用户可以改变用户界面元素自身的外观或属性。
在任何情况下,编辑组件305可能不引起所有的编辑状态被持久保存。例如,如果用户要改变大小或以其他方式重新配置或移动用户界面元素,这些操作在永久的基础上可能对用户是不重要的。因此,用户元素可以被标记以指示重新配置和/或编辑操作要被永久保存。
编辑组件305还可以确定是否仅对被编辑的用户界面元素做出对应的编辑,或是否也对该编辑可以被应用的一个或多个相关的用户界面元素做出对应的编辑。在考虑用户界面元素要应用所述改变的范围时,所述编辑组件305可以考虑用户指令以及默认设置,并使得存储代理303适当地存储所述状态。
用户界面呈现组件302可以使用许多不同类型的用户界面元素。这些用户界面元素中的一些可以是由系统提供的固有用户界面元素331,所述系统可以支持作为多个应用的操作的平台。这样的固有用户界面元素可以具有跨多个应用的通用效用。其他用户界面元素可以是由应用开发者提供的外来用户界面元素332,并且其可具有针对该应用的更加特定的效用。存储代理303向任何用户界面元素提供与导航相关联的状态和从任何用户界面元素提供与导航相关联的状态,并且无论用户界面元素是固有的还是外来的,都编辑任何用户界面元素。例如,所提供的状态可以与在用户界面301中显示的外来元素以及来自也在用户界面301中显示的不同应用的固有元素相关联。
系统300还包括虚拟化组件306,该组件确定1)何时从计算系统(例如从与用户界面301相关联的本地存储器或存储中)移除与多个父用户界面元素的给定用户界面元素相关联的状态,以及2)何时从远程存储321检索与多个父用户界面元素的给定用户界面元素相关联的状态。虚拟化组件306可以基于用户导航行为和选项在当给定用户界面元素将较不可能出现在计算系统的显示上时确定从本地存储器或存储中移除给定用户界面元素的状态。虚拟化组件306可以基于用户导航行为在当给定用户界面元素将很可能出现在计算系统的显示上时确定检索状态。
例如,取代在图2并排示出的两个父用户界面元素201和202,假设存在一百个并排的父用户界面元素。在给定有限的显示尺寸时,并不是所有的父用户界面元素都可一次显示出。因此,虚拟化组件306可以为没有在显示区域内的父用户界面元素释放本地存储器和/或存储,特别是如果所述父用户界面元素在不久的将来都不太可能被显示时。当用户导航遍历这一百个父用户界面元素时,可以从本地存储器和/或存储释放并从远程存储中适当地检索父用户界面元素的状态,这样,就好像该状态曾经永久存储在本地机器上。
远程存储321可以改变以允许感兴趣的应用体验。该状态可以被每用户地存储以允许应用的每用户定制。所述状态可以因特网上可用的“状态服务”形式被存储,允许用户应用状态在计算机之间“漫游”。该状态可以被逐团队地存储以允许应用向一组应用用户显示相同用户界面布置。用户界面状态可以被保存在文件中并与其他人共享,就像一个人将共享字处理或电子表格文档(由一个用户创建/保存,并且由另一个人打开/修改,等等)。
在用户体验的第二阶段中,应用从存储检索状态以便重构用户界面的全部或部分。图4示出了一种用于重构先前与用户交互的用户界面的全部或一部分的方法400的流程图。方法400包括读取先前提供给存储的用户界面状态(动作401)。方法400随后包括使用该读取的状态来重新制定用户界面上的用户界面到一个用户先前已经导航的状态(动作402)。
依据围绕用户的重新制定的情形(哪个机器、哪个用户、何时重新制定)允许各种场景。例如,通过在同一显示上的用户界面的重新制定如同当状态最初被制定和用户界面显示时由用户正在使用那样,启动应用重启(例如浏览器刷新)。重启可以在任何时间发生,然而刷新通常隐含所述重新制定是作为用户界面最初被制定中的相同工作会话的部分而发生。当在第一位置制定用户界面的相同用户来到被用于重新制定所述用户界面的不同显示处时启动漫游场景。当与原先制定用户界面的最初用户相比是不同的用户重新制定所述用户界面时启动共享场景。当不同的用户正在实时地制定或重新制定时启动协作场景。
现在将描述更加特定的用户界面。在更加特定的用户界面中,存在在可扩展维度(在剩余的说明中假设为水平,但也可以是垂直的)中延伸的画布。当用户选择画布上的用户界面元素时,新的用户界面元素(在此被称为“叶片”)可以出现并在可扩展方向(在剩余的说明中假设为右边,但本原理不局限于将叶片加入到右边)被加入到画布中。每个叶片是上述父用户界面元素的示例,并且这样可以包含多个子用户界面元素,其有时在此被称为一个“部件”。通过选择现有叶片中的一个部件,新叶片可以出现在画布的右边。这样,通过与画布的交互,可以在画布上制定出长的叶片序列,其可以是对可扩展性长度没有实际限制的“无限”画布。当叶片序列太长以至于无法适合单个显示时,用户可以平移该画布。
例如,图5示出包括用户界面的所显示部分501的环境500。所显示的部分示出四个不同的叶片510、520、530和540的片段,但是通过滚动或向左或向右横扫,序列中的其他叶片将被展现以供查看。叶片520被示为包括部件521到524。叶片530被示为包括部件531到535。其他叶片510和540也具有未被标记的部件。叶片520可以已经通过选择前一叶片(例如叶片510)中的一个部件而被创建。叶片530可以已经通过选择前一叶片中的一个部件(例如叶片520的部件521)而被创建。叶片540可以已经通过选择前一叶片中的一个部件(例如叶片531的部件531或可能叶片520的部件522)而被创建。
所述部件包含一个用户界面,如果部件是固有部件则由系统的提供者或如果所述部件是外来部件则由应用开发者生成该用户界面。所述应用被分开地开发并加载到系统中。所述系统很大程度上不知晓由所述应用正被生成为给定部件的用户界面的类型。
这样,这是一种在屏幕上示出许多用户界面的组合应用。通过这样的大型用户界面,通过跨系统的关闭和重启地持久存储用户界面状态(例如用户导航、编辑和配置),总体的用户体验大大受益。类似地,由于画布可以包含许多许多并布置的叶片,使用虚拟化维护用户界面状态以便以这样的方式管理本地运行时资源:许多叶片不会由于过度的存储器和处理器使用而降低系统性能。所述虚拟化保持与可视叶片相关联的用户界面状态活动,同时许多或所有的屏外叶片的用户界面状态没有被本地保留。
在该特定实施例中,“用户界面状态”是指在画布上的每个叶片的类型和相对位置、每个叶片上的部件的布置和大小以及每个部件中包含的状态(例如在列表部件中的选择、在线路图上示出的用户选定的线、在网格部件中的用户选定的列名等等)。如果该状态的任何方面在关闭/重启过程中被丢失,则应用的用户体验将显著降低。
再次参考图5,当用户定制用户界面(添加叶片到画布、移除叶片、从叶片添加/移除部件、在叶片内或叶片之间重新定位部件、调整部件大小等等)时,这被应用捕捉以作为可串行化状态。该状态可以考虑大的树型数据结构-所述树的根是叶片和它们的状态的列表,每个叶片包含一个透镜(“lens”,可以包含一个或多个部件的另一种用户界面容器)列表,每个透镜包含其部件和它们的状态的列表。当用户前行到定制用户界面(打开/关闭叶片、添加/移除一个部件等等)时,对状态树做出更新。因此,这种较大画布状态的子树可以被递增更新并且所述子树被保存到状态存储。
存储550自身可以是传统的键/值结构。这种设计允许较大的、逻辑状态树被分解成小的子树,所述子树的节点的每个都被存储在离散的键下。由于对用户来说存在创建大量叶片/部件的可能-超出了能够被合理地加载到应用存储器中并作为UI控件渲染的数目-这种展平允许较大的状态树的子集在给定时间由系统加载并管理。这是用户界面虚拟化的基础。所述应用加载足以仅渲染屏上的这些叶片/部件(加上可能的些许在屏外的某种额外的用户界面以优化通过用户的平移)的状态树的子集。当用户平移画布且叶片移动到屏外,所述叶片的状态和其包含的部件被保存并且所述叶片/部件的应用资源(存储器)被释放。当叶片被平移到屏幕上时,从状态存储加载相应的叶片/部件状态,并且所述状态被配置到新实例化的UI组件/控件中去,有效地将UI返回到用户最后看见的状态。
当状态树由系统响应于用户定制/交互(例如添加/移除叶片、添加/移除部件、与部件的交互以改变其状态(例如选择列表项、选择网格视图中的交替列))被增量修改时,应用可以增量地保存这些改变。在这种情况中,仅离散的改变将被应用到状态存储。将不存在状态树的任何重要部件的大规模重写。
在用户界面虚拟化支持下,键/值形状态存储对于逻辑状态树中的节点的分支可以被有效查询。针对所述存储的每个查询描述了其值将要返回给应用的那些节点,足以渲染屏幕上的一个或多个叶片(并且包含了部件)。查询语言以一种新颖的方式使用了嵌套查询。在图5的简单示例中,最深嵌套查询返回画布上的“当前”叶片的键,封闭查询返回在该键下的叶片节点的值。
由于状态存储550是简单的键/值存储并且应用对存储的使用是常见的,因此,可以依据该状态保存/恢复功能开发许多不同的应用场景。在最简单的情况下,状态可以被“每用户”保存以反映用户定制。在其他情况下,状态可以被保存在因特网上可用的服务所主存的(在为应用所知的URL处的)存储中,使得应用状态随着用户从一个计算机到另一计算机漫游。状态可以从由一个组中的多个用户共享的存储中被加载,这样,每个用户可以看见相同的共享的应用布局/配置。存储本身可以被作为能够被分发/与其他人共享的文件被开发,以便允许人们使用该相同的应用来协作。
如早先所述,在此由系统存储的用户界面状态包括其自身被开发成应用、与系统自身分开开发的“部件”的状态。重要的是,因为分开地被开发,所述系统不具有任何应用的静态知晓。情况既然这样,为了保存包含在这些部件内的状态,所述系统与部件动态交互以每当用户与该部件交互时就提取其状态,这样,所述系统可以包括部件状态包括作为其包含的叶片的状态的一个方面。
在一个实施例中,部件使用下述参考图6的分发将状态和对状态的改变(反映用户交互)传递给系统。首先,这些部件被设计成MVVM(模型/视图/视图模型)模式。为了要生成在部件的可视边界内被渲染的用户界面的系统,该应用与所述系统遵循MVVM模式共享一个视图模型。就是说,视图模型确定在视图中(所述部件中)示出的值,并且对该视图模型的改变被反映作为对部件的用户界面的对应的改变。所述应用提供的视图模型不仅驱动部件内的视觉体验,而且它还对部件可保存的状态建模。驱动视觉的那些视觉模型属性与应该被保存/恢复的那些明显重叠是常见的,因此这导致用于状态保存/恢复的自然应用编程模型。通过其,用户与部件的交互更新了视图,并且视图继续在视图模型中反映这些改变。当视图模型改变时,对于被应用作者指定为“状态属性”的某些视图模型属性来说,系统将这些部件“状态属性”保存到设置存储。
所讨论的部件最终将被处理为——要么系统本身将被关闭,要么叶片将被用户平移到屏外。一旦处理完,给定部件可以被重新实例化(当重启应用时、当给定叶片被平移回到屏上时)。作为初始化这样的重新实例化部件的部分,系统将从设置存储加载其状态属性,并且在渲染该部件之前,在新的实例化视图模型上设置所述状态属性。
因此,在此所述的实施例提供用于跨应用重启持久保存应用的导航和/或编辑状态的有效机制。而且,在一些实施例中,用户界面元素的状态可以通过响应于导航行为的用户界面状态的有效移除和检索而被虚拟化。
本发明可具体化为其它具体形式而不背离其精神或本质特征。所描述的实施例在所有方面都应被认为仅是说明性而非限制性的。从而,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方案的含义和范围内的所有改变应被权利要求书的范围所涵盖。
Claims (10)
1.一种包括其上具有计算机可执行指令的一个或多个计算机可读存储介质的计算机程序产品,所述计算机可执行指令被结构化成使得在计算系统的一个或多个处理器执行时,使所述计算系统操作实例化和/或操作以下:
用于呈现具有对应层次的所包含的用户界面元素的多个父用户界面元素的用户界面组件,所述多个父用户界面元素包括至少1)具有第一层次的所包含的用户界面元素的第一父用户界面元素,以及2)具有第二层次的所包含的用户界面元素的第二父用户界面元素,其中所述用户可以通过与所述第一父用户界面元素交互来直接或间接地导航到所述第二父用户界面元素;以及
使用应用程序接口将状态提供给远程存储的分层存储代理,所提供的状态包括所述多个父用户界面元素中的包括所述第一和第二父用户界面元素在内的至少一些父用户界面元素中的每个的状态,所提供的状态以下述方式被提供:在所述远程存储中持久保存所述对应的层次的至少一些,所述应用程序接口还允许仅对所述第一和第二父用户界面元素的远程保存的状态的分层描述的部分的检索。
2.如权利要求1所述的计算机程序产品,其特征在于,所提供的状态包括来自多个用户界面元素的状态,所述多个用户界面元素既包括固有用户界面元素也包括外来用户界面元素。
3.如权利要求1所述的计算机程序产品,其特征在于,所提供的状态包括来自多个用户界面元素的状态,所述多个用户界面元素包括来自所述第一应用的外来用户界面元素以及来自所述第二应用的外来用户界面元素。
4.如权利要求1所述的计算机程序产品,其特征在于,所提供的状态还包括表示用户如何导航遍历所述多个父用户界面元素中的至少一些以到达当前状态的导航状态。
5.如权利要求4所述的计算机程序产品,其特征在于,依据在所述第一和第二父用户界面元素的至少一些状态中的改变,所述分层存储代理更新所提供的状态。
6.如权利要求4所述的计算机程序产品,其特征在于,根据用户的进一步导航,所述分层存储代理更新所提供的状态。
7.根据权利要求1所述的计算机程序产品,其特征在于,进一步包括:
虚拟化组件,确定1)何时从所述计算系统移除与所述多个父用户界面元素的给定父用户界面元素相关联的状态,以及2)何时从所述远程存储检索与所述多个父用户界面元素的给定父用户界面元素相关联的状态。
8.如权利要求1所述的计算机程序产品,其特征在于,所述计算机可执行指令被进一步结构化,使得在由所述计算系统的所述一个或多个处理器执行时,使得所述计算系统实例化和/或操作如下:
编辑组件,被配置为允许用户编辑用户界面组件,使得所述分层存储代理将表示所述编辑的进一步状态提供给所述远程存储。
9.一种用于使用用户界面的方法,包括:
读取先前被提供给存储的状态的动作,所述状态包括多个父用户界面的状态,所述状态包括用户先前已通过其导航所述多个父用户界面的导航顺序,所述多个父用户界面中的每个具有对应层次的所包含的用户界面元素,所述多个父用户界面中的每个的状态是根据对应层次的该父用户界面来构建的;以及
使用所述读取状态来重新制定用户界面上的所述多个父用户界面到一个所述用户先前已经导航的状态中的动作。
10.如权利要求9所述的方法,其特征在于,所述多个父用户界面的重新形成在与当所述状态被形成时所述用户正在使用的相同的显示器上发生以因此完成刷新。
Applications Claiming Priority (25)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361884743P | 2013-09-30 | 2013-09-30 | |
US61/884,743 | 2013-09-30 | ||
US201361905114P | 2013-11-15 | 2013-11-15 | |
US201361905111P | 2013-11-15 | 2013-11-15 | |
US201361905129P | 2013-11-15 | 2013-11-15 | |
US201361905105P | 2013-11-15 | 2013-11-15 | |
US201361905128P | 2013-11-15 | 2013-11-15 | |
US201361905116P | 2013-11-15 | 2013-11-15 | |
US201361905119P | 2013-11-15 | 2013-11-15 | |
US201361905101P | 2013-11-15 | 2013-11-15 | |
US61/905,101 | 2013-11-15 | ||
US61/905,114 | 2013-11-15 | ||
US61/905,129 | 2013-11-15 | ||
US61/905,105 | 2013-11-15 | ||
US61/905,111 | 2013-11-15 | ||
US61/905,119 | 2013-11-15 | ||
US61/905,128 | 2013-11-15 | ||
US61/905,116 | 2013-11-15 | ||
US201361905243P | 2013-11-17 | 2013-11-17 | |
US201361905247P | 2013-11-17 | 2013-11-17 | |
US61/905,247 | 2013-11-17 | ||
US61/905,243 | 2013-11-17 | ||
US14/231,891 | 2014-04-01 | ||
US14/231,891 US9483549B2 (en) | 2013-09-30 | 2014-04-01 | Persisting state at scale across browser sessions |
PCT/US2014/057323 WO2015048205A1 (en) | 2013-09-30 | 2014-09-25 | Persisting state at scale across browser sessions |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105683907A true CN105683907A (zh) | 2016-06-15 |
CN105683907B CN105683907B (zh) | 2019-06-28 |
Family
ID=52741177
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480053811.6A Active CN105683907B (zh) | 2013-09-30 | 2014-09-25 | 按比例持久保存跨浏览器会话的状态 |
CN201480054151.3A Active CN105683909B (zh) | 2013-09-30 | 2014-09-25 | 控件和部件顺应分层结构 |
CN201480054050.6A Active CN105593813B (zh) | 2013-09-30 | 2014-09-25 | 用于可视化从受限环境容器提供的数据的呈现解释器 |
CN201480053988.6A Expired - Fee Related CN105683908B (zh) | 2013-09-30 | 2014-09-29 | 知晓上下文的用户界面部分 |
CN201480054049.3A Pending CN105593812A (zh) | 2013-09-30 | 2014-09-29 | 平移和选择姿势检测 |
CN201480053821.XA Pending CN105659199A (zh) | 2013-09-30 | 2014-09-29 | 沿可平移的画布方向的可扩展刀片序列 |
Family Applications After (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480054151.3A Active CN105683909B (zh) | 2013-09-30 | 2014-09-25 | 控件和部件顺应分层结构 |
CN201480054050.6A Active CN105593813B (zh) | 2013-09-30 | 2014-09-25 | 用于可视化从受限环境容器提供的数据的呈现解释器 |
CN201480053988.6A Expired - Fee Related CN105683908B (zh) | 2013-09-30 | 2014-09-29 | 知晓上下文的用户界面部分 |
CN201480054049.3A Pending CN105593812A (zh) | 2013-09-30 | 2014-09-29 | 平移和选择姿势检测 |
CN201480053821.XA Pending CN105659199A (zh) | 2013-09-30 | 2014-09-29 | 沿可平移的画布方向的可扩展刀片序列 |
Country Status (17)
Country | Link |
---|---|
US (11) | US9805114B2 (zh) |
EP (6) | EP3053028B1 (zh) |
JP (2) | JP6465870B2 (zh) |
KR (3) | KR102186865B1 (zh) |
CN (6) | CN105683907B (zh) |
AU (2) | AU2014324620A1 (zh) |
BR (1) | BR112016004551A8 (zh) |
CA (2) | CA2922985A1 (zh) |
CL (1) | CL2016000729A1 (zh) |
HK (1) | HK1222731A1 (zh) |
IL (1) | IL244368A0 (zh) |
MX (2) | MX2016003946A (zh) |
PH (1) | PH12016500256A1 (zh) |
RU (2) | RU2679540C2 (zh) |
SG (2) | SG11201601888UA (zh) |
TW (4) | TW201528106A (zh) |
WO (7) | WO2015048206A1 (zh) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USD750112S1 (en) * | 2013-01-04 | 2016-02-23 | Samsung Electronics Co., Ltd. | Portable electronic device with graphical user interface |
US9805114B2 (en) * | 2013-09-30 | 2017-10-31 | Microsoft Technology Licensing, Llc | Composable selection model through reusable component |
USD745877S1 (en) * | 2013-10-17 | 2015-12-22 | Microsoft Corporation | Display screen with graphical user interface |
US10176218B2 (en) * | 2014-11-07 | 2019-01-08 | Sap Se | OData custom query composer |
US10452750B2 (en) | 2015-08-04 | 2019-10-22 | Google Llc | Systems and methods for interactively presenting a visible portion of a rendering surface on a user device |
US10990258B2 (en) * | 2015-08-04 | 2021-04-27 | Google Llc | Interactively presenting a visible portion of a rendering surface on a user device |
JP6812639B2 (ja) * | 2016-02-03 | 2021-01-13 | セイコーエプソン株式会社 | 電子機器、電子機器の制御プログラム |
US10289297B2 (en) * | 2016-08-26 | 2019-05-14 | Google Llc | Animating an image to indicate that the image is pannable |
US9871911B1 (en) * | 2016-09-30 | 2018-01-16 | Microsoft Technology Licensing, Llc | Visualizations for interactions with external computing logic |
KR102605332B1 (ko) * | 2016-11-02 | 2023-11-23 | 주식회사 넥슨코리아 | 컨텐츠 제공 장치 및 방법 |
US10796088B2 (en) * | 2017-04-21 | 2020-10-06 | International Business Machines Corporation | Specifying a conversational computer agent and its outcome with a grammar |
WO2018208047A1 (en) | 2017-05-09 | 2018-11-15 | Samsung Electronics Co., Ltd. | Method and system for managing and displaying application |
US10827319B2 (en) * | 2017-06-02 | 2020-11-03 | Apple Inc. | Messaging system interacting with dynamic extension app |
US11341422B2 (en) | 2017-12-15 | 2022-05-24 | SHANGHAI XIAOl ROBOT TECHNOLOGY CO., LTD. | Multi-round questioning and answering methods, methods for generating a multi-round questioning and answering system, and methods for modifying the system |
CN110019717B (zh) * | 2017-12-15 | 2021-06-29 | 上海智臻智能网络科技股份有限公司 | 修改多轮问答系统的装置 |
CN110019718B (zh) * | 2017-12-15 | 2021-04-09 | 上海智臻智能网络科技股份有限公司 | 修改多轮问答系统的方法、终端设备以及存储介质 |
US11379252B1 (en) * | 2018-01-31 | 2022-07-05 | Parallels International Gmbh | System and method for providing layouts for a remote desktop session |
US11659003B2 (en) * | 2018-08-30 | 2023-05-23 | International Business Machines Corporation | Safe shell container facilitating inspection of a virtual container |
US10902045B2 (en) * | 2018-09-18 | 2021-01-26 | Tableau Software, Inc. | Natural language interface for building data visualizations, including cascading edits to filter expressions |
US11048871B2 (en) * | 2018-09-18 | 2021-06-29 | Tableau Software, Inc. | Analyzing natural language expressions in a data visualization user interface |
CN109542563B (zh) * | 2018-11-09 | 2022-06-07 | 优信数享(北京)信息技术有限公司 | 一种集成多状态的安卓页面管理方法、装置及系统 |
US11385766B2 (en) * | 2019-01-07 | 2022-07-12 | AppEsteem Corporation | Technologies for indicating deceptive and trustworthy resources |
EP3764210A1 (de) | 2019-07-08 | 2021-01-13 | dSPACE digital signal processing and control engineering GmbH | Darstellen von anzeigebereichen auf einem desktop |
US11089050B1 (en) * | 2019-08-26 | 2021-08-10 | Ca, Inc. | Isolating an iframe of a webpage |
US11455339B1 (en) | 2019-09-06 | 2022-09-27 | Tableau Software, LLC | Incremental updates to natural language expressions in a data visualization user interface |
US11474975B2 (en) | 2019-09-18 | 2022-10-18 | Microsoft Technology Licensing, Llc | Identity represented assets in a content management system |
US11199955B2 (en) * | 2019-10-02 | 2021-12-14 | Palantir Technologies Inc. | Enhanced techniques for building user interfaces |
CN110825766A (zh) * | 2019-11-13 | 2020-02-21 | 恩亿科(北京)数据科技有限公司 | 查询条件生成方法、装置、服务器及可读存储介质 |
CN110995942B (zh) * | 2019-12-06 | 2021-08-06 | 科大国创软件股份有限公司 | 一种基于界面可视化的软交换自动呼叫方法及系统 |
KR20210086263A (ko) * | 2019-12-31 | 2021-07-08 | 한국과학기술원 | 이기종 다중 기기 상호작용을 위한 안전한 사용자 인터페이스 분산 방법 |
CN111177455A (zh) * | 2019-12-31 | 2020-05-19 | 精英数智科技股份有限公司 | 采煤机截齿负载类型的确定方法、装置、设备和存储介质 |
CN111610912B (zh) * | 2020-04-24 | 2023-10-10 | 北京小米移动软件有限公司 | 应用显示方法、应用显示装置及存储介质 |
JP2023539525A (ja) | 2020-09-02 | 2023-09-14 | ジェンマブ エー/エス | 抗体療法 |
US11698933B1 (en) | 2020-09-18 | 2023-07-11 | Tableau Software, LLC | Using dynamic entity search during entry of natural language commands for visual data analysis |
US11301631B1 (en) | 2020-10-05 | 2022-04-12 | Tableau Software, LLC | Visually correlating individual terms in natural language input to respective structured phrases representing the natural language input |
CN112732243B (zh) * | 2021-01-11 | 2024-06-18 | 京东科技控股股份有限公司 | 一种用于生成功能组件的数据处理方法及装置 |
US11363050B1 (en) | 2021-03-25 | 2022-06-14 | Bank Of America Corporation | Information security system and method for incompliance detection in data transmission |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030058286A1 (en) * | 2001-09-25 | 2003-03-27 | Owen Dando | Configurable user-interface component management system |
US20030137540A1 (en) * | 2001-12-28 | 2003-07-24 | Stephan Klevenz | Managing a user interface |
CN1625111A (zh) * | 2003-12-04 | 2005-06-08 | 国际商业机器公司 | 为新文档选择浏览器窗口的方法和系统 |
US20100115053A1 (en) * | 2008-11-03 | 2010-05-06 | Samsung Electronics Co., Ltd. | Method and apparatus for managing state information of remote user interface |
Family Cites Families (178)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6362033A (ja) * | 1986-09-02 | 1988-03-18 | Nec Corp | 関連情報表示装置 |
WO1994024657A1 (en) * | 1993-04-20 | 1994-10-27 | Apple Computer Inc. | Interactive user interface |
US5625763A (en) | 1995-05-05 | 1997-04-29 | Apple Computer, Inc. | Method and apparatus for automatically generating focus ordering in a dialog on a computer system |
JPH09245188A (ja) * | 1996-03-12 | 1997-09-19 | Fujitsu Ltd | 図形表示方法及び図形表示装置 |
US5845299A (en) | 1996-07-29 | 1998-12-01 | Rae Technology Llc | Draw-based editor for web pages |
US6049812A (en) | 1996-11-18 | 2000-04-11 | International Business Machines Corp. | Browser and plural active URL manager for network computers |
US6128632A (en) * | 1997-03-06 | 2000-10-03 | Apple Computer, Inc. | Methods for applying rubi annotation characters over base text characters |
US6091415A (en) * | 1997-05-02 | 2000-07-18 | Inventec Corporation | System and method for displaying multiple dialog boxes in a window display |
US5886694A (en) * | 1997-07-14 | 1999-03-23 | Microsoft Corporation | Method for automatically laying out controls in a dialog window |
US5995101A (en) * | 1997-10-29 | 1999-11-30 | Adobe Systems Incorporated | Multi-level tool tip |
US6236400B1 (en) * | 1998-04-02 | 2001-05-22 | Sun Microsystems, Inc. | Method and apparatus for controlling the display of hierarchical information |
US6473102B1 (en) | 1998-05-11 | 2002-10-29 | Apple Computer, Inc. | Method and system for automatically resizing and repositioning windows in response to changes in display |
US7801913B2 (en) * | 1998-12-07 | 2010-09-21 | Oracle International Corporation | System and method for querying data for implicit hierarchies |
US6460060B1 (en) | 1999-01-26 | 2002-10-01 | International Business Machines Corporation | Method and system for searching web browser history |
JP2000331020A (ja) * | 1999-05-21 | 2000-11-30 | Nippon Telegr & Teleph Corp <Ntt> | 情報参照方法,情報参照装置および情報参照プログラムを格納した記憶媒体 |
US6701513B1 (en) * | 2000-01-14 | 2004-03-02 | Measurement Computing Corporation | Program-development environment for use in generating application programs |
US7243335B1 (en) | 2000-02-17 | 2007-07-10 | Microsoft Corporation | Method and system for reducing coding complexity by providing intelligent manipulable defaults |
US6681383B1 (en) | 2000-04-04 | 2004-01-20 | Sosy, Inc. | Automatic software production system |
US6473891B1 (en) | 2000-05-03 | 2002-10-29 | Lsi Logic Corporation | Wire routing to control skew |
US7062475B1 (en) | 2000-05-30 | 2006-06-13 | Alberti Anemometer Llc | Personalized multi-service computer environment |
US6750887B1 (en) | 2000-06-02 | 2004-06-15 | Sun Microsystems, Inc. | Graphical user interface layout manager |
US7171455B1 (en) | 2000-08-22 | 2007-01-30 | International Business Machines Corporation | Object oriented based, business class methodology for generating quasi-static web pages at periodic intervals |
US6919890B2 (en) | 2000-09-28 | 2005-07-19 | Curl Corporation | Grid and table layout using elastics |
US6640655B1 (en) * | 2000-10-03 | 2003-11-04 | Varco I/P, Inc. | Self tracking sensor suspension mechanism |
US6950198B1 (en) | 2000-10-18 | 2005-09-27 | Eastman Kodak Company | Effective transfer of images from a user to a service provider |
US7370040B1 (en) | 2000-11-21 | 2008-05-06 | Microsoft Corporation | Searching with adaptively configurable user interface and extensible query language |
AU2002233991A1 (en) | 2000-12-06 | 2002-06-18 | American Express Travel Related Services Company, Inc. | Layout generator system and method |
US6760128B2 (en) | 2000-12-06 | 2004-07-06 | Eastman Kodak Company | Providing a payment schedule for utilizing stored images using a designated date |
JP2002182812A (ja) * | 2000-12-14 | 2002-06-28 | Smg Kk | サイトマップ表示システム |
US7233998B2 (en) | 2001-03-22 | 2007-06-19 | Sony Computer Entertainment Inc. | Computer architecture and software cells for broadband networks |
US7203678B1 (en) * | 2001-03-27 | 2007-04-10 | Bea Systems, Inc. | Reconfigurable query generation system for web browsers |
US20020147963A1 (en) | 2001-04-09 | 2002-10-10 | Lee Rusty Shawn | Method and apparatus for generating machine control instructions |
US20020180811A1 (en) | 2001-05-31 | 2002-12-05 | Chu Sing Yun | Systems, methods, and articles of manufacture for providing a user interface with selection and scrolling |
US20030011638A1 (en) | 2001-07-10 | 2003-01-16 | Sun-Woo Chung | Pop-up menu system |
US6950993B2 (en) | 2001-08-02 | 2005-09-27 | Microsoft Corporation | System and method for automatic and dynamic layout of resizable dialog type windows |
US7480864B2 (en) | 2001-10-12 | 2009-01-20 | Canon Kabushiki Kaisha | Zoom editor |
US20050066037A1 (en) * | 2002-04-10 | 2005-03-24 | Yu Song | Browser session mobility system for multi-platform applications |
CA2385224C (en) * | 2002-05-07 | 2012-10-02 | Corel Corporation | Dockable drop-down dialogs |
US7065707B2 (en) | 2002-06-24 | 2006-06-20 | Microsoft Corporation | Segmenting and indexing web pages using function-based object models |
US7293024B2 (en) | 2002-11-14 | 2007-11-06 | Seisint, Inc. | Method for sorting and distributing data among a plurality of nodes |
US20080177994A1 (en) | 2003-01-12 | 2008-07-24 | Yaron Mayer | System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows |
US7000184B2 (en) | 2003-01-24 | 2006-02-14 | The Cobalt Group, Inc. | Remote web site editing in a standard web browser without external software |
US20040165009A1 (en) * | 2003-02-20 | 2004-08-26 | International Business Machines Corporation | Expansion of interactive user interface components |
US7823077B2 (en) | 2003-03-24 | 2010-10-26 | Microsoft Corporation | System and method for user modification of metadata in a shell browser |
US7769794B2 (en) | 2003-03-24 | 2010-08-03 | Microsoft Corporation | User interface for a file system shell |
US7720616B2 (en) | 2003-05-07 | 2010-05-18 | Sureprep, Llc | Multi-stage, multi-user engagement submission and tracking process |
US7417644B2 (en) | 2003-05-12 | 2008-08-26 | Microsoft Corporation | Dynamic pluggable user interface layout |
US7669140B2 (en) | 2003-08-21 | 2010-02-23 | Microsoft Corporation | System and method for providing rich minimized applications |
US8230366B2 (en) | 2003-10-23 | 2012-07-24 | Apple Inc. | Dynamically changing cursor for user interface |
US7711742B2 (en) * | 2003-12-11 | 2010-05-04 | International Business Machines Corporation | Intelligent data query builder |
US20080109785A1 (en) * | 2004-01-16 | 2008-05-08 | Bailey Bendrix L | Graphical Program Having Graphical and/or Textual Specification of Event Handler Procedures for Program Objects |
GB2411331A (en) * | 2004-02-19 | 2005-08-24 | Trigenix Ltd | Rendering user interface using actor attributes |
US7577938B2 (en) | 2004-02-20 | 2009-08-18 | Microsoft Corporation | Data association |
US7536672B1 (en) | 2004-03-05 | 2009-05-19 | Adobe Systems Incorporated | Management of user interaction history with software applications |
US7694233B1 (en) * | 2004-04-30 | 2010-04-06 | Apple Inc. | User interface presentation of information in reconfigured or overlapping containers |
CN100343802C (zh) * | 2004-05-10 | 2007-10-17 | 华为技术有限公司 | 统一用户界面的方法及系统 |
US8453065B2 (en) | 2004-06-25 | 2013-05-28 | Apple Inc. | Preview and installation of user interface elements in a display environment |
US8046712B2 (en) | 2004-06-29 | 2011-10-25 | Acd Systems International Inc. | Management of multiple window panels with a graphical user interface |
US8117542B2 (en) * | 2004-08-16 | 2012-02-14 | Microsoft Corporation | User interface for displaying selectable software functionality controls that are contextually relevant to a selected object |
EP1779216A1 (en) * | 2004-08-20 | 2007-05-02 | Rhoderick John Kennedy Pugh | Server authentication |
US7434173B2 (en) | 2004-08-30 | 2008-10-07 | Microsoft Corporation | Scrolling web pages using direct interaction |
US7720867B2 (en) | 2004-09-08 | 2010-05-18 | Oracle International Corporation | Natural language query construction using purpose-driven template |
US8819569B2 (en) | 2005-02-18 | 2014-08-26 | Zumobi, Inc | Single-handed approach for navigation of application tiles using panning and zooming |
US7728825B2 (en) * | 2005-03-22 | 2010-06-01 | Microsoft Corporation | Targeting in a stylus-based user interface |
US20060224951A1 (en) * | 2005-03-30 | 2006-10-05 | Yahoo! Inc. | Multiple window browser interface and system and method of generating multiple window browser interface |
US20060236264A1 (en) * | 2005-04-18 | 2006-10-19 | Microsoft Corporation | Automatic window resize behavior and optimizations |
US8195646B2 (en) | 2005-04-22 | 2012-06-05 | Microsoft Corporation | Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information |
US7721225B2 (en) | 2005-05-03 | 2010-05-18 | Novell, Inc. | System and method for creating and presenting modal dialog boxes in server-side component web applications |
US7730418B2 (en) * | 2005-05-04 | 2010-06-01 | Workman Nydegger | Size to content windows for computer graphics |
US20070024646A1 (en) | 2005-05-23 | 2007-02-01 | Kalle Saarinen | Portable electronic apparatus and associated method |
US20060282771A1 (en) * | 2005-06-10 | 2006-12-14 | Tad Vinci | Verifying document compliance to a subsidiary standard |
US20070033522A1 (en) | 2005-08-02 | 2007-02-08 | Lin Frank L | System and method for dynamic resizing of web-based GUIs |
US7933632B2 (en) | 2005-09-16 | 2011-04-26 | Microsoft Corporation | Tile space user interface for mobile devices |
US7954064B2 (en) | 2005-10-27 | 2011-05-31 | Apple Inc. | Multiple dashboards |
US8543824B2 (en) | 2005-10-27 | 2013-09-24 | Apple Inc. | Safe distribution and use of content |
US8434021B2 (en) * | 2005-11-30 | 2013-04-30 | Microsoft Corporation | Centralized user interface for displaying contextually driven business content and business related functionality |
US7836303B2 (en) | 2005-12-09 | 2010-11-16 | University Of Washington | Web browser operating system |
US8898203B2 (en) | 2005-12-27 | 2014-11-25 | International Business Machines Corporation | Generating a separable query design object and database schema through visual view editing |
JP4635894B2 (ja) * | 2006-02-13 | 2011-02-23 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
JP4415961B2 (ja) | 2006-03-15 | 2010-02-17 | ブラザー工業株式会社 | リムーバブルメディア装置およびデータ制御プログラム |
US20070233854A1 (en) | 2006-03-31 | 2007-10-04 | Microsoft Corporation | Management status summaries |
US20070234195A1 (en) | 2006-04-03 | 2007-10-04 | National Instruments Corporation | Simultaneous update of a plurality of user interface elements displayed in a web browser |
US7685519B1 (en) * | 2006-07-18 | 2010-03-23 | Intuit Inc. | Process and apparatus for providing a customizable content tooltip |
US20080018665A1 (en) * | 2006-07-24 | 2008-01-24 | Jay Behr | System and method for visualizing drawing style layer combinations |
US8869027B2 (en) * | 2006-08-04 | 2014-10-21 | Apple Inc. | Management and generation of dashboards |
US7890957B2 (en) | 2006-09-08 | 2011-02-15 | Easyonme, Inc. | Remote management of an electronic presence |
US20080065974A1 (en) * | 2006-09-08 | 2008-03-13 | Tom Campbell | Template-based electronic presence management |
US20080109714A1 (en) | 2006-11-03 | 2008-05-08 | Sap Ag | Capturing screen information |
US8082539B1 (en) | 2006-12-11 | 2011-12-20 | Parallels Holdings, Ltd. | System and method for managing web-based forms and dynamic content of website |
JP5031353B2 (ja) | 2006-12-15 | 2012-09-19 | キヤノン株式会社 | 表示装置、制御方法及びプログラム |
CN101004685A (zh) * | 2007-01-08 | 2007-07-25 | 叶炜 | 图形用户界面的实现方法 |
US9032329B2 (en) | 2007-03-23 | 2015-05-12 | Siemens Product Lifecycle Management Software Inc. | System and method for dialog position management |
US8321847B1 (en) | 2007-05-17 | 2012-11-27 | The Mathworks, Inc. | Dynamic function wizard |
US20080306933A1 (en) * | 2007-06-08 | 2008-12-11 | Microsoft Corporation | Display of search-engine results and list |
US10019570B2 (en) * | 2007-06-14 | 2018-07-10 | Microsoft Technology Licensing, Llc | Protection and communication abstractions for web browsers |
US8065628B2 (en) | 2007-06-25 | 2011-11-22 | Microsoft Corporation | Dynamic user interface for previewing live content |
KR20090000507A (ko) * | 2007-06-28 | 2009-01-07 | 삼성전자주식회사 | 정보 표시 방법 및 장치 |
US8762880B2 (en) * | 2007-06-29 | 2014-06-24 | Microsoft Corporation | Exposing non-authoring features through document status information in an out-space user interface |
US8422550B2 (en) | 2007-07-27 | 2013-04-16 | Lagavulin Limited | Apparatuses, methods, and systems for a portable, automated contractual image dealer and transmitter |
US9009181B2 (en) | 2007-08-23 | 2015-04-14 | International Business Machines Corporation | Accessing objects in a service registry and repository |
US8126840B2 (en) | 2007-10-22 | 2012-02-28 | Noria Corporation | Lubrication program management system and methods |
US8046353B2 (en) * | 2007-11-02 | 2011-10-25 | Citrix Online Llc | Method and apparatus for searching a hierarchical database and an unstructured database with a single search query |
CN101499004A (zh) * | 2008-01-31 | 2009-08-05 | 株式会社日立制作所 | 连接虚拟机和用户接口的系统和方法 |
JP2009193423A (ja) * | 2008-02-15 | 2009-08-27 | Panasonic Corp | 電子機器の入力装置 |
US20090254822A1 (en) | 2008-04-04 | 2009-10-08 | International Business Machines Corporation | Hi-efficiency wizard framework system and method |
US8219385B2 (en) | 2008-04-08 | 2012-07-10 | Incentive Targeting, Inc. | Computer-implemented method and system for conducting a search of electronically stored information |
JP4171770B1 (ja) * | 2008-04-24 | 2008-10-29 | 任天堂株式会社 | オブジェクト表示順変更プログラム及び装置 |
US8375336B2 (en) | 2008-05-23 | 2013-02-12 | Microsoft Corporation | Panning content utilizing a drag operation |
US8156445B2 (en) | 2008-06-20 | 2012-04-10 | Microsoft Corporation | Controlled interaction with heterogeneous data |
US20100005053A1 (en) | 2008-07-04 | 2010-01-07 | Estes Philip F | Method for enabling discrete back/forward actions within a dynamic web application |
US8345014B2 (en) * | 2008-07-12 | 2013-01-01 | Lester F. Ludwig | Control of the operating system on a computing device via finger angle using a high dimensional touchpad (HDTP) touch user interface |
US8566741B2 (en) * | 2008-08-29 | 2013-10-22 | Microsoft Corporation | Internal scroll activation and cursor adornment |
US8402381B2 (en) * | 2008-09-23 | 2013-03-19 | International Business Machines Corporation | Automatically arranging widgets of a model within a canvas using iterative region based widget relative adjustments |
US8095412B1 (en) | 2008-11-03 | 2012-01-10 | Intuit Inc. | Method and system for evaluating expansion of a business |
US20120188286A1 (en) | 2008-11-26 | 2012-07-26 | Lila Aps (Ahead.) | Dynamic image tiling |
US7962547B2 (en) | 2009-01-08 | 2011-06-14 | International Business Machines Corporation | Method for server-side logging of client browser state through markup language |
US20100229115A1 (en) | 2009-03-05 | 2010-09-09 | Microsoft Corporation | Zoomable user interface data generation |
US8806371B2 (en) * | 2009-03-26 | 2014-08-12 | Apple Inc. | Interface navigation tools |
US20100251143A1 (en) | 2009-03-27 | 2010-09-30 | The Ransom Group, Inc. | Method, system and computer program for creating and editing a website |
US8819570B2 (en) * | 2009-03-27 | 2014-08-26 | Zumobi, Inc | Systems, methods, and computer program products displaying interactive elements on a canvas |
US8819597B2 (en) | 2009-04-10 | 2014-08-26 | Google Inc. | Glyph entry on computing device |
US9213541B2 (en) * | 2009-04-17 | 2015-12-15 | ArtinSoft Corporation, S.A. | Creation, generation, distribution and application of self-contained modifications to source code |
US20100287530A1 (en) | 2009-05-05 | 2010-11-11 | Borland Software Corporation | Requirements definition using interactive prototyping |
US8269737B2 (en) * | 2009-08-20 | 2012-09-18 | Hewlett-Packard Development Company, L.P. | Method and apparatus for interpreting input movement on a computing device interface as a one- or two-dimensional input |
CN102598017B (zh) | 2009-11-13 | 2016-03-09 | 爱迪德技术有限公司 | 提高Java字节码的防窜改能力的系统和方法 |
US8782562B2 (en) * | 2009-12-02 | 2014-07-15 | Dell Products L.P. | Identifying content via items of a navigation system |
US8407598B2 (en) | 2009-12-09 | 2013-03-26 | Ralph Lee Burton | Dynamic web control generation facilitator |
JP5523090B2 (ja) * | 2009-12-25 | 2014-06-18 | キヤノン株式会社 | 入力装置、入力装置の制御方法、プログラムおよび記憶媒体 |
US8533667B2 (en) * | 2009-12-30 | 2013-09-10 | International Business Machines Corporation | Call wizard for information management system (IMS) applications |
CN101763218A (zh) * | 2010-01-06 | 2010-06-30 | 广东欧珀移动通信有限公司 | 一种手持设备输入方法 |
US20110173537A1 (en) | 2010-01-11 | 2011-07-14 | Everspeech, Inc. | Integrated data processing and transcription service |
EP2548132A4 (en) | 2010-03-19 | 2016-11-09 | Siemens Healthcare Diagnostics | MODULAR DIAGNOSTIC INSTRUMENT WORKSTATION ARCHITECTURE AND METHOD |
US8316323B2 (en) | 2010-03-26 | 2012-11-20 | Microsoft Corporation | Breadcrumb navigation through heirarchical structures |
US8631350B2 (en) * | 2010-04-23 | 2014-01-14 | Blackberry Limited | Graphical context short menu |
US20120089914A1 (en) * | 2010-04-27 | 2012-04-12 | Surfwax Inc. | User interfaces for navigating structured content |
US20110271184A1 (en) * | 2010-04-28 | 2011-11-03 | Microsoft Corporation | Client application and web page integration |
US9160756B2 (en) * | 2010-05-19 | 2015-10-13 | International Business Machines Corporation | Method and apparatus for protecting markup language document against cross-site scripting attack |
JP5674779B2 (ja) * | 2010-06-03 | 2015-02-25 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | スクロール装置、スクロール方法、スクロールプログラムおよび集積回路 |
CN102270125A (zh) * | 2010-06-04 | 2011-12-07 | 中兴通讯股份有限公司 | Web应用的开发装置及其开发方法 |
US20110314415A1 (en) * | 2010-06-21 | 2011-12-22 | George Fitzmaurice | Method and System for Providing Custom Tooltip Messages |
US8706854B2 (en) | 2010-06-30 | 2014-04-22 | Raytheon Company | System and method for organizing, managing and running enterprise-wide scans |
US8544027B2 (en) | 2010-07-30 | 2013-09-24 | Sap Ag | Logical data model abstraction in a physically distributed environment |
US8630462B2 (en) * | 2010-08-31 | 2014-01-14 | Activate Systems, Inc. | Methods and apparatus for improved motion capture |
JP2012069065A (ja) * | 2010-09-27 | 2012-04-05 | Nintendo Co Ltd | 情報処理プログラム、情報処理装置および方法 |
US8612366B2 (en) | 2010-09-29 | 2013-12-17 | Moresteam.Com Llc | Systems and methods for performing design of experiments |
US8990199B1 (en) | 2010-09-30 | 2015-03-24 | Amazon Technologies, Inc. | Content search with category-aware visual similarity |
US20120124555A1 (en) * | 2010-11-11 | 2012-05-17 | Codekko Software, Inc. | Optimization of Compiled Control Objects |
US9069577B2 (en) * | 2010-11-23 | 2015-06-30 | Apple Inc. | Grouping and browsing open windows |
CN102023749A (zh) * | 2010-12-02 | 2011-04-20 | 广东宝莱特医用科技股份有限公司 | 医疗设备触摸屏界面上列表型控件的区域拖动处理方法 |
US8612874B2 (en) * | 2010-12-23 | 2013-12-17 | Microsoft Corporation | Presenting an application change through a tile |
US20120191619A1 (en) | 2011-01-20 | 2012-07-26 | John Nicholas Gross | System & Method For Locating & Assessing Intellectual Property Assets |
JP2012168790A (ja) | 2011-02-15 | 2012-09-06 | Brother Ind Ltd | 表示プログラム、及び、表示装置 |
US9384183B2 (en) * | 2011-03-31 | 2016-07-05 | Infosys Limited | Method and system for reporting web standard non-compliance of web pages |
US9152616B2 (en) | 2011-04-28 | 2015-10-06 | Flipboard, Inc. | Template-based page layout for web content |
US9753699B2 (en) | 2011-06-16 | 2017-09-05 | Microsoft Technology Licensing, Llc | Live browser tooling in an integrated development environment |
US8566100B2 (en) | 2011-06-21 | 2013-10-22 | Verna Ip Holdings, Llc | Automated method and system for obtaining user-selected real-time information on a mobile communication device |
US8799862B2 (en) | 2011-06-24 | 2014-08-05 | Alcatel Lucent | Application testing using sandboxes |
CN102253841B (zh) * | 2011-08-09 | 2014-07-23 | 东莞兆田数码科技有限公司 | 一种小型图形用户界面系统 |
US20130080913A1 (en) * | 2011-09-22 | 2013-03-28 | Microsoft Corporation | Multi-column notebook interaction |
US8836654B2 (en) | 2011-10-04 | 2014-09-16 | Qualcomm Incorporated | Application window position and size control in (multi-fold) multi-display devices |
JP5553812B2 (ja) * | 2011-10-26 | 2014-07-16 | 株式会社ソニー・コンピュータエンタテインメント | スクロール制御装置、端末装置およびスクロール制御方法 |
KR101888457B1 (ko) | 2011-11-16 | 2018-08-16 | 삼성전자주식회사 | 복수 개의 어플리케이션을 실행하는 터치스크린을 가지는 장치 및 그 제어 방법 |
US8799780B2 (en) | 2011-11-28 | 2014-08-05 | International Business Machines Corporation | Installation wizard with multidimensional views |
US8799988B2 (en) * | 2012-01-25 | 2014-08-05 | Microsoft Corporation | Document communication runtime interfaces |
US20150058709A1 (en) | 2012-01-26 | 2015-02-26 | Michael Edward Zaletel | Method of creating a media composition and apparatus therefore |
DE102013202782A1 (de) | 2012-02-20 | 2013-08-22 | Wixpress Ltd | Server-basiertes Webseiten-Designsystem, das ein dynamisches Layout und dynamischen Inhalt integriert |
KR101892567B1 (ko) * | 2012-02-24 | 2018-08-28 | 삼성전자 주식회사 | 단말기에서 콘텐츠 이동 방법 및 장치 |
US9389872B2 (en) | 2012-03-16 | 2016-07-12 | Vmware, Inc. | Software wizard implementation framework |
EP2665042A1 (en) | 2012-05-14 | 2013-11-20 | Crytek GmbH | Visual processing based on interactive rendering |
US9043722B1 (en) * | 2012-06-19 | 2015-05-26 | Surfwax, Inc. | User interfaces for displaying relationships between cells in a grid |
US20140096042A1 (en) * | 2012-07-09 | 2014-04-03 | Aaron Tyler Travis | Method and system for generating and storing a collection of interactive browsers within a navigation plane |
US9195477B1 (en) | 2012-10-09 | 2015-11-24 | Sencha, Inc. | Device profiles, deep linking, and browser history support for web applications |
US9244971B1 (en) | 2013-03-07 | 2016-01-26 | Amazon Technologies, Inc. | Data retrieval from heterogeneous storage systems |
US9158518B2 (en) | 2013-03-11 | 2015-10-13 | Blackberry Limited | Collaborative application development environment using a connected device |
WO2014157908A1 (en) | 2013-03-27 | 2014-10-02 | Samsung Electronics Co., Ltd. | Device and method for displaying execution result of application |
US10410003B2 (en) | 2013-06-07 | 2019-09-10 | Apple Inc. | Multiple containers assigned to an application |
US9805114B2 (en) * | 2013-09-30 | 2017-10-31 | Microsoft Technology Licensing, Llc | Composable selection model through reusable component |
US9875116B2 (en) | 2013-11-26 | 2018-01-23 | Cellco Partnership | Sharing of a user input interface of an application session of one application between two or more applications |
-
2014
- 2014-04-01 US US14/231,897 patent/US9805114B2/en active Active
- 2014-04-01 US US14/231,862 patent/US9792354B2/en active Active
- 2014-04-01 US US14/231,912 patent/US20150095849A1/en not_active Abandoned
- 2014-04-01 US US14/231,873 patent/US20150095812A1/en not_active Abandoned
- 2014-04-01 US US14/231,846 patent/US20150095842A1/en not_active Abandoned
- 2014-04-01 US US14/231,869 patent/US9754018B2/en active Active
- 2014-04-01 US US14/231,905 patent/US9727636B2/en active Active
- 2014-04-01 US US14/231,891 patent/US9483549B2/en active Active
- 2014-04-01 US US14/231,880 patent/US20150095365A1/en not_active Abandoned
- 2014-04-01 US US14/231,917 patent/US20150095846A1/en not_active Abandoned
- 2014-04-01 US US14/231,883 patent/US9672276B2/en active Active
- 2014-08-28 TW TW103129730A patent/TW201528106A/zh unknown
- 2014-09-24 TW TW103133045A patent/TW201516834A/zh unknown
- 2014-09-24 TW TW103133046A patent/TW201528108A/zh unknown
- 2014-09-25 EP EP14783734.8A patent/EP3053028B1/en active Active
- 2014-09-25 WO PCT/US2014/057324 patent/WO2015048206A1/en active Application Filing
- 2014-09-25 EP EP14783733.0A patent/EP3053027A1/en not_active Ceased
- 2014-09-25 TW TW103133249A patent/TW201528103A/zh unknown
- 2014-09-25 WO PCT/US2014/057323 patent/WO2015048205A1/en active Application Filing
- 2014-09-25 WO PCT/US2014/057321 patent/WO2015048203A1/en active Application Filing
- 2014-09-25 EP EP14825480.8A patent/EP3053031A1/en not_active Ceased
- 2014-09-25 CN CN201480053811.6A patent/CN105683907B/zh active Active
- 2014-09-25 CN CN201480054151.3A patent/CN105683909B/zh active Active
- 2014-09-25 WO PCT/US2014/057322 patent/WO2015048204A1/en active Application Filing
- 2014-09-25 CN CN201480054050.6A patent/CN105593813B/zh active Active
- 2014-09-25 KR KR1020167008327A patent/KR102186865B1/ko active IP Right Grant
- 2014-09-29 KR KR1020167008352A patent/KR20160063340A/ko not_active Application Discontinuation
- 2014-09-29 BR BR112016004551A patent/BR112016004551A8/pt not_active Application Discontinuation
- 2014-09-29 RU RU2016111604A patent/RU2679540C2/ru not_active IP Right Cessation
- 2014-09-29 EP EP14790838.8A patent/EP3053017A1/en not_active Withdrawn
- 2014-09-29 KR KR1020167008368A patent/KR20160064115A/ko not_active Application Discontinuation
- 2014-09-29 EP EP14786398.9A patent/EP3053030A1/en not_active Withdrawn
- 2014-09-29 CA CA2922985A patent/CA2922985A1/en not_active Abandoned
- 2014-09-29 CN CN201480053988.6A patent/CN105683908B/zh not_active Expired - Fee Related
- 2014-09-29 RU RU2016111610A patent/RU2686822C2/ru not_active IP Right Cessation
- 2014-09-29 MX MX2016003946A patent/MX2016003946A/es unknown
- 2014-09-29 CN CN201480054049.3A patent/CN105593812A/zh active Pending
- 2014-09-29 MX MX2016004113A patent/MX2016004113A/es unknown
- 2014-09-29 SG SG11201601888UA patent/SG11201601888UA/en unknown
- 2014-09-29 CN CN201480053821.XA patent/CN105659199A/zh active Pending
- 2014-09-29 WO PCT/US2014/057938 patent/WO2015048600A1/en active Application Filing
- 2014-09-29 AU AU2014324620A patent/AU2014324620A1/en not_active Abandoned
- 2014-09-29 SG SG10201802632SA patent/SG10201802632SA/en unknown
- 2014-09-29 JP JP2016518686A patent/JP6465870B2/ja not_active Expired - Fee Related
- 2014-09-29 AU AU2014324618A patent/AU2014324618A1/en not_active Abandoned
- 2014-09-29 EP EP14783748.8A patent/EP3053029A1/en not_active Ceased
- 2014-09-29 WO PCT/US2014/057940 patent/WO2015048602A1/en active Application Filing
- 2014-09-29 CA CA2922725A patent/CA2922725A1/en not_active Abandoned
- 2014-09-29 JP JP2016518687A patent/JP6446038B2/ja not_active Expired - Fee Related
- 2014-09-29 WO PCT/US2014/057939 patent/WO2015048601A1/en active Application Filing
-
2016
- 2016-02-05 PH PH12016500256A patent/PH12016500256A1/en unknown
- 2016-03-01 IL IL244368A patent/IL244368A0/en unknown
- 2016-03-30 CL CL2016000729A patent/CL2016000729A1/es unknown
- 2016-09-14 HK HK16110904.6A patent/HK1222731A1/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030058286A1 (en) * | 2001-09-25 | 2003-03-27 | Owen Dando | Configurable user-interface component management system |
US20030137540A1 (en) * | 2001-12-28 | 2003-07-24 | Stephan Klevenz | Managing a user interface |
CN1625111A (zh) * | 2003-12-04 | 2005-06-08 | 国际商业机器公司 | 为新文档选择浏览器窗口的方法和系统 |
US20100115053A1 (en) * | 2008-11-03 | 2010-05-06 | Samsung Electronics Co., Ltd. | Method and apparatus for managing state information of remote user interface |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105683907A (zh) | 按比例持久保存跨浏览器会话的状态 | |
US8645905B2 (en) | Development artifact searching in an integrated development environment | |
CN101097579B (zh) | 提供模型数据生成器的系统和方法 | |
US5903753A (en) | Name space registry with backward compatibility for older applications | |
CA2403044A1 (en) | Method and apparatus for storing changes to file attributes without having to store an additional copy of the file contents | |
CN102947792A (zh) | Web应用转换和暂时性web应用 | |
US20020059157A1 (en) | Operating system using dynamic multi-dimensional trees | |
US11561776B2 (en) | Code-independent graph technology | |
Ganelin et al. | Spark: Big data cluster computing in production | |
Bruneliere et al. | Scalable model views over heterogeneous modeling technologies and resources | |
CN112418447B (zh) | 提供机器学习服务的系统、方法、介质和设备 | |
US9058188B2 (en) | Transformative user interfaces | |
Bai et al. | Concurrent hierarchical reinforcement learning for robocup keepaway | |
Firmenich et al. | Distributed Web browsing: supporting frequent uses and opportunistic requirements | |
CN112988136B (zh) | 一种用户界面编辑方法及装置 | |
Caromel et al. | A transparent non-invasive file data model for algorithmic skeletons | |
Amalaraj et al. | Design and Development of a Tethys Framework Web Application to Elucidate the HydroShare. org Application Programmer Interface | |
Humphrys | The world-wide-mind: Draft proposal | |
CN114089973A (zh) | 一种启动方法、装置、计算机设备和存储介质 | |
Irimus | Sequential and asynchronous fetching of large amounts of data in web applications | |
Houben | Activity Theory Applied to the Desktop Metaphor | |
Jackson et al. | The “C” in MVC | |
Maskrey et al. | Persistence: Saving Data Between App Launches | |
Lengstorf et al. | Getting Ready to Program | |
Ward et al. | Modern Development Platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |