Quentin Rameau [Thu, 11 May 2017 22:28:24 +0000 (00:28 +0200)]
Fix synchronization issue with atoms
Be sure to sync after setting an atom.
Sync too before reading one.
Quentin Rameau [Thu, 11 May 2017 22:03:57 +0000 (00:03 +0200)]
There's no need to call geturi() again in loadchanged
Also call the variable “uri” instead of “title” which was ambiguous
regarding what it is.
Quentin Rameau [Thu, 11 May 2017 13:33:42 +0000 (15:33 +0200)]
Add config option for smooth scrolling activation
Quentin Rameau [Thu, 11 May 2017 13:27:27 +0000 (15:27 +0200)]
Add config option for Java activation
Quentin Rameau [Thu, 11 May 2017 13:23:22 +0000 (15:23 +0200)]
Add config option for setting default charset.
This will be used for pages with no specified charset.
Quentin Rameau [Tue, 9 May 2017 12:45:24 +0000 (14:45 +0200)]
Improve parameters handling
There's no need to reload all parameters each time a new url is loaded,
instead set only custom parameters and restore those to defaults when
needed.
ssd [Wed, 10 May 2017 22:55:29 +0000 (00:55 +0200)]
Change PROMPT_GO from "URL:" to "Go:"
This looks more apropriate because URL is too specific and _SURF_GO can
be set to other things.
Quentin Rameau [Mon, 8 May 2017 09:22:34 +0000 (11:22 +0200)]
Add prompts for SETPROP
Imported from __20h__ repo, thanks to him and Ben Woolley.
Quentin Rameau [Mon, 8 May 2017 08:20:28 +0000 (10:20 +0200)]
Embed dmenu into the surf window by default
Quentin Rameau [Thu, 4 May 2017 16:24:33 +0000 (18:24 +0200)]
Simplify DOWNLOAD macro
No need to spawn an extra sh.
Use short flags for curl and quote operands.
Replace sleep with read, let the user close the download window instead
of waiting for an arbitrary time.
Rename d to reflect what it's used for.
Reorder sh positional arguments.
Set $0 to a command name and shift other positional parameters to
clarify the "sh -c" command.
Quentin Rameau [Thu, 4 May 2017 14:49:17 +0000 (16:49 +0200)]
Simplify SETPROP macro
Get rid of xargs by using a subshell instead.
Use two replacement commands in sed because back-references in BRE are
too differently implemented in different libc.
Rename p, q, to reflect what they're used for.
Reorder sh positional arguments.
Set $0 to a command name and shift other positional parameters to
clarify the "sh -c" command.
Quentin Rameau [Thu, 4 May 2017 08:22:29 +0000 (10:22 +0200)]
Simplify usage()
There's no real need for using the real executable call name, especially
with basename requiring special care.
Quentin Rameau [Tue, 2 May 2017 16:53:01 +0000 (18:53 +0200)]
Simplify version message
Ivan Tham [Tue, 2 May 2017 15:10:32 +0000 (23:10 +0800)]
Use Ctrl-t for showcert instead of Ctrl-x
Quentin Rameau [Sun, 30 Apr 2017 23:09:52 +0000 (01:09 +0200)]
Cleanup and fix formatage issues in surf.1
Quentin Rameau [Sun, 30 Apr 2017 23:08:27 +0000 (01:08 +0200)]
Fix forgotten options in surf.1
Hiltjo Posthuma [Sat, 29 Apr 2017 20:16:03 +0000 (22:16 +0200)]
setcert: check uri before adding a certificate
Also directly check for https scheme, we won't need a certificate for
others.
Hiltjo Posthuma [Sat, 29 Apr 2017 20:07:08 +0000 (22:07 +0200)]
fix mini typo
Hiltjo Posthuma [Sat, 29 Apr 2017 20:06:43 +0000 (22:06 +0200)]
surf.1: remove trailing spaces
Quentin Rameau [Sat, 29 Apr 2017 15:55:23 +0000 (17:55 +0200)]
Add forgotten tT indicator description in surf.1
Quentin Rameau [Sat, 29 Apr 2017 15:47:06 +0000 (17:47 +0200)]
Add forgotten fF indicator description in surf.1
Quentin Rameau [Sat, 29 Apr 2017 15:21:12 +0000 (17:21 +0200)]
Add a flag for custom certificates
I don't think a keybinding would be useful here because we can't
remove a custom certificate which is alread set anyway.
I'll add it if somebody convince me of it's usefulness.
Quentin Rameau [Sat, 29 Apr 2017 15:23:37 +0000 (17:23 +0200)]
Move xid printing option from -x to -w
Quentin Rameau [Sat, 29 Apr 2017 12:56:02 +0000 (14:56 +0200)]
Add a keybinding to show current TLS certificate
Quentin Rameau [Sat, 29 Apr 2017 12:49:04 +0000 (14:49 +0200)]
Display an error message and certificate on tls error
Quentin Rameau [Sat, 29 Apr 2017 13:21:49 +0000 (15:21 +0200)]
Arrange Makefile
Let the user specify his own C and LD FLAGS.
Remove unuseful and non portable CFLAGS like pendantic and Wall.
Quentin Rameau [Sat, 29 Apr 2017 12:34:02 +0000 (14:34 +0200)]
Free temporary certificate in setcert
Quentin Rameau [Fri, 28 Apr 2017 11:09:39 +0000 (13:09 +0200)]
Do not build SiteSpecific file when regex is invalid
Quentin Rameau [Fri, 28 Apr 2017 10:58:36 +0000 (12:58 +0200)]
Add support for using custom certificates per url
Quentin Rameau [Thu, 27 Apr 2017 13:41:16 +0000 (15:41 +0200)]
Avoid using global name stylefile in setstyle()
Quentin Rameau [Thu, 27 Apr 2017 13:01:54 +0000 (15:01 +0200)]
Change site styles structure for a more generic one
Quentin Rameau [Sun, 23 Apr 2017 16:18:23 +0000 (18:18 +0200)]
Fix
27cec48 Add a flag/keybinding for strict TLS
Forgot to add changes in main(), usage() and newwindow() too.
Quentin Rameau [Sun, 23 Apr 2017 16:11:54 +0000 (18:11 +0200)]
Fix
a981959 Move -t stylefile flag to -C stylefile
Forgot to modify usage() and newwindow() too.
Quentin Rameau [Sun, 23 Apr 2017 16:25:40 +0000 (18:25 +0200)]
Fix possible oob access of cmd in newwindow()
Thanks to tarug0 for spotting this!
Quentin Rameau [Wed, 19 Apr 2017 18:56:01 +0000 (20:56 +0200)]
Bump year in program
Quentin Rameau [Wed, 19 Apr 2017 16:35:16 +0000 (18:35 +0200)]
Add a flag and toggle keybinding for strict TLS
Quentin Rameau [Wed, 19 Apr 2017 16:14:56 +0000 (18:14 +0200)]
Move -t stylefile flag to -C stylefile
Quentin Rameau [Wed, 19 Apr 2017 15:45:20 +0000 (17:45 +0200)]
Rename SSL instances to TLS
Quentin Rameau [Fri, 8 Jul 2016 16:27:07 +0000 (18:27 +0200)]
Set strict ssl by default and handle insecure content
Non-https content in https pages is now handled separately from https
connection establishment.
Quentin Rameau [Wed, 19 Apr 2017 14:05:39 +0000 (16:05 +0200)]
Add a configure option for default window size
Quentin Rameau [Tue, 28 Mar 2017 16:17:45 +0000 (18:17 +0200)]
Bump version to 2.0
We're using the new scheme: 2.x is for webkit2
Quentin Rameau [Tue, 28 Mar 2017 16:13:50 +0000 (18:13 +0200)]
Add contributors to the LICENSE
Quentin Rameau [Sun, 12 Feb 2017 17:50:31 +0000 (18:50 +0100)]
Install Atoms before initializing gtk
There a race condition in gtkplug/socket which is raised when setting
Atoms.
Use this workaround until
https://bugzilla.gnome.org/show_bug.cgi?id=778680 is fixed.
Michael Stevens [Tue, 8 Dec 2015 11:12:14 +0000 (11:12 +0000)]
Fix spelling of otherwise in surf.1
Add more spelling to surf.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Mon, 6 Mar 2017 10:00:04 +0000 (11:00 +0100)]
Fix font-size setting parameter value type in newview
Quentin Rameau [Mon, 23 Nov 2015 21:12:00 +0000 (22:12 +0100)]
Add support for loading Webkit extensions
Charles Lehner [Sat, 9 Jan 2016 19:18:53 +0000 (14:18 -0500)]
Reload on SIGHUP
ratiueratuie rstiure tiurest aruite rautie rautier tiue rtaruit ratiuera
This patch makes surf reload its pages when it receives a SIGHUP signal.
This makes it easier for shell scripts to trigger surf to reload.
I'm aware of using xdotool to trigger ctrl+r keypresses for reloading
but I wasn't able to get that to work in a general way. [1]
I'm sending this here in case surf maintainers and users would like to
include this in core - if not I will submit it to the wiki.
Regards,
Charles
[1] http://surf.suckless.org/files/autorefresh
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Tue, 5 Jul 2016 15:26:54 +0000 (17:26 +0200)]
Add a few configuration options
“enable-accelerated-2d-canvas”
“media-playback-requires-user-gesture”
“enable-site-specific-quirks”
Lookup those at
https://webkitgtk.org/reference/webkit2gtk/stable/WebKitSettings.html
Quentin Rameau [Tue, 5 Jul 2016 11:35:44 +0000 (13:35 +0200)]
Fix GdkDisplay assignment in setup()
Init GTK before trying to get the default display.
Quentin Rameau [Tue, 5 Jul 2016 10:33:23 +0000 (12:33 +0200)]
Get rid of getkbdevice
The GTK guys nicely took in account our request and pushed in a
convenience function to get default keyboard device.
Christoph Lohmann [Fri, 3 Jun 2016 13:14:53 +0000 (15:14 +0200)]
Fixing the last patch to the surf style.
Dmitry Bogatov [Sun, 29 May 2016 09:56:51 +0000 (11:56 +0200)]
Check $HOME and home dir of $USER before getpwuid()->pw_dir
getpwnam(3) recommends to use $HOME instead of getpwuid()->pw_dir,
as it allows users to point programs to a different path.
Using getpwuid() also breaks namespaces-related use cases,
like `unshare -r`.
Patch was submitted by Dmitry Bogatov on the Debian bug tracker:
https://bugs.debian.org/825397
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Sat, 16 Apr 2016 04:19:13 +0000 (06:19 +0200)]
Fix url parsing in load()
Quentin Rameau [Thu, 3 Mar 2016 15:51:24 +0000 (16:51 +0100)]
Apply domain parameters each time url is changed
Urls are only changed at load (initial requested one), or while
redirected. When the page is committed, url is already final.
Quentin Rameau [Sat, 9 Jan 2016 12:42:50 +0000 (13:42 +0100)]
Fix inspector toggling
Always get the inspector object, and let the user eventually close it
even if it's disabled for the current page.
Quentin Rameau [Sat, 9 Jan 2016 11:57:39 +0000 (12:57 +0100)]
Rectify how parameters are handled in setparameter()
Access parameters through given Arg parameter instead of accessing
global parameters.
Quentin Rameau [Sun, 29 Nov 2015 23:39:52 +0000 (00:39 +0100)]
Fix parameter initialization and assignment
Quentin Rameau [Sun, 29 Nov 2015 16:42:42 +0000 (17:42 +0100)]
Adapting the whole surf structure to new settings
Quentin Rameau [Sun, 29 Nov 2015 16:22:15 +0000 (17:22 +0100)]
Adapt default parameters to new config style
Quentin Rameau [Sun, 29 Nov 2015 16:16:48 +0000 (17:16 +0100)]
Introduce new data structure for handling settings
Dmitrij D. Czarkoff [Sun, 6 Mar 2016 00:14:52 +0000 (01:14 +0100)]
Disable globbing in curl command
Curl is invoked for downloading particular files. Without "-g" flag it would
apply globbing rules to URLs, which may end badly in case URL is not properly
quoted.
Quentin Rameau [Wed, 2 Mar 2016 13:29:21 +0000 (14:29 +0100)]
Get rid of JavaScript for scrolling in views
This is still a hack, until WebKitGTK gives us a more practical and
stable way to do that. Manipulating directly the DOM inside a
webextension is a pain and only usable with unstable API atm.
Quentin Rameau [Sun, 29 Nov 2015 23:45:18 +0000 (00:45 +0100)]
Modify linking parameter
Christoph Lohmann [Mon, 22 Feb 2016 05:47:46 +0000 (06:47 +0100)]
Import the arg.h from st which fixed the oob bug.
Quentin Rameau [Tue, 1 Dec 2015 11:31:42 +0000 (12:31 +0100)]
Fix title handling
Don't forget to always set the title to the current uri, this way it's
up to date when there is no title on the page (ie for local file
exploration).
Thanks to pickfire for reporting the issue.
Quentin Rameau [Tue, 24 Nov 2015 22:18:06 +0000 (23:18 +0100)]
Fix clickexternplayer(), no need to test the target again
Quentin Rameau [Mon, 23 Nov 2015 21:13:32 +0000 (22:13 +0100)]
Fix user agent command-line parameter
Thanks to yui for seeing that!
Quentin Rameau [Sun, 22 Nov 2015 18:13:48 +0000 (19:13 +0100)]
Add webkit language settings
You can now set your prefered website languages in order.
It is also possible to enable spell checking in the same way.
Quentin Rameau [Sun, 22 Nov 2015 16:44:40 +0000 (17:44 +0100)]
Fix key handling
I had forgotten to compare configured key values against lowered pressed
key values.
Integrated keypress() into winevent().
Quentin Rameau [Sun, 22 Nov 2015 15:45:22 +0000 (16:45 +0100)]
Fix target uri handling when leaving window
Introduce a new string pointer overtitle in Client to be able to keep
the targeturi intact while modifying the former for overriding or not
the window title.
Connect to GDK_ENTER_NOTIFY to restore overtitle when refocusing on
window.
Quentin Rameau [Sun, 22 Nov 2015 14:31:15 +0000 (15:31 +0100)]
Adapt togglestyle()
We can't apply an empty stylesheet anymore, instead remove any previous
stylesheet.
Quentin Rameau [Sun, 22 Nov 2015 14:19:10 +0000 (15:19 +0100)]
Modify decideresource() and favicon handling
Return as soon as the request has been processed.
No need to modify the favicon uri, just ignore it.
Quentin Rameau [Sun, 22 Nov 2015 12:51:05 +0000 (13:51 +0100)]
Style change in newview(), sort signals order
Quentin Rameau [Sun, 22 Nov 2015 12:44:31 +0000 (13:44 +0100)]
Fix error handling in spawn()
Be more specific about process name and exit with an error.
Quentin Rameau [Sun, 22 Nov 2015 12:33:28 +0000 (13:33 +0100)]
Modify default handling of cookiepolicy functions
It's more obvious this way that the default is to always accept cookies
and not the other way around.
Quentin Rameau [Sun, 22 Nov 2015 12:24:24 +0000 (13:24 +0100)]
Simplify handling of c->title
Quentin Rameau [Sun, 22 Nov 2015 12:15:39 +0000 (13:15 +0100)]
Fix pasteuri()
The uri check had been inverted.
Quentin Rameau [Sun, 22 Nov 2015 11:22:23 +0000 (12:22 +0100)]
Style fix in sigchld()
Quentin Rameau [Sun, 22 Nov 2015 11:17:05 +0000 (12:17 +0100)]
Replace use of EXIT_* constants to 0 and 1
Quentin Rameau [Sun, 22 Nov 2015 10:53:19 +0000 (11:53 +0100)]
Fix WM_CLASS and WM_WINDOW_ROLE properties
Instead of forcing class and instance names, which is what GTK does by
default anyway, allow the user to set the instance name, but keep the
general class as “Surf”.
Is we won't support a “-name” parameter and don't implement a parsing of
RESOURCE_NAME env variable, let's fallback on the third behaviour, use
the name of the calling executable.
That would let the user do things like 'ln -s ./surf ./surf-other;
./surf-other' and set different parameters for the two instances (in dwm
for example).
Try to generate a unique WM_WINDOW_ROLE (within the surf process)
composed of “Surf” and the view ID.
Quentin Rameau [Sun, 22 Nov 2015 02:00:03 +0000 (03:00 +0100)]
Remove window hints settings
Setting minimum size to 1x1 is not necessary as this is the default.
Quentin Rameau [Sun, 22 Nov 2015 01:25:07 +0000 (02:25 +0100)]
Style indentation fix
Quentin Rameau [Sun, 22 Nov 2015 01:22:38 +0000 (02:22 +0100)]
Continue making chars const
Quentin Rameau [Sun, 22 Nov 2015 01:10:18 +0000 (02:10 +0100)]
Correct and simplify buttonreleased() gdk event
The passed event is a GdkEvent (or GdkEventButton), but not a
GdkEventKey.
Access the struct directly.
Quentin Rameau [Sun, 22 Nov 2015 01:03:26 +0000 (02:03 +0100)]
Un(g)boolify to separate GTK dependant code from the rest
Quentin Rameau [Sun, 22 Nov 2015 00:52:13 +0000 (01:52 +0100)]
Use char instead of gchar and make them const when possible
Quentin Rameau [Sun, 22 Nov 2015 00:42:34 +0000 (01:42 +0100)]
Style update for indentation
Quentin Rameau [Sat, 21 Nov 2015 18:53:29 +0000 (19:53 +0100)]
Add mouse function to play medias in external player
Control + left click launches mpv with the target media url.
Quentin Rameau [Sat, 21 Nov 2015 18:24:19 +0000 (19:24 +0100)]
Update credits
Quentin Rameau [Sat, 21 Nov 2015 18:22:11 +0000 (19:22 +0100)]
Style change in includes order
Quentin Rameau [Sat, 21 Nov 2015 18:14:08 +0000 (19:14 +0100)]
Style change in functions ordering
Try to group and order functions in a logical manner.
Same thing for config keybindings.
Quentin Rameau [Fri, 20 Nov 2015 16:42:25 +0000 (17:42 +0100)]
Cleanup remaining unused variables and copystr()
Quentin Rameau [Fri, 20 Nov 2015 16:39:45 +0000 (17:39 +0100)]
Adapt newwindow()
Reorder cmdline options alphabetically and try to keep settings as they
have been toggled in this surf client.
Quentin Rameau [Fri, 20 Nov 2015 16:12:00 +0000 (17:12 +0100)]
Adapt user agent handling
Now we can only append Surf version to the default WebKit user agent
instead of setting the whole string (while this remains possible to do).
Quentin Rameau [Fri, 20 Nov 2015 15:59:15 +0000 (16:59 +0100)]
Adapt updatetitle()
Now always show loading progress, still print mouse over link uri before
page uri. Process simplyfied because we use const strings.
Quentin Rameau [Fri, 20 Nov 2015 15:53:52 +0000 (16:53 +0100)]
Adapt toggle statistics
Rename *togglestat to plural *togglestats, add frame flatenning
indicator, resize array in consequence.
Use a static index instead of a dynamic one as we always use all values
anyway.
Quentin Rameau [Fri, 20 Nov 2015 15:48:18 +0000 (16:48 +0100)]
Adapt page statistics
Rename *pagestat to plural *pagestats, and resize array to reflect
missing proxy parameter.
Quentin Rameau [Fri, 20 Nov 2015 15:39:53 +0000 (16:39 +0100)]
Adapt loaduri()
Better handling of different URIs. Filter out “about:” scheme, dont
touch URI if it contains a complete scheme (we assume "://", denotes
one), else test if given path is an actual reachable file on the
filesystem, else prepend arbitrary http:// scheme.
Quentin Rameau [Fri, 20 Nov 2015 15:35:13 +0000 (16:35 +0100)]
Adapt config MACROs SETPROP, DOWNLOAD, PLUMB
As we now use directly const strings from WebKitGTK, “constify” arg void
pointer.
Quentin Rameau [Fri, 20 Nov 2015 15:19:24 +0000 (16:19 +0100)]
Rename mouse functions to clickFUNCTION()