Commit Graph

743 Commits

Author SHA1 Message Date
Vincent Sanders
649f4f8890 fix amiga build error 2014-05-25 01:11:24 +01:00
Vincent Sanders
a6d3ceae0e Completely re-write web search provider handling 2014-05-25 01:01:59 +01:00
Vincent Sanders
0a2082d777 ensure all vmkpath implementations check their parameters 2014-05-17 22:28:32 +01:00
Chris Young
11f03cae0c Create cache dir 2014-05-16 09:55:38 +01:00
Vincent Sanders
64f607760b add backing store storage path to browser initialisation 2014-05-13 15:53:06 +01:00
Vincent Sanders
06a3f84e50 remove amiga specific mkpath wrapper as registration has been fixed and the generic netsurf)mkpath is available 2014-05-11 16:54:36 +01:00
Chris Young
318edea47e Make mkpath allocate the string buffer for map_filename. Fixes 2119. 2014-05-10 15:22:38 +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
b9bade808f missing comma 2014-05-07 16:47:44 +01:00
Vincent Sanders
6349704b5e fix silly errors in atari and amiga file operation table change 2014-05-07 16:38:58 +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
Chris Young
b1f67dab31 Remove Cairo from AmigaOS frontend. 2014-05-03 16:38:58 +01:00
Chris Young
9ba0d66c6d Ensure we don't get extraneous signals allocated 2014-04-06 15:24:24 +01:00
Chris Young
1ecd56bd71 Fix a case where the screen wouldn't close if NetSurf had been launched from Workbench 2014-04-06 15:22:18 +01:00
Chris Young
4ec70fd3a2 Fix some more cppcheck unread/unusedVariable warnings 2014-04-05 23:40:03 +01:00
Chris Young
3ea6ca89a0 Fix cppcheck constStatement warning 2014-04-05 23:12:07 +01:00
Chris Young
c2f9a39966 Fix some cppcheck variableScope warnings 2014-04-05 20:26:39 +01:00
Chris Young
f991abc53c Fix a bunch of cppcheck unusedVariable/unreadVariable warnings 2014-04-05 20:26:39 +01:00
Chris Young
268cda0f56 Fix cppcheck variableHidingTypedef 2014-04-05 20:26:39 +01:00
Chris Young
412df34298 Fix some cppcheck variableScope warnings 2014-04-05 20:26:39 +01:00
Chris Young
4575698f0f Fix cppcheck syntaxError 2014-04-03 19:06:09 +01:00
Vincent Sanders
4d4d74c8cd move page search gui callbacks to their own operations table 2014-03-18 22:32:52 +00:00
Chris Young
c44bbcdc08 Ensure any user-input URLs are passed to the core in UTF-8.
Everything else, including any content of the URL bar which hasn't just been entered by the user, is assumed to be in ASCII.
NB: The exception is the ARexx OPEN command.  This is because NetSurf uses the ARexx port and this command internally when multiple instances are opened.
file: addresses typed into the address bar containing non-ASCII characters will probably no loger work, but it is expected that under normal circumstances, users will either drag'n'drop files or use Project=>Open.  If it becomes an issue I will work around it at a later date.
2014-03-13 19:37:01 +00:00
Vincent Sanders
87f6314dab move scheduleing into browser operation table 2014-03-09 15:37:40 +00:00
Michael Drake
a38a63a37e Make history internal to browser_window module. 2014-02-15 18:44:50 +00:00
Michael Drake
2f66b6f6e2 Fix builds. 2014-02-10 22:53:22 +00:00
Michael Drake
49bed056dd Make browser_window_navigate (un)verifiable flag match browser_window_create. 2014-02-10 22:40:04 +00:00
Chris Young
76b5378996 Add some explanation for the future. 2014-02-10 21:12:02 +00:00
Chris Young
5087fde086 Force downloads to abort on quit 2014-02-10 21:08:36 +00:00
Chris Young
80fcfa7bce Tidy-up; ami_try_quit is checking the window list now 2014-02-10 20:46:24 +00:00
Chris Young
cbf423d4c6 Try quitting after downloading if there are no windows open 2014-02-10 20:40:08 +00:00
Chris Young
55a96a7eee screen_signal should be reset to -1 2014-02-10 20:31:06 +00:00
Chris Young
c384c5dd3e Force the GUI opts window closed on quit 2014-02-10 20:30:08 +00:00
Chris Young
7fa641616b Free help before attempting to close the screen, as it doesn't consider itself a visitor window. 2014-02-10 20:23:09 +00:00
Chris Young
e975b355f5 Don't wait for the screen to close unless we're actually quitting. 2014-02-10 20:18:18 +00:00
Chris Young
709665e5c0 Ensure we always free the screen notification signal 2014-02-10 19:21:47 +00:00
Chris Young
36e0715dfb Get and process AmigaGuide help messages 2014-02-10 18:42:50 +00:00
Chris Young
4aa59f5382 SA_PubSig needs setting at screen open time.
Potentially this fixes a screen closure problem.
2014-02-10 18:13:28 +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
7f2c977788 Unset tab flag in kiosk mode. 2014-02-09 13:31:48 +00:00
Michael Drake
ce41b8d431 Fix errors. 2014-02-09 13:19:46 +00:00
Michael Drake
ea79e85fcd Clean up gui_window creation API. 2014-02-09 13:07:39 +00:00
Michael Drake
987218e144 Fix amiga build. 2014-02-08 23:06:24 +00:00
Michael Drake
3d7cd77982 Simplify local history interface. 2014-02-08 22:43:54 +00:00
Michael Drake
cf84e557fa Simplify browser_window_refresh_url_bar.
Reduces front end need to access bw internals.
2014-02-08 12:07:13 +00:00
Chris Young
41d7084356 Initialise AmigaGuide help system only at the point of first use. 2014-02-07 17:51:12 +00:00
Chris Young
f5f7dc9931 Only allocate printing resources for the period of time we need them. 2014-02-07 17:45:00 +00:00
Chris Young
665f724a36 Brackets 2014-02-06 21:26:39 +00:00
Chris Young
cd9268761c Only allocate a signal for screen closure at the point we need it. This ensures there are enough free signals for popupmenu.library (at the moment, at least) 2014-02-06 21:23:24 +00:00
Chris Young
b937ed1d8d Avoid a potential crash when two tabs are opened and one of them is closed. 2014-02-06 19:35:52 +00:00
Vincent Sanders
7798dae86a fix missing includes 2014-02-01 22:44:43 +00:00
Vincent Sanders
886a3106db move utf8 local conversion operations to table 2014-02-01 22:17:36 +00:00
Vincent Sanders
8ce0a10670 move path_to_url and url_to_path to fetch operation table 2014-01-25 23:01:32 +00:00
Chris Young
d64754aca4 Ensure the screen actually gets closed before NetSurf quits. 2014-01-24 20:35:31 +00:00
Vincent Sanders
0475693394 create table for fetcher operations and move all operations into it 2014-01-23 00:00:18 +00:00
Chris Young
e43fbb3914 Fix ReadArgs() argument parsing. Collect any parameters we're not interested in and pass those to nsoption_commandline directly. 2014-01-18 22:10:18 +00:00
Chris Young
96546838d1 Debug logging 2014-01-18 21:35:02 +00:00
Vincent Sanders
ba4788108b fixup amiga build errors 2014-01-16 14:43:48 +00: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
0075eab194 move remaining gui operations to table 2014-01-14 23:31:54 +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
Chris Young
a856439afb Re-add proper notification of ability to close public screen. 2014-01-10 20:46:58 +00:00
Chris Young
78e8077a5a Re-enable the RAmiga-U shortcut to activate the URL bar, now it is safe to do so. 2014-01-10 20:35:49 +00:00
Chris Young
9fd344172a Enforce the use of popupmenu.library >=53.11
Older versions have a dangerous bug which manifests itself as a deadlock or a crash.
2014-01-10 20:32:20 +00:00
Chris Young
ef76dd468d Tentatively enable AmigaGuide help 2014-01-10 20:03:22 +00:00
Chris Young
4eff5ddf71 Add file upload request on click 2014-01-05 23:04:28 +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
Chris Young
845923adfc Make the new tab button also use the new blank tab function. This fixes bug 2034 2014-01-03 18:20:47 +00:00
Chris Young
c25728b011 Move new blank tab into own function 2014-01-03 18:17:25 +00:00
Chris Young
24e5b2ec16 Create a layout group for favicon, URL and the new favourites star. This makes the balance bar work again. 2013-11-24 14:37:44 +00:00
Chris Young
8f6e17d405 Update favourites button when switching tabs 2013-11-23 13:46:57 +00:00
Chris Young
46a88fe8f4 Create the BitMapObjects and just switch between them.
Fix the themes so the images are correct.
2013-11-23 13:11:30 +00:00
Chris Young
616a9b0652 Make hotlist button do something 2013-11-23 12:34:00 +00:00
Chris Young
50e038538a Add hotlist favourites star button 2013-11-23 12:23:56 +00:00
Chris Young
b50743a253 tidy-up 2013-10-28 21:30:43 +00:00
Chris Young
20dabacb25 Correct some memory allocation parameters 2013-10-12 13:43:33 +01:00
Chris Young
ade86e496e Replace AllocVec with AllocVecTags. Remove some instances of MEMF_CLEAR where it is not necessary. 2013-10-12 13:11:13 +01:00
Chris Young
af2c37167b application.library fix for new SDK. Note that:
* application.library functionality will no longer be available on OS4.0, however that only extends to the Docky icon as notifications weren't supported anyway.
* CI builds may crash until the toolchain is updated.
2013-10-12 10:26:28 +01:00
Chris Young
bdf76965b4 Add Undo/Redo to Amiga version. NB: Clear selection no longer has a shortcut key. 2013-10-01 18:51:27 +01:00
Chris Young
87da43d373 Extra logging 2013-09-28 14:58:03 +01:00
Chris Young
69b0350a3c Make the hotlist toolbar work 2013-09-12 12:35:55 +01:00
Chris Young
0bc226def9 Make hotlist toolbar use the new functions 2013-09-12 12:29:47 +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
49c7994d05 Remove bulk of old treeview implementation. 2013-09-02 16:19:16 +01:00