Мультипрограммная среда
Иллюстрации
Показать всеИзобретение относится к области мультипрограммных сред. Технический результат - обеспечение возможности управления прикладными программами в мультипрограммной среде посредством краевых жестов. Способ представления контента содержит этапы, на которых: представляют посредством дисплея несколько интерфейсов, соответствующих нескольким соответственным прикладным программам, причем первый иммерсивный интерфейс представляет рабочий стол, который включает в себя по меньшей мере один оконный интерфейс и панель задач; представляют первый контент через первый иммерсивный интерфейс и второй контент через второй иммерсивный интерфейс; принимают, через первую часть жеста, инициирование пользовательского выбора для представления в пределах мультипрограммной среды третьего интерфейса, соответствующего ранее использовавшейся прикладной программе; представляют в ответ изображение, представляющее третий интерфейс, поверх мультипрограммной среды; определяют, на основе второй части жеста, которая завершает пользовательский выбор, выбор первой области или второй области, в которой должен быть представлен третий интерфейс, причем вторая часть жеста указывается перемещением упомянутого изображения по первой области или второй области. 3 н. и 17 з.п. ф-лы, 31 ил.
Реферат
УРОВЕНЬ ТЕХНИКИ
Традиционные операционные системы позволяют пользователям видеть несколько компьютерных прикладных программ через окна. Каждое из этих окон обычно включает в себя рамку, имеющую средства управления для взаимодействия с компьютерной прикладной программой, а также средства управления для выбора того, какая рамка окна является первичной, или перемещения, изменения размера или иного управления конфигурацией окна. Однако, эти рамки окон занимают части отображения, которые в ином случае могли бы быть предназначены для контента прикладной программы. Кроме того, управление первичностью или конфигурацией этих окон этими средствами управления может отнимать много времени и раздражать пользователей.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Этот документ описывает методики и устройства, обеспечивающие мультипрограммную среду. Описанная здесь мультипрограммная среда может представлять несколько прикладных программ без выделения существенного размера отображения для рамок окон для прикладных программ и/или без требования управления рамками окна, такого как их размер, местоположение или первичность при отображении. В некоторых вариантах осуществления эти методики и устройства обеспечивают мультипрограммные среды, имеющие комбинации иммерсивных интерфейсов, оконных интерфейсов и рабочего стола, представленного как иммерсивный интерфейс. Кроме того, в некоторых вариантах осуществления методики и устройства обеспечивают возможность управления прикладными программами в мультипрограммной среде, например, интерфейсы изменения размера и перемещения в пределах среды. Кроме того, некоторые варианты осуществления обеспечивают возможность управления ранее использовавшимися прикладными программами, которые в настоящий момент не представлены. Кроме того, некоторые варианты осуществления методик обеспечивают возможность управления прикладными программами и их интерфейсами, отображаемыми или не отображаемыми в настоящий момент, через краевые жесты или меню управления пользовательским интерфейсом.
Это описание сущности изобретения обеспечено для представления упрощенных концепций, которые далее описаны в подробном описании. Это описание сущности изобретения не предназначено ни для выявления существенных признаков заявленного изобретения, ни для использования при определении объема заявленного изобретения. Методики и/или устройства, обеспечивающие мультипрограммную среду, также упоминаются здесь отдельно или в комбинации как "методики" в рамках контекста, хотя методики могут включать или вместо этого представлять другие описанные здесь аспекты.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Варианты осуществления, обеспечивающие мультипрограммную среду, описаны со ссылкой на следующие чертежи. Одинаковые номера используются во всех чертежах для ссылки на аналогичные признаки и компоненты.
Фиг. 1 показывает иллюстративную систему, в которой могут быть реализованы методики, обеспечивающие мультипрограммную среду.
Фиг. 2 показывает иллюстративный способ обеспечения возможности для граничных жестов, где граничные жесты являются приблизительно перпендикулярными по отношению к краю, в котором начинается жест.
Фиг. 3 показывает иллюстративное планшетное вычислительное устройство, имеющее сенсорный дисплей, представляющий иммерсивный интерфейс.
Фиг. 4 показывает иллюстративный иммерсивный интерфейс по фиг. 3 наряду с иллюстративными краями.
Фиг. 5 показывает иллюстративный иммерсивный интерфейс по фиг. 3 и 4 наряду с линиями углового отличия от перпендикулярной линии и линии от стартовой точки до более поздней точки жеста.
Фиг. 6 иллюстрирует края иммерсивного интерфейса, показанного на фиг. 4, наряду с двумя областями на правом краю.
Фиг. 7 иллюстрирует интерфейс выбора прикладной программы, представленный модулем системного интерфейса в ответ на граничный жест, сделанный над иммерсивным интерфейсом, и веб-страницу по фиг. 3.
Фиг. 8 показывает иллюстративный способ обеспечения возможности для граничных жестов, включающий в себя определение интерфейса для представления на основе некоторого фактора жеста.
Фиг. 9 показывает иллюстративный способ обеспечения возможности для расширения или прекращения представления пользовательского интерфейса, представленного в ответ на граничный жест или представление другого пользовательского интерфейса.
Фиг. 10 иллюстрирует ноутбук, имеющий сенсорный дисплей, имеющий оконный интерфейс электронной почты и два иммерсивных интерфейса.
Фиг. 11 иллюстрирует интерфейсы по фиг. 10 наряду с двумя жестами, имеющими стартовую точку, более поздние точки и одну или более последовательных точек.
Фиг. 12 иллюстрирует оконный интерфейс электронной почты по фиг. 10 и 11 наряду с интерфейсом обработки электронной почты, представленным в ответ на граничный жест.
Фиг. 13 иллюстрирует интерфейсы по фиг. 12 наряду с интерфейсом дополнительных возможностей электронной почты, представленным в ответ на определение, что жест имеет последовательную точку на предварительно установленном расстоянии от края.
Фиг. 14 иллюстрирует способ переключения обратно на ранее использовавшуюся прикладную программу с использованием очереди.
Фиг. 15 показывает иллюстративный порядок взаимодействия, в котором пользователь взаимодействует с различными прикладными программами.
Фиг. 16 иллюстрирует иммерсивный интерфейс по фиг. 3 наряду с изображением миниатюры пользовательского интерфейса предшествующей прикладной программы.
Фиг. 17 иллюстрирует способ переключения обратно на ранее использовавшуюся прикладную программу, который может использовать или не использовать очередь.
Фиг. 18 иллюстрирует иммерсивный интерфейс по фиг. 3 и 16, два постепенных представления и два участка жеста.
Фиг. 19 иллюстрирует способ обеспечения мультипрограммной среды, включающий в себя изменение размеров нескольких иммерсивных интерфейсов в ответ на единственный выбор.
Фиг. 20 иллюстрирует настольное вычислительное устройство по фиг. 1, показывающее сенсорный дисплей, отображающий мультипрограммную среду с двумя иммерсивными интерфейсами, разделенными областью разделителя интерфейсов.
Фиг. 21 иллюстрирует мультипрограммную среду по фиг. 20 с измененными размерами двух иммерсивных интерфейсов и перемещенной областью разделителя интерфейсов.
Фиг. 22 иллюстрирует способ отображения иммерсивного интерфейса прикладной программы в области в ответ на всего лишь один выбор и с размером, полностью занимающим область.
Фиг. 23 иллюстрирует текущий иммерсивный интерфейс, полностью занимающий мультипрограммную среду, имеющую три области.
Фиг. 24 иллюстрирует мультипрограммную среду по фиг. 23 с уменьшенным по размеру иммерсивным интерфейсом вместо текущего иммерсивного интерфейса по фиг. 23 и вторым иммерсивным интерфейсом.
Фиг. 25 иллюстрирует способ управления мультипрограммной средой через пользовательский интерфейс.
Фиг. 26 показывает иллюстративную мультипрограммную среду, имеющую первичные и непервичные области.
Фиг. 27 иллюстрирует мультипрограммную среду по фиг. 26, включающую в себя меню управления пользовательским интерфейсом.
Фиг. 28 иллюстрирует способ, обеспечивающий возможность отображения рабочего стола как иммерсивного интерфейса в пределах мультипрограммной среды.
Фиг. 29 показывает иллюстративную мультипрограммную среду, имеющую иммерсивный интерфейс рабочего стола, отображающий оконные интерфейсы и панель задач, наряду с иммерсивным интерфейсом, отображающим контент.
Фиг. 30 иллюстрирует способ, обеспечивающий возможность представления контента и/или управления мультипрограммной средой.
Фиг. 31 показывает иллюстративное устройство, в котором могут быть реализованы методики, обеспечивающие мультипрограммную среду.
ПОДРОБНОЕ ОПИСАНИЕ
Краткий обзор
Этот документ описывает методики и устройства, обеспечивающие мультипрограммную среду. Описанная здесь мультипрограммная среда может представлять несколько прикладных программ (приложений) без выделения существенного размера отображения для рамок окон для прикладных программ и/или без требования управления рамками окна, такого как их размер, местоположение или первичность при отображении. В некоторых вариантах осуществления эти методики и устройства обеспечивают мультипрограммные среды, имеющие комбинации иммерсивных интерфейсов, оконных интерфейсов и рабочего стола, представленного как иммерсивный интерфейс. Кроме того, в некоторых вариантах осуществления методики и устройства обеспечивают возможность управления прикладными программами, представленными или не представленными в настоящий момент в мультипрограммной среде, например, интерфейсы изменения размера и перемещения в пределах среды и выбор ранее использовавшихся прикладных программ, которые в настоящий момент не представлены. Этим и другим формам управления в некоторых вариантах осуществления обеспечена возможность реализации через краевые жесты, сделанные в мультипрограммной среде, или меню управления пользовательским интерфейсом.
Это лишь несколько примеров многих способов, которыми предложенными методиками обеспечивается мультипрограммная среда, другие из них описаны ниже.
Иллюстративная система
Фиг. 1 показывает иллюстративную систему 100, в которой могут быть воплощены методики, обеспечивающие возможность для мультипрограммной среды. Система 100 включает в себя вычислительное устройство 102, которое проиллюстрировано шестью примерами: ноутбук 104, планшетное вычислительное устройство 106, смартфон 108, телеприставка 110, настольный компьютер 112 и игровое устройство 114, хотя также могут использоваться другие вычислительные устройства и системы, такие как серверы и нетбуки.
Вычислительное устройство 102 включает в себя компьютерный процессор(ы) 116 и машиночитаемые носители 118 (носители 118). Носители 118 включают в себя операционную систему 120, модуль 122 оконного режима, модуль 124 мультипрограммной среды, модуль 126 системного интерфейса, обработчик 128 жестов, диспетчер 130 прикладных программ, который включает в себя или имеет доступ к очереди 132 прикладных программ, диспетчер 134 и одну или более прикладных программ 136, каждая из которых имеет один или более пользовательских интерфейсов 188 прикладных программ.
Вычислительное устройство 102 также включает в себя или имеет доступ к одному или более дисплеям 140 и устройствам 142 ввода. Четыре иллюстративных дисплея показаны на фиг. 1. Устройства 142 ввода могут включать в себя чувствительные к жестам датчики и устройства, такие как сенсорные датчики и отслеживающие перемещение датчики (например, основанные на камере), а также мыши (автономные или составляющие одно целое с клавиатурой), сенсорные панели и микрофоны с сопровождающим программным обеспечением распознавания речи, в качестве нескольких примеров. Устройства 142 ввода могут быть отдельными или составлять одно целое с дисплеями 140; интегрированные примеры включают в себя чувствительные к жестам дисплеи с интегрированными сенсорными или чувствительными к движению датчиками.
Модуль 122 оконного режима представляет пользовательские интерфейсы 138 прикладных программ через окна, имеющие рамки. Эти рамки могут обеспечивать средства управления, посредством которых можно взаимодействовать с прикладной программой, и/или средства управления, обеспечивающие возможность пользователю перемещать окно и изменять его размеры.
Модуль 124 мультипрограммной среды обеспечивает среду, посредством которой пользователь может видеть одну или более прикладных программ 136 и взаимодействовать с ними через пользовательские интерфейсы 138 прикладных программ. Мультипрограммная среда 124 может представить один или более пользовательских интерфейсов 138 прикладных программ в комбинации с модулем 122 оконного режима. Мультипрограммная среда 124 может вместе с этим или вместо этого представить один или более пользовательских интерфейсов 138 прикладных программ как иммерсивные интерфейсы.
Иммерсивный интерфейс в некоторых вариантах осуществления представляет контент и обеспечивает возможность для взаимодействия с прикладными программами с небольшой рамкой окна или без рамки окна без необходимости в том, чтобы пользователь управлял конфигурацией компонентов рамки окна или первичностью относительно других окон (например, какое окно является активным или передним), без необходимости, чтобы пользователь вручную изменял размеры или позицию пользовательских интерфейсов 138 прикладных программ и/или без представления визуальных средств управления (например, постоянных средств управления на рамке окна или в окне, загораживающих контент).
Мультипрограммная среда, обеспечиваемая модулем 124 мультипрограммной среды, может, но не обязательно должна быть, размещена и/или появляться без использования оконной среды рабочего стола. Таким образом, в некоторых случаях модуль 124 мультипрограммной среды представляет мультипрограммную среду как иммерсивную среду, и, таким образом, без окна (даже без существенной рамки) и/или устраняет использование отображений, подобных рабочему столу (например, панели задач). Еще кроме того, в некоторых вариантах осуществления эта мультипрограммная среда подобна операционной системе, в которой она не может быть закрыта или деинсталлирована. Хотя это не требуется, в некоторых случаях эта мультипрограммная среда обеспечивает возможность для использования всех или почти всех пикселей отображения посредством прикладных программ в пределах мультипрограммной среды.
Ниже представлены примеры мультипрограммных сред, некоторые из которых включают в себя только иммерсивные интерфейсы, и некоторые из которых включают в себя оконный интерфейс или рабочий стол, представленный как иммерсивный интерфейс, хотя они не являются исчерпывающими или предназначенными для ограничения описанных здесь методик.
Модуль 126 системного интерфейса обеспечивает один или более интерфейсов, через которые представлена возможность взаимодействия с операционной системой 120, например, интерфейс запуска прикладных программ, начальное меню или системные инструменты или пункты меню, в качестве лишь нескольких примеров.
Операционная система 120, модули 122, 124 и 126, а также обработчик 128 жестов, диспетчер 130 приложений и диспетчер 134 могут быть отдельными друг от друга или объединены или интегрированы в любой подходящей форме.
Иллюстративные способы
Иллюстративные способы 200, 800 и 900 адресованы к граничным жестам, иллюстративные способы 1400 и 1700 адресованы к переключению обратно на ранее использовавшуюся прикладную программу, иллюстративные способы 1900 и 2200 адресованы к управлению иммерсивным интерфейсом в мультипрограммной среде, иллюстративный способ 2500 адресован к управлению мультипрограммной средой через пользовательский интерфейс, способ 2800 адресован к рабочему столу, представленному как иммерсивный интерфейс в пределах мультипрограммной среды, способ 3000 адресован к представлению контента и/или управлению мультипрограммной средой.
Способы могут использоваться отдельно или в комбинации друг с другом, полностью или частично. Например, методики могут использовать граничный жест, чтобы обеспечить возможность выбора, изменения размера и переключения интерфейсов в настоящий момент в мультипрограммной среде. Методики также могут выбирать ранее использовавшиеся прикладные программы с использованием очереди прикладных программ с помощью или без помощи граничного жеста. Кроме того, методики могут автоматически изменять размер нескольких интерфейсов при выборе ранее использовавшейся прикладной программы через очередь прикладных программ или в ответ на выбор, чтобы переместить или изменить отображенный в настоящий момент интерфейс.
Граничные жесты
Фиг. 2 изображает способ 200 обеспечения возможности для граничных жестов на основе граничного жеста, являющегося приблизительно перпендикулярным краю, в котором начинается жест. В частях последующего обсуждения может быть сделана ссылка на систему 100, показанную на фиг. 1, и другие способы и иллюстративные варианты осуществления, описанные где-либо еще в этом документе, ссылка на них делается только для примера.
Этап 202 принимает жест. Этот жест может быть принят в различных частях отображения, например, через оконный интерфейс, иммерсивный интерфейс или без интерфейса. Кроме того, этот жест может быть сделан и принят по-разному, например, отслеживание перемещения указателя, принятое через сенсорную панель, мышь или шаровой манипулятор, или как физическое движение, сделанное рукой (руками), пальцем (пальцами) или пером, принятое через чувствительный к движению или сенсорный механизм.
В качестве примера рассмотрим фиг. 3, которая иллюстрирует планшетное вычислительное устройство 106. Планшет 106 включает в себя сенсорный дисплей 302, показанный отображающим иммерсивный интерфейс 304, который включает в себя веб-страницу 306. Как часть текущего примера, на этапе 202 обработчик 128 жестов принимает жест 308, как показано на фиг. 3.
Этап 204 определяет, находится ли стартовая точка жеста на краю. Как отмечено выше, рассматриваемый край может быть краем пользовательского интерфейса, либо иммерсивного, либо оконного, и/или дисплея. В некоторых случаях, безусловно, край пользовательского интерфейса также является краем дисплея. Размер края может изменяться на основе различных факторов дисплея или интерфейса. Маленький дисплей или интерфейс могут иметь меньший размер в абсолютном выражении или в пикселях, чем большой дисплей или интерфейс. Очень чувствительное устройство ввода также дает возможность меньшего края. Иллюстративные края являются прямоугольными и варьируют от одного пикселя до двадцати пикселей по одной размерности и до границы интерфейса или дисплея в другой размерности, хотя вместо этого могут использоваться другие размеры и формы, в том числе выпуклые и вогнутые края.
В продолжение текущего примера рассмотрим фиг. 4, которая иллюстрирует иммерсивный интерфейс 304 и жест 308, показанный на фиг. 3, а также левый край 402, верхний край 404, правый край 406 и нижний край 408. Для визуальной ясности веб-страница 306 не показана. В этом примере размеры интерфейса и дисплея являются умеренными, между размерами смартфонов и многих ноутбуков и настольных дисплеев. Края 402, 404, 406 и 408 имеют маленькую размерность в двадцать пикселей, область каждой из которых показана ограниченной пунктирными линиями в двадцать пикселей от границы дисплея или интерфейса 410, 412, 414 и 416, соответственно. Хотя края показаны накладывающимися в углах, вместо этого они могут быть скошены под углом 45 градусов в углах, или один край может быть предпочтен другому (например, край 404 предпочтен краю 406, если стартовая точка принята в перекрывающемся углу).
Обработчик 128 жестов определяет, что жест 308 имеет стартовую точку 418 и что эта стартовая точка 418 находится в пределах левого края 402. Обработчик 128 жестов определяет стартовую точку в этом случае, принимая данные, указывающие координаты [X, Y] в пикселях, в которых жест 308 начинается, и сравнивает первую из этих координат с пикселями, содержащимися в пределах каждого края 402, 404, 406 и 408. Обработчик 128 жестов часто может определять стартовую точку, и находится ли она на краю, быстрее чем частота отсчетов, тем самым вызывая небольшое понижение производительности или не вызывая понижения производительности от методик, которые просто передают жесты непосредственно к представленному интерфейсу, над которым сделан жест.
Вернемся к способу 200, в котором, если этап 204 определяет, что стартовая точка жеста не находится на краю, способ 200 переходит по ветви "Нет" на этап 206. Этап 206 передает жест к представленному пользовательскому интерфейсу, такому как низлежащий интерфейс, над которым был принят жест. Изменяя текущий пример, предположим, что было определено, что жест 308 не имеет стартовую точку в пределах края. В таком случае обработчик 128 жестов передает буферизованные данные для жеста 308 иммерсивному пользовательскому интерфейсу 304. После передачи жеста способ 200 заканчивается.
Если этап 204 определяет, что стартовая точка жеста находится на краю, способ 200 переходит по ветви "Да" на этап 208. Этап 208 отвечает на положительное определение по этапу 204, определяя, является ли линия от стартовой точки до более поздней точки жеста приблизительно перпендикулярной относительно края.
Этап 208 в некоторых вариантах осуществления определяет более позднюю используемую точку. Обработчик 128 жестов, например, может определить более позднюю точку жеста на основе более поздней точки, полученной на предварительно установленном расстоянии от края или стартовой точки, например, как прошлый граничный предел 410 для края 402 или двадцать пикселей от стартовой точки 418, вся фиг. 4. В некоторых других вариантах осуществления обработчик 128 жестов определяет более позднюю точку на основе того, что она принимается в предопределенное время после приема стартовой точки, такое количество времени немного больше, чем используется обычно вычислительным устройством 102 для определения, что жест представляет собой жест касания и удерживания или жест нависания.
Для текущего варианта осуществления обработчик 128 жестов использует позже принятую точку жеста 308, принятую за пределами края 402, при условии, что позже принятая точка принята в пределах заданного времени. Если точка не принята за пределами края в пределах этого заданного времени, обработчик 128 жестов переходит на этап 206 и передает жест 308 иммерсивному интерфейсу 304.
С использованием стартовой точки этап 208 определяет, является ли линия от стартовой точки до более поздней точки жеста приблизительно перпендикулярной по отношению к краю. Различные углы отличия могут использоваться при этом определении посредством этапа 208, такие как пять, десять, двадцать или тридцать градусов.
В качестве примера рассмотрим угол отличия, равный тридцати градусам, от перпендикуляра. Фиг. 5 показывает это иллюстративное отличие с помощью иммерсивного интерфейса 304, жеста 308, левого края 402, предела левого края 410 и стартовой точки 418 из фиг. 3 и 4 наряду с линией 502 отличия на тридцать градусов от перпендикулярной линии 504. Таким образом, обработчик 128 жестов определяет, что линия 506 от стартовой точки 418 до более поздней точки 508 (которая находится приблизительно в двадцати градусах от перпендикуляра) является приблизительно перпендикулярной на основе того, что она находится в пределах иллюстративной линии отличия 502 на тридцать градусов.
В общем случае, если этап 208 определяет, что линия не является приблизительно перпендикулярной по отношению к краю, способ 200 переходит по ветви "Нет" на этап 206. Как частично отмечено выше, этап 208 также может определить, что более поздняя точка или другой аспект жеста дисквалифицируют жест. Примеры включают в себя случай, когда более поздняя точка находится в пределах края, например, вследствие нависания, касания, нажатия и удерживания или жеста вверх и вниз (например, для прокрутки контента в пользовательском интерфейсе), или когда установлено, что жест является жестом одиночного ввода, и принимается второй ввод (например, первый палец начинает жест у края, но второй палец затем делает касание где-то в другом месте).
Если этап 208 определяет, что линия является приблизительно перпендикулярной, на основе более поздней точки вне края, способ 200 переходит по ветви "Да" на этап 210.
Этап 210 отвечает на положительное определение этапа 208 посредством передачи жеста объекту, отличающегося от представленного пользовательского интерфейса. Этот объект не является пользовательским интерфейсом, над которым был принят жест, в предположении, что он был принят над пользовательским интерфейсом вообще. Этап 210 может определить, какому объекту также следует передать жест, например, на основе края или области края, в которой принята стартовая точка жеста. Например, рассмотрим фиг. 6, которая иллюстрирует иммерсивный интерфейс 304 и края 402, 404, 406 и 408 из фиг. 4, но добавляет верхнюю область 602 и нижнюю область 604 к правому краю 406. Стартовая точка в верхней области 602 может привести к другому объекту (или даже к тому же объекту, но другому пользовательскому интерфейсу, обеспечиваемому в ответ), чем стартовая точка, принятая у нижней области 604. Аналогично, стартовая точка в верхнем краю 404 может привести к другому объекту или интерфейсу, чем левый край 402 или нижний край 408.
В некоторых случаях этим объектом является прикладная программа, соответствующая пользовательскому интерфейсу, а не прикладная программа, не соответствующая пользовательскому интерфейсу, например, системный объект или другая прикладная программа. В таком случае передача жеста объекту может быть эффективной, чтобы заставить прикладную программу представить второй пользовательский интерфейс, предоставляющий возможности взаимодействия с прикладной программой. В примере с фильмом выше объектом может являться медиапроигрыватель, воспроизводящий фильм, а не иммерсивный интерфейс, отображающий фильм. Медиапроигрыватель тогда может представлять второй пользовательский интерфейс, предоставляющий возможности выбора подзаголовков или комментарий режиссера, а не выбор, обеспеченный интерфейсом, отображающим фильм, таким как "пауза", "воспроизведение" и "остановка". Эта возможность разрешена на фиг. 1, где одна из прикладных программ 136 может включать в себя или быть способной к представлению более чем одного пользовательского интерфейса 138 прикладной программы. Таким образом, этап 210 может передать жест модулю 126 системного интерфейса, одной из прикладных программ 136, которые в настоящий момент представляют пользовательский интерфейс, или другой из прикладных программ 136, если назвать только три возможности.
В заключение текущего варианта осуществления, на этапе 210 обработчик 128 жестов передает жест 308 модулю 126 системного интерфейса. Модуль 126 системного интерфейса принимает буферизованный участок жеста 308 и продолжает принимать остальную часть жеста 308, который делает пользователь. Фиг. 7 иллюстрирует возможный ответ после приема жеста 308, показывающий интерфейс 702 выбора прикладной программы, представленный модулем 126 системного интерфейса, и через иммерсивный интерфейс 304 и веб-страницу 306 из фиг. 3. Интерфейс 702 выбора прикладной программы обеспечивает возможность для выбора различных других прикладных программ и их соответствующих интерфейсов в выбираемых мозаиках 704, 706, 708 и 710 прикладных программ.
Иллюстративный интерфейс 702 выбора прикладной программы является иммерсивным пользовательским интерфейсом, представленным с использованием модуля 124 мультипрограммной среды, хотя это не обязательно требуется. Представленные интерфейсы вместо этого могут быть основанными на окнах и представлены с использованием модуля 122 оконного режима. Оба из этих модулей проиллюстрированы на фиг. 1.
Этап 210 вместе с этим или вместо этого может решить передать жест разным объектам и/или интерфейсам на основе других факторов принятого жеста. Иллюстративные факторы описаны более подробно в способе 800 ниже.
Следует отметить, что способ 200 и другие способы, описанные после этого, могут выполняться в реальном времени, в то время как жест делается и принимается. Это разрешает, кроме прочего, представить пользовательский интерфейс, представляемый в ответ на жест, до завершения жеста. Кроме того, пользовательский интерфейс может быть представлен постепенно по мере приема жеста. Это дает возможность пользовательского восприятия перетаскивания пользовательского интерфейса от края по мере выполнения жеста, когда пользовательский интерфейс кажется "прилипшим" к жесту (например, к указателю мыши или к пальцу человека, делающего жест).
Фиг. 8 изображает способ 800 обеспечения возможности для граничных жестов, включающий в себя определение интерфейса для представления на основе некоторого фактора жеста. В частях последующего обсуждения может быть сделана ссылка на систему 100, показанную на фиг. 1, ссылка на нее делается только для примера. Способ 800 может действовать полностью или частично, отдельно или в комбинации с другими описанными здесь способами.
Этап 802 определяет, что жест, сделанный над пользовательским интерфейсом, имеет стартовую точку на краю пользовательского интерфейса и более позднюю точку не в пределах края. Этап 802 может работать аналогично или использовать аспекты способа 200, с тем чтобы определить более позднюю точку, на которой следует обосновывать определение этапа 802. Этап 802 также может действовать по-другому.
В одном случае, например, этап 802 определяет, что жест представляет собой жест скольжения одним пальцем, начинающимся по краю представленного иммерсивного пользовательского интерфейса и имеющим более позднюю точку не на краю, но не на основе угла жеста. На основе этого определения этап 802 переходит на этап 804, а не передает жест представленному иммерсивному пользовательскому интерфейсу.
Этап 804 определяет, какой интерфейс следует представить, на основе одного или более факторов жеста. Этап 804 может сделать это на основе заключительной или промежуточной продолжительности жеста, является ли жест одноточечным или многоточечным (например, жест одним пальцем или несколькими пальцами), или скорости жеста. Таким образом, этап 804 может решить представить начальное меню в ответ на жест с помощью нескольких пальцев, интерфейс выбора прикладной программы в ответ на относительно короткий жест единственного пальца или интерфейс системного управления, позволяющий выбор завершения работы вычислительного устройства 102 в ответ на относительно долгий жест единственного пальца, например. Чтобы сделать так, обработчик 128 жестов может определить продолжительность жеста или количество вводов (например, пальцев). В ответ этап 806 представляет определенный пользовательский интерфейс.
Предположим в качестве примера, что обработчик 128 жестов на основе фактора жеста решает представить пользовательский интерфейс, дающий возможность взаимодействия с операционной системой 120. В ответ модуль 126 системного интерфейса представляет этот пользовательский интерфейс. Представление пользовательского интерфейса может являться аналогичным описанному в других способах, например, постепенное отображение пользовательского интерфейса 702 выбора прикладной программы из фиг. 7.
Следуя способу 200 и/или способу 800 полностью или частично методики могут перейти к выполнению способа 900 на фиг. 9. Способ 900 обеспечивает возможность для расширения пользовательского интерфейса, представления другого интерфейса или прекращения представления пользовательского интерфейса, представленного в ответ на граничный жест.
Этап 902 принимает последовательную точку жеста и после представления по меньшей мере некоторой части второго пользовательского интерфейса. Как отмечено частично выше, способы 200 и/или 800 в состоянии представить или вызвать представление второго пользовательского интерфейса, такого как второй пользовательский интерфейс для той же самой прикладной программы, соответствующей текущему пользовательскому интерфейсу, другой прикладной программе или системному пользовательскому интерфейсу.
В качестве примера рассмотрим фиг. 10, которая иллюстрирует ноутбук 104, имеющий сенсорный дисплей 1002, отображающий оконный интерфейс 1004 электронной почты и два иммерсивных интерфейса 1006 и 1008. Оконный интерфейс 1004 электронной почты соответствует прикладной программе, которая управляет электронной почтой, которая может являться удаленной или локальной для ноутбука 104. Фиг. 10 также иллюстрирует два жеста 1010 и 1012. Жест 1010 продолжается по прямой линии, в то время как жест 1012 возвращается назад (показан двумя стрелками в двух направлениях).
Фиг. 11 иллюстрирует жест 1010, имеющий начальную точку 1102, более позднюю точку 1104 и последовательную точку 1106, и жест 1012, имеющий ту же самую стартовую точку 1102, более позднюю точку 1108, первую последовательную точку 1110 и вторую последовательную точку 1112. Фиг. 11 также показывает нижний край 1114, область 1116 более поздней точки и область 1118 добавления интерфейса.
Этап 904 определяет на основе последовательной точки, включает ли жест в себя возврат, продолжение или ни то, ни другое. Этап 904 может определить возврат, определяя, что последовательная точка находится на краю или ближе к краю, чем предшествующая точка жеста. Этап 904 может определить, что жест продолжается, на основе последовательной точки, находящейся на предварительно установленном расстоянии от края или более поздней точки. Если определено, что ни один из этих случаев не имеет места, способ 900 может повторить этапы 902 и 904, чтобы принять и проанализировать дополнительные последовательные точки, пока жест не заканчивается. Если этап 904 определяет, что имеется возврат, способ 900 переходит по ветви "Возврат" на этап 906. Если этап 904 определяет, что жест продолжается, способ 900 переходит по ветви "Продолжение" на этап 908.
В контексте настоящего примера предположим, что обработчик 128 жестов принимает первую последовательную точку 1110 жеста 1012. Затем обработчик 128 жестов определяет, что первая последовательная точка 1110 не находится на краю 1114, не ближе предшествующей точки жеста к краю 1114 (например, не ближе более поздней точки 1108), и не находится на предварительно установленном расстоянии от края или более поздней точки, не будучи в пределах области 1118 добавления интерфейса. В таком случае способ возвращается на этап 902.
На второй итерации этапа 902 предположим, что обработчик 128 жестов принимает вторую последовательную точку 1112. В таком случае обработчик 128 жестов определяет, что вторая последовательная точка 1112 находится ближе к краю 1114, чем первая последовательная точка 1110, и, таким образом, жест 1012 включает в себя возврат. Затем обработчик 128 жестов переходит на этап 906, чтобы прекратить представлять второй пользовательский интерфейс, ранее представленный в ответ на жест. В качестве примера, рассмотрим фиг. 12, которая иллюстрирует интерфейс 1202 обработки электронной почты. В этом иллюстративном случае этапа 906 обработчик 128 жестов заставляет почтовую программу прекратить представлять интерфейс 1202 в ответ на возврат жеста 1012 (не показан убранным).
Этап 908, однако, представляет или вызывает представление третьего пользовательского интерфейса или расширения второго пользовательского интерфейса. В продолжение текущего примера рассмотрим фиг. 13, которая иллюстрирует интерфейс 1302 дополнительных возможностей электронной почты в ответ на обнаружение, что жест 1010 имеет последовательную точку 1106 на предварительно установленном расстоянии от края 1104, в этом случае находящуюся в пределах области 1118 добавления интерфейса из фиг. 11. Эта область и предварительно установленное расстояние могут быть установлены на основе размера пользовательского интерфейса, ранее представленного в ответ на жест. Таким образом, пользователь, желающий добавить дополнительные средства управления, может просто продлить жест через пользовательский интерфейс, представленный в ответ на более ранний участок жеста.
Способ 900 может быть повторен для добавления дополнительных пользовательских интерфейсов или разворачивания представленного пользовательского интерфейса. Вернемся к иллюстративному интерфейсу 702, показанному на фиг. 7, где, например, обработчик 128 жестов может продолжать добавлять интерфейсы или средства управления к интерфейсу 702, по мере того как жест 308 продлевается через прошлый интерфейс 702, например, представляя дополнительное множество выбираемых мозаик прикладных программ. Если жест 308 продлевается через дополнительные мозаики, обработчик 128 жестов может заставить модуль 126 системного интерфейса представить другой интерфейс, смежный с мозаиками, чтобы обеспечить возможность для пользователя выбрать средства управления, такие как, приостановка, спящий режим, переключение режимов (с иммерсивного на оконный и наоборот) или завершение работы вычислительного устройства 102.
Хотя описанные выше иллюстративные пользо