Michael Drake
99765cf2d0
Remove TODO.
2015-08-13 09:48:09 +01:00
Michael Drake
2d53524635
Fix crash when JS context is required from a frame.
2015-08-13 09:39:04 +01:00
Vincent Sanders
c105738fa3
Change LOG() macro to be varadic
...
This changes the LOG macro to be varadic removing the need for all
callsites to have double bracketing and allows for future improvement
on how we use the logging macros.
The callsites were changed with coccinelle and the changes checked by
hand. Compile tested for several frontends but not all.
A formatting annotation has also been added which allows the compiler
to check the parameters and types passed to the logging.
2015-05-28 16:08:46 +01:00
Vincent Sanders
75d3fdc42e
Convert RISC OS to use bitmap render operation
2015-04-24 23:49:49 +01:00
Vincent Sanders
cc11912da1
Convert framebuffer frontend to bitmap operations table.
2015-04-14 23:08:02 +01:00
Vincent Sanders
3ff4846c1a
Remove usage of browser private interfaces
...
The cocoa frontend was directly acessing browser internals instead of
using the API. In the case of gui.m there was a check for the browser
window not being root (browser->parent != NULL) . As gui windows can
only ever be associated with the root brower window (i.e. its parent
will always be NULL) this was completely redundant.
2014-11-21 11:48:43 +00:00
Vincent Sanders
79e501075a
make the form select menu API smaller.
...
By hiding all but the form selection menu option structure from code
outside of render this reduces the API to the absolute minimum to
support this feature.
2014-11-13 21:52:08 +00:00
Vincent Sanders
3405803280
Improve content encoding information API
...
Extend the content_get_encoding() API to retrieve the source of
the encoding as well as the actual encoding.
2014-11-07 12:33:34 +00:00
Vincent Sanders
8c2cfecfb5
Allow content handlers to have debug values set through API
...
Previously content handler debugging features were accessed by global
variables. This allows the setting of debugging parameters via a
content API giving per content control over debugging features.
Currently only used by the html content handler to toggle global
redraw debugging.
2014-11-06 22:51:46 +00:00
Vincent Sanders
46f369ca9e
move themse install to its own header
2014-11-06 14:19:15 +00:00
Vincent Sanders
8ec7ad053a
Make the fetching of a contents encoding generic.
...
The frontends previously had to use an html renderer API to get the
encoding of a content. This also required the explicit checking of the
contents type rather than using the existing content API to abstract
this knowledge.
2014-11-05 23:44:31 +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
Vincent Sanders
b1ee46cfb3
make adding a history entry return an error code.
...
This returns the error code to the caller instead of (sometimes)
warning the user directly.
2014-10-29 22:47:25 +00:00
Vincent Sanders
a221fa7213
Ensure browser window creation returns errors from common initialisation.
...
The browser window common initialisation code returns error codes which
were being ignored. The errors were additionally being reported via
warn_user in inappropriate places within browser history construction.
2014-10-29 22:29:06 +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
Michael Drake
eed2a97eca
Add bw function to get scrollbar type.
2014-10-25 12:04:11 +01:00
Michael Drake
eea369afe7
Add function to find if a bw is a frameset.
2014-10-25 12:00:34 +01:00
Michael Drake
94f32b8369
Move create_form_select_menu to window gui table.
2014-10-24 20:45:21 +01:00
Michael Drake
69e82a8966
Ensure we pass valid gw to gadget click gui call.
...
Only root bw has a gw, so this would have been broken when it
happened in a frameset.
2014-10-24 20:18:57 +01:00
Michael Drake
b27f3e5ac4
Open select menu via content msg, instead of breaking encapsulation.
...
Fixes bw deref and browser_private.h #include in render/
2014-10-24 17:57:15 +01:00
Vincent Sanders
dc5deb26b1
improve documentation and whitespace cleanup.
2014-10-19 21:49:46 +01:00
Vincent Sanders
1180d19324
improve documentation in headers
2014-10-19 19:12:55 +01:00
Michael Drake
85fb1fd45d
Add is_selectable to browser window API surface.
2014-10-18 18:53:50 +01:00
Michael Drake
03e7605bcf
Add call to test whether a browser window may be searched.
2014-10-18 17:39:03 +01:00
Michael Drake
34cdbcfc25
Move up_available fn to core.
2014-10-18 10:16:00 +01:00
Michael Drake
7519993fd7
Add core function to navigate to URL parent.
2014-10-17 09:51:10 +01:00
Vincent Sanders
d06df231bc
Update the core to use the split operations table headers
...
Second in the series to decouple the core API usage from the frontends.
2014-10-16 22:33:43 +01:00
Vincent Sanders
3fa0ed01c0
add API to set DPI
2014-10-13 02:34:10 +01:00
Vincent Sanders
af16c38d2d
fix DOM tree dump debug
2014-08-04 00:37:21 +01:00
Vincent Sanders
984299e5b4
remove assert for creating new browser context with the tab flag set.
...
This allows creation of new browsing contents (browser/gui window) in a
tab but without explicitly providing a sibling browsing context to be
placed with.
2014-07-27 18:07:00 +01:00
Vincent Sanders
698b7c61f0
make gtk source viewer less explody. fixes #2159
2014-07-21 01:15:43 +01:00
Vincent Sanders
3a9fa29ee5
try and improve usage of browser window internals
2014-07-06 18:34:34 +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
7d02ae916a
make launch_url core operation use nsurl
2014-05-27 23:52:35 +01:00
Vincent Sanders
2326d3c503
remove unecessary utils/url.h includes
2014-05-09 10:15:42 +01: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
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
Michael Drake
22d15380f4
Add function to get browser window's extents.
2014-02-08 16:03:06 +00:00
Michael Drake
022a303d60
Move browser_window_update_extent to browser_private.h
2014-02-08 16:01:14 +00:00
Michael Drake
43c3caa469
Function to determine whether bw has a content.
2014-02-08 15:31:44 +00:00
Michael Drake
8bc3a80320
Add function to get bw's URL.
2014-02-08 15:00:08 +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
Vincent Sanders
db33103fa3
clean up desktop/gui.h include usage
2014-01-29 21:35:53 +00:00
Michael Drake
5787f8335e
Simplify and optimise icon handling.
2014-01-24 23:13:18 +00:00
Michael Drake
dab6d7961e
Actually use the fact scheme is interned.
2014-01-24 22:00:25 +00:00
Vincent Sanders
d47fed4524
move 401 login into operation table
2014-01-16 00:52:17 +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
667d4a0a49
confine the gui table acessor to the gui factory header
2014-01-14 20:05:14 +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
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
0d7f1cfc93
Add infrastructure for calling front ends to set file gadget filenames via clicking in addition to drag-and-drop
2014-01-05 16:04:35 +00:00
Rob Kendrick
1bd4a34a27
Remove asserts for default cases from all content message handlers; this is laborious and is no longer useful for catching bugs.
2014-01-05 14:39:08 +00:00
Michael Drake
1ae1d06ca4
Reduce leaking of thumbnails to only for URLs that urldb rejects.
...
Previously leaked thumbnails for all urls not previously visited.
2013-10-24 11:48:23 +01:00
Vincent Sanders
8cb2d52483
fix coverity #1111069
2013-10-23 13:48:26 +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
4ce2f6fd55
Update to use new hotlist and global history manager.
2013-09-02 12:29:16 +01:00
Michael Drake
fd1a94a751
Update the new hotlist on visits.
2013-08-27 13:38:23 +01:00
Michael Drake
2a3ff41e14
Flag a TODO.
2013-08-16 08:25:26 +01:00
Michael Drake
eaae716989
Move old hotlist out of the way.
2013-08-13 12:41:04 +01:00
Michael Drake
618ef54983
Update new global history, if the treeview test option is set.
2013-07-16 13:15:22 +01:00
Michael Drake
9f72b5e046
Fix namespace of old global history add function.
2013-07-15 12:57:40 +01:00
Michael Drake
094ef9a64b
Minor wrapping fix.
2013-07-12 15:31:43 +01:00
Michael Drake
716776a181
Remove forward declaration.
2013-07-12 13:50:17 +01:00
Michael Drake
d6d9378e9b
Move global_history_add out of browser.h into global_history_core.h
2013-07-12 12:01:54 +01:00
Michael Drake
3a0bda9771
Move local history over to nsurl.
2013-07-11 23:38:32 +01:00
Michael Drake
3f45e53539
s/history_core/local_history/
2013-07-10 11:55:42 +01:00
Vincent Sanders
ee6e6eec05
move options include
2013-05-28 14:16:10 +01:00
Michael Drake
ba9769bc8c
Pass fetch redirect info up to content layer as content_msg. Mark redirect origin URLs as visited in browser window content callback. Note this doesn't mean we track redirects, it just lets us get the :visited link style on links that redirect.
2013-05-27 14:51:00 +01:00
Vincent Sanders
af75070bee
add script_timeout option and use it
2013-05-22 19:12:26 +01:00
Vincent Sanders
ce0fe06349
create javascript heartbeat and hook a script timeout to it
2013-05-22 19:12:26 +01:00
Michael Drake
8b6665fe03
Merge branch 'master' of git://git.netsurf-browser.org/netsurf into tlsa/selection-search-refactor
2013-05-07 14:56:42 +01:00
Michael Drake
3afd9c9731
Remove search context from browser window, simplify search interface for front ends.
...
Added content interface for search.
Removed bw->cur_search search context. Desktop layer now does nothing
except pass search requests from front end onto the bw's current_content
via the content interface.
Search API reduced to a pair of functions at each level:
{desktop|content|html|textplain}_search
and
{desktop|content|html|textplain}_search_clear
Updated front ends to use simplified search API. Only tested GTK and RO builds.
These confine the search stuff to render/. However search still uses struct
selection. The handling for which is still spread over desktop/ and render/.
Also the render/search code itself still fiddles inside html and textplain
privates.
2013-05-07 14:41:40 +01:00
Vincent Sanders
30b1fc1dbd
add assert to ensure API contract is met
2013-05-04 17:01:00 +01:00
Michael Drake
2cb4a11d1d
Remove unused #includes.
2013-04-29 14:55:20 +01:00
Michael Drake
c8d76e68ca
Hide caret after reflow (textarea may have moved), but let textarea keep focus.
2013-03-27 13:57:10 +00:00
Michael Drake
41e4928e25
Fix pointer shape and status bar messages for textareas and their scrollbars.
2013-03-11 12:57:33 +00:00
Michael Drake
e8950dee22
Propagate native caret clip rect through core.
2013-03-05 22:54:51 +00:00
Michael Drake
69d653f4dc
Fix history.
2013-03-04 15:07:58 +00:00
John-Mark Bell
cd3e073354
Fix logging
2013-02-27 03:11:30 +00:00
John-Mark Bell
97978e858b
Use custom fetcher for inline CSS
2013-02-27 03:11:10 +00:00
Michael Drake
c2a718075a
A load of refactoring of how content selection and input work.
...
Keypresses now go via content interface.
Contents don't shove the selection object into browser windows any more.
Contents report selection existence by sending message.
HTML content keeps track of where selections in it exist.
Contents report whether they have input focus via caret setting msg.
Caret can be hidden (can still input/paste) or removed.
Consolidate textarea selection handling.
Make textarea report its selection status changes to client.
Various textarea fixes.
Changed how we decide when to clear selections, and give focus.
2013-02-22 12:19:35 +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
9c20ff9592
Drag fixup. Add some documentation.
2013-02-08 15:05:07 +00:00
Michael Drake
4747bbbfb2
HTML drags now go via content msg.
2013-02-08 13:22:53 +00:00