Quentin Rameau [Fri, 20 Nov 2015 15:19:24 +0000 (16:19 +0100)]
Rename mouse functions to clickFUNCTION()
Quentin Rameau [Fri, 20 Nov 2015 14:48:04 +0000 (15:48 +0100)]
Adapt toggle(), clean some config parameters
Regroup all toggles in an enum and handle them with a unique function
via a switch. That lets us take different actions for each toggle.
Add a frame flatenning and a dns preteching options.
Quentin Rameau [Fri, 20 Nov 2015 00:12:28 +0000 (01:12 +0100)]
Adapt find()
Slightly new behaviour: searching again for the same string (via MOD+/)
resets the search (ie restarts search from document top).
Searching for an empty string stops the search (ie all highlights are
removed).
Quentin Rameau [Fri, 20 Nov 2015 00:03:32 +0000 (01:03 +0100)]
Adapt zoom()
Quentin Rameau [Fri, 20 Nov 2015 00:00:38 +0000 (01:00 +0100)]
Adapt navigate()
Quentin Rameau [Thu, 19 Nov 2015 23:58:14 +0000 (00:58 +0100)]
Remove togglescrollbars()
We do not have access to scrollbars and will have to manipulate DOM to
do that.
Quentin Rameau [Thu, 19 Nov 2015 23:53:14 +0000 (00:53 +0100)]
Adapt scrolling
In fact, we have a scrolling handle ersatz for now using JavaScript
calls as we don't have access anymore to scrollbars.
We'll have to manipulate the DOM directly (later).
Quentin Rameau [Thu, 19 Nov 2015 23:44:29 +0000 (00:44 +0100)]
Adapt inspector handling
The inspector is now easily manageable via API, there's no need for
keeping its state in the Client.
Quentin Rameau [Thu, 19 Nov 2015 23:30:17 +0000 (00:30 +0100)]
Adapt print()
Quentin Rameau [Thu, 19 Nov 2015 23:17:50 +0000 (00:17 +0100)]
Simplify building of stylefiles path
We can directly use style file pointers instead of using temporary
string pointers.
Quentin Rameau [Thu, 19 Nov 2015 23:13:07 +0000 (00:13 +0100)]
Adapt setstyle()
We can't anymore pass a simple path to a stylefile, we have to read the
entire file to create a stylesheet and apply it to the view.
Quentin Rameau [Thu, 19 Nov 2015 23:09:21 +0000 (00:09 +0100)]
Adapt clipboard()
Replace linkhover with target uri and add some comments
Quentin Rameau [Thu, 19 Nov 2015 23:00:59 +0000 (00:00 +0100)]
Rename fullscreen() to togglefullscreen()
And handle c->fullscreen value in winevent(). This way we keep track of
fullscreen state even if we did not directly initiate the fullscreen.
Quentin Rameau [Thu, 19 Nov 2015 22:42:19 +0000 (23:42 +0100)]
Replace titlechangeleave() with catch-all winevent()
All GtkWidget events have the same function prototype with the generic
GdkEvent as parameter. This will let us handle everything in the switch.
Quentin Rameau [Thu, 19 Nov 2015 16:14:29 +0000 (17:14 +0100)]
Adapt JavaScript functions
Removed eval(), evalscript() is now sufficient and can directly execute
passed JavaScript string.
Quentin Rameau [Thu, 19 Nov 2015 15:38:58 +0000 (16:38 +0100)]
Remove windowobjectcleared(), execute scripts on load finished
The “window-object-cleared” signal is not directly accessible for
specific WebViews now. We'll have to use an Extension or rewrite the
JavaScript running functions.
Quentin Rameau [Thu, 19 Nov 2015 13:38:23 +0000 (14:38 +0100)]
Add createwindow() for GtkWindow creation
Move there window creation from showview().
Quentin Rameau [Thu, 19 Nov 2015 13:25:29 +0000 (14:25 +0100)]
Add closeview() for JavaScript window closing
Simply call gtk_widget_destroy() on the window. Then GtkWindow closing
process will take care of the rest.
Quentin Rameau [Thu, 19 Nov 2015 13:15:28 +0000 (14:15 +0100)]
Remove (delete :>) deletion_interface()
Quentin Rameau [Thu, 19 Nov 2015 13:10:28 +0000 (14:10 +0100)]
Integrate beforerequest() into decidepolicy()
Quentin Rameau [Thu, 19 Nov 2015 12:40:35 +0000 (13:40 +0100)]
Remove contextmenu() and menuactivate() for "context-menu" signal
Those were added because “right click menu to copy the link URI will now
work” (would not work) in 2013. It's been a while since that works without
intervention.
Quentin Rameau [Thu, 19 Nov 2015 12:19:27 +0000 (13:19 +0100)]
Adapted buttonrelease()
Use the current hit test (c->mousepos) to determine where the mouse
pointer is.
It is possible to link an action to a click and still propagate the
event after that by setting the “stop event” parameter of a Button to 0.
Quentin Rameau [Wed, 18 Nov 2015 18:05:59 +0000 (19:05 +0100)]
Replace initdownload() and intercept global download requests.
Attach to download requests on WebKitContext, this way we can easily
manage all types of downloads (coming from views or not).
Quentin Rameau [Wed, 18 Nov 2015 17:51:55 +0000 (18:51 +0100)]
Adapted progresschanged()
Quentin Rameau [Wed, 18 Nov 2015 17:44:25 +0000 (18:44 +0100)]
Manage ssl errors with GTlsCertificateFlags
Keep a GTlsCertificateFlags in Client for TLS errors.
If we don't use a ssl connection, set it to a value greater than maximum
error flag value (which is G_TLS_CERTIFICATE_VALIDATE_ALL for all
possible errors).
Quentin Rameau [Wed, 18 Nov 2015 17:39:45 +0000 (18:39 +0100)]
Replace loadstatuschanged() with loadchanged()
Quentin Rameau [Wed, 18 Nov 2015 17:30:28 +0000 (18:30 +0100)]
Replace decidewindow() and decidedownload() with decidepolicy()
Now all the requests are triggered by one signal.
We then handle each type, resource download, navigation, newwindow, in
separate functions.
Quentin Rameau [Wed, 18 Nov 2015 17:16:06 +0000 (18:16 +0100)]
Replace createwindow() with createview()
We can now perform some filtering before opening a new view (window)
when requested by JavaScript (either random or by a click).
Quentin Rameau [Wed, 18 Nov 2015 17:09:55 +0000 (18:09 +0100)]
Replace geopolicyrequested() with permissionrequested()
The permission-request signal can now ask for than a geolocation
authorisation (though we only handle that for now).
Quentin Rameau [Wed, 18 Nov 2015 16:59:50 +0000 (17:59 +0100)]
Replace linkhover() with mousetargetchanged()
The “linkhover” can now be more than a simple link (image, video, etc.).
As we can't anymore perform a hit test when we want, we have to keep the
last known hit test to be able to know where the mouse is on the next
click event.
Quentin Rameau [Wed, 18 Nov 2015 16:53:33 +0000 (17:53 +0100)]
Modify the context name of the hit tests
These relate more to the position of the pointer when an event occurs.
Quentin Rameau [Wed, 18 Nov 2015 16:42:51 +0000 (17:42 +0100)]
Adapted titlechange()
Do not copy title strings, just carry over the const pointer.
Quentin Rameau [Wed, 18 Nov 2015 16:17:49 +0000 (17:17 +0100)]
Move all necessary initialisation to newview()
Most all the settings and callbacks are set before view creation.
Create a related view (with inherited settings) if asked to.
Quentin Rameau [Wed, 18 Nov 2015 15:53:37 +0000 (16:53 +0100)]
Add newview() and forward related views
View creation is now done in a separate function.
That helps identifying the workflow and let us easily carry related
view (client) when asked by the WebKit for a new one.
Quentin Rameau [Wed, 18 Nov 2015 15:13:27 +0000 (16:13 +0100)]
Add showview()
Only show the window when and if the view is ready.
Move all the window rendering there.
Quentin Rameau [Wed, 18 Nov 2015 15:08:55 +0000 (16:08 +0100)]
Separate the rendering engine process
Use one WebKitWebProcess per view instead of one for all views.
More information in the API documentation.
Quentin Rameau [Wed, 18 Nov 2015 14:29:04 +0000 (15:29 +0100)]
No option to enforce 96DPI anymore on WebKit2
Quentin Rameau [Wed, 18 Nov 2015 14:23:42 +0000 (15:23 +0100)]
Scrolling is now handled through WebKit
We don't have access anymore to the scrolling process and have to rely
entirely on WebKit.
We could be able to manage scrolling and bars directly by manipulating
the DOM via a WebKitExtension. To be continued…
Quentin Rameau [Wed, 18 Nov 2015 14:14:28 +0000 (15:14 +0100)]
SSL policy is now handled through WebKit
Quentin Rameau [Wed, 18 Nov 2015 14:10:42 +0000 (15:10 +0100)]
Disk cache is now handled through WebKit
Quentin Rameau [Wed, 18 Nov 2015 13:48:49 +0000 (14:48 +0100)]
Cookies are now handled through WebKit
Remove all soup cookie handling and use provided interface.
Quentin Rameau [Wed, 18 Nov 2015 13:31:14 +0000 (14:31 +0100)]
Remove source(), it has been removed from webkit2gtk
WebKit2GTK doesn't provide a direct way to view source anymore, we'll
have to do that ourselves with a GtkSourceView if we still need that.
Quentin Rameau [Wed, 18 Nov 2015 13:27:58 +0000 (14:27 +0100)]
Remove proxy stuff, it's now handled by WebView
Quentin Rameau [Wed, 18 Nov 2015 13:43:04 +0000 (14:43 +0100)]
Switch headers to webkit2
Quentin Rameau [Mon, 11 May 2015 10:48:40 +0000 (12:48 +0200)]
Port surf to gtk3
Quentin Rameau [Wed, 4 Nov 2015 14:42:42 +0000 (15:42 +0100)]
buildfile: don't forget to free temporary string bpath
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Tue, 3 Nov 2015 15:50:21 +0000 (16:50 +0100)]
Be more specific about what enablestyles parameter does.
The enablestyles configuration variable and parameter flag manages the
global application of styles, not just the site-specific styles.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Tue, 3 Nov 2015 14:42:30 +0000 (15:42 +0100)]
Fix inspector handling when inspector is disabled.
Do not try to show the inspector window when the inspector is disabled.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Tue, 3 Nov 2015 14:39:29 +0000 (15:39 +0100)]
Fix usage(), -m and -M for styles were absent.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Tue, 3 Nov 2015 13:25:44 +0000 (14:25 +0100)]
Fix fullscreen handling
Handle the fullscreen in a more consistent way with other options:
-f disables fullscreen while -F enables fullscreen.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Sat, 31 Oct 2015 11:34:57 +0000 (12:34 +0100)]
Add setstyle()
Regroup style uri setting application calls under one function.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Sat, 31 Oct 2015 11:34:31 +0000 (12:34 +0100)]
Fix style files handling: stop leaking strings.
Everytime getstyle() was being called, we returned newly allocated
strings without ever freing them.
Now uri stylefiles only get allocated once at setup().
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Christoph Lohmann [Sat, 31 Oct 2015 16:49:36 +0000 (17:49 +0100)]
Style changes in config.def.h.
Quentin Rameau [Tue, 20 Oct 2015 13:04:52 +0000 (15:04 +0200)]
Continue style fixing: function declarations, code alignement
Here are the changes we discussed on the mailing-list.
Alignement is pushed to the first parameter of the function, which seems
to be what people agrees on.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Markus Teich [Sun, 18 Oct 2015 20:52:16 +0000 (22:52 +0200)]
style fixes: space after keywords, () with sizeof
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Markus Teich [Sun, 18 Oct 2015 20:52:15 +0000 (22:52 +0200)]
whitespace fixes
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Markus Teich [Sun, 18 Oct 2015 14:10:38 +0000 (16:10 +0200)]
fix style path generation
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Christoph Lohmann [Tue, 13 Oct 2015 19:48:38 +0000 (21:48 +0200)]
Style cleanup.
Quentin Rameau [Tue, 13 Oct 2015 19:39:01 +0000 (21:39 +0200)]
Fix the way system files are handled at surf startup.
1. Do not chmod existing directories.
2. Fix the handling of tilde expansion in paths, don't expand ~foo to
$HOME/foo but to foo's home directory.
3. Separate the creation of files and directories. We don't have to
worry anymore about pathnames having to end with a '/' to be correctly
handled.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Tue, 13 Oct 2015 11:32:09 +0000 (13:32 +0200)]
Fix atom value parsing in SETPROP
xprop(1) encloses the returned atom string value in double quotes while
it doesn't when the value is unset. Original simple parsing would fail
and parse the atom name instead of getting an empty value.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Christoph Lohmann [Tue, 8 Sep 2015 18:28:11 +0000 (20:28 +0200)]
Remove the pax intermediary.
Compile webkit without jit and you don't need to disable mprotect.
Christoph Lohmann [Wed, 19 Aug 2015 04:28:31 +0000 (06:28 +0200)]
Fixing the paxctl check.
Thanks quinq for the tip.
Christoph Lohmann [Tue, 18 Aug 2015 16:21:34 +0000 (18:21 +0200)]
Add PaX support.
Mprotect needs to be turned off for Webkit.
GhostAV [Tue, 18 Aug 2015 10:46:34 +0000 (12:46 +0200)]
Torified surf is unstable
On Tue, Aug 18, 2015 at 12:38:40PM +0200, Gabriel Pérez-Cerezo wrote:
> It really seems to be a problem with torsocks. I have already solved
> this problem with a patch GhostAV just sent me on this list that adds
> SOCKS support to surf. It works fine now.
As i failed to send the patch to the list, i resend it now:
-- >8 --
From: Jonas Rabenstein <jonas.rabenstein@studium.uni-erlangen.de>
Subject: [PATCH] allow sock proxies
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Mon, 13 Jul 2015 11:31:22 +0000 (13:31 +0200)]
Fix type of strictssl property.
Thanks to Mark Edgar <medgar123@gmail.com> for having spotted this.
Christoph Lohmann [Tue, 10 Feb 2015 18:06:56 +0000 (19:06 +0100)]
Removing the debug print from the last commit.
Markus Teich [Wed, 28 Jan 2015 20:01:55 +0000 (21:01 +0100)]
allow buttonrelease customization in config.h
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Greg Reagle [Tue, 27 Jan 2015 18:26:26 +0000 (13:26 -0500)]
surf: see hover URL without changing title
On Tue, Jan 27, 2015, at 11:52 AM, Christoph Lohmann wrote:
> Then hook to the window leaving event in GTK or X11 and set the title to
> your needs. I will welcome a patch.
Patch is attached. I am a total novice in GTK programming, so I don't
know what type the callback function is supposed to be (hence the void
pointers) or whether I registered it properly. But it does work well
for me.
--
http://www.fastmail.com - Access your email from home and the web
From
a33f06da092bf920b6a286ea7688b32944d79a50 Mon Sep 17 00:00:00 2001
From: Greg Reagle <greg.reagle@umbc.edu>
Date: Tue, 27 Jan 2015 13:22:15 -0500
Subject: [PATCH] ensure that window title is web page title (not hover link)
when leaving window
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Christoph Lohmann [Tue, 3 Feb 2015 16:17:04 +0000 (17:17 +0100)]
Some cleanup in style.
Christoph Lohmann [Mon, 26 Jan 2015 20:47:18 +0000 (21:47 +0100)]
Describe the web page indicators too.
Christoph Lohmann [Mon, 26 Jan 2015 20:44:54 +0000 (21:44 +0100)]
It wasn't really clear what was meant with site indicators in the manpage.
Greg Reagle [Mon, 26 Jan 2015 19:31:26 +0000 (14:31 -0500)]
surf: documented indicators in man page
Patch attached.
--
http://www.fastmail.com - The professional email service
From
4a64624fee94c16c093d2b192389bad9bd6675d8 Mon Sep 17 00:00:00 2001
From: Greg Reagle <greg.reagle@umbc.edu>
Date: Mon, 26 Jan 2015 14:29:05 -0500
Subject: [PATCH] Documented indicators
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Markus Teich [Tue, 20 Jan 2015 15:13:31 +0000 (16:13 +0100)]
fix stylesheet interna.
* no more segfault when running `surf -m`
* allow to enable custom styles after `surf -m` with mod+shift+m
* use enablestyles instead of the webkit-setting, which clears things up a bit
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Christoph Lohmann [Tue, 20 Jan 2015 16:38:22 +0000 (17:38 +0100)]
Only plumb some URI, when it's ASCII.
Christoph Lohmann [Tue, 20 Jan 2015 00:59:53 +0000 (01:59 +0100)]
Oh my blob!
Adding blob: to the URIS handled by the browser.
Christoph Lohmann [Mon, 19 Jan 2015 21:51:29 +0000 (22:51 +0100)]
Data: is part of the browser too.
Christoph Lohmann [Mon, 19 Jan 2015 21:43:42 +0000 (22:43 +0100)]
file:// should be handled in surf too.
Christoph Lohmann [Mon, 19 Jan 2015 21:31:31 +0000 (22:31 +0100)]
Remove the debugging from the testing.
Christoph Lohmann [Mon, 19 Jan 2015 21:16:07 +0000 (22:16 +0100)]
Add some description for the plumb feature.
Christoph Lohmann [Mon, 19 Jan 2015 21:15:18 +0000 (22:15 +0100)]
Add plumbing functionality.
Christoph Lohmann [Sun, 18 Jan 2015 13:41:20 +0000 (14:41 +0100)]
Add a comment about how the styles are iterated.
Thanks quing for noticing.
Christoph Lohmann [Sun, 18 Jan 2015 10:44:39 +0000 (11:44 +0100)]
My CMD was too short. :O
Thanks Carlos Torres for mentioning this.
Christoph Lohmann [Sat, 17 Jan 2015 19:52:16 +0000 (20:52 +0100)]
Add the manpage changes for the disk cache support.
Christoph Lohmann [Sat, 17 Jan 2015 19:50:21 +0000 (20:50 +0100)]
Adding disk cache support for soup.
This is a merge of the patch of Ben Woolley <tautolog@gmail.com>
Ben Woolley [Wed, 7 Jan 2015 23:41:07 +0000 (15:41 -0800)]
Fix extra newline, and add -g where other switches are forwarded.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Christoph Lohmann [Sat, 17 Jan 2015 06:21:15 +0000 (07:21 +0100)]
Newer libc want _DEFAULT_SOURCE.
Christoph Lohmann [Sat, 17 Jan 2015 06:19:48 +0000 (07:19 +0100)]
Major styles update.
In config.h there is now some styles array to apply site-specific styles.
This can be toggled using the -mM flags. If a stylefile is manually specified,
then this will overwrite everything.
Jakukyo Friel [Fri, 2 Jan 2015 11:52:29 +0000 (19:52 +0800)]
Fix a typo in surf manual.
`Ctrl-/` displays incorrectly in `man surf` on my machine.
A patch is attached.
(You also access it here:
https://github.com/weakish/surf/commit/
07e97eccedd96eabf14b2fbf77de75ec1b594d97)
----
surf.1 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Christoph Lohmann [Sun, 28 Sep 2014 06:03:42 +0000 (08:03 +0200)]
Minor style change.
Christoph Lohmann [Sun, 28 Sep 2014 06:02:48 +0000 (08:02 +0200)]
Make »Copy image address« work.
Thanks yui@blekksprut.net for the patch!
Christoph Lohmann [Thu, 7 Aug 2014 15:35:27 +0000 (17:35 +0200)]
Mention xdotool in SEE ALSO too.
Christoph Lohmann [Thu, 7 Aug 2014 15:34:43 +0000 (17:34 +0200)]
Fix the manpage about xid.
Something was missing from this one sentence. Now it is complete.
Christoph Lohmann [Mon, 4 Aug 2014 15:54:00 +0000 (17:54 +0200)]
Add a FAQ to surf.
Christoph Lohmann [Sat, 17 May 2014 17:24:25 +0000 (19:24 +0200)]
Add information about the dmenu requirement.
Thanks <surfsup@inbox.lv>!
Markus Teich [Tue, 25 Feb 2014 15:36:05 +0000 (16:36 +0100)]
fix some indentation in config.def.h
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Christoph Lohmann [Sun, 16 Feb 2014 16:17:15 +0000 (17:17 +0100)]
Enable resizable text areas.
Quentin Rameau [Fri, 7 Feb 2014 01:17:43 +0000 (02:17 +0100)]
deprecating signal “populate-popup” for “context-menu”
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Sat, 8 Feb 2014 11:39:37 +0000 (12:39 +0100)]
Prevent title from being empty when following an anchor
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Quentin Rameau [Thu, 6 Feb 2014 17:54:38 +0000 (18:54 +0100)]
deprecating signal “title-changed” for “notify::title”
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Christoph Lohmann [Thu, 6 Feb 2014 15:49:26 +0000 (16:49 +0100)]
The check for NULL is not necessary before free.