Using the Browser Command Line

The content_shell command provides options to control the behavior and appearance of the QNX Web Browser.

Syntax

content_shell [options] [url] 

Options

--disable-pinch
Disable pinch-zoom gestures.
See also the --qnx-disable-double-tap option.
--disable-web-security
Disable the same-origin policy, which prevents malicious code in a web page from accessing data in other pages. (Under this policy, scripts in a web page can access data from another page, but only if both pages have the same origin.)
You can use this option to run applications that access data from other domains, provided the applications are trusted and well-tested. Otherwise, avoid using it.
--enable-overlay-scrollbar
Display an auto-hide overlay scrollbar.
Unlike a traditional scrollbar, which uses up dedicated real estate on the side of the browser window, the overlay scrollbar appears on top of content, as a semitransparent overlay. It thus allows for a wider content pane.
The overlay scrollbar appears temporarily when the user scrolls through content (for instance, by swiping on the screen or by turning a scroll knob). It then hides when it's no longer needed. The user can grab the overlay scrollbar with a pointer once a scroll is initiated.
Like conventional scrollbars, the overlay scrollbar also serves as a visual cue, indicating how much of the available content is currently visible.
To display a traditional scrollbar, use the --qnx-show-scrollbar option. (If you specify both --enable-overlay-scrollbar and --qnx-show-scrollbar, the browser displays only the overlay scrollbar.)
--overscroll-history-navigation=value
Control how the browser responds when the user swipes left or right to move backward or forward through the browser history.
The value argument can be one of the following:
  • 0 — Ignore left and right swipe gestures.
  • 1 — Show the current page being swept away and replaced by the new page when the user swipes left or right.
  • 2 — Display a simple backward or forward indicator when the user swipes left or right.
--process-per-site
Use a single renderer process to manage all instances of the same site.
Like --process-per-site-instance, this option isolates visits to different sites from each other. It doesn't, however, provide isolation between different visits to the same site.
See the discussion of Renderer process models in the Browser Architecture chapter for more information.
--process-per-site-instance
Use a separate renderer process to manage each instance of a site.
This option is similar to --process-per-site, but it offers even greater stability by isolating different visits to the same site from each other.
If you don't specify a renderer process model at the command line, the browser uses the process-per-site-instance model by default. See the discussion of Renderer process models for more information.
--process-per-tab
Use a separate renderer process to manage each group of script-connected tabs.
See the discussion of Renderer process models for more information.
--proxy-bypass-list=(trailing_domain|ip_address)[:port][;...]
For the given domains, bypass any proxy configuration specified by the --proxy-server option.
The trailing_domain matching doesn't require period (.) separators. For example, if you specify *qnx.com, the command will match iqnx.com.
In the following example, the proxy server myproxy on port 8080 handles requests to all hosts except those that point to *.qnx.com or to *foo.com:
--proxy-server="myproxy:8080" --proxy-bypass-list="*.qnx.com;*foo.com" 
In this case, the myproxy server handles requests to iqnx.com, but not to ifoo.com, because *foo, not *.foo, was specified in the bypass list.
--proxy-server=[scheme=]uri[:port][;...]
Use the specified proxy configuration.
You can specify a proxy configuration in the following ways:
  • Provide a semicolon-separated list of scheme-to-URI/port pairs. For example, to use the HTTP proxy at proxyserver:80 for HTTP URLs and the HTTPS proxy at proxyserver2:8000 for HTTPS URLs, you would specify the following:
    --proxy-server="http=proxyserver:80;https=proxyserver2:8000"
  • Provide a single URI with an optional port for all URLs. For example, to use the proxy at proxyserver:8080 for all traffic, you would specify the following:
    --proxy-server="proxyserver:8080"
When you use this option, the browser asks the user for login information when it first attempts to connect to the proxy.
--qnx-app-id=app_id_string
Add the specified ID string to the id string property of the window created by the QNX Web Browser.
The id string property is typically used by a window manager to identify the window of a given application. The id string property takes this form:
pgid-blinq-app_id_string-win-#
If app_id_string contains more than 40 characters, the browser trims it to the first 40 characters.
--qnx-application-manager-pps-object=pps_object_path
Listen to the specified publish/subscribe object for application control commands.
Typically, the HMI process creates this object to launch applications under the shared application process model. See the Application process models section and the Launching and Controlling Applications chapter for more information.
--qnx-disable-double-tap
Disable double-tap zoom.
This option is useful for games where double-tap is a game action. See also the --disable-pinch option.
--qnx-disable-pps-service-bindings
Don’t expose the JavaScript PPS interface object (ppsService), which allows applications to read from or write to native PPS objects.
This option prevents applications from interacting with native PPS services. See the JavaScript PPS API chapter for more information.
--qnx-disable-zygote
Don't use the renderer Zygote to fork child renderer processes.
This option reduces memory usage by eliminating the browser's Zygote process, but increases the time needed to create renderer processes.
--qnx-headless
Run headless, without a toolbar or an address bar. Recommended when using the browser to run applications.
--qnx-hide-home-button-url
Don't display the URL assigned to the home button. (By default, the URL appears in the address bar.)
When you specify this option, the address bar never shows the home-page URL, even when the user visits that URL.
This option is useful when you've created a local landing page but you don't want the page's file path to appear in the address bar.
--qnx-home-button-url=url
Assign the specified URL to the home button. The default is http://www.qnx.com.
--qnx-ignore-global-volume
Don't show or change the global audio volume; use only the individual media volume.
By default, the browser changes the system's global audio volume when the user changes the volume of media playing inside a page. If you specify this option, any changes to the media volume won't affect the global volume.
--qnx-lifecycle-pps-object=pps_object_path
Listen to the specified publish/subscribe object for lifecycle events.
Typically, the HMI process creates this object to communicate lifecycle events to other processes, such as the browser. See the Managing the Browser Lifecycle chapter for more information.
--qnx-no-disk-cache
Disable the disk cache.
This option can speed up load times on systems with slow storage devices. The disk cache lives in @HOME/Cache/.
--qnx-no-gpu-cache
Disable the GPU disk cache.
This option can speed up load times on systems with slow storage devices. The GPU cache lives in @HOME/GPUCache/.
--qnx-show-home-button
Display a Home button in the browser toolbar.
--qnx-show-scrollbar
Display a scrollbar on the right side of the browser window.
Unlike the --enable-overlay-scrollbar option, which displays an auto-hide scrollbar, this option displays a permanent scrollbar that is always visible when the browser window is open.
If you specify both --enable-overlay-scrollbar and --qnx-show-scrollbar, the overlay scrollbar will appear, but the permanent scrollbar won't.
--qnx-v8-max-coderange-mb=size
Set the memory size, in megabytes, that the V8 JavaScript engine will lazily mmap() on startup. The default is 512.
Use this option only if you run procnto* in superlock mode (-mL memory configuration option). If procnto* runs in this mode, we recommend that you specify --qnx-v8-max-coderange-mb=16 to avoid the extra 512M of memory otherwise used by the Browser process.
See the procnto* entry in the QNX Neutrino RTOS Utilities Reference for more information on superlock mode.
--qnx-window-display=display_id
Render the browser window in the specified physical display.
The display_id argument specifies the ID of a display section defined in the graphics.conf file. See the discussion on configuring Screen in the Screen Graphics Subsystem Developer's Guide for more information.
This option is useful for systems that support multiple HDMI displays.
--qnx-window-rect=XxYxWxH
Set the horizontal offset, vertical offset, width, and height of the browser window, in pixels.
By default, X and Y are set to 0, and W and H are set to the resolution of the display.
--remote-debugging-port=port
Use the specified port for web inspector debugging.
See the Using Web Inspector chapter for more information.
--single-process
Run the entire browser as a single process.
Use this option for debugging only. It forces the browser, the GPU process, and the rendering engine to all run in the same process, resulting in significantly less reliability and security. See the discussion of Renderer process models for more information.
Note: This option lets you generate core dumps for postmortem debugging.
--ui-disable-partial-swap
Disable partial EGL buffer updates.
This option improves rendering on GPUs that don't support the EGL_NV_post_sub_buffer extension. Try using it if your system renders any tiles incorrectly.
--use-mobile-user-agent
Add Mobile to the user-agent string so that websites deliver content optimized for mobile devices.
This option can help improve the browsing experience of any device that has a small screen or modest performance.
Note: If you specify a user-agent string with the CR_USER_AGENT environment variable, that string overrides the --use-mobile-user-agent option.
url
A valid URL.
To specify a local file, use this syntax:
file:///dir_name/file_name.html
Note the 3 slashes.

Description

The content_shell command lets you control the behavior and appearance of the QNX Web Browser. For instance, it provides options to:

See the descriptions of individual options for more information.

To launch content_shell, you can use the system launch and monitor utility, slm. See the slm entry in the QNX Neutrino RTOS Utilities Reference for more information.