Commit Graph

562 Commits

Author SHA1 Message Date
Quentin Rameau e9ec482049 Replace loadstatuschanged() with loadchanged() 2015-11-20 00:34:20 +01:00
Quentin Rameau bce814b30a 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.
2015-11-20 00:34:20 +01:00
Quentin Rameau 1f99df029c 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).
2015-11-20 00:34:20 +01:00
Quentin Rameau 92d7ba7ed8 Replace geopolicyrequested() with permissionrequested()
The permission-request signal can now ask for than a geolocation
authorisation (though we only handle that for now).
2015-11-20 00:34:20 +01:00
Quentin Rameau 42c6c90366 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.
2015-11-20 00:34:20 +01:00
Quentin Rameau b9530ad5d1 Modify the context name of the hit tests
These relate more to the position of the pointer when an event occurs.
2015-11-20 00:34:20 +01:00
Quentin Rameau 60f574e4b7 Adapted titlechange()
Do not copy title strings, just carry over the const pointer.
2015-11-20 00:34:20 +01:00
Quentin Rameau 0f3e3bf669 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.
2015-11-20 00:34:19 +01:00
Quentin Rameau ad538bb00a 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.
2015-11-20 00:34:19 +01:00
Quentin Rameau 421486db18 Add showview()
Only show the window when and if the view is ready.
Move all the window rendering there.
2015-11-20 00:34:14 +01:00
Quentin Rameau f86977a6fa Separate the rendering engine process
Use one WebKitWebProcess per view instead of one for all views.
More information in the API documentation.
2015-11-20 00:23:59 +01:00
Quentin Rameau b0f35be17b No option to enforce 96DPI anymore on WebKit2 2015-11-20 00:23:59 +01:00
Quentin Rameau 42829cdad0 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…
2015-11-20 00:23:59 +01:00
Quentin Rameau 94f2f2eace SSL policy is now handled through WebKit 2015-11-20 00:23:59 +01:00
Quentin Rameau e39b7e623c Disk cache is now handled through WebKit 2015-11-20 00:23:59 +01:00
Quentin Rameau 7c34b37786 Cookies are now handled through WebKit
Remove all soup cookie handling and use provided interface.
2015-11-20 00:23:54 +01:00
Quentin Rameau 4415c475f7 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.
2015-11-18 14:59:13 +01:00
Quentin Rameau b7cc1ae964 Remove proxy stuff, it's now handled by WebView 2015-11-18 14:59:13 +01:00
Quentin Rameau abcf5f06ed Switch headers to webkit2 2015-11-18 14:59:13 +01:00
Quentin Rameau 566b452b46 Port surf to gtk3 2015-11-17 17:05:05 +01:00
Quentin Rameau 9b1e1873b0 buildfile: don't forget to free temporary string bpath
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-04 16:47:04 +01:00
Quentin Rameau 5333171961 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>
2015-11-03 19:45:50 +01:00
Quentin Rameau 2223e9ed22 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>
2015-11-03 19:45:04 +01:00
Quentin Rameau 1ebb5c624e Fix usage(), -m and -M for styles were absent.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-03 19:44:20 +01:00
Quentin Rameau 9a2547230a 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>
2015-11-03 19:44:05 +01:00
Quentin Rameau 0290066b31 Add setstyle()
Regroup style uri setting application calls under one function.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-31 17:50:06 +01:00
Quentin Rameau d84fe71094 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>
2015-10-31 17:50:03 +01:00
Christoph Lohmann d486169fa4 Style changes in config.def.h. 2015-10-31 17:49:36 +01:00
Quentin Rameau c65c8d422b 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>
2015-10-20 17:52:54 +02:00
Markus Teich 9f5c6ff8d7 style fixes: space after keywords, () with sizeof
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-18 23:01:56 +02:00
Markus Teich c2bb8d0325 whitespace fixes
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-18 23:01:52 +02:00
Markus Teich 6a65dcb394 fix style path generation
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-18 16:34:11 +02:00
Christoph Lohmann c81fbbaf43 Style cleanup. 2015-10-13 21:48:38 +02:00
Quentin Rameau 8a898ec4df 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>
2015-10-13 21:45:14 +02:00
Quentin Rameau 1554354f16 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>
2015-10-13 14:28:09 +02:00
Christoph Lohmann 3c2acda0b7 Remove the pax intermediary.
Compile webkit without jit and you don't need to disable mprotect.
2015-09-08 20:28:11 +02:00
Christoph Lohmann 8e88984a40 Fixing the paxctl check.
Thanks quinq for the tip.
2015-08-19 06:28:31 +02:00
Christoph Lohmann 294142a806 Add PaX support.
Mprotect needs to be turned off for Webkit.
2015-08-18 18:21:34 +02:00
GhostAV 957a6f0812 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>
2015-08-18 17:43:18 +02:00
Quentin Rameau 9b6998e7ae Fix type of strictssl property.
Thanks to Mark Edgar <medgar123@gmail.com> for having spotted this.
2015-07-13 13:31:22 +02:00
Christoph Lohmann b4ca032b8c Removing the debug print from the last commit. 2015-02-10 19:06:56 +01:00
Markus Teich 29c2ab207a allow buttonrelease customization in config.h
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-02-10 19:05:39 +01:00
Greg Reagle f7e358280c 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>
2015-02-03 17:25:26 +01:00
Christoph Lohmann b3a4392923 Some cleanup in style. 2015-02-03 17:17:04 +01:00
Christoph Lohmann b1c5e594d1 Describe the web page indicators too. 2015-01-26 21:47:18 +01:00
Christoph Lohmann e573e094d6 It wasn't really clear what was meant with site indicators in the manpage. 2015-01-26 21:44:54 +01:00
Greg Reagle ee6376ea1e 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>
2015-01-26 21:44:09 +01:00
Markus Teich 90de5cdd15 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>
2015-01-20 17:45:04 +01:00
Christoph Lohmann 344efec3fb Only plumb some URI, when it's ASCII. 2015-01-20 17:38:22 +01:00
Christoph Lohmann d4e31d9472 Oh my blob!
Adding blob: to the URIS handled by the browser.
2015-01-20 01:59:53 +01:00