[go: up one dir, main page]

KR101542274B1 - 씬 클라이언트 상에서 동작하는 사용자 인터페이스의 빠르고 부드러운 스크롤링 - Google Patents

씬 클라이언트 상에서 동작하는 사용자 인터페이스의 빠르고 부드러운 스크롤링 Download PDF

Info

Publication number
KR101542274B1
KR101542274B1 KR1020107010689A KR20107010689A KR101542274B1 KR 101542274 B1 KR101542274 B1 KR 101542274B1 KR 1020107010689 A KR1020107010689 A KR 1020107010689A KR 20107010689 A KR20107010689 A KR 20107010689A KR 101542274 B1 KR101542274 B1 KR 101542274B1
Authority
KR
South Korea
Prior art keywords
list
scroll
scrolling
animation
user interface
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.)
Expired - Fee Related
Application number
KR1020107010689A
Other languages
English (en)
Other versions
KR20100083827A (ko
Inventor
톰 픽슬리
데이브 아우프더하이드
프랭크 에이. 훈레스
Original Assignee
힐크레스트 래보래토리스, 인크.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 힐크레스트 래보래토리스, 인크. filed Critical 힐크레스트 래보래토리스, 인크.
Publication of KR20100083827A publication Critical patent/KR20100083827A/ko
Application granted granted Critical
Publication of KR101542274B1 publication Critical patent/KR101542274B1/ko
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction 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/0485Scrolling or panning
    • G06F3/04855Interaction with scrollbars
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03543Mice or pucks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0362Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 1D translations or rotations of an operating part of the device, e.g. scroll wheels, sliders, knobs, rollers or belts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction 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/0485Scrolling or panning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/033Indexing scheme relating to G06F3/033
    • G06F2203/0335Finger operated miniaturized mouse

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본원 발명에 따른 시스템 및 방법들은 사용자 인터페이스 상에서의 정보의 리스트들을 스크롤하기 위한 사용자 인터페이스를 제공한다.

Description

씬 클라이언트 상에서 동작하는 사용자 인터페이스의 빠르고 부드러운 스크롤링{FAST AND SMOOTH SCROLLING OF USER INTERFACES OPERATING ON THIN CLIENTS}
본 출원은 "씬 클라이언트 상에서 동작하는 사용자 인터페이스의 빠르고 부드러운 스크롤링(Fast and Smooth Scrolling of User Interfaces Operating on Thin Clients)"이라는 제목으로 2007년 10월 16일에 톰 픽리(Tom Pixley) 등에 의해 출원된 미국 가특허출원 일련번호 제60/999,130호의 우선권을 주장하며, 이는 본 명세서에서 참조로 통합된다.
본 출원은, 특히, 빠르고 부드러운 방식으로 사용자 인터페이스 상에서 스크롤링하는 것을 기술한다.
정보의 통신과 관련된 기술은 최근 몇 십 년에 걸쳐 빠르게 발전해 왔다. (몇몇 예를 들자면) 텔레비전, 셀룰러 전화 통화 방법(telephony), 인터넷 및 광 통신 기술이 결합하여 고객에게 이용가능한 정보와 엔터테인먼트 옵션을 감당하지 못할 정도로 준다. 일 예로 텔레비전을 들면, 최근 30년 동안 케이블 텔레비전 서비스, 위성 텔레비전 서비스, 유료 시청제(pay per view) 영화 및 주문형 비디오 시스템(video on demand)이 소개되었다. 1960년대 텔레비전 시청자가 아마도 일반적으로 네다섯 개의 공중파 TV 채널을 수신할 수 있었던 반면, 오늘날의 TV 시청자는 수백, 수천 및 잠재적으로 수 만개의 쇼 및 정보 채널에서 선택할 기회를 가진다. 현재 기본적으로 호텔 등에서 사용되는 주문형 비디오 시스템 기술(video on-demand technology)은 수천 개의 비디오 제목들 중에서, 집에서의 엔터테인먼트 선택을 위한 잠재성을 제공한다.
최종 사용자(end user)에게 이렇게 많은 정보와 컨텐츠를 제공하는 기술력은 시스템 설계자 및 서비스 제공자에게 기회와 도전 양자 모두를 제공한다. 하나의 도전은, 최종 사용자가 적은 선택권 보다 많은 선택권을 일반적으로 선호하는 반면, 이러한 선호는 선택 프로세스(selection process)가 빠르고도 단순해야 한다는 그들의 바램에 의해 균형이 잡힌다(counterweighted). 불행하게도, 최종 사용자가 미디어 아이템을 액세스하는 인터페이스 및 시스템의 발전은 빠르지도 않고 단순하지도 않은 선택 프로세스를 야기해 왔다. 다시 텔레비전 프로그램의 예를 고려하자. 텔레비전이 초창기였을 때, 시청할 프로그램을 결정하는 것은, 기본적으로 적은 수의 선택으로 인해, 상대적으로 간단한 프로세스였다. 사람들은 예를 들어, (1)인접한 텔레비전 채널들, (2)이러한 채널들 상에서 전송되는 프로그램들 및 (3)날짜와 시간 사이의 관련성(correspondence)을 보여주는 일련의 행과 열로 구성된 인쇄된 가이드를 참고할 수 있었다. 텔레비전은 튜너 손잡이를 조정함으로써 원하는 채널에 맞춰지고, 시청자는 선택된 프로그램을 시청했다. 이후에, 시청자들이 원거리에 있는 텔레비전을 조정하도록 하는 원격 제어 장치가 소개되었다. 사용자-텔레비전 인터페이스에 대한 이러한 추가는 "채널 서핑(channel surfing)"이라고 알려진 현상을 생성하였고, 시청자는 수많은 채널 상에서 브로드캐스팅되고 있는 짧은 세그멘트를 빨리 보고 무슨 프로그램이 임의의 소정 시간에 이용가능한지를 빨리 알 수 있었다.
채널의 수와 시청가능한 컨텐츠의 양이 극적으로 증가해왔다는 사실에도 불구하고, 일반적으로 이용가능한 사용자 인터페이스, 제어 장치 옵션 및 텔레비전의 프레임워크는 최근 30년간 거의 변경되지 않았다. 인쇄된 가이드는 여전히 프로그래밍 정보를 전달하기 위한 가장 일반적인 메커니즘이다. 위 아래 화살표가 있는 복수의 버튼의 원격 제어가 여전히 가장 일반적인 채널/컨텐츠 선택 메커니즘이다. TV 사용자 인터페이스를 설계하고 구현하는 사람들의 이용가능한 미디어 컨텐츠의 증가에 대한 반응은 기존의 선택 프로시듀어 및 인터페이스 객체의 간단한 확장이었다. 따라서, 인쇄된 가이드 내의 행의 수가 더 많은 채널을 수용하기 위해 증가되었다. 원격 제어 장치상의 버튼의 수가, 예를 들어 도 1에 도시된 바와 같이, 추가적인 기능 및 컨텐츠 핸들링을 지원하기 위해 증가되었다. 그러나, 이러한 접근법은 사용자가 이용가능한 정보를 검토하는데 요구되는 시간 및 선택을 구현하기 위해 요구되는 동작의 복잡성 양자 모두를 현저하게 증가시켰다. 주장하건데, 고객이 이미 지나치게 느리고 복잡하다고 보는 인터페이스에 대해 복잡성을 추가하게 되는 새로운 서비스에 대해, 고객은 저항하기 때문에, 기존 인터페이스의 복잡하고 느린(cumbersome) 속성은, 주문형 비디오 시스템과 같은 일부 서비스의 상업적 구현을 방해했다.
대역폭(bandwidth) 및 컨텐츠의 증가에 추가로, 사용자 인터페이스의 병목 문제점은 기술의 종합(aggregation)에 의해 악화되고 있다. 고객은 수많은 분리가능한 구성요소를 사는 것보다는 통합된 시스템을 사는 옵션을 가지는 것에 대해 긍정적으로 반응하고 있다. 이러한 트렌드의 예는, 이전에 세 개의 독립적인 구성요소가 오늘날 통합된 유닛으로 종종 판매되는 텔레비전/VCR/DVD의 결합이다. 이러한 트렌드는 계속될 것으로 보이며, 잠재적으로 가정에서 현재 발견되는, 모두는 아니더라도 대부분의 통신 장치가, 예를 들어 텔레비전/VCR/DVD/인터넷 액세스/라디오/스테레오 유닛과 같은 통합된 유닛으로 함께 패키징되는 최종 결과가 될 것으로 보인다. 분리된 구성요소를 계속 사는 사람들조차도 분리된 구성요소들 간의 끊김없는(seemless) 제어 및 네트워킹을 원할 수 있을 것이다. 이러한 증가된 통합으로 인해, 사용자 인터페이스에는 더 많은 잠재적 복잡성이 일어난다. 예를 들어, 텔레비전 원격 유닛과 VCR 원격 유닛의 기능을 결합하기 위해, 소위 "일반(universal)" 원격 유닛이 소개되었을 때, 이러한 일반 원격 유닛 상의 버튼의 수는 개별적인 TV 원격의 버튼의 수 또는 VCR 원격 유닛 상의 버튼의 수보다 일반적으로 많았다. 이렇게 추가된 버튼의 수 및 기능은 원격 상의 바로 그 버튼을 정확하게 찾지 않고는, TV 또는 VCR의 가장 간단한 양상 외의 임의의 것을 제어하는 것을 매우 어렵게 만든다. 자주, 이러한 일반 원격은 특정 TV에 고유한 특징들 또는 많은 레벨의 제어를 액세스하기 위한 충분한 버튼을 제공하지 않는다. 이러한 경우에 있어서, 원래의 장치 원격 유닛이 여전히 필요하고, 종합의 복잡성으로부터 야기된 사용자 인터페이스 이슈로 인해, 복수의 원격을 다루는 원래의 귀찮은 상황(hassle)이 유지된다. 일부 원격 유닛은 전문가 명령어로 프로그래밍될 수 있는 "소프트" 버튼들을 추가함으로써 이러한 문제를 해결해 왔다. 이러한 소프트 버튼은 종종 자신의 동작을 표시하기 위해 수반하는 LCD 디스플레이를 가진다. 이들은 또한 TV에서 원격 제어까지 한눈을 팔지 않고 사용하는 것이 어렵다는 결함을 가진다. 또한 이러한 원격 유닛의 다른 결함은 버튼의 수를 줄이는 시도에 있어서의 모드의 사용이다. 이러한 "모드된(moded)" 일반 원격 유닛에 있어서, 원격이 TV, DVD 플레이어, 케이블 셋톱 박스, VCR 등과 통신해야 하는지 여부를 선택하기 위한 특별한 버튼이 존재한다. 이는, 잘못된 장치로 명령어를 보내는 것, 정확한 모드인지를 확신하기 위해 사용자가 원격을 주목하도록 강요하는 것을 포함하여 많은 사용가능성 이슈를 야기하고, 복수의 장치의 통합에 대한 어떤 단순화도 제공하지 않는다. 이러한 일반 원격 유닛의 가장 진보된 것은 사용자로 하여금 복수의 장치에 대한 명령어의 시퀀스를 원격 안으로 프로그래밍하도록 함으로써 일부 통합을 제공한다. 이는 많은 사용자들이 자신의 일반 원격 유닛을 프로그래밍하기 위해 전문적인 설치자(installer)를 고용하도록 하는 어려운 작업이다.
일부 시도는 또한 최종 사용자와 미디어 시스템 사이의 스크린 인터페이스를 모던화하도록 구성되었다. 그러나, 이러한 시도는, 다른 결점들 중에서도, 미디어 아이템들의 대규모 컬렉션들과 미디어 아이템들의 소규모 컬렉션들 간에 쉽게 규모를 조절하는 것이 불가능한 것으로 인해 일반적으로 어려움을 겪는다. 예를 들어, 아이템들의 리스트에 의존하는 인터페이스는 미디어 아이템의 소규모 컬렉션에 대해서는 동작을 잘할 수 있으나, 미디어 아이템들의 대규모 컬렉션을 브라우징하는데는 싫증이 날 수 있다. 계층적 내비게이션(예를 들어, 트리 구조)에 의존하는 인터페이스는 미디어 아이템의 대규모 컬렉션을 탐색하는데 리스트 인터페이스보다 빠를 수 있으나, 미디어 아이템의 소규모 컬렉션에 대해 쉽게 적용가능하지 않다. 또한, 사용자는, 사용자가 트리 구조에서 세 개 층 이상을 통해 이동해야 하는 경우, 선택 프로세스에 흥미를 잃는 경향이 있다. 이러한 모든 경우에 있어서, 현재 원격 유닛은, 사용자가 리스트 또는 계층을 내비게이팅하기 위해 업 버튼 및 다운 버튼을 반복적으로 누르도록 함으로써 이러한 선택 프로세스를 보다 싫증나게 만든다. 페이지 업 및 페이지 다운과 같은 선택 스킵 제어(selection skipping controls)가 가능한 경우, 사용자는 종종 이러한 특별한 버튼을 찾기 위해 원격을 주목해야 하거나 이러한 버튼이 존재하는 것을 알기 위해 훈련되어야 한다. 따라서, 프레임워크, 기술 및 시스템을 조직화하는 것은 사용자와 미디어 시스템 사이의 제어 및 스크린 인터페이스를 단순화할 뿐만 아니라 선택 프로세스의 속도를 높이면서, 동시에, 사용자에게 대규모의 미디어 아이템 및 새로운 서비스를 공급하는 것을 용이하게 함으로써, 서비스 제공자로 하여금 최종 사용자 장치에 대한 이용가능한 대역폭이 증가하는 장점을 취하도록 한다. 이러한 프레임워크, 기술 및 시스템을 조직화하는 것은 "미디어 아이템을 조직화, 선택, 및 런칭(Launching)하기 위해 줌 기능을 지원할 수 있는 제어 프레임워크(A Control Framework with a Zoomable Graphical User Interface for Organizing, Selecting and Launching Media Items)"라는 제목으로 2004년 1월 30일에 출원된 미국 특허출원 일련번호 제10/768,432호에서 제안되었고, 이는 본 명세서에서 참조로 통합된다.
많은 타입의 사용자 인터페이스에 제공되는 내비게이션 기능의 한가지 공통 타입은 스크롤링이다. "스크롤링"이라는 용어는 텍스트, 도면 또는 이미지와 같은 컨텐츠의 수평 또는 수직 프리젠테이션을 슬라이딩하는 동작을 지칭한다. 일반적인 컴퓨터 시스템에서 스크롤링 컨텐츠 영역을 생성하는 경우, 사용자가 자신이 스크롤링하기를 원하는 곳을 표시하는 입력을 사용자 인터페이스에 제공함에 따라, 그 영역을 채우는 그래픽 컨텐츠가 컴퓨터에 의해 즉시 생성될 수 있다. 그러나, 사용자 인터페이스를 생성하는 시스템의 리소스, 스크롤링되는 컨텐츠의 타입, 스크롤링에 연관된 트랜지션 효과(transition effect), 스크롤링하는 속도 및/또는 기타 프로세싱 관련 고려사항에 따라, 사용자가 소정의 자신의 스크롤링 입력을 예상하는 만큼 빨리, 사용자 인터페이스상에서 가시화되는 영역을 채우는 새로운 컨텐츠를 생성하는 것은 불가능할 수 있다. 예를 들어, 고급 퍼스널 컴퓨터와 비교할 때 상대적으로 적은 프로세싱 리소스를 가지는 소위 "씬" 클라이언트(예를 들어, 셋톱 박스) 상에서 실행되는 사용자 인터페이스는 충분히 빠르게 스크롤링 컨텐츠를 생성하는데 필요한 리소스를 공급할 수 없을 수 있다.
따라서, 예를 들어, 씬 클라이언트 상에서 동작하는 사용자 인터페이스를 빠르고 부드럽게 스크롤링하기 위한 시스템, 방법, 장치 및 소프트웨어를 제공하는 것이 바람직할 것이다.
본 발명에 따른 시스템 및 방법은, 예를 들어 씬 클라이언트 상에서 동작하는 사용자 인터페이스를 빠르고 부드럽게 스크롤링하는 것을 용이하게 하기 위한 메커니즘을 제공함으로써 이러한 필요성 및 그 밖의 필요성들을 해결한다.
예시적인 일 실시예에 따르면, 그래픽 사용자 인터페이스 내에서 스크롤(scroll)하기 위한 방법은, 상기 그래픽 사용자 인터페이스 상에서 볼 수 있는(visible) 제1 복수의 엔트리들을 갖는 리스트의 제1 영역을 표시하는 단계; 복수의 엔트리들에 의해 상기 리스트를 스크롤 하기 위한 사용자 입력을 수신하는 단계; 상기 리스트가 스크롤되는 동안, 상기 제1 복수의 엔트리들과 관련된 상기 그래픽 사용자 인터페이스의 영역들에서의 더미 데이터(dummy data)의 애니메이션(animation)을 표시하는 단계; 스크롤을 중단하는 단계; 및 상기 더미 데이터의 애니메이션을, 제2 복수의 엔트리들을 포함하는 상기 리스트의 제2 영역으로 교체하는 단계를 포함한다.
또 다른 예시적인 일 실시예에 따르면, 컴퓨터 판독가능 기록매체는, 컴퓨터 또는 프로세서에 의해 실행되었을 때, 상기 그래픽 사용자 인터페이스 상에서 볼 수 있는 제1 복수의 엔트리들을 갖는 리스트의 제1 영역을 표시하는 단계; 복수의 엔트리들에 의해 상기 리스트를 스크롤하기 위한 사용자 입력을 수신하는 단계; 상기 리스트가 스크롤되는 동안, 상기 제1 복수의 엔트리들과 관련된 상기 그래픽 사용자 인터페이스의 영역들에 더미 데이터(dummy data)의 애니메이션(animation)을 표시하는 단계; 스크롤을 중단하는 단계; 및 상기 더미 데이터의 애니메이션을, 제2 복수의 엔트리들을 포함하는 상기 리스트의 제2 영역으로 교체하는 단계를 수행하는 프로그램 명령어들을 포함한다.
또 다른 예시적인 일 실시예에 따르면, 사용자 인터페이스는, 상기 사용자 인터페이스 상에서 현재 표시되는 아이템들의 리스트의 제1 영역; 및 상기 리스트를 스크롤하기 위한 사용자 입력을 수신하기 위한 메커니즘을 포함하고, 상기 사용자 인터페이스는, 상기 리스트가 스크롤되는 동안 더미 데이터의 애니메이션을 표시하고, 후속하여 상기 더미 데이터의 애니메이션을 상기 리스트의 제2 영역으로 교체한다.
첨부한 도면은 본 발명의 예시적인 실시예를 도시한다.
도 1은 엔터테인먼트 시스템을 위한 종래의 원격 제어 유닛을 도시하는 도면.
도 2는 본 발명의 예시적인 실시예가 구현될 수 있는 예시적인 미디어 시스템을 도시하는 도면.
도 3a는 본 발명의 예시적인 실시예를 따르는 3D 포인팅 장치를 도시하는 도면.
도 3b는 본 발명의 예시적인 실시예를 따르는 텔레비젼 상의 사용자 인터페이스에 입력을 제공하는 3D 포인팅 장치를 사용하는 사용자를 도시하는 도면.
도 4는 본 발명의 예시적인 실시예를 따르는 줌 변환(zooming transition)뿐만 아니라 업 기능 글로벌 네비게이션 객체(up function global navigation object)의 용법을 도시하는 도면.
도 5는 본 발명의 예시적인 실시예를 따르는 스크롤가능한 리스트(scrollable list)를 도시하는 도면.
도 6은 본 발명의 예시적인 실시예를 따르는 애니메이션 및 비쥬얼 컨텍스트 정보를 도시하는 도면.
도 7은 본 발명의 예시적인 실시예를 따르는 스크롤가능 리스트를 통한 이동 및 도 6에 관한 비쥬얼 컨텍스트 정보의 갱신을 도시하는 도면.
도 8은 본 발명의 예시적인 실시예를 따르는 비쥬얼 컨텍스트 정보로서 사진에 관한 정보를 도시하는 도면.
도 9는 본 발명의 예시적인 실시예를 따르는 정적 비쥬얼 컨텍스트 정보(static visual context information)를 도시하는 도면.
도 10은 본 발명의 예시적인 실시예를 따르는 리스트를 통하여 스크롤하는 동안 사용자 인터페이스에 관한 변화를 도시하는 방법의 흐름도.
이어지는 본 발명의 구체적인 내용은 첨부된 도면을 참조한다. 상이한 도면에서 동일한 참조 번호는 동일하거나 또는 유사한 구성요소를 나타낸다. 또한, 다음의 구체적인 내용은 본 발명을 한정하지 않는다. 대신에, 본 발명의 범위는 첨부된 청구항에 의해 정의된다.
본 논의를 위한 몇 가지 컨텍스트를 제공하기 위해, 본 발명이 구현될 수 있는 예시적인 종합 미디어 시스템(aggregated media system; 200)이 도 2와 관련하여 가장 먼저 개시된다. 그러나, 본 기술분야의 당업자는, 본 발명이 이러한 유형의 미디어 시스템의 구현에 한정되지 않고, 더 많거나 또는 더 적은 컴포넌트들이 시스템 내부에 포함될 수 있다는 것을 알 수 있다. 그 내부에서, 입력/출력(input/output; I/O) 버스(210)는 미디어 시스템(200)의 시스템 컴포넌트들을 함께 연결한다. I/O 버스(210)는 미디어 시스템 컴포넌트들 사이의 신호들을 라우팅하기 위한 상이한 다수의 메커니즘 및 기술 중 임의의 것을 나타낸다. 예를 들어, I/O 버스(210)는 오디오 신호를 라우팅하는 적절한 수의 독립된 오디오 "패치(patch)" 케이블, 비디오 신호를 라우팅하는 동축 케이블, 제어 신호를 라우팅하는 2 와이어 직렬 라인(two-wire serial lines) 또는 적외선 또는 라디오 주파수 송수신기, 광섬유 또는 다른 유형의 신호들을 라우팅하는 임의의 다른 라우팅 메커니즘을 포함할 수 있다.
본 예시적인 실시예에서, 미디어 시스템(200)은 I/O 버스(210)와 연결된 텔레비젼/모니터(212), VCR(video cassette recorder; 214), DVD(digital video disk) 기록/재생 장치(216), 오디오/비디오 튜너(218) 및 컴팩트 디스크 재생기(220)를 포함한다. VCR(214), DVD(216) 및 컴팩트 디스크 재생기(220)는 단일 디스크 또는 단일 카셋트 장치이거나, 또는 대안적으로 복수의 디스크 또는 카셋트 장치일 수 있다. 이들은 독립적인 유닛이거나 또는 함께 통합될 수 있다. 추가적으로, 미디어 시스템(200)은 마이크로폰/스피커 시스템(222), 비디오 카메라(224) 및 무선 I/O 제어 장치(226)를 포함한다. 본 발명의 예시적인 실시예에 따르면, 무선 I/O 제어 장치(226)는 3D 포인팅 장치이다. 무선 I/O 제어 장치(226)는, 예를 들어 IR 또는 RF 송신기 또는 송수신기를 사용하여 엔터테인먼트 시스템(200)과 통신할 수 있다. 대안적으로, I/O 제어 장치는 와이어를 통해 엔터테인먼트 시스템(200)과 연결될 수 있다.
엔터테인먼트 시스템(200)은 또한 시스템 제어기(228)를 포함한다. 본 발명의 예시적인 일실시예에 따르면, 시스템 제어기(228)는 복수의 엔터테인먼트 시스템 데이터 소스로부터 사용가능한 엔터테인먼트 시스템 데이터를 저장하고 디스플레이하며, 각각의 시스템 컴포넌트와 연관된 다양한 기능을 제어하도록 동작한다. 도 2에 도시되는 바와 같이, 시스템 제어기(228)는 각각의 시스템 컴포넌트와 직접적으로 또는 간접적으로, 필요하다면 I/O 버스(210)를 통해 연결된다. 예시적인 일실시예에서, I/O 버스(210)에 추가적으로 또는 이를 대신하여, 시스템 제어기(228)가 IR 신호 또는 RF 신호를 통해 시스템 컴포넌트와 통신할 수 있는 무선 통신 송신기(또는 송수신기)를 가지도록 구성된다. 제어 매체에 관계없이, 시스템 제어기(228)는 이하에서 개시되는 그래픽 사용자 인터페이스(graphical user interface)를 통해 미디어 시스템(200)의 미디어 컴포넌트를 제어하도록 구성된다.
도 2에 더 도시되는 바와 같이, 미디어 시스템(200)은 다양한 미디어 소스들 및 서비스 공급자들로부터 미디어 아이템을 수신하도록 구성될 수 있다. 본 예시적인 실시예에서, 미디어 시스템(200)은 다음의 소스 중 임의의 것 또는 전부로부터 미디어 입력을 수신하고, 선택적으로 이들에게 정보를 송신한다. 소스는 케이블 방송(230), (예를 들어, 위성 접시를 통하는) 위성 방송(232), (예를 들어, 안테나(aerial antenna)를 통하는) 방송 텔레비젼 네트워크의 VHF(very high frequency) 또는 UHF(ultra high frequency) 라디오 주파수 통신(234), 전화 네트워크(236) 및 케이블 모뎀(238)(또는 인터넷 컨텐츠의 다른 소스)을 포함한다. 본 기술분야의 당업자는 도 2와 관련해서 도시되고 개시되는 미디어 컴포넌트들 및 미디어 소스들은 단지 예시이고, 미디어 시스템(200)은 이들을 더 많이 또는 더 적게 포함할 수 있음을 알 것이다. 예를 들어, 시스템으로의 다른 유형의 입력은 AM/FM 라디오 및 위성 라디오를 포함한다.
본 예시적인 엔터테인먼트 시스템 및 이와 연관된 프레임워크에 관한 더 상세한 사항들은 참조를 위해 상기에 통합되는 미국 특허 출원 "A Control Framework with a Zoomable Graphical User Interface for Organizing, Selecting and Launching Media Items"에서 찾을 수 있다. 대안적으로, 본 발명에 따르는 원격 장치들 및 원격 장치들과 사용자 인터페이스들 사이의 상호작용 기술들은, 예를 들어 디스플레이, 프로세서 및 메모리 시스템을 포함하는 컴퓨터 시스템과 같은 다른 유형의 시스템 또는 다양한 다른 시스템 및 애플리케이션과 결합하여 사용될 수 있다.
본 발명은 3D 포인터를 포함하는 시스템에 한정되지는 않지만, 배경기술 섹션에서 논의한 바와 같이, 본 명세서에서는 3D 포인터로서 동작하는 원격 장치에 특히 중점을 둔다. 이러한 장치는 장치의 이동(예를 들어, 선형 이동, 회전 이동, 가속 또는 이들의 조합)을 사용자 인터페이스에 대한 명령으로 변환할 수 있다. 예시적인 루프-형상의, 3D 포인팅 장치(300)가 도 3a에 도시되지만, 본 발명은 루프-형상 장치에 한정되지 않는다. 본 예시적인 실시예에서, 3D 포인팅 장치(300)는 2개의 버튼(302 및 304)뿐만 아니라 스크롤 휠(306)(스크롤 휠(306)은 또한 스크롤 휠(306)을 누름으로써 버튼으로서 동작할 수 있음)을 포함하지만, 다른 예시적인 실시예는 다른 물리적 구성을 포함한다. 3D 포인팅 장치(300)의 사용자 이동은, 예를 들어 x-축 자세(x-axis attitude)(롤(roll)), y-축 고도(y-axis elevation)(피치(pitch)) 또는 z-축 헤딩(z-axis heading)(요(yaw))의 하나 이상에 관한 회전으로 정의될 수 있다. 뿐만 아니라, 본 발명의 일부 예시적인 실시예는 추가적으로(또는 대안적으로) 커서 이동 또는 다른 사용자 인터페이스 명령을 생성하기 위해 x, y 및/또는 z축에 따르는 3D 포인팅 장치(300)의 선형 이동을 측정할 수 있다. 본 예시는 이하에서 제공된다. 3D 포인팅 장치에 관한 많은 치환 및 변동이 본 발명의 예시적인 실시예를 따르는 시스템에서 구현될 수 있다. 관심있는 독자는, 2005년 5월 2일에 출원되고 (보정된) 제목 "3D Pointing Devices and Methods"을 갖는 미국 특허 출원 제11/119,663호 , 역시 2005년 5월 2일에 출원되고 (보정된) 제목 " 3D Pointing Devices with Tilt Compensation and Improved Usability"을 갖는 미국 특허 출원 제11/119,719호, 역시 2005년 5월 2일에 출원되고 (보정된) 제목 "Methods and Devices for Removing Unintentional Movement in 3D Pointing Devices"을 갖는 미국 특허 출원 제11/119,987호 및 역시 2005년 5월 2일에 출원되고 제목 "Methods and Devices for Identifying Users Based on Tremor"을 갖는 미국 특허 출원 제11/119,688호를 참조할 수 있고, 이들은 본 발명의 예시적인 실시예와 결합하여 사용될 수 있는 예시적인 3D 포인팅 장치에 관한 더 상세한 사항들을 위해 본 명세서에 참조로서 포함된다.
본 발명의 예시적인 실시예에 따르면, 3D 포인팅 장치(300)는 디스플레이(308)의 앞에서 사용자가 잡고 있을 것이며, 3D 포인팅 장치(300)의 움직임은, 예를 들어 디스플레이(308) 상의 커서(310)를 이동시키는 것과 같이 디스플레이(308) 상에 표시되는 정보와의 상호작용을 위해 사용될 수 있는 출력으로 3D 포인팅 장치(300)에 의해 변환될 것으로 예상된다. 예를 들어, 이러한 3D 포인팅 장치 및 이에 연관된 사용자 인터페이스들은 도 3b에 도시되는 바와 같이 텔레비젼 상에서 미디어 선택을 행하기 위해 사용될 수 있으며, 이는 이하에서 보다 상세히 개시된다. 본 발명의 예시적인 실시예의 태양은, 이른바 "10-피트(10-foot)" 인터페이스(즉, 거실에서 사용자와 그의 텔레비젼 간의 통상적인 거리)에서의 사용자 경험을 향상시키기 위해 최적화될 수 있다. 예를 들어, 포인팅, 스크롤링, 줌 및 패닝(panning) 사이의 상호작용(예를 들어, 사용자 인터페이스와 연관된 3D 포인팅 장치(300)의 사용)은 아래에서 더 상세히 개시되는 바와 같이 본 환경을 위해 최적화될 수 있지만, 본 발명은 이에 한정되지 않는다.
다시 도 3a를 참조하면, 3D 포인팅 장치(300)의 이동과 사용자 인터페이스 상에서의 대응하는 커서 이동 간의 예시적인 관계가 도시된다. y-축에 관한 3D 포인팅 장치(300)의 회전은 3D 포인팅 장치(300)에 의해 감지되어 디스플레이(308)의 y2축을 따라 커서(310)를 이동시키기 위해 시스템에 의해 사용될 수 있는 출력으로 변환될 수 있다. 이와 유사하게, z-축에 관한 3D 포인팅 장치(300)의 회전은 3D 포인팅 장치(300)에 의해 감지되어 디스플레이(308)의 x2 축을 따라 커서(310)를 이동시키기 위해 시스템에 의해 사용될 수 있는 출력으로 변환될 수 있다. 3D 포인팅 장치(300)의 출력은 커서 이동 이외에도 (또는 이에 추가적으로) 다양한 다른 방식으로 디스플레이(308)와 상호작용하기 위해 사용될 수 있다는 것을 알 것이다(예를 들어, 이는 커서 페이딩(cursor fading), 볼륨 또는 미디어 전송(재생, 정지, 빠른-감기 및 되감기)을 제어할 수 있음). 추가적으로, 시스템은 커서 이동뿐만 아니라 명령을 전달하기 위해 제스쳐(gestures)(예를 들어, 사전정의된 이동 패턴)를 인식하도록 프로그램될 수 있다. 더 나아가, 예를 들어, 줌-인을 위해 버튼(302)을 누르거나 또는 줌-아웃을 위해 버튼(304)을 누르는 것에 의해 작동되는, 예를 들어 디스플레이의 특정한 영역 상의 줌-인 또는 줌-아웃 같은 다른 입력 명령들이 또한 사용자에게 사용가능할 수 있다.
본 발명의 예시적인 실시예들에 따르면, 사용자 인터페이스는 사용자 인터페이스 뷰들(views) 사이에서 이동하기 위한 줌 기술을 적어도 부분적으로 사용할 수 있다. 줌 이동 효과는, 현재 UI 뷰 상에 표시된 UI 객체들 중 적어도 일부를 점진적인으로 스케일링하고 표시함으로써, 이들 UI 객체들이 관찰자로부터 멀어지는 움직임의 시각적인 느낌을 제공하기 위해 수행될 수 있다. 본 발명의 다른 하나의 기능적 측면에서, 사용자 인터페이스들은, 사용자 인터페이스와의 사용자 상호작용에 응답하여 줌-인(zoom-in)할 수 있는데, 이는 마찬가지로 관찰자로 향하는 이동의 시각적 느낌을 제공하는 UI 객체들의 점진적인 스케일링 및 표시를 야기한다. 줌가능한 사용자 인터페이스에 관한 추가 정보는, 2004년 1월 30일에 출원된 "A Control Framework with a Zoomable Graphical User Interface for Organizing, Selecting and Launching Media Items"라는 제목의 미국 특허 출원번호 제10/768,432호 및 2001년 4월 9일에 출원된 "Interactive Content Guide for Television Programming"이라는 제목의 미국 특허 출원번호 제09/829,263호에서 찾을 수 있는데, 이들의 개시 내용은 참조로서 본원에 포함된다.
사용자 인터페이스 내에서의 서로 다른 사용자 인터페이스 뷰들 간의 이동은 줌에 한정되지 않는다. 줌에 더하여 또는 이를 대체하여, 줌이 아닌 다른 기술들이 사용자 인터페이스 뷰들 사이의 전환에 사용될 수 있다. 예를 들어, 패닝(panning)이 사용자 인터페이스 뷰에 현재 표시되어 있는 사용자 인터페이스 객체들 중 적어도 일부의 점진적인 변형 및 표시에 의해 수행될 수 있다. 이는 이러한 사용자 인터페이스 객체들의 측방향 이동(lateral movement)의 시각적 느낌을 관찰자에게 제공한다.
이제 도 3b에 도시된 애플리케이션으로 돌아오면, 텔레비전(320) 상에 보여지는 GUI 화면(여기서, 현재 표시되는 UI 객체들의 세트를 지칭하는 용어인 "UI 뷰"로도 일컬어짐)은 홈 뷰(home view)이다. 이 특정 예시적 실시예에서, 홈 뷰는 복수의 애플리케이션(322)(예를 들어, "Photos", "Music", "Recorded", "Guide", "Live TV", "On Demand", 및 "Settings")을 표시하는데, 이들은 3D 포인팅 장치(300)를 통한 사용자 인터페이스와의 상호작용을 통해 사용자에 의해 선택될 수 있다. 이러한 사용자 상호작용은, 예를 들어 포인팅, 스크롤링, 클릭 또는 이들의 다양한 조합을 포함할 수 있다. 본 발명의 예시적인 실시예들과 함께 사용될 수 있는 예시적인 포인팅, 스크롤링 및 클릭 상호작용에 관한 추가적인 세부사항에 대해서는, 2006년 5월 4일에 출원된 Frank J. Wroblewski의 "METHODS AND SYSTEMS FOR SCROLLING AND POINTING IN USER INTERFACES"라는 제목의 미국 특허 출원번호 제11/417,764호를 참조할 수 있는데, 그 개시는 본원에 참조로서 포함된다.
부드럽고 빠른 스크롤
사용자 인터페이스 뷰들 간의 전환을 위해 특정 사용자 인터페이스 구현에 사용되는 상이한 기술들에 관계없이, 여기에 설명되는 예시적인 실시예들은 현재 디스플레이된 사용자 인터페이스 뷰 내의 컨텐츠를 스크롤하기 위한 기술에 초점을 맞춘다. 이러한 컨텐츠는, 예를 들어 스크롤가능한 시각적 디렉토리들, 스크롤가능한 리스트들, 스크롤가능한 그리드(grid) 가이드 및 임의의 다른 스크롤가능한 컨텐츠를 포함할 수 있다. 예를 들어, 도 4에 도시된 UI 뷰(400)를 고려하자. 이 뷰는 장르에 의해 분류된 다수의 온-디맨드(on-demand) 영화 선택을 보여주는데, 이 뷰(400)는, 예를 들어 도 3b의 홈 뷰에서 보이는 "On Demand" 애플리케이션 객체 상에서 줌-인함으로써 도달될 수 있다. 현재 포커스(예를 들어, 선택 강조(highlighting))가 UI 뷰(400)의 "장르 A"(402)와 관련된 UI 객체 상에 있는 동안, 3D 포인팅 장치(300) 상의 줌-인 버튼(302)을 한번 더 누름으로써, 사용자 인터페이스는 새로운 UI 뷰(404)를 표시하기 위해 이 객체 상에서 줌-인할 것이다. UI 뷰(404)는, 예를 들어 DVD 영화 커버 이미지로 구현될 수 있는 다수의 서브-장르 미디어 선택 객체들을 표시할 것이다. 이 예는 장르마다 여섯 개의 이미지를 포함하는 "북케이스" 또는 그룹화(grouping)을 도시하지만, 다른 구현 또는 동일한 구현 내에서의 다른 뷰들은 그룹마다 더 많거나 더 적은 이미지(예를 들어, 16, 32, 64개 등)를 포함할 수 있음을 알 것이다. 추가적으로, 예를 들어, 뷰들(400 및 404)의 하단에 나타난 장르 및 서브-장르의 컷 오프 행(cut-off row)과 같은, 현재 온-스크린(on-screen)이 아닌 사용자 인터페이스 객체들(본 예에서 이미지들)에 사용자가 도달할 수 있도록 시각적 디렉토리를 스크롤하기 위한 일부 기능이 제공될 수 있다. 예를 들어, 예시적인 일 실시예에 따르면, 3D 포인팅 장치(300)의 스크롤 휠(306)을 회전시키는 것은 현재 오프-스크린(off-screen)인 이미지들이 나타날 때까지 장르 또는 서브-장르를 스크롤하기 위해 사용자 인터페이스에 입력 명령을 제공할 수 있다.
예시적인 실시예들에 따르면, 일반적으로 3D 포인팅 장치(300)와 같은 장치를 사용하여 스크롤가능한 리스트를 스크롤하기 위한 다수의 서로 다른 방법이 존재한다. 상술한 바와 같이, 리스트(예컨대, 도 5에 도시된 리스트)를 스크롤하기 위한 하나의 방법은, 3D 포인팅 장치(300)의 스크롤 휠(306)을 회전시키는 것일 수 있다. 또 다른 예시적인 하나의 방법은 3D 포인팅 장치(300)를 사용하여, 스크롤 리스트를 위 또는 아래로 한 행 이동시키기 위해 상단 화살표 버튼(502) 또는 하단 화살표 버튼(504)을 포인팅하고 클릭하는 것이다. 대안적으로, 사용자는 온-스크린 스크롤바(506) 상의 하나의 위치를 포인팅하고 그 위치를 클릭하여 스크롤바(506) 상의 그 위치에 대응하는 스크롤가능한 리스트의 새로운 영역으로 건너뛸(jump) 수 있다. 스크롤 휠(306)을 이용하여 스크롤하는 모드들도 스크롤 속도 또는 한번에 스크롤하는 컨텐츠의 양과 관련된 서로 다른 스크롤 모드들, 예를 들어 싱글-로우 스크롤링(single-row scrolling), 한번에 한 페이지 스크롤(page at-a-time scrolling), 및 빠른 스크롤링(fast scrolling)으로 나누어질 수 있다.
그러나, 상술한 바와 같이, 그러한 인터페이스들 상에서 스크롤링하는 것은, 예를 들어 사용자 인터페이스를 생성하고 제어하는 클라이언트 시스템이 상대적으로 한정된 리소스들을 갖는 경우, 추가적인 과제가 제기될 수 있다. 일부 구현에서, 그들이 스크린에 나타남에 따라 행 또는 열에 채워져야(populate) 하는 컨텐츠의 이미지, 텍스트 등의 추가적인 행 또는 열을 생성하는 것은 현재 이용 가능한 것보다 더 많은 프로세싱 리소스를 필요로 할 수 있다. 예를 들어, 소위 "씬(thin)" 클라이언트(예컨대, 300 MHz (또는 미만의) 프로세서, 128 메가바이트 (또는 미만의) RAM 및 2D 그래픽 가속장치를 갖는 중급 및 고급 TV 셋톱박스)는 그 리소스가 사용자 인터페이스와 관련된 다양한 기능을 처리하기 위해 충분히 속박되어, 사용자에게 부드러운 시각적 경험을 제공하는 방식으로 스크롤하도록 컨텐츠를 신속하고 빠르게 생성하지 못할 수 있다. 그러나, 이 예시적인 실시예들은 이러한 단순히 예시적인 셋톱박스 또는 유사한 클라이언트 장치들 상의 구현에 한정되지 않는다. 사실상, 이 예시적인 실시예들은 그러한 씬 클라이언트 장치와 함께 사용하는데 이점을 제공하지만, 이들은 다른 기능을 위한 추가적인 리소스를 마련하도록 상당히 많은 프로세싱 리소스들을 갖는 클라이언트 장치상에서 사용될 수 있다.
따라서, 예시적인 일 실시예에 따르면, 사용자 인터페이스에 의해 스크롤링 입력이 수신되는 경우에 사용하기 위해, 사용자 인터페이스 뷰에 표시된 것 뿐만 아니라 소정의 개수의 행 (및/또는 열)이 생성되고 저장된다. 예를 들어, 사용자 인터페이스 뷰가 30개 아이템의 리스트(행마다 하나)를 제공하고, 일정 시간에 이 중 5개를 볼 수 있는 경우, 사용자 인터페이스는 10개의 그래픽적 행(예를 들어, 그 순간에 볼 수 있는 온-스크린의 5개와 숨겨진 오프-스크린의 5개)을 생성할 수 있다. 이어서, 사용자가 스크롤함에 따라, 사용자 인터페이스는 사용자가 인터페이스를 스크롤함에 따라 "새로운" 행(들)을 채우기 위해 미리 저장된 데이터를 사용하여, 리스트의 각 행을 적합한 데이터(예를 들어, DVD 커버 아트 이미지와 관련된 .jpg파일, 메타데이터 등)로 채운다.
이 예시적인 실시예에 따르면, 온-스크린 행들이 존재하는 개수 만큼의 미리 생성된 오프-스크린 행이 존재한다. (대체적으로, 온-스크린의 개수의 두 배의 개수의 오프-스크린 행들이, 예를 들어 절반은 현재 표시되는 상단 행 "위"의 행들에 대응하는 데이터로 채워지고, 절반은 현재 표시되는 하단 행 "아래"의 행들에 대응하는 데이터로 채워지도록 존재할 수 있다). 이것은, 일부 예시적인 구현에서, 예를 들어, 이러한 사용자 인터페이스들이 씬 클라이언트 장치 상에서 생성되는 경우, 행들을 신속하게 생성하지 못하는 것을 적어도 부분적으로 해결한다. 이 기술을 사용하여, 사용자 인터페이스는 사용자에게 연속적인 스크롤 리스트를 보여주면서 어느 방향으로든 몇 개의 행을 스크롤할 수 있다.
예시적인 실시예들에 따르면, 싱글-로우 스크롤 모드는, 일반적으로 디폴트 스크롤 모드이며 사용자가 컨텐츠를 통해 천천히 이동할 때마다 사용될 수 있다. 컨텐츠 통해 천천히 이동하는 것은 임의의 싱글-라인 스크롤 휠(306) 클릭 또는 스핀에 의해 설명될 수 있다. "스크롤 휠 클릭"은 스크롤가능한 휠을 현재 위치에서 어느 방향으로든 한 증분(increment)만큼 이동시키는 것으로 설명될 수 있다. 이 스크롤 휠 움직임의 하나의 증분은, 일반적으로 몇가지 유형의 사용자를 위한 피드백(예를 들어, 한번의 클릭의 사운드 또는 저항의 하나의 세트 양을 넘도록 휠을 밀었던 느낌)과 연관되어, 사용자가 휠의 하나의 증분이 발생한 때를 알도록 한다. 싱글-로우 모드에서, 스크롤링 리스트는 즉, 기존 행들을 위로 또는 아래로 이동시키고 각각 최하단 또는 최상단의 행을 미리 저장된 데이터로 다시 채움으로써, 스크롤 휠(306)의 각 클릭마다 한 행씩 이동한다. 이것은, 각 행이 오프-스크린에서 온-스크린으로 부드럽게 움직이므로 부드러운 스크롤링 경험을 제공한다.
또 다른 예시적인 일 실시예에 따르면, 한번에 한 페이지 스크롤 모드가, 예를 들어 사용자가 가장 자주 브라우징하는 것으로 확인된 리스트를 한번에 한 페이지씩 스크롤하기 위해 사용될 수 있다. 여기서, 컨텐츠의 한 "페이지"는 주어진 사용자 인터페이스 스크린에 대해 한번에 표시될 수 있는 행 또는 열의 개수와 같다. 예를 들어, 한번에 한 페이지 모드인 경우, 도 5에 도시된 사용자 인터페이스 스크린에 대한 한번의 스크롤 동작은 6개의 행이 모두 새로운 데이터 아이템들로 대체되는 결과를 가져올 것이다. 한번에 한 페이지 모드가 가능하게 된 경우, 하나의 클릭보다 더 많은 임의의 스크롤 휠(306)의 스핀은 사용자를 싱글-로우 모드에서 한번에 한 페이지 모드로 이동시킬 것이다. 일단 사용자가 한번에 한 페이지 모드로 진입하고 나면, 리스트는 모든 오프-스크린 행들을 오프-스크린에서 온-스크린으로 부드럽게 이동시킴으로서 한 페이지가 스크롤될 것이다. 또한, 싱글-로우 스크롤링 모드에서 한번에 한 페이지 스크롤링 모드로 전환하는 동안, 사용자가 스크롤을 전체 페이지보다 많게 하는지 적게 하는지에 관계없이, 스크롤 휠 클릭의 정확한 개수는 무시될 수 있다. 사용자는 그들의 손가락이 스크롤 휠 베드의 상단 또는 하단에 도달할 때 스크롤을 멈출 것이므로, 스크롤 휠 상호작용은 클릭들의 개별 그룹(discrete group)들로 구분되는 경향이 있다. 사용자는, 계속 스크롤하기를 원할경우 일반적으로 손가락을 들어올려 노출된 휠의 다른 쪽 끝으로 이동시키고 이전의 움직임을 계속할 것이다. 이 예시적인 실시예들에 따른 한번에 한 페이지 스크롤링 모드는, 예를 들어, 이하의 두가지 방법 중 하나로 종료될 수 있다.
1. 클릭들의 단일 개별 그룹 한개만이 수신되면, 시스템은 한번에 한 페이지 모드로 진입하여 단일 페이지를 스크롤 한 뒤, 즉시 보통의 스크롤링 모드로 돌아갈 수 있다.
2. 만약 그렇지 않고, 클릭들의 제1 그룹을 수신한 후, 사용자가 동일한 사용자의 상호작용의 일부라고 여겨질 정도로 충분히 짧은 시간(일반적으로 1초 이하) 내에 동일 방향으로 휠을 계속 이동시킨다면, 시스템은 한번에 한 페이지 모드를 빠져나가 빠른 스크롤링 모드(이하에서 설명됨)로 진입할 수 있다.
그러나, 이러한 스크롤링 솔루션들은, 예를 들어 한정된 리소스들을 갖는 시스템에서의 스크롤링의 난관들을 부분적으로 해결하지만, 몇몇의 추가적인 과제들도 야기한다. 예를 들어, 만약 사용자가 연속적으로 스크롤한다면, 사용자 인터페이스는 온-스크린에서 발생하는 스크롤링 애니메이션과 보조를 맞출 정도로 충분히 빠르게 각 행(또는 열)을 다시 채우고 재배치시키지 못할 수 있다. 예를 들어, 한번에 한 페이지 스크롤 모드에 있는 사용자가 완전히 한 페이지를 아래로 스크롤한 후, 시스템은 새로운 "오프-스크린" 리스트 요소들을 생성하기 위해 시간을 필요로 할 것이다. 연속적인 스크롤의 활성화(예를 들어, "페이지 다운")는 시스템이 새로운 스크롤링 컨텐츠를 제시하는 것이 가능하게 되는데 있어서 뒤쳐지게 할 수 있는데, 이는 변덕스럽거나(jerky) 불연속적인 시청을 제공할 수 있다. 대체적으로, 단일 액션에서 사용자가 사용자 인터페이스가 오프-스크린을 캐싱(cache)한 것보다 많은 행들을 스크롤하면 (예를 들어, 상기 예에서 사용자가 다섯 행을 초과하여 스크롤하는 경우), 사용자 인터페이스는 재사용을 위해 미리 저장된 행들을 다 써버릴 것이고, 온-스크린 행들을 실제 리스트 데이터로 채우기에 충분한 미리 생성된 행들을 갖지 못한다.
이러한 과제들을 해결하기 위해, 예시적인 실시예들은 또한 빠른 스크롤링 메커니즘을 (예를 들어, 싱글 스크롤링 및 한번에 한 페이지 스크롤링에 더하여 추가적으로, 싱글 스크롤링 또는 한번에 한 페이지 스크롤링 중 어느 하나와 결합하여, 또는 단독으로) 제공할 수 있다. 이러한 예시적인 실시예들에 따른 빠른 스크롤링 메커니즘은, 예를 들어 사용자 인터페이스가, 예를 들어 실제 데이터의 미리 캐싱된 행들 또는 열들을 사용하여 디스플레이에 렌더링할 수 있는 것보다 빠른 컨텐츠의 스크롤링을 요구하는 경우, 온-스크린에 표시된 행들(또는 열들)을 더미 데이터(dummay data)의 애니메이션으로 교체하는 것을 포함한다. 빠른 스크롤 모드로는, 예를 들어, 사용자가 싱글-로우 모드에서 하나의 페이지보다 많이 스크롤하려고 시도할 때, 또는 한번에 한 페이지 모드를 사용하는 경우 사용자가 이미 한번에 한 페이지 모드에 진입한 뒤 또 다시 스크롤 휠을 돌릴 때 진입될 수 있다. 그러나, 이러한 예시적인 실시예들은 빠른 스크롤 모드에 진입하기만을 위한 이러한 예시적인 기술들에 한정되지 않으며, 이 모드는 임의의 원하는 메커니즘을 사용하여 진입될 수 있음을 알 것이다.
일 실시예에 따르면, 실제 스크롤하는 컨텐츠 대신 제공되는 더미 데이터의 애니메이션은, 각 스크린에 대해, 그 스크린에 대한 대표(representative) 컨텐츠의 집합에 기초하여 개별적으로 생성되고, 사용자가 리스트에서의 실제 컨텐츠를 빠르게 지나치며 스크롤하고 있는 것처럼 보이도록 설계된다. 컨텐츠는 각 행의 개별적인 특징들중 적어도 일부가 행 간에 구별될 수 없도록 블러링되며(blurred), 이는 최종 사용자가 임의의 실제 컨텐츠의 대표가 매우 빠르게 스크롤되는 것으로 인식하도록 더미 데이터의 블러링된 애니메이션을 제공한다. 이러한 유형의 빠른 스크롤 모드 애니메이션을 보여주는 예시적인 일례가 도 5의 리스트에 대하여 도 6에서 도시된다. 도 6에 도시된 애니메이션의 정지된(still) 스냅샷(snapshot) 이미지에서 구별하기는 어렵지만, 예시적인 실시예에 따른 빠른 스크롤 애니메이션은 사용자 인터페이스의 사용자 또는 관찰자에게 스크롤하는 아이템들의 빠른 이동에 대한 시각적 느낌, 예컨대 본 예시에서는 수직으로 올라가거나 내려가는 것과 같은 시각적인 느낌을 제공하며, 이는 슬롯 머신의 휠에 인쇄된 이미지가 스핀 동안 회전하면서 제공하는 시각적인 느낌을 연상하게 하는 방식으로 제공된다. 따라서, 스크롤하는 이미지는, 스크린에 걸쳐 스크롤하는 속도 때문에 (도 6에 도시된 바와 같이) 사용자에게는 블러링된 것으로 보일 수 있다.
이러한 빠른 스크롤 모드에서 스크롤링 애니메이션을 표시하는 동안, 사용자 인터페이스는, 클라이언트의 CPU 상의 부하를 보다 감소시키기 위해 의도적으로 실제 데이터의 이용을 피할 수 있다(즉, 온-스크린 행 또는 열을 숨김). 보다 구체적으로, 이는 클라이언트의 프로세서(들)가 스크롤하는 사용자 인터페이스 요소 내의 각각의 개별적인 행 또는 열을 갱신하지 않고, 그 대신 일단 애니메이션이 종료되고 사용자가 그들의 최종 스크롤 위치에 도달하면 모든 온-스크린 행을 한 번에 갱신하게 하는 것을 포함한다. 추가적으로, 각 리스트를 생성하는데 이용되는 데이터가 데이터 베이스로부터 질의되는 경우, 시작과 마지막 위치 사이의 컨텐츠를 건너뛰는 것에 의해 컨텐츠를 스크롤하기 위해 생성되는 데이터베이스 질의의 수를 감소시킬 수 있으며, 이로 인해 CPU 상의 부하를 더욱 감소시킬 수 있다.
스크롤하는 컨텐츠에 대해, 상술한 예시적인 빠른 스크롤 프로세스는 스크롤하는 이미지, 텍스트 또는 이들의 결합의 리스트를 표시하는데 이용될 수 있다. 더미 데이터를 이용하여 표시된 애니메이션은, 통상적으로 스크롤되는 실제 컨텐츠의 임의의 집합과 정확히 매치되지 않을 수 있다. 그러나, 스크롤 애니메이션을 수행하는데 이용되는 더미 데이터는, 애니메이션이 스크롤되는 실제 컨텐츠와 비교적 잘 매치될 수 있도록, 실제 컨텐츠와 관련하여 알려진 이용가능한 정보에 기초하여 조정될 수 있다. 예시로서, 시각적 솔루션에 기초한 책꽂이(bookshelf)에는, 가득 찬 책꽂이, 즉 각 칸에서 12개의 이미지를 위한 공간에 12개의 이미지가 나타나는 것과, 또는 부분적으로 찬 책꽂이, 즉 12개의 이미지를 위한 공간에 칸 당 평균 3-5개의 이미지를 가지는 것이 있을 수 있다. 어떤 책꽂이의 유형이 그와 연관된 컨텐츠와 매치되는지에 따라, 희망하는 외관에 가까운 상이한 애니메이션이 표시될 수 있다. 또 다른 예시로서, 음악 앨범 표지가 사진 스냅샷과 비교된다. 음악 앨범 표지들은, 음악 앨범 표지들 간에 서로 다른 평균 컬러 팔레트(average color palette)를 가지지만, 일반적으로 통상적인 사진 스냅샷보다 밝은 색상을 사용하는 평균 컬러 팔레트를 가진다. 따라서, 사진 스냅샷의 시각적 디렉터리들(visual directories) 또는 책꽂이들을 빠르게 스크롤하는 블러링된 애니메이션을 제공하기 위해 사용되는 더미 데이터에 비해, 보다 밝은 컬러 팔레트를 가지는 더미 데이터를 이용하는 애니메이션은 음악 앨범 표지의 시각적 디렉터리 또는 책꽂이를 빠르게 스크롤하는데 이용될 수 있다.
일부 예시적인 실시예에 따르면, 이용되는 이미지들은 애니메이션화된 MNG(Multiple-Image Network Graphics) 이미지들이다. MNG는 PNG(Portable Network Graphics) 패밀리에 속하는 것으로, 멀티플(multiple) PNG 또는 JPEG, JNG(Network Graphics) 단일 이미지 데이터 스트림들로부터 만들어진 복합 정지 프레임(complex still frames) 또는 애니메이션들과 같은 복수 이미지를 포함할 수 있다. MNG에 관한 보다 많은 정보에 대해 관심이 있는 경우, 온라인 상의 www.libpng.org/pub/mng/spec/에서 찾아볼 수 있는 MNG 1.0의 사양을 참고한다. 대안적으로, 다른 방법의 애니메이션이 예시적인 실시예에 따른 빠른 스크롤을 위해 이미지를 애니메이션화하는데 이용될 수 있는데, 바람직하게는 (이에 한정되지 않지만) 사용자 인터페이스를 표시하는 시스템상의 CPU(들)에 과중한 부하(tax)를 주지 않는 기술이 이용될 수 있다. 예를 들어, 범용 프로세서에 추가하여 비디오 프로세서를 가지는 구현의 경우, 이러한 구현은 데이터의 후속 그룹의 처리를 위해 CPU를 확보(free up)하기 위하여, 미리 생성된 비디오를 사용하여 애니메이션을 표시할 수 있다.
특정 리스트 또는 사용자 인터페이스 요소를 위한 빠른 스크롤 모드에서 이용될 더미 데이터의 애니메이션화된 MNG 이미지는, 예를 들어, 두 개의 스크린 샷에 의해 생성될 수 있고, 그 리스트과 연관된 실제 컨텐츠는 디스플레이 상에서 두 개의 연속 위치로 스크롤된다. 이러한 두 개의 스크린 샷 이미지는 서로 붙여져(paste) 단일 연속 이미지가 되어, 이미지가 어떠한 방향으로든 끊김없이 무한하게 스크롤될 수 있다. 그 후, 이러한 예시적인 실시예에 따라 이러한 이미지는, 속도감을 주고 특정 컨텐츠를 식별불가능하게 하기 위해 스크롤의 축에 따라 60 픽셀로 블러링된다. 이렇게 블러링된 이미지는 6개의 프레임을 이용하여 애니메이션화되어 반복 루프에서 표시될 때 많은 양의 불특정 컨텐츠가 무한하게 스크롤되는 느낌을 만들어낸다.
더미 데이터의 애니메이션화된 MNG 이미지는 생성시에 그 파일 크기가 통상적인 신 클라이언트(thin client)에 최적화될 수 있는 파일 크기보다 크다. 일부 예시적인 실시예에 따른 빠른 스크롤을 신 클라이언트 상에서 이용하도록 애니메이션을 보다 향상시키기 위해, 보다 작은 이미지가 생성되어 스크롤하는 리스트에 맞게 스케일링될 수 있다. 이미지 상세 부분은 이동하지 않는 축을 따라 보다 잘 보이므로, 예를 들어, 이미지를 스크롤 축을 따라 본래 크기의 20%로 스케일 다운(scale down)하고, 그 외의 축을 따라 본래 크기의 50%로 스케일 다운하여 이를 달성할 수 있다. 예를 들어, 스크롤하는 리스트의 크기가 너비 800 픽셀, 높이 400 픽셀인 경우, 빠른 스크롤 모드 동안 이용되는 더미 데이터 애니메이션은 너비 400 픽셀, 높이 80 픽셀일 수 있고, 이는 다시 확대되어 전체 800 픽셀×400 픽셀 디스플레이 영역을 채울 수 있다. 대안적으로, 상이한 스케일링 퍼센트가 서로 다른 클라이언트 및/또는 디스플레이 크기에 따라 바람직하게 애니메이션에 이용될 수 있다. 이 같은 선택가능한 스케일링을 이용하면, 이미지를 스케일링하는데서 발생하는 데이터 손실이 이미지에 대한 블러링 효과를 향상시키고 클라이언트 CPU 상의 부하를 더욱 감소시킨다.
빠른 스크롤 모드에서의 상술한 더미 데이터 애니메이션 프로세스 중에, 표시되고 있는 블러링된 컨텐츠는 통상적으로 사용자에 의해 자세하게 인식되지 않는다. 따라서, 스크롤하는 리스트에서의 현재 위치 또는, 그 대신에 목적 위치를 표시하기 위해 추가 시각적 피드백이 사용자에게 제공될 수 있다. 제공되는 피드백은, 사용자가 스크롤되는 리스트를 살펴보는데 가장 도움이 되는 것이 무엇인지에 따라, 스크롤되는 리스트의 각 유형에 대해 서로 다르게 생성될 수 있다. 예를 들어 도 6에 도시된 바와 같이, 스크롤 가능한 리스트가 알파벳 순서의 노래 리스트인 경우, 리스트에서의 현재 위치(602)에서의 노래 제목의 디스플레이가 표시될 수 있다. 사용자가 빠른-스크롤 모드에서 리스트를 계속 스크롤하는 동안, 일반적으로 피드백(602: 본 명세서에서 "비주얼 컨텍스트 정보"라고도 지칭됨)은, 예를 들어 도 7에 도시된 바와 같이 사용자가 얼마나 멀리 스크롤했는지를 보여주는 노래 제목(702)을 표시하기 위해 갱신된다. 이러한 방식으로, 사용자는 동적인 시각적 단서들을 가지게 되고, 언제 그들이 찾던 지점에 도달하였는지를 보고 리스트에 대한 스크롤을 중지할 수 있다.
다른 아이템들이 또한 사용자가 사진 또는 예컨대, 전자 프로그램 가이드에서의 텔레비전 리스트 등을 스크롤하기 원하는 리스트에 저장될 수 있다. 사진에 대해, 빠른 스크롤 모드 동안 나타나는 동적 비주얼 컨텍스트 정보는 카운트 또는 예컨대 도 8에 도시된 바와 같이 "87개 중 19번째 사진"과 같은 사진의 텍스트, 및/또는 리스트 내 위치에서의 사진(802)의 썸네일 이미지(thumbnail image)일 수 있다. 텔레비전 가이드에 대해, 예를 들어, 채널 수와 이름을 비주얼 컨텍스트 정보로서 나타낼 수 있으며/있거나, 시간 및 날짜를 스크롤 가능한 리스트가 셋업된 방식에 따라 나타낼 수 있다.
예시적인 실시예에 따르면, 빠른-스크롤 모드는 사용자를 정보의 긴 리스트를 보다 빨리 이동하도록 스크롤 가속을 이용하는 것이 가능하다. 빠른-스크롤 모드에서는, 시작 스크롤 위치부터 현재 위치까지 이동한 총 거리가 추적된다. 사용자가 10개의 행보다 많이 이동하면, 시스템은 그 값(추적한 거리)에 예를 들어, 대수 기반 변경자(logarithm based modifier)를 곱하기 시작한다. 예를 들어, 예시적인 일 실시예에 따르면, 스크롤 가속 팩터는, 스크롤된 행의 수의 loge로 구현될 수 있고 loge(3)만큼 댐핑(damping)할 수 있으며, 댐핑(damping) 팩터는 변경될 수 있다. 따라서, 가속식은, 예를 들어 아래와 같이 표현될 수 있다.
Figure 112010031184507-pct00001
여기서 "scrollDelta"는 사용자가 스크롤을 시도한 행의 개수이다. 본 예시적인 기술은 사용자가 데이터의 긴 리스트를 빨리 건너뛰도록 할 수 있으나, 대수 기반 변경자를 이용함으로써 사용자가 리스트에서 관심있는 아이템을 지나치거나 원하는 선택을 반복적으로 넘길(overshoot) 정도로 스크롤 속도가 지나치게 빨라지는 것을 방지한다.
상술한 예시적인 실시예는 블러링된 더미 데이터 애니메이션으로 표시된 비주얼 컨텍스트 정보를 설명하고 있지만, 또 다른 예시적인 실시예에 따르면, 예컨대, 나타나는 비주얼 컨텍스트 정보는, 도 9에 도시된 바와 같이, 비주얼 컨텍스트 정보가 현재 위치에 대한 갱신을 제공하기보다는 스크롤링 목적지를 식별할 때, 정적인 상태를 유지할 수 있다. 예를 들어, 사용자가 전자 프로그래밍 가이드와 같은 리스트를 보다가 건너뛰기 위한 스크롤 가능한 컨텐츠 내에서의 선택 지점을 선정할 때, 애니메이션(902) 및 비주얼 컨텍스트 정보(904)가 표시될 수 있다. 이 경우, 비주얼 컨텍스트 정보(904)는 "56 ESPN으로 건너뛰기"를 나타내서 사용자에게 선택된 것이 무엇인지와 시스템이 현재 그 위치로 건너뛰고 있음을 보여준다. 이러한 경우는 리스트를 이동하는 동안, 즉 더미 데이터 애니메이션을 표시하는 동안 비주얼 컨텍스트 정보 표시(904)에서 선택을 정적으로 표시하고 이를 변경하지 않는 것이 바람직하다.
예시적인 실시예에 따른 상술한 예시적인 기술을 이용하여 리스트를 스크롤하기 위한 방법이 도 10의 논리 흐름도에 도시된다. 먼저, 그래픽 사용자 인터페이스(GUI) 내에서 스크롤하기 위한 방법은, 단계(1002)에서 GUI에서 볼 수 있는 제1 복수의 엔트리를 가지는 리스트의 제1 영역을 디스플레이하고; 단계(1004)에서 복수의 엔트리만큼 리스트를 스크롤하기 위해 사용자 입력을 수신하며; 단계(1006)에서 리스트가 스크롤되고 있는 동안 제1 복수의 엔트리과 연관된 GUI의 영역에서 더미 데이터의 애니메이션을 표시하고; 단계(1008)에서 스크롤을 멈추며; 단계(1010)에서 더미 데이터의 애니메이션을 제2 복수의 엔트리를 포함하는 리스트의 제2 영역으로 교체하는 것을 포함한다.
본 발명의 예시적인 실시예에 따라 데이터를 처리하기 위한 시스템 및 방법은 메모리 장치에 저장된 일련의 명령어들을 실행하는 하나 이상의 프로세서에 의해 수행될 수 있다. 이 같은 명령어들은 부차적인 데이터 저장 장치(들)와 같은 기타 컴퓨터 판독가능 매체로부터 메모리 장치로 판독될 수 있다. 메모리 장치에 저장된 일련의 명령어들을 실행함에 따라 프로세서는 예를 들어, 상술한 바와 같이 작동할 수 있다. 대안적인 실시예에서, 하드-와이어 내장 회로(hard-wire circuitry)가 본 발명을 구현하기 위해 소프트웨어 명령어과 결합하여 또는 그 대신에 이용될 수 있다.
상술한 예시적인 실시예에서 다양한 변형이 고려된다. 상술한 예시적인 실시예는 모든 점에 있어 본 발명을 제한하기보다는 예시적인 것으로 해석되어야 한다. 따라서, 본 발명에 대해 관련 기술에서 통상의 지식을 가진 자가 본 명세서에 포함된 설명으로부터 도출할 수 있는 상세 구현에 있어서의 다양한 변경이 이루어질 수 있다. 이 같은 모든 변경과 변형은 이하의 청구항에 의해 정의되는 본 발명의 범주 및 사상에 속하는 것으로 간주한다. 본 발명에 중요하다거나 필수적이다라고 명시적으로 설명되어 있지 않다면 본 발명의 설명에 이용된 어떠한 요소, 동작 또는 명령어도 그와 같이 해석되어서는 안된다. 또한, 본 명세서에서 사용된 관사 "일"은 하나 또는 그 이상의 것을 포함하는 것으로 해석되어야 한다.

Claims (41)

  1. 그래픽 사용자 인터페이스 내에서 스크롤(scroll)하기 위한 방법으로서,
    상기 그래픽 사용자 인터페이스 상에서 볼 수 있는(visible) 제1 복수의 엔트리를 갖는 리스트의 제1 영역을 표시하는 단계;
    복수의 엔트리만큼 상기 리스트를 스크롤하기 위한 사용자 입력을 수신하는 단계;
    상기 리스트가 스크롤되는 동안, 상기 제1 복수의 엔트리와 관련된 상기 그래픽 사용자 인터페이스의 영역들에 더미 데이터(dummy data)의 애니메이션(animation)을 표시하는 단계 - 상기 더미 데이터의 애니메이션은, 상기 리스트가 적어도 두 개의 연속적인 위치들로 스크롤되는 동안 상기 리스트의 적어도 두 개의 스크린샷을 가져오고 상기 적어도 두 개의 스크린샷을, 스크롤의 축을 따라 블러링될(blurred) 하나의 연속 이미지(continuous image)로 붙이는(pasting) 것에 의해 생성됨 -;
    스크롤을 중단하는 단계; 및
    상기 더미 데이터의 애니메이션을, 제2 복수의 엔트리를 포함하는 상기 리스트의 제2 영역으로 교체하는 단계
    를 포함하는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  2. 제1항에 있어서,
    상기 더미 데이터(dummy data)의 애니메이션(animation)을 표시하는 단계는, 상기 사용자 입력이 미리 정해진 수의 엔트리보다 많이 상기 리스트를 스크롤할 것을 요청할 경우 제공되며,
    상기 사용자 입력이, 상기 미리 정해진 수보다 적게 상기 리스트를 스크롤할 것을 요청하는 경우, 상기 애니메이션을 표시하는 단계는 생략되고 상기 리스트가 스크롤될 때 실제 데이터가 표시되는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  3. 제2항에 있어서,
    상기 미리 정해진 수의 엔트리는, 한번에 한 페이지 스크롤 모드(a page-at-a-time scroll mode)에서의 스크롤 휠(wheel)의 제2 스핀 또는 싱글-로우 스크롤 모드(single-row scroll mode)에서의 한 페이지의 엔트리들보다 많은, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  4. 제3항에 있어서,
    상기 싱글-로우 스크롤 모드에서, 상기 리스트는 상기 스크롤 휠의 각 클릭에 대해 한 행씩 이동하는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  5. 제3항에 있어서,
    상기 한번에 한 페이지 스크롤 모드에서, 모든 오프 스크린 행들(off-screen rows)이 오프 스크린(off-screen)으로부터 온 스크린으로(on-screen)으로 부드럽게(smoothly) 이동하는 것에 의해 상기 리스트가 한 페이지씩 이동하는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  6. 제2항에 있어서,
    상기 더미 데이터의 애니메이션을 표시하는 단계가 생략될 때, 상기 실제 데이터는, 싱글 로우 모드에 있는 경우, 미리 채워진 오프 스크린 행들(pre-filled off-screen rows)로부터 한 번에 한 행씩 표시되거나, 상기 실제 데이터는, 한번에 한 페이지 스크롤 모드에 있는 경우, 미리 채워진 오프 스크린 페이지(pre-filled off-screen page)로부터 한번에 한 페이지씩 표시되는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  7. 제1항에 있어서,
    상기 더미 데이터의 애니메이션은 상기 리스트의 상기 영역의 컨텐츠와 연관되는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  8. 제7항에 있어서,
    상기 더미 데이터의 애니메이션은 애니메이션화된 MNG(animated Multiple-image Network Graphics)인, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  9. 제8항에 있어서,
    상기 리스트가 두 개의 연속적인 위치들로 스크롤되는 동안 리스트의 두 개의 스크린샷을 가져오고 상기 두 개의 스크린샷을, 스크롤의 축을 따라 60 픽셀들로 블러링될(blurred) 하나의 연속 이미지(continuous image)로 붙이는(pasting) 것에 의해 상기 애니메이션화된 MNG 이미지를 생성하는 단계를 더 포함하는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  10. 제9항에 있어서,
    상기 하나의 연속 이미지를, 하나의 연속 스크롤에서 여섯개의 프레임으로 수정하는 단계를 더 포함하는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  11. 제10항에 있어서,
    상기 하나의 연속 이미지를, 상기 스크롤의 축을 따라 상기 하나의 연속 이미지의 크기의 20%로 스케일 다운(scale down)하는 단계; 및
    상기 하나의 연속 이미지를, 오프 축(off-axis)을 따라 상기 하나의 연속 이미지의 크기의 50%로 스케일 다운하는 단계
    를 더 포함하는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  12. 제1항에 있어서,
    상기 더미 데이터의 애니메이션은 연관된 색 팔레트(color palette)를 가지며, 상기 색 팔레트는 상기 스크롤 리스트에서의 아이템들과 관련된, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  13. 제1항에 있어서,
    상기 리스트 내에서 현재 위치를 표시하도록 갱신되는 동적 비주얼 컨텍스트 정보(dynamic visual context information)를 표시하는 단계를 더 포함하는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  14. 제13항에 있어서,
    상기 동적 비주얼 컨텍스트 정보는 스크롤된 양과의 관계에 기초하여 갱신되는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  15. 제13항에 있어서,
    상기 동적 비주얼 컨텍스트 정보는, 상기 리스트에서의 정보와 관련된 텍스트를 적어도 포함하는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  16. 제15항에 있어서,
    상기 리스트에서의 상기 정보는 음악 제목들, 영화 제목들 및 사진들 중 적어도 하나인, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  17. 제1항에 있어서,
    상기 리스트를 스크롤 하기 위한 상기 사용자 입력은 3D 포인터 상에서의 스크롤 휠로부터 수신되는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  18. 제17항에 있어서,
    상기 그래픽 사용자 인터페이스에 표시되는 스크롤의 속도는 대수 기반 변경자(logarithm based modifier)에 관련되는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  19. 제1항에 있어서,
    상기 리스트를 스크롤하기 위한 상기 사용자 입력은, 상기 리스트를 위 또는 아래로 한 행 이동시키기 위해 온 스크린 스크롤바(on-screen scrollbar) 상에서의 상단 또는 하단 화살표들을 클릭함으로써 행하여지는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  20. 제1항에 있어서,
    상기 사용자 입력은, 온 스크린 스크롤바 상의 하나의 위치에 대응하는 상기 리스트의 부분으로 건너뛰기 위해, 상기 위치를 클릭하는 것에 의해 수신되는, 그래픽 사용자 인터페이스 내에서 스크롤하기 위한 방법.
  21. 컴퓨터 또는 프로세서에 의해 실행되었을 때,
    그래픽 사용자 인터페이스 상에서 볼 수 있는 제1 복수의 엔트리를 갖는 리스트의 제1 영역을 표시하는 단계;
    복수의 엔트리만큼 상기 리스트를 스크롤하기 위한 사용자 입력을 수신하는 단계;
    상기 리스트가 스크롤되는 동안, 상기 제1 복수의 엔트리와 관련된 상기 그래픽 사용자 인터페이스의 영역들에 더미 데이터(dummy data)의 애니메이션(animation)을 표시하는 단계 - 상기 더미 데이터의 애니메이션은, 상기 리스트가 적어도 두 개의 연속적인 위치들로 스크롤되는 동안 상기 리스트의 적어도 두 개의 스크린샷을 가져오고 상기 적어도 두 개의 스크린샷을, 스크롤의 축을 따라 블러링될(blurred) 하나의 연속 이미지(continuous image)로 붙이는(pasting) 것에 의해 생성됨 -;
    스크롤을 중단하는 단계; 및
    상기 더미 데이터의 애니메이션을, 제2 복수의 엔트리를 포함하는 상기 리스트의 제2 영역으로 교체하는 단계
    를 수행하는 프로그램 명령어들이 코딩되어 포함되어 있는, 컴퓨터 판독가능 매체.
  22. 제21항에 있어서,
    상기 더미 데이터(dummy data)의 애니메이션(animation)을 표시하는 단계는, 상기 사용자 입력이 미리 정해진 수의 엔트리보다 많이 상기 리스트를 스크롤할 것을 요청하는 경우에 제공되며,
    상기 사용자 입력이, 상기 미리 정해진 수보다 적게 상기 리스트를 스크롤할 것을 요청한 경우, 상기 더미 데이터의 애니메이션을 표시하는 단계는 생략되고, 상기 리스트가 스크롤 될 때 실제 데이터가 표시되는, 컴퓨터 판독가능 매체.
  23. 제22항에 있어서,
    상기 미리 정해진 수의 엔트리는, 한번에 한 페이지 스크롤 모드(a page-at-a-time scroll mode)에서의 스크롤 휠(wheel)의 제2 스핀 또는 싱글-로우 스크롤 모드(single-row scroll mode)에서의 한 페이지의 엔트리들보다 많은, 컴퓨터 판독가능 매체.
  24. 제23항에 있어서,
    상기 싱글-로우 스크롤 모드에서, 상기 리스트는 상기 스크롤 휠의 각 클릭에 대해 한 행씩 이동하는, 컴퓨터 판독가능 매체.
  25. 제23항에 있어서,
    상기 한번에 한 페이지 스크롤 모드에서, 모든 오프 스크린 행들(off-screen rows)이 오프 스크린(off-screen)에서 온 스크린으로(on-screen)으로 부드럽게(smoothly) 이동하는 것에 의해 상기 리스트가 한 페이지씩 이동하는, 컴퓨터 판독가능 매체.
  26. 제22항에 있어서,
    상기 더미 데이터의 애니메이션을 표시하는 단계가 생략될 때, 상기 실제 데이터는, 싱글 로우 모드에 있는 경우, 미리 채워진 오프 스크린 행들(pre-filled off-screen rows)로부터 한 번에 한 행씩 표시되거나, 상기 실제 데이터는, 한번에 한 페이지 스크롤 모드에 있는 경우, 미리 채워진 오프 스크린 페이지(pre-filled off-screen page)로부터 한번에 한 페이지씩 표시되는, 컴퓨터 판독가능 매체.
  27. 제21항에 있어서,
    상기 더미 데이터의 애니메이션은 상기 리스트의 상기 영역의 컨텐츠와 연관되는, 컴퓨터 판독가능 매체.
  28. 제27항에 있어서,
    상기 더미 데이터의 애니메이션은 애니메이션화된 MNG(animated Multiple-image Network Graphics)인, 컴퓨터 판독가능 매체.
  29. 제28항에 있어서,
    상기 리스트가 두 개의 연속적인 위치들로 스크롤되는 동안 리스트의 두 개의 스크린샷을 가져오고, 상기 두 개의 스크린샷을 스크롤의 축을 따라 60 픽셀들에 의해 블러링될(blurred) 하나의 연속 이미지(continuous image)로 붙이는(pasting) 것에 의해 상기 애니메이션화된 MNG 이미지를 생성하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  30. 제29항에 있어서,
    상기 하나의 연속 이미지를, 하나의 연속 스크롤에서 여섯개의 프레임으로 수정하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  31. 제30항에 있어서,
    상기 하나의 연속 이미지를, 상기 스크롤의 축을 따라 상기 하나의 연속 이미지의 크기의 20%로 스케일 다운(scale down)하는 단계; 및
    상기 하나의 연속 이미지를, 오프 축(off-axis)을 따라 상기 하나의 연속 이미지의 크기의 50%로 스케일 다운하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  32. 제31항에 있어서,
    상기 더미 데이터의 애니메이션은 연관된 컬러 팔레트를 가지며, 상기 컬러 팔레트는 상기 스크롤 리스트에서의 아이템들과 관련된, 컴퓨터 판독가능 매체.
  33. 제21항에 있어서,
    상기 리스트 내에서 현재 위치를 표시하도록 갱신되는 동적 비주얼 컨텍스트 정보(dynamic visual context information)를 표시하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  34. 제33항에 있어서,
    상기 동적 비주얼 컨텍스트 정보는 스크롤된 양(amount)과의 관계에 기초하여 갱신되는, 컴퓨터 판독가능 매체.
  35. 제33항에 있어서,
    상기 동적 비주얼 컨텍스트 정보는, 상기 리스트에서의 정보와 관련된 텍스트를 적어도 포함하는, 컴퓨터 판독가능 매체.
  36. 제35항에 있어서,
    상기 리스트에서의 상기 정보는 음악 제목들, 영화 제목들 및 사진들 중 적어도 하나인, 컴퓨터 판독가능 매체.
  37. 제21항에 있어서,
    상기 리스트를 스크롤 하기 위한 상기 사용자 입력은 3D 포인터 상에서의 스크롤 휠로부터 수신되는, 컴퓨터 판독가능 매체.
  38. 제37항에 있어서,
    상기 그래픽 사용자 인터페이스에 표시되는 스크롤의 속도는 대수 기반 변경자에 관련되는, 컴퓨터 판독가능 매체.
  39. 제21항에 있어서,
    상기 리스트를 스크롤 하기 위한 상기 사용자 입력은, 상기 리스트를 위 또는 아래로 한 행 이동시키기 위해 온 스크린 스크롤바 상의 상단 또는 하단 화살표들을 클릭함으로써 행하여지는, 컴퓨터 판독가능 매체.
  40. 제21항에 있어서,
    상기 사용자 입력은, 온 스크린 스크롤바 상의 위치에 대응하는 상기 리스트의 부분으로 건너뛰기 위해, 상기 위치를 클릭하는 것에 의해 수신되는, 컴퓨터 판독가능 매체.
  41. 사용자 인터페이스를 제공하는 장치로서,
    상기 사용자 인터페이스는,
    상기 사용자 인터페이스 상에서 현재 표시되는 아이템들의 리스트의 제1 영역; 및
    상기 리스트를 스크롤하기 위한 사용자 입력을 수신하기 위한 메커니즘
    을 포함하고,
    상기 사용자 인터페이스는, 상기 리스트가 스크롤되는 동안 더미 데이터의 애니메이션을 표시하고, 후속하여(subsequently) 상기 더미 데이터의 애니메이션을 상기 리스트의 제2 영역으로 교체하며,
    상기 더미 데이터의 애니메이션은, 상기 리스트가 적어도 두 개의 연속적인 위치들로 스크롤되는 동안 상기 리스트의 적어도 두 개의 스크린샷을 가져오고 상기 적어도 두 개의 스크린샷을, 스크롤의 축을 따라 블러링될(blurred) 하나의 연속 이미지(continuous image)로 붙이는(pasting) 것에 의해 생성되는, 사용자 인터페이스를 제공하는 장치.
KR1020107010689A 2007-10-16 2008-10-10 씬 클라이언트 상에서 동작하는 사용자 인터페이스의 빠르고 부드러운 스크롤링 Expired - Fee Related KR101542274B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US99913007P 2007-10-16 2007-10-16
US60/999,130 2007-10-16

Publications (2)

Publication Number Publication Date
KR20100083827A KR20100083827A (ko) 2010-07-22
KR101542274B1 true KR101542274B1 (ko) 2015-08-06

Family

ID=40535410

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107010689A Expired - Fee Related KR101542274B1 (ko) 2007-10-16 2008-10-10 씬 클라이언트 상에서 동작하는 사용자 인터페이스의 빠르고 부드러운 스크롤링

Country Status (4)

Country Link
US (2) US8359545B2 (ko)
JP (1) JP2011501289A (ko)
KR (1) KR101542274B1 (ko)
WO (1) WO2009051665A1 (ko)

Families Citing this family (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2006252194B2 (en) 2006-12-21 2010-02-11 Canon Kabushiki Kaisha Scrolling Interface
AU2006252196B2 (en) * 2006-12-21 2009-05-14 Canon Kabushiki Kaisha Scrolling Interface
AU2006252191B2 (en) * 2006-12-21 2009-03-26 Canon Kabushiki Kaisha Scrolling Interface
AU2006252190B2 (en) * 2006-12-21 2010-03-25 Canon Kabushiki Kaisha Collection browser for image items with multi-valued attributes
KR101406289B1 (ko) * 2007-03-08 2014-06-12 삼성전자주식회사 스크롤 기반 아이템 제공 장치 및 방법
US8359545B2 (en) * 2007-10-16 2013-01-22 Hillcrest Laboratories, Inc. Fast and smooth scrolling of user interfaces operating on thin clients
US7930646B2 (en) * 2007-10-19 2011-04-19 Microsoft Corporation Dynamically updated virtual list view
US7877702B2 (en) * 2007-11-20 2011-01-25 International Business Machines Corporation Tree widget data population
US8140995B1 (en) * 2008-04-15 2012-03-20 Adobe Systems Incorporated Method and apparatus indicating scroll position on a display
US20090288035A1 (en) * 2008-05-15 2009-11-19 Microsoft Corporation Scrollable views in a client/server application
US20100088640A1 (en) * 2008-10-08 2010-04-08 Belkin International, Inc. Method And Electrical Device For Displaying Data To A User
US20100162126A1 (en) * 2008-12-23 2010-06-24 Palm, Inc. Predictive cache techniques
JP5470861B2 (ja) * 2009-01-09 2014-04-16 ソニー株式会社 表示装置及び表示方法
US8176442B2 (en) * 2009-05-29 2012-05-08 Microsoft Corporation Living cursor control mechanics
JP2011108186A (ja) * 2009-11-20 2011-06-02 Sony Corp 情報処理装置、情報処理方法およびプログラム
JP5361697B2 (ja) * 2009-12-21 2013-12-04 キヤノン株式会社 表示制御装置および表示制御方法
WO2011088131A1 (en) * 2010-01-12 2011-07-21 Crane Merchandising Systems, Inc. Mechanism for a vending machine graphical user interface utilizing xml for a versatile customer experience
USD658195S1 (en) 2010-01-27 2012-04-24 Apple Inc. Display screen or portion thereof with animated graphical user interface
JP5459003B2 (ja) * 2010-03-23 2014-04-02 ソニー株式会社 画像処理装置、画像処理方法および画像処理プログラム
US10852069B2 (en) 2010-05-04 2020-12-01 Fractal Heatsink Technologies, LLC System and method for maintaining efficiency of a fractal heat sink
JP2012019381A (ja) * 2010-07-08 2012-01-26 Sony Corp 画像処理装置及び画像処理方法
US8429556B2 (en) * 2010-07-20 2013-04-23 Apple Inc. Chunking data records
US9864501B2 (en) * 2010-07-30 2018-01-09 Apaar Tuli Displaying information
USD667834S1 (en) 2010-10-18 2012-09-25 Apple Inc. Display screen or portion thereof with graphical user interface
JP5789965B2 (ja) * 2010-12-01 2015-10-07 富士通株式会社 画像送信方法、画像送信装置および画像送信プログラム
US9377876B2 (en) * 2010-12-15 2016-06-28 Hillcrest Laboratories, Inc. Visual whiteboard for television-based social network
US20120221974A1 (en) * 2011-02-28 2012-08-30 Sony Network Entertainment Inc. Method and apparatus for presenting elements of a user interface
JP5451684B2 (ja) * 2011-05-31 2014-03-26 楽天株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
JP5276145B2 (ja) * 2011-06-13 2013-08-28 株式会社ソニー・コンピュータエンタテインメント リスト表示装置
US9035967B2 (en) * 2011-06-30 2015-05-19 Google Technology Holdings LLC Method and device for enhancing scrolling and other operations on a display
US20130067349A1 (en) * 2011-09-12 2013-03-14 Microsoft Corporation Efficiently providing data from a virtualized data source
US9223395B2 (en) 2011-09-14 2015-12-29 Microsoft Technology Licensing, Llc Viewing presentations in a condensed animation mode
US9280836B1 (en) * 2011-10-18 2016-03-08 Google Inc. Techniques for rendering images in a tiled view
US9607420B2 (en) 2011-11-14 2017-03-28 Microsoft Technology Licensing, Llc Animations for scroll and zoom
JP5865039B2 (ja) * 2011-11-30 2016-02-17 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
US8994755B2 (en) * 2011-12-20 2015-03-31 Alcatel Lucent Servers, display devices, scrolling methods and methods of generating heatmaps
KR20130081503A (ko) * 2012-01-09 2013-07-17 삼성전자주식회사 디스플레이장치 및 그 제어방법
US9542008B2 (en) 2012-01-16 2017-01-10 Lg Electronics Inc. Image display apparatus and method for operating the same
US9645724B2 (en) 2012-02-01 2017-05-09 Facebook, Inc. Timeline based content organization
US9557876B2 (en) 2012-02-01 2017-01-31 Facebook, Inc. Hierarchical user interface
US9229613B2 (en) 2012-02-01 2016-01-05 Facebook, Inc. Transitions among hierarchical user interface components
USD708637S1 (en) 2012-02-09 2014-07-08 Apple Inc. Display screen or portion thereof with icon
USD708638S1 (en) 2012-03-07 2014-07-08 Apple Inc. Display screen or portion thereof with graphical user interface
US9043722B1 (en) 2012-06-19 2015-05-26 Surfwax, Inc. User interfaces for displaying relationships between cells in a grid
US20150116309A1 (en) * 2012-11-05 2015-04-30 Andrew Ofstad Subtle camera motions in a 3d scene to anticipate the action of a user
USD692022S1 (en) * 2012-11-09 2013-10-22 Blackberry Limited Display screen with icon
US10474342B2 (en) * 2012-12-17 2019-11-12 Microsoft Technology Licensing, Llc Scrollable user interface control
US10691230B2 (en) 2012-12-29 2020-06-23 Apple Inc. Crown input for a wearable electronic device
US10275117B2 (en) * 2012-12-29 2019-04-30 Apple Inc. User interface object manipulations in a user interface
US10175873B2 (en) * 2013-01-21 2019-01-08 Salesforce.Com, Inc. System and method for retrieving data based on scrolling velocity
KR102085309B1 (ko) * 2013-01-30 2020-03-05 삼성전자주식회사 전자 장치에서 스크롤 장치 및 방법
US9934488B2 (en) * 2013-03-13 2018-04-03 Autodesk, Inc. User interface navigation elements for navigating datasets
US11073979B2 (en) 2013-03-15 2021-07-27 Arris Enterprises Llc Non-linear navigation of data representation
USD751587S1 (en) * 2013-04-30 2016-03-15 Microsoft Corporation Display screen with graphical user interface
US10095397B2 (en) 2013-04-30 2018-10-09 Splunk Inc. Navigating scrollable sections of content in a viewing area
CN104093076B (zh) * 2013-06-19 2018-04-10 腾讯科技(深圳)有限公司 翻页方法、装置及终端
KR102234400B1 (ko) * 2013-07-08 2021-03-31 삼성전자주식회사 컨텐츠의 순서 또는 위치를 변경하는 전자 장치 및 방법
KR101505832B1 (ko) * 2013-08-19 2015-03-25 삼성전자주식회사 의료 영상을 표시하는 방법 및 이를 위한 장치
US11068128B2 (en) 2013-09-03 2021-07-20 Apple Inc. User interface object manipulations in a user interface
US10545657B2 (en) 2013-09-03 2020-01-28 Apple Inc. User interface for manipulating user interface objects
WO2015034969A2 (en) 2013-09-03 2015-03-12 Apple Inc. User interface for manipulating user interface objects with magnetic properties
US10503388B2 (en) 2013-09-03 2019-12-10 Apple Inc. Crown input for a wearable electronic device
US12287962B2 (en) 2013-09-03 2025-04-29 Apple Inc. User interface for manipulating user interface objects
USD748122S1 (en) * 2013-10-25 2016-01-26 Microsoft Corporation Display screen with transitional graphical user interface
USD749108S1 (en) * 2013-10-25 2016-02-09 Microsoft Corporation Display screen with animated graphical user interface
USD748120S1 (en) * 2013-10-25 2016-01-26 Microsoft Corporation Display screen with animated graphical user interface
USD748121S1 (en) * 2013-10-25 2016-01-26 Microsoft Corporation Display screen with animated graphical user interface
USD747334S1 (en) * 2013-10-25 2016-01-12 Microsoft Corporation Display screen with graphical user interface
USD746847S1 (en) * 2013-10-25 2016-01-05 Microsoft Corporation Display screen with animated graphical user interface
JP2015148991A (ja) * 2014-02-07 2015-08-20 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
CN105074642B (zh) * 2014-02-27 2018-08-17 京瓷办公信息系统株式会社 显示装置、显示控制程序以及显示控制方法
PL2921944T3 (pl) * 2014-03-17 2019-06-28 Nokia Technologies Oy Interfejs użytkownika
CN110825299B (zh) 2014-06-27 2024-03-29 苹果公司 尺寸减小的用户界面
JP6331869B2 (ja) * 2014-08-20 2018-05-30 ティアック株式会社 表示装置およびこれを備える電子機器
US10082892B2 (en) 2014-09-02 2018-09-25 Apple Inc. Button functionality
US10235014B2 (en) 2014-09-02 2019-03-19 Apple Inc. Music user interface
US20160062571A1 (en) 2014-09-02 2016-03-03 Apple Inc. Reduced size user interface
TWI676127B (zh) 2014-09-02 2019-11-01 美商蘋果公司 關於電子郵件使用者介面之方法、系統、電子器件及電腦可讀儲存媒體
USD780203S1 (en) * 2014-10-02 2017-02-28 Deere & Company Display screen with a graphical user interface
JP6448334B2 (ja) * 2014-12-02 2019-01-09 キヤノン株式会社 表示制御装置及び表示制御装置の制御方法
CN105808182B (zh) 2015-01-15 2019-09-17 财团法人工业技术研究院 显示控制方法及系统、广告破口判断装置、影音处理装置
USD774077S1 (en) * 2015-02-09 2016-12-13 Express Scripts, Inc. Display screen with graphical user interface
US10365807B2 (en) 2015-03-02 2019-07-30 Apple Inc. Control of system zoom magnification using a rotatable input mechanism
KR102589496B1 (ko) * 2016-07-04 2023-10-16 삼성전자 주식회사 화면 표시 방법 및 이를 지원하는 전자 장치
WO2018053033A1 (en) 2016-09-15 2018-03-22 Picadipity, Inc. Automatic image display systems and methods with looped autoscrolling and static viewing modes
KR101943820B1 (ko) * 2016-12-29 2019-01-31 주식회사 카카오 회차 브라우징을 위한 시각적 정보를 표시하는 방법 및 사용자 인터페이스를 제어하는 방법
US11144141B2 (en) * 2017-01-10 2021-10-12 Razer (Asia-Pacific) Pte. Ltd. Input devices and methods for providing a scrolling input to an application
KR101968979B1 (ko) * 2017-09-26 2019-04-15 (주)투비소프트 사용자 인터페이스 구성 방법
WO2019070242A1 (en) * 2017-10-03 2019-04-11 Google Llc DATA TRANSFERS FROM A MEMORY TO MANAGE GRAPHIC OUTPUT LATENCY
USD872765S1 (en) 2017-10-17 2020-01-14 Adobe Inc. Display screen or portion thereof with icon
DK179896B1 (en) 2018-09-11 2019-08-30 Apple Inc. CONTENT-BASED TACTILE OUTPUTS
US11435830B2 (en) 2018-09-11 2022-09-06 Apple Inc. Content-based tactile outputs
CN110472168B (zh) * 2019-07-05 2024-07-05 中国平安财产保险股份有限公司 页面数据更新方法、装置、计算机设备及存储介质
WO2021034784A1 (en) 2019-08-16 2021-02-25 Poltorak Technologies, LLC Device and method for medical diagnostics
USD976950S1 (en) * 2020-10-02 2023-01-31 Lutron Technology Company Llc Display screen or portion thereof with animated graphical user interface
US20230393726A1 (en) * 2022-06-02 2023-12-07 Shopify Inc. Methods and apparatuses for providing condensable user interface

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000148126A (ja) * 1998-11-18 2000-05-26 Dream Technologies Kk 画像表示装置及び方法
US20050257166A1 (en) * 2004-05-11 2005-11-17 Tu Edgar A Fast scrolling in a graphical user interface

Family Cites Families (116)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4787051A (en) 1986-05-16 1988-11-22 Tektronix, Inc. Inertial mouse system
US4839838A (en) 1987-03-30 1989-06-13 Labiche Mitchell Spatial input apparatus
US5045843B1 (en) 1988-12-06 1996-07-16 Selectech Ltd Optical pointing device
US5440326A (en) 1990-03-21 1995-08-08 Gyration, Inc. Gyroscopic pointer
US5138154A (en) 1990-04-04 1992-08-11 Gyration Inc. Shaft angle encoder with rotating off-axis interference pattern
US5128671A (en) 1990-04-12 1992-07-07 Ltv Aerospace And Defense Company Control device having multiple degrees of freedom
US5396265A (en) 1990-09-17 1995-03-07 Massachusetts Institute Of Technology Three-dimensional tactile computer input device
US5181181A (en) 1990-09-27 1993-01-19 Triton Technologies, Inc. Computer apparatus input device for three-dimensional information
US6069594A (en) 1991-07-29 2000-05-30 Logitech, Inc. Computer input device with multiple switches using single line
US6400996B1 (en) 1999-02-01 2002-06-04 Steven M. Hoffberg Adaptive pattern recognition based control system and method
US5359348A (en) 1992-05-21 1994-10-25 Selectech, Ltd. Pointing device having improved automatic gain control and information reporting
US5543591A (en) 1992-06-08 1996-08-06 Synaptics, Incorporated Object position detector with edge motion feature and gesture recognition
US5296871A (en) 1992-07-27 1994-03-22 Paley W Bradford Three-dimensional mouse with tactile feedback
US5453758A (en) 1992-07-31 1995-09-26 Sony Corporation Input apparatus
US7098891B1 (en) 1992-09-18 2006-08-29 Pryor Timothy R Method for providing human input to a computer
JPH07284166A (ja) 1993-03-12 1995-10-27 Mitsubishi Electric Corp 遠隔操作装置
US5484355A (en) 1993-10-01 1996-01-16 Smith & Nephew Roylan, Inc. System for therapeutic exercise and evaluation
US5615132A (en) 1994-01-21 1997-03-25 Crossbow Technology, Inc. Method and apparatus for determining position and orientation of a moveable object using accelerometers
US5757360A (en) 1995-05-03 1998-05-26 Mitsubishi Electric Information Technology Center America, Inc. Hand held computer control device
US6002394A (en) 1995-10-02 1999-12-14 Starsight Telecast, Inc. Systems and methods for linking television viewers with advertisers and broadcasters
US6049823A (en) 1995-10-04 2000-04-11 Hwang; Ivan Chung-Shung Multi server, interactive, video-on-demand television system utilizing a direct-access-on-demand workgroup
US6100874A (en) 1995-11-17 2000-08-08 Immersion Corporation Force feedback mouse interface
US5703623A (en) 1996-01-24 1997-12-30 Hall; Malcolm G. Smart orientation sensing circuit for remote control
US5698784A (en) 1996-01-24 1997-12-16 Gyration, Inc. Vibratory rate gyroscope and methods of assembly and operation
US6164808A (en) 1996-02-09 2000-12-26 Murata Mfg. Co., Ltd. Three-dimensional data input device
US5825350A (en) 1996-03-13 1998-10-20 Gyration, Inc. Electronic pointing apparatus and method
US5757381A (en) * 1996-04-04 1998-05-26 Sofmap Future Design, Inc. Methods for fast scrolling of images
US5835156A (en) 1996-08-14 1998-11-10 Samsung Electroncis, Ltd. Television graphical user interface employing remote random access pointing device
US6016144A (en) 1996-08-14 2000-01-18 Samsung Electronics Co., Ltd. Multi-layered television graphical user interface
US5955988A (en) 1996-08-14 1999-09-21 Samsung Electronics Co., Ltd. Graphical user interface for establishing installation location for satellite based television system
US6115028A (en) 1996-08-22 2000-09-05 Silicon Graphics, Inc. Three dimensional input system using tilt
US5796354A (en) 1997-02-07 1998-08-18 Reality Quest Corp. Hand-attachable controller with direction sensing
US5973757A (en) * 1997-03-31 1999-10-26 Aubuchon; Mark S. Contoured and balanced remote tv control device
US5959626A (en) * 1997-05-22 1999-09-28 International Business Machines Corporation Method and apparatus for manipulating very long lists of data displayed in a graphical user interface using a layered list mechanism
KR100236630B1 (ko) * 1997-07-31 1999-12-15 구자홍 인터넷 셋 탑 박스의 영상신호 출력장치 및 화면 고속 스크롤 방법
US5912612A (en) 1997-10-14 1999-06-15 Devolpi; Dean R. Multi-speed multi-direction analog pointing device
US6353764B1 (en) 1997-11-27 2002-03-05 Matsushita Electric Industrial Co., Ltd. Control method
US6181329B1 (en) 1997-12-23 2001-01-30 Ricoh Company, Ltd. Method and apparatus for tracking a hand-held writing instrument with multiple sensors that are calibrated by placing the writing instrument in predetermined positions with respect to the writing surface
US6239797B1 (en) * 1998-04-02 2001-05-29 Partnerware Technologies Method and apparatus for remote database record scroll/update without refresh
DE69928751T2 (de) 1998-05-13 2006-09-14 Sega Corp. Pistolenförmiger Regler
US6369794B1 (en) 1998-09-09 2002-04-09 Matsushita Electric Industrial Co., Ltd. Operation indication outputting device for giving operation indication according to type of user's action
US7051360B1 (en) * 1998-11-30 2006-05-23 United Video Properties, Inc. Interactive television program guide with selectable languages
TW499816B (en) * 1998-11-30 2002-08-21 United Video Properties Inc Interactive program guide system and method
US8689265B2 (en) * 1999-03-30 2014-04-01 Tivo Inc. Multimedia mobile personalization system
US6473713B1 (en) 1999-09-20 2002-10-29 American Gnc Corporation Processing method for motion measurement
US6753849B1 (en) 1999-10-27 2004-06-22 Ken Curran & Associates Universal remote TV mouse
US6466198B1 (en) 1999-11-05 2002-10-15 Innoventions, Inc. View navigation and magnification of a hand-held device with a display
US6856326B1 (en) * 2000-01-28 2005-02-15 International Business Machines Corporation Smooth scrolling system and method
US7500917B2 (en) 2000-02-22 2009-03-10 Creative Kingdoms, Llc Magical wand and interactive play experience
US20030159051A1 (en) 2000-03-27 2003-08-21 Wilhelm Hollnagel Method for generating electronic signatures
US20010030667A1 (en) * 2000-04-10 2001-10-18 Kelts Brett R. Interactive display interface for information objects
JP2002011250A (ja) 2000-04-25 2002-01-15 Nintendo Co Ltd ゲームシステムおよび携帯ゲーム機
US6690391B1 (en) * 2000-07-13 2004-02-10 Sony Corporation Modal display, smooth scroll graphic user interface and remote command device suitable for efficient navigation and selection of dynamic data/options presented within an audio/visual system
US6757446B1 (en) 2000-11-27 2004-06-29 Microsoft Corporation System and process for image-based relativistic rendering
US7698652B2 (en) 2001-02-09 2010-04-13 Koninklijke Philips Electronics N.V. Rapid retrieval user interface designed around small displays and few buttons for searching long lists
US6929548B2 (en) 2002-04-23 2005-08-16 Xiaoling Wang Apparatus and a method for more realistic shooting video games on computers or similar devices
US6650313B2 (en) 2001-04-26 2003-11-18 International Business Machines Corporation Method and adapter for performing assistive motion data processing and/or button data processing external to a computer
US6973625B1 (en) * 2001-07-06 2005-12-06 Convergys Cmg Utah Method for creating browser-based user interface applications using a framework
US6847351B2 (en) 2001-08-13 2005-01-25 Siemens Information And Communication Mobile, Llc Tilt-based pointing for hand-held devices
US6687390B2 (en) 2001-12-04 2004-02-03 Applied Neural Conputing Ltd. System for and method of web signature recognition system based on object map
US20030107551A1 (en) 2001-12-10 2003-06-12 Dunker Garrett Storm Tilt input device
US20030146938A1 (en) * 2001-12-20 2003-08-07 Bernhard Geiger Fast scrolling through image sets containing markers
JP2003199045A (ja) * 2001-12-26 2003-07-11 Victor Co Of Japan Ltd 情報記録信号の生成方法、情報信号の再生方法、情報信号の伝送方法、情報記録信号生成装置、情報信号再生装置、情報信号伝送装置、情報信号記録媒体、及び情報信号伝送用プログラム
US6990639B2 (en) 2002-02-07 2006-01-24 Microsoft Corporation System and process for controlling electronic components in a ubiquitous computing environment using multimodal integration
US6982697B2 (en) 2002-02-07 2006-01-03 Microsoft Corporation System and process for selecting objects in a ubiquitous computing environment
US6973457B1 (en) * 2002-05-10 2005-12-06 Oracle International Corporation Method and system for scrollable cursors
AU2003239385A1 (en) 2002-05-10 2003-11-11 Richard R. Reisman Method and apparatus for browsing using multiple coordinated device
US6984208B2 (en) 2002-08-01 2006-01-10 The Hong Kong Polytechnic University Method and apparatus for sensing body gesture, posture and movement
US20040095317A1 (en) 2002-11-20 2004-05-20 Jingxi Zhang Method and apparatus of universal remote pointing control for home entertainment system and computer
US20040104891A1 (en) * 2002-11-25 2004-06-03 Frank Sacca Intertial pointer for electronic displays
US8745541B2 (en) 2003-03-25 2014-06-03 Microsoft Corporation Architecture for controlling a computer using hand gestures
US20050008148A1 (en) 2003-04-02 2005-01-13 Dov Jacobson Mouse performance identification
JP3997423B2 (ja) * 2003-04-17 2007-10-24 ソニー株式会社 情報処理装置、撮像装置および情報分類処理方法
US20040268393A1 (en) * 2003-05-08 2004-12-30 Hunleth Frank A. Control framework with a zoomable graphical user interface for organizing, selecting and launching media items
US20040229693A1 (en) 2003-05-13 2004-11-18 Clifton Lind Multiple video display gaming machine and gaming system
US7231385B2 (en) * 2003-07-21 2007-06-12 International Business Machines Corporation Method, system, and program for positioning a cursor on rows of a result table
US20050210391A1 (en) * 2003-08-11 2005-09-22 Core Mobility, Inc. Systems and methods for navigating content in an interactive ticker
KR100998899B1 (ko) * 2003-08-30 2010-12-09 엘지전자 주식회사 썸네일 영상 서비스 방법 및 방송 수신기
US7489299B2 (en) 2003-10-23 2009-02-10 Hillcrest Laboratories, Inc. User interface devices and methods employing accelerometers
US20050097601A1 (en) * 2003-10-31 2005-05-05 Daniel Danker Quick EPG navigation
US6998966B2 (en) 2003-11-26 2006-02-14 Nokia Corporation Mobile communication device having a functional cover for controlling sound applications by motion
US7227532B2 (en) * 2003-11-28 2007-06-05 Microsoft Corporation Optical projection system for computer input devices
JP2005175975A (ja) * 2003-12-12 2005-06-30 Canon Inc 画像処理装置
CN1910539A (zh) 2004-01-09 2007-02-07 皇家飞利浦电子股份有限公司 双重滚动
US7173604B2 (en) 2004-03-23 2007-02-06 Fujitsu Limited Gesture identification of controlled devices
US7301529B2 (en) 2004-03-23 2007-11-27 Fujitsu Limited Context dependent gesture response
ES2384572T3 (es) 2004-04-30 2012-07-09 Hillcrest Laboratories, Inc. Dispositivos apuntadores en el espacio libre con compensación de inclinación y usabilidad mejorada
US7239301B2 (en) 2004-04-30 2007-07-03 Hillcrest Laboratories, Inc. 3D pointing devices and methods
WO2005109215A2 (en) * 2004-04-30 2005-11-17 Hillcrest Laboratories, Inc. Methods and devices for removing unintentional movement in free space pointing devices
US7236156B2 (en) 2004-04-30 2007-06-26 Hillcrest Laboratories, Inc. Methods and devices for identifying users based on tremor
EP1596271A1 (en) * 2004-05-11 2005-11-16 Hitachi Europe S.r.l. Method for displaying information and information display system
US20050289524A1 (en) * 2004-06-22 2005-12-29 Mcginnes Simon Systems and methods for software based on business concepts
US20060034536A1 (en) * 2004-06-23 2006-02-16 Ogren Wayne E Systems and methods relating to magnitude enhancement analysis suitable for high bit level displays on low bit level systems, determining the material thickness, and 3D visualization of color space dimensions
US7379050B2 (en) * 2004-10-08 2008-05-27 Zippy Technology Corp. Input device
US7683883B2 (en) 2004-11-02 2010-03-23 Pierre Touma 3D mouse and game controller based on spherical coordinates system and system for use
WO2006088831A2 (en) * 2005-02-14 2006-08-24 Hillcrest Laboratories, Inc. Methods and systems for enhancing television applications using 3d pointing
US7355595B2 (en) * 2005-04-15 2008-04-08 Microsoft Corporation Tactile device for scrolling
US8935630B2 (en) * 2005-05-04 2015-01-13 Hillcrest Laboratories, Inc. Methods and systems for scrolling and pointing in user interfaces
US20060262116A1 (en) * 2005-05-19 2006-11-23 Hillcrest Laboratories, Inc. Global navigation objects in user interfaces
JP2009500923A (ja) * 2005-07-01 2009-01-08 ヒルクレスト・ラボラトリーズ・インコーポレイテッド 3次元指示装置
KR100732166B1 (ko) * 2005-09-02 2007-06-27 엘지전자 주식회사 컨텐츠 검색 기능을 갖는 이동통신단말기 및 이를 이용한방법
US20070100915A1 (en) * 2005-10-31 2007-05-03 Rose Daniel E Methods for displaying dynamic suggestions in a user interface
US20070136268A1 (en) * 2005-12-09 2007-06-14 Microsoft Corporation Just in time loading list
KR100817052B1 (ko) * 2006-01-10 2008-03-26 삼성전자주식회사 높은 메모리 대역폭을 요구하지 않는 영상 신호 처리 장치및 영상 신호 처리 방법
US20070206022A1 (en) * 2006-03-06 2007-09-06 The Oakmont Group, Inc. Method and apparatus for associating text with animated graphics
US7353134B2 (en) 2006-03-09 2008-04-01 Dean A. Cirielli Three-dimensional position and motion telemetry input
US7188045B1 (en) 2006-03-09 2007-03-06 Dean A. Cirielli Three-dimensional position and motion telemetry input
TWI367457B (en) * 2006-07-03 2012-07-01 Nippon Telegraph & Telephone Image processing method and apparatus, image processing program, and storage medium for storing the program
US7667719B2 (en) * 2006-09-29 2010-02-23 Amazon Technologies, Inc. Image-based document display
JP2009093356A (ja) * 2007-10-05 2009-04-30 Sony Corp 情報処理装置およびスクロール方法
US8359545B2 (en) * 2007-10-16 2013-01-22 Hillcrest Laboratories, Inc. Fast and smooth scrolling of user interfaces operating on thin clients
US7930646B2 (en) * 2007-10-19 2011-04-19 Microsoft Corporation Dynamically updated virtual list view
US7877702B2 (en) * 2007-11-20 2011-01-25 International Business Machines Corporation Tree widget data population
WO2009116582A1 (ja) * 2008-03-19 2009-09-24 国立大学法人 北海道大学 動画検索装置および動画検索プログラム
US8264612B2 (en) * 2009-09-10 2012-09-11 Ali Corporation Method of raster-scan search for multi-region on-screen display and system using the same
US9619131B2 (en) * 2013-02-22 2017-04-11 Blackberry Limited Methods and devices for displaying content

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000148126A (ja) * 1998-11-18 2000-05-26 Dream Technologies Kk 画像表示装置及び方法
US20050257166A1 (en) * 2004-05-11 2005-11-17 Tu Edgar A Fast scrolling in a graphical user interface

Also Published As

Publication number Publication date
US20090100373A1 (en) 2009-04-16
JP2011501289A (ja) 2011-01-06
WO2009051665A1 (en) 2009-04-23
US9400598B2 (en) 2016-07-26
US8359545B2 (en) 2013-01-22
WO2009051665A8 (en) 2010-07-29
US20130132894A1 (en) 2013-05-23
KR20100083827A (ko) 2010-07-22

Similar Documents

Publication Publication Date Title
KR101542274B1 (ko) 씬 클라이언트 상에서 동작하는 사용자 인터페이스의 빠르고 부드러운 스크롤링
JP5553987B2 (ja) ユーザインターフェースにおけるスクロールおよびポインティングの方法およびシステム
KR100994011B1 (ko) 미디어 항목들을 편성하고, 선택하며, 개시하기 위한주밍(zooming) 가능한 그래픽 유저 인터페이스를갖춘 제어 프레임워크
US20060262116A1 (en) Global navigation objects in user interfaces
KR101190462B1 (ko) 1-대-다 객체를 처리하기 위한 스케일링 및 레이아웃 방법및 시스템
EP2740264B1 (en) Video peeking
CN102549539B (zh) 网格导航的装置和方法
US20170272807A1 (en) Overlay device, system and method
US20080222675A1 (en) Pointing capability and associated user interface elements for television user interfaces
US20120266069A1 (en) TV Internet Browser
US20110231484A1 (en) TV Internet Browser
US20070067798A1 (en) Hover-buttons for user interfaces
US9459783B2 (en) Zooming and panning widget for internet browsers
EP1851955A2 (en) Methods and systems for enhancing television applications using 3d pointing

Legal Events

Date Code Title Description
PA0105 International application

St.27 status event code: A-0-1-A10-A15-nap-PA0105

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

R15-X000 Change to inventor requested

St.27 status event code: A-3-3-R10-R15-oth-X000

R16-X000 Change to inventor recorded

St.27 status event code: A-3-3-R10-R16-oth-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

A201 Request for examination
P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U12-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R14-asn-PN2301

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20190731

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20190731