KR20140009520A - 유저 인터페이스에서의 리스트들의 직관적 랩핑을 위한 방법 및 장치 - Google Patents

유저 인터페이스에서의 리스트들의 직관적 랩핑을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20140009520A
KR20140009520A KR1020137030973A KR20137030973A KR20140009520A KR 20140009520 A KR20140009520 A KR 20140009520A KR 1020137030973 A KR1020137030973 A KR 1020137030973A KR 20137030973 A KR20137030973 A KR 20137030973A KR 20140009520 A KR20140009520 A KR 20140009520A
Authority
KR
South Korea
Prior art keywords
content
display
end position
boundary
touch screen
Prior art date
Application number
KR1020137030973A
Other languages
English (en)
Other versions
KR101540531B1 (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 KR20140009520A publication Critical patent/KR20140009520A/ko
Application granted granted Critical
Publication of KR101540531B1 publication Critical patent/KR101540531B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0481Interaction 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/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0487Interaction 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/0488Interaction 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
    • G06F3/04883Interaction 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 for inputting data by handwriting, e.g. gesture or text

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

유저 인터페이스에서의 리스트들의 직관적 랩핑을 위한 방법 및 장치{METHOD AND APPARATUS FOR INTUITIVE WRAPPING OF LISTS IN A USER INTERFACE}
본 발명은 일반적으로 컴퓨팅 디바이스 유저 인터페이스들에 관한 것으로, 보다 구체적으로, 그래픽 유저 인터페이스에서 리스트들을 표시 (present) 하는 방법들 및 시스템들에 관한 것이다.
포터블 및 모바일 컴퓨팅 디바이스들은 정보를 찾고 디스플레이하기 위한 최근 사회의 유비쿼터스 툴들로 되고 있다. 유저들이 스마트 폰들, iPod들, 컴퓨터들 및 다른 전자 디바이스들과 상호작용하는 주요 디스플레이들은 몇몇 종류의 리스트들이다. 음악 리스트들, 연락처들, 문서들, 미디어 파일들, 설정들, 애플리케이션 메뉴들, 이메일 인박스들, 전자 책들은 모두 시작과 끝을 갖는 리스트들로서 자주 구성되어 표시되는 수직 또는 수평 스크롤 뷰들에 잘 맞추어진다. 많은 유저 인터페이스들 (UI들) 은 리스트 뷰들의 에지들을 처리하는 방법을 구현한다. 정밀한 바운더리 케이스를 처리하는 방법들의 예들은 문서를 스트레칭하고, 블랭크 공간을 띄우고 "에지 초과 영역 (beyond the edge)" 을 보여줌으로써 구현된다. 대부분의 유저 인터페이스들은 유저가 다른 끝에 도달하기 위해서는 리스트 전반에 걸쳐 스크롤 백할 것을 요구한다.
여러 양태들은 리스트들의 끝 바운더리들 전체에 걸쳐 효과적인 내비게이션을 가능하게 하는 직관적 응답을 유저 입력들에 제공하는 컴퓨팅 디바이스 상에서 실행되는 유저 인터페이스 방법을 포함한다. 여러 양태들은 유저로 하여금 어느 정도 리스트를 횡단할 필요 없이도 리스트의 시작에서 끝으로 또는 리스트의 끝에서 시작으로 이동하도록 한다. 이는 랩핑 (wrapping) 이라 지칭된다. 구체적으로, 여러 양태들은 그래픽 유저 인터페이스 상에 리스트를 표시하는 방법을 포함하며, 본 방법은 컨텐츠 디스플레이 이동 유저 입력을 컴퓨팅 디바이스에서 수신하는 단계, 유저 입력에 기초하여 컨텐츠 이동의 끝 위치를 결정하는 단계, 결정된 컨텐츠 이동의 끝 위치가 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장할지의 여부를 결정하는 단계, 결정된 컨텐츠 이동의 끝 위치가 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장하지 않는다면 디스플레이에 대해 컨텐츠 바운더리의 현재 측에 컨텐츠의 엘리먼트를 스냅 (snapping) 하는 단계, 및 결정된 컨텐츠 이동의 끝 위치가 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장한다면, 디스플레이에 대해 컨텐츠 바운더리의 반대측에 컨텐츠의 엘리먼트를 스냅하는 단계를 포함한다.
여러 양태들은 또한, 컨텐츠 이동의 끝 위치가 컨텐츠의 바운더리로 하여금 디스플레이의 에지의 제 2 임계 거리 내에 오게 하는지의 여부를 결정하는 단계, 컨텐츠 바운더리에 도달되기 직전임을 나타내기 위하여 컨텐츠 이동 디스플레이의 애니메이션을 변경하는 단계, 유저의 손가락이 터치 스크린 디스플레이와 더 이상 접촉하고 있지 않을 때를 결정하는 단계, 모멘텀 스크롤 애니메이션을 개시하는 단계, 및 결정된 컨텐츠 이동의 끝 위치가 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장될 때 디스플레이에 대해 컨텐츠 바운더리의 반대측에 컨텐츠의 엘리먼트를 스냅하기 전에 컨텐츠 바운더리가 디스플레이의 에지에 접근함에 따라 모멘텀 스크롤 애니메이션을 가속화시키는 단계를 포함한다. 컴퓨팅 디바이스에서 컨텐츠 디스플레이 이동 유저 입력을 수신하는 단계는 터치 스크린 디스플레이 상의 유저 손가락 드래그에 응답하여 입력을 수신하고/하거나 터치 스크린 디스플레이 상의 플릭 (flick) 제스쳐 입력을 수신하는 단계를 포함할 수도 있다. 디스플레이에 대해 컨텐츠의 엘리먼트를 스냅하는 것은 유저가 유저 입력을 중지하는 것에 응답하여 발생할 수도 있고, 디스플레이에 대해 컨텐츠 바운더리의 반대측에 컨텐츠의 엘리먼트를 스냅하는 것은 결정된 컨텐츠 이동의 끝 위치가 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장될 때 발생할 수도 있다. 컨텐츠 이동 스크롤 애니메이션의 끝 위치를 결정하는 단계는 모멘텀 스크롤이 완료될 때 도달될 컨텐츠 이동의 끝 위치를 결정하는 단계를 포함할 수도 있다.
추가 양태는 프로세서에 커플링된 메모리 및 디스플레이를 포함하는 컴퓨팅 디바이스를 포함하며, 프로세서는 상술한 방법들의 동작들을 수행하는 프로세서 실행가능 명령들로 구성된다. 추가 양태는 상술한 방법들의 동작들을 수행하기 위한 수단을 포함하는 컴퓨팅 디바이스를 포함한다. 추가 양태는 컴퓨팅 디바이스의 프로세서로 하여금 상술한 방법들의 동작들을 수행하게 하도록 구성된 프로세서 실행가능 명령들이 저장되어 있는 비일시적 프로세서 판독가능 저장 매체를 포함한다.
이 명세서 내에 포함되어 명세서의 일부를 구성하는 첨부된 도면들은 본 발명의 예시적인 양태들을 나타낸다. 위에 주어진 개괄적인 설명과 아래 주어진 상세한 설명과 함께, 도면들은 본 발명의 특징들을 설명하는 것을 보조한다.
도 1a 내지 도 1d 는 여러 양태들에 따라 그래픽 유저 인터페이스와 유저 상호작용으로부터 야기되는 디스플레이들을 예시하는 컴퓨팅 디바이스의 전면도들이다.
도 2 는 여러 양태들에 따라 유저 스크롤 입력 커맨드에 응답하여 그래픽 유저 인터페이스 상에 리스트를 표시하는 방법의 프로세스 흐름도이다.
도 3 은 여러 양태들에 따라 유저 스크롤 입력 커맨드에 응답하여 그래픽 유저 인터페이스 상에 리스트를 표시하는 다른 방법의 프로세스 흐름도이다.
도 4 는 여러 양태들에 따라 유저 스크롤 입력 커맨드에 응답하여 그래픽 유저 인터페이스 상에 리스트를 표시하는 다른 방법의 프로세스 흐름도이다.
도 5 는 여러 양태들에 따라 모멘텀 스크롤 ("플릭") 유저 입력에 응답하여 그래픽 유저 인터페이스 상에 리스트 스크롤을 애니메이션하는 방법의 프로세스 흐름도이다.
도 6 은 여러 양태들에 따라 모멘텀 스크롤 유저 입력에 응답하여 그래픽 유저 인터페이스 상에 리스트 스크롤을 애니메이션하는 다른 방법의 프로세스 흐름도이다.
도 7 은 여러 양태 방법들의 의도하지 않은 활성화 (inadvertent activation) 를 방지하는 흐름도의 일부분이다.
도 8 은 여러 실시형태들에서의 사용에 적합한 예시적인 모바일 컴퓨팅 디바이스의 컴포넌트 블록도이다.
도 9 는 여러 실시형태들에서의 사용에 적합한 예시적인 퍼스널 컴퓨터의 컴포넌트 블록도이다.
여러 양태들이 첨부 도면들을 참조하여 상세히 설명될 것이다. 가능한 곳이라면 어디서든, 동일한 참조 번호들이 도면들 전체를 통해서 동일하거나 유사한 부분들을 참조하는데 사용될 것이다. 특정한 예들 및 구현예들에 대한 언급들은 예시의 목적을 위한 것이고, 발명 또는 청구항들의 범위를 제한하려는 의도는 아니다.
단어 "예시적인"은 여기서는 "예, 사례, 또는 예시로서 역할을 한다"는 의미로 사용된다. "예시적인" 것으로서 여기서 설명된 어떤 구현예라도 다른 구현예들보다 바람직하거나 유익하다고 생각할 필요는 없다.
여기에 이용된 용어 "컴퓨팅 디바이스" 및 "모바일 컴퓨팅 디바이스"는 셀룰러 전화기들, 퍼스널 텔레비젼 수신기들, 개인 휴대 정보 단말기들 (PDA), 팜톱 컴퓨터들, 노트북 컴퓨터들, 퍼스널 컴퓨터들, 무선 전자 메일 수신기들, 및 셀룰러 전화기 수신기들 (예를 들어, BLackberry® 및 Treo® 디바이스들), 멀티미디어 인터넷 실행가능 셀룰러 전화기들 (예를 들어, Blackberry Storm®, 및 프로그래밍가능 프로세서, 메모리 및 디스플레이를 포함하는 유사한 전자 디바이스들 중 어느 하나 또는 전부를 지칭한다.
퍼스널 컴퓨팅 디바이스들 상에서 구동하는 많은 최신 애플리케이션들은 다스플레이 스크린 상에 표시된 뷰가능 부분을 초과하여 확장하는 리스트들 또는 페이지들의 형태로 디스플레이된 문서들의 프리젠테이션을 포함한다. 예들은 전자 메일 애플리케이션에서의 이메일들의 리스트들, 개인 폰북 애플리케이션에서의 연락처 리스트들, 달력 애플리케이션에서의 이벤트들의 리스트들, 전자 북들, 및 워드 프로세싱 또는 문서 뷰어 애플리케이션들에서의 긴 텍스트 문서들을 포함한다. 대부분의 그래픽 유저 인터페이스들은 디스플레이의 바운더리들을 초과하는 부분들을 뷰하기 위하여 유저들로 하여금 이러한 문서들 전체를 스크롤하도록 한다. 이전의 그래픽 유저 인터페이스들은 시작이든 끝이든 문서 또는 파일의 끝에 도달될 때까지 이러한 스크롤을 실행하였다. 그 시점에서, 유저는 문서의 다른 부분들을 뷰하기 위하여 스크롤 백해야 한다. 예를 들어, 유저가 자신의 컨텐츠의 끝 근처에서 리스트를 뷰하고 있고 리스트의 시작 근처의 엔트리를 뷰하기를 원한다면, 그래픽 유저 인터페이스는 리스트가 랩핑할 수 있다면 (즉, 마지막 엔트리로부터 첫번째 엔트리로 그리고 그 첫번째 엔트리로부터 마지막 엔트리로 이동한다면) 현재 디스플레이된 엔트리가 원하는 리스트 엔트리에 더 가까운 경우에도 유저가 리스트 전체를 스크롤 백해야 하는 것이 요구된다. 그래픽 유저 인터페이스들에서의 리스트들의 랩핑은 (알파벳화될 수도 또는 넘버링될 수도 없는) 리스트가 (스크롤의 방향에 의존하여) 끝 또는 시작을 지나 스크롤하여 다른 끝 (즉, 시작 또는 끝) 으로 랩핑할 때를 유저가 인식하지 못할 수도 있기 때문에 유저 혼란을 일으킬 수 있다.
여러 양태들은 그래픽 유저 인터페이스에서 문서의 시작 또는 끝 양쪽 모두에서 디스플레이 윈도우 내에 컨텐츠의 이동들을 애니메이션하기 위한 방법을 제공한다. 양태의 방법들은 유저로 하여금 문서 또는 리스트의 바운더리의 일측에서의 엔트리들 간을 신속하게 교대시키도록 허용하는 한편, 리스트 랩핑이 발생하기 직전임을 나타내는 트랜지션들을 제공한다. 용이한 참조를 위하여, 디스플레이 윈도우 내에서의 컨텐츠 이동들의 이러한 애니메이션은 스크롤 또는 스크롤 애니메이션이라 지칭되지만, 그러나, 청구항들은 스크롤 모션들로 제한되지 않으며 다른 유형의 이동 애니메이션들, 이를 테면, 슬라이딩, (전자 북의 페이지들에서와 같은) 플립핑, 페이딩 등을 포함한다. 양태의 방법들은 이동 (예를 들어, 스크롤) 거동에서의 가시적 변화들 및 유저가 스크롤 명령을 종료할 때 디스플레이 윈도우의 에지 (예를 들어, 상단부, 하단부, 측면) 에 대한 문서 바운더리의 "스냅" 을 제공하기 위해 컨텐츠 이동 애니메이션들을 조정하는 것을 더 포함할 수도 있다. 양태들은 리스트의 에지를 나타내는 명료한 메카니즘을 제공하여, 리스트의 끝 또는 시작으로 신속하게 점프하도록 하는 리스트 랩핑을 허용하며, 유저가 액티브 트랜지션을 끝낼 때 무슨 리스트가 해당하는지를 나타낸다. 이러한 방식으로, 유저는 리스트 바운더리에 도달될 때를 인지할 수도 있으며, 리스트 랩핑이 실행되기 직전일 때를 나타내는 직관적 피드백을 제공받을 수도 있다. 스크롤을 간단히 계속 진행하기 보다는 적절한 디스플레이 에지에 대한 리스트 시작 또는 끝의 스냅에 이어서 가시적 표시가 후속할 수도 있다.
개요에서, 여러 양태들의 방법들 및 디바이스들은 리스트 바운더리에 도달한다는 또는 리스트 바운더리에 곧 도달할 것이라는 직관적 비쥬얼 표시를, 이를 테면, 속도, 스크롤-드래그-비 또는 방향 변화를 통하여 그래픽 유저 인터페이스에 제공한다. 양태들은 충분한 유저 입력이 적용될 때 리스트로 하여금 리스트의 다른 끝으로 스냅하도록 (즉, 스크롤 업하고 있다면, 시작에서 끝으로, 또는 스크롤 다운하고 있다면 끝에서 시작으로) 나타나게 하는 방식으로 그래픽 유저 인터페이스 상의 리스트를 표시하기 위한 메카니즘을 추가로 제공한다. 이러한 추가적인 유저 입력은 예를 들어, 리스트의 끝이 나타내어진 후, 유저 입력 메카니즘을 통하여 (예를 들어, 터치 스크린 상에서 손가락을 드래그시키거나 또는 컴퓨터 마우스를 통하여 클릭 또는 드래그 입력을 수행함으로써) 유저에 의한 연속되는 스크롤 명령을 포함할 수도 있다. 리스트의 끝 또는 시작에 대하여 디스플레이된 스냅은 또한 플릭 제스쳐에 의해 개시되는 모멘텀 리스트 스크롤에 응답하여 구현될 수도 있고 여기에서 모멘텀 스크롤은 리스트 바운더리 (예를 들어, 리스트의 시작 또는 끝) 을 초과하는 임계 "거리"에서 리스트를 달리 스크롤한다.
여러 양태들은 특히 터치 스크린 디스플레이를 갖고 드래그 및 플릭 터치 스크린 제스쳐들과 연관된 애니메이션들에 관련된 컴퓨팅 디바이스들에 적용가능하다. 그러나, 양태들 및 청구항들은 청구항들에 구체적으로 언급되어 있지 않다면, 이들 유형의 유저 인터페이스들로 제한되지 않는다. 예를 들어, 양태들은 다른 유형들의 터치 인터페이스들, 이를 테면, Apple iPod 의 로터리 터치 센서 및 랩톱 컴퓨터들의 터치 패드들에서 구현될 수도 있다. 추가로, 양태들은 또한 다른 유형들의 포인팅 디바이스, 이를 테면, 컴퓨터 마우스 또는 트랙볼로 구성된 컴퓨팅 디바이스들에서 구현될 수도 있다. 따라서, 여러 양태들이 터치 스크린 인터페이스들 실시예들을 참조로 설명되어 있지만, 청구항들은 청구항들에 구체적으로 언급되어 있지 않다면, 터치 스크린 인터페이스 애니메이션들로 제한되지 않아야 한다. 또한, 피드백 메카니즘들을 나타내는 여러 리스트가 이용될 수도 있어, 청구항들이 구체적으로 언급되어 있지 않다면 특정 애니메이션 피쳐로 제한되지 않아야 한다. 그러나, 본 발명이 구현될 수 있는 방법의 예들을 제공하기 위하여 다음 도면들은 두가지 실시형태들을 나타낸다.
일 양태에서, 리스트의 바운더리에 도달되고 디스플레이된 컨텐츠가 컨텐츠의 끝 또는 시작 에지에 스냅되기 직전 또는 스냅되는 중일 때, 이 조건은 여러 방식으로, 이를 테면, 쉐이딩, 햅틱 피드백 (예를 들어, 디바이스 진동), 스크롤 속도에서의 트랜지션, 단위 드래그 당 스크롤의 감소량, 및/또는 리스트 스크롤의 방향에서의 변화로 나타내어질 수도 있다. 스크롤 애니메이션에서의 리스트의 끝 또는 시작과 같은 이러한 임박한 리스트 바운더리의 표시들은 문서 또는 리스트의 가시적 부분들 (즉, 디스플레이 윈도우 내에 나타나는 이들 부분들) 또는 문서 또는 리스트의 나머지 부분 또는 일부분에 기초하여 애니메이션 효과를 정의하는 알고리즘을 통하여 실현될 수도 있다. 이러한 알고리즘은 또한 디스플레이에 대해 문서를 "스냅"하는 방향을 (즉, 역방향 스크롤에서는 시작에서 끝으로, 또는 순방향 스크롤에서는 끝에서 시작으로) 결정할 수도 있다. 몇몇 양태들에서, 임박한 리스트 바운더리 및 리스트의 계류중인 랩핑 및 스냅의 이 비쥬얼 표시는 문서의 에지에 도달하거나 접근하고 있을 때 저항성 스크롤 애니메이션을 포함할 수도 있다. 이러한 저항성 스크롤 애니메이션에서, 터치 스크린 디스플레이 상의 손가락 드래그에 의해 (또는 다른 유저 입력에 의해) 물리적으로 터치되는 픽셀들의 수는 리스트들이 정상 스크롤 애니메이션에서 스크롤되는 픽셀들의 수보다 더 크다. 이 애니메이션 효과는 리스트 드래그 또는 저항성 스크롤을 에뮬레이트한다. 다른 유사한 효과들, 이를 테면, 디스플레이되는 리스트 엔트리들 간의 간격을 증가시키거나 디스플레이를 스트레칭하는 것도 또한, 또는 대안으로서 실현될 수도 있다.
일 양태에서, 방법들 및 컴퓨팅 디바이스들은 리스트 바운더리가 스크린 또는 뷰가능한 컨텐츠 영역의 에지와 손가락 또는 문서 간의 거리에 도달시 디스플레이 내의 리스트의 스냅이 개시되도록 구성될 수도 있다. 이 양태에서, 컨텐츠는 문서의 대응하는 에지 (예를 들어, 문서의 끝 또는 시작) 를 스크린 또는 뷰가능한 컨텐츠 영역의 에지 (예를 들어, 디스플레이의 상단 또는 하단 에지) 와 정렬하도록 스냅할 수도 있다.
추가 양태에서, 본 방법들 및 컴퓨팅 디바이스들은 유저의 손가락이 터치 스크린 디스플레이 상에서 임계 거리를 이동할 때까지 애니메이션을 실행하지 않음으로써 의도하지 않은 활성화를 방지하도록 구성될 수도 있다. 그 임계 거리가 이루어질 때까지, 컨텐츠는 이동하지 않은 상태로 유지된다. 임계 손가락 드래그 거리 (또는 다른 유저 입력 임계) 에 도달하면, 컨텐츠는 계산된 "라이브-스크롤" 오프셋으로 점프할 수도 있고 여기에서부터 여러 양태들의 스크롤 애니메이션을 진행할 수도 있다.
용이한 참조를 위하여, 여러 양태들이 시작 및 끝을 갖는 리스트들의 형태의 파일들의 디스플레이들에 대하여 설명된다. 그러나, 양태들은 리스트들로 제한되는 것은 아니며, 일반적으로 유저들이 (예를 들어, 스크롤 또는 플릭 커맨드에 의해) 디스플레이 스크린에 대하여 컨텐츠를 이동시키는 임의의 문서 디스플레이 애플리케이션에 또는 정상 스크롤이 진행되지 않는 바운더리들을 갖는 파일들에도 적용가능하다. 예를 들어, 양태들은 수평 리스트들 또는 파일 구성들에 적용될 수도 있으며, 그 일례는 전자 북이다. 전자 북은 통상적으로 복수의 페이지 이미지들을 포함하는 파일들 또는 장 (chapter) 으로 구성될 수도 있는 서브파일들로서 구성된다. 전자 북 애플리케이션들은 (예를 들어, "페이지"를 회전시키기 위하여 터치 스크린 디스플레이를 따라 드래그함으로써) 유저 입력들에 응답하여 페이지들 전체에 걸쳐 스크롤하는 것을 실행한다. 전자 북 파일의 스크롤은 단일 페이지의 상단에서 하단으로 수직 방향으로 뿐만 아니라 페이지에서 페이지로 수평 방향으로도 실행될 수도 있다. 따라서, 전자 북에서의 파일 바운더리들은 북 자체 내에서 또는 각각의 장에서 첫번째 및 마지막 페이지들에서 뿐만 아니라 각각의 페이지의 상단 및 하단에서 만날 수도 있다. 따라서, 리스트들에 대한 레퍼런스들 및 리스트의 끝 및 시작은 정상 스크롤 기능이 금지 또는 억제될 수도 있는 컨텐츠 바운더리들을 갖는 스크롤가능 전자 문서의 어떠한 형태도 포함하는 것으로 이해되어야 한다.
일 양태에 따른 기능의 일례는 알파벳 순으로 구성된 연락처 리스트의 형태로 된 스크롤가능 리스트의 일례를 나타내는 도 1a 내지 도 1d 에 나타나 있다. 도 1a 를 참조하여 보면, 이러한 애플리케이션은 복수의 리스트 엔트리들 (104) 의 형태로 모바일 컴퓨팅 디바이스 (100) 상의 디스플레이 (102) 상에 표시될 수도 있다. 이 예에서, 리스트 엔트리들은 디스플레이 (102) 상단에서 첫번째 엔트리 (110) 로부터 시작하여, 디스플레이 영역 내에 맞추어진 가능한 많은 리스트 엔트리들 (104) 을 포함하는 것으로 알파벳 순서로 구성되어 있다. 디스플레이 영역 (102) 을 초과하여 확장하는 리스트의 부분들을 뷰하기 위하여, 유저는 이를 테면, 유저가 리스트를 스크롤하기 원하는 방향으로 터치 스크린 디스플레이 (102) 상에서 손가락 (106) 을 드래그함으로써 리스트 전반을 스크롤할 수도 있다. 리스트의 스크롤은 리스트의 끝에 도달할 때까지 진행할 수도 있다. 이는 리스트 (100) 에서의 마지막 엔트리 (108) 가 디스플레이 영역 (102) 의 하단에 나타남을 보여주는 도 1b 에 나타나 있다. 이 점에 있어서, 통상의 유저 인터페이스는 이를 테면 하류 방향으로 손가락 (106) 을 드래그함으로써 리스트에서의 첫번째 엔트리 (110) 로 되돌아가기 위하여 스크롤 방향을 반대로 하도록 유저에 요구한다.
여러 양태들은 유저가 리스트의 시작 또는 끝에 신속하게 액세스할 수 있도록 리스트를 랩핑 어라운드시킴으로써 유저가 일단에서 타단으로 리스트를 신속하게 내비게이션하는 것을 허용한다. 유저 입력이 리스트로 하여금 (스크롤 입력 커맨드의 방향에 의존하여) 리스트의 끝 또는 시작에 도달하도록 할 때, 도 1c 에 나타낸 바와 같이 리스트가 랩핑하기 직전임을 나타내기 위하여 리스트의 타단 (즉, 시작 또는 끝) 이 뷰 내에 나타날 수도 있다. 아래 보다 자세히 설명될 바와 같이, 디스플레이는 터치 스크린 디스플레이 상의 연속되는 유저 핑거 드래그에 대한 스크롤의 응답성을 감소시키거나 또는 스크롤 속도를 느리게 함에 의한 것과 같이 리스트의 끝에 접근하고 있다는 직관적 표시들을 제공할 수도 있다. 예를 들어, 도 1c 는 터치 스크린 디스플레이 상에서의 유저의 손가락 (106) 을 연속적으로 드래그하는 것이, 리스트를 보다 느리게 이동하게 되고 (즉, 소수의 픽셀들로도 손가락 드래그에 의해 커버되는 모든 픽셀을 트래버스하게 하고) 마지막 리스트 엔트리 (108) 와 첫번째 리스트 엔트리 (110) 간에 갭 (112) 을 형성하게 되는 양태를 나타낸다. 이러한 시각적 표시들은 그래픽 유저 인터페이스가 리스트를 시작으로 (또는 스크롤 방향에 의존하여 그 반대로) 랩핑 어라운드하기 직전임을 유저에게 통지한다. 리스트 스냅을 완료하기 위하여, 유저는 터치 스크린 디스플레이 (102) 로부터 손가락 (106) 을 뗄 수도 있고 이에 응답하여 컴퓨팅 디바이스 (100) 의 그래픽 유저 인터페이스가 리스트의 시작으로 디스플레이를 스냅시켜, 도 1d 에 나타낸 바와 같이, 디스플레이 (102) 의 상단에 리스트 (110) 의 첫번째 아이템을 배치시킨다. 이 기능은 유저로 하여금 리스트의 끝에서 리스트의 시작으로 신속하게 이동하게 한다. 유저가 다른 방향으로 (즉, 리스트의 시작에서 리스트의 끝으로) 스크롤하기 원하다면, 유저는 (예를 들어, 나타낸 디스플레이에서 하류 방향으로 손가락 (106) 을 드래그함으로써) 터치 스크린 디스플레이 (102) 상에 손가락 드래그의 방향을 간단히 반대로 할 수도 있다.
도 1a 내지 도 1d 는 비교적 느린 스크롤을 완료하기 위한 손가락 드래그 입력을 나타내고 있지만, 유사한 방법들이 고속 또는 모멘텀 스크롤에서 구현될 수도 있다, 이를 테면, 터치 스크린 디스플레이 상에서 실행되는 "플릭" 제스쳐에 응답하여 개시될 수도 있다. 이 양태에서, 터치 스크린 디스플레이 (102) 상에서 플릭 유형의 모션으로의 유저의 손가락 (106) 의 고속 움직임은 플릭 제스쳐의 속도에 의해 결정되는 거리에 대하여 리스트 전반에 걸쳐 고속으로 스크롤하는 모멘텀 스트롤을 개시할 수도 있다. 여러 양태들에서, 모멘텀 스크롤의 투사된 끝 (즉, 스크롤링 애니메이션이 중지되는 지점) 이 리스트 바운더리 (즉, 리스트의 끝 또는 시작) 를 초과하여 확장한다면, 그래픽 유저 인터페이스는 다른 끝에 대한 리스트 바운더리를 랩핑 어라운드하고 디스플레이 (102) 상에서 새로운 끝을 대신 스냅하는 리스트를 애니메이션할 수도 있다. 이 애니메이션은 리스트의 끝 또는 시작에 접근할 때 가속화한 후 후속하여 리스트의 끝 또는 시작을 디스플레이의 대응하는 에지 (예를 들어, 상단 또는 하단) 에 대해 스냅하는 것과 같이, 리스트 바운더리에 접근하고 있다는 표시들을 포함할 수도 있다.
유저 스크롤 커맨드 (예를 들어, 터치 스크린 디스플레이에 대한 드래그 입력) 에 응답하여 양태를 실시하는 예시적인 방법 (200) 이 도 2 에 나타나 있다. 이 방법 (200) 은 적절한 프로세서 실행가능 명령들에 의해 프로세서에 의해 구성함으로써 컴퓨팅 디바이스의 프로세서 또는 디스플레이 프로세서 내에서 구현될 수도 있다. 블록 202 에서의 방법 (200) 에서, 컴퓨팅 디바이스는 그래픽 유저 인터페이스로부터 유저 스크롤 커맨드 입력을 수신할 수도 있다. 예를 들어, 이 입력은 유저가 손가락으로 표면을 터치하고 그 손가락을 선형 방식으로 이동시키는 것에 응답하여 터치 스크린 디스플레이로부터 수신될 수도 있다. 다른 유형들의 유저 입력 디바이스들이 탑재된 컴퓨팅 디바이스들에서, 이러한 스크롤 커맨드 유저 입력은 터치패드, 트랙볼, 컴퓨터 마우스 또는 다른 적절한 유저 입력 디바이스로부터 수신될 수도 있다. 결정 블록 204 에서, 프로세서는 리스트 바운더리가 디스플레이 에지의 임계 거리 내에 있는지 여부를 결정할 수도 있다. 이 결정은 수신된 유저 입력 및 디스플레이에 대한 리스트의 현재 부분에 기초할 수도 있다. 리스트 바운더리가 디스플레이 바운더리의 임계 거리 내에 있지 않다면 (즉, 결정 블록 204 = "아니오"), 프로세서는 블록 206 에서 정상 방식으로 리스트의 스크롤 모션을 애니메이션하는 것을 계속 진행할 수도 있다. 이 프로세스는 유저 입력이 리스트 바운더리가 디스플레이의 임계 거리 내에 들도록 하는 (즉, 결정 블록 204 = "예") 그러한 시간까지 블록 202 에서 프로세서가 추가의 유저 입력들을 수신하도록 되돌아가는 것으로 계속 진행할 수도 있다. 이 조건이 발생할 경우, 결정 블록 208 에서, 프로세서는 또한, 리스트 바운더리에 도달되는지 (즉, 리스트 바운더리가 디스플레이 윈도우 내에 나타나는지) 여부를 결정할 수도 있다. 리스트 바운더리에 도달하지 않았다면 (즉, 결정 블록 208 = "아니오"), 프로세서는 블록 210 에서 리스트 바운더리에 도달되기 직전임을 나타내도록 스크롤 애니메이션을 조정할 수도 있다. 스크롤 애니메이션에 대한 이러한 조정은 스크롤 속도 (rate) 를 느리게 하는 것, 리스트를 쉐이딩하는 것, 이동을 방해하는 것으로 나타나거나 동일한 양의 스크롤 이동을 실현하는데 보다 큰 유저 입력을 필요로 하는 것과 같이 유저 입력에 대한 스크롤 이동 비를 변경하는 것, 디스플레이를 쉐이크하는 것, 또는 다른 가시적 효과들을 포함할 수도 있다. 일 양태에서, 펜딩 리스트 바운더리를 유저에게 알리기 위해 다른 햅틱 피드백 메카니즘들이 또한, 또는 대안적으로 구현될 수도 있다. 그 후, 프로세서는 유저 입력들을 추가로 수신하도록 블록 202 로 되돌아갈 수도 있다.
리스트의 시작 또는 끝이 디스플레이 윈도우의 그 상단부 또는 하단부에 나타나도록 리스트 바운더리에 도달되면 (즉, 결정 블록 208 = "예"), 프로세서는 블록 212 에서 추가의 유저 스크롤 커맨드 입력들에 응답하여 리스트 바운더리의 다른 측에 컨텐츠의 일부분을 디스플레이할 수도 있다. 예를 들어, 도 1c 에 나타낸 바와 같이, 리스트의 끝이 표시된 후에 유저가 계속해서 스크롤할 경우, 블록 212 에서, 리스트의 시작의 일부분이 디스플레이 상에 표시될 수도 있다. 결정 블록 214 에서, 디바이스 프로세서는 유저가 이를 테면 마우스 버튼에서 손가락을 떼거나 또는 터치 스크린 디스플레이에서 손가락을 뗌으로써 스크롤 커맨드를 중단하였는지 여부를 그래픽 유저 인터페이스로부터 결정할 수도 있다. 유저가 스크롤 커맨드를 중단하지 않았다면 (즉, 결정 블록 214 = "아니오"), 프로세서는 블록 202 로 되돌아감으로써 추가의 유저 입력들을 수신하는 것을 계속 진행할 수도 있다. 유저가 터치 스크린 디스플레이로부터 손가락을 떼어 스크롤 입력을 만료하였다면 (즉, 결정 블록 214 = "예"), 프로세서는 블록 216 에서 적절함에 따라 다른 종점 (즉, 만나게 되는 바운더리 및 스크롤의 방향에 의존하여 시작 또는 끝) 에 대해 리스트를 랩핑하고 디스플레이에 대해 리스트를 스냅할 수도 있다. 예를 들어, 리스트의 스냅은 스크롤 이동의 방향에 의존하여 디스플레이 윈도우의 상단에 첫번째 리스트 엔트리를 위치시키거나 또는 디스플레이 윈도우의 하단에 마지막 리스트 엔트리를 위치시킨다. 그 후, 프로세서는 블록 202 으로 되돌아감으로써 추가의 유저 입력을 기다릴 수도 있다.
추가의 양태의 방법 (300) 이 도 3 에 나타나 있다. 이 방법 (300) 은 도 2 를 참조하여 유사하게 넘버링된 블록들을 이용하여 위에 설명된 바와 같이 실시될 수도 있는 유사한 동작들을 포함한다. 블록 202 에서 스크롤 동작을 개시하라는 유저 입력들을 수신하는 것에 응답하여, 프로세서는 결정 블록 308 에서 커맨드 스크롤에 의해 리스트 바운더리에 도달하는지 여부를 결정할 수도 있다. 이 방법 (300) 에서, 결정 블록 308 은 도 2 를 참조로 위에서 설명된 블록 204 및 블록 208 에서의 결정 동작들을 통합 또는 결합한다. 리스트 바운더리가 스크롤 입력 커맨드들에 의해 도달되지 않았다면 (즉, 결정 블록 308 = "아니오"), 프로세서는 블록 206 에서 정상 방식으로 스크롤 디스플레이를 애니메이션하는 것을 계속 진행할 수도 있다. 한편, 스크롤 동작에 의해 리스트 바운더리에 도달되면 (즉, 결정 블록 308 = "예"), 프로세서는 블록 310 에서 스크롤 애니메이션에 대한 변경을 구현하여, 이를 테면, 저항성을 애니메이션하기 위해 손가락 드래그 거리에 대한 스크롤 거리의 비를 1 미만으로 설정함으로써 리스트 바인더리에 도달함을 나타낼 수도 있다. 블록 312 에서, 프로세서는 (예를 들어, 도 1c 에 나타낸) 저항성 스크롤로부터 야기되는 리스트 바운더리의 타측에 컨텐츠의 일부분을 디스플레이할 수도 있다. 결정 블록 214 에서, 프로세서는 이를 테면, 유저가 터치 스크린 디스플레이에서 손가락을 뗀 상태에 있는지 여부를 결정함으로써, 스크롤 입력이 종료되었는지 여부를 결정할 수도 있다. 유저의 스크롤 입력이 계속 진행되고 있는 한 (즉, 결정 블록 214 = "아니오"), 프로세서는 블록 202 로 되돌아가 추가의 유저 입력들을 수신하는 것을 계속 진행할 수도 있다. 스크롤 입력 커맨드가 중지되었다고 프로세서가 결정하면 (즉, 결정 블록 214 = "예"), 프로세서는 스크롤 입력으로 인해 리스트의 끝이 디스플레이 윈도우의 에지에 대하여 임계 거리를 초과하여 스크롤되어졌는지 여부를 결정할 수도 있다. 이 임계 거리는 디스플레이의 상단 또는 하단 바운더리로부터의 거리 또는 디스플레이의 백분율의 일정 부분 (some fraction) 이 될 수도 있다. 리스트의 끝이 임계 거리를 초과하여 스크롤되지 않았다고 프로세서가 결정하면 (즉, 결정 블록 314 = "아니오"), 프로세서는 블록 316 에서 현재 리스트 바운더리들 (시작 또는 끝) 이 디스플레이 윈도우의 적절한 상단 또는 하단에 나타나도록 리스트를 스냅할 수도 있다. 한편, 리스트의 끝이 임계 범위를 초과하여 스크롤되면 (즉, 결정 블록 314 = "예"), 블록 318 에서, 프로세서는 리스트를 랩핑하고 스크롤 커맨드의 방향에 의존하여 디스플레이의 대응하는 에지 (상단 또는 하단) 에 대해 리스트의 적절한 시작 또는 끝을 스냅할 수도 있다. 리스트가 디스플레이 내에서 적절한 시작 또는 끝으로 스냅된 후, 프로세서는 추가의 유저 입력들을 수신하도록 블록 (202) 으로 되돌아갈 수도 있다.
다른 양태의 방법 (400) 이 도 4 에 나타나 있다. 이 양태의 방법에서, 리스트의 랩핑 및 디스플레이 윈도우에 대한 다음 바운더리의 스냅 (즉, 끝 또는 시작이 적절하게 됨) 이 유저가 스크롤 입력을 계속 진행하고 있는 동안에도 발생할 수도 있다. 따라서, 블록 312 에서 계속되는 스크롤 입력으로부터 기인하여, 리스트 바운더리의 다른 끝에 컨텐츠를 디스플레이하는 동안에도, 프로세서는 결정 블록 402 에서 리스트의 끝이 임계 거리를 초과하여 스크롤되었는지 여부를 결정할 수도 있다. 스크롤되지 않았다면 (즉, 결정 블록 402 = "아니오"), 프로세서는 추가의 유저 입력들을 수신하기 위해 블록 202 으로 되돌아갈 수도 있다. 그러나, 프로세서는 유저 입력이 임계 거리를 초과하여 리스트를 스크롤하게 한다고 결정할 경우 (즉, 결정 블록 402 = "예"), 블록 404 에서, 프로세서는 리스트를 랩핑하고 디스플레의 적절한 상단 또는 하단에 대해 시작 또는 끝을 스냅할 수도 있다. 유저 스크롤 입력이 이 방법으로 계속 진행되기 때문에, 프로세서는 추가의 유저 입력들을 수신하도록 블록 202 로 되돌아갈 수도 있으며 이는 스냅 동작이 완료된 후의 추가의 스크롤을 야기할 수도 있다. 이 방법 (400) 은 유저가 스크롤 입력을 중단하는 것 (예를 들어, 터치 스크린 디스플레이로부터 손가락을 떼는 것) 에 응답하여 리스트를 고속으로 위치결정하는 것을 또한 구현하기 위하여 블록 214 내지 블록 318 에 대해 도 3 을 참조로 상술한 동작들을 또한 포함할 수도 있음을 주지해야 한다.
위에 언급된 바와 같이, 양태들은 또한 터치 스크린 디스플레이 상의 유저 "플릭" 제스쳐에 의해 활성화된 고속 리스트 애니메이션들인 모멘텀 스크롤들에 의해 구현될 수도 있다. 이러한 양태를 나타내는 예시적인 방법 (500) 은 도 5 에 나타나 있다. 이 방법 (500) 은 적절한 프로세서 실행가능 명령들로 프로세서를 구성함으로써 컴퓨팅 디바이스의 프로세서 또는 디스플레이 프로세서 내에서 구현될 수도 있다. 방법 (500) 에 있어서 블록 502 에서, 프로세서는 그래픽 유저 인터페이스 및 터치 스크린 디스플레이들로 잘 알려진 방법들을 이용하여 유저 플릭 제스쳐를 수신 및 프로세싱할 수도 있다. 블록 504 에서, 프로세서는 수신된 플릭 특징들로부터 모멘텀 스크롤의 완료시에 끝 위치를 결정할 수도 있다. 이는 모멘텀 스크롤의 알고리즘들을 이용하여 리스트 스크롤 속도 및 대응하는 리스트 스크롤 거리를 결정함으로써 구현될 수도 있다. 블록 506 에서, 프로세서는 정상 방식으로 모멘텀 스크롤을 애니메이션할 수도 있다. 결정 블록 508 에서, 프로세서는 또한 모멘텀 스크롤이 리스트 바운더리로 하여금 디스플레이의 에지를 크로스 (즉, 리스트가 끝 또는 시작을 초과하여 스크롤) 하게 하는지 여부를 결정할 수도 있다. 프로세서가 모멘텀 스크롤이 리스트 바운더리로 하여금 디스플레이 에지를 크로스하지 않게 한다고 결정하면 (즉, 결정 블록 508 = "아니오"), 블록 510 에서 프로세서는 나타내어진 위치에서 스크롤을 통상 정지한 것으로서 모멘텀 스크롤 애니메이션을 계속 진행할 수도 있다.
프로세서가 모멘텀 스크롤이 리스트 바운더리로 하여금 디스플레이의 에지를 크로스하게 한다고 결정하면 (즉, 결정 블록 508 = "예"), 프로세서는 스크롤 완료가 리스트 바운더리 (즉, 끝 또는 시작) 를 디스플레이의 에지로부터 임계 거리를 초과하는 상태가 되도록 하는지 여부를 결정할 수도 있다. 예를 들어, 프로세서는 리스트의 끝 (또는 시작) 점이 디스플레이의 하단으로부터 상방으로 (또는 상단으로부터 하방으로) 의 1/3 을 넘는 경로에 나타나는지 여부를 결정할 수도 있다. 프로세서가 리스트 바운더리로 하여금 디스플레이의 에지로부터 임계 거리를 초과하지 않게 한다고 결정하면 (즉, 결정 블록 512 = "아니오"), 블록 514 에서, 프로세서는 리스트 바운더리의 현재 측의 리스트의 끝 (또는 시작) 이, 리스트를 디스플레이의 적절한 상단 또는 하단에 나타나게 끝나도록 바운스 및 스냅 백 (snap back) 이동을 포함하는 모멘텀 스크롤을 애니메이션할 수도 있다. 바운스 및 스냅 애니메이션은 단지 예시적인 예에 불과하며, 다른 효과들이 이 조건 (즉, 결정 블록 512 = "아니오"인 경우) 을 위하여 구현될 수도 있다. 프로세서가 모멘텀 스크롤의 끝이 디스플레이의 에지로부터 임계 거리를 초과하여 리스트 바운더리를 이동한 것으로 결정하면 (즉, 결정 블록 512 = "예"), 블록 516 에서, 프로세서는 예를 들어, 리스트 바운더리에 도달되었음을 나타내는 스트레치 또는 다른 모션을 포함하는 모멘텀 스크롤을 애니메이션하고 후속하여 리스트를 랩핑하고, 모멘텀 스크롤 애니메이션의 완료시 디스플레이 윈도우의 대응하는 상단 또는 하단에 대해 리스트 바운더리의 다른 측을 스냅할 수도 있다. 따라서, 모멘텀 스크롤이 리스트 끝으로 하여금 디스플레이 윈도우의 에지를 초과하여 임계 거리보다 크게 (이를 테면 디스플레이의 1/3) 확장하도록 하면, 리스트는 랩핑하고 스크롤은 즉시 정지하여 리스트의 시작 또는 끝이 디스플레이의 상단 또는 하단과 정렬된다. 이들 애니메이션에 후속하여, 프로세서는 추가의 유저 입력들을 수신하도록 블록 202 로 되돌아갈 수도 있다.
모멘텀 스크롤을 구현하는 대안의 방법 (600) 은 도 6 에 나타나 있다. 이 방법에서, 모멘텀 스크롤의 애니메이션은 리스트가 랩핑하기 직전임을 유저에게 알리기 위하여 모멘텀 스크롤의 끝에서 리스트 랩핑이 발생할 것이라는 추가의 표시를 포함한다. 예를 들어, 블록 602 에서, 프로세서는 이를 테면, 리스트가 디스플레이의 상단 또는 하단으로 이끌려지고 있음을 시뮬레이션하기 위해, 리스트 바운더리의 끝에 접근할 때 (즉, 리스트의 끝 또는 시작이 디스플레이 영역에 접근할 때) 스크롤 속도가 가속화되도록 모멘텀 스크롤을 애니메이션할 수도 있다. 그 후, 이 추가의 애니메이션은 블록 516 을 참조로 위에서 설명된 바와 동일한 방식으로 종료할 수도 있다.
도 7 에 나타내어진 양태의 방법 (700) 에서, 프로세서는 리스트 스크롤 애니메이션을 구현하기 전에 유저 입력들이 스크롤 입력인 것으로 의도되었는지 여부를 평가하도록 구성될 수도 있다. 이 결정은 유저가 양태의 스크롤 애니메이션들이 구현되도록 의도하지 않은 경우에도 그래픽 유저 인터페이스들의 정상 조작이 리스트 스크롤과 유사한 입력들을 포함할 수도 있기 때문에 유저 경험을 개선시킬 수 있다. 양태의 방법 (700) 은 프로세서가 도 2 내지 도 6 을 참조로 위에서 설명된 양태의 방법들을 구현하기 전에, 프로세서가 결정 블록 702 에서, 유저 입력, 이를 테면, 터치 스크린 상에서의 손가락 드래그 이동이 임계 거리를 초과하는지 여부를 결정하기 위해 어떻게 구성될 수도 있는지를 나타낸다. 프로세서가 유저 입력이 최소 임계를 초과하지 않는다고 결정하면 (즉, 결정 블록 702 = "아니오"), 프로세서는 스크롤 동작을 실시하지 않고 블록 202 으로 되돌아가 추가의 유저 입력들을 수신할 수도 있다. 프로세서가 유저 입력이 최소 임계를 초과한다고 결정하면 (즉, 결정 블록 702 = "예"), 프로세서는 도 2 를 참조로 위에서 설명된 결정 블록 204 로 진행하거나, 또는 도 5 를 참조로 위에서 설명된 결정 블록 504 로 진행함으로써 도 2 내지 도 6 을 참조로 위에서 설명된 양태의 애니메이션을 구현할 수도 있다. 이렇게 함으로써, 리스트 스크롤 애니메이션은 초기 유저 입력들이 무시되지 않는 경우에 도달되는 것과 동일한, 리스트 내의 지점으로 점프할 수도 있다.
여러 양태들은 여러 컴퓨팅 디바이스들, 이를 테면, 모바일 컴퓨팅 디바이스들 또는 퍼스널 컴퓨터들 중 어느 것에서도 구현될 수도 있다. 모바일 컴퓨팅 디바이스의 일례는 도 8 에 나타나 있고, 노트북 퍼스널 컴퓨터는 도 9 에 나타나 있다. 예를 들어, 모바일 컴퓨팅 디바이스 (800) 는 내부 메모리 (802) 및 터치 스크린 디스플레이 (803), 이를 테면, 저항식 감지 터치 스크린, 용량식 감지 터치 스크린, 적외 감지 터치스크린, 음향/압전식 감지 터치스크린 등에 커플링된 프로세서 (801) 를 포함할 수도 있다. 여러 양태들은 터치 스크린 디스플레이 (803) 또는 터치 패드 기술의 어떠한 특정 유형에도 제한되지 않는다. 추가로, 컴퓨팅 디바이스 (800) 는 무선 데이터 링크에 접속된 전자기 방사를 송수신하기 위한 안테나 (804) 및/또는 프로세서 (801) 에 커플링된 셀룰러 전화기 트랜시버 (805) 를 가질 수도 있다. 모바일 컴퓨팅 디바이스 (800) 는 또한 유저 입력들을 수신하기 위한 물리적 버튼들 (808) 을 포함할 수도 있다. 몇몇 구현예들에서, 터치 표면은 터치 스크린 디스플레이 (803) 의 외부의 전자 디바이스 (800) 의 영역들에 제공될 수 있다. 예를 들어, 키패드 (도시 생략) 는 용량식 터치 센서들이 매립된 터치 표면을 포함할 수 있다. 다른 구현예들에서, 터치 스크린 디스플레이 (803) 는 완전한 GUI 를 제공할 수도 있다.
상술한 양태들은 또한 여러 퍼스널 컴퓨팅 디바이스들, 이를 테면, 도 9 에 나타낸 랩톱 컴퓨터 (900) 내에서 구현될 수도 있다. 많은 랩톱 컴퓨터들은 컴퓨터의 포인팅 디바이스로서 역할을 하는 터치 패드 터치 표면 (907) 를 포함하며, 따라서, 위에서 설명되고 터치 스크린 디스플레이가 장착된 모바일 컴퓨팅 디바이스들 상에서 구현되는 것들과 유사한 드래그, 스크롤 및 플릭 제스쳐들을 수신할 수도 있다. 랩톱 컴퓨터 (900) 는 플래시 메모리의 디스크 드라이브 (903) 와 같은 대용량 비휘발성 메모리 및 휘발성 메모리 (902) 에 커플링된 프로세서 (901) 를 통상적으로 포함한다. 컴퓨터 (900) 는 또한 프로세서 (901) 에 커플링된 플로피 디스크 드라이브 (904) 및 CD (compact disc) 드라이브 (905) 를 포함할 수도 있다. 컴퓨팅 디바이스 (900) 는 또한 외부 메모리 디바이스들을 수용하거나 데이터 접속들을 확립하기 위하여 프로세서 (901) 에 커플링된 복수의 커넥터 포트들, 이를 테면, USB 또는 FireWire® 커넥터 소켓들, 및 프로세서 (901) 를 네트워크에 커플링하기 위한 다른 네트워크 접속 회로들을 포함할 수도 있다. 노트북 구성에서는, 컴퓨터 하우징은 터치 패드 (907), 키패드 (908), 및 디스플레이 (909) 를 포함하며, 이들 모두는 프로세서 (901) 에 커플링된다. 컴퓨팅 디바이스의 다른 구성들은 잘 알려진 바와 같이, (예를 들어, USB 입력을 통하여) 프로세서에 커플링된 컴퓨터 마우스 또는 트랙볼을 포함할 수도 있으며, 이는 여러 양태들과 함께 사용될 수도 있다.
컴퓨팅 디바이스 프로세서 (801, 901) 는 상술한 여러 양태들의 기능을 포함한 여러 기능들을 수행하도록 소프트웨어 명령들 (애플리케이션들) 에 의해 구성될 수 있는 임의의 프로그래밍가능 마이크로프로세서, 마이크로컴퓨터 또는 멀티플 프로세서 칩 또는 칩들일 수도 있다. 몇몇 컴퓨팅 디바이스들 (800, 900) 에서, 다수의 프로세서들 (801, 901) 이 제공될 수도 있으며, 이를 테면, 무선 통신 기능에 전용되고 한 프로세서가 다른 애플리케이션을 구동하는데 전용되는 멀티 코어 프로세서들 또는 하나의 프로세서가 제공될 수도 있다. 프로세서는 또한, 통신 칩셋의 일부로서 포함될 수도 있다.
앞서의 방법 설명들 및 프로세스 흐름도들은 구체적인 예들로서만 제공되고 갖가지 양태들의 단계들이 제시된 순서로 반드시 수행되어야 함을 요구하거나 의미하도록 의도된 것은 아니다. 이 기술분야의 숙련된 자에 의해 이해될 바와 같이 앞서의 양태들에서의 단계들의 순서는 임의의 순서로 수행될 수도 있다. 단어들 이를테면 "그 후", "그 다음", "다음에" 등은 단계들의 순서를 제한하려는 의도는 아니고; 이들 단어들은 단지 방법들의 기재를 통하여 독자에게 설명하는데 사용된다. 게다가, 단수형으로, 예를 들어, 관사 "a", "an" 또는 "the"의 사용에 해당하는 것으로 여겨질 수 있는 청구항 요소들에 대한 어떤 언급이라도, 그 요소를 단수형으로 제한하는 것으로 해석되지는 않는다.
본원에서 개시된 양태들에 관련하여 설명되는 각종 구체적인 논리 블록들, 모듈들, 회로들, 및 알고리즘 단계들은 전자적 하드웨어, 컴퓨터 소프트웨어, 또는 이것 둘의 조합들로 구현될 수도 있다. 하드웨어 및 소프트웨어의 이러한 상호 교환 가능성을 명백하게 예증하기 위하여, 전술된 다양하고 예시적인 구성요소들, 블록들, 모듈들, 회로들, 및 단계들이 일반적으로 그것들의 기능의 관점에서 설명되어 있다. 이러한 기능이 하드웨어 또는 소프트웨어 중 어느 것으로 구현되는지는 전체 시스템에 부가되는 특정 애플리케이션 및 디자인 제약들에 의존한다. 당업자들은 설명된 기능을 각각의 특정한 애플리케이션에 대하여 다양한 방식으로 구현할 수도 있지만, 이러한 구현 결정은 본 발명의 범위를 벗어나도록 하는 것으로 해석되지 않아야 한다.
여기에 개시된 양태들에 관련하여 설명된 갖가지 실례의 로직들, 논리 블록들, 모듈들, 및 회로들을 구현하는데 사용되는 하드웨어는 여기에 설명된 기능들을 수행하도록 고안된 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적회로 (ASIC), 필드 프로그램가능 게이트 어레이 (FPGA) 또는 여타 프로그램가능 로직 디바이스, 개별 게이트 또는 트랜지스터 로직, 개별 하드웨어 컴포넌트들, 또는 그것들의 어떤 결합물로 구현되거나 실시될 수 있다. 범용 프로세서는 마이크로프로세서일 수 있지만, 대안적인 예에서, 이 프로세서는 어떤 기존의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신 (state machine) 일 수 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 조합, 예를 들어 DSP 및 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 협력하는 하나 이상의 마이크로프로세서들, 또는 임의의 다른 이러한 구성으로 구현될 수도 있다. 다르게는, 일부 단계들 또는 방법들이 주어진 기능에 특정된 회로에 의해 수행될 수도 있다.
하나 이상의 예시적인 양태들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 그것들의 어떤 조합으로도 구현될 수 있다. 소프트웨어로 구현된다면, 그 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체 상에 저장되거나 송신될 수도 있다. 본원에서 개시된 방법 또는 알고리즘의 단계들은 컴퓨터 판독가능 매체 또는 프로세서 판독가능 매체 상에 상주할 수도 있는 실행되는 프로세서 실행가능 소프트웨어 모듈로 실시될 수도 있다. 비 일시적 컴퓨터 판독가능 및 프로세서 판독가능 매체들은 컴퓨터 또는 프로세서에 의해 액세스될 수도 있는 임의의 이용가능한 매체일 수도 있다. 비제한적인 예로, 이러한 컴퓨터 판독가능 매체들은 RAM, ROM, EEPROM, CD-ROM 또는 다른 광 디스크 스토리지, 자기 디스크 스토리지, 또는 다른 자기적 저장 디바이스들, 또는 소망의 프로그램 코드를 컴퓨터에 의해 액세스될 수도 있는 명령들 또는 데이터 구조들의 형태로 운반하거나 저장하는데 사용될 수도 있는 임의의 다른 매체를 포함할 수도 있다. 디스크 (Disk 및 disc) 는 본원에서 사용되는 바와 같이, 콤팩트 디스크 (compact disc, CD), 레이저 디스크, 광 디스크, 디지털 다용도 디스크 (DVD), 플로피 디스크 (floppy disk) 및 블루레이 디스크를 포함하는데, disk들은 보통 데이터를 자기적으로 재생하지만, disc들은 레이저들로써 광학적으로 데이터를 재생한다. 상기한 것들의 조합들은 또한 컴퓨터 판독가능 매체들의 범위 내에 포함되어야 한다. 덧붙여, 방법 또는 알고리즘의 동작들은 코드들 및/또는 명령들의 하나 또는 임의의 조합 또는 세트로서 컴퓨터 프로그램 제품에 통합될 수도 있는 비일시적 프로세서 판독가능 매체 및/또는 컴퓨터 판독가능 매체 상에 존재할 수 있다.
개시된 양태들의 전술한 설명은 이 기술분야의 숙련된 임의의 사람이 본 발명을 제작하고 사용할 수 있게끔 제공된다. 이들 양태들에 대한 다양한 변형예들은 이 기술분야의 숙련된 자들에게 쉽사리 명확하게 될 것이고, 본원에서 정의된 일반 원리들은 본 발명의 범위로부터 벗어남 없이 다른 양태들에 적용될 수도 있다. 그래서, 본 발명은 여기에 보인 양태들로 한정할 의도는 아니며 여기에 개시된 원리들 및 신규한 특징들과 일치하는 가장 넓은 범위를 부여하는 것을 의도한다.

Claims (24)

  1. 유저 입력에 응답하여 컴퓨팅 디바이스의 디스플레이 윈도우 내에서 컨텐츠의 이동을 애니메이션하는 방법으로서,
    상기 컴퓨팅 디바이스에서 컨텐츠 디스플레이 이동 유저 입력을 수신하는 단계;
    상기 유저 입력에 기초하여 컨텐츠 이동의 끝 위치를 결정하는 단계;
    결정된 상기 컨텐츠 이동의 끝 위치가 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장할지의 여부를 결정하는 단계;
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장하지 않는다면, 상기 디스플레이에 대해 컨텐츠 바운더리의 현재 측에 컨텐츠의 엘리먼트를 스냅 (snapping) 하는 단계; 및
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장한다면, 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 단계를 포함하는, 디스플레이 윈도우 내에서 컨텐츠의 이동을 애니메이션하는 방법.
  2. 제 1 항에 있어서,
    상기 컨텐츠 이동의 끝 위치가 상기 컨텐츠 바운더리로 하여금 상기 디스플레이의 에지의 제 2 임계 거리 내에 오게 하는지의 여부를 결정하는 단계; 및
    상기 컨텐츠 바운더리에 도달되기 직전임을 나타내기 위하여 컨텐츠 이동 디스플레이의 애니메이션을 변경하는 단계를 더 포함하는, 디스플레이 윈도우 내에서 컨텐츠의 이동을 애니메이션하는 방법.
  3. 제 1 항에 있어서,
    상기 컴퓨팅 디바이스에서 상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 단계는 터치 스크린 디스플레이 상의 유저 손가락 드래그에 응답하여 입력을 수신하는 단계를 포함하고,
    상기 방법은 유저 손가락이 상기 터치 스크린 디스플레이와 더 이상 접촉하고 있지 않을 때를 결정하는 단계를 더 포함하며,
    상기 디스플레이에 대해 상기 컨텐츠의 엘리먼트를 스냅하는 단계는 유저가 상기 유저 입력을 중단하는 것에 응답하여 발생하는, 디스플레이 윈도우 내에서 컨텐츠의 이동을 애니메이션하는 방법.
  4. 제 1 항에 있어서,
    상기 컴퓨팅 디바이스에서 상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 단계는 터치 스크린 디스플레이 상의 유저 손가락 드래그에 응답하여 입력을 수신하는 단계를 포함하고,
    상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 단계는 상기 컨텐츠의 상기 결정된 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장할 때 발생하는, 디스플레이 윈도우 내에서 컨텐츠의 이동을 애니메이션하는 방법.
  5. 제 1 항에 있어서,
    상기 컴퓨팅 디바이스에서 상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 단계는 터치 스크린 디스플레이 상에서 플릭 제스쳐 입력 (flick gesture input) 을 수신하는 단계를 포함하고,
    상기 방법은 모멘텀 스크롤 애니메이션 (momentum scroll animation) 을 개시하는 단계를 더 포함하고,
    상기 유저 입력에 기초하여 상기 컨텐츠 이동의 끝 위치를 결정하는 단계는 모멘텀 스크롤이 완료될 때 도달될 상기 컨텐츠 이동의 끝 위치를 결정하는 단계를 포함하는, 디스플레이 윈도우 내에서 컨텐츠의 이동을 애니메이션하는 방법.
  6. 제 5 항에 있어서,
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장할 때 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하기 전에 상기 컨텐츠 바운더리가 상기 디스플레이의 에지에 접근함에 따라 상기 모멘텀 스크롤 애니메이션을 가속화시키는 단계를 더 포함하는, 디스플레이 윈도우 내에서 컨텐츠의 이동을 애니메이션하는 방법.
  7. 컴퓨팅 디바이스로서,
    디스플레이;
    유저 인터페이스; 및
    상기 디스플레이 및 상기 유저 인터페이스에 커플링된 프로세서를 포함하고,
    상기 프로세서는,
    상기 유저 인터페이스로부터 컨텐츠 디스플레이 이동 유저 입력을 수신하는 것;
    상기 유저 입력에 기초하여 컨텐츠 이동의 끝 위치를 결정하는 것;
    결정된 상기 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장할지의 여부를 결정하는 것;
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장되지 않는다면, 상기 디스플레이에 대해 컨텐츠 바운더리의 현재 측에 컨텐츠의 엘리먼트를 스냅하는 것; 및
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장한다면, 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 것을 포함하는 동작들을 수행하는 프로세서 실행가능 명령들로 구성된, 컴퓨팅 디바이스.
  8. 제 7 항에 있어서,
    상기 프로세서는,
    상기 컨텐츠 이동의 끝 위치가 상기 컨텐츠 바운더리로 하여금 상기 디스플레이의 에지의 제 2 임계 거리 내에 오게 하는지의 여부를 결정하는 것; 및
    상기 컨텐츠 바운더리에 도달되기 직전임을 나타내기 위하여 컨텐츠 이동 디스플레이의 애니메이션을 변경하는 것을 더 포함하는 동작들을 수행하는 프로세서 실행가능 명령들로 구성된, 컴퓨팅 디바이스.
  9. 제 7 항에 있어서,
    상기 디스플레이 및 상기 유저 인터페이스는 터치 스크린 디스플레이이고,
    상기 프로세서는,
    상기 유저 인터페이스로부터 컨텐츠 디스플레이 이동 유저 입력을 수신하는 것이, 상기 터치 스크린 디스플레이 상의 유저 손가락 드래그에 응답하여 입력을 수신하는 것을 포함하고,
    상기 디스플레이에 대해 상기 컨텐츠의 엘리먼트를 스냅하는 것이, 유저가 상기 유저 입력을 중단하는 것에 응답하여 발생하도록 구성되며,
    상기 프로세서는 유저 손가락이 상기 터치 스크린 디스플레이와 더 이상 접촉하고 있지 않을 때를 결정하는 것을 더 포함하는 동작들을 수행하는 프로세서 실행가능 명령들로 구성된, 컴퓨팅 디바이스.
  10. 제 7 항에 있어서,
    상기 디스플레이 및 상기 유저 인터페이스는 터치 스크린 디스플레이이고,
    상기 프로세서는,
    상기 유저 인터페이스로부터 컨텐츠 디스플레이 이동 유저 입력을 수신하는 것이, 상기 터치 스크린 디스플레이 상의 유저 손가락 드래그에 응답하여 입력을 수신하는 것을 포함하고,
    상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 것이, 상기 결정된 컨텐츠 이동의 끝 위치가 상기 터치 스크린 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장할 때 발생하도록 구성된, 컴퓨팅 디바이스.
  11. 제 7 항에 있어서,
    상기 디스플레이 및 상기 유저 인터페이스는 터치 스크린 디스플레이이고,
    상기 프로세서는 모멘텀 스크롤 애니메이션을 개시하는 것을 더 포함하는 동작들을 수행하는 프로세서 실행가능 명령들로 구성되고,
    상기 유저 인터페이스로부터 컨텐츠 디스플레이 이동 유저 입력을 수신하는 것이, 상기 터치 스크린 디스플레이 상에서 플릭 제스쳐 입력을 수신하는 것을 포함하고,
    상기 유저 입력에 기초하여 상기 컨텐츠 이동의 끝 위치를 결정하는 것이, 모멘텀 스크롤이 완료될 때 도달될 상기 컨텐츠 이동의 끝 위치를 결정하는 것을 포함하는, 컴퓨팅 디바이스.
  12. 제 11 항에 있어서,
    상기 프로세서는 상기 결정된 컨텐츠 이동의 끝 위치가 상기 터치 스크린 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장할 때 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하기 전에 상기 컨텐츠 바운더리가 상기 터치 스크린 디스플레이의 에지에 접근함에 따라 상기 모멘텀 스크롤 애니메이션을 가속화시키는 것을 더 포함하는 동작들을 수행하는 프로세서 실행가능 명령들로 구성된, 컴퓨팅 디바이스.
  13. 컴퓨팅 디바이스로서,
    디스플레이;
    컨텐츠 디스플레이 이동 유저 입력을 수신하는 수단;
    상기 유저 입력에 기초하여 컨텐츠 이동의 끝 위치를 결정하는 수단;
    결정된 상기 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장할지의 여부를 결정하는 수단;
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장하지 않는다면, 상기 디스플레이에 대해 컨텐츠 바운더리의 현재 측에 컨텐츠의 엘리먼트를 스냅하는 수단; 및
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장한다면, 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 수단을 포함하는, 컴퓨팅 디바이스.
  14. 제 13 항에 있어서,
    상기 컨텐츠 이동의 끝 위치가 상기 컨텐츠 바운더리로 하여금 상기 디스플레이의 에지의 제 2 임계 거리 내에 오게 하는지의 여부를 결정하는 수단; 및
    상기 컨텐츠 바운더리에 도달되기 직전임을 나타내기 위하여 컨텐츠 이동 디스플레이의 애니메이션을 변경하는 수단을 더 포함하는, 컴퓨팅 디바이스.
  15. 제 13 항에 있어서,
    상기 디스플레이, 및 상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 수단은 터치 스크린 디스플레이를 포함하고,
    상기 컴퓨팅 디바이스는 유저 손가락이 상기 터치 스크린 디스플레이와 더 이상 접촉하고 있지 않을 때를 결정하는 수단을 더 포함하며,
    상기 컴퓨팅 디바이스에서 상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 수단은 상기 터치 스크린 디스플레이 상의 유저 손가락 드래그에 응답하여 입력을 수신하는 수단을 포함하고,
    상기 디스플레이에 대해 컨텐츠 바운더리의 현재 측에 컨텐츠의 엘리먼트를 스냅하는 수단, 및 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 수단은 유저가 상기 유저 입력을 중단하는 것에 응답하여 상기 디스플레이에 대해 상기 컨텐츠의 엘리먼트를 스냅하는 수단을 포함하는, 컴퓨팅 디바이스.
  16. 제 13 항에 있어서,
    상기 디스플레이, 및 상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 수단은 터치 스크린 디스플레이를 포함하고,
    상기 컴퓨팅 디바이스는 상기 터치 스크린 디스플레이 상의 유저 손가락 드래그에 응답하여 입력을 수신하는 수단을 더 포함하고,
    상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 수단은 상기 컨텐츠의 상기 결정된 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장할 때 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 수단을 포함하는, 컴퓨팅 디바이스.
  17. 제 13 항에 있어서,
    모멘텀 스크롤 애니메이션을 개시하는 수단을 더 포함하고,
    상기 컴퓨팅 디바이스에서 상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 수단은 터치 스크린 디스플레이 상에서 플릭 제스쳐 입력을 수신하는 수단을 포함하고,
    상기 유저 입력에 기초하여 컨텐츠 이동의 끝 위치를 결정하는 수단은 모멘텀 스크롤이 완료될 때 도달될 상기 컨텐츠 이동의 끝 위치를 결정하는 수단을 포함하는, 컴퓨팅 디바이스.
  18. 제 17 항에 있어서,
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장할 때 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하기 전에 상기 컨텐츠 바운더리가 상기 디스플레이의 에지에 접근함에 따라 상기 모멘텀 스크롤 애니메이션을 가속화시키는 수단을 더 포함하는, 컴퓨팅 디바이스.
  19. 프로세서 실행가능 명령들을 저장한 비일시적 컴퓨터 판독가능 저장 매체로서,
    상기 프로세서 실행가능 명령들은 컴퓨터 프로세서로 하여금,
    컨텐츠 디스플레이 이동 유저 입력을 수신하는 것;
    상기 유저 입력에 기초하여 컨텐츠 이동의 끝 위치를 결정하는 것;
    결정된 상기 컨텐츠 이동의 끝 위치가 디스플레이의 에지로부터 제 1 임계 거리를 초과하여 확장할지의 여부를 결정하는 것;
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장하지 않는다면, 상기 디스플레이에 대해 컨텐츠 바운더리의 현재 측에 컨텐츠의 엘리먼트를 스냅하는 것; 및
    상기 결정된 컨텐츠 이동의 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장한다면, 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 것을 포함하는 동작들을 수행하게 하도록 구성된, 프로세서 실행가능 명령들을 저장한 비일시적 컴퓨터 판독가능 저장 매체.
  20. 제 19 항에 있어서,
    저장된 상기 프로세서 실행가능 명령들은 컴퓨터 프로세서로 하여금,
    상기 컨텐츠 이동의 끝 위치가 상기 컨텐츠 바운더리로 하여금 상기 디스플레이의 에지의 제 2 임계 거리 내에 오게 하는지의 여부를 결정하는 것; 및
    상기 컨텐츠 바운더리에 도달되기 직전임을 나타내기 위하여 컨텐츠 이동 디스플레이의 애니메이션을 변경하는 것을 더 포함하는 동작들을 수행하게 하도록 구성된, 프로세서 실행가능 명령들을 저장한 비일시적 컴퓨터 판독가능 저장 매체.
  21. 제 19 항에 있어서,
    저장된 상기 프로세서 실행가능 명령들은 컴퓨터 프로세서로 하여금,
    상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 것이, 터치 스크린 디스플레이 상의 유저 손가락 드래그에 응답하여 입력을 수신하는 것을 포함하고,
    상기 디스플레이에 대해 상기 컨텐츠의 엘리먼트를 스냅하는 것이, 유저가 상기 유저 입력을 중단하는 것에 응답하여 발생하도록 하는 동작들을 수행하게 하도록 구성되고,
    저장된 상기 프로세서 실행가능 명령들은 컴퓨터 프로세서로 하여금, 유저 손가락이 상기 터치 스크린 디스플레이와 더 이상 접촉하고 있지 않을 때를 결정하는 것을 더 포함하는 동작들을 수행하게 하도록 구성된, 프로세서 실행가능 명령들을 저장한 비일시적 컴퓨터 판독가능 저장 매체.
  22. 제 19 항에 있어서,
    저장된 상기 프로세서 실행가능 명령들은 컴퓨터 프로세서로 하여금,
    컴퓨팅 디바이스에서 상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 것이, 터치 스크린 디스플레이 상의 유저 손가락 드래그에 응답하여 입력을 수신하는 것을 포함하고,
    상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하는 것이, 상기 컨텐츠의 상기 결정된 끝 위치가 상기 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장할 때 발생하도록 하는 동작들을 수행하게 하도록 구성된, 프로세서 실행가능 명령들을 저장한 비일시적 컴퓨터 판독가능 저장 매체.
  23. 제 19 항에 있어서,
    저장된 상기 프로세서 실행가능 명령들은 컴퓨터 프로세서로 하여금,
    상기 컨텐츠 디스플레이 이동 유저 입력을 수신하는 것이, 터치 스크린 디스플레이 상에서 플릭 제스쳐 입력을 수신하는 것을 포함하고,
    상기 유저 입력에 기초하여 컨텐츠 이동의 끝 위치를 결정하는 것이, 모멘텀 스크롤이 완료될 때 도달될 상기 컨텐츠 이동의 끝 위치를 결정하는 것을 포함하도록 하는 동작들을 수행하게 하도록 구성된, 프로세서 실행가능 명령들을 저장한 비일시적 컴퓨터 판독가능 저장 매체.
  24. 제 23 항에 있어서,
    저장된 상기 프로세서 실행가능 명령들은 컴퓨터 프로세서로 하여금,
    상기 프로세서는 상기 결정된 컨텐츠 이동의 끝 위치가 터치 스크린 디스플레이의 에지로부터 상기 제 1 임계 거리를 초과하여 확장할 때 상기 디스플레이에 대해 상기 컨텐츠 바운더리의 반대측에 상기 컨텐츠의 엘리먼트를 스냅하기 전에 상기 컨텐츠 바운더리가 상기 터치 스크린 디스플레이의 에지에 접근함에 따라 상기 모멘텀 스크롤 애니메이션을 가속화시키는 것을 더 포함하는 동작들을 수행하게 하도록 구성된, 프로세서 실행가능 명령들을 저장한 비일시적 컴퓨터 판독가능 저장 매체.
KR1020137030973A 2011-04-22 2012-04-12 유저 인터페이스에서의 리스트들의 직관적 랩핑을 위한 방법 및 장치 KR101540531B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/092,692 2011-04-22
US13/092,692 US9182897B2 (en) 2011-04-22 2011-04-22 Method and apparatus for intuitive wrapping of lists in a user interface
PCT/US2012/033209 WO2012145218A1 (en) 2011-04-22 2012-04-12 Method and apparatus for intuitive wrapping of lists in a user interface

Publications (2)

Publication Number Publication Date
KR20140009520A true KR20140009520A (ko) 2014-01-22
KR101540531B1 KR101540531B1 (ko) 2015-07-29

Family

ID=46025926

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137030973A KR101540531B1 (ko) 2011-04-22 2012-04-12 유저 인터페이스에서의 리스트들의 직관적 랩핑을 위한 방법 및 장치

Country Status (7)

Country Link
US (1) US9182897B2 (ko)
EP (1) EP2699995B1 (ko)
JP (1) JP5646111B2 (ko)
KR (1) KR101540531B1 (ko)
CN (1) CN103493000B (ko)
BR (1) BR112013026162A2 (ko)
WO (1) WO2012145218A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180098143A (ko) * 2017-02-24 2018-09-03 만 트럭 운트 버스 악티엔게젤샤프트 조작 시스템, 조작 시스템의 조작 방법 및 조작 시스템을 포함하는 차량

Families Citing this family (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7469381B2 (en) 2007-01-07 2008-12-23 Apple Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display
JP4396758B2 (ja) * 2007-10-31 2010-01-13 カシオ計算機株式会社 循環小数表示装置および循環小数表示制御プログラム
KR101588242B1 (ko) * 2009-07-13 2016-01-25 삼성전자주식회사 휴대 단말기의 스크롤 방법 및 장치
US8812985B2 (en) * 2009-10-30 2014-08-19 Motorola Mobility Llc Method and device for enhancing scrolling operations in a display device
US8490009B2 (en) * 2009-11-26 2013-07-16 Rakuten, Inc. Information processing apparatus, terminal apparatus, content of interest determination method, content of interest determination program, terminal program , recording medium on which program is recorded, and information provision system
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US9324060B2 (en) * 2011-05-10 2016-04-26 International Business Machines Corporation Displaying a plurality of calendar entries
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US8893033B2 (en) 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
JP5000776B1 (ja) * 2011-05-31 2012-08-15 楽天株式会社 情報提供システム、情報提供システムの制御方法、情報提供装置、プログラム、及び情報記憶媒体
US20130031507A1 (en) * 2011-07-28 2013-01-31 Moses George Systems and methods for scrolling a document by providing visual feedback of a transition between portions of the document
JP5935267B2 (ja) * 2011-09-01 2016-06-15 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9348498B2 (en) * 2011-09-12 2016-05-24 Microsoft Technology Licensing, Llc Wrapped content interaction
EP2757448A4 (en) * 2011-09-13 2015-06-17 Sony Computer Entertainment Inc INFORMATION PROCESSING DEVICE, DISPLAY CONTROL METHOD, PROGRAM, AND INFORMATION STORAGE MEDIUM
JP2013109667A (ja) * 2011-11-22 2013-06-06 Sony Computer Entertainment Inc 情報処理装置および情報処理方法
KR20130059232A (ko) * 2011-11-28 2013-06-05 삼성전자주식회사 휴대단말기의 데이터항목 표시장치 및 방법
JP5865039B2 (ja) * 2011-11-30 2016-02-17 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
US9223472B2 (en) 2011-12-22 2015-12-29 Microsoft Technology Licensing, Llc Closing applications
KR20130093724A (ko) * 2011-12-23 2013-08-23 삼성전자주식회사 디스플레이 장치 및 그 잠금 해제 방법
US9176573B2 (en) * 2012-01-04 2015-11-03 Microsoft Technology Licensing, Llc Cumulative movement animations
KR101932270B1 (ko) * 2012-01-04 2018-12-24 엘지전자 주식회사 이동 단말기 및 그 제어방법
US10872454B2 (en) * 2012-01-06 2020-12-22 Microsoft Technology Licensing, Llc Panning animations
US9141262B2 (en) * 2012-01-06 2015-09-22 Microsoft Technology Licensing, Llc Edge-based hooking gestures for invoking user interfaces
US8890808B2 (en) 2012-01-06 2014-11-18 Microsoft Corporation Repositioning gestures for chromeless regions
US9235317B2 (en) 2012-02-01 2016-01-12 Facebook, Inc. Summary and navigation of hierarchical levels
US9557876B2 (en) 2012-02-01 2017-01-31 Facebook, Inc. Hierarchical user interface
US9645724B2 (en) 2012-02-01 2017-05-09 Facebook, Inc. Timeline based content organization
US9128605B2 (en) 2012-02-16 2015-09-08 Microsoft Technology Licensing, Llc Thumbnail-image selection of applications
CN103309599A (zh) * 2012-03-15 2013-09-18 华为终端有限公司 一种触屏滑动查找方法及触屏设备
US20130346915A1 (en) * 2012-06-22 2013-12-26 Microsoft Corporation Wrap-around navigation
US20140040824A1 (en) * 2012-08-02 2014-02-06 Comcast Cable Communications, Llc Systems and methods for data navigation
US9535566B2 (en) * 2012-08-24 2017-01-03 Intel Corporation Method, apparatus and system of displaying a file
KR20140039762A (ko) * 2012-09-25 2014-04-02 삼성전자주식회사 영상처리장치 및 그 제어방법
JP6018474B2 (ja) * 2012-10-23 2016-11-02 任天堂株式会社 プログラム、情報処理装置、情報処理方法および情報処理システム
US20150301697A1 (en) * 2012-11-20 2015-10-22 Jolla Oy A graphical user interface for a portable computing device
JP6080515B2 (ja) * 2012-11-26 2017-02-15 キヤノン株式会社 情報処理装置、表示装置、情報処理装置の制御方法、及びプログラム
KR102174916B1 (ko) * 2012-11-30 2020-11-05 삼성전자주식회사 종료 효과를 표시하는 모바일 장치 및 그 제어방법
US10691230B2 (en) * 2012-12-29 2020-06-23 Apple Inc. Crown input for a wearable electronic device
JP2014160323A (ja) * 2013-02-19 2014-09-04 Brother Ind Ltd 表示装置および表示プログラム
KR102047696B1 (ko) * 2013-02-20 2019-11-22 엘지전자 주식회사 이동 단말기 및 이의 제어 방법
WO2014137064A1 (ko) * 2013-03-08 2014-09-12 에스케이플래닛 주식회사 목록 표시 방법, 이를 위한 장치 및 시스템
CN104049834A (zh) * 2013-03-13 2014-09-17 北京千橡网景科技发展有限公司 用于触摸设备的内容项展示方法及装置
KR102089951B1 (ko) * 2013-03-14 2020-04-14 엘지전자 주식회사 이동 단말기 및 그것의 제어방법
KR102074347B1 (ko) * 2013-03-15 2020-03-02 엘지전자 주식회사 이동 단말기 및 그것의 제어방법
US10592278B2 (en) * 2013-03-15 2020-03-17 Facebook, Inc. Defer heavy operations while scrolling
JP5835255B2 (ja) * 2013-03-19 2015-12-24 カシオ計算機株式会社 グラフ表示装置及びグラフ表示プログラム
US20140298267A1 (en) * 2013-04-02 2014-10-02 Microsoft Corporation Navigation of list items on portable electronic devices
JP2015026257A (ja) * 2013-07-26 2015-02-05 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
KR102186548B1 (ko) * 2013-08-21 2020-12-07 삼성전자주식회사 스크롤 실행의 화면 표시 방법, 장치 및 기록매체
CN110262861B (zh) 2013-09-03 2022-08-09 苹果公司 用于操纵用户界面对象的用户界面
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
USD741362S1 (en) * 2013-09-10 2015-10-20 Apple Inc. Display screen or portion thereof with graphical user interface
WO2015046636A1 (ko) * 2013-09-24 2015-04-02 엘지전자 주식회사 이동 단말기 및 이의 제어방법
JP2015072665A (ja) * 2013-10-04 2015-04-16 ソニー株式会社 表示制御装置、および記憶媒体
CN105765515B (zh) * 2013-11-08 2017-09-01 三菱电机株式会社 动画装置和动画方法
USD760754S1 (en) 2013-12-18 2016-07-05 Apple Inc. Display screen or portion thereof with graphical user interface
JP6497381B2 (ja) * 2014-02-21 2019-04-10 ソニー株式会社 ウェアラブル機器、電子機器、画像制御装置および表示制御方法
USD768665S1 (en) 2014-02-27 2016-10-11 Amazon Technologies, Inc. Display screen having a graphical user interface
USD765092S1 (en) 2014-03-03 2016-08-30 Apple Inc. Display screen or portion thereof with graphical user interface
WO2015149347A1 (en) 2014-04-04 2015-10-08 Microsoft Technology Licensing, Llc Expandable application representation
WO2015154273A1 (en) 2014-04-10 2015-10-15 Microsoft Technology Licensing, Llc Collapsible shell cover for computing device
WO2015154276A1 (en) 2014-04-10 2015-10-15 Microsoft Technology Licensing, Llc Slider cover for computing device
CN118192869A (zh) 2014-06-27 2024-06-14 苹果公司 尺寸减小的用户界面
CN105278774A (zh) * 2014-07-25 2016-01-27 南京瀚宇彩欣科技有限责任公司 无挡触控的手持式电子装置及其触控外盖
CN104182133B (zh) * 2014-08-29 2017-10-13 广东欧珀移动通信有限公司 列表滑动控制方法及装置
TWI582641B (zh) 2014-09-02 2017-05-11 蘋果公司 按鈕功能性
TWI676127B (zh) 2014-09-02 2019-11-01 美商蘋果公司 關於電子郵件使用者介面之方法、系統、電子器件及電腦可讀儲存媒體
US10073590B2 (en) 2014-09-02 2018-09-11 Apple Inc. Reduced size user interface
WO2016036510A1 (en) 2014-09-02 2016-03-10 Apple Inc. Music user interface
US10019146B2 (en) 2014-09-04 2018-07-10 Home Box Office, Inc. Snap points including ranges
JP6379893B2 (ja) * 2014-09-08 2018-08-29 セイコーエプソン株式会社 表示システムおよび表示プログラム
US10642365B2 (en) * 2014-09-09 2020-05-05 Microsoft Technology Licensing, Llc Parametric inertia and APIs
US9674335B2 (en) 2014-10-30 2017-06-06 Microsoft Technology Licensing, Llc Multi-configuration input device
CN104850340B (zh) * 2015-01-30 2018-11-30 小米科技有限责任公司 触控显示屏上的文档显示方法及装置
US9715283B2 (en) * 2015-02-26 2017-07-25 Motorola Mobility Llc Method and apparatus for gesture detection in an electronic device
US10365807B2 (en) 2015-03-02 2019-07-30 Apple Inc. Control of system zoom magnification using a rotatable input mechanism
USD801995S1 (en) * 2015-03-06 2017-11-07 Samsung Electronics Co., Ltd Display screen or portion thereof with graphical user interface
US10503387B2 (en) * 2015-06-07 2019-12-10 Apple Inc. Intelligent scrolling of electronic document
JP6643776B2 (ja) * 2015-06-11 2020-02-12 株式会社バンダイナムコエンターテインメント 端末装置及びプログラム
US9965445B2 (en) * 2015-08-06 2018-05-08 FiftyThree, Inc. Systems and methods for gesture-based formatting
CN105159576B (zh) * 2015-08-24 2019-10-29 联想(北京)有限公司 一种信息处理方法及电子设备
US20170075533A1 (en) * 2015-09-15 2017-03-16 Flipboard, Inc. Scrolling digital content with auto-aligning
KR101744809B1 (ko) * 2015-10-15 2017-06-08 현대자동차 주식회사 곡면 스크린 상의 터치 드래그 제스처를 인식하는 방법 및 장치
CN105912229A (zh) * 2015-12-11 2016-08-31 乐视移动智能信息技术(北京)有限公司 一种列表滑动的控制方法及其装置
CN105786518A (zh) * 2016-03-17 2016-07-20 武汉斗鱼网络科技有限公司 一种列表加载时的反馈方法及装置
DK201770375A1 (en) * 2016-06-12 2018-02-12 Apple Inc Devices, methods, and graphical user interfaces for seamless transition of user interface behaviors
CN107807775B (zh) * 2016-09-09 2021-08-03 佳能株式会社 显示控制装置、其控制方法及存储其控制程序的存储介质
US11928483B2 (en) 2017-05-16 2024-03-12 Apple Inc. Devices, methods, and graphical user interfaces for seamless transition of user interface behaviors
CN107797829A (zh) * 2017-10-30 2018-03-13 江西博瑞彤芸科技有限公司 界面加载方法
CN107817938B (zh) * 2017-11-23 2020-01-14 平安科技(深圳)有限公司 实现选择列表滚动的方法、装置、设备及可读存储介质
CN110321042B (zh) * 2018-03-30 2022-08-05 阿里巴巴集团控股有限公司 界面信息展示方法、装置及电子设备
BR102018017046A2 (pt) 2018-08-20 2020-03-10 Samsung Eletrônica da Amazônia Ltda. Método para controle de execução do processo de animação em dispositivos eletrônicos
DK179888B1 (en) 2018-09-11 2019-08-27 Apple Inc. CONTENT-BASED TACTICAL OUTPUTS
US11435830B2 (en) 2018-09-11 2022-09-06 Apple Inc. Content-based tactile outputs
JP7367395B2 (ja) * 2019-08-30 2023-10-24 京セラドキュメントソリューションズ株式会社 操作入力装置、画像処理装置、操作入力方法
CN112925453B (zh) * 2019-12-05 2022-07-15 阿里巴巴集团控股有限公司 组件显示方法、装置、电子设备及计算机可读存储介质
US11287964B2 (en) * 2020-06-17 2022-03-29 Rovi Guides, Inc. Systems and methods for navigating content
US20210397316A1 (en) * 2020-06-22 2021-12-23 Viktor Kaptelinin Inertial scrolling method and apparatus
US12014043B2 (en) * 2022-03-31 2024-06-18 Adobe Inc. Systems for accessible digital painting

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7469381B2 (en) 2007-01-07 2008-12-23 Apple Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display
US6690365B2 (en) 2001-08-29 2004-02-10 Microsoft Corporation Automatic scrolling
US7296243B2 (en) 2002-03-19 2007-11-13 Aol Llc Animating display motion
JP2004265244A (ja) 2003-03-03 2004-09-24 Toshiba Tec Corp 表示メニュー提供装置、表示メニュー提供方法、及び表示メニュー提供プログラム
US7872652B2 (en) 2007-01-07 2011-01-18 Apple Inc. Application programming interfaces for synchronization
US7844915B2 (en) * 2007-01-07 2010-11-30 Apple Inc. Application programming interfaces for scrolling operations
CN101398739A (zh) * 2007-09-25 2009-04-01 博思天地(北京)科技有限公司 一种基于触摸屏的页面浏览方法、装置及其移动通信终端
US9513704B2 (en) 2008-03-12 2016-12-06 Immersion Corporation Haptically enabled user interface
US8365091B2 (en) * 2009-01-06 2013-01-29 Microsoft Corporation Non-uniform scrolling
JP5487679B2 (ja) 2009-03-31 2014-05-07 ソニー株式会社 情報処理装置、情報処理方法および情報処理プログラム
US8601389B2 (en) 2009-04-30 2013-12-03 Apple Inc. Scrollable menus and toolbars
US20100277420A1 (en) 2009-04-30 2010-11-04 Motorola, Inc. Hand Held Electronic Device and Method of Performing a Dual Sided Gesture
CN102449587B (zh) 2009-05-27 2015-12-16 惠普开发有限公司 控制信息显示的方法和***
US8624925B2 (en) * 2009-10-16 2014-01-07 Qualcomm Incorporated Content boundary signaling techniques
US8677283B2 (en) 2009-10-21 2014-03-18 Microsoft Corporation Displaying lists as reacting against barriers
US9417787B2 (en) * 2010-02-12 2016-08-16 Microsoft Technology Licensing, Llc Distortion effects to indicate location in a movable data collection
EP2378406B1 (en) * 2010-04-13 2018-08-22 LG Electronics Inc. Mobile terminal and method of controlling operation of the mobile terminal

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180098143A (ko) * 2017-02-24 2018-09-03 만 트럭 운트 버스 악티엔게젤샤프트 조작 시스템, 조작 시스템의 조작 방법 및 조작 시스템을 포함하는 차량

Also Published As

Publication number Publication date
KR101540531B1 (ko) 2015-07-29
EP2699995B1 (en) 2018-06-27
JP5646111B2 (ja) 2014-12-24
CN103493000A (zh) 2014-01-01
BR112013026162A2 (pt) 2020-10-27
WO2012145218A1 (en) 2012-10-26
EP2699995A1 (en) 2014-02-26
CN103493000B (zh) 2017-03-15
US20120272181A1 (en) 2012-10-25
JP2014512062A (ja) 2014-05-19
US9182897B2 (en) 2015-11-10

Similar Documents

Publication Publication Date Title
KR101540531B1 (ko) 유저 인터페이스에서의 리스트들의 직관적 랩핑을 위한 방법 및 장치
KR101521370B1 (ko) 제스처에 응답하여 정보를 디스플레이하는 전자 장치 및 디스플레이 방법
US9507495B2 (en) Electronic device and method of displaying information in response to a gesture
US9423878B2 (en) Electronic device and method of displaying information in response to a gesture
US9465440B2 (en) Electronic device and method of displaying information in response to a gesture
CA2865366C (en) Electronic device and method of displaying information in response to a gesture
KR101579662B1 (ko) 제스처에 응답하여 정보를 디스플레이하는 전자 장치 및 디스플레이 방법
US20130141371A1 (en) Electronic device and method of displaying information in response to a gesture
US20110016390A1 (en) Mobile terminal to display menu information according to touch signal
WO2013033317A1 (en) System and method for navigation in an electronic document
KR102161061B1 (ko) 복수의 페이지 표시 방법 및 이를 위한 단말
CA2848105C (en) Electronic device and method of displaying information in response to a gesture
CA2846419C (en) Electronic device and method of displaying information in response to a gesture
CA2868807A1 (en) Electronic device and method of displaying information in response to a gesture
GB2535755A (en) Method and apparatus for managing graphical user interface items

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 5