summaryrefslogtreecommitdiff
path: root/surf.c
Commit message (Collapse)AuthorAge
* Correct and simplify buttonreleased() gdk eventQuentin Rameau2015-11-22
| | | | | | The passed event is a GdkEvent (or GdkEventButton), but not a GdkEventKey. Access the struct directly.
* Un(g)boolify to separate GTK dependant code from the restQuentin Rameau2015-11-22
|
* Use char instead of gchar and make them const when possibleQuentin Rameau2015-11-22
|
* Style update for indentationQuentin Rameau2015-11-22
|
* Add mouse function to play medias in external playerQuentin Rameau2015-11-21
| | | | Control + left click launches mpv with the target media url.
* Style change in includes orderQuentin Rameau2015-11-21
|
* Style change in functions orderingQuentin Rameau2015-11-21
| | | | | Try to group and order functions in a logical manner. Same thing for config keybindings.
* Cleanup remaining unused variables and copystr()Quentin Rameau2015-11-20
|
* Adapt newwindow()Quentin Rameau2015-11-20
| | | | | Reorder cmdline options alphabetically and try to keep settings as they have been toggled in this surf client.
* Adapt user agent handlingQuentin Rameau2015-11-20
| | | | | 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).
* Adapt updatetitle()Quentin Rameau2015-11-20
| | | | | Now always show loading progress, still print mouse over link uri before page uri. Process simplyfied because we use const strings.
* Adapt toggle statisticsQuentin Rameau2015-11-20
| | | | | | | 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.
* Adapt page statisticsQuentin Rameau2015-11-20
| | | | | Rename *pagestat to plural *pagestats, and resize array to reflect missing proxy parameter.
* Adapt loaduri()Quentin Rameau2015-11-20
| | | | | | | 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.
* Rename mouse functions to clickFUNCTION()Quentin Rameau2015-11-20
|
* Adapt toggle(), clean some config parametersQuentin Rameau2015-11-20
| | | | | | 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.
* Adapt find()Quentin Rameau2015-11-20
| | | | | | | 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).
* Adapt zoom()Quentin Rameau2015-11-20
|
* Adapt navigate()Quentin Rameau2015-11-20
|
* Remove togglescrollbars()Quentin Rameau2015-11-20
| | | | | We do not have access to scrollbars and will have to manipulate DOM to do that.
* Adapt scrollingQuentin Rameau2015-11-20
| | | | | | 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).
* Adapt inspector handlingQuentin Rameau2015-11-20
| | | | | The inspector is now easily manageable via API, there's no need for keeping its state in the Client.
* Adapt print()Quentin Rameau2015-11-20
|
* Simplify building of stylefiles pathQuentin Rameau2015-11-20
| | | | | We can directly use style file pointers instead of using temporary string pointers.
* Adapt setstyle()Quentin Rameau2015-11-20
| | | | | 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.
* Adapt clipboard()Quentin Rameau2015-11-20
| | | | Replace linkhover with target uri and add some comments
* Rename fullscreen() to togglefullscreen()Quentin Rameau2015-11-20
| | | | | And handle c->fullscreen value in winevent(). This way we keep track of fullscreen state even if we did not directly initiate the fullscreen.
* Replace titlechangeleave() with catch-all winevent()Quentin Rameau2015-11-20
| | | | | All GtkWidget events have the same function prototype with the generic GdkEvent as parameter. This will let us handle everything in the switch.
* Adapt JavaScript functionsQuentin Rameau2015-11-20
| | | | | Removed eval(), evalscript() is now sufficient and can directly execute passed JavaScript string.
* Remove windowobjectcleared(), execute scripts on load finishedQuentin Rameau2015-11-20
| | | | | | 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.
* Add createwindow() for GtkWindow creationQuentin Rameau2015-11-20
| | | | Move there window creation from showview().
* Add closeview() for JavaScript window closingQuentin Rameau2015-11-20
| | | | | Simply call gtk_widget_destroy() on the window. Then GtkWindow closing process will take care of the rest.
* Remove (delete :>) deletion_interface()Quentin Rameau2015-11-20
|
* Integrate beforerequest() into decidepolicy()Quentin Rameau2015-11-20
|
* Remove contextmenu() and menuactivate() for "context-menu" signalQuentin Rameau2015-11-20
| | | | | | 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.
* Adapted buttonrelease()Quentin Rameau2015-11-20
| | | | | | | 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.
* Replace initdownload() and intercept global download requests.Quentin Rameau2015-11-20
| | | | | Attach to download requests on WebKitContext, this way we can easily manage all types of downloads (coming from views or not).
* Adapted progresschanged()Quentin Rameau2015-11-20
|
* Manage ssl errors with GTlsCertificateFlagsQuentin Rameau2015-11-20
| | | | | | | 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).
* Replace loadstatuschanged() with loadchanged()Quentin Rameau2015-11-20
|
* Replace decidewindow() and decidedownload() with decidepolicy()Quentin Rameau2015-11-20
| | | | | | Now all the requests are triggered by one signal. We then handle each type, resource download, navigation, newwindow, in separate functions.
* Replace createwindow() with createview()Quentin Rameau2015-11-20
| | | | | We can now perform some filtering before opening a new view (window) when requested by JavaScript (either random or by a click).
* Replace geopolicyrequested() with permissionrequested()Quentin Rameau2015-11-20
| | | | | The permission-request signal can now ask for than a geolocation authorisation (though we only handle that for now).
* Replace linkhover() with mousetargetchanged()Quentin Rameau2015-11-20
| | | | | | | 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.
* Modify the context name of the hit testsQuentin Rameau2015-11-20
| | | | These relate more to the position of the pointer when an event occurs.
* Adapted titlechange()Quentin Rameau2015-11-20
| | | | Do not copy title strings, just carry over the const pointer.
* Move all necessary initialisation to newview()Quentin Rameau2015-11-20
| | | | | Most all the settings and callbacks are set before view creation. Create a related view (with inherited settings) if asked to.
* Add newview() and forward related viewsQuentin Rameau2015-11-20
| | | | | | 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.
* Add showview()Quentin Rameau2015-11-20
| | | | | Only show the window when and if the view is ready. Move all the window rendering there.
* Separate the rendering engine processQuentin Rameau2015-11-20
| | | | | Use one WebKitWebProcess per view instead of one for all views. More information in the API documentation.