Kiosk mode



I've been looking at epiphany and thinking about what sort of things
we'll need for a kiosk mode.  I reread the thread from a couple of
months ago and have started to quantify what I think we need.  I've come
up with a few keys I think we should implement.  Please comment on
these.  Especially comment if you've thought of any other keys that I
haven't commented on.

Thanks.

url_allow
default: ""
Usage: If non-empty, all urls will be checked against this regexp.  If
they don't match, then they won't be displayed.  If possible, I'd like
to make it so that this regexp must match the beginning of the url so
that people can't view urls like 'javascript: whatever(); "print
http:";'
Possible suggested values: "http:", "http:|ftp:", "http:|ftp:|file:",
"http://mylocalwebsite/";

url_deny
default: ""
Usage: If non-empty, all urls will be checked against this regexp.  If
they match, then they won't be displayed.  No ^ will be prepended.
Possible suggested values: "^about:", "^file:"

enable_save_to_disk (Perhaps this should be a global gnome setting?)
default: true
Usage: If false, the user will not be able to save data to disk.  This
will disable Save As, Save Background As, and Download Link, as well as
the download option for unknown urls.

enable_execute_arbitrary_commands (This should probably be a global
gnome setting?)
default: true
Usage: If false, the user will not be able to execute arbitrary
commands.  The main place that I know of that this would currently
affect things is the print dialog.  The print dialog shouldn't contain a
command line anyway, but until that's fixed, this key should disable
printing.

enable_printing
default: true
Usage: If false, the user should not be able to print at all.

enable_print_setup
default: true
Usage: If false, the user will not be able to set any print settings. 
File->Print and javascript printing will just cause the default settings
to be used.

enable_bookmark_editing
default: true
Usage: If false the user will not be able to edit bookmarks.  I would
prefer not to have this key and simply have the ability to lock down the
tree of gconf keys for bookmarks and have epiphany notice that said tree
is locked down, but I'm not sure if that's possible.  This would cause
all menus involved in bookmark editing to disappear.

enable_toolbar_editing
default: true
Usage: If false the user will not be able to edit the toolbars.  I would
prefer not to have this key and simply have the ability to lock down the
tree of gconf keys for toolbars and have epiphany notice that said tree
is locked down, but I'm not sure if that's possible.  This would cause
all menus involved in toolbar editing to disappear.

enable_tabs
default: true
Usage: If false, epiphany would not have the ability to use tabbed
browsing.

At least one of the following two.

enable_new_window
default: true
Usage: If false, epiphany would not have the ability to open a new
window.

max_window_count:
default: 0
Usage: If non-zero, the maximum number of open windows allowed.  Set to
1 to disallow new windows.

enable_quit
default: true
Usage: If false, the user would not be able to quit epiphany.

enable_menus
default: true
Usage: If false, there would be no menus.

enable_arbitrary_url
default: true
Usage: If false, the user would not be able to browse to an arbitrary
URL.  This would include making the location bar disappear and disabling
C-l.

enable_navigation
default: false
Usage: If false, no navigation other than clicking on links would be
allowed.

Some things to note:

We don't need a key for disable proxy set up.  That will be done by
locking the keys for proxy set up.

Fullscreen mode already has a key, but if that key is locked true, then
the "Exit Fullscreen" button should not appear.

Show toolbars already has a key, but it can be overruled by javascript
and doesn't apply in full screen mode.  These facts either need to
change, or we need a second key which, when false, disables toolbars
always.  Also, if said key is locked, the checkbox should disappear from
the View menu.  Similar things apply to show menus and show statusbar.

Ideally, these should all be active keys.  If they change, then the UI
should immediately change.  This is important so someone setting up
their kiosk wouldn't have to keep restarting epiphany.  Not sure how
difficult that would be for some of them.

Not a key, but we should add a reset session command.  Probably in a
menu and also available as a toolbar button.  The sysadmin could then
set up reset session in their toolbar.


Don't hesitate to send comments about this.  Also useful would be any
knowledge people have about the ability to implement some of these. 
Especially ones that interact with mozilla like url_allow and url_deny.

Thanks,
    Chris




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]