이하, 본 문서의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 문서의 실시 예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 문서에서, "가진다", "가질 수 있다", "포함한다" 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "A 또는 B", "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 문서에서 사용된 "제1", "제2", "첫째" 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제 1 사용자 기기와 제 2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)" 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어(hardware)적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU(central processing unit) 또는 AP(application processor))를 의미할 수 있다.
본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시 예들을 배제하도록 해석될 수 없다.
본 문서의 다양한 실시 예들에 따르는 전자 장치는, 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예들에 따르면, 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD) 등), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식형(예: implantable circuit) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에서, 전자 장치는 가전 제품(home appliance)일 수 있다. 가전 제품은, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토메이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, 위성 항법 시스템(GNSS, global navigation satellite system), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예에 따르면, 전자 장치는 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예들에서, 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시 예에 따르는 전자 장치는 플렉서블 전자 장치 또는 폴더블 전자 장치일 수 있다. 또한, 본 문서의 실시 예에 따르는 전자 장치는 전술한 기기들에 한정되지 않으며, 기술 발전에 따르는 새로운 전자 장치를 포함할 수 있다.
본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
이하, 첨부 도면을 참조하여, 다양한 실시 예들을 상세히 설명하면 다음과 같다. 다만, 설명의 편의를 위하여 도면에서는 구성 요소들이 그 크기가 과장 또는 축소 될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.
도 1은 다양한 실시예들에 따른(in accordance with) 전자 장치의 간소화된 블록도(simplified block diagram)이다.
도 2는 다양한 실시예들에 따른 전자 장치 내에서 표시되는 사용자 인터페이스의 바 영역의 예를 도시한다.
도 3은 다양한 실시예들에 따른 전자 장치 내에서 표시되는 사용자 인터페이스의 일반 바 영역 및 확장된 바 영역의 예들을 도시한다.
도 4는 다양한 실시예들에 따른 전자 장치 내에서 표시되는 사용자 인터페이스의 확장된 바 영역들의 예들을 도시한다.
도 5는 다양한 실시예들에 따라 바 영역을 전환하거나 유지하는 예를 도시한다.
도 6은 다양한 실시예들에 따라 사용자 인터페이스의 표시 모드를 분할 화면 모드로 전환하는 것에 응답하여 바 영역을 전환하거나 유지하는 예를 도시한다.
도 7은 다양한 실시예들에 따라 사용자 인터페이스의 표시 모드를 팝업 화면 모드로 전환하는 것에 응답하여 바 영역을 전환하거나 유지하는 예를 도시한다.
도 8은 다양한 실시예들에 따라 드래그 제스쳐에 기반하여 일반 바 영역을 유지하거나 전환하는 예를 도시한다.
도 9는 다양한 실시예들에 따라 드래그 제스쳐에 기반하여 확장된 바 영역을 유지하거나 전환하는 예를 도시한다.
도 1을 참조하면, 전자 장치(101)는, 프로세서(120), 메모리(130), 및 디스플레이(140)를 포함할 수 있다.
프로세서(120)는 전자 장치(101)의 전반적인 동작을 제어할 수 있다. 예를 들면, 프로세서(120)는 메시지, 알람(alarm), 사진, 광고, 인터넷, 게임, 동영상 등을 제공하는 어플리케이션들을 실행할 수 있다. 다양한 실시예들에서, 프로세서(120)는 하나의 프로세서 코어(single core)를 포함하거나, 복수의 프로세서 코어들을 포함할 수 있다. 예를 들면, 프로세서(120)는 듀얼 코어(dual-core), 쿼드 코어(quad-core), 헥사 코어(hexa-core) 등의 멀티 코어(multi-core)를 포함할 수 있다. 실시 예들에 따라, 프로세서(120)는 내부 또는 외부에 위치된 캐시 메모리(cache memory)를 더 포함할 수 있다.
프로세서(120)는 전자 장치(101)의 다른 구성 요소들의 명령을 수신할 수 있고, 수신된 명령을 해석할 수 있으며, 해석된 명령에 따라 계산을 수행하거나 데이터를 처리할 수 있다.
프로세서(120)는 어플리케이션에서 생성되거나 발생되는 데이터 또는 신호를 처리할 수 있다. 예를 들면, 프로세서(120)는 어플리케이션을 실행하거나 제어하기 위해 메모리(130)에게 인스트럭션, 데이터 또는 신호를 요청할 수 있다. 프로세서(120)는 어플리케이션을 실행하거나 제어하기 위해 메모리(130)에게 인스트럭션, 데이터, 또는 신호를 기록(또는 저장)하거나 갱신할 수 있다.
프로세서(120)는 메모리(130) 또는 디스플레이(140)로부터 수신되는 메시지, 데이터, 인스트럭션, 또는 신호를 해석할 수 있고, 가공할 수 있다. 프로세서(120)는 수신된 메시지, 데이터, 인스트럭션, 또는 신호에 기반하여 새로운 메시지, 데이터, 인스트럭션, 또는 신호를 생성할 수 있다. 프로세서(120)는 가공되거나 생성된 메시지, 데이터, 인스트럭션, 또는 신호를 메모리(130) 또는 디스플레이(140)에게 제공할 수 있다.
프로세서(120)의 전부 또는 일부는 전자 장치(101) 내의 다른 구성 요소(예를 들면, 메모리(130) 또는 디스플레이(140)와 전기적으로(electrically) 또는 작동적으로(operably 또는 operatively) 결합(coupled with)되거나 연결될(connected to) 수 있다.
실시 예들에 따라, 프로세서(120)는 하나 또는 그 이상의 프로세서들로 구성될(configured with) 수 있다. 예를 들면, 프로세서(120)는 어플리케이션 프로그램(본 문서에서 어플리케이션으로 참조될 수 있음) 등과 같은 상위 계층의 프로그램을 제어하는 AP(application processor) 또는 디스플레이(140) 를 제어하기 위한 GPU(graphic processing unit) 중 하나 이상을 포함할 수 있다.
메모리(130)는 전자 장치(101)를 제어하는 인스트럭션, 제어 명령(command) 코드, 제어 데이터, 또는 사용자 데이터를 저장할 수 있다. 예를 들면, 메모리(130)는 어플리케이션(application), OS(operating system), 미들웨어(middleware), 디바이스 드라이버(device driver)를 포함할 수 있다.
메모리(130)는 휘발성 메모리(volatile memory) 또는 불휘발성(non-volatile memory) 중 하나 이상을 포함할 수 있다. 휘발성 메모리는 DRAM(dynamic random access memory), SRAM(static RAM), SDRAM(synchronous DRAM), PRAM(phase-change RAM), MRAM(magnetic RAM), RRAM(resistive RAM), FeRAM(ferroelectric RAM) 등을 포함할 수 있다. 불휘발성 메모리는 ROM(read only memory), PROM(programmable ROM), EPROM(electrically programmable ROM), EEPROM(electrically erasable programmable ROM), 플래시 메모리(flash memory) 등을 포함할 수 있다.
메모리(130)는 하드 디스크 드라이브(HDD, hard disk drive), 솔리드 스테이트 디스크(SSD, solid state disk), eMMC(embedded multi media card), UFS(universal flash storage)와 같은 불휘발성 매체(medium)를 포함할 수 있다.
디스플레이(140)는, 컨텐츠, 데이터, 또는 신호를 출력할 수 있다. 다양한 실시예들에서, 디스플레이(140)는 프로세서(120)에 의해 가공된 이미지 데이터를 표시할 수 있다.
실시예들에 따라, 디스플레이(140)는 터치 입력 등을 수신할 수 있는 복수의 터치 센서들(미도시)과 결합됨으로써, 일체형의 터치 스크린(touch screen)으로 구성될(configured with) 수도 있다. 디스플레이(140)가 터치 스크린으로 구성되는 경우, 상기 복수의 터치 센서들은, 디스플레이(140) 위에 배치되거나, 디스플레이(140) 아래에 배치되거나, 디스플레이(140) 내에 배치될 수 있다.
실시예들에 따라, 디스플레이(140)는, 디스플레이(140)의 적어도 일부를 접을 수 있는(foldable) 디스플레이(예: 폴더블 디스플레이)로 구성될 수 있다. 디스플레이(140)가 폴더블 디스플레이로 구성되는 경우, 전자 장치(101)는 디스플레이(140)를 접을 수 있는 구조(structure)를 가질 수 있다.
다양한 실시예들에서, 프로세서(120)는 전자 장치(101) 내에 설치된 어플리케이션을 실행하는 것에 응답하여, 상기 어플리케이션의 사용자 인터페이스(UI, user interface)를 표시할 수 있다. 다양한 실시예들에서, 상기 사용자 인터페이스는, 콘텐트 영역(content region) 및 바 영역(bar region)을 포함할 수 있다.
다양한 실시예들에서, 상기 콘텐트 영역은, 상기 어플리케이션의 실행 화면을 제공할 수 있다. 예를 들어, 상기 어플리케이션이 메시지 어플리케이션인 경우, 상기 콘텐트 영역은 전자 장치(101)로부터 송신된 메시지들을 포함하는 리스트 또는 전자 장치(101)에 수신된 메시지들을 포함하는 리스트 중 하나 이상을 제공할 수 있다. 다른 예를 들어, 상기 어플리케이션이 갤러리 어플리케이션인 경우, 상기 콘텐트 영역은, 전자 장치(101) 또는 전자 장치(101)와 연동된 서버(예: 클라우드 서버) 내에 저장된 이미지들의 적어도 일부를 보여주기(represent) 위한 썸네일 이미지들의 적어도 일부를 제공할 수 있다. 또 다른 예를 들어, 상기 어플리케이션이 알람 어플리케이션인 경우, 상기 콘텐트 영역은 전자 장치(101)에 현재 설정된 하나 이상의 알람들에 대한 정보를 제공할 수 있다. 또 다른 예를 들어, 상기 어플리케이션이 연락처(contacts) 어플리케이션인 경우, 상기 콘텐트 영역은 전자 장치(101) 내에 등록된 연락처들을 포함하는 리스트를 제공할 수 있다. 다양한 실시예들에서, 상기 콘텐트 영역의 사이즈는, 상기 바 영역의 사이즈보다 클 수 있다. 다양한 실시예들에서, 상기 콘텐트 영역은, 상기 어플리케이션의 실행 화면을 제공한다는 측면 또는 상기 바 영역보다 큰 사이즈를 가진다는 측면에서, 상기 사용자 인터페이스의 메인 표시 영역(main display area)으로 참조될 수 있다.
다양한 실시예들에서, 상기 바 영역은, 상기 콘텐트 영역 내에서 제공되는 상기 어플리케이션의 상기 실행 화면에 대한 정보 또는 상기 어플리케이션의 상기 실행 화면에 대한 액션(action) 아이템들을 제공할 수 있다.
예를 들면, 상기 실행 화면에 대한 정보는, 상기 실행 화면에 포함된 복수의 콘텐츠(contents) 중 대표 콘텐트(content)에 대한 정보를 포함할 수 있다. 예를 들면, 상기 실행 화면에 대한 정보는, 상기 실행 화면을 제공하는 상기 어플리케이션의 타이틀(title)에 대한 정보를 포함할 수 있다. 예를 들면, 상기 실행 화면에 대한 정보는, 상기 실행 화면에 대한 요약 정보(summary information)를 포함할 수 있다. 예를 들면, 상기 실행 화면에 대한 정보는, 상기 실행 화면에 대한 통계적 정보(statistical information)를 포함할 수 있다. 예를 들면, 상기 실행 화면에 대한 정보는, 상기 실행 화면의 상태(예: 현재 섹션(current section))에 대한 정보를 포함할 수 있다. 하지만, 이에 제한되지 않는다. 다양한 실시예들에서, 상기 실행 화면에 대한 정보는, 적어도 하나의 실행불가능한(non-executable) 객체로 구성될(configured with) 수 있다. 다양한 실시예들에서, 상기 실행 화면에 대한 정보는, 적어도 하나의 텍스트로 구성될 수 있다.
예를 들면, 상기 액션 아이템들은, 상기 어플리케이션의 실행 화면을 통해 제공할 수 있는 메뉴를 호출할(invoke) 수 있는 실행가능한(executable) 객체를 포함할 수 있다. 예를 들면, 상기 액션 아이템들은, 상기 어플리케이션의 실행 화면을 제어하기 위한 실행가능한 객체를 포함할 수 있다. 예를 들면, 상기 액션 아이템들은, 상기 어플리케이션의 상기 실행 화면 또는 상기 어플리케이션의 상기 실행 화면에 포함된 적어도 하나의 콘텐트를 다른 어플리케이션에게 전송하기(transfer) 위한 실행가능한 객체를 포함할 수 있다. 예를 들면, 상기 액션 아이템들은, 상기 어플리케이션의 상기 실행 화면을 즐겨찾기(favorites)에 추가하기(add) 위한 실행가능한 객체를 포함할 수 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 상기 바 영역은 상기 콘텐트 영역 바로 위(directly above) 또는 상기 콘텐트 영역 바로 아래(directly below)에 위치될 수 있다.
다양한 실시예들에서, 상기 바 영역은, 전환가능한 바 영역일 수 있다. 예를 들면, 상기 바 영역은, 제1 사이즈를 가지는 일반 바 영역(regular bar region)으로부터 상기 제1 사이즈보다 큰 제2 사이즈를 가지는 확장된 바 영역(expanded bar region)으로 전환되거나 상기 확장된 바 영역으로부터 상기 일반 바 영역으로 전환될 수 있다. 예를 들면, 상기 바 영역은, 지정된 높이를 가지는 일반 바 영역으로부터 상기 지정된 높이보다 긴 다른 지정된(another designated) 높이를 가지는 확장된 바 영역으로 전환되거나 상기 확장된 바 영역으로부터 상기 일반 바 영역으로 전환될 수 있다. 다양한 실시예들에서, 상기 확장된 바 영역은, 상기 일반 바 영역보다 큰 사이즈를 가지거나 넓은 면적을 가질 수 있다. 상기 확장된 바 영역은, 상기 일반 바 영역보다 큰 사이즈를 가진다는 측면 또는 상기 일반 바 영역보다 높은 시인성(visibility)을 가진다는 측면에서, 프로미넌트(prominent) 바 영역으로 참조될 수도 있다. 다양한 실시예들에서, 상기 확장된 바 영역 내에 포함되는 텍스트의 폰트 사이즈는, 상기 일반 바 영역 내에 포함되는 텍스트의 폰트 사이즈보다 클 수 있다. 다양한 실시예들에서, 상기 일반 바 영역 내에 포함되는 적어도 하나의 실행불가능한 객체 및 적어도 하나의 실행가능한 객체는 단일 행(single row)에 표시되는 반면, 상기 확장된 바 영역 내에 포함되는 적어도 하나의 실행불가능한 객체 및 적어도 하나의 실행가능한 객체는 다중 행들(multiple rows)에 표시될 수 있다. 다양한 실시예들에서, 상기 확장된 바 영역은 상기 일반 바 영역 내에 포함되는 정보보다 많은 정보를 포함할 수 있다. 예를 들면, 상기 일반 바 영역은 상기 어플리케이션의 타이틀 정보만을 포함하는 반면, 상기 확장된 바 영역은 상기 어플리케이션의 상기 타이틀 정보뿐 아니라 상기 콘텐트 영역 내에서 표시되는 상기 어플리케이션의 상기 실행 화면의 요약 정보를 포함할 수 있다. 다시 말해, 상기 확장된 바 영역은, 상기 일반 바 영역과 비교하여, 상기 실행 화면의 요약 정보를 더(further) 포함할 수 있다. 다른 예를 들면, 상기 확장된 바 영역은, 상기 일반 바 영역과 비교하여, 상기 콘텐트 영역 내에서 표시되는 상기 어플리케이션의 상기 실행 화면 내에 포함된 상기 복수의 분류가능한 콘텐츠를 적어도 하나의 분류 기준(criterion)에 따라 분류하기 위한 적어도 하나의 실행가능한 객체를 더 포함할 수 있다. 또 다른 예를 들면, 상기 확장된 바 영역은, 상기 일반 바 영역과 비교하여, 상기 콘텐트 영역 내에서 표시되는 상기 어플리케이션의 상기 실행 화면 내에 포함되는 복수의 콘텐츠 중 가장 높은 우선순위를 가지는 콘텐트에 대한 정보를 더 포함할 수 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 프로세서(120)는, 상황(situation)에 따라 상기 바 영역을 상기 일반 바 영역으로부터 전환하거나 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 상황에 따라 상기 바 영역을 제1 상태의 상기 일반 바 영역으로부터 제2 상태의 일반 바 영역으로 전환하거나 상기 제2 상태의 상기 일반 바 영역을 상기 제1 상태의 일반 바 영역으로 전환할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 상황에 따라, 상기 바 영역을 제1 상태의 상기 확장된 바 영역으로부터 제2 상태의 상기 확장된 바 영역으로 전환하거나 상기 제2 상태의 상기 확장된 바 영역으로부터 상기 제1 상태의 상기 확장된 바 영역으로 전환할 수 있다.
예를 들어, 도 2를 참조하면, 프로세서(120)는, 디스플레이(140)를 이용하여, 상황(201-1)과 같이, 콘텐트 영역(203) 및 제1 상태의 일반 바 영역(205-1)을 포함하는 어플리케이션(예: 갤러리 어플리케이션)의 사용자 인터페이스(207)를 표시할 수 있다. 다양한 실시예들에서, 제1 상태의 일반 바 영역(205-1)은 콘텐트 영역(203) 내에서 표시되는 상기 어플리케이션의 실행 화면을 통해 제공할 수 있는 메뉴를 호출할 수 있는 실행가능한 객체(209), 콘텐트 영역(203) 내에서 표시되는 상기 어플리케이션의 실행 화면을 제어하기 위한 실행가능한 객체들(210), 및 상기 어플리케이션의 타이틀 정보를 포함하는 실행불가능한 객체(211)를 포함할 수 있다. 하지만, 이에 제한되지 않는다. 다양한 실시예들에서, 사용자 인터페이스(207)는 인디케이터 영역(212) 바로 아래에 표시될 수 있다. 다양한 실시예들에서, 인디케이터 영역(212)은 전자 장치(101)의 상태를 나타내기 위해 이용될 수 있다. 예를 들면, 인디케이터 영역(212)은 전자 장치(101)의 상태를 나타내기 위한 인디케이터들(213)(예: 전자 장치(101)가 현재 제공할 수 있는 통신 품질을 나타내기(indicate) 위한 안테나 인디케이터, 전자 장치(101)의 재충전가능한(rechargeable) 배터리의 잔여량을 나타내기 위한 배터리 인디케이터, 전자 장치(101)가 락 상태(lock state)인지 언락(unlock) 상태인지 여부를 나타내기 위한 락 인디케이터 등)을 포함할 수 있다. 실시예들에 따라, 프로세서(120)는 인디케이터 영역(212)의 표시 없이 사용자 인터페이스(207)를 표시할 수도 있다.
다양한 실시예들에서, 프로세서(120)는, 제1 상태의 일반 바 영역(205-1)을 포함하는 사용자 인터페이스(207)를 표시하는 동안 지정된 입력을 수신하는 것에 응답하여, 제1 상태의 일반 바 영역(205-1)을 제2 상태의 일반 바 영역(205-2)으로 전환할 수 있다. 예를 들면, 프로세서(120)는, 콘텐트 영역(203) 내에서 표시되는 상기 실행 화면 내에 포함된 복수의 썸네일 이미지들 중 적어도 하나의 썸네일 이미지를 선택하기 위한 입력을 제1 상태의 일반 바 영역(205-1)을 포함하는 사용자 인터페이스(207)를 표시하는 동안 수신하는 것에 응답하여, 상황(201-2)과 같이, 제1 상태의 일반 바 영역(205-1)을 제2 상태의 일반 바 영역(205-2)으로 전환할 수 있다. 다양한 실시예들에서, 제2 상태의 일반 바 영역(205-2)은, 상기 선택된 적어도 하나의 썸네일 이미지에 대한 액션 아이템들을 포함할 수 있다. 예를 들면, 제2 상태의 일반 바 영역(205-2)은, 상기 적어도 하나의 썸네일 이미지의 선택을 취소하기(cancel) 위한 실행가능한 객체(215), 상기 선택된 적어도 하나의 썸네일 이미지에 대응하는 적어도 하나의 이미지의 처리 방법들을 결정하기 위한 실행 가능한 객체들(216), 실행가능한 객체(215) 및 실행가능한 객체(216)와 구별되는 기능을 제공하기 위한 적어도 하나의 실행가능한 객체를 호출하기(invoke) 위한 실행가능한 객체(217), 및 상기 선택된 적어도 하나의 썸네일 이미지의 수를 나타내기 위한 실행불가능한 객체(218)를 포함할 수 있다. 제2 상태의 일반 바 영역(205-2)은, 입력의 수신에 의존하여 표시된다는 측면에서, 상황적 액션 일반 바(contextual action regular bar) 영역으로 참조될 수 있다.
다양한 실시예들에서, 프로세서(120)는, 제1 상태의 일반 바 영역(205-1)을 포함하는 사용자 인터페이스(207)를 표시하는 동안 지정된 입력을 수신하는 것에 응답하여, 상황(201-3)과 같이, 제1 상태의 일반 바 영역(205-1)을 제1 상태의 확장된 바 영역(219-1)으로 전환할 수 있다. 다양한 실시예들에서, 제1 상태의 확장된 바 영역(219-1)은 실행가능한 객체(209), 실행가능한 객체들(210), 및 실행불가능한 객체(211)를 포함할 수 있다. 다양한 실시예들에서, 제1 상태의 확장된 바 영역(219-1) 내에 포함되는 객체들(예: 실행가능한 객체(209), 실행가능한 객체들(210), 및 실행불가능한 객체(211))의 배치는, 제1 상태의 일반 바 영역(205-1)에 포함되는 객체들(예: 실행가능한 객체(209), 실행가능한 객체들(210), 및 실행불가능한 객체(211))의 배치와 구별될 수 있다. 예를 들면, 제1 상태의 확장된 바 영역(219-1)은 제1 상태의 일반 바 영역(205-1)보다 넓은 면적을 가지기 때문에, 제1 상태의 확장된 바 영역(219-1) 내에 배치되는 상기 객체들은, 제1 상태의 일반 바 영역(205-1) 내에 배치되는 상기 객체들과 달리, 다중 행들에 표시될 수 있다. 하지만, 이에 제한되지 않는다. 다양한 실시예들에서, 제1 상태의 일반 바 영역(205-1)을 포함하는 사용자 인터페이스(207)의 사이즈와 제1 상태의 확장된 바 영역(219-1)을 포함하는 사용자 인터페이스(207)의 사이즈가 서로 같은 경우, 제1 상태의 확장된 바 영역(219-1)을 포함하는 사용자 인터페이스(207)에 포함된 콘텐트 영역(203)의 사이즈는 제1 상태의 일반 바 영역(205-1)을 포함하는 사용자 인터페이스(207)에 포함된 콘텐트 영역(203)의 사이즈보다 작을 수 있다. 예를 들면, 제1 상태의 일반 바 영역(205-1)을 포함하는 사용자 인터페이스(207)의 사이즈와 제1 상태의 확장된 바 영역(219-1)을 포함하는 사용자 인터페이스(207)의 사이즈가 서로 같은 경우, 제1 상태의 확장된 바 영역(219-1)을 포함하는 사용자 인터페이스(207)에 포함된 콘텐트 영역(203)은 제1 상태의 확장된 바 영역(219-1)와 제1 상태의 일반 바 영역(205-1) 사이의 사이즈의 차이로 인하여, 전자 장치(101)를 그립한 사용자의 손에 가까운 위치부터 실행 화면을 제공할 수 있다. 예를 들면, 상태의 확장된 바 영역(219-1)을 포함하는 사용자 인터페이스(207)를 표시하는 전자 장치(101)를 이용하는 사용자는, 보다 쉽게 한 손(one hand)을 이용하여 콘텐트 영역(203) 내에 표시되는 실행 화면을 조작할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 제1 상태의 확장된 바 영역(219-1)을 포함하는 사용자 인터페이스(207)를 표시하는 동안 지정된 입력을 수신하는 것에 응답하여, 제1 상태의 확장된 바 영역(219-1)을 제2 상태의 확장된 바 영역(219-1)으로 전환할 수 있다. 예를 들면, 프로세서(120)는, 콘텐트 영역(203) 내에서 표시되는 상기 실행 화면 내에 포함된 복수의 썸네일 이미지들 중 적어도 하나의 썸네일 이미지를 선택하기 위한 입력을 제1 상태의 확장된 바 영역(219-1)을 포함하는 사용자 인터페이스(207)를 표시하는 동안 수신하는 것에 응답하여, 상황(201-4)과 같이, 제1 상태의 확장된 바 영역(219-1)을 제2 상태의 확장된 바 영역(219-2)으로 전환할 수 있다. 다양한 실시예들에서, 제2 상태의 확장된 바 영역(219-2)은, 상기 선택된 적어도 하나의 썸네일 이미지에 대한 액션 아이템들을 포함할 수 있다. 예를 들면, 제2 상태의 확장된 바 영역(219-2)은, 실행가능한 객체(215), 실행가능한 객체들(216), 실행가능한 객체(217), 및 실행불가능한 객체(218)를 포함할 수 있다. 제2 상태의 확장된 바 영역(219-2)은, 입력의 수신에 의존하여 표시된다는 측면에서, 상황적 액션 확장된 바 영역(contextual action expanded bar region)으로 참조될 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 일반 바 영역 또는 상기 확장된 바 영역의 사이즈를 상황에 따라 변경할 수 있다. 예를 들면, 다양한 실시예들에서, 프로세서(120)는, 입력을 수신하는 동안 상기 일반 바 영역의 사이즈를 변경할 수 있다. 예를 들면, 프로세서(120)는, 입력을 수신하는 동안 상기 확장된 바 영역의 사이즈를 변경할 수 있다.
예를 들어, 도 3을 참조하면, 프로세서(120)는, 상황(301-1)과 같이, 콘텐트 영역(203) 및 제1 높이(302)를 가지는 일반 바 영역(205)을 포함하는 갤러리 어플리케이션의 사용자 인터페이스(207)를 인디케이터 영역(212)과 함께 표시할 수 있다. 예를 들면, 프로세서(120)는, 콘텐트 영역(203) 및 제1 높이(302)를 가지는 일반 바 영역(205)을 포함하는 갤러리 어플리케이션의 사용자 인터페이스(207)를 인디케이터 영역(212)과 함께 표시하는 동안 드래그 입력(302)의 수신이 개시됨을 식별하는 것에 응답하여, 상황(301-2)과 같이, 사용자 인터페이스(207)에 포함된 일반 바 영역(205)의 높이를 제1 높이(302)로부터 제1 높이(302)보다 짧은 제2 높이(304)로 변경할 수 있다. 제2 높이(304)를 가지는 일반 바 영역(205)은, 제1 높이(302)를 가지는 일반 바 영역(205)보다 좁은 면적을 가진다는 측면에서, 빽빽한 일반 바 영역(dense regular bar region)으로 참조될 수 있다. 다양한 실시예들에서, 일반 바 영역(205)의 제2 높이(304)는 드래그 입력(302)이 유지되는 동안 유지될 수 있다. 다양한 실시예들에서, 일반 바 영역(205)의 높이는, 드래그 입력(302)의 해제를 검출하는 것에 응답하여, 제1 높이(302)로 복원될 수 있다. 하지만, 이에 제한되지 않는다.
다른 예를 들어, 도 3을 참조하면, 프로세서(120)는, 상황(301-3)과 같이, 콘텐트 영역(203) 및 제3 높이(305)를 가지는 확장된 바 영역(219)을 포함하는 갤러리 어플리케이션의 사용자 인터페이스(207)을 인디케이터 영역(212)과 함께 표시할 수 있다. 예를 들면, 프로세서(120)는, 콘텐트 영역(203) 및 제3 높이(305)를 가지는 확장된 바 영역(219)을 포함하는 갤러리 어플리케이션의 사용자 인터페이스(207)을 인디케이터 영역(212)과 함께 표시하는 동안 드래그 입력(306)의 수신이 개시됨을 식별하는 것에 응답하여, 상황(301-3)과 같이, 사용자 인터페이스(207)에 포함된 확장된 바 영역(219)의 높이를 제3 높이(305)로부터 제3 높이(305)보다 짧은 제4 높이(307)로 변경할 수 있다. 제4 높이(307)를 가지는 확장된 바 영역(219)은, 제3 높이(305)를 가지는 확장된 바 영역(219)보다 좁은 면적을 가진다는 측면에서, 빽빽한 확장된 바 영역(dense expanded bar region)으로 참조될 수 있다. 다양한 실시예들에서, 확장된 바 영역(219)의 제4 높이(307)는 드래그 입력(306)이 유지되는 동안 유지될 수 있다. 다양한 실시예들에서, 확장된 바 영역(219)의 높이는, 드래그 입력(306)의 해제를 검출하는 것에 응답하여, 제3 높이(305)로 복원될 수 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 사용자 인터페이스 내에 포함되는 상기 확장된 바 영역은 상황에 따라 다양한 정보를 제공할 수 있다. 예를 들면, 사용자 인터페이스 내에 포함된 상기 확장된 바 영역은, 실행되는 어플리케이션의 종류, 상기 사용자 인터페이스 내에 포함된 콘텐트 영역 내에서 표시되는 실행 화면 내의 콘텐츠(content)의 종류, 또는 상기 사용자 인터페이스 내에 포함된 콘텐트 영역 내에서 표시되는 실행 화면의 상태 중 적어도 하나에 따라 다양한 정보를 제공할 수 있다.
예를 들어, 도 4를 참조하면, 확장된 바 영역(219)은, 상황(401-1)과 같이, 상기 사용자 인터페이스를 제공하는 어플리케이션의 타이틀 정보를 포함하는 실행불가능한 객체(402) 및 상기 사용자 인터페이스의 콘텐트 영역 내에서 표시되는 실행 화면을 통해 제공할 수 있는 메뉴를 호출할 수 있는 실행가능한 객체(403)를 포함할 수 있다. 상황(401-1)에서 실행불가능한 객체(402)와 실행가능한 객체(403)는 단일 행에 표시될 수 있다.
다른 예를 들면, 확장된 바 영역(219)은, 상황(401-2)과 같이, 실행불가능한 객체(402) 및 실행가능한 객체(403)를 복수의 행들에 표시할 수 있다. 예를 들면, 확장된 바 영역(219) 내에 포함된 실행가능한 객체(403)는, 확장된 바 영역(219) 내에 포함된 실행불가능한 객체(402)를 표시하는 행과 구별되는 다른 행에 표시될 수 있다. 다양한 실시예들에서, 실행불가능한 객체(402)를 구성하는 텍스트의 폰트 사이즈는, 일반 바 영역 내에 포함된 실행불가능한 객체를 구성하는 텍스트의 폰트 사이즈보다 클 수 있다.
또 다른 예를 들면, 확장된 바 영역(219)은, 상황(401-3)과 같이, 실행불가능한 객체(402) 및 실행가능한 객체(403) 뿐 아니라 사용자 인터페이스의 콘텐트 영역 내에서 표시되는 실행 화면의 통계적 정보를 포함하는 실행불가능한 객체(404)를 포함할 수 있다. 예를 들어, 상기 사용자 인터페이스가 메시지 어플리케이션이 제공하는 사용자 인터페이스인 경우, 실행불가능한 객체(404)는, 안 읽은 메시지가 X 개 있고, 중요 메시지가 Y 개 있으며, 총 메시지들의 수가 Z 개임을 알리기 위한 통계적 정보를 포함할 수 있다.
또 다른 예를 들면, 확장된 바 영역(219)은, 상황(401-4)과 같이, 실행불가능한 객체(402) 및 실행가능한 객체(403) 뿐 아니라 사용자 인터페이스(207)의 콘텐트 영역(203) 내에 포함된 복수의 분류가능한(classifiable) 콘텐츠(contents)를 분류하는 기준(criterion)을 위한 적어도 하나의 실행가능한 객체(405)를 포함할 수 있다. 예를 들면, 적어도 하나의 실행가능한 객체(405)는, 이메일들을 기준 A에 기반하여 분류하기 위한 실행가능한 객체, 이메일들을 기준 B에 기반하여 분류하기 위한 실행가능한 객체, 및 이메일들을 기준 C에 기반하여 분류하기 위한 실행가능한 객체를 포함할 수 있다.
또 다른 예를 들면, 확장된 바 영역(219)은, 상황(401-5)와 같이, 실행가능한 객체(403) 뿐 아니라 사용자 인터페이스(207)의 콘텐트 영역(203) 내에 포함된 복수의 콘텐츠 중 가장 높은 우선순위를 가지는 콘텐트에 대한 정보를 포함하는 실행불가능한 객체(406), 및 사용자 인터페이스(207)의 콘텐트 영역(203) 내에 포함된 상기 복수의 콘텐츠를 제어하기 위한 실행가능한 객체들(407)을 포함할 수 있다. 예를 들면, 실행불가능한 객체(406)는, 콘텐트 영역(203) 내에 포함된 복수의 콘텐츠들(예: 각 도시들의 지역시를 나타내는 시각적 객체들(408)) 중 전자 장치(101)가 현재 위치된 지역의 지역시를 나타내는 시각적 객체(예: 서울의 로컬 타임 존)에 대응할 수 있다. 예를 들면, 실행가능한 객체들(407)은 지역시의 추가를 위한 실행가능한 객체 또는 사용자 인터페이스(207)를 제공하는 어플리케이션에서 지원할 수 있는 다른 기능들에 대한 메뉴를 호출하기 위한 실행가능한 객체를 더 포함할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 콘텐트 영역 및 바 영역을 포함하는 사용자 인터페이스의 사이즈에 따라, 상기 바 영역을 일반 바 영역으로 제공하거나 상기 바 영역을 확장된 바 영역으로 제공할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 콘텐트 영역 및 바 영역을 포함하는 사용자 인터페이스의 높이에 따라, 상기 바 영역을 일반 바 영역으로 제공하거나 상기 바 영역을 확장된 바 영역으로 제공할 수 있다. 예를 들면, 프로세서(120)는, 상기 확장된 바 영역을 포함하는 사용자 인터페이스의 사이즈를 변경하거나 상기 확장된 바 영역을 포함하는 사용자 인터페이스의 높이를 변경하는 이벤트를 검출할 수 있다. 프로세서(120)는, 상기 이벤트의 검출에 응답하여, 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 지 여부를 결정하기 위해 상기 변경될 높이를 식별할 수 있다. 예를 들면, 프로세서(120)는, 상기 변경될 높이를 식별하는 동안, 상기 변경될 높이가 기준 높이보다 긴지 여부를 식별하고, 상기 변경될 높이가 상기 기준 높이보다 길다는 식별에 기반하여, 상기 확장된 바 영역을 유지하고, 상기 변경될 높이가 상기 기준 높이보다 짧다는 식별에 기반하여 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 수 있다. 다양한 실시예들에서, 상기 기준 높이는, 상기 확장된 바 영역을 제공할 지 상기 일반 바 영역을 제공할 지 여부를 결정하기 위한 기준(criterion)으로 전자 장치(101) 내에서 구성될 수 있다.
예를 들어, 도 5를 참조하면, 프로세서(120)는, 상황(501-1)과 같이, 확장된 바 영역(219) 및 콘텐트 영역(203)를 포함하는 사용자 인터페이스(207)를 표시할 수 있다. 다양한 실시예들에서, 확장된 바 영역(219) 및 콘텐트 영역(203)를 포함하는 사용자 인터페이스(207)는 상기 기준 높이보다 긴 제1 높이(502)를 가질 수 있다. 프로세서(120)는, 확장된 바 영역(219) 및 콘텐트 영역(203)를 포함하고 제1 높이(502)를 가지는 사용자 인터페이스(207)를 표시하는 동안, 제1 높이(502)를 다른 높이로 변경하기 위한 입력을 수신할 수 있다. 예를 들면, 상기 입력은, 사용자 인터페이스(207)를 제공하는 어플리케이션과 구별되는 다른(another) 어플리케이션을 상기 어플리케이션과 함께 실행하기 위한 입력일 수 있다. 예를 들면, 상기 입력은, 사용자 인터페이스(207)의 표시 모드를 전체 화면 모드(full screen mode)로부터 팝업 화면 모드(pop-up screen mode)로 전환하기 위한 입력일 수도 있다. 하지만, 이에 제한되지 않는다.
프로세서(120)는, 상기 입력을 수신하는 것에 응답하여, 상기 다른 높이가 기준 높이보다 긴 지 여부를 식별할 수 있다. 예를 들어, 상기 다른 높이가 상기 기준 높이보다 긴 제2 높이(503)인 경우, 프로세서(120)는, 상황(501-2)과 같이, 사용자 인터페이스(207)에 포함된 확장된 바 영역(219)을 유지할 수 있다. 예를 들면, 프로세서(120)는, 사용자 인터페이스(207)의 높이의 감소와 독립적으로(independently of), 확장된 바 영역(219)을 유지할 수 있다. 다른 예를 들어, 상기 다른 높이가 상기 기준 높이보다 짧거나 같은 제3 높이(504)인 경우, 프로세서(120)는, 상황(501-3)과 같이, 사용자 인터페이스(207)에 포함된 확장된 바 영역(219)을 확장된 바 영역(219)의 면적보다 좁은 면적을 가지는 일반 바 영역(205)으로 전환할 수 있다. 예를 들면, 프로세서(120)는, 사용자 인터페이스(207)의 높이의 감소에 의존하여, 확장된 바 영역(219)을 일반 바 영역(205)으로 전환할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 확장된 바 영역을 포함하는 사용자 인터페이스의 표시 모드를 전체 화면 모드로부터 분할 화면 모드로 전환하기 위한 입력에 기반하여, 상기 확장된 바 영역을 상기 일반 바 영역으로 전환하거나 상기 확장된 바 영역을 유지할 수 있다. 예를 들어, 도 6을 참조하면, 상황(601-1)과 같이, 프로세서(120)는, 인디케이터 영역(212)과 함께, 확장된 바 영역(219) 및 콘텐트 영역(203)을 포함하는 사용자 인터페이스(207)를 표시할 수 있다. 사용자 인터페이스(207)는, 상황(601-1)에서, 상기 기준 높이보다 긴 제1 높이(602)를 가질 수 있다. 프로세서(120)는, 제1 높이(602)를 가지는 사용자 인터페이스(207)를 표시하는 동안, 실행 중인 어플리케이션들에 대한 정보를 호출하기 위한 입력을 수신할 수 있다. 프로세서(120)는, 실행 중인 어플리케이션들에 대한 정보를 호출하기 위한 상기 입력에 응답하여, 상황(601-2)과 같이, 전체 화면 모드의 사용자 인터페이스(207)를 실행 중인 어플리케이션들의 사용자 인터페이스들을 보여주기(represent) 위한 썸네일 이미지들의 적어도 일부를 포함하는 사용자 인터페이스(603)로 전환할 수 있다. 사용자 인터페이스(603)는 사용자 인터페이스(207)의 썸네일 이미지(604)를 표시할 수 있다. 프로세서(120)는, 썸네일 이미지(604)를 포함하는 사용자 인터페이스(603)를 표시하는 동안, 썸네일 이미지(604)에 의해 보여지는(represented) 사용자 인터페이스(207)의 표시 모드를 변경하기 위한 입력을 수신할 수 있다. 프로세서(120)는, 사용자 인터페이스(207)의 표시 모드를 변경하기 위한 입력을 수신하는 것에 응답하여, 상황(601-3)과 같이, 썸네일 이미지(604) 위에 중첩으로(as superimposed on), 지원 가능한 사용자 인터페이스(207)의 표시 모드들을 나타내는 실행가능한 객체들을 포함하는 메뉴 창(605)을 표시할 수 있다. 프로세서(120)는, 메뉴 창(605)을 표시하는 동안, 메뉴 창(605)에 포함된 실행가능한 객체들 중 분할 화면 모드를 나타내는 실행가능한 객체에 대한 입력(606)을 수신할 수 있다. 프로세서(120)는, 입력(606)의 수신에 응답하여, 분할 화면 모드로 표시될 사용자 인터페이스(207)의 변경될 높이를 식별할 수 있다. 상기 변경될 높이가 상기 기준 높이보다 긴 제2 높이(607)인 경우, 프로세서(120)는, 상황(601-4)과 같이, 확장된 바 영역(219)을 유지할 수 있다. 프로세서(120)는, 상황(601-4)에서, 사용자 인터페이스(207)를 제공하는 어플리케이션과 구별되는 다른 어플리케이션의 다른 사용자 인터페이스(608)를 사용자 인터페이스(207)와 함께 표시할 수 있다. 상기 변경될 높이가 상기 기준 높이보다 짧거나 같은 제3 높이(609)인 경우, 프로세서(120)는, 상황(601-5)과 같이, 확장된 바 영역(219)을 일반 바 영역(205)으로 전환할 수 있다. 프로세서(120는, 상황(601-5)에서, 사용자 인터페이스(207)를 제공하는 어플리케이션과 구별되는 다른 어플리케이션의 다른 사용자 인터페이스(608)를 사용자 인터페이스(207)와 함께 표시할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상황(601-4)에서 확장된 바 영역(219)을 포함하는 사용자 인터페이스(207)와 함께 다른 사용자 인터페이스(608)를 표시하는 동안 사용자 인터페이스(207)(또는 다른 사용자 인터페이스(608))의 사이즈를 변경하기 위한 입력(611)을 수신하는 것에 응답하여, 입력(611)에 의해 변경될 사용자 인터페이스(207)의 높이를 상기 기준 높이와 비교하고, 변경될 사용자 인터페이스(207)의 상기 높이가 상기 기준 높이보다 긴 경우 확장된 바 영역(219)을 유지하고, 변경될 사용자 인터페이스(207)의 상기 높이가 상기 기준 높이보다 짧거나 같은 경우 상황(601-5)과 같이, 확장된 바 영역(219)을 일반 바 영역(205)으로 전환할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상황(601-5)에서 일반 바 영역(205)을 포함하는 사용자 인터페이스(207)와 함께 다른 사용자 인터페이스(608)를 표시하는 동안 사용자 인터페이스(207)(또는 다른 사용자 인터페이스(608))의 사이즈를 변경하기 위한 입력(613)을 수신하는 것에 응답하여, 입력(613)에 의해 변경될 사용자 인터페이스(207)의 높이를 상기 기준 높이와 비교하고, 변경될 사용자 인터페이스(207)의 상기 높이가 상기 기준 높이보다 긴 경우 상황(601-4)과 같이, 일반 바 영역(205)을 확장된 바 영역(219)으로 전환하고, 변경될 사용자 인터페이스(207)의 상기 높이가 상기 기준 높이보다 짧거나 같은 경우 일반 바 영역(205)을 유지할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 확장된 바 영역을 포함하는 사용자 인터페이스의 표시 모드를 전체 화면 모드로부터 팝업 화면 모드로 전환하기 위한 입력에 기반하여, 상기 확장된 바 영역을 상기 일반 바 영역으로 전환하거나 상기 확장된 바 영역을 유지할 수 있다. 예를 들어, 도 7을 참조하면, 상황(701-1)과 같이, 프로세서(120)는, 인디케이터 영역(212)과 함께, 확장된 바 영역(219) 및 콘텐트 영역(203)을 포함하는 사용자 인터페이스(207)를 표시할 수 있다. 사용자 인터페이스(207)는, 상황(701-1)에서, 상기 기준 높이보다 긴 제1 높이(702)를 가질 수 있다. 프로세서(120)는, 제1 높이(702)를 가지는 사용자 인터페이스(207)를 표시하는 동안, 사용자 인터페이스(207)의 표시 모드를 상기 전체 화면 모드로부터 팝업 화면 모드로 전환하기 위한 입력을 수신할 수 있다. 프로세서(120)는, 상기 입력을 수신하는 것에 응답하여, 상기 팝업 화면 모드로 표시될 사용자 인터페이스(207)의 높이를 식별할 수 있다. 상기 식별된 높이가 상기 기준 높이보다 짧거나 같은 제2 높이(705)인 경우, 프로세서(120)는, 상황(701-2)과 같이, 홈 화면(703) 위에 중첩으로(as superimposed on) 표시되는 사용자 인터페이스(207) 내에서 확장된 바 영역(219)으로부터 전환된 일반 바 영역(205)을 표시할 수 있다. 다양한 실시예들에서, 홈 화면(703) 위에 중첩으로 표시되는 사용자 인터페이스(207) 내에 포함된 일반 바 영역(205)은, 상황(701-1)에서 표시되는 확장된 바 영역(219)보다 짧은 높이를 가지고 상황(701-1)에서 표시되는 확장된 바 영역(219)보다 짧은 폭을 가질 수 있다. 상기 식별된 높이가 상기 기준 높이보다 긴 제3 높이(707)임을 식별하는 경우, 프로세서(120)는, 상황(701-3)과 같이, 홈 화면(703) 위에 중첩으로 표시되는 사용자 인터페이스(207) 내에서 확장된 바 영역(219)을 유지할 수 있다. 다양한 실시예들에서, 홈 화면(703) 위에 중첩으로 표시되는 사용자 인터페이스(207) 내에 포함된 확장된 바 영역(219)은, 상황(701-1)에서 표시되는 확장된 바 영역(219)보다 낮은 배율로 표시될 수 있다. 다양한 실시예들에서, 홈 화면(703) 위에 중첩으로 표시되는 사용자 인터페이스(207) 내에 포함된 확장된 바 영역(219)은, 상황(701-1)에서 표시되는 일반 바 영역(205)의 폭에 대응하는 폭을 가지고 상황(701-1)에서 표시되는 일반 바 영역(205)의 높이보다 긴 높이를 가질 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 콘텐트 영역 및 상기 일반 바 영역을 포함하는 사용자 인터페이스를 표시하는 동안 상기 콘텐트 영역으로부터 시작된 드래그 제스쳐(drag gesture)의 해제를 검출하는 것에 응답하여, 상기 드래그 제스쳐의 해제의 위치가 지정된 영역 내인지 여부를 식별할 수 있다. 다양한 실시예들에서, 상기 지정된 영역은, 상기 콘텐트 영역 및 상기 일반 바 영역을 포함하는 사용자 인터페이스를 표시하는 동안 수신되는 상기 드래그 제스쳐가 상기 콘텐트 영역 내에 표시되는 실행 화면을 스크롤하기(scroll) 위한 입력인지 상기 일반 바 영역을 상기 확장된 바 영역으로 전환하기 위한 입력인지를 식별하기 위해 전자 장치(101) 내에서 구성될 수 있다. 예를 들면, 상기 지정된 영역은, 상기 콘텐트 영역 및 상기 일반 바 영역을 포함하는 사용자 인터페이스를 표시하는 동안, 디스플레이(140)의 표시 영역의 하반부 영역(lower half region)으로 구성될 수 있다. 하지만, 이에 제한되지 않는다. 다양한 실시예들에서, 프로세서(120)는, 상기 드래그 제스쳐의 상기 해제의 상기 위치가 상기 지정된 영역 안이라는 식별에 기반하여, 상기 일반 바 영역을 상기 확장된 바 영역으로 전환할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 상기 드래그 제스쳐의 상기 해제의 상기 위치가 상기 지정된 영역 밖이라는 식별에 기반하여, 상기 일반 바 영역을 유지하고 상기 콘텐트 영역의 상기 실행 화면을 상기 드래그 제스쳐의 방향에 따라 스크롤할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 콘텐트 영역 및 상기 확장된 바 영역을 포함하는 사용자 인터페이스를 표시하는 동안 상기 콘텐트 영역으로부터 시작된 드래그 제스쳐의 해제를 검출하는 것에 응답하여, 상기 드래그 제스쳐의 해제의 위치가 지정된 영역 내인지 여부를 식별할 수 있다. 다양한 실시예들에서, 상기 지정된 영역은, 상기 콘텐트 영역 및 상기 확장된 바 영역을 포함하는 사용자 인터페이스를 표시하는 동안 수신되는 상기 드래그 제스쳐가 상기 콘텐트 영역 내에 표시되는 실행 화면을 스크롤하기(scroll) 위한 입력인지 상기 확장된 바 영역을 상기 일반 바 영역으로 전환하기 위한 입력인지를 식별하기 위해 전자 장치(101) 내에서 구성될 수 있다. 예를 들면, 상기 지정된 영역은, 상기 콘텐트 영역 및 상기 확장된 바 영역을 포함하는 사용자 인터페이스를 표시하는 동안, 디스플레이(140)의 표시 영역의 상반부 영역(higher half region)으로 구성될 수 있다. 하지만, 이에 제한되지 않는다. 다양한 실시예들에서, 프로세서(120)는, 상기 드래그 제스쳐의 상기 해제의 상기 위치가 상기 지정된 영역 안이라는 식별에 기반하여, 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 상기 드래그 제스쳐의 상기 해제의 상기 위치가 상기 지정된 영역 밖이라는 식별에 기반하여, 상기 확장된 바 영역을 유지하고 상기 콘텐트 영역의 상기 실행 화면을 상기 드래그 제스쳐의 방향에 따라 스크롤할 수 있다.
예를 들어, 도 8을 참조하면, 프로세서(120)는, 상황(801-1)과 같이, 인디케이터 영역(212)과 함께, 일반 바 영역(205) 및 콘텐트 영역(203)을 포함하는 사용자 인터페이스(207)를 표시할 수 있다. 프로세서(120)는, 일반 바 영역(205) 및 콘텐트 영역(203)을 포함하는 사용자 인터페이스(207)를 표시하는 동안, 콘텐트 영역(203)으로부터 개시된 드래그 제스쳐(803)를 수신할 수 있다. 프로세서(120)는, 드래그 제스쳐(803)을 수신하는 동안, 상황(801-2)과 같이, 드래그 제스쳐(803)가 수신됨을 알리기 위해, 상황(801-1)에서 표시되는 일반 바 영역(205)의 제1 높이보다 긴 제2 높이를 가지는 일반 바 영역(205)을 표시할 수 있다. 다양한 실시예들에서, 상기 제2 높이를 가지는 일반 바 영역(205)은 확장된 바 영역(219)와 구별될 수 있다. 다양한 실시예들에서, 상기 제2 높이를 가지는 일반 바 영역(205)은, 드래그 제스쳐(803)를 수신하고 있음을 나타내기 위한 시각적 효과를 제공하기 위해 드래그 제스쳐(803)를 수신하는 동안에만 표시될 수 있다. 다양한 실시예들에서, 프로세서(120)는, 드래그 제스쳐(803)의 해제를 검출할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 드래그 제스쳐(803)의 해제의 위치가 지정된 영역 안인 위치(805)인 경우, 상황(801-3)과 같이, 사용자 인터페이스(207) 내의 상기 제2 높이를 가지는 일반 바 영역(205)을 확장된 바 영역(219)으로 전환할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 드래그 제스쳐(803)의 해제의 위치가 지정된 영역 밖인 위치(807)인 경우, 상황(801-4)과 같이, 사용자 인터페이스(207) 내의 상기 제2 높이를 가지는 일반 바 영역(205)을 제1 높이를 가지는 일반 바 영역(205)으로 복원하고 사용자 인터페이스(207) 내의 콘텐트 영역(203) 내에서 표시되는 실행 화면을 스크롤할 수 있다.
다른 예를 들어, 도 9를 참조하면, 프로세서(120)는, 상황(901-1)과 같이, 인디케이터 영역(212)과 함께, 확장된 바 영역(219) 및 콘텐트 영역(203)을 포함하는 사용자 인터페이스(207)를 표시할 수 있다. 프로세서(120)는, 확장된 바 영역(219) 및 콘텐트 영역(203)을 포함하는 사용자 인터페이스(207)를 표시하는 동안, 콘텐트 영역(203)으로부터 개시된 드래그 제스쳐(903)를 수신할 수 있다. 프로세서(120)는, 드래그 제스쳐(903)을 수신하는 동안, 상황(901-2)과 같이, 드래그 제스쳐(903)가 수신됨을 알리기 위해, 상황(901-1)에서 표시되는 확장된 바 영역(219)의 제1 높이보다 짧은 제2 높이를 가지는 확장된 바 영역(219)(예: 도 3의 제4 높이(307)를 가지는 확장된 바 영역(219))을 표시할 수 있다. 다양한 실시예들에서, 상기 제2 높이를 가지는 확장된 바 영역(219)은 일반 바 영역(205)와 구별될 수 있다. 다양한 실시예들에서, 상기 제2 높이를 가지는 확장된 바 영역(219)은, 드래그 제스쳐(903)를 수신하고 있음을 나타내기 위한 시각적 효과를 제공하기 위해 드래그 제스쳐(903)를 수신하는 동안에만 표시될 수 있다. 다양한 실시예들에서, 프로세서(120)는, 드래그 제스쳐(903)의 해제를 검출할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 드래그 제스쳐(903)의 해제의 위치가 지정된 영역 안인 위치(905)인 경우, 상황(901-3)과 같이, 사용자 인터페이스(207) 내의 상기 제2 높이를 가지는 확장된 바 영역(219)을 일반 바 영역(219)으로 전환할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 드래그 제스쳐(803)의 해제의 위치가 지정된 영역 밖인 위치(907)인 경우, 상황(901-4)과 같이, 사용자 인터페이스(207) 내의 상기 제2 높이를 가지는 확장된 바 영역(219)을 확장된 바 영역(219)으로 복원하고 사용자 인터페이스(207) 내의 콘텐트 영역(203) 내에서 표시되는 실행 화면을 스크롤할 수 있다.
상술한 바와 같은, 전자 장치(electronic device)(예: 전자 장치(101))는, 디스플레이(예: 디스플레이(140))와, 인스트럭션(instruction)들을 저장하는 메모리(예: 메모리(130))와, 상기 메모리 및 상기 디스플레이와 작동적으로 결합된(operably coupled with) 적어도 하나의 프로세서(예: 프로세서(120))를 포함할 수 있고, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들을 실행할 시, 어플리케이션을 실행하는 동안, 콘텐트 영역(content region) 및 상기 콘텐트 영역 바로 위의(directly above) 확장된(expanded) 바 영역(bar region)을 포함하고 기준 높이보다 긴 제1 높이(height)를 가지는 상기 어플리케이션의 사용자 인터페이스(user interface)를 상기 디스플레이를 이용하여 표시하고, 표시되고 있는 상기 사용자 인터페이스의 상기 제1 높이를 상기 기준 높이보다 짧은 제2 높이로 변경하기 위한 입력을 수신하고, 상기 입력을 수신하는 것에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 상기 확장된 바 영역의 면적보다 좁은 면적을 가지는 일반(regular) 바 영역으로 상기 디스플레이를 이용하여 전환하도록 구성될 수 있다.
다양한 실시예들에서, 상기 입력은, 상기 어플리케이션과 함께, 상기 어플리케이션과 구별되는 다른(another) 어플리케이션을 실행하기 위한 입력일 수 있고, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들을 실행할 시, 상기 입력을 수신하는 것에 응답하여, 상기 다른 어플리케이션을 실행하고, 상기 다른 어플리케이션을 실행하는 것에 응답하여, 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스와 함께 상기 다른 어플리케이션의 다른 사용자 인터페이스를 상기 디스플레이를 이용하여 표시하도록 구성될 수 있다. 다양한 실시예들에서, 상기 다른 어플리케이션의 상기 다른 사용자 인터페이스는, 상기 확장된 바 영역으로부터 전환되는 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스 바로 아래에(directly below) 표시되거나 바로 위에(directly above) 표시될 수 있다. 다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들을 실행할 시, 상기 다른 어플리케이션을 실행하는 것에 응답하여, 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스와 함께 표시될 상기 다른 어플리케이션의 상기 다른 사용자 인터페이스의 제3 높이가 상기 기준 높이보다 긴 지 여부를 식별하고, 상기 제3 높이가 상기 기준 높이보다 김을 식별하는 것에 응답하여, 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스와 함께, 다른(another) 콘텐트 영역 및 상기 다른 콘텐트 영역 바로 위의 다른(another) 확장된 바 영역을 포함하는 상기 다른 어플리케이션의 상기 다른 사용자 인터페이스를 상기 디스플레이를 이용하여 표시하고, 상기 제3 높이가 상기 기준 높이보다 짧거나 같음을 식별하는 것에 응답하여, 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스와 함께, 상기 다른 콘텐트 영역 및 상기 다른 콘텐트 영역 바로 위의 다른(another) 일반 바 영역을 포함하는 상기 다른 어플리케이션의 상기 다른 사용자 인터페이스를 상기 디스플레이를 이용하여 표시하도록 구성될 수 있다.
다양한 실시예들에서, 상기 입력은, 상기 어플리케이션의 상기 사용자 인터페이스의 표시 모드를 전체 화면 모드(full screen mode)로부터 팝업 화면 모드(pop-up screen mode)로 전환하기 위한 입력일 수 있고, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들을 실행할 시, 상기 입력을 수신하는 것에 응답하여, 홈 화면(home screen) 위에 중첩으로(as superimposed over), 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스를 상기 디스플레이를 이용하여 표시하도록 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들을 실행할 시, 표시되고 있는 상기 사용자 인터페이스의 상기 제1 높이를 상기 기준 높이보다 길거나 같은 제3 높이로 변경하기 위한 다른(another) 입력을 수신하고, 상기 다른 입력을 수신하는 것에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 유지하도록 더(further) 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들을 실행할 시, 상기 콘텐트 영역 및 상기 확장된 바 영역을 포함하는 상기 사용자 인터페이스를 표시하는 동안, 상기 콘텐트 영역으로부터 시작된(initiated) 드래그 제스쳐(drag gesture)의 해제(release)를 검출하고, 상기 드래그 제스쳐의 상기 해제의 위치(location)가 상기 디스플레이의 표시 영역 내의 지정된 영역 안이라는 식별에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 상기 일반 바 영역으로 상기 디스플레이를 이용하여 전환하고, 상기 드래그 제스쳐의 상기 해제의 상기 위치가 상기 표시 영역 내의 상기 지정된 영역 밖이라는 식별에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 유지하도록 더 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들을 실행할 시, 상기 콘텐트 영역 및 상기 일반 바 영역을 포함하는 상기 사용자 인터페이스를 표시하는 동안, 상기 콘텐트 영역으로부터 시작된 드래그 제스쳐의 해제를 검출하고, 상기 드래그 제스쳐의 상기 해제의 위치가 상기 디스플레이의 표시 영역 내의 지정된 영역 안이라는 식별에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 일반 바 영역을 상기 확장된 바 영역으로 상기 디스플레이를 이용하여 전환하고, 상기 드래그 제스쳐의 상기 해제의 상기 위치가 상기 표시 영역 내의 상기 지정된 영역 밖이라는 식별에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 일반 바 영역을 유지하도록 더 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 인스트럭션들을 실행할 시, 상기 입력을 수신하는 것에 응답하여, 상기 입력에 의해 변경될 상기 사용자 인터페이스의 폭(width)이 기준 폭보다 긴지 여부를 식별하고, 상기 폭이 상기 기준 폭보다 좁거나 같다는 식별에 응답하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 상기 일반 바 영역으로 상기 디스플레이를 이용하여 전환하고, 상기 폭이 상기 기준 폭보다 길다는 식별에 응답하여, 상기 확장된 바 영역을 유지하도록 더 구성될 수 있다.
다양한 실시예들에서, 상기 일반 및 확정된 바 영역들 각각은, 상기 콘텐트 영역 내에 표시되는 상기 어플리케이션의 실행 화면에 관한 정보를 제공하기 위한 적어도 하나의 실행불가능한(non-executable) 객체 및 상기 실행 화면에 대한 액션(action)들을 제공하기 위한 적어도 하나의 실행가능한(executable) 객체를 포함할 수 있다. 다양한 실시예들에서, 상기 확장된 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체를 구성하는 텍스트의 폰트 사이즈는, 상기 일반 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체를 구성하는 텍스트의 폰트 사이즈보다 클 수 있다.
다양한 실시예들에서, 상기 일반 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체 및 상기 적어도 하나의 실행가능한 객체는, 단일 행(single row)에 표시될 수 있고, 상기 확장된 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체 및 상기 적어도 하나의 실행가능한 객체는, 다중 행들(multiple rows)에 표시될 수 있다.
다양한 실시예들에서, 상기 일반 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체 및 상기 확장된 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체는, 상기 어플리케이션의 타이틀에 대한 정보를 포함할 수 있고, 상기 확장된 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체는, 상기 일반 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체와 비교하여(as compared to), 상기 실행 화면의 요약 정보를 더 포함할 수 있다.
다양한 실시예들에서, 상기 콘텐트 영역은, 복수의 분류가능한(classifiable) 콘텐츠(contents)를 포함하는 리스트(list)를 포함할 수 있고, 상기 확장된 바 영역은, 상기 일반 바 영역과 비교하여, 상기 콘텐트 영역 내에서 상기 복수의 분류가능한 콘텐츠를 적어도 하나의 기준(criterion)에 따라 분류하기 위한 적어도 하나의 실행가능한 객체를 더 포함할 수 있다.
다양한 실시예들에서, 상기 콘텐트 영역은, 복수의 콘텐츠(contents)를 포함할 수 있고, 상기 확장된 바 영역은, 상기 일반 바 영역과 비교하여, 상기 복수의 콘텐츠의 통계 정보(statistical information)를 더 포함할 수 있다.
다양한 실시예들에서, 상기 콘텐트 영역은, 복수의 콘텐츠(contents)를 포함할 수 있고, 상기 확장된 바 영역은, 상기 일반 바 영역과 비교하여, 상기 복수의 콘텐츠 중 가장 높은 우선순위를 가지는 콘텐트에 대한 정보를 더 포함할 수 있다.
도 10은 다양한 실시예들에 따라 바 영역을 전환하는 방법을 도시하는(illustrate) 흐름도(flow diagram)이다. 이러한 방법은, 도 1에 도시된 전자 장치(101) 또는 전자 장치(101)의 프로세서(120)에 의해 실행될 수 있다.
도 10을 참조하면, 동작 1010에서, 프로세서(120)는 어플리케이션을 실행하는 동안, 콘텐트 영역 및 확장된 바 영역을 포함하고 기준 높이보다 긴 제1 높이를 가지는 상기 어플리케이션의 사용자 인터페이스를 디스플레이(140)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 상기 확장된 바 영역은, 상기 콘텐트 영역 바로 위에서 표시될 수 있다. 다양한 실시예들에서, 상기 확장된 바 영역은, 상기 콘텐트 영역 바로 아래에서 표시될 수도 있다.
다양한 실시예들에서, 상기 콘텐트 영역은, 상기 어플리케이션의 실행 화면을 표시할 수 있다. 다양한 실시예들에서, 상기 확장된 바 영역은, 상기 어플리케이션의 실행 화면에 관한(concerning) 정보를 제공하기 위한 적어도 하나의 실행불가능한(non-executable) 객체 및 상기 실행 화면에 관한 액션들을 제공하기 위한 적어도 하나의 실행가능한(executable) 객체를 포함할 수 있다.
다양한 실시예들에서, 상기 기준 높이는, 상기 사용자 인터페이스의 사이즈를 변경하는 경우, 상기 변경된 사이즈를 가지는 상기 사용자 인터페이스 내에서 상기 확장된 바 영역을 유지할 것인지 상기 확장된 바 영역을 일반 바 영역으로 전환할 것인지 여부를 결정하기 위해, 전자 장치(101) 내에서 정의될 수 있다. 다양한 실시예들에서, 상기 기준 높이는, 어플리케이션의 종류(type), 상기 실행 화면 내에서 표시되는 콘텐츠(contents)의 종류, 상기 확장된 바 영역 내에서 표시되는 정보의 종류 또는 속성, 또는 전자 장치(101)의 그립 상태(예: 한 손 그립 또는 양손 그립)에 따라, 적응적으로(adaptively) 변경될 수 있다. 다양한 실시예들에서, 상기 기준 높이는, 사용자 선택(user selection)에 기반하여 변경될 수도 있다.
동작 1020에서, 프로세서(120)는, 표시되고 있는 상기 사용자 인터페이스의 상기 제1 높이를 상기 기준 높이보다 짧은 제2 높이로 변경하기 위한 입력을 수신할 수 있다. 예를 들면, 상기 입력은, 전체 화면 모드로 표시되고 있는 상기 사용자 인터페이스를 분할 화면 모드로 변경하기 위한 입력을 포함할 수 있다. 예를 들면, 상기 입력은, 전체 화면 모드로 표시되고 있는 상기 사용자 인터페이스를 팝업 화면 모드로 변경하기 위한 입력을 포함할 수 있다. 예를 들면, 상기 입력은, 팝업 화면 모드로 표시되고 있는 상기 사용자 인터페이스의 크기를 변경하기 위한 입력을 포함할 수 있다. 하지만, 이에 제한되지 않는다.
동작 1030에서, 프로세서(120)는, 상기 입력을 수신하는 것에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 상기 확장된 바 영역의 면적보다 좁은 면적을 가지는 일반(regular) 바 영역으로 디스플레이(140)를 이용하여 전환할 수 있다. 예를 들면, 프로세서(120)는, 상기 입력을 수신하는 것에 기반하여, 상기 제2 높이를 식별함으로써 상기 제2 높이가 상기 기준 높이보다 짧음을 나타내는 정보를 획득하고, 상기 획득에 기반하여, 상기 확장된 바 영역을 상기 일반 바 영역으로 디스플레이(140)를 이용하여 전환할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 제2 높이가 상기 기준 높이보다 짧음을 나타내는 정보를 획득하는 것에 응답하여, 전자 장치(101) 내에 설치된 프레임워크(framework)를 이용하여 상기 어플리케이션으로부터 상기 사용자 인터페이스의 표시를 위해 제공된 자원(resource)들 내에 상기 일반 바 영역을 표시하기 위한 적어도 하나의 자원이 포함되어 있는지 여부를 식별하고, 상기 적어도 하나의 자원이 상기 자원들 내에 포함됨을 식별하는 것에 기반하여 상기 적어도 하나의 자원을 이용하여 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 제2 높이가 상기 기준 높이보다 짧음을 나타내는 정보를 획득하는 것에 응답하여, 상기 프레임워크를 이용하여 상기 사용자 인터페이스의 표시를 위해 제공된 자원들을 호출할(invoke) 수 있다. 프로세서(120)는, 상기 호출된 자원들 중 상기 확장된 바 영역을 표시하기 위해 이용된 적어도 하나의 자원을 획득하고, 상기 획득된 적어도 하나의 자원을 이용하여 상기 일반 바 영역을 구성할 수 있다. 예를 들면, 프로세서(120)는, 상기 적어도 하나의 자원을 이용하여 상기 일반 바 영역 내에 표시될 정보를 구성하고 표시될 상기 정보의 배치를 구성할 수 있다. 프로세서(120)는, 상기 일반 바 영역을 구성하는 것에 응답하여, 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 수 있다.
다양한 실시예들에서, 상기 일반 바 영역은 상기 콘텐트 영역 내에 표시되는 상기 어플리케이션의 상기 실행 화면에 관한 정보를 제공하기 위한 적어도 하나의 실행불가능한 객체 및 상기 실행 화면에 대한 액션들을 제공하기 위한 적어도 하나의 실행가능한 객체를 포함할 수 있다.
다양한 실시예들에서, 상기 일반 바 영역의 구성(configuration)은 상기 확장된 바 영역의 구성과 적어도 일부 다를 수 있다. 예를 들면, 상기 일반 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체를 구성하는 텍스트의 폰트 사이즈는 상기 확장된 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체를 구성하는 텍스트의 폰트 사이즈보다 작을 수 있다. 예를 들면, 상기 일반 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체 및 상기 적어도 하나의 실행가능한 객체는 단일 행(single row)에 표시되는 반면, 상기 확장된 바 영역 내에 포함된 상기 적어도 하나의 실행불가능한 객체 및 상기 적어도 하나의 실행가능한 객체는 다중 행들(multiple rows)에 표시될 수 있다.
다양한 실시예들에서, 상기 일반 바 영역 내에서 지원가능한 서비스들의 수는 상기 확장된 바 영역 내에서 지원가능한 서비스들의 수보다 작을 수 있다. 예를 들면, 상기 확장된 바 영역은, 상기 일반 바 영역과 비교하여, 상기 실행 화면의 요약 정보를 더 포함할 수 있다. 예를 들면, 상기 확장된 바 영역은, 상기 콘텐트 영역이 복수의 분류가능한(classifiable) 콘텐츠를 포함하는 리스트를 포함하는 경우, 상기 일반 바 영역과 비교하여, 상기 콘텐트 영역 내에서 상기 복수의 분류가능한 콘텐츠를 분류하기 위한 적어도 하나의 기준(criterion)을 나타내는 적어도 하나의 실행가능한 객체를 더 포함할 수 있다. 예를 들면, 상기 확장된 바 영역은, 상기 콘텐트 영역이 복수의 콘텐츠를 포함하는 경우, 상기 일반 바 영역과 비교하여 상기 복수의 콘텐츠의 통계 정보를 더 포함할 수 있다. 예를 들면, 상기 확장된 바 영역은, 상기 확장된 바 영역은, 상기 콘텐트 영역이 복수의 콘텐츠를 포함하는 경우, 상기 일반 바 영역과 비교하여 상기 복수의 콘텐츠 중 가장 높은 우선순위를 가지는 콘텐트에 대한 정보를 더 포함할 수 있다. 하지만, 이에 제한되지 않는다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(101)는, 사용자 인터페이스의 사이즈의 변경에 의해 사용자 인터페이스의 메인 영역에 해당하는 콘텐트 영역의 크기가 확보되지 않음을 상기 사용자 인터페이스의 변경될 높이에 기반하여 결정하고, 상기 결정에 기반하여 상기 확장된 바 영역을 상기 일반 바 영역으로 전환함으로써, 사용성(usability)을 향상할 수 있다. 다양한 실시예들에 따른 전자 장치(101)는, 상기 사용성의 향상을 통해, 강화된 사용자 경험(enhanced user experience)을 제공할 수 있다.
도 11은 다양한 실시예들에 따라 바 영역을 전환하거나 바 영역을 유지하는 방법을 도시하는 흐름도이다. 이러한 방법은, 도 1에 도시된 전자 장치(101) 또는 전자 장치(101)의 프로세서(120)에 의해 실행될 수 있다.
도 11을 참조하면, 동작 1110에서, 프로세서(120)는, 어플리케이션을 실행하는 동안, 콘텐트 영역 및 확장된 바 영역을 포함하고 기준 높이보다 긴 제1 높이를 가지는 상기 어플리케이션의 사용자 인터페이스를 디스플레이(140)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 동작 1110은, 동작 1010에 대응할 수 있다.
동작 1120에서, 프로세서(120)는, 표시되고 있는 상기 사용자 인터페이스의 상기 제1 높이를 변경하기 위한 입력을 수신할 수 있다. 예를 들면, 상기 입력은, 전체 화면 모드로 표시되고 있는 상기 사용자 인터페이스를 분할 화면 모드로 변경하기 위한 입력을 포함할 수 있다. 예를 들면, 상기 입력은, 전체 화면 모드로 표시되고 있는 상기 사용자 인터페이스를 팝업 화면 모드로 변경하기 위한 입력을 포함할 수 있다. 예를 들면, 상기 입력은, 팝업 화면 모드로 표시되고 있는 상기 사용자 인터페이스의 크기를 변경하기 위한 입력을 포함할 수 있다. 하지만, 이에 제한되지 않는다.
동작 1130에서, 프로세서(120)는, 상기 변경될 높이가 상기 기준 높이보다 길거나 같은지 여부를 식별하기 위해, 상기 입력을 분석할 수 있다. 예를 들면, 프로세서(120)는, 상기 어플리케이션의 실행 화면을 표시하는 상기 콘텐트 영역의 사이즈를 확보하기 위해, 상기 입력을 분석함으로써 상기 변경될 높이가 상기 기준 높이보다 길거나 같은지 여부를 식별할 수 있다. 상기 변경될 높이가 상기 기준 높이보다 길거나 같은 경우, 프로세서(120)는, 동작 1140을 수행할 수 있다. 상기 변경될 높이가 상기 기준 높이보다 짧은 경우, 프로세서(120)는, 동작 1150을 수행할 수 있다.
동작 1140에서, 프로세서(120)는, 상기 분석된 입력에 기반하여 상기 변경될 높이가 상기 기준 높이보다 길거나 같음을 식별하는 것에 기반하여, 상기 확장된 바 영역을 유지할 수 있다. 상기 변경될 높이가 상기 기준 높이보다 길거나 같다는 것은 상기 확장된 바 영역을 유지하더라도 상기 콘텐트 영역의 크기를 충분히 확보할 수 있다는 것을 의미할 수 있기 때문에, 프로세서(120)는, 상기 확장된 바 영역의 표시를 유지할 수 있다.
동작 1150에서, 프로세서(120)는, 상기 분석된 입력에 기반하여 상기 변경될 높이가 상기 기준 높이보다 짧음을 식별하는 것에 기반하여, 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 수 있다. 상기 변경될 높이가 상기 기준 높이보다 짧다는 것은 상기 확장된 바 영역의 표시를 유지하는 것으로 인하여 상기 콘텐트 영역의 크기를 확보할 수 없다는 것을 의미할 수 있기 때문에, 프로세서(120)는, 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 수 있다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(101)는, 사용자 인터페이스의 사이즈를 변경하는 이벤트를 검출하는 경우 사용자 인터페이스의 메인 영역에 해당하는 콘텐트 영역의 공간이 확보되는지 여부에 따라 상기 사용자 인터페이스 내에서 확장된 바 영역을 제공할 지 일반 바 영역을 제공할 지를 결정함으로써, 강화된 사용자 경험을 제공할 수 있다.
도 12는 다양한 실시예들에 따라 드래그 제스쳐의 해제의 위치에 기반하여 확장된 바 영역을 전환하거나 유지하는 방법을 도시하는 흐름도이다. 이러한 방법은, 도 1에 도시된 전자 장치(101) 또는 전자 장치(101)의 프로세서(120)에 의해 실행될 수 있다.
도 12를 참조하면, 동작 1210에서, 프로세서(120)는, 어플리케이션을 실행하는 동안, 콘텐트 영역 및 확장된 바 영역을 포함하고 기준 높이보다 긴 제1 높이를 가지는 상기 어플리케이션의 사용자 인터페이스를 디스플레이(140)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 동작 1210은, 동작 1010에 대응할 수 있다.
동작 1220에서, 프로세서(120)는, 상기 콘텐트 영역 및 상기 확장된 바 영역을 표시하는 동안, 상기 콘텐트 영역으로부터 시작된 드래그 제스쳐의 해제를 검출할 수 있다. 예를 들면, 프로세서(120)는, 상기 콘텐트 영역 및 상기 확장된 바 영역을 표시하는 동안, 디스플레이(140)와 작동적으로 결합되거나 디스플레이(140) 내에 포함된 터치 감지 면(touch sensitive surface)를 이용하여 상기 드래그 제스쳐가 상기 콘텐트 영역 내에서 개시됨을 식별할 수 있다. 프로세서(120)는, 상기 드래그 제스쳐가 상기 콘텐트 영역 내에서 개시된 후 유지되는 동안, 상기 드래그 제스쳐가 해제되는지 여부를 식별할 수 있다. 프로세서(120)는, 상기 식별에 기반하여, 상기 드래그 제스쳐의 해제를 검출할 수 있다.
동작 1230에서, 프로세서(120)는, 상기 검출에 응답하여, 상기 드래그 제스쳐의 해제의 위치가 지정된 영역 안인지 여부를 식별할 수 있다. 예를 들면, 프로세서(120)는, 상기 드래그 제스쳐의 해제의 위치가 지정된 영역 안인지 여부를 식별하기 위해 상기 드래그 제스쳐를 분석할 수 있다. 다양한 실시예들에서, 상기 지정된 영역은 상기 드래그 제스쳐가 상기 콘텐트 영역 내에 표시되는 상기 어플리케이션의 실행 화면을 스크롤하기 위한 것인지 상기 드래그 제스쳐가 상기 확장된 바 영역을 일반 바 영역으로 전환하기 위한 것인지 여부를 식별하기 위해 전자 장치(101) 내에서 정의될 수 있다. 다양한 실시예들에서, 상기 지정된 영역의 사이즈는, 어플리케이션의 종류(type), 상기 실행 화면 내에서 표시되는 콘텐츠(contents)의 종류, 상기 확장된 바 영역 내에서 표시되는 정보의 종류 또는 속성, 또는 전자 장치(101)의 그립 상태(예: 한 손 그립 또는 양손 그립)에 따라, 적응적으로(adaptively) 변경될 수 있다. 다양한 실시예들에서, 상기 지정된 영역의 사이즈는, 사용자 선택(user selection)에 기반하여 변경될 수도 있다.
다양한 실시예들에서, 상기 지정된 영역은 다양한 실시예들에서, 프로세서(120)는, 상기 드래그 제스쳐의 해제의 위치가 상기 지정된 영역 안인 경우, 동작 1240을 수행할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 상기 드래그 제스쳐의 해제의 위치가 상기 지정된 영역 밖인 경우, 동작 1250을 수행할 수 있다.
동작 1240에서, 프로세서(120)는, 상기 분석에 기반하여 상기 드래그 제스쳐의 해제의 위치가 상기 지정된 영역 안임을 식별하는 것에 기반하여, 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 수 있다.
동작 1250에서, 프로세서(120)는, 상기 분석에 기반하여 상기 드래그 제스쳐의 해제의 위치가 상기 지정된 영역 밖임을 식별하는 것에 기반하여, 상기 확장된 바 영역을 유지할 수 있다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(101)는 드래그 제스쳐의 해제의 위치에 기반하여 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 것인지 상기 확장된 바 영역을 유지할 것인지 여부를 결정함으로써, 강화된 사용자 경험을 제공할 수 있다.
도 13은 다양한 실시예들에 따라 드래그 제스쳐의 해제의 위치에 기반하여 일반 바 영역을 전환하거나 유지하는 방법을 도시하는 흐름도이다. 이러한 방법은, 도 1에 도시된 전자 장치(101) 또는 전자 장치(101)의 프로세서(120)에 의해 실행될 수 있다.
도 13을 참조하면, 동작 1310에서, 프로세서(120)는 콘텐트 영역 및 일반 바 영역을 포함하는 사용자 인터페이스를 표시할 수 있다.
동작 1320에서, 프로세서(120)는 상기 콘텐트 영역 및 상기 일반 바 영역을 포함하는 상기 사용자 인터페이스를 표시하는 동안, 상기 콘텐트 영역으로부터 시작된 드래그 제스쳐의 해제를 검출할 수 있다. 예를 들면, 프로세서(120)는, 상기 콘텐트 영역 및 상기 일반 바 영역을 표시하는 동안, 디스플레이(140)와 작동적으로 결합되거나 디스플레이(140) 내에 포함된 터치 감지 면(touch sensitive surface)를 이용하여 상기 드래그 제스쳐가 상기 콘텐트 영역 내에서 개시됨을 식별할 수 있다. 프로세서(120)는, 상기 드래그 제스쳐가 상기 콘텐트 영역 내에서 개시된 후 유지되는 동안, 상기 드래그 제스쳐가 해제되는지 여부를 식별할 수 있다. 프로세서(120)는, 상기 식별에 기반하여, 상기 드래그 제스쳐의 해제를 검출할 수 있다.
동작 1330에서, 프로세서(120)는, 상기 검출에 응답하여, 상기 드래그 제스쳐의 해제의 위치가 지정된 영역 안인지 여부를 식별할 수 있다. 예를 들면, 프로세서(120)는, 상기 드래그 제스쳐의 해제의 위치가 지정된 영역 안인지 여부를 식별하기 위해 상기 드래그 제스쳐를 분석할 수 있다. 다양한 실시예들에서, 상기 지정된 영역은 상기 드래그 제스쳐가 상기 콘텐트 영역 내에 표시되는 상기 어플리케이션의 실행 화면을 스크롤하기 위한 것인지 상기 드래그 제스쳐가 상기 확장된 바 영역을 일반 바 영역으로 전환하기 위한 것인지 여부를 식별하기 위해 전자 장치(101) 내에서 정의될 수 있다. 다양한 실시예들에서, 상기 지정된 영역의 사이즈는, 어플리케이션의 종류(type), 상기 실행 화면 내에서 표시되는 콘텐츠(contents)의 종류, 상기 일반 바 영역 내에서 표시되는 정보의 종류 또는 속성, 또는 전자 장치(101)의 그립 상태(예: 한 손 그립 또는 양손 그립)에 따라, 적응적으로(adaptively) 변경될 수 있다. 다양한 실시예들에서, 상기 지정된 영역의 사이즈는, 사용자 선택(user selection)에 기반하여 변경될 수도 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 드래그 제스쳐의 해제의 위치가 상기 지정된 영역 안인 경우, 동작 1340을 수행할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 상기 드래그 제스쳐의 해제의 위치가 상기 지정된 영역 밖인 경우, 동작 1350을 수행할 수 있다.
동작 1340에서, 프로세서(120)는, 상기 분석에 기반하여 상기 드래그 제스쳐의 해제의 위치가 상기 지정된 영역 안임을 식별하는 것에 기반하여, 상기 일반 바 영역을 상기 확장된 바 영역으로 전환할 수 있다.
동작 1350에서, 프로세서(120)는, 상기 분석에 기반하여 상기 드래그 제스쳐의 해제의 위치가 상기 지정된 영역 밖임을 식별하는 것에 기반하여, 상기 일반 바 영역을 유지할 수 있다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(101)는 드래그 제스쳐의 해제의 위치에 기반하여 상기 일반 바 영역을 상기 확장된 바 영역으로 전환할 것인지 상기 일반 바 영역을 유지할 것인지 여부를 결정함으로써, 강화된 사용자 경험을 제공할 수 있다.
도 14는 다양한 실시예들에 따라 사용자 인터페이스의 변경될 높이 및 변경될 폭에 기반하여 바 영역을 전환하거나 유지하는 방법을 도시하는 흐름도이다. 이러한 방법은, 도 1에 도시된 전자 장치(101) 또는 전자 장치(101)의 프로세서(120)에 의해 실행될 수 있다.
도 14를 참조하면, 동작 1410에서, 프로세서(120)는, 어플리케이션을 실행하는 동안, 콘텐트 영역 및 확장된 바 영역을 포함하고 기준 높이보다 긴 제1 높이를 포함하는 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 동작 1410은 동작 1010에 대응할 수 있다.
동작 1420에서, 프로세서(120)는, 표시되고 있는 상기 사용자 인터페이스의 상기 제1 높이를 기준 높이보다 짧은 제2 높이로 변경하기 위한 입력을 수신할 수 있다. 다양한 실시예들에서, 상기 입력은, 상기 사용자 인터페이스의 상기 제1 높이를 상기 제2 높이로 변경할 뿐 아니라, 상기 사용자 인터페이스의 폭을 변경하는 입력일 수 있다.
동작 1430에서, 프로세서(120)는, 상기 입력에 의해 변경될 사용자 인터페이스의 폭이 기준 폭보다 긴지 여부를 식별할 수 있다. 다양한 실시예들에서, 변경될 상기 사용자 인터페이스의 폭은 변경될 상기 사용자 인터페이스의 높이와 함께 상기 콘텐트 영역의 사이즈를 결정하는 파라미터일 수 있기 때문에, 프로세서(120)는, 변경될 상기 사용자 인터페이스의 폭을 상기 기준 폭과 비교할 수 있다. 다양한 실시예들에서, 상기 기준 폭은, 변경될 상기 사용자 인터페이스 내의 상기 콘텐트 영역의 공간이 충분히 확보되는지 여부를 식별하기 위해 전자 장치(101) 내에서 정의될 수 있다. 예를 들면, 프로세서(120)는, 변경될 상기 사용자 인터페이스의 폭이 상기 기준 폭보다 긴지 여부를 식별하기 위해, 상기 입력을 분석할 수 있다.
다양한 실시예들에서, 변경될 상기 사용자 인터페이스의 폭이 상기 기준 폭보다 짧거나 같은 경우, 프로세서(120)는, 동작 1440을 수행할 수 있다. 다양한 실시예들에서, 변경될 상기 사용자 인터페이스의 폭이 상기 기준 폭보다 긴 경우, 프로세서(120)는 동작 1450을 수행할 수 있다.
동작 1440에서, 프로세서(120)는, 상기 입력의 분석에 기반하여 변경될 상기 사용자 인터페이스의 폭이 상기 기준 폭보다 짧거나 같음을 식별하는 것에 기반하여, 상기 확장된 바 영역을 상기 일반 바 영역으로 전환할 수 있다.
동작 1450에서, 프로세서(120)는, 상기 입력의 분석에 기반하여 변경될 상기 사용자 인터페이스의 폭이 상기 기준 폭보다 김을 식별하는 것에 기반하여, 상기 확장된 바 영역을 유지할 수 있다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(101)는, 변경될 사용자 인터페이스의 높이 뿐 아니라 폭을 고려하여 확장된 바 영역을 제공할 것인지 일반 바 영역을 제공할 것인지 여부를 결정함으로써, 강화된 사용자 경험을 제공할 수 있다.
상술한 바와 같은, 다양한 실시예들에 따른 비일시적 컴퓨터 판독 가능 저장 매체(non-transitory computer readable storage medium) 내에 저장된 하나 이상의 프로그램들은, 디스플레이를 가지는(with) 전자 장치의 하나 이상의 프로세서들에 의해 실행될 시, 상기 하나 이상의 프로그램들과 구별되는(distinct from) 어플리케이션 프로그램을 실행하는 동안, 콘텐트 영역(content region) 및 상기 콘텐트 영역 바로 위의(directly above) 확장된(expanded) 바 영역(bar region)을 포함하고 기준 높이보다 긴 제1 높이(height)를 가지는 상기 어플리케이션 프로그램의 사용자 인터페이스(user interface)를 상기 디스플레이를 이용하여 표시하고, 표시되고 있는 상기 사용자 인터페이스의 상기 제1 높이를 상기 기준 높이보다 짧은 제2 높이로 변경하기 위한 입력을 수신하고, 상기 입력을 수신하는 것에 기반하여, 상기 어플리케이션 프로그램의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 상기 확장된 바 영역의 면적보다 좁은 면적을 가지는 일반(regular) 바 영역으로 상기 디스플레이를 이용하여 전환하도록 상기 전자 장치를 야기하는(cause) 인스트럭션들을 포함할 수 있다.
다양한 실시예들에서, 상기 입력은, 상기 어플리케이션 프로그램과 함께, 상기 하나 이상의 프로그램들 및 상기 어플리케이션 프로그램과 구별되는 다른(another) 어플리케이션 프로그램을 실행하기 위한 입력일 수 있고, 상기 하나 이상의 프로그램들은, 상기 전자 장치의 상기 하나 이상의 프로세서들에 의해 실행될 시, 상기 입력을 수신하는 것에 응답하여, 상기 다른 어플리케이션 프로그램을 실행하고, 상기 다른 어플리케이션 프로그램을 실행하는 것에 응답하여, 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션 프로그램의 상기 사용자 인터페이스와 함께 상기 다른 어플리케이션 프로그램의 다른 사용자 인터페이스를 상기 디스플레이를 이용하여 표시하도록 상기 전자 장치를 야기하는 인스트럭션들을 포함할 수 있다. 다양한 실시예들에서, 상기 다른 어플리케이션의 상기 다른 사용자 인터페이스는, 상기 확장된 바 영역으로부터 전환되는 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스 바로 아래에(directly below) 표시되거나 바로 위에(directly above) 표시될 수 있다.
다양한 실시예들에서, 상기 하나 이상의 프로그램들은, 상기 하나 이상의 프로세서들에 의해 실행될 시, 상기 다른 어플리케이션을 실행하는 것에 응답하여, 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스와 함께 표시될 상기 다른 어플리케이션의 상기 다른 사용자 인터페이스의 제3 높이가 상기 기준 높이보다 긴 지 여부를 식별하고, 상기 제3 높이가 상기 기준 높이보다 김을 식별하는 것에 응답하여, 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스와 함께, 다른(another) 콘텐트 영역 및 상기 다른 콘텐트 영역 바로 위의 다른(another) 확장된 바 영역을 포함하는 상기 다른 어플리케이션의 상기 다른 사용자 인터페이스를 상기 디스플레이를 이용하여 표시하고, 상기 제3 높이가 상기 기준 높이보다 짧거나 같음을 식별하는 것에 응답하여, 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스와 함께, 상기 다른 콘텐트 영역 및 상기 다른 콘텐트 영역 바로 위의 다른(another) 일반 바 영역을 포함하는 상기 다른 어플리케이션의 상기 다른 사용자 인터페이스를 상기 디스플레이를 이용하여 표시하도록 상기 전자 장치를 야기하는 인스트럭션들을 포함할 수 있다.
다양한 실시예들에서, 상기 입력은, 상기 어플리케이션의 상기 사용자 인터페이스의 표시 모드를 전체 화면 모드(full screen mode)로부터 팝업 화면 모드(pop-up screen mode)로 전환하기 위한 입력일 수 있고, 상기 하나 이상의 프로그램들은, 상기 하나 이상의 프로세서들에 의해 실행될 시, 상기 입력을 수신하는 것에 응답하여, 홈 화면(home screen) 위에 중첩으로(as superimposed over), 상기 확장된 바 영역으로부터 전환된 상기 일반 바 영역을 포함하는 상기 어플리케이션의 상기 사용자 인터페이스를 상기 디스플레이를 이용하여 표시하도록 상기 전자 장치를 야기하는 인스트럭션들을 포함할 수 있다.
다양한 실시예들에서, 상기 하나 이상의 프로그램들은, 상기 하나 이상의 프로세서들에 의해 실행될 시, 표시되고 있는 상기 사용자 인터페이스의 상기 제1 높이를 상기 기준 높이보다 길거나 같은 제3 높이로 변경하기 위한 다른(another) 입력을 수신하고, 상기 다른 입력을 수신하는 것에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 유지하도록 상기 전자 장치를 야기하는 인스트럭션들을 더(further) 포함할 수 있다.
다양한 실시예들에서, 상기 하나 이상의 프로그램들은, 상기 하나 이상의 프로세서들에 의해 실행될 시, 상기 콘텐트 영역 및 상기 확장된 바 영역을 포함하는 상기 사용자 인터페이스를 표시하는 동안, 상기 콘텐트 영역으로부터 시작된(initiated) 드래그 제스쳐(drag gesture)의 해제(release)를 검출하고, 상기 드래그 제스쳐의 상기 해제의 위치(location)가 상기 디스플레이의 표시 영역 내의 지정된 영역 안이라는 식별에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 상기 일반 바 영역으로 상기 디스플레이를 이용하여 전환하고, 상기 드래그 제스쳐의 상기 해제의 상기 위치가 상기 표시 영역 내의 상기 지정된 영역 밖이라는 식별에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 유지하도록 상기 전자 장치를 야기하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예들에서, 상기 하나 이상의 프로그램들은, 상기 하나 이상의 프로세서들에 의해 실행될 시, 상기 콘텐트 영역 및 상기 일반 바 영역을 포함하는 상기 사용자 인터페이스를 표시하는 동안, 상기 콘텐트 영역으로부터 시작된 드래그 제스쳐의 해제를 검출하고, 상기 드래그 제스쳐의 상기 해제의 위치가 상기 디스플레이의 표시 영역 내의 지정된 영역 안이라는 식별에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 일반 바 영역을 상기 확장된 바 영역으로 상기 디스플레이를 이용하여 전환하고, 상기 드래그 제스쳐의 상기 해제의 상기 위치가 상기 표시 영역 내의 상기 지정된 영역 밖이라는 식별에 기반하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 일반 바 영역을 유지하도록 상기 전자 장치를 야기하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예들에서, 상기 하나 이상의 프로그램들은, 상기 하나 이상의 프로세서들에 의해 실행될 시, 상기 입력을 수신하는 것에 응답하여, 상기 입력에 의해 변경될 상기 사용자 인터페이스의 폭(width)이 기준 폭보다 긴지 여부를 식별하고, 상기 폭이 상기 기준 폭보다 좁거나 같다는 식별에 응답하여, 상기 어플리케이션의 상기 사용자 인터페이스 내에 포함된 상기 확장된 바 영역을 상기 일반 바 영역으로 상기 디스플레이를 이용하여 전환하고, 상기 폭이 상기 기준 폭보다 길다는 식별에 응답하여, 상기 확장된 바 영역을 유지하도록 상기 전자 장치를 야기하는 인스트럭션들을 더 포함할 수 있다.
본 개시의 청구항 또는 명세서에 기재된 실시예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(implemented) 수 있다.
소프트웨어로 구현하는 경우, 하나 이상의 프로그램(소프트웨어 모듈)을 저장하는 컴퓨터 판독 가능 저장 매체가 제공될 수 있다. 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 프로그램은, 전자 장치(device) 내의 하나 이상의 프로세서에 의해 실행 가능하도록 구성된다(configured for execution). 하나 이상의 프로그램은, 전자 장치로 하여금 본 개시의 청구항 또는 명세서에 기재된 실시예들에 따른 방법들을 실행하게 하는 명령어(instructions)를 포함한다.
이러한 프로그램(소프트웨어 모듈, 소프트웨어)은 랜덤 액세스 메모리 (random access memory), 플래시(flash) 메모리를 포함하는 불휘발성(non-volatile) 메모리, 롬(ROM: read only memory), 전기적 삭제가능 프로그램가능 롬(EEPROM: electrically erasable programmable read only memory), 자기 디스크 저장 장치(magnetic disc storage device), 컴팩트 디스크 롬(CD-ROM: compact disc-ROM), 디지털 다목적 디스크(DVDs: digital versatile discs) 또는 다른 형태의 광학 저장 장치, 마그네틱 카세트(magnetic cassette)에 저장될 수 있다. 또는, 이들의 일부 또는 전부의 조합으로 구성된 메모리에 저장될 수 있다. 또한, 각각의 구성 메모리는 다수 개 포함될 수도 있다.
또한, 상기 프로그램은 인터넷(Internet), 인트라넷(Intranet), LAN(local area network), WLAN(wide LAN), 또는 SAN(storage area network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(access)할 수 있는 부착 가능한(attachable) 저장 장치(storage device)에 저장될 수 있다. 이러한 저장 장치는 외부 포트를 통하여 본 개시의 실시 예를 수행하는 장치에 접속할 수 있다. 또한, 통신 네트워크상의 별도의 저장장치가 본 개시의 실시 예를 수행하는 장치에 접속할 수도 있다.
상술한 본 개시의 구체적인 실시예들에서, 개시에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.