about summary refs log tree commit diff stats
path: root/settings.c
Commit message (Collapse)AuthorAgeFilesLines
* Distinguish between toplevel domains and FQDNs in whitelist code.Josh Rickmar2012-08-011-2/+1
| | | | | | | | | This fixes the behavior of the whitelist code so that whitelist toggling toggles the FQDN (not the domain and all subdomains), unless domain is explicitly used. This was the intended behavior but the old code would automatically assume all subdomains anyways. This also makes the new force_https stuff work correctly with FQDNs (no subdomains) for the preloaded HSTS list.
* Don't run the (struct setting).ismodified function in the as on of theJosh Rickmar2012-08-011-1/+4
| | | | | | parameters to the g_strdup_printf() call. This makes the tooltips appear correctly on about:runtime when compiled with gcc (clang never exposed this issue).
* Implement an about:runtime page and :runtime command to view andJosh Rickmar2012-07-311-172/+1140
| | | | | | change runtime settings. Settings that have been modified show in a highlighted color in the table. Tooltips describe the setting's function, as well as the default values.
* Add a force_https setting (using the same domain syntax as theJosh Rickmar2012-07-311-0/+35
| | | | | | | | | | | | | | | whitelist settings) to make all requests to that domain use the HTTPS scheme, similar to HSTS. Install a new file, hsts-preload, into the resource dir. This is a regular config file with a bunch of force_https = ... lines, which is used to implement a preloaded HSTS list. Right now all the domains in this file, except for conformal.com and cyphertite.com, are taken directly from chromium's preloaded HSTS list (and should be synced with this file every so often). Also implement a new setting, preload_strict_transport (enabled by default), to enable or disable the loading of this preloaded HSTS list. Document force_https and preload_strict_transport in the manpage.
* Enable DNT by default in whitelist mode.Josh Rickmar2012-07-251-0/+3
|
* Implement a do_not_track feature to set the Do Not Track HTTP header.Josh Rickmar2012-07-251-0/+20
|
* Make all the statusbar elements GtkLabel widgets instead of GtkEntryJosh Rickmar2012-07-131-3/+3
| | | | | | | | | | widgets (with the exception of the uri, we need this for the progressbar). Because labels only take up as much room as they need, the statusbar elements now dynamically fit together in a GtkBox instead of giving GtkEntry a fixed size. Because the background color of labels can not be colored directly, place a GtkEventBox underneath the packing GtkBox (which is also transparent) and color that when changing the colors for HTTPS sites.
* Always create the items in the toolbar, even if they aren't going toJosh Rickmar2012-07-131-4/+12
| | | | | | | | | | | | be immediatelly shown due to fancy_bar = 0 or an empty search_string. We need these to be created in case they are shown again by changing these gui settings at runtime later. This also prevents a lot of Gtk-CRITICAL warnings due to trying to set various widgets active or inactive based on the current page status (for example, stop and the js toggle button). While here, kill some useless boxes around both the uri and search entries in the toolbar.
* Instead of erroring out when unable to set special settings, add aJosh Rickmar2012-07-111-1/+2
| | | | warning to about:startpage. While in here, clean up some #ifdefs.
* Add a show_scrollbars option to disable showing of scrollbars. EnableJosh Rickmar2012-07-111-0/+26
| | | | | (keep current behavior) for gui_mode = normal, and disable for gui_mode = minimal. Requires GTK3.
* Remove xterm_workaround as this has been fixed upstream, and make yJosh Rickmar2012-07-111-20/+0
| | | | | | and p work with CLIPBOARD in addition to PRIMARY. Yanking copies to both, and pasting tries PRIMARY first, and if empty, reads from CLIPBOARD. This should make y/p/P work on windows.
* Alphabetize try #2Josh Rickmar2012-07-031-22/+20
|
* Alphabetize settings so :set has a sensible order.Josh Rickmar2012-07-021-13/+11
|
* Add two new settings, allow_insecure_content andJosh Rickmar2012-07-021-0/+64
| | | | | | | | | | allow_insecure_scripts, which, if WebKitWebSettings has the enable-display-of-insecure-content and/or enable-running-of-insecure-content properties, sets those to enable or disable viewing or running of insecure content from secure websites. Make these default to 0 in whitelist mode, and 1 otherwise. * * * Document in manpage.
* Iterate through each tab when enabling/disabling fancy_bar.Josh Rickmar2012-06-281-14/+14
|
* Replace manual file:// insertions and removals with theJosh Rickmar2012-06-281-6/+8
| | | | | | g_filename_to_uri() and g_filename_from_uri() functions. These functions automatically encode/decode the urls or paths, which wasn't being done before.
* Change user_agent to rotate on a connection per tab (instead ofJosh Rickmar2012-06-191-9/+48
| | | | | globally for all connections), and implement http_accept which acts the same way but sets the HTTP Accept header.
* add statusbar_styleMichal Mazurek2012-06-161-0/+61
|
* Add an 'p' option to statusbar_elems to show if the http_proxy isJosh Rickmar2012-06-151-1/+11
| | | | currently enabled or disabled in the statusbar.
* Make the fancy_bar setting dynamic by showing or hiding the gtkJosh Rickmar2012-06-151-1/+34
| | | | buttons and search entry box
* Add a userstyle setting to change the default stylesheet that is usedJosh Rickmar2012-06-151-2/+45
| | | | | | | instead of the low-contrast one. Allow the userstyle and usersyle_global commands to take an optional argument to use a user-specified stylesheet instead of the default. Document in the manpage.
* Implement a warn_cert_changes setting to warn users when the remoteJosh Rickmar2012-06-071-0/+16
| | | | | | | ssl certificate is different from a previously cached certificate to help prevent against MITM attacks. Prompt the user with an action to take (show remote cert, allow for that session, or cache the new remote cert).
* Some tweaks to xombrero's proxy support.vext012012-06-071-0/+2
| | | | | | | | | | | * Display a message when toggling proxy. * Add a 'http_proxy_disabled' config option allowing a proxy to be disabled at xombrero start. * Add a note in the manual that polipo works with xombrero aswell as tsocks. * In the config file, provide examples for polipo and tsocks running on localhost with default ports. OK marco
* Set default char * setting pointers to NULL and g_strdup the defaultJosh Rickmar2012-06-071-20/+35
| | | | | | | | | | | | | | | | | values from static memory, as they will be g_free()'d later if changed at runtime or from parsing the config. "Special" settings (struct special) do not need this as they use their own set functions. This also fixes a bad bug where default_script pointed to "" somewhere in static memory instead of an array of PATH_MAX size. This fixes a crash when compiled with clang where changing this setting would try to write a string possibly as large as PATH_MAX and overwrite other static data. Finally, make ssl_ca_file static to match all the other strings that represent files or directories. Make it a special setting so static memory is never freed. As an added bonus, ssl_ca_file is now tilde expanded.
* This fixes a bunch of things that probably should have gone in my lastJosh Rickmar2012-06-061-5/+8
| | | | | | | | | | | | | | | | | | | | | | | push. Make the set_ssl_ca_file pointer logic not suck. 'M' isn't a valid key modifier, use 'M1' in the manpage. Add a function to escape an html string and use this for displaying settings. Now things like <file> and <uri> are not interpreted as html tags. Kill a system() when running a custom uri script. Tildes are now also expanded instead of being interpreted by the no-longer-being-called system shell. Plug a leak Replace the system() call for external_editor with an execvp and while here, kill a dangerous sprintf. Remove an unused variable
* Fix keybound promptsJosh Rickmar2012-06-011-4/+4
|
* Make all runtime settings unsettable by using the ':set setting ='Josh Rickmar2012-06-011-219/+383
| | | | command. This will reset the value to its default.
* Add a cmd_alias feature to set an alias for a :command, and documentJosh Rickmar2012-06-011-0/+66
| | | | it in the manpage.
* Add a custom_uri setting to check if a URI should be handled by anJosh Rickmar2012-06-011-1/+67
| | | | | external script rather then through xombrero. This makes it possible to use scripts to support things such as mailto URIs. Fixes FS#253
* Modify some example code from thib for better tilde expansion and useJosh Rickmar2012-06-011-23/+4
| | | | it for all the times we need to expand a tilde in a file path.
* Fix the behavior of show_url and fancy_bar so they actually act likeJosh Rickmar2012-06-011-4/+4
| | | | | | the manpage says they do. Setting show_url = 1 and fancy_bar = 0 will now only display the url bar on the toolbar and not draw the buttons and search box.
* Parse keybound commands for if they begin with a ':'. If they do,Josh Rickmar2012-06-011-4/+4
| | | | | | | | | | | | don't try to execute them, but instead open a prompt with that current command. Can be used to create custom prompts, and should fix FS#233. This change also adds the ability to replace strings in keybound prompts. So far the only string replacement is <uri> which is replaced by the current tab's uri. This also kills the old prompt* commands as they only existed so they could be bound to a key. However with the addition of the <uri> substitution, these are no longer necessary. Document these changes in the manpage.
* Add my copyright to the files I've added code toJosh Rickmar2012-05-301-0/+1
|
* Prevent a double freeJosh Rickmar2012-05-211-1/+3
|
* rename xxxterm to xomreroMarco Peereboom2012-05-171-2/+2
|
* Add a setting to read additional config files from any other configJosh Rickmar2012-05-161-3/+16
| | | | file and document it. This fixes FS#238.
* Add a setting to show download notifications via show_oops (default 0)Josh Rickmar2012-05-161-0/+16
| | | | and document it in the manpage.
* Remove encoding as a runtime setting for nowJosh Rickmar2012-05-151-2/+10
|
* Make enable_js_autorun a runtime setting. Missed this one before asJosh Rickmar2012-05-151-1/+15
| | | | it wasn't mentioned in the manpage.
* Rename js_autorun_enabled to enable_js_autorun and document the usage in the ↵Josh Rickmar2012-05-111-2/+2
| | | | manpage
* Make most of the rest of the settings dynamic.Josh Rickmar2012-05-111-46/+577
|
* Make show_url a runtime settingJosh Rickmar2012-05-071-1/+17
|
* Make show_tabs a runtime setting and replace atoi() calls withJosh Rickmar2012-05-071-8/+53
| | | | strtonum() when called on user input.
* Revert "Reorganize global default settings so the comments make sense. No"Josh Rickmar2012-05-071-62/+59
| | | | | | | | This reverts commit 8cf3ed194beb51595cc575c2fd7f8067d35c5dc7. Conflicts: settings.c
* enable_autoscroll is an action, not a setting. The old code wasJosh Rickmar2012-05-071-9/+0
| | | | correct.
* Why are these spaces? Fix with tabsJosh Rickmar2012-05-071-9/+9
|
* Make home a runtime setting.Josh Rickmar2012-05-041-4/+16
|
* Make append_next a runtime setting.Josh Rickmar2012-05-041-3/+12
|
* Make using :set enable_autoscroll = 1 actually work at runtime byJosh Rickmar2012-05-041-2/+11
| | | | | | iterating over each tab and running the autoscroll js. Dynamically Setting it to 0 doesn't work here because the js is still running. Need to find some way to kill it.
* Make marco happy. NULLs now completely fill the struct initializationJosh Rickmar2012-05-041-60/+60
| | | | so as to leave no doubt that values are being uninitialized.