Commit Graph

1511 Commits

Author SHA1 Message Date
Vincent Sanders 4776f05430 fix potential division by zero by only computing width and height when content is valid and hence will return content width and height not zero. coverity 110986[23] 2013-10-25 22:06:29 +01:00
Michael Drake 1d326a8a1c Fix leak of frame element name. 2013-10-25 19:57:05 +01:00
Michael Drake 88ca82dea2 Fix leak of box scrollbars. 2013-10-25 15:47:49 +01:00
Michael Drake 182b97ed33 Fix leak of html encoding. 2013-10-23 18:55:51 +01:00
Michael Drake 0bbaf1d24d Layout doesn't need to handle the old insane textarea box splitting now. Fixes Coverity:1109882. 2013-10-23 12:48:16 +01:00
Michael Drake 3e08819db9 Fix leaks in form_successful_controls. 'charset' was always leaked, value was leaked in particular OOM case. 2013-10-23 12:34:48 +01:00
Michael Drake 479fcefd9a s/!charset/charset == NULL/ 2013-10-23 12:16:20 +01:00
Michael Drake 8641d5cbda Fix a potential leak. 2013-09-05 11:13:08 +01:00
Michael Drake b646592928 Allocate correct amount of mem for pointers to imagemaps. 2013-09-05 10:46:58 +01:00
Michael Drake 8d3a89b62d Don't attempt to vertical-align objects for now, as our current bodged vertical-align implementation can do more harm than good. 2013-07-12 11:34:47 +01:00
Michael Drake 90231bd4b1 Force root element box type to BOX_BLOCK. 2013-07-10 12:27:56 +01:00
Michael Drake 67066ce47c Shave a few more px off animated background redraw, in the non-tiled cases. (Restrict area to part of image that changed.) 2013-07-07 10:14:13 +01:00
Michael Drake ec50fdaefa Fix rendering of animated background images. Give them sensible redraw area. 2013-07-06 22:57:48 +01:00
Michael Drake 431f9fde5f Apply vertical alignment to objects on line. 2013-06-08 10:42:33 +01:00
Vincent Sanders e2056974ca fixup script message handling 2013-05-31 09:22:08 +01:00
Vincent Sanders 2d70714a64 use correct acessors for unsigned type 2013-05-28 14:16:11 +01:00
Vincent Sanders 63d7247a9c fix mismatched option name and variable names
block_ads should be block_advertisments to match option name
toolbar_status_width should be toolbar_status_size to match option name
2013-05-28 14:16:11 +01:00
Vincent Sanders ee6e6eec05 move options include 2013-05-28 14:16:10 +01:00
Michael Drake 977452b2ba Fix handling of clip property to avoid clip rectangles that are entierly outside the redraw region. 2013-05-28 12:47:20 +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
Michael Drake 9751a10705 Handle title on dom event. Remove head walker from begin_conversion. 2013-05-23 15:02:15 +01:00
Michael Drake e8df19f3d2 Move base and link element handling to event callback. 2013-05-23 13:29:40 +01:00
Michael Drake 5a312946c5 Move meta refresh handling to dom event handler. 2013-05-22 23:57:59 +01:00
Michael Drake bec089e7aa Tiny simplification. 2013-05-20 19:51:15 +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
Michael Drake 1f6744f26b Styleguide formatting. 2013-05-02 09:34:01 +01:00
Michael Drake a3394aa77f Put comments for exported functions in header. 2013-05-02 09:34:01 +01:00
Michael Drake 6b178fb3fe HTML selections are always read-only now. 2013-05-02 09:34:01 +01:00
Vincent Sanders 25e6563e61 remove dead store 2013-05-01 22:07:29 +01:00
Michael Drake d399f565ed Fix abort of page render on failed content_redraw of background image. 2013-04-23 18:34:46 +01:00
Michael Drake bcf07a9665 Hacky fix for clipping of top of text. 2013-04-17 12:18:08 +01:00
John-Mark Bell 09086758e7 Fix 3608298: only apply link hack if JS is disabled. 2013-03-19 21:38:25 +00:00
Michael Drake f4ce62ebfe In box textarea binding only redraw the area that was requested, not the whole textarea. 2013-03-19 12:44:03 +00:00
Michael Drake 773cc5b562 Stop looking on first modified sheet found. 2013-03-18 15:01:56 +00:00
Michael Drake 07bdb324c1 Remove extra logging. 2013-03-18 14:57:29 +00:00
Michael Drake 5930e4bcc4 Fix bug where html conversion began before STYLE element fetch had been launched. 2013-03-18 14:48:00 +00:00
Michael Drake bf69cfa74b Add some extra logging. Some pedantic wrap changes. 2013-03-18 12:35:00 +00:00
John-Mark Bell 3801886aec Debounce style updates 2013-03-16 10:50:17 +00:00
John-Mark Bell 4136a4d64e Move public API to end 2013-03-16 10:33:28 +00:00
John-Mark Bell 6e5e5761fc Ensure a reference is taken on style nodes. 2013-03-16 01:00:06 +00:00
Vincent Sanders 95e726c7cc split sources lists out to their subdirectories as first step towards using core buildsystem 2013-03-11 17:53:52 +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
François Revol e31007f6a7 C89 2013-03-09 20:44:25 +01:00
Michael Drake c1628435f2 Fix min line width calc when an inline isn't to be wrapped in a block that allows wrap. 2013-03-06 18:39:38 +00:00
Michael Drake e8950dee22 Propagate native caret clip rect through core. 2013-03-05 22:54:51 +00:00
Daniel Silverstone 461d4576fb Unref the node in the callbacks 2013-03-05 22:53:55 +00:00
John-Mark Bell 6b9f7c3094 Use correct base URL for inline stylesheets 2013-02-27 03:55:48 +00:00
John-Mark Bell 97978e858b Use custom fetcher for inline CSS 2013-02-27 03:11:10 +00:00
John-Mark Bell 405fa12f8d Fix handling of inline stylesheets with @import 2013-02-26 09:14:32 +00:00
Vincent Sanders a35e66ffa1 split out object handling from render/html.c 2013-02-25 18:24:04 +00:00
Vincent Sanders 4e7b4259a4 fix quirk stylesheet loading 2013-02-25 15:00:50 +00:00
John-Mark Bell 1e7dac61da Fix memory leak 2013-02-24 23:05:56 +00:00
Vincent Sanders cc7f45898b refactor stylesheet handling to separate object from within html rendering 2013-02-24 16:08:37 +00:00
Michael Drake bba74b7a0b Handle readonly attribute for text inputs and textareas. 2013-02-23 17:44:20 +00:00
Michael Drake 3cc90f2f30 Fix trying to free a load of stuff dereferenced from a NULL ptr. 2013-02-22 23:08:39 +00:00
John-Mark Bell 9303fc56dc Remove redundant code. 2013-02-22 20:51:56 +00:00
Michael Drake 131db5c8da Fix min width to take account of white-space property. 2013-02-22 19:00:16 +00:00
Michael Drake 8445bc166b Don't bypass html form handling layer when passing keypress to textarea. 2013-02-22 15:01:13 +00:00
Michael Drake 7088908cc2 Merge branch 'master' of git://git.netsurf-browser.org/netsurf
Conflicts of doom:
	render/html.c
2013-02-22 13:24:36 +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 dcce2c57a1 correct reference counting for moved css calls 2013-02-20 18:15:31 +00:00
Vincent Sanders 066df9802a deal with inline styles on updates instead of insert 2013-02-20 17:13:23 +00:00
Vincent Sanders 5be20a0d6e change stylesheet fetching to be generated from the default dom events 2013-02-19 23:51:16 +00:00
Vincent Sanders 92f4dec245 refactor stylesheet fetching code to not have redundant sheet count 2013-02-19 18:29:31 +00:00
Vincent Sanders 529ca251fc rename flags for browser_window routines to be shorter 2013-02-18 11:51:42 +00:00
Vincent Sanders 3bfb5b96a7 browser_window_navigate refactor 2013-02-18 11:23:27 +00:00
Michael Drake 427f13a716 Change selection colours so selection background takes text colour, and selected text becomes black or white -- whichever gives greatest contrast. 2013-02-15 16:07:56 +00:00
Michael Drake bb601eae78 Don't reduce width of textarea box for CSS overflow scrollbar; it won't get one. 2013-02-11 18:43:50 +00:00
Michael Drake 99fc8d3f0d Move html textarea's selection colour chooser to plot_style.h, as it could be used elsewhere. 2013-02-11 00:41:22 +00:00
Michael Drake 315f5a8ca1 Merge branch 'master' of git://git.netsurf-browser.org/netsurf
Conflicts:
	gtk/font_pango.c

Conflict resolved.
2013-02-10 21:52:36 +00:00
Michael Drake 285a7ca6c3 Document new nsfont_split expected behaviour. 2013-02-10 18:22:51 +00:00
Michael Drake 7bc725fe1f Update HTML layout not to demand that nsfont_split only splits on a space.
This allows the HTML layout code to wrap unicode text correctly.
For example on our Japanese Welcome page, the characters will be wrapped
if the platform's nsfont_split implementation implements the Unicode line
breaking algorithm.
2013-02-10 16:50:15 +00:00
Michael Drake f98c0d848c Make nowrap code path a bit plainer. 2013-02-10 12:19:13 +00:00
Michael Drake 2a4b9b2217 Comment current html wrap/text-splitting behaviour. 2013-02-10 11:50:04 +00:00
Michael Drake ceb1668a8a Choose pretty colours for selection. 2013-02-09 22:55:31 +00:00
Michael Drake 7fa8f30f44 Don't add box scrollbar padding to gadgets. 2013-02-09 13:01:56 +00:00
Michael Drake 0d831c4ab6 Scaled textarea rendering support. Ugly. 2013-02-08 23:25:40 +00:00
Michael Drake 59d24187f7 Support dropping text file on textarea widget. 2013-02-08 16:05:44 +00:00
Michael Drake 698f391289 Add scrollwheel support to textareas. 2013-02-08 15:26:24 +00:00
Michael Drake 98befbb770 Fix comment. 2013-02-08 15:10:39 +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
Michael Drake 08035f1197 Remove unused textinput widget. (Old html form text editing.) 2013-02-07 14:36:54 +00:00
Michael Drake cb283c516a Don't build or include old render/textinput module. 2013-02-07 14:28:20 +00:00
Michael Drake 94be5edbfa Native caret not now set in redraw. Prevents endless redraw when textarea has caret. 2013-02-07 13:58:43 +00:00
Michael Drake 762e1aad73 First pass at getting html forms to use textarea widget.
(Input element types text & password, and textarea element.)
Can edit and submit forms, but there are loads of issues.
2013-02-06 22:39:45 +00:00
Chris Young def45f8e55 Ensure buff is NULL-initialised. 2013-01-21 20:03:03 +00:00
Michael Drake a6e56546c9 Check the right thing for NULL. 2013-01-18 21:58:37 +00:00
Michael Drake 8af3dd9a43 Redo html textinput for new front end clipboard API. This doesn't affect the textinput code's brokenness. 2013-01-08 16:59:26 +00:00
Michael Drake 147f2bd08a Remove content_msg for PASTE, since it doesn't need a gui_window to get the buffer from the front end now. 2013-01-08 16:53:00 +00:00
Michael Drake 70d83baa6d Merge branch 'master' of git://git.netsurf-browser.org/netsurf 2013-01-03 11:57:23 +00:00
Vincent Sanders beffd9e481 search for teh correct script type in the defer callback.
Should fix SF bug #3599063
2013-01-02 23:14:31 +00:00
Michael Drake bda7bfa739 Make scale const. 2013-01-02 18:44:08 +00:00
Michael Drake 96841ae2ff Remove forward declaration. 2013-01-02 18:02:15 +00:00
Michael Drake 8bf3346ce2 Fix min_max line width calc to include box spaces. 2013-01-02 12:46:17 +00:00
Vincent Sanders c1c3a06748 document mouse interaction a bit 2012-12-10 08:49:54 +00:00
Vincent Sanders 912b9de928 ensure default action fetcher is set to NULL 2012-12-06 19:33:25 +00:00
Vincent Sanders 646aed64ff change to parameterised parser binding creation 2012-12-06 18:04:43 +00:00
Vincent Sanders 3052864773 issue click events at dom 2012-12-03 17:09:44 +00:00
Vincent Sanders 31c9ffb4b5 make boxes keep reference to the DOM node that causes them 2012-11-30 12:29:54 +00:00