Chris Young
b91d5f3ac7
Fix the passing of NetSurf internally-handled args to the core
2015-01-05 19:58:31 +00:00
Chris Young
f9ccd65545
Translate common RAmiga-shortcuts directly to their NetSurf keycodes
2015-01-03 14:20:47 +00:00
Chris Young
a10aaea989
Greatly simplify finding out if our gui_window is the one being displayed.
2015-01-02 23:14:49 +00:00
Chris Young
ef43be9989
Fix crash on startup when "always show tabs" is enabled.
2014-12-19 11:57:32 +00:00
Chris Young
17ec567266
Remove redundant check
2014-12-10 17:44:38 +00:00
Chris Young
0166083584
Get scale after memory allocated
2014-12-04 19:02:59 +00:00
Michael Drake
19fed3976f
Don't need browser window private header now.
2014-12-04 12:23:24 +00:00
Michael Drake
f0b38f27d4
Use API to get at a browser window's content.
2014-12-04 12:22:56 +00:00
Michael Drake
60877b6ff5
Fix missmatched bracket.
2014-12-04 12:18:36 +00:00
Michael Drake
4af70cd1ac
Use browser_window_get_extents to simplify window content size handling.
2014-12-04 12:14:16 +00:00
Michael Drake
fad6318d59
Use browser_window_get_url()
2014-12-04 12:04:36 +00:00
Michael Drake
e4437ad76b
Store scale in gui_window. Remove a lot of bw dereferencing for scale.
2014-12-04 11:42:12 +00:00
Chris Young
0cd682644b
Revert "Revert "Write out to the backing store asynchronously.""
...
This reverts commit 75623179aa
.
2014-11-22 16:41:29 +00:00
Chris Young
2de1553a00
New scheduler
2014-11-22 16:27:39 +00:00
Chris Young
f8d8d218d8
Initial steps for a scheduler process
2014-11-22 16:27:39 +00:00
Chris Young
fe56795205
Revert "Should be a while loop in case of multiple simultaneous event triggers."
...
This reverts commit 9dcf001a0b
.
For ehatever reason this is entirely broken, but I'm in the process of rewriting so just revert for now to get the working builds again.
2014-11-22 14:18:00 +00:00
Chris Young
9dcf001a0b
Should be a while loop in case of multiple simultaneous event triggers.
2014-11-21 23:47:26 +00:00
Chris Young
75623179aa
Revert "Write out to the backing store asynchronously."
...
This reverts commit 1ddf8215cf
.
Appears to be unsafe to run this in a new process.
2014-11-19 23:34:53 +00:00
Chris Young
1ddf8215cf
Write out to the backing store asynchronously.
...
Despite the fact AmigaOS filesystems run as separate processes,
DOS filesystem writes occur synchronously waiting for the disk
write to finish before returning. Here we have effectively taken
the core's fs backing store and extended it slightly so the store
operation is spun off into a new process, running at a lower task
priority than NetSurf itself. This stops the UI pauses that occur
shortly after loading pages as NetSurf commits the cache to disk.
Somewhat experimental, pending more extensive user testing.
2014-11-18 19:31:11 +00:00
Chris Young
cfc9971d0e
Remove no longer used poll option from schedule runner
2014-11-17 23:47:28 +00:00
Chris Young
230e348315
update comments
2014-11-16 16:44:19 +00:00
Chris Young
0966b8097c
Allocate screen title when first needed and keep it private to amiga/gui.c
2014-11-16 16:40:41 +00:00
Chris Young
20705189b9
Make win_destroyed variable private to amiga/gui.c
2014-11-16 16:31:35 +00:00
Chris Young
6ce6b9ae97
Replace curbw (current browser_window, used mostly for ARexx support) with cur_gw (current gui_window)
2014-11-16 16:01:59 +00:00
Chris Young
d626487fe1
Remove any pending favicon refresh to avoid a crash on exit/window close
2014-11-16 15:06:32 +00:00
Chris Young
497994b0f4
Fix amiga/gui.c to not ref gui_window via browser_window
2014-11-16 14:44:40 +00:00
Chris Young
7cb7879427
Remove a loop which appears to do nothing
2014-11-16 14:25:31 +00:00
Chris Young
e3620ac675
Change clicktab userdata to hold gui_window instead of browser_window
2014-11-16 14:24:18 +00:00
Chris Young
e75cdeeefd
Don't make the app id a global var
2014-11-16 14:06:12 +00:00
Chris Young
b2fd904eef
Make the SPACE_RenderBox compatibility functions public
2014-11-15 13:52:06 +00:00
Chris Young
e909c93804
Use SPACE_RenderBox if available, as SPACE_AreaBox is "dangerous".
2014-11-15 13:46:23 +00:00
Vincent Sanders
3e4f5737aa
Doxygen cleanups in frontends
2014-11-11 15:46:04 +00:00
Chris Young
fb0af6f269
Call open/close timer from schedule init/free functions
2014-11-10 23:50:28 +00:00
Chris Young
e9696b2fa9
New function for an error requester with the correct imagery which doesn't attempt to do Messages lookup.
2014-11-10 21:59:51 +00:00
Chris Young
098fbb628b
Move some init functions together for the sake of clarity
2014-11-10 19:01:30 +00:00
Chris Young
225161b05e
Move MIME cleanup before NetSurf's internal exit.
2014-11-10 18:58:58 +00:00
Chris Young
16e80452c2
Remove gui_init and merge the contents into main()
2014-11-10 18:57:38 +00:00
Chris Young
7bf92f6a04
Remove die()
...
Terminating execution abruptly on AmigaOS is dangerous.
2014-11-10 18:56:09 +00:00
Chris Young
e0833a7f2e
Fix warnings
2014-11-09 01:10:52 +00:00
Chris Young
4329c7a328
Terminate execution if an essential library fails to open
2014-11-09 00:06:56 +00:00
Chris Young
c2eb205685
Open libraries *before* we need them...
2014-11-09 00:06:56 +00:00
Chris Young
3c1aeebb1e
Fix headers
2014-11-09 00:06:55 +00:00
Chris Young
9601ddacad
Add new libs file to centrally open/close required libraries, and move a couple of the existing manual opens to it.
2014-11-09 00:06:55 +00:00
Vincent Sanders
c14ddad660
change url setting api to take an nsurl instead of a text string
2014-11-02 22:30:45 +00:00
Vincent Sanders
c31c4babe1
Change contextual content retrieval to browser features.
...
Update the API which allows frontends to acquire the page features
(images, link urls or form elements) present at the given coordinates
within a browser window.
By making this an explicit browser_window API and using the browser.h
header for the associated data structure with a more appropriate API
naming the usage is much more obvious and contained.
Additionally the link url is now passed around as a nsurl stopping it
being converted from nsurl to text and back again several times.
2014-11-02 15:46:42 +00:00
Chris Young
c3522ea747
Change min stack (again) to 128K
...
It has come to my attention that some websites (eg amigakit.com) are using marginally more than the 96K stack space set previously. This should give plenty of breathing space.
2014-10-30 21:51:52 +00:00
Vincent Sanders
7ace528729
Update url setting API to return nserror code instead of calling warn_user
2014-10-29 00:18:12 +00:00
Chris Young
29dfdd459d
Move scroller check into update_extent, where it makes more sense
2014-10-26 22:22:15 +00:00
Chris Young
bad7780378
Check scroller requirements as part of the reformat.
2014-10-26 21:30:19 +00:00
Chris Young
784d893eb7
Avoid a crash on exit in kiosk mode
2014-10-26 17:08:23 +00:00
Chris Young
36a3e58c06
Expand status bar to entire window width
2014-10-26 17:00:18 +00:00
Chris Young
340d74ae4f
Make the new hscroller work properly
2014-10-26 16:42:00 +00:00
Chris Young
80b195cdd5
Move the hscrollbar inside the window
2014-10-26 16:35:05 +00:00
Chris Young
17b87a60cf
Offset new windows as per style guide
2014-10-26 16:12:34 +00:00
Chris Young
0c77d85f89
Make window counting a generic function
2014-10-26 15:41:44 +00:00
Chris Young
b751513d6f
Schedule redraws for 1cs to ensure they take place after reformats (which are scheduled by the core for 0cs)
2014-10-26 13:22:02 +00:00
Chris Young
a01cb0f635
Don't need redraw_scheduld as the scheduler stops it being scheduled twice anyway
2014-10-26 13:18:19 +00:00
Chris Young
69c7b6b1f5
Fix button update, avoid forward decl
2014-10-26 13:11:05 +00:00
Chris Young
49873c8bf3
Cache size gadget width
2014-10-25 20:17:33 +01:00
Chris Young
d89f654fbe
Correct comment
2014-10-25 20:08:56 +01:00
Chris Young
a2e999584c
Use the correct size gadget width (thx tboeckel)
2014-10-25 20:07:58 +01:00
Chris Young
41b08da31a
Check scroller requirement after a resize
2014-10-25 20:03:14 +01:00
Chris Young
b2ff4877e4
Remove the vertical scroll bar if there's nothing to scroll
2014-10-25 19:59:11 +01:00
Chris Young
7e95b7ffb1
Remove some old VertProp tags
2014-10-25 19:29:51 +01:00
Chris Young
b7b4db8520
Merge branch 'chris/shorter-vscrollbar'
...
Move the vertical scroller into the window area and allow it to be removed when eg. framesets are being displayed.
2014-10-25 19:27:40 +01:00
Chris Young
d31aa9a959
Use more sensible default value for size gadget width
2014-10-25 19:24:58 +01:00
Chris Young
fa7d44702a
Fix warnings
2014-10-25 16:22:28 +01:00
Chris Young
2ad41a78c4
Returns bool, not void
2014-10-25 15:52:10 +01:00
Chris Young
8d930afb3d
Reduce code duplication
2014-10-25 15:49:42 +01:00
Chris Young
088c03a9b7
Reformat page after scrollbar add/remove
2014-10-25 15:47:05 +01:00
Chris Young
e22273c0ff
Remove scrollbar for framesets too
2014-10-25 15:38:57 +01:00
Chris Young
8590780ff5
Avoid forward decl, add comments
2014-10-25 15:29:12 +01:00
Chris Young
90e6cf85b6
Toggle vscroll on/off as needed
2014-10-25 15:23:31 +01:00
Chris Young
f5d866ab70
Rename OID_VSCROLL to GID_VSCROLL and ensure it exists before referencing
2014-10-25 15:08:04 +01:00
Chris Young
6034e69ad1
Creat ehte kiosk window similar to the normal one
2014-10-25 14:41:10 +01:00
Chris Young
78a8f1d967
Remove TODO: LM_REMOVECHILD disposes the objects already.
2014-10-25 14:30:17 +01:00
Chris Young
f787b22594
Add a TODO, don't break kiosk window
2014-10-25 13:29:10 +01:00
Chris Young
f9ed0af8d8
Remove built-in window scrollbar and replace with a scroller.gadget.
...
The style does not match the window border so looks a bit odd.
2014-10-25 13:17:49 +01:00
Michael Drake
94f32b8369
Move create_form_select_menu to window gui table.
2014-10-24 20:45:21 +01:00
Chris Young
7cfec69700
Ensure the throbber is stopped when destroying a gui_window. Fixes 2205.
2014-10-23 18:48:31 +01:00
Vincent Sanders
56a5ad11f3
remove unecessary include of browser.h in amiga frontend
2014-10-17 23:18:58 +01:00
Vincent Sanders
0b64df140c
Update amiga frontend for split operation table header changes
2014-10-16 22:33:44 +01:00
Vincent Sanders
30f118a86d
remove unecessary css includes from fronetends
2014-10-13 15:45:51 +01:00
Vincent Sanders
02bbaa3e88
split version info into its own header and remove unnecessary nesurf.h includes
...
The netsurf.h header should *only* contain the registration, core
initialisation and finalisation methods. Version information is best
placed in its own header.
Also remove any unneeded inclusion of this header limiting it to
solely the places the relevant API is required.
2014-10-13 15:08:16 +01:00
Vincent Sanders
265f63e679
remove use of deprecated netsurf_quit variable
...
The core no longer needs to run the event polling loop as fetches are now
scheduler driven. This is part of a series which will ultimately remove
netsurf_poll callback altogether.
The Amiga maintainer probably wants to look at moving the ami_quit
signalling inside ami_handle_msg() to further reduce overhead.
2014-10-12 10:05:01 +01:00
Chris Young
e994704d5c
void function
2014-09-20 13:44:28 +01:00
Chris Young
1b2225ea07
Move log init so it starts earlier
2014-09-20 13:38:38 +01:00
Chris Young
9e6b0fb8b0
Adjust min stack to 96K following evaluation.
2014-09-07 14:09:11 +01:00
Chris Young
93d7cf59ff
Reduce stack back down to 64K
2014-09-02 18:58:28 +01:00
Chris Young
5b815861f3
Ensure the favicon updates correctly when we close a tab
2014-08-25 20:20:16 +01:00
Chris Young
2353790a45
Reduce minimum stack to 128K.
...
This should make it easier to see if bug#2177 is fully resolved.
2014-08-03 12:24:08 +01:00
Chris Young
989e82544e
Increase minimum stack to 1MB
2014-07-26 13:11:44 +01:00
Chris Young
db28f295a8
Raise minimum stack to 512K
2014-07-26 00:24:19 +01:00
Chris Young
36411a2ba5
Fix tab title when "always show tabs" is enabled and only one tab is present
2014-07-12 16:09:08 +01:00
Chris Young
d61713d107
Don't update if there is no browser attached (fixes potential crash on startup)
2014-07-12 16:01:43 +01:00
Chris Young
c3514c2c50
Ensure tab titles are updated if the tab bar is newly added
2014-07-12 15:44:14 +01:00
Vincent Sanders
0f151e37cb
Merge branch 'vince/reformatpending'
...
Conflicts:
amiga/gui.c
2014-07-06 10:45:31 +01:00
Chris Young
ab5b2d9afe
Move favicon redraw to scheduled callback
2014-07-05 19:00:21 +01:00
Chris Young
21a21e8143
Move the throbber to proper scheduled operation
2014-07-05 18:44:44 +01:00
Chris Young
bdcb123f0a
Replace a flag for search ico refresh with a scheduled callback
2014-07-05 17:47:40 +01:00
Chris Young
f3508427f8
Ensure Ctrl-C does not terminate NetSurf abruptly.
2014-07-05 09:36:43 +01:00
Chris Young
eccfdec27a
Wait for network activity instead of polling.
2014-07-03 20:53:28 +01:00
Vincent Sanders
18aefabd20
change reformat to be driven from the scheduler like redraw
2014-07-01 09:27:20 +01:00
Vincent Sanders
2330503533
Merge branch 'vince/fetchschedule'
2014-07-01 09:03:47 +01:00
Chris Young
01088bb63b
Re-disable the favicon render hook
2014-07-01 08:28:07 +01:00
Chris Young
846b534854
Recreate the entire menu when the hotlist window is closed.
...
This ensures the hotlist entries in the menu are in sync with reality, and mirrors the existing hotlist toolbar update.
2014-06-30 22:37:05 +01:00
Chris Young
01271f4061
Re-enable favicon render hook. Not sure why or when this was disabled.
2014-06-30 22:21:10 +01:00
Chris Young
0c5bb37bea
Implement a very basic favicon cache for the hotlist menu to use
2014-06-29 22:35:52 +01:00
Vincent Sanders
8944edd649
convert all frontends to scheduled fetch operation
2014-06-26 19:05:59 +01:00
Chris Young
904cefd388
Enable temporary change of search provider from the main browser window
2014-06-15 15:48:55 +01:00
Chris Young
3de529d815
Change the search ico to be a chooser gadget with the icon as the display
2014-06-15 15:39:49 +01:00
Chris Young
ea01d6b3fc
Double the stack as it still runs out on occasion
2014-06-01 08:46:22 +01:00
Michael Drake
ee32aa43fe
Remove an unused variable.
2014-05-31 08:47:32 +01:00
Vincent Sanders
1966649c83
fix amiga build to use correct nsurl acessor function
2014-05-27 00:15:34 +01:00
Vincent Sanders
688f60d963
fix errors with path_to_url conversion
2014-05-27 00:08:04 +01:00
Vincent Sanders
00b6cfc57e
rework path to url mapping functions to convert from and to nsurl
2014-05-26 23:52:36 +01:00
Chris Young
4a9e1edbde
Redraw the favicon if the window is resized.
2014-05-25 15:07:40 +01:00
Chris Young
bd9acf594f
Try to ensure we get the correct search icon when the window opens.
2014-05-25 10:37:20 +01:00
Chris Young
ab5fb83037
Move search_web_init somewhere sane
2014-05-25 10:26:34 +01:00
Vincent Sanders
5d8d4d84b7
use new search web interface to refresh icon.
2014-05-25 01:16:32 +01:00
Vincent Sanders
b34a6bbe31
fix warnings in amiga build introduced in websearch changes
2014-05-25 01:14:01 +01:00
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