hbro-0.8.0.0: A minimal KISS compliant browser

Safe HaskellSafe-Infered

Hbro.Types

Synopsis

Documentation

data CommonDirectories Source

Various directories used to store some runtime and static files.

Constructors

CommonDirectories 

Fields

mHome :: FilePath

Home directory

mTemporary :: FilePath

Temporary files directory

mConfiguration :: FilePath

Configuration directory

mData :: FilePath

Data directory

data Environment Source

The whole set of parameters and elements of the browser.

Constructors

Environment 

Fields

mOptions :: CliOptions

Commandline options

mConfig :: Config

Configuration parameters (constants) provided by user

mGUI :: GUI

Graphical widgets

mContext :: Context

ZMQ context

data CliOptions Source

Supported commandline options

Constructors

CliOptions 

Fields

mURI :: Maybe String

URI to load at start-up

mVanilla :: Bool

Bypass custom configuration file

mDenyReconf :: Bool

Do not recompile browser even if configuration file has changed

mForceReconf :: Bool

Force recompilation even if configuration file hasn't changed

mDyreDebug :: Bool

Look for a custom configuration file in working directory

mMasterBinary :: Maybe String
 

data Config Source

Constructors

Config 

Fields

mCommonDirectories :: CommonDirectories

Custom directories used to store various runtime and static files

mHomePage :: String

Startup page

mSocketDir :: FilePath

Directory where 0MQ will be created (/tmp for example)

mUIFile :: FilePath

Path to XML file describing UI (used by GtkBuilder)

mKeyEventHandler :: KeyEventCallback -> ConnectId WebView -> WebView -> EventM EKey Bool

Key event handler, which forwards keystrokes to mKeyEventCallback

mKeyEventCallback :: Environment -> KeyEventCallback

Main key event callback, assumed to deal with each keystroke separately

mWebSettings :: [AttrOp WebSettings]

WebSettings' attributes to use with webkit (see Webkit.WebSettings documentation)

mSetup :: Environment -> IO ()

Custom startup instructions

mCommands :: CommandsList

Custom commands to use with IPC sockets

mDownloadHook :: Environment -> URI -> String -> Int -> IO ()

Function triggered on a download request

mError :: Maybe String

Error mCustom :: a

data GUI Source

Constructors

GUI 

Fields

mWindow :: Window

Main window

mInspectorWindow :: Window

WebInspector window

mScrollWindow :: ScrolledWindow

ScrolledWindow containing the webview

mWebView :: WebView

Browser's webview

mPromptBar :: PromptBar

Prompt bar

mStatusBar :: HBox

Status bar's horizontal box

mBuilder :: Builder

Builder object created from XML file

data PromptBar Source

Constructors

PromptBar 

Fields

mBox :: HBox
 
mDescription :: Label

Description of current prompt

mEntry :: Entry

Prompt entry

type KeysList = [(([Modifier], String), IO ())]Source

List of bound keys. All callbacks are fed with the Environment instance.

Note 1 : for modifiers, lists are used for convenience purposes, but are transformed into sets in hbro's internal machinery, so that order and repetition don't matter.

Note 2 : for printable characters accessed via the shift modifier, you do have to include Shift in modifiers list.