Commit Graph

356 Commits

Author SHA1 Message Date
Vincent Sanders
00b6cfc57e rework path to url mapping functions to convert from and to nsurl 2014-05-26 23:52:36 +01:00
Vincent Sanders
64f607760b add backing store storage path to browser initialisation 2014-05-13 15:53:06 +01:00
Vincent Sanders
16b11e7238 ensure operations tables are registered as early as possible. 2014-05-10 10:22:10 +01:00
Vincent Sanders
2326d3c503 remove unecessary utils/url.h includes 2014-05-09 10:15:42 +01:00
Vincent Sanders
096bd47ab0 refactor url utility functions to use standard nserror codes and have appropriate documentation. 2014-05-08 00:16:50 +01:00
Vincent Sanders
c56642819e add file operations table and make all frontends use it.
This rationalises the path construction and basename file
operations. The default implementation is POSIX which works for all
frontends except windows, riscos and amiga which have differeing path
separators and rules.

These implementations are significantly more robust than the previous
nine implementations and also do not use unsafe strncpy or buffers
with arbitrary length limits.

These implementations also carry full documentation comments.
2014-05-07 16:24:51 +01:00
Vincent Sanders
44715aea3c erroneous path to testament include 2014-05-01 16:02:00 +01:00
Vincent Sanders
56b42943d0 improve iconv library handling 2014-04-30 11:56:57 +01:00
Vincent Sanders
6f9a93e332 fix formatting of defaults makefiles 2014-03-20 11:05:39 +00:00
François Revol
fec9f916b6 beos: Fix build 2014-03-18 19:07:13 +01:00
Vincent Sanders
87f6314dab move scheduleing into browser operation table 2014-03-09 15:37:40 +00:00
François Revol
4591b65ad9 beos: Fix build
One replacement was missed when changing browser_window_history_forward().
2014-02-20 16:02:43 +01:00
Michael Drake
a38a63a37e Make history internal to browser_window module. 2014-02-15 18:44:50 +00:00
François Revol
df5e5fb487 Fix build
Drop broken explicit cast.
2014-02-13 17:18:17 +01:00
Michael Drake
49bed056dd Make browser_window_navigate (un)verifiable flag match browser_window_create. 2014-02-10 22:40:04 +00:00
Michael Drake
af014bce99 Allow tab creation without history clone. Changes browser_window_create and browser_window_navigate flags. 2014-02-10 14:08:45 +00:00
Michael Drake
ea79e85fcd Clean up gui_window creation API. 2014-02-09 13:07:39 +00:00
Michael Drake
3d7cd77982 Simplify local history interface. 2014-02-08 22:43:54 +00:00
François Revol
17ecb818ad beos: Fix build (missing include) 2014-02-04 23:34:41 +01:00
François Revol
4fab874d4f beos: Drop unneeded desktop/gui.h include 2014-02-03 01:50:06 +01:00
François Revol
dba69de613 beos: Fix build (missing includes) 2014-02-02 16:58:56 +01:00
Vincent Sanders
886a3106db move utf8 local conversion operations to table 2014-02-01 22:17:36 +00:00
Vincent Sanders
654da2ffb5 move utf8 conversion routines to use nserror instead of their own error enum 2014-01-28 21:40:13 +00:00
François Revol
4b760c7e49 beos: Fix build
Add missing header due to moved function.
2014-01-28 15:15:49 +01:00
François Revol
443d6f3e04 beos: Account for change in atomic_add() prototype in Haiku
Since the scheduler branch merge, atomic_add() takes a pointer
to int32, doesn't require the target to be volatile anymore.
2014-01-28 15:14:34 +01:00
Vincent Sanders
8ce0a10670 move path_to_url and url_to_path to fetch operation table 2014-01-25 23:01:32 +00:00
Vincent Sanders
0475693394 create table for fetcher operations and move all operations into it 2014-01-23 00:00:18 +00:00
François Revol
c74bf433c3 beos: Fix updating system colors 2014-01-16 18:12:41 +01:00
François Revol
90742e6b4b beos: Fix build
gcc2 doesn't know about named initializers in C++...
2014-01-16 17:28:16 +01:00
François Revol
7c71ad4f5a whitespace 2014-01-16 17:28:15 +01:00
François Revol
55bf16d754 beos: Better implementation of NSIconTextControl for the url bar
Instead of adding a child view we draw the bitmap over the child.
Fixup the TextRect also in Draw() which is called just before the
TextView's Draw().

It flickers a little less, and also respects the background color of
the text control when using a desktop theme.

Also drop a useless dynamic_cast.
2014-01-16 16:11:26 +01:00
Vincent Sanders
d47fed4524 move 401 login into operation table 2014-01-16 00:52:17 +00:00
Vincent Sanders
38cb39339a move filename_from_path and path_add_part into gui operation tables 2014-01-16 00:01:25 +00:00
Vincent Sanders
bd065d4a43 split browser gui operations up 2014-01-15 19:37:05 +00:00
Vincent Sanders
68eaec5cb4 complete move of remaining core gui functions 2014-01-15 12:28:55 +00:00
Vincent Sanders
8dfe225153 move download operations to download table 2014-01-14 16:04:02 +00:00
Vincent Sanders
d18c8ed452 move teh final optional window operations into the table 2014-01-13 22:54:19 +00:00
Vincent Sanders
e82d83f184 move four more optional window operations to table 2014-01-13 14:51:27 +00:00
Vincent Sanders
d70e371cd9 move two more mandantory window operations to table 2014-01-13 11:38:35 +00:00
Vincent Sanders
7227c29bba move window scroll getter and setter into operations table 2014-01-13 01:08:15 +00:00
Vincent Sanders
5a962586fb move mandantory window update and redraw operations into table 2014-01-12 23:50:54 +00:00
Vincent Sanders
4b49b4ac77 move more optional window operations into table including removing unused hide_pointer operation altogether 2014-01-12 22:55:26 +00:00
Vincent Sanders
b7736bae2f split gui operations into core and window and move more operations into tables 2014-01-12 17:07:34 +00:00
Vincent Sanders
56bb9582b1 move set title, set url, start and stop throbber window operations to gui table 2014-01-12 10:27:41 +00:00
Vincent Sanders
c8496df3df move window creation and destruction into table 2014-01-11 22:34:12 +00:00
Vincent Sanders
d3c392c3d3 Initial conversion of netsurf gui to callback vtable 2014-01-11 14:20:30 +00:00
Daniel Silverstone
692d4a328c Fix some log statements 2014-01-05 17:22:30 +00:00
Rob Kendrick
550c8cd73c Change gui_file_gadget_interface to pass gui_window not browser_window, add GTK implementation that of course does not work. 2014-01-05 16:45:32 +00:00
Rob Kendrick
d8ad3b8e78 Add new gui entry point for file open dialogue requests 2014-01-05 16:01:03 +00:00
François Revol
6c63adb1c1 beos: Remove Messages symlinks in res/*/
It seems the messages files aren't generated early enough
anymore, so building the resources fails.

We can't load them from the resource yet anyway.
2014-01-04 20:22:26 +01:00
François Revol
3a1bf5c20f beos: Also set LowColor on toolbar buttons when attached 2014-01-04 19:44:07 +01:00
François Revol
a7ef9dc4ab beos: Simplify about box
Just print some version infos, the buttons are there for credits
and licence.
2014-01-04 19:44:06 +01:00
François Revol
f713cdd90b beos: Add credits and licence buttons to about box
We'll simplify it to just mention version infos like on atari.
2014-01-04 19:44:05 +01:00
François Revol
1025a49cb6 beos: if no gui window, pass the first one to nsbeos_about() 2014-01-04 19:44:05 +01:00
François Revol
0dc8cd6625 beos: Fix about box 2014-01-04 19:44:04 +01:00
François Revol
967d930477 beos: Fix opening about from replicant popup 2014-01-04 19:44:03 +01:00
François Revol
bd89e5a088 beos: Fix background color for control on replicants
Still some redundancy there but it works.
2014-01-04 19:44:02 +01:00
François Revol
92afacbe6f beos: Add icon in url bar
A bit hackish, flickers on resize, but it works.
2014-01-04 19:44:01 +01:00
François Revol
fc782f55ba beos: Add a resize knob to replicants
The view resizes the base view by the relative mouse movement.

TODO: Add a bitmap to draw, for now it's ugly green.
2014-01-04 19:44:00 +01:00
François Revol
f8517f2e51 beos: remap resource:favicon.ico to favicon.png
We don't use it yet though.
2014-01-04 19:43:59 +01:00
François Revol
3c5317cf54 beos: Fix embedded files in resources
- drop the remaining hardcoded files in rdef file
- add favicon.png
- remove en/ symlink
- add real folders with symlinks for translated files like GTK
  Note the Messages files are also included although the current code
  is not able to load them from the resources.
- add symlinks for html files to the en/ version
  (TODO: try to remap automatically)
2014-01-04 19:43:58 +01:00
François Revol
e1e1b5c45b beos: Export icons/ resources with a lowercase i
That's what GTK does, and it fixes the dirlist icons too.
2014-01-04 19:43:57 +01:00
François Revol
917f8ca804 beos: Drop duplicate throbber PNG resources
They are also added with another path by the makefile.
2014-01-04 19:43:56 +01:00
François Revol
da504bbbb8 beos: Add comments to resources definition file 2014-01-04 19:43:55 +01:00
François Revol
053897d07d beos: Move some resources around
Move app signature and supported filetypes before icons for more visibility.
2014-01-04 19:43:54 +01:00
François Revol
f3455a7556 beos: Remove unused Tracker button bitmaps
We never used them, and we now have better looking HVIF ones anyway.
2014-01-04 19:43:53 +01:00
François Revol
6f4e293311 beos: Load Messages files for current language
For now we just check for LC_MESSAGES in the environment, which
should even work in BeOS. Someday we should probably use Haiku's
BLocale API instead.
2014-01-04 19:43:52 +01:00
François Revol
d69997c8a3 beos: Add missing call to lwc_string_unref() 2014-01-04 19:43:51 +01:00
François Revol
748b13c8ba beos: Fix permission on temp directories creation
TODO: use filename_initialize() instead when it's fixed.
2014-01-04 19:43:50 +01:00
Vincent Sanders
f7916866e3 remove all references to using libMNG 2014-01-04 17:07:11 +00:00
François Revol
375ee78d1c Fix indentation 2013-12-07 01:28:55 +01:00
François Revol
62f7cfb04b Fix Haiku build
Fix build of the BeOS code due to recent untested options commits.
2013-12-07 01:26:39 +01:00
Michael Drake
cf8ffa412a Remove old hotlist, cookies, and history_global_core modules.
New versions of expand/collapse node functions for these modules aren't yet implemented.
2013-09-02 22:41:04 +01:00
Michael Drake
4473f4b8a8 Remove tree icon_name globals from all the front ends. 2013-09-02 16:39:46 +01:00
Michael Drake
5c7ca39ada Remove tree_url_node module. Had to disable treeview scanning in amiga and cocoa front ends. Amiga front end very likely broken. 2013-09-02 14:17:09 +01:00
Michael Drake
68078d7ea7 Fix up for cookies_old rename. 2013-07-22 10:21:37 +01:00
Michael Drake
3f45e53539 s/history_core/local_history/ 2013-07-10 11:55:42 +01:00
Vincent Sanders
a92e5930ff fixup issues with new options API merge 2013-05-28 16:44:46 +01:00
Vincent Sanders
1b4e0d11d3 move beos to new options API 2013-05-28 14:16:11 +01:00
Vincent Sanders
ee6e6eec05 move options include 2013-05-28 14:16:10 +01:00
Vincent Sanders
a5355ec557 change all core and frontend options headers to new format 2013-05-28 14:16:10 +01:00
Vincent Sanders
35dacc3671 move the logging initialisation out to be call by frontends
This allows each frontend to pass a distinct callback to configure the
output file stream appropriately for their use.
2013-05-23 11:50:57 +01:00
Michael Drake
631265ef6b Front ends have no reason to include desktop/selection.h now. 2013-05-10 12:16:05 +01:00
Michael Drake
9644d0594c Remove struct selection from gui_drag_save_selection, so gui.h doesn't need it now. 2013-05-10 11:54:26 +01:00
François Revol
48dc679d7b beos: Fix replicants
Waiting on the semaphore was not enough, it was causing a crash on
replicant removal. Now we wait for the replicant main thread to exit.
It fixes replicants, at least when a single one is used per application.
Using more than one still causes issues due to some libs not liking
being used twice (hlcache it seems).
2013-03-22 00:25:27 +01:00
François Revol
1f9e1ca84b beos: Fix nsfont_position_in_string off-by-1
The current width was tested after the index was already
updated to the next character, leading to an off-by-one error,
and the impossibility to select the first character of a string
in textarea.
2013-03-21 22:10:35 +01:00
François Revol
f3c0b643b6 beos: Set the filename in the download file panel 2013-03-09 21:03:16 +01:00
Adrien Destugues - PulkoMandy
29f062e963 beos: Fix some cpp warnings 2013-03-09 20:51:22 +01:00
Michael Drake
037beb44fb Pass caret clip rect out to front ends. (Nothing actually using them yet.) 2013-03-05 22:54:51 +00:00
Michael Drake
a3c00c7192 Fixup for core selection change. 2013-02-22 15:12:10 +00:00
Vincent Sanders
869c7245f5 clean out useless outdated #if 0 blocks they serve no purpose and keep causing confusion in core refactors. Better examples are available in other frontends or in teh revision control system if strictly necessary 2013-02-18 14:47:21 +00:00
Vincent Sanders
529ca251fc rename flags for browser_window routines to be shorter 2013-02-18 11:51:42 +00:00
Vincent Sanders
b112dec78d change browser_window_create and refactor all callsites 2013-02-18 11:23:48 +00:00
Vincent Sanders
3bfb5b96a7 browser_window_navigate refactor 2013-02-18 11:23:27 +00:00
Michael Drake
97c658fea1 Update for new nsfont_split expectations. Untested, but code similar to framebuffer. Looks /really/ slow. It only needs to measure the text when it finds a space, not for every character. 2013-02-10 18:33:27 +00:00
François Revol
87946c5de8 beos: Fix clipboard handling to use the new API 2013-01-20 18:00:36 +01:00
John-Mark Bell
3dff750ae2 Downgrade TLS version support if it turns out the server can't cope with TLSv1.1. 2013-01-04 23:13:23 +00:00
Vincent Sanders
484fa8b110 move common include path setup to core Makefile 2012-12-20 15:27:07 +00:00
Vincent Sanders
6582b4e075 fix change to CC_MAJOR for beos 2012-12-14 11:30:14 +00:00
Vincent Sanders
c87cbe5655 split target defaults out 2012-12-13 19:26:24 +00:00