4.3. 使用 RANDR X 扩展

SGD 支持 RANDR X 扩展。RANDR 的全称是 X Resize、Rotate 和 Reflect 扩展

SGD 使用 RANDR 为应用程序提供增强的显示支持,如下所述:

SGD 不使用全部的 RANDR 功能。通过 SGD 显示的应用程序不支持反射、旋转、缩放和任意方向滑动。

可以针对以下应用程序对象配置 RANDR 支持:

4.3.1. RANDR 的客户端要求

要使用 RANDR 显示功能,客户端设备必须支持 RANDR,如下所述:

  • UNIX 和 Linux 平台客户端设备。支持的显示功能取决于客户端设备上可用的 RANDR 版本。如果客户端设备上没有所需的 RANDR 版本,SGD 将使用 XINERAMA(如果可用)。

  • Mac OS X 平台客户端设备。此平台不支持 RANDR。使用 XINERAMA 界面。

  • Windows 平台客户端设备。客户端平台必须为支持 RANDR 显示功能的 Microsoft Windows 版本。

有关支持的客户端平台的更多详细信息,请参见《Oracle Secure Global Desktop 发行版 4.7 平台支持和发行说明》。

4.3.2. 配置 RANDR

为了能够对应用程序使用多监视器和动态会话大小调整功能,您必须启用 RANDR,如下所述:

  1. 启用针对阵列全局使用 RANDR 扩展。

    如果需要,还可以为组织分层结构中的特定用户配置对 RANDR 扩展的访问权限。

  2. 为应用程序对象启用 RANDR 扩展。

4.3.2.1. 为 SGD 阵列启用 RANDR 扩展

默认情况下,禁用针对阵列使用 RANDR 扩展。

  1. 启用针对阵列使用 RANDR 扩展。

    在管理控制台中,转至 "Global Settings"(全局设置)→ "Client Device"(客户端设备)选项卡,然后选中 "RandR Extension"(RandR 扩展)复选框。

    您也可以使用以下命令为阵列启用 RANDR。

    $ tarantella config edit --array-xrandr-enabled 1
  2. (可选)针对各个用户配置 RANDR 扩展的使用。

    在管理控制台中,转至 "Client Device"(客户端设备)选项卡以查找用户配置文件、组织单元或组织对象。

    配置对象的 "RandR Extension"(RandR 扩展)(--orgxrandr) 属性。

4.3.2.2. 为应用程序启用 RANDR 扩展

可以启用针对各个应用程序对象使用 RANDR 扩展。

在管理控制台中,转至应用程序对象的 "Presentation"(表示)选项卡,并选中 "Window Size: RandR Extension"(窗口大小:RandR 扩展)复选框。此属性适用于 X、Windows、5250 和 3270 应用程序。

您也可以使用以下命令为应用程序对象启用 RANDR。

$ tarantella object edit --name obj --xrandr 1

4.3.3. RANDR 的用户体验

本节介绍将 RANDR 与 SGD 支持的各种窗口类型配置结合使用时的用户体验。

注意

对于 Windows 应用程序,使用 Microsoft Windows Server 2008 R2 和 Microsoft Windows 7 应用服务器时可获得最佳的用户体验。

对于 Windows 应用程序,动态显示更改仅对新的应用程序会话有效。用户必须关闭并重新启动 Windows 应用程序,才能查看显示更改。

Kiosk

  • 如果在较小的显示屏上恢复大型 kiosk 模式应用程序会话,则会自动调整会话的大小。不会显示滚动条。

  • 通过下拉式标题,用户可以最小化或关闭应用程序窗口。

    该标题包括一个用于切换到独立窗口显示的图标。要使用 kiosk 模式重新显示,请使用窗口装饰控件或 Ctrl+Alt+Break 键盘快捷键。

  • 使用多台监视器时,以下内容适用:

    • 应用程序窗口自动跨越可用的监视器。

    • 根据客户端设备上的监视器配置显示应用程序窗口。客户端监视器配置发生更改时,会自动调整会话的大小。

    • 支持非线性监视器布局。

客户端窗口管理

  • 如果在较小的显示屏上恢复大型的客户端窗口管理 (Client Window Management, CWM) 应用程序会话,则会自动调整会话的大小。

  • 在不同的显示屏上恢复会话时,会自动重新配置窗口布局。

  • 使用多台监视器时,以下内容适用:

    • 所有客户端监视器都可用于显示应用程序窗口。默认情况下,应用程序窗口在主监视器上显示。根据会话的大小,也可以使用其他监视器。

    • 根据客户端设备上的监视器配置显示应用程序窗口。客户端监视器配置发生更改时,会自动调整会话的大小。

    • 支持非线性监视器布局。

独立窗口

  • 如果在较小的显示屏上恢复大型的独立窗口应用程序会话,则会自动调整会话的大小。

  • 应用程序窗口大小可以通过鼠标拖动增大。应用程序窗口会“贴合”最接近的可用窗口大小。调整大小时通过按 Shift 键可以覆盖贴合大小的行为。

  • 当使用多台监视器时,默认情况下,应用程序窗口在主监视器上显示。可以将应用程序窗口移到其他监视器上。

无缝窗口

  • 如果在较小的显示屏上恢复大型的无缝窗口应用程序会话,则会自动调整应用程序窗口的大小。但是,不会调整会话的大小。动态显示更改仅对新的应用程序会话有效。

  • 使用多台监视器时,以下内容适用:

    • 所有客户端监视器都可用于显示应用程序窗口。默认情况下,应用程序窗口在主监视器上显示。根据会话的大小,也可以使用其他监视器。

    • 根据客户端设备上的监视器配置显示应用程序窗口。

    • 支持非线性监视器布局。

4.3.4. 对于使用 RANDR 的替代方法

多监视器和会话大小调整功能适用于不使用 RANDR 的应用程序会话,如下所述:

  • 对于 Kiosk 模式应用程序,可以使用 <KioskArea> 客户端配置文件设置来配置多监视器显示设置。请参见第 4.8.3 节 “不使用 RANDR 配置多监视器显示”

  • 对于 CWM 应用程序,可以使用 "Windows Size: Variable Root Window Size"(窗口大小:可变主窗口大小)(--variablerootsize) 属性启用主窗口的大小调整以适应用户的屏幕。

  • 对于 Kiosk 模式应用程序,可以使用 "Windows Size: Scale to Fit Window"(窗口大小:缩放以适应窗口)(--scalable) 属性启用 kiosk 窗口的缩放以适应用户的屏幕。请参见第 4.9.10 节 “Kiosk 应用程序未全屏显示”