Home · Professional · Browsers · Firebird (Phoenix) · Kiosk Browser · More Context Modifications

More Context Modifications

Previous · Next

Web page context menus

The contentAreaContextMenu popup defines all of the context menus that appear within the web page display area. Recall that these menus are context sensitive so not every item appears when right-clicking on every element. We are going to selectively comment these menu items to remove any that might either create a security hole or confuse users. If you want, you could simply comment the entire section to disable all context menus that appear in the web page display area.

Our first set of comments is to remove the option to allow users to open a link in a new tab. You'll have to decide if you want this functionality enabled or not. While tabs can be very useful, in most kiosk situations, the less interface elements a user has to work with, the less confusion they will have. We also want to comment out the <menuseparator> tag. Whenever you see this tag, it is adding the thin horizontal line that helps to visually separate different sections of the context menu. While this is helpful visual aid, we don't need to have it for just one menu entry. This is where frequent testing of your changes is useful. As you comment out various menu items, you can see how the remaining items display and add or remove separators as necessary.

Our next set of comments removes unneeded menu entries for actions like "Bookmark This Link" and "Save Link As". We will also comment out the entries for e-mail a link and copy a link. While these by themselves are not a problem, as we have no e-mail capability and no place to paste URL's, these entries are less useful and it is less confusing to the user if we don't include them.

Disabling image context menus

The entire set of image-specific menu entries is unnecessary in a kiosk environment. Especially worthy of being disabled are the option to "Save Image As" which provides access to the file system and "Set As Wallpaper", which allows users to set the image as the desktop wallpaper. One thing to be aware is that the Firebird coders included a comment in this section. Make sure that you either delete their comment, or end and restart your comments around their comment. Otherwise, you will have nested comments which Firebird will balk at when it starts.

The next set of entries provides navigational functionality like forward, back and reload. For those power users who use context menus, this can be useful so we'll leave these enabled. We will disable the unnecessary items that follow it. In some cases, the functionality of the items that we are disabling have already been disabled through the command ids. In those cases, the menu items are present but not functional. We'll remove those entries to avoid user confusion. Also, recall that in some instances like "View Page Source", disabling the command id did not affect the context menu entry. So it is good practice to remove access to anything that users don't need to access.

The text editing options of copy, paste and related functionality can be useful in a kiosk environment. For example, in a library catalog, a user might want to search on a specific term displayed in a results page and instead of having to type the term, a power user can just copy and paste the term into a search field. You'll have to decide whether you want to enable this functionality or not. In our case, we'll leave those entries accessible with one exception. We will disable the option to search the web on a specified term.

Frame-specific context menus

When a user views frame-based web pages, they get context menus that include frame-specific entries. These largely mirror the entries in non-frameset web pages but allow the user to manipulate elements based on the frame that it is located within. We will allow users to open a specific frame in a new window. But we'll otherwise disable options like "Save Frame As" that we did not allow in the non-frameset context menus. The tag <menu id="frame"> defines the start of the frame-specific menus. The <menupopup> tag below it brackets all of the frame-specific menu options. Make sure that your comment tags don't comment out these entries, otherwise you'll encounter errors. Make sure to open and close your comment tags between the opening and closing tags for those two tags.

We'll finish up our context menu edits by commenting out the View Source and View Information entries that start below <menuseparator id="context-sep-properties"/>. Users don't need to be able to access these features. They also open up new windows that would need to be secured to prevent users from getting access to the file system. As with our frames-specific entries, make sure that you close your comments before you reach the closing </popup> and </popupset> tags. Otherwise, Firebird will squawk errors at you. If you haven't been testing your changes as you go, now is a good point to save all of your changes and test them in Firebird. Try and open as many different context menus by right-clicking on links, images and text. Make sure that the Customize popup on the toolbar is disabled too. Keep an eye open for stray separator bars that you can edit out to make the context menus looking neat.

Previous · Next

Last updated: December 31, 2003
Created: December 1, 2002

If you are reading this, your browser probably doesn't support current HTML and CSS standards. While the site looks much better in a browser that supports web standards, you can still access all of the information that is here with any browser or Internet device.

Hosted by www.Geocities.ws

1