ДОСТУП К МЕНЮ С ИСПОЛЬЗОВАНИЕМ ОПЕРАЦИИ ПЕРЕТАСКИВАНИЯ
MENU ACCESSING USING DRAG OPERATION

Уровень техники
На сегодняшний день операционные системы обеспечивают разнообразие сервисных программ, которые помогают при открытии областей дисплея в GUI (графическом интерфейсе пользователя), представленном на дисплейном компоненте (например, мониторе компьютера, экране мобильного устройства и тому подобном). Часто управление с помощью кнопки разделения используется для помощи при открытии области дисплея или меню наряду с обеспечением функциональных возможностей. Общая конструкция кнопки-разделителя представляет собой комбинацию двух или более кнопок под единым управлением, в котором первая кнопка позволяет инициировать основное действие, в то время как вторая кнопка обеспечивает всплывание меню выбираемых опций, которые относятся к основному действию. Например, кнопка-разделитель может быть элементом управления текстом - цветом, так что активирование первой кнопки применяет текущий выбранный цвет к тексту в приложении документ-редактирование, в то время как активирование второй кнопки вызывает всплывающее меню, которое предлагает больший цветовой выбор, чем тот, который может быть установлен как текущий выбранный цвет.
Однако из-за того, что вторая кнопка, которая открывает область дисплея или меню, нечасто активируется, она уменьшена в размере, чтобы понизить перенасыщенность GUI. Соответственно на устройстве сенсорного ввода (например, на дисплее с сенсорным экраном), вторую кнопку трудно активировать. То есть маловероятно, что пользователь сможет точно активировать маленькую пиксельную область, связанную со второй кнопкой, большой контактной областью, образованной путем касания пальцем пользователя дисплея с сенсорным экраном. Далее, отсутствует механизм, позволяющий пользователю предварительно просматривать, какая кнопка выбрана для активации до того, как произойдет фактическая активация на сенсорном экране устройства - по сравнению с выделением кнопки, когда на нее наводится курсор. Кроме того, действие активации на дисплее с сенсорным экраном представляет собой неудобство (например, движение всей руки пользователя для выполнения активации), таким образом, создавая большую вариативность, где будет происходить активация на сенсорном экране устройства, в противоположность тому, где активация должна быть. В связи с этим, использование удобного способа для выбора второй кнопки на дисплее с сенсорным экраном, когда вторая кнопка нарисована в уменьшенном размере на GUI, улучшило бы опыт пользователя в осуществлении доступа к меню с помощью кнопки управления верхнего уровня.
Сущность изобретения
Данный раздел «Сущность изобретения» предназначен для введения выбора концепций в упрощенной форме, которые далее описаны в разделе «Подробное описание». Данный раздел «Сущность изобретения» не предназначен, чтобы идентифицировать ключевые признаки или существенные признаки заявленного объекта изобретения, и также не предназначен для использования с целью определения объема заявленного объекта изобретения.
Варианты осуществления настоящего изобретения предусматривают машиночитаемый носитель, содержащий выполняемые компьютером команды, компьютерную систему и компьютеризованные способы для доступа к меню при активации кнопки управления верхнего уровня с подходящим инициированным пользователем вводом на дисплее с сенсорным экраном. В частности, предусмотрены удобные способы для вызова действия представления (например, визуализации меню) путем применения операции перетаскивания к кнопке управления верхнего уровня.
Вначале обнаруживается инициированный пользователем ввод, применяемый к кнопке управления верхнего уровня (например, обнаруживают место активации инициированного пользователем ввода внутри области команд дисплея с сенсорным экраном, связанной с кнопкой управления верхнего уровня). Обычно кнопка управления верхнего уровня содержит визуальный элемент или иконку, предназначенный для выражения представления основного действия на GUI. Определяют, является ли инициированный пользователем ввод операцией перетаскивания или операцией типа касания. Инициированный пользователем ввод распознается как операция перетаскивания, если расстояние непрерывного перемещения перетаскиванием на дисплее с сенсорным экраном больше, чем пороговое расстояние в определенном радиальном направлении от места активации инициированного пользователем ввода. В одном примере варианта осуществления изобретения набор триггерных границ устанавливается на пороговые расстояния в Декартовой системе координат от кнопки управления верхнего уровня. Если место прекращения непрерывного перемещения перетаскиванием находится за пределами одного из набора триггерных границ, то идентифицируется операция перетаскивания и вызывается действие представления. В одном примере пороговые расстояния основываются частично на системных показателях дисплея с сенсорным экраном (например, размере экрана, плотности пикселей, параметрах сенсорного экрана или разрешении GUI). Инициируемый пользователем ввод может распознаваться как операция типа касания, если непрерывное перемещение перетаскиванием на дисплее с сенсорным экраном прерывается при пересечении набора триггерных границ. Следовательно, вызывается основное действие, соответствующее кнопке управления верхнего уровня (например, изменение контента в документе, редактирование текста, вызов приложения и т.д.). При индикации вызова действие представления (например, открывание меню со списком выбираемых опций) или основное действие (например, визуально обрабатываемый контент) может быть визуализировано на GUI.
Краткое описание чертежей
Настоящее изобретение описано подробно ниже со ссылкой на прилагаемые чертежи, на которых:
Фиг.1 - это блок-схема примера компьютерной среды, подходящей для использования вариантов осуществления настоящего изобретения;
Фиг.2 - это блок-схема примера архитектуры системы, подходящей для использования при воплощении вариантов осуществления настоящего изобретения в соответствии с вариантом осуществления настоящего изобретения;
Фиг.3 - это графическое представление алгоритма, иллюстрирующее общий способ для инициирования действия представления, с использованием операции перетаскивания на графическом интерфейсе пользователя (GUI), визуализируемой на дисплее с сенсорным экраном в соответствии с вариантом осуществления настоящего изобретения;
Фиг.4 - это схематический вид примера кнопки управления верхнего уровня, снабженной набором триггерных границ, которые помогают при определении, включает ли в себя инициируемый пользователем ввод операцию перетаскивания в соответствии с вариантом осуществления настоящего изобретения; и
Фиг.5-11 представляют собой дисплеи улучшенного действия, иллюстрирующие этапы раскрывания меню при применении операции перетаскивания к кнопке управления верхнего уровня в соответствии с вариантами осуществления настоящего изобретения.
Подробное описание
Объект изобретения описан здесь со спецификой, чтобы соответствовать установленным требованиям. Однако описание само по себе не предназначено для ограничения объема данного изобретения. Скорее изобретатели предполагали, что заявленный объект может также быть реализован другими путями, чтобы включать в себя разные этапы или комбинации этапов, похожих на те, которые описаны в данном описании в соответствии с другими настоящими или будущими технологиями. Более того, хотя термины «этап» и/или «блок» могут быть использованы здесь, чтобы означать разные элементы используемых способов, термины не следует интерпретировать как допускающие любой определенный порядок среди или между различными этапами, раскрытыми здесь, помимо и за исключением, когда порядок отдельных этапов однозначно описан.
Варианты осуществления настоящего изобретения предусматривают машиночитаемый носитель, содержащий выполняемые компьютером команды, компьютерную систему и компьютеризованные способы для доступа к меню с помощью кнопки управления верхнего уровня путем распознавания инициированного пользователем ввода, как операции перетаскивания на основании расстояния непрерывного перемещения перетаскиванием от места активации внутри кнопки управления верхнего уровня.
Следовательно, в одном аспекте варианты осуществления настоящего изобретения предусматривают один или более машиночитаемых носителей, содержащих выполняемые компьютером команды, которые при выполнении осуществляют способ инициирования действия представления, используя операцию перетаскивания на графическом интерфейсе пользователя (GUI), визуализируемую на дисплее с сенсорным экраном. В начале, способ включает в себя обнаружение инициированного пользователем ввода при нажатии кнопки управления верхнего уровня. Инициированный пользователем ввод распознается как операция перетаскивания путем различения операции перетаскивания от операции типа касания. В примерном варианте осуществления различение основано на расстоянии непрерывного перемещения перетаскиванием от места активации инициированного пользователем ввода на дисплее с сенсорным экраном. В случае распознавания того, что операция перетаскивания произведена с кнопки управления верхнего уровня, вызывается действие представления. Обычно действие представления соответствует кнопке управления верхнего уровня и включает в себя раскрытие меню с выбираемыми опциями. Напротив, если операция типа касание произведена с кнопки управления верхнего уровня, то вызывается основное действие, соответствующее кнопке управления верхнего уровня. Индикация действия представления или основного действия может быть визуализирована на GUI.
В другом аспекте предусмотрен компьютизированный способ для доступа к меню, связанный с кнопкой управления верхнего уровня. В вариантах осуществления способ включает в себя, в частности, обнаружение места активации инициированного пользователем ввода на компоненте сенсорного экрана и доступных системных показателей. Обычно место активации индицирует кнопку управления верхнего уровня, и системные показатели основаны, в частности, на параметрах компонента сенсорного экрана. Процесс конструирования первого набора триггерных границ и второго набора триггерных границ может быть выполнен путем выведения триггерных границ из системных показателей. В одном примере выведение включает в себя, но не ограничивается этим, установление первого набора триггерных границ на первом пороговом расстоянии, по меньшей мере, в одном радиальном направлении от места активации, и установлении второго набора триггерных границ на втором пороговом расстоянии, по меньшей мере, в одном радиальном направлении от места активации. Способ может дополнительно включать в себя обнаружение операции перетаскивания в инициированном пользователем вводе. В общем случае операция перетаскивания включает в себя непрерывное перемещение перетаскиванием от места активации на дисплее с сенсорным экраном. Если перемещение перетаскиванием пересекает одну из первого набора триггерных границ, то вызывается действие представления, соответствующее кнопке управления верхнего уровня. В качестве примера вызов действия представления включает в себя доступ к меню. Если перемещение перетаскиванием пересекает одну из второго набора триггерных границ, то вызывается альтернативное действие, которое не связано с основным действием, соответствующим кнопке управления верхнего уровня. Как пример, вызов альтернативного действия включает в себя изменение места представления кнопки управления верхнего уровня на дисплее с сенсорным экраном. Иначе вызывается основное действие, соответствующее кнопке управления верхнего уровня. Индикация вызова действия представления, альтернативного действия или основного действия может быть показана на GUI, отображенном на дисплее с сенсорным экраном.
В еще одном аспекте варианты осуществления настоящего изобретения относятся к компьютерной системе, реализованной на одном или более компьютерных запоминающих носителях, содержащих выполняемые компьютером команды для представления меню, связанного с кнопкой управления верхнего уровня при получении индикации инициированной пользователем операции перетаскивания, примененной к ней. В вариантах осуществления компьютерная система включает в себя один или более следующих материальных компонентов: устройство ввода, обрабатывающий компонент, компонент представления, операционную систему и компонент приложения. Устройство ввода принимает инициированный пользователем ввод, произведенный с кнопки управления верхнего уровня, представленной на GUI. Обычно устройство ввода способно принимать многонаправленные вводы. Компонент обработки обнаруживает расстояние непрерывного перемещения перетаскиванием от места активации инициированного пользователем ввода, предоставленного устройством ввода. Дополнительно, компонент обработки может распознавать инициированный пользователем ввод как операцию перетаскивания при совпадении расстояния с пороговым расстоянием в заранее определенном направлении в декартовой системе координат. Компонент представления визуализирует меню, соответствующее кнопке управления верхнего уровня, которое представляет действие представления на GUI. Операционная система, реализованная на компоненте обработки, обеспечивает системные показатели, соответствующие кнопке управления верхнего уровня. Часто системные показатели задают пороговое расстояние и заранее определяют расстояние в декартовой системе координат при активации кнопки управления верхнего уровня. Компонентом приложения, запущенным на операционной системе, можно управлять с помощью инициированного пользователем ввода, произведенного с кнопки управления верхнего уровня.
В общем случае, варианты осуществления настоящего изобретения относятся к распознаванию инициированного пользователем ввода на дисплее с сенсорным экраном или на другом устройстве сенсорного ввода, как операции перетаскивания или операции типа касания. Как обсуждалось выше в одном примере, операция перетаскивания различается от операции типа касания на основании расстояния непрерывного перемещения перетаскиванием. Как здесь принято, фраза «непрерывное перемещение перетаскиванием» не предназначена быть ограничением, и может охватывать любое постоянное стирание, квази-продолжительный ввод или пошаговую цепь вводов, которые воспроизводят контакт перетаскивания по поверхности. В одном примере непрерывное перемещение перетаскиванием может включать в себя контакт между физическим объектом (например, пером или кончиком пальца) и дисплеем с сенсорным экраном в командной области кнопки управления верхнего уровня, и перетаскивание физического объекта по дисплею с сенсорным экраном с места активации до места отпускания.
Хотя несколько разных способов для генерации непрерывного перемещения перетаскиванием были описаны выше, специалистам в данной области следует понимать и признавать, что разные другие подобные перетаскиванию вводы, применяемые к компоненту с сенсорным экраном, рассматриваются здесь как непрерывное перемещение перетаскиванием, и что варианты осуществления настоящего изобретения не ограничиваются этими способами, показанными и описанными. Например, другие непрерывные перемещения перетаскиванием, которые идентифицируют инициированный пользователем ввод, как операцию перетаскивания, обсуждаются более полно ниже со ссылкой на фиг.5-11.
Кратко описав общее представление вариантов осуществления настоящего изобретения и некоторые из состояний окна, показанных здесь, ниже описывается примерная операционная среда, подходящая для осуществления настоящего изобретения.
Ссылаясь на чертежи в общем и сначала на фиг.1 в частности, показана примерная операционная среда для осуществления вариантов настоящего изобретения и обозначена в общем случае как компьютерное устройство 100. Компьютерное устройство 100 представляет собой не один пример подходящей компьютерной среды и не предназначается для поддержки любого ограничения, касающегося объема использования или функциональности изобретения. Также не следует интерпретировать компьютерное устройство 100, как имеющее зависимость или требование, относящееся к любому устройству или комбинации показанных компонентов.
Изобретение может быть описано в общем контексте компьютерного кода или используемых компьютером команд, включающих в себя выполняемые компьютером команды, такие как программные компоненты, выполняемые компьютером или другой машиной, такой как персональный электронный секретарь или другое карманное компьютерное устройство. В общем случае, программные компоненты, включающие в себя подпрограммы, программы, объекты, компоненты, структуры данных и тому подобные, относятся к коду, который выполняет конкретную задачу или выполняет конкретные типы абстрактных данных. Варианты осуществления настоящего изобретения могут быть реализованы в большом разнообразии конфигураций систем, включающих в себя карманные устройства, бытовую электронику, специализированные компьютеры, специальные компьютерные устройства, и т.д. Варианты осуществления изобретения могут также быть реализованы в распределенных компьютерных средах, где задачи выполняются обрабатывающими дистанционными устройствами, которые связаны коммуникационными сетями связи.
Далее со ссылкой на Фиг.1, компьютерное устройство 100 включает в себя шину 110, которая напрямую и косвенно объединяет следующие устройства: память 112, один или более процессоров 114, один или более компонентов 116 представления, порты 118 ввода/вывода (I/O), I/O компоненты 120 и иллюстративный источник 122 питания. Шина 110 подразумевает, что может быть одна или более шин (таких, как адресная шина, информационная или их комбинация). Хотя различные блоки на Фиг.1 показаны линиями для ясности, в действительности вычерчивание различных компонентов не настолько ясно, и в переносном смысле линии должны бы быть более серыми или нечеткими. Например, один может подразумевать компонент представления, такой как дисплейное устройство, чтобы быть I/O компонентом. Также процессоры имеют память. Изобретатели знают, что такие существуют в данной области техники, и повторяют, что схема с Фиг.1 просто является иллюстрацией примера компьютерного устройства, которое может быть использовано в связи с одним или более вариантами осуществления настоящего изобретения. Не делается различия между такими категориями, как «рабочая станция», «сервер», «переносной компьютер», «карманное устройство» и т.д., так же как все они рассматриваются в объеме Фиг.1 и описываются как «компьютер» или «компьютерное устройство».
Компьютерное устройство 100 обычно включает в себя множество машиночитаемых носителей. В качестве примера, а не ограничения, машиночитаемый носитель может содержать оперативное запоминающее устройство (RAM); постоянное запоминающее устройство (ROM); электронно-программируемое стираемое постоянное запоминающее устройство (EEPROM), флэш-память или другие технологии памяти, CDROM, универсальные цифровые диски (DVD) или другие оптические или голографические носители, магнитные кассеты, магнитную ленту, магнитные запоминающие диски или другие магнитные запоминающие устройства, несущую волну, или любую другую среду, которая может быть использована для декодирования нужной информации и может быть доступна компьютерному устройству 100.
Память 112 включает в себя машиночитаемый носитель в форме энергозависимой или неэнергозависимой памяти. Память может быть съемной, несъемной или их комбинацией. Пример устройств аппаратного обеспечения включает в себя память на твердом теле, жесткие диски, приводы оптических дисков и т.д. Компьютерное устройство 100 включает в себя один или более процессоров, которые считывают данные с различных объектов, таких как память 112 или I/O компонентов 120. Компонент(ы) 116 представления представляют данные пользователю или другому устройству. Примерные компоненты представления включают в себя дисплейное устройство, громкоговоритель, печатающий компонент, вибрирующий компонент и т.д. I/O порты 118 позволяют компьютерному устройству 100 логически объединяться с другими устройствами, включающими в себя I/O компоненты 120, некоторые из которых могут быть в него встроены. Показанные компоненты включают в себя микрофон, джойстик, игровой планшет, спутниковую антенну, сканер, принтер, беспроводное устройство и т.д.
На Фиг.2 показана схематическая схема примерной архитектуры 200 системы, подходящей для использования при осуществлении вариантов осуществления настоящего изобретения в соответствии с вариантом осуществления настоящего изобретения специалистами. Будет понятно и оценено обычным специалистом в данной области техники, что примерная архитектура 200 системы, показанная на Фиг.2 является просто примером одной подходящей компьютерной среды и не предназначена для поддержки любого ограничения в отношении объема использования или функциональности настоящего изобретения. Также не следует интерпретировать примерную архитектуру 200 системы как имеющую любую зависимость или потребность, относящуюся к любому единственному компоненту или комбинации компонентов, показанных здесь.
TM
Далее, логика в операционной системе 220, поддерживающая примерную архитектуру 200 системы, может быть реализована на встроенном обрабатывающем компоненте 225 для компьютерного устройства 215, предоставленном распределенной компьютерной средой, такой как удаленный сервер (не показан) или любой их комбинацией. В вариантах осуществления изобретения, которые реализованы в распределенных компьютерных средах, логическая связь соединяется через подходящие соединения. Эти соединения могут быть проводными или беспроводными. Примеры конкретных проводных вариантов осуществления в объеме настоящего изобретения, включают в себя USB соединения и кабельные соединения. Примеры конкретных беспроводных вариантов осуществления, в объеме настоящего изобретения, включают в себя беспроводную сеть ближней связи и радиочастотную технологию. Следует понимать, что обозначение «беспроводная сеть ближней связи» не должна быть ограничением, и должна пониматься шире, чтобы включать в себя, по меньшей мере, следующие технологии: согласованные беспроводные периферические (NWP) устройства; беспроводные воздушные интерференционные сети короткого диапазона (например, беспроводная персональная сеть (wPAN), беспроводная локальная сеть (wLAN), широкомасштабная сеть (wWAN), Bluetooth и тому подобные; беспроводная одноранговая связь (например, сверхширокополосная); и любой протокол, который поддерживает данные между устройствами. Дополнительно, специалисты, знакомые с областью изобретения поймут, что беспроводные сети ближнего диапазона могут быть реализованы с помощью различных способов передачи данных (например, спутниковая связь, телекоммуникационная сеть и т.д.). Поэтому подчеркиваем, что варианты осуществления соединений между компьютерным устройством 215 и удаленным сервером, например, не ограничиваются описанными примерами, но охватывают широкое разнообразие способов связи.
Примерная архитектура 200 системы включает в себя компьютерное устройство 215 для поддержки, в частности, работы обрабатывающего компонента 225. В примерном варианте осуществления, где компьютерное устройство 215 является, например, мобильным устройством, компонент 250 представления (например, дисплей с сенсорным экраном) может быть расположен на компьютерном устройстве 215. Компьютерное устройство 215 может принимать форму различных видов компьютерных устройств. Только в качестве примера, компьютерное устройство 215 может быть персональным компьютерным устройством (например, компьютерное устройство 100 с фиг.1), карманным устройством (например, персональный электронный секретарь), мобильным устройством (например, ноутбуком, сотовым телефоном, медиа плеером), бытовым электронным прибором, различными серверами и тому подобным. Дополнительно, компьютерное устройство может содержать два или более электронных устройств, сконфигурированных для разделения информации между ними.
В вариантах осуществления, обсужденных выше, компьютерное устройство 215 включает в себя компонент 250 представления, устройство 210 ввода, компонент 225 обработки (например, аппаратное обеспечение) с операционной системой 220, установленное в нем. Компьютерное устройство 215 сконфигурировано, чтобы представлять дисплей GUI на компоненте 250 представления. Компонент 250 представления, который может быть операционно объединен с обрабатывающим компонентом 225, может быть сконфигурирован как любое дисплейное устройство, которое способно представлять информацию пользователю, такое как монитор, электронная дисплейная панель, сенсорный экран, жидкокристаллическое устройство (LCD), плазменный экран, один или более светоизлучающих диодов (LED), лампы накаливания, лазер, источники электролюминесцентного света, химический, источник света, гибкий световод и/или флуоресцентный источник света или любой другой тип дисплея, или может содержать отражающую поверхность, на которую проецируется визуальная информация. В одном варианте осуществления дисплей GUI, визуализированный компонентом представления, сконфигурирован для представления кнопки управления верхнего уровня (не показано), связанной с приложением 230 и/или отображения меню (не показано), как один результат вызова действия представления на кнопку управления верхнего уровня. В другом варианте осуществления дисплей GUI способен визуализировать указатель вызова действия представления, других действий или любой их комбинации.
Устройство 210 ввода предназначено для приема инициированного пользователем ввода(ов) 295, действующего, среди прочего, на вызов конкретного действия, соответствующего кнопке управления. В примерном варианте осуществления устройство 210 ввода принимает инициированные пользователем вводы 295, направленные на одну или более кнопок управления верхнего уровня, визуализируемых на GUI. Показанные устройства включают в себя дисплей с сенсорным экраном (например, одновременно применяемый как компонент 250 представления), I/O компоненты 120 с Фиг.1 или любой другой компонент, способный принимать инициированный пользователем ввод 295, который включает в себя направляющий компонент и связывающий указатель этого ввода с обрабатывающим компонентом 225. Только в качестве примера устройство 210 ввода может определять координатное место, в котором инициированный пользователем ввод 295 инициирует контакт с ним (например, место активации) и координатное место, где инициированный пользователем ввод 295 прерывает контакт с ним (например, место отпускания) со ссылкой на пункты, визуализированные на GUI. Эти координатные места могут сравниваться для определения расстояния непрерывного перемещения перетаскиванием и его направления, как обсуждалось более полно ниже.
Хотя несколько отличающихся конфигураций устройства 210 ввода было описано выше, обычному специалисту в данной области техники следует понимать и принимать во внимание, что разные типы устройства ввода, которые получают вводы от физического контакта или наоборот, могут быть выполнены как устройство 210 ввода и, что варианты осуществления настоящего изобретения не ограничиваются теми устройствами 210 ввода, которые показаны и описаны, как введенные в состав компонента 250 представления. Например, компонент 250 представления может быть монитором, операционно объединенным с компьютером (например, компьютерным устройством 215), в то же время устройство 210 ввода может быть автономным емкостным сенсорным экраном или шаровым манипулятором, который соединен беспроводной связью (рассмотренной выше) с компьютером. Однако, ради краткости и ясности, устройство 210 ввода и компонент 250 представления будут в дальнейшем в данном описании именоваться вместе как дисплей с сенсорным экраном или компонент сенсорного экрана, представляющий собой сенсорный экран, который создает функциональные возможности как дисплея, так и элемента ввода в едином устройстве.
Операционная система (OS) 220 относится, главным образом, к программному обеспечению, которое управляет разделением ресурсов обрабатывающего компонента и обеспечивает программистам интерфейс, используемый для доступа к этим ресурсам. При работе операционная система 220 анализирует системные данные и обнаруживает инициированные пользователем вводы 295 (например, через устройство 210 ввода), и отвечает выполнением таких процессов, как следующие, не в определенном порядке: определение места активации инициированного пользователем ввода 295 на устройстве 210 ввода; осуществление доступа к системным показателям 245, где системные показатели 245 основаны, в частности, на параметрах компонента 250 представления; создание первого набора триггерных границ и/или второго набора триггерных границ, выведенных из системных показателей 245; и обнаружение операции 290 перетаскивания в инициированном пользователем вводе 295, где операция перетаскивания содержит непрерывное перемещение перетаскиванием от места активации.
Используя эвристику/правила, доступные обрабатывающему компоненту 225, операционная система 220 может выполнить множество логических определений, чтобы идентифицировать, какое действие должно быть предпринято на основе инициированного пользователем ввода 295. Например, если перемещение перетаскиванием пересекает один из первых наборов триггерных границ, то вызывается действие представления, соответствующее кнопке управления верхнего уровня. В другом примере, если перемещение перетаскиванием пересекает один из вторых наборов триггерных границ, то вызывается альтернативное действие, которое не связано с основным действием, соответствующим кнопке управления верхнего уровня. Еще в другом примере, если эвристические правила, относящиеся к перетаскиванию, не удовлетворительны, то вызывается основное действие, соответствующее кнопке управления верхнего уровня. В последующих вариантах осуществления операционная система сконфигурирована, чтобы визуализировать индикацию 280 вызова, по меньшей мере, одного действия представления, альтернативного действия или основного действия на GUI. В конкретном примере визуализация индикации 280 включает в себя всплывание меню, соответствующего кнопке управления верхним уровнем на компоненте с сенсорным экраном.
В примерном варианте осуществления операционная система 220 запускается на обрабатывающем компоненте 225 и поддерживает выполнение одного или более приложений, включающих в себя приложение 230. В другом варианте осуществления операционная система 220 и/или приложение 230 может частично или полностью находиться на удаленно расположенном компьютерном устройстве (например, на другой операционной системе, на сервере, обнаруживаемом через веб-адрес и т.д.). В различных вариантах осуществления операционная система 220 вычисляет расстояние и направление непрерывного перемещения перетаскиванием операции 290 перетаскивания, при получении инициированного пользователем ввода 295. Хотя инициированный пользователем ввод принимается с компонента сенсорного экрана, показанного на Фиг.2, следует понимать и принимать во внимание, что другие вводы с других разных устройств ввода (например, удаленной панели с тактильным вводом) могут быть приняты и проанализированы операционной системой 220; таким образом, объем настоящего изобретения ограничивается вводами и устройствами ввода, описанными здесь. Если расстояние и/или направление не удовлетворяют системным показателям 245, которые доступны операционной системе 220, то инициированный пользователем ввод 295 может быть рассмотрен как операция типа касания. В таком случае наиболее вероятно автоматически вызывается основное действие, соответствующее кнопке управления верхнего уровня.
Обычно основное действие, как наиболее полно обсуждается ниже со ссылкой на Фиг.5-11, воздействует на одно или более приложений 230 или контент в нем (например, документы, текст, среду и тому подобное). Главным образом приложение 230 - это любая программа, которая может быть запущена и обработана операционной системой 220. Как обсуждалось выше, приложение 230 управляет контентом, опубликованным на GUI. Дополнительно, приложение 230 может управлять видом кнопки управления верхнего уровня, и какие кнопки управления верхнего уровня должны выплывать. В одном примере кнопка управления верхнего уровня включает в себя визуальный элемент или иконку, которая нарисована, чтобы выражать наглядное представление основного действия, отраженного ею. В другом примере приложение 230 может управлять видом меню, которое раскрывает список выбираемых опций, которые при выборе влияют на приложение 230 как прямо, так и косвенно. В другом варианте осуществления приложение 230 может управлять преобразованием кнопки управления верхнего уровня (например, в кнопку разделения) для обнаружения инициированного пользователем ввода 295. Далее приложение 230 может быть разработано или настроено, так чтобы предпочтенное пользователем управление видами кнопок управления верхнего уровня и тому подобных осуществлялось при выполнении приложения 230. Хотя показанный как единственный, независимый компонент, приложение 230 может быть фактически множеством приложений, например, собранием взаимосвязанных приложений или различных дистанционно доступных приложений.
Эта структура операционной системы 220 является не единственным примером подходящей структуры, которая может быть запущена на обрабатывающем компоненте 225, и не предназначается для поддержки любых ограничений, касающихся объема использования или функциональных возможностей изобретения. Так же не следует, что показанная операционная система 220 должна быть интерпретирована как имеющая любую зависимость или требование, относящееся к каждому или к комбинации приема инициированного пользователем ввода 295 или обеспечение индикации 280, как показано. Далее приложение 230 может быть встроено в операционную систему 220 или обрабатывающий компонент 225, и может быть примерным по характеру и по количеству, и не должно быть истолковано как ограничивающее.
Любое число компонентов может быть воплощено, чтобы достичь желаемых функциональных возможностей в объеме вариантов осуществления настоящего изобретения. Хотя разные компоненты на фиг.2 показаны линиями ради ясности, в действительности очерчивание различных компонентов/элементов не так понятно, и метафорически, линии более точно должны были быть серыми и расплывчатыми. Далее, хотя некоторые компоненты и устройства на Фиг.2 описаны как единый блок, описания являются примерными по характеру и числу и не должны быть истолкованы как ограничивающие (например, хотя показан только один компонент 250 представления, намного больше могут быть операционно объединены с компьютерным устройством 215, таким образом функционируя совместно с настоящим GUI).
На Фиг.3 показана структурная схема, которая иллюстрирует общий способ для инициирования действия представления, использующий операцию перетаскивания на графическом интерфейсе пользователя (GUI), визуализированном на дисплее с сенсорным экраном в соответствии с вариантом осуществления настоящего изобретения. Вначале обнаруживается инициированный пользователем ввод, примененный к кнопке управления верхнего уровня, как показано в блоке 305. В вариантах осуществления кнопка управления верхнего уровня всплывает на GUI, визуализированном компонентом представления,(например, используя компонент 250 представления с Фиг.2) в направлении приложения (например, используя приложение 230 с Фиг.2). В других вариантах осуществления инициированный пользователем ввод и его аспекты обнаруживаются на устройстве ввода (например, используя устройство 210 ввода на Фиг.2). Эти обнаруженные аспекты инициированного пользователем ввода могут включать в себя место активации и/или место отпускания в области, определенной дисплеем с сенсорным экраном (например, устройством ввода), как показано в блоке 310. В других примерах эти обнаруженные аспекты могут включать в себя непрерывное перемещение перетаскиванием, прикладываемое к дисплею с сенсорным экраном, как показано в блоке 315.
На основании этих обнаруженных аспектов инициированного пользователем ввода можно распознать ввод как операцию перетаскивания, как указано в блоке 320. В примерном варианте осуществления выполняется распознавание, в частности, путем различения операции перетаскивания от операции типа касания, используя расстояние обнаруженного непрерывного перемещения перетаскиванием. В одном примере непрерывное перемещение перетаскиванием вычисляется из сравнения Декартовых координат места активации с координатами места отпускания непрерывного перемещения перетаскиванием. В другом примере механизм таймера используется для определения, представляет ли собой прерывание в непрерывном перемещении перетаскиванием допустимую паузу (например, отсутствие ввода ниже порогового временного периода), таким образом, рассматривая перемещение перетаскиванием после паузы, как часть начального непрерывного перемещения перетаскиванием, или прекращение активации (например, отсутствие ввода выше порогового периода времени).
В вариантах осуществления процесс распознавания включает в себя доступ к системным показателям (см. блок 325) и формирование первого набора триггерных границ и второго набора триггерных границ, выведенных из системных показателей (см. блок 330). Обычно системные показатели основываются, в частности, на параметрах дисплея сенсорного экрана, размере экрана, плотности пикселей и/или разрешения GUI. Процесс формирования может включать в себя, но не ограничиваться ими, следующие этапы: установление первого набора триггерных границ на первом пороговом расстоянии, по меньшей мере, в одном радиальном направлении от места активации (см. блок 335); и установление второго набора триггерных границ на втором пороговом расстоянии, по меньшей мере, в одном радиальном направлении от места активации (см. блок 340). В одном примере со ссылкой на Фиг.4, первый набор триггерных границ включает в себя установление одной или более вертикальных триггерных линий 440, каждая на горизонтальном пороговом расстоянии 445 от места 425 активации, в то время как второй набор триггерных границ включает в себя установление одной или более горизонтальных триггерных линий 450, каждая на вертикальном пороговом расстоянии 455 от места 425 активации. Часто горизонтальное пороговое расстояние 445 отличается от вертикального порогового расстояния 455.
Продолжаем ссылаться на Фиг.4, которая показывает графическое представление примера 420 кнопки управления верхнего уровня, снабженной набором триггерных границ 430, которые помогают в определении, включает ли в себя инициированный пользователем ввод операцию перетаскивания, описан дисплей 400 с сенсорным экраном. Дисплей 400 с сенсорным экраном выполнен с возможностью, по меньшей мере, визуализировать GUI 410, который включает в себя кнопку 420 управления верхнего уровня, и принимать вводы (например, инициированный пользователем ввод) после этого. В вариантах осуществления инициированный пользователем ввод представляет собой контакт/касание, произведенное физическим объектом на поверхности дисплея 400 с сенсорным экраном. В общем случае кнопка 420 управления верхнего уровня, так же как и эти действия, соответствующие ей, индицируются на месте активации 425 инициированного пользователем ввода, произошедшего в командной области 415, связанной с кнопкой управления верхнего уровня. То есть при обнаружении места активации 425 в командной области 415, сформированной дисплеем 400 с сенсорным экраном, подходящее действие, соответствующее кнопке 420 управления верхнего уровня, идентифицируется и вызывается при определении ключевых аспектов инициированного пользователем ввода (например, расстояния или направления перемещения перетаскиванием).
Как показано, командная область 415 может существенно перекрывать кнопку 420 управления верхнего уровня. Однако варианты осуществления настоящего изобретения рассматривают другие конфигурации командной области 415 в отношении кнопки 420 управления верхнего уровня, такие как перекрывающие часть кнопки 420 управления верхнего уровня или созданные на месте, удаленном от кнопки 420 управления верхнего уровня. Далее фраза «кнопка управления верхнего уровня» не предназначена для ограничения, но может включать в себя любой вид кнопки, такой как опционная кнопка или любой тип виджета графического пользовательского интерфейса, который позволяет пользователю вызывать из него основное действие (т.е. единственная точка взаимодействия для прямого манипулирования информацией данного типа).
При обсуждении обоих Фиг.3 и 4, хотя набор триггерных границ 430 описан и показан как состоящий из первого набора (например, вертикальных триггерных линий 440) и второго набора (например, горизонтальных триггерных линий 450) триггерных границ, следует понимать и принимать во внимание обычному специалисту в данной области техники, что может быть использовано другое число и другие виды подходящих триггерных границ, которые помогают при различении операции перетаскивания от операции типа касания, и что варианты осуществления настоящего изобретения не ограничиваются этими описанными здесь триггерными границами. Например, может быть создано множество триггерных границ, в которых каждая определяется расстоянием и радиальным направлением относительно места активации, кнопки управления верхнего уровня или одного или более краев дисплея с сенсорным экраном. В примерном варианте осуществления набор триггерных границ устанавливается на основании системных показателей, как описано выше. Таким образом, изменения в системных показателях могут непосредственно и/или динамично влиять на триггерные границы. Только в качестве примера, если плотность пикселей дисплея с сенсорным экраном возрастает, то пороговое расстояние триггерных границ относительно места активации может динамично понижаться в ответ.
Вернемся к Фиг.3, при формировании первого набора триггерных границ может быть применена логика, чтобы определить, пересекает ли перемещение перетаскиванием одну из триггерных границ в первом наборе, как показано в блоке 345. Если перемещение перетаскиванием пересекает одну из триггерных границ из первого набора, то может вызываться действие представления (например, доступ к меню), соответствующее кнопке управления. Как указано в блоке 350, логика может быть применена, чтобы определить пересекает ли перемещение перетаскиванием одну или более триггерных границ во втором наборе. Если перемещение перетаскиванием пересекает одну или более триггерных границ из второго набора, то может быть вызвано альтернативное действие (например, изменение места кнопки управления верхнего уровня на GUI), которое обычно является независимым по отношению к основному действию, соответствующему кнопке управления верхнего уровня. Вызов этих действий выше описан в блоке 360. Если аспекты инициированного пользователем ввода указывают, что перемещение перетаскиванием не произошло или ошибочно пересечена триггерная граница, то инициированное пользователем действие распознается как операция типа касания. Следовательно, как показано в блоке 355, вызывается основное действие, соответствующее кнопке управления верхнего уровня. Индикации того, что одно или более действий, рассмотренных выше, вызываются, могут быть визуализированы на GUI дисплея с сенсорным экраном или на любом другом компоненте представления, как показано на блоке 365.
Вернемся теперь к Фиг.5-11, показаны прогрессивно действующие дисплеи, которые иллюстрируют этапы раскрывания меню при применении операции перетаскивания к кнопке управления верхнего уровня в соответствии с вариантами осуществления настоящего изобретения. Вначале описывается, со ссылкой на Фиг.5, примерная кнопка управления верхнего уровня 500, которая имеет командную область 510 для обнаружения активаций. Дополнительно кнопка 500 управления верхнего уровня включает в себя визуальный элемент 520, предназначенный выражать представление основного действия, которое вызывается выбором кнопки 500 управления верхнего уровня. В одном примере выбор совершается с помощью операции типа касание (например, движение нажми-и-отпусти в командной области 510). Далее как показано в этом примере кнопки 500 управления верхнего уровня, визуальный элемент 520 установлен в командной области 510.
Со ссылкой на фиг.6, кнопка управления верхнего уровня описана в модифицированном состоянии. Обычно модифицированное состояние вызывается при приеме индикации инициированного пользователем ввода 620, который имеет место активации в командной области 510. Следовательно, в типовом виде кнопка 500 управления верхнего уровня может быть спрятана или затемнена.
В показанном варианте осуществления модифицированное состояние представляет собой кнопку-разделитель, которая показывает опцию вызова действия представления, так же как и основного действия, связанного с кнопкой 500 управления верхнего уровня. В этом варианте осуществления демонстрирование опции вызова действия представления отражается путем разделения кнопки 500 управления верхнего уровня на часть с иконкой 625, которая содержит визуальный элемент 520, и на разделяющую часть 615, которая содержит индикатор 610, демонстрирующий функциональные возможности вызова действия представления. Как изображено на Фиг.6, часть 625 с иконкой и разделяющая часть 615 пространственно расположены рядом друг с другом. Однако часть 625 с иконкой и разделяющая часть 615 могут быть нарисованы в любой соседней конфигурации или даже как отдельные разнесенные иконки.
Рассмотрим Фиг.7, кнопка 500 управления верхнего уровня изображается с меню 700, раскрытым в ответ на операцию перетаскивания. Операция перетаскивания идентифицируется при получении расстояния непрерывного перемещения перетаскиванием между координатами места активации инициированного пользователем ввода 620 с Фиг.6 и координатами места отпускания инициированного пользователем ввода 720 с Фиг.7 и определении, что полученное расстояние превосходит заранее заданное пороговое расстояние. Меню 700 включает в себя выбираемые опции 710. В примерном варианте осуществления выбираемые опции 710 (например, опции для цветов, применяемых к контенту документа) соответствуют основному действию кнопки 510 управления верхнего уровня (например, применение цвета к контенту). Дополнительно, как изображено на Фиг.7, одно радиальное направление перемещения перетаскиванием, которое вызывает действия представления, в значительной степени вертикально идет вниз.
Напротив, со ссылкой на Фиг.8, приемлемое радиальное направление перемещения перетаскиванием от точки активации инициированного пользователем ввода 850 идет в значительной степени горизонтально направо. Это приемлемое направление, которое удовлетворяет триггерным границам, может быть снабжено индикатором 890 кнопки-разделителя 820. Далее кнопка-разделитель может включать в себя две или более кнопки 830 управления верхнего уровня. При удовлетворении триггерных границ, меню 810 может быть раскрыто. В показанном варианте осуществления меню 810 включает в себя список задач и раскрывается в месте, граничащем с кнопкой-разделителем 820. Однако меню 810 может быть раскрыто в месте, удаленном или отстоящим от кнопки-разделителя 820.
Со ссылкой на Фиг.9 показана стандартная адресная строка 910 внутри разделяющей части 950 и текстовой части 940 в соответствии с вариантом осуществления настоящего изобретения. В этом примере перемещение перетаскиванием от места 930 активации к месту отпускания 960 инициированного пользователем ввода может вызвать действие представления. В этом варианте осуществления действие представления, отображаемое стандартной адресной строкой 910, включает в себя всплывание раскрывающегося меню 920, которое обеспечивает доступ к недавно использованным адресам. Однако активация типа касания в месте активации 930 может вызывать основное действие, совпадающее со стандартной адресной строкой 910. В одном примере основное действие может выполнять инициирование команды редактирования, чтобы модифицировать текст внутри текстовой части 940 стандартной адресной строки 910.
Далее со ссылкой на Фиг.9, при обнаружении отпускания непрерывного перемещения перетаскиванием операции перетаскивания (например, в месте 960 отпускания), GUI может сохранять раскрытым выпадающее меню 920 на GUI. Следовательно, пользователь может выполнять второй инициированный пользователем ввод, указывающий одну из выбираемых опций, который обнаруживается дисплеем с сенсорным экраном. При индикации одной из выбираемых опций результирующее действие для основного действия - обычно связанного с выбираемой опцией, указанной вторым инициированным пользователем вводом - может быть вызвано. В этом примере результирующее действие может быть импортом недавно выбранного адреса в текстовую часть 940 для будущей веб навигации. При выборе выбираемой опции в раскрывающемся меню 920, раскрывающееся меню 920 может быть спрятано и/или кнопка управления верхним уровнем может вернуться из кнопки-разделителя в свой типовой вид. Вышеописанная методика вызова меню 920 со ссылкой на адресную строку может быть похожим образом применена для поиска окна любого другого инструмента для ввода текста, который связан со списком других текстовых записей (например, ранее проведенные поисковые запросы, часто используемые документы и тому подобное).
Со ссылкой на Фиг.10 и 11 теперь обсудим способ запуска главного меню 1010 или всплывающего меню 1120 с кнопки 1030 управления верхнего уровня на панели 1050 задач в соответствии с настоящим изобретением. Вначале кнопка 1030 управления верхнего уровня включает в себя иконку 1040, которая отражает приложение или другой компонент. Обычно в этом варианте осуществления иконка помещается на панель 1050 задач. При приеме активации типа касание в месте 1080 активации вызывается основное действие. В этом случае основное действие, которое соответствует кнопке 1030 управления верхнего уровня, может включать в себя запуск приложения, соответствующего кнопке 1030 управления верхнего уровня, или вызывание главного меню 1010. В одном примере главное меню может включать в себя список задач выбираемых задач 1020, связанных с приложением, соответствующим кнопке 1030 управления верхнего уровня.
При обнаружении индикации операции типа касание-и-удержание кнопка 1030 управления верхнего уровня может быть реконфигурирована в кнопку, которая визуально индицирует присущую функциональную возможность разрешения вызова действия представления с помощью кнопки 1030 управления верхнего уровня. Вызов действия представления может быть выполнен перетаскиванием физического объекта по поверхности сенсорного экрана с места 1080 активации до места 1110 отпускания. В одном примере вызов представления включает в себя, по меньшей мере, одно из раскрывающихся меню с дополнительным списком задач, имеющим выбираемые задачи, которое поддерживает выбираемые задачи 1020 главного меню 1010, связанные с приложением. В другом примере, вызов действия представления может включать в себя открывание меню 1120 со списком недавно просмотренных документов 1150, которые доступны из приложения.
Настоящее изобретение было описано в отношении конкретных вариантов осуществления, которые во всех отношениях предназначены скорее для иллюстрирования, чем ограничения. Альтернативные варианты осуществления будут скорее ясны обычному специалисту в данной области техники, к которой настоящее изобретение относится без отступления от его объема.
Из вышесказанного будет видно, что это изобретение представляет собой изобретение, хорошо приспособленное для достижения всех целей и объектов, установленных выше, совместно с другими преимуществами, которые очевидны и присущи системе и способу. Будет понятно, что некоторые определенные особенности и подкомбинации являются полезными и могут быть применены без отсылки к другим особенностям или подкомбинациям. Это выполняется с помощью или в пределах объема формулы изобретения.