UrlbarController 参考

class UrlbarController(options)

地址栏控制器处理来自地址栏的查询,获取结果并将其返回给 UI 以进行显示。

可以添加监听器来监听结果。它们可以支持以下方法,这些方法可以在运行查询时被调用

  • onQueryStarted(queryContext)

  • onQueryResults(queryContext)

  • onQueryCancelled(queryContext)

  • onQueryFinished(queryContext)

  • onQueryResultRemoved(index)

  • onViewOpen()

  • onViewClose()

初始化类。管理器可以在这里被覆盖,这是为了测试目的。

参数:
  • options (object) – UrlbarController 的初始选项。

  • options.input (UrlbarInput) – 此控制器正在使用的输入。

  • options.manager (object) – 可选的伪提供程序管理器,用于覆盖内置的提供程序管理器。仅用于单元测试。

UrlbarController.UrlbarController

初始化类。管理器可以在这里被覆盖,这是为了测试目的。

UrlbarController.userSelectionBehavior

存储用户用来选择结果的选择行为。

UrlbarController.addQueryListener(listener)

为查询操作和结果添加监听器。

参数:
  • listener (object) – 要添加的监听器。

抛出:

TypeError – 如果监听器不是对象,则抛出。

UrlbarController.cancelQuery()

取消正在进行的查询。注意,如果查询无法取消,则查询可能会继续运行。

UrlbarController.clearLastQueryContextCache()

清除之前的查询上下文缓存。

UrlbarController.handleKeyNavigation(event, executeAction=true)

接收来自输入的键盘事件,并处理那些应该在视图中导航或选择当前选定项目的事件。

参数:
  • event (KeyboardEvent) – DOM KeyboardEvent。

  • executeAction (boolean) – 事件是否应该实际执行关联的操作,或者只是被管理(在 preventDefault() 级别)。当事件将被事件缓冲器延迟时,使用此选项,但 preventDefault() 及其相关函数仍应同步发生。

UrlbarController.keyEventMovesCaret(event)

检查是否应该由输入字段本地处理一个通常会打开视图的键盘事件。在某些平台上,向上和向下键可用于移动光标,在这种情况下,我们只希望在光标位于输入的开头或结尾时才打开视图。

参数:
  • event (KeyboardEvent) – DOM KeyboardEvent。

返回:

boolean – 如果事件应该移动光标而不是打开视图,则返回 true。

UrlbarController.notify(name, ...params)

通知监听器结果。

参数:
  • name (string) – 通知的名称。

  • params (object) – 要与通知一起传递的参数。

UrlbarController.receiveResults(queryContext)

接收查询的结果。

参数:
  • queryContext (UrlbarQueryContext) – 查询详细信息。

UrlbarController.recordSelectedResult(event, result)

在遥测中记录所选结果的详细信息。我们只记录选择行为、类型和索引。

参数:
  • event (Event) – 触发选择结果的事件。

  • result (UrlbarResult) – 所选结果。

UrlbarController.removeQueryListener(listener)

移除查询监听器。

参数:
  • listener (object) – 要添加的监听器。

UrlbarController.removeResult(result)

从当前查询上下文中移除结果并通知监听器。启发式结果无法移除。

参数:
  • result (UrlbarResult) – 要移除的结果。

UrlbarController.setLastQueryContextCache(queryContext)

设置查询上下文缓存。

参数:
  • queryContext (UrlbarQueryContext) – 要缓存的对象。

UrlbarController.setView(view)

将控制器与视图连接起来。

参数:
  • view (UrlbarView) – 与此控制器关联的 UrlbarView 实例。

UrlbarController.speculativeConnect(result, context, reason)

尝试在结果上初始化一个推测连接。推测连接仅适用于一部分结果。

推测连接到
  • 搜索引擎启发式结果

  • 自动填充结果

  • http/https 结果

参数:
  • result (UrlbarResult) – 要推测连接到的结果。

  • context (UrlbarQueryContext) – queryContext

  • reason (string) – 推测连接请求的原因。

UrlbarController.startQuery(queryContext)

获取查询上下文并根据用户输入启动查询。

参数:
  • queryContext (UrlbarQueryContext) – 查询详细信息。

返回:

UrlbarQueryContext – 更新后的查询上下文。