Commit Graph

981 Commits

Author SHA1 Message Date
Vincent Sanders
dd31499bf9 move remove underscores utility to alongside the single gtk call site 2016-04-20 23:38:08 +01:00
Vincent Sanders
dee7426656 stop content header dragging in so many other headers 2016-04-19 23:20:29 +01:00
Vincent Sanders
d29bccdb3a add missing explicit dirent includes 2016-04-19 15:56:57 +01:00
Vincent Sanders
46e1061ef3 fix missing struct on http parameter declaration due to header change 2016-04-18 23:17:38 +01:00
Vincent Sanders
392307bb1f reduce content header interdependancy 2016-04-18 23:04:16 +01:00
Vincent Sanders
33c7df0c40 complete the rename of the gui browser table
When the operations tables were created the browser table was renamed
to miscellaneous except the actual rename patch was never applied,
this fixes that situation.
2016-04-16 23:50:21 +01:00
Vincent Sanders
06c84a26e9 remove unecessary header inclusion 2016-03-16 09:31:19 +00:00
Vincent Sanders
3dca38cf98 Avoid null dereference in gtk resource handling
Ensure the error handling in gtk pixmap resource handling does not
cause a null pointer dereference. Fixes coverity CID 1307743
2016-03-14 15:03:39 +00:00
Vincent Sanders
c45afb6a29 Clean up gtk login window
This fixes coverity ID 1316338 by dealing with memory and window
creation errors properly.

Previously such errors could seg fault or leave the browser navigation
logic "stuck" waiting for user input to a window that never existed.

The code was also refactored to remove forward declarations and add
documentation comments.
2016-03-14 14:02:48 +00:00
Vincent Sanders
571af764a5 completely remove remaining GTK theme code
Removes the theme code from GTK by moving the small remaining parts to
being implementation details within the toolbar implementation.
2016-03-09 11:37:09 +00:00
Vincent Sanders
8ee04cf68f remove unused theme ui elements from preferances dialog 2016-03-09 09:07:33 +00:00
Vincent Sanders
4e59843040 remove unrequired path globals 2016-03-09 09:04:50 +00:00
Vincent Sanders
68b1d2da55 remove theme option 2016-03-08 17:48:16 +00:00
Vincent Sanders
1e2584aa14 add missing arrow down pixmap resource 2016-03-08 15:58:48 +00:00
Vincent Sanders
5e604235e4 Initial pass removing gtk frontend theme code 2016-03-08 15:45:28 +00:00
Vincent Sanders
6a4efa35f8 update gtk resource path setting to use makefile variable 2016-02-20 18:37:50 +00:00
Vincent Sanders
fb95797862 fix more freebsd warnings 2016-02-12 15:45:49 +00:00
Vincent Sanders
8a075b7142 fix strcasecmp implicit declaration warnings on freebsd 2016-02-12 14:53:52 +00:00
Michael Drake
3af77eabd8 Can free pango font desc as soon as it's set. 2016-02-09 15:15:53 +00:00
Michael Drake
df2d62a872 Use readonly get_line, since it is supposed to be faster. 2016-02-08 15:59:24 +00:00
Michael Drake
9cb522ce38 Don't haemorrhage Pango layouts out of nsfont_paint.
Before:
  LEAK SUMMARY:
     definitely lost: 143,462 bytes in 811 blocks
     indirectly lost: 835,174 bytes in 16,656 blocks
       possibly lost: 104,465 bytes in 1,631 blocks
     still reachable: 3,634,180 bytes in 30,844 blocks
          suppressed: 0 bytes in 0 blocks

After:
  LEAK SUMMARY:
     definitely lost: 57,990 bytes in 258 blocks
     indirectly lost: 218,013 bytes in 5,995 blocks
       possibly lost: 110,118 bytes in 1,837 blocks
     still reachable: 3,637,842 bytes in 30,881 blocks
          suppressed: 0 bytes in 0 blocks
2016-02-08 14:59:35 +00:00
Vincent Sanders
65bdef55ab move the container code to gtk directory as its only ever used there. 2016-01-19 15:10:29 +00:00
Vincent Sanders
f266eb1c5d make search engines resource common between gtk and beos 2016-01-19 13:51:54 +00:00
Rob Kendrick
93fbed0f2c Style fixes 2016-01-13 16:35:24 +00:00
Michael Drake
a6226170dd Actually do something with return value. 2015-12-20 12:26:48 +00:00
Michael Drake
1bb7d295bb Make nsurl utf8 string conversion function consistent with nsurl API. 2015-10-25 09:03:20 +00:00
Chris Young
aabea8eceb Update RISC OS frontend to new API 2015-10-24 15:12:57 +01:00
Chris Young
27adf07fb7 Update gtk frontend to new API 2015-10-24 15:12:57 +01:00
Chris Young
6afda499c2 Show the IDN decoded form in the URL bar on GTK if the option is set. 2015-10-24 15:12:56 +01:00
Vincent Sanders
7736a611a2 Improve gtk scaffolding documentation 2015-06-30 15:39:00 +01:00
Vincent Sanders
55260cc9a0 Ensure gtk windows have a default favicon at creation.
This ensures newly created gtk gui windows have a default favicon
set. This is necessary because new tab creation displays the new
windows contents before an icon has been set and the icon will not be
changed from the previously viewed tabs icon.
2015-06-30 12:09:45 +01:00
Vincent Sanders
65ef60d2b5 Fix missing unistd includes to allow building with older headers 2015-06-29 17:07:49 +01:00
Vincent Sanders
b208c60ddd Add missing include to gtk scaffolding
Without unistd access, close and unlink were not properly defined
2015-06-29 16:14:34 +01:00
Vincent Sanders
1c5a5207fb fix glib resource API usage even when gresource was disabled 2015-06-29 15:48:08 +01:00
Vincent Sanders
796ac470b5 Improve resource code to not try and use g_resource calls when disabled. 2015-06-29 15:11:26 +01:00
Vincent Sanders
822e3a8fd0 Allow gtk preferences language selection resource to be inline
This allows the languages resource to be read from file or from inline
data. Additionally it fixes a bug where the language combo box would
always be reset to en as the default regardless of what was currently
configured.
2015-06-25 23:46:35 +01:00
Vincent Sanders
5bd7606103 Update GTK url bar completion to navigate on selection 2015-06-23 23:22:42 +01:00
Vincent Sanders
ee74f9ac8c Change gtk message and language handling to use resource names
The GTK resource handling can now provide the path to resources rather
than having to compute them separately. This reduces run time
allocation and allows for the resources to be built in if required.

Additionally this tweaks the resource scheme handling to redirect
favicon.ico to resource:favicon.png instead of rewriting directly to
file scheme path allowing the favicon to be a compiled in resource.
2015-06-23 11:53:41 +01:00
Vincent Sanders
11dc7304d9 Allow GTK to include inline resources for default css 2015-06-22 21:03:00 +01:00
Michael Drake
83f77d3a41 Don't need gtkdefault.css now. 2015-06-22 14:24:51 +01:00
Michael Drake
51a92fbd84 Consolidate default style. 2015-06-22 14:17:02 +01:00
Vincent Sanders
a94ae7a80a Allow translation messages to be compiled in as GTK resources 2015-06-21 23:27:22 +01:00
Vincent Sanders
67ded2a02a This moves message loading out of netsurf_init into each frontend
The translated message loading is dependant on configuration of
resource location in each frontend, additionally they should have the
ability to deal with errors in this loading in a implementation
specific manner.

This also extends the message loading API to be capable of loading
from an inline memory buffer instead of from a file.
2015-06-21 23:27:22 +01:00
Vincent Sanders
9ccf0cee9f Change GTK resource path to use the users netsurf directory
This changes the path used to find resources from containg a hard
coded ${HOME}/.netsurf to using the computed path to the users netsurf
config.
2015-06-21 23:27:21 +01:00
Vincent Sanders
e1bbe4528b Add direct resources to GTK
This adds API to obtain direct pointers to arrays of data from
compiled in resources. Additionally it hooks this up to provide data
for the resourece scheme handler.
2015-06-17 21:35:45 +01:00
Vincent Sanders
be7a45fefe Change gtk to use resource API for throbber 2015-06-17 21:35:40 +01:00
Vincent Sanders
3e2270482f Make GTK resource handling configurable
This makes the GTK resource handling configurable in the same way as
all other pkg-config style feature options.

It is now possible to completely disable compiled in resources if
wanted as well as forcing inline pixdata on if desired.
2015-06-17 21:35:40 +01:00
Vincent Sanders
59fbd51a77 Add legacy support for inline pixbuf usage
Before GResource it was possible to compile pixbufs as inline
elements. This has historically been done for the menu cursor
only.

This change integrates the inline support and uses it when the
GResource support is not selected.
2015-06-17 21:35:40 +01:00
Vincent Sanders
61fdc8fd6f update default gtk window icon source to use resources 2015-06-17 21:35:40 +01:00
Vincent Sanders
8ef292b9ca Change GTK UI builder handling to use resource API
GTK UI builder resources have till now been exclusively stored on disc
requiring netsurf to ship numerous additional resource files. This
requires going to disc every time a UI action is performed which can
become a lot of unwanted file handling.

GLib/GTK has moved towards GResource handling for such resources
instead. It now seems that migrating to this style of usage is
expected and indeed the only portable way to include pixbufs.

This introduces an API to hide the various implementation details of
how resources are handled from the rest of the codebase.
2015-06-17 21:35:40 +01:00