Commit Graph

1390 Commits

Author SHA1 Message Date
Michael Drake
2bd0d13817 Take account of caret height when scrolling to show caret. 2013-02-09 11:54:13 +00:00
Michael Drake
688e1b0e4f Slight selection auto-scroll optimisation. 2013-02-09 11:24:44 +00:00
Michael Drake
363d02b8ad Pedantic wrap. 2013-02-08 23:39:41 +00:00
Michael Drake
50c52408f5 Fix seg fault when moving cursor up onto empty top line. 2013-02-08 23:38:05 +00:00
Michael Drake
6fee220c52 Adjust code to reduce indentation. 2013-02-08 23:35:42 +00:00
Michael Drake
0d831c4ab6 Scaled textarea rendering support. Ugly. 2013-02-08 23:25:40 +00:00
Michael Drake
586e02e915 Implement text selection auto-scroll. 2013-02-08 20:03:44 +00:00
Michael Drake
7a397d29c6 Improve scroll-to-caret behaviour. 2013-02-08 19:46:35 +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
f57e89cc25 Add ta to documentation. 2013-02-08 15:15: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
Michael Drake
9ec663f3a9 Tweak selection rendering. Adjusting layout doesn't emit redraw request. Client must redraw when it wants it. 2013-02-08 13:16:24 +00:00
Michael Drake
76b0e59b18 Don't lose fractional part of text pt size to rounding. 2013-02-07 15:03:35 +00:00
Michael Drake
2979a19786 Remove input subtree special numberspacing. 2013-02-07 14:21:48 +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
Michael Drake
008cdb42d7 Fix empty textarea reflow. Fix empty line (just \n) redraw. Add set layout function to set size and padding. 2013-02-06 22:30:32 +00:00
Michael Drake
442218cb80 Pull flags out of textarea_setup. 2013-02-02 22:58:35 +00:00
Michael Drake
97bc1d0189 Add support for password text inputs.
+ Text display obscured.
  + Cut/Copy put the obscured version on the clipboard.
2013-02-01 18:29:27 +00:00
Michael Drake
663191791e Add move caret msg. Add flag to choose internal caret or caret move msgs. 2013-01-30 18:01:01 +00:00
Michael Drake
5eb417fff4 Create textarea_msg struct on stack, rather than using global. 2013-01-29 22:52:21 +00:00
Michael Drake
af7a5d2d67 Don't redraw if selection is unchanged. 2013-01-29 20:28:10 +00:00
Michael Drake
93cc123200 Update textarea to inform client what it's doing with drags.
Now single callback for both redraw requests and drag reports.
Update treeview to use new textarea API.
Update Atari URL bar to use new textarea API.  (Ignores drag reports, currently.)
Minor textarea fixes.
2013-01-29 17:34:08 +00:00
Michael Drake
75a24f7838 Add enum value for when no button is pressed (hover). 2013-01-29 14:07:24 +00:00
François Revol
2f94b0a949 textarea: C89 2013-01-20 17:59:55 +01:00
Michael Drake
9995ef583f Early scrollbar mouse handling. 2013-01-18 23:32:53 +00:00
Michael Drake
d252896953 Ensure we know for sure if scrollbar widget will want to scroll us. Avoid double xy to offset conversion. 2013-01-15 21:05:54 +00:00
Michael Drake
7a0b347563 Add parentheses. 2013-01-15 19:50:36 +00:00
Michael Drake
348e9789a4 Add scrollbars to textarea, and improve scrolling to try to keep caret in centre. Currently the scrollbars are mostly decoration, although they show accuratly where you are scrolled to in the area. TODO: Pass mouse input to scrollbars. 2013-01-15 19:40:32 +00:00
Michael Drake
96264ca71e Use right padding. Thanks jmb. 2013-01-14 12:01:23 +00:00
Michael Drake
700aea8b08 Fix caret removal redraw to take account of border width. Fix scroll_visible to take account of border width in vertical scroll. 2013-01-14 11:46:56 +00:00
Michael Drake
2b7bc02961 Implement most of the styling needed for HTML. Allow caret to be hidden. 2013-01-13 23:01:29 +00:00
Michael Drake
740559ab52 Rewrite redraw to handle selection properly. (Now text can change colour inside selection, rather than just rendering a rectangle under the normal line of text. This removes colour restrictions, allowing e.g. inversion for selected text.) 2013-01-13 14:51:26 +00:00
Michael Drake
c7a37392e4 Add background colour to textarea_redraw API. Add source comments. 2013-01-12 20:59:32 +00:00
Michael Drake
5124b8a02a Add textarea_setup struct to textarea_create API. 2013-01-12 20:46:01 +00:00
Michael Drake
ac03806a50 Fix redraw of caret when scroll offsets are non-zero, only caret has moved, and we're not getting a full textarea redraw. 2013-01-10 23:21:47 +00:00
Michael Drake
ac89e52109 Simplify routine to scroll ta so that caret is visible. 2013-01-10 23:20:42 +00:00
Michael Drake
ab5d165659 More wrap behaviour improvement. 2013-01-10 19:43:22 +00:00
Michael Drake
694c1e7eea Fix silly. 2013-01-10 18:42:56 +00:00
Michael Drake
d3973b2991 Fix previous caret position redraw. 2013-01-10 18:36:25 +00:00
Michael Drake
2158ef60a8 Improve reflow in multiline textareas. 2013-01-10 17:42:43 +00:00
Michael Drake
eddb0f17d1 Simplfy caret placement and redraw. 2013-01-10 15:06:05 +00:00
Michael Drake
4cad82db9f Fix caret placement in multi-line textareas. 2013-01-10 12:46:33 +00:00
Michael Drake
ec8e6ac91d Add support for clipboard. Improve text selection behaviour. Various fixes. 2013-01-09 18:10:20 +00:00
Michael Drake
31e7b6d983 Make get_xy_offset return both char and byte offset. (Byte being needed for selection replacement.) 2013-01-09 14:26:11 +00:00
Michael Drake
964a736a53 Rename selection index markers. 2013-01-08 19:51:59 +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
de63a64b50 Update to use new front end clipboard functions. Now we build the buffer from each individual text box in the core, instead of in each front end. Styles for text runs are generated in the HTML case. 2013-01-08 16:54:46 +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
e93fae7f2d Change clipboard api, so it does not assume either browser_window/gui_window, or html/text-plain content selection objects. This allows desktop/textarea to use clipboard. 2013-01-08 16:44:45 +00:00
Michael Drake
f43f84f5ad Fix redraw of selection hightlight during selection drags. 2013-01-07 14:15:35 +00:00
Michael Drake
0c0f1e4b7a Remove wrong comments. 2013-01-07 12:59:06 +00:00
Michael Drake
e414d545af Make comment concise. 2013-01-07 12:22:51 +00:00
Michael Drake
1ac2e00134 Remove forward declaration. 2013-01-05 15:27:53 +00:00
Michael Drake
912d3f7690 Put exported function comments in header. 2013-01-05 15:15:23 +00:00
Michael Drake
46b7691522 Start rationalising textarea widget. 2013-01-05 14:52:02 +00:00
Michael Drake
131b4cdda1 For now selection clear and selection copy are handled by the bw. Select all is only handled by the bw if nothing has claimed input. This stops the crash when select all is used in textarea.
TODO: The special keys should not be handled by the bw, they should be handled by the content with focus.
2013-01-03 15:25:59 +00:00
Michael Drake
4aadb5237a Ensure selection related keypresses go to whatever has claimed input. 2013-01-03 12:48:09 +00:00
Vincent Sanders
33934e1271 implement the GTK preferances dialog with signals 2013-01-01 00:59:47 +00:00
John-Mark Bell
ea3f09a724 Correctly emit entities when serialising to HTML. 2012-12-30 23:37:06 +00:00
Vincent Sanders
ce309aa5a9 add message retrival of error codes ensuring there are messages for all codes 2012-11-26 17:32:57 +00:00
François Revol
8a12a8d545 C89 2012-11-25 19:19:58 +01:00
John-Mark Bell
ce640e59fd Report (and ignore) failure to load non-existent document. (Credit: Chris Young) 2012-11-11 11:31:34 +00:00
John-Mark Bell
bb3a6bbb3b Permit hotlist entries to have no title. 2012-11-11 11:23:43 +00:00
Chris Young
f2ab822a83 Prevent NULL pointer access with plain text contents 2012-11-10 22:26:43 +00:00
Vincent Sanders
a79e098817 remove redundant domutils and put functionality in existing utils/libdom 2012-11-10 11:44:38 +00:00
John-Mark Bell
4d58ed6562 Port hotlist load/save to libdom. 2012-11-09 23:23:04 +00:00
Michael Drake
2385f8269a Fix to escape comments in save complete output. 2012-11-06 10:02:17 +00:00
Michael Drake
af1572be92 Height is already scaled. Make OBJ char bigger. 2012-11-05 19:08:44 +00:00
Michael Drake
d0cb1d4e66 Don't abort redraw on bad image. 2012-11-05 18:19:14 +00:00
John-Mark Bell
f824ab8af4 Port save complete to libdom. 2012-11-03 23:19:45 +00:00
Vincent Sanders
a1d052399a fix warnings 2012-10-18 10:40:53 +01:00
Vincent Sanders
f18bbd48c7 Improve error handling in html content 2012-10-17 21:52:43 +01:00
Michael Drake
35eb251244 Fix "error setting certificate verify locations" problem when the Choices file doesn't exist. Now there's a single place for front ends to set options overrides. Fix nsoption_setnull_charp leak. 2012-10-17 14:20:18 +01:00
Michael Drake
0c0b263b29 Add some startup logging. 2012-10-17 11:41:25 +01:00
Michael Drake
dbed8312c8 Disable thumbnail persistence. 2012-10-14 19:13:07 +01:00
Michael Drake
8dd8330eee Remove unused #ifdef riscos. 2012-10-14 19:10:39 +01:00
Michael Drake
c8263d299e Tree can't be NULL. 2012-10-11 14:06:48 +01:00
Michael Drake
211e3ac414 Fix leak. 2012-10-11 13:16:07 +01:00
Michael Drake
167336cce2 Iframes have to have a parent content. 2012-10-11 13:06:51 +01:00
Michael Drake
d9e7d58106 Fix up ripples from urldb change. 2012-10-11 11:20:02 +01:00
Michael Drake
7411356b3b Merge branch 'master' of git://git.netsurf-browser.org/netsurf 2012-10-09 15:38:01 +01:00
Michael Drake
38a9c374a4 Remove unused functions. 2012-10-09 15:26:32 +01:00
Daniel Silverstone
4945eeac2f Revert previous two commits now that we've diagnosed the CI hiccough 2012-10-08 21:59:47 +01:00
Daniel Silverstone
b8af038726 Throw a #warning when the CI build is detected. Sorry for the noise 2012-10-08 21:50:12 +01:00
Michael Drake
9d29c8b48a Merge branch 'master' of git://git.netsurf-browser.org/netsurf 2012-10-08 20:34:34 +01:00
Michael Drake
ce577f4dc4 Port to new urldb API. 2012-10-08 20:34:04 +01:00
Vincent Sanders
5800789df2 trivial docuemntation cleanups to address some of the huge number of docuemntation warnings 2012-10-08 14:52:24 +01:00
Daniel Silverstone
9cb4d00ea9 If you pass CI_BUILD=xxx to make, it will build a CI #xxx into the version string and also mention it in the testament 2012-10-06 18:12:57 +01:00
Vincent Sanders
2bde4a3baa verify path parameter to options loading 2012-10-05 14:26:25 +01:00
Michael Drake
5646528898 Fix cases of returning pointers as bool for GCC 2.95.2. 2012-09-29 23:09:32 +01:00
Michael Drake
153c444454 Move browser_window struct to private header. Places that shouldn't include it do, such as front end code.
Frontends that have been updated to build:
  framebuffer
  gtk
  monkey
  riscos

TODO:
  amiga
  atari
  beos
  cocoa
  windows
2012-08-22 12:22:58 +01:00
Michael Drake
d489908af8 Move scrollbar msg data declaration. 2012-08-22 10:43:50 +01:00
Michael Drake
d307a854fc Clean up includes. 2012-08-22 10:37:22 +01:00
Michael Drake
b134279644 Allow the presence of form inputs to be obtained without knowledge of html content internals. 2012-08-20 22:02:37 +01:00
Michael Drake
014fb9db8d Function for front ends to get debug dump from bw. 2012-08-20 16:05:30 +01:00
Michael Drake
9a82677312 Remove declaration of nonexistent function. 2012-08-20 14:26:43 +01:00
Michael Drake
edef40bbc4 Don't pass struct box to content open. 2012-08-20 14:22:28 +01:00
Michael Drake
a4f796e217 Let *_drop_file_at_point determine if a drop is possible. 2012-08-20 12:12:10 +01:00
Michael Drake
57d2e31e59 Avoid using hlcache_handle for drag saves in html_interaction. Drag save msg with NULL content now means save the content which sends the message. 2012-08-19 12:46:42 +01:00
Michael Drake
65e825c0c5 Handle choice of whether to show status for loading content or request content. 2012-08-19 11:33:37 +01:00
Michael Drake
a2906b3994 Add paste request content message. 2012-08-18 22:19:15 +01:00
Michael Drake
142a0bf859 Add content message for setting mouse pointer. 2012-08-17 10:01:15 +01:00
Michael Drake
e177fa49c2 Move mouse pointer enums to mouse header. 2012-08-17 09:45:15 +01:00
Michael Drake
402de7572d Use new content message for saving of hyperlink target URL. 2012-08-16 23:26:05 +01:00
Michael Drake
d9bd357802 Move browser window related control over mouse pointer out of html content handler. 2012-08-16 22:44:25 +01:00
Michael Drake
35fd2ad7f2 Don't use GUI_POINTERs in content handlers. 2012-08-16 22:21:08 +01:00
Michael Drake
cb9781e057 Move bw time recording to bw layer. 2012-08-16 21:35:42 +01:00
Michael Drake
1919c8e071 Add message for content wanting wanting drag save to start. 2012-08-16 20:20:49 +01:00
Michael Drake
049d5097b8 Don't need to include content.h 2012-08-16 19:36:25 +01:00
Michael Drake
d8872b6bab Remove redundant legacy checking for bw->window. 2012-08-16 16:26:43 +01:00
Michael Drake
6daf6c178d Frame drag start function can take child bw. Don't need to get root bw in html handler. Avoids bw dereferences. 2012-08-16 16:14:15 +01:00
Michael Drake
195a77a4cd Make new function for starting a frames resize and use it. 2012-08-16 15:55:20 +01:00
Michael Drake
c1be4c9e77 Formatting changes. 2012-08-16 15:47:14 +01:00
Michael Drake
7277ce5dfc Remove redundant "action" param. 2012-08-16 15:43:14 +01:00
Michael Drake
83c8e940f8 Don't pass status to frames handler. 2012-08-16 15:38:06 +01:00
Michael Drake
4872bc30b8 Remove redundant scrollbar widget message. 2012-08-16 13:13:25 +01:00
Michael Drake
e5374cc042 Let contents broadcast explicit status messages as well as announce that their internal status has been updated. 2012-08-15 19:00:50 +01:00
Michael Drake
5526d7e6f2 Stop render/search.c from dereferencing bw and remove dependency on html & text contents' bw pointer. 2012-08-14 14:03:54 +01:00
Michael Drake
b51816c222 Clean up search gui callbacks. 2012-08-14 13:41:30 +01:00
Michael Drake
8c12ecd5cd Let browser window handle content scroll request message. 2012-08-13 23:32:58 +01:00
Michael Drake
3f9565753f Make selection_traverse internal to desktop/selection.c. 2012-08-13 17:48:03 +01:00
Michael Drake
86f3e70f1a Tolerate NULL selection context in selection_get_copy. 2012-08-13 17:38:09 +01:00
Michael Drake
e9b036a794 Fix selection string struct init. 2012-08-13 17:21:04 +01:00
Michael Drake
4c945bd16f Function to get copy of selection as string. 2012-08-13 17:09:42 +01:00
Michael Drake
d106091d6e Pass font plot style out to front end clipboard append function. 2012-08-13 14:43:04 +01:00
Michael Drake
68947c377e Obtain font style in copy handler. 2012-08-13 13:55:57 +01:00
Vincent Sanders
d3b4a286f9 check return from lwc operation 2012-08-09 18:00:55 +01:00
Michael Drake
efaca1c1fa Add core function for copy to clipboard, so we don't need to expose render/box.h internals to front ends. 2012-08-02 14:23:42 +01:00
Vincent Sanders
25cdea3351 doxygen serious warning cleanup 2012-07-24 16:19:49 +01:00
Daniel Silverstone
2363301c94 Show refcnt in lwc iterator at netsurf exit. 2012-07-22 20:24:33 +01:00
Michael Drake
2ad24f39da Interned string cleanup, phase 2: Create utils/corestrings and use it in css handler. 2012-07-22 15:48:55 +01:00
John-Mark Bell
1ecc94b187 Use case insensitive string comparisions for nodes 2012-07-15 01:39:25 +01:00
Vincent Sanders
1fc96acf47 hlcache handle is not a content, do not treat it as one - oops 2012-07-07 00:14:50 +01:00
John Mark Bell
05ee98d1d6 Add support for selecting text fragments (based on a patch from Ole Loots)
svn path=/trunk/netsurf/; revision=14016
2012-06-30 10:24:15 +00:00
Daniel Silverstone
8551b9dff0 Move js_finalise(). Fix provided by Ole Loots (mono)
svn path=/trunk/netsurf/; revision=14014
2012-06-29 20:37:32 +00:00
Vincent Sanders
638e135c60 correctly setup window object as global
svn path=/trunk/netsurf/; revision=13987
2012-06-26 18:55:57 +00:00
Chris Young
08f18009c8 Fix typo
svn path=/trunk/netsurf/; revision=13970
2012-06-19 20:00:53 +00:00
Vincent Sanders
49effe103a restructure javascript binding layout to be more explicit
fix html content so it correctly loads all the script tags


svn path=/trunk/netsurf/; revision=13968
2012-06-19 09:35:51 +00:00
Vincent Sanders
4c89c9d5df improve javascript support
svn path=/trunk/netsurf/; revision=13962
2012-06-10 22:17:30 +00:00
Chris Young
9458ed77ab Add support for sending DoNotTrack header.
svn path=/trunk/netsurf/; revision=13928
2012-05-20 16:29:57 +00:00
Michael Drake
387c85ae0b Pass correct width/height values to textarea redraw callback when setting caret position. Reduces flicker.
svn path=/trunk/netsurf/; revision=13851
2012-04-12 10:30:20 +00:00
Michael Drake
87dbbe1260 Fix caret redraw height. Thanks to m0n0.
svn path=/trunk/netsurf/; revision=13850
2012-04-12 09:05:37 +00:00
Michael Drake
ca7ef937ff Clean up blend_colour macro.
svn path=/trunk/netsurf/; revision=13753
2012-03-27 21:34:55 +00:00
Michael Drake
fc8cf634d5 Fix lighten_colour and double_lighten_colour to prevent alpha bleeding into red channel. Make macros clearer.
svn path=/trunk/netsurf/; revision=13742
2012-03-27 11:55:57 +00:00
Michael Drake
fba2ebeee6 Use gui_system_colours.
svn path=/trunk/netsurf/; revision=13741
2012-03-27 11:53:53 +00:00
Michael Drake
57793aae89 Remove gui_colour_* options.
svn path=/trunk/netsurf/; revision=13740
2012-03-27 11:51:18 +00:00
Michael Drake
eb189092c7 Constify param to gui_system_colour_char function.
svn path=/trunk/netsurf/; revision=13737
2012-03-27 10:47:29 +00:00
Michael Drake
8fabc6119c Use gui_ interface to get system colours, rather than nosoption_.
svn path=/trunk/netsurf/; revision=13736
2012-03-27 10:34:38 +00:00
Chris Young
103c8703ec Expose tree_setup_colours so it can be called from frontends if the system
colour scheme changes.


svn path=/trunk/netsurf/; revision=13730
2012-03-26 21:13:00 +00:00
Michael Drake
3434883de7 Use system colours for scrollbar widget. Front ends must be updated to set them.
svn path=/trunk/netsurf/; revision=13706
2012-03-25 18:53:34 +00:00
Michael Drake
7831fda94d Use system colours for treeview. Front ends must be updated to set them.
svn path=/trunk/netsurf/; revision=13705
2012-03-25 18:52:58 +00:00
Daniel Silverstone
ef238c17fe For now, build a shonky libxml tree. Later, rewrite save_complete for libdom
svn path=/trunk/netsurf/; revision=13664
2012-03-25 10:13:53 +00:00
Daniel Silverstone
a195282bfb Include render/box.h
svn path=/trunk/netsurf/; revision=13639
2012-03-24 22:29:31 +00:00
Daniel Silverstone
cb99af0b01 Include render/box.h
svn path=/trunk/netsurf/; revision=13638
2012-03-24 22:28:49 +00:00
Daniel Silverstone
24894214bc Include dom/dom.h where it might be needed
svn path=/trunk/netsurf/; revision=13625
2012-03-24 20:55:22 +00:00
John Mark Bell
72baec3aec Remove bogus dependencies on box.h
svn path=/trunk/netsurf/; revision=13607
2012-03-24 17:42:29 +00:00
Daniel Silverstone
d1194be49f Migrate frame types so that desktop/browser.h does not include render/html.h
svn path=/trunk/netsurf/; revision=13605
2012-03-24 17:09:21 +00:00
Michael Drake
aaf874980e Remove include that's pulled in from browser.h anyway.
svn path=/trunk/netsurf/; revision=13591
2012-03-24 11:02:10 +00:00
Vincent Sanders
67b6f8d4a3 remove unecessary includes
svn path=/trunk/netsurf/; revision=13556
2012-03-23 16:56:43 +00:00
Vincent Sanders
1490b52a6b NetSurf options rework (a=vince r=daniels,jmb)
svn path=/trunk/netsurf/; revision=13548
2012-03-22 09:34:34 +00:00
Michael Drake
9c0c9ecdfe Add browser_window drag type accessor.
svn path=/trunk/netsurf/; revision=13494
2012-02-28 12:20:49 +00:00
Michael Drake
ed9fb931cd Add browser window scale acceser.
svn path=/trunk/netsurf/; revision=13491
2012-02-27 22:43:25 +00:00
Michael Drake
2c7a54013d Constify rect param to browser_window_set_drag_type.
svn path=/trunk/netsurf/; revision=13398
2012-01-11 16:48:59 +00:00
Michael Drake
6794af012e Constify rect param to gui_window_drag_start.
svn path=/trunk/netsurf/; revision=13397
2012-01-11 16:45:17 +00:00
Michael Drake
04ece30fa9 Pass pointer constraints for drag out to front ends. Ensure content scrollbar drag termination always informs the browser window layer that the drag is over.
svn path=/trunk/netsurf/; revision=13395
2012-01-11 14:20:26 +00:00
Michael Drake
c08ee82076 Allow drag handlers to inform browser window layer of any pointer range constraints.
svn path=/trunk/netsurf/; revision=13394
2012-01-10 22:02:19 +00:00
Michael Drake
24b7ae1bf4 Browser window destruction destroys search context.
svn path=/trunk/netsurf/; revision=13390
2012-01-06 23:32:38 +00:00
Michael Drake
767f40dc72 Simplify frameset distribution calcs.
svn path=/trunk/netsurf/; revision=13376
2012-01-06 14:44:01 +00:00
Michael Drake
b4bf069099 Set drag type correctly for page drag.
svn path=/trunk/netsurf/; revision=13375
2012-01-06 12:41:24 +00:00
Vincent Sanders
6ebaecccaf Totaly prefunctry binding to spidermonkey
svn path=/trunk/netsurf/; revision=13360
2012-01-01 21:42:38 +00:00
Vincent Sanders
df18a97143 Change GTK plotting to use cairo surfaces throughout
svn path=/trunk/netsurf/; revision=13354
2011-12-30 00:58:35 +00:00
Michael Drake
075c18b27d Redraw old width after deletion too.
svn path=/trunk/netsurf/; revision=13340
2011-12-24 09:54:51 +00:00
Michael Drake
246ee6dc6f Set background image requirement in core print redraw_context.
svn path=/trunk/netsurf/; revision=13338
2011-12-23 23:17:48 +00:00
Michael Drake
081217a321 Add core options to disable fetch of foreground & background images.
Remove broken background image option from RISC OS front end.

svn path=/trunk/netsurf/; revision=13332
2011-12-23 19:48:09 +00:00
Michael Drake
9a44d4b535 Delete comment that seems incorrect.
svn path=/trunk/netsurf/; revision=13307
2011-12-20 14:51:47 +00:00
Michael Drake
8fc3baa48d When deleting multiple treeview nodes, don't redraw after every node is deleted, only after the whole lot has gone. (Much faster.) Fix redraw to clear bottom of treeview after deleting nodes.
svn path=/trunk/netsurf/; revision=13306
2011-12-20 14:46:29 +00:00
Michael Drake
877988a7ef Add named scroll offset values for page up, page down, top and bottom.
svn path=/trunk/netsurf/; revision=13293
2011-12-18 15:36:38 +00:00
Michael Drake
41ef599293 Fix frame dimension calculations when required sizes don't fit the available space.
svn path=/trunk/netsurf/; revision=13271
2011-12-14 18:31:57 +00:00
Michael Drake
a0bbd87b1e Fix frameset resizing.
svn path=/trunk/netsurf/; revision=13246
2011-12-05 13:49:34 +00:00
John Mark Bell
d2ce167021 Revert r13235 as we can now log URLs for hlcache_handles without an underlying content
svn path=/trunk/netsurf/; revision=13237
2011-12-04 14:56:54 +00:00
John Mark Bell
f2993e6ed0 content_get_url -> hlcache_handle_get_url, content__get_url -> content_get_url
svn path=/trunk/netsurf/; revision=13236
2011-12-04 14:55:23 +00:00
Michael Drake
890bb67993 Can't log an erroring content's URL.
svn path=/trunk/netsurf/; revision=13235
2011-12-04 14:40:47 +00:00
Michael Drake
e2a7600e9a Big wodge of internal browser window scroll fixes, or "rationalisation of browser window scrollbar handling".
svn path=/trunk/netsurf/; revision=13221
2011-12-02 16:10:13 +00:00
Michael Drake
71a8a8118c Currently untested (and unused) "drop file on browser window" handling.
svn path=/trunk/netsurf/; revision=13215
2011-12-01 21:51:04 +00:00
Michael Drake
70c8d94858 Squash use of uninitialised variable warning.
svn path=/trunk/netsurf/; revision=13213
2011-12-01 17:04:35 +00:00
Michael Drake
4856a4c1fb Pass scroll wheel action into contents. Handle scrolling of box scrollbars and iframes.
svn path=/trunk/netsurf/; revision=13200
2011-11-29 17:47:29 +00:00
Michael Drake
64c405c541 New function for sending a scroll request into a core browser window at a given coordinate. Currently handles frames only. TODO: iframes and css overflow scrollable boxes. Front ends should call this to pass scroll wheel actions to the core.
svn path=/trunk/netsurf/; revision=13197
2011-11-29 14:20:25 +00:00
Michael Drake
449e41e306 New function for applying a change in offset to a scrollbar.
svn path=/trunk/netsurf/; revision=13196
2011-11-29 14:16:26 +00:00
Michael Drake
d54e5719d8 Remove redundant break.
svn path=/trunk/netsurf/; revision=13194
2011-11-29 10:43:15 +00:00
Michael Drake
e79c7d2ce8 Fix caret position after deleting selection. Thanks to Ole Loots.
svn path=/trunk/netsurf/; revision=13193
2011-11-29 10:40:30 +00:00
Chris Young
a7ba1b7ccd Fix function usage
svn path=/trunk/netsurf/; revision=13190
2011-11-28 21:10:58 +00:00
Chris Young
d169eefe59 Allow new (blank) hotlist entries to be created in the currently-selected folder
(if there is one) as this gives the user more control where their additions are
being created.
Functionality can be enabled/disabled by passing true/false to
hotlist_add_folder/hotlist_add_entry.

svn path=/trunk/netsurf/; revision=13185
2011-11-27 20:07:26 +00:00
Michael Drake
714f07c48b Rename nsurl_enquire to nsurl_has_component.
svn path=/trunk/netsurf/; revision=13183
2011-11-27 18:32:06 +00:00
John Mark Bell
5970157fc7 Fix bug #3441539: downloads may be created from within frames
svn path=/trunk/netsurf/; revision=13178
2011-11-24 00:13:19 +00:00
John Mark Bell
3f395ec3bf Committing textarea_set_dimensions patch from Ole Loots.
svn path=/trunk/netsurf/; revision=13160
2011-11-21 09:09:28 +00:00
Michael Drake
87fdebb534 Squash warnings.
svn path=/trunk/netsurf/; revision=13148
2011-11-15 11:40:40 +00:00
Chris Young
dd267bd90a Trap RMB and select the node under the pointer if no other node selected
svn path=/trunk/netsurf/; revision=13146
2011-11-11 13:09:12 +00:00
Chris Young
ee58cd0ea0 fix redraw
svn path=/trunk/netsurf/; revision=13143
2011-11-10 14:02:37 +00:00
Chris Young
a8471a9343 Make default folder appear different (redraw seems to be broken at present)
svn path=/trunk/netsurf/; revision=13142
2011-11-10 13:47:24 +00:00
Chris Young
dd6d1ce527 Make default hotlist folder persistent across sessions
svn path=/trunk/netsurf/; revision=13141
2011-11-10 13:07:47 +00:00
Chris Young
0b6e5da662 Allow setting a default folder in the tree for hotlist entries to go into. Frontends
will need to be updated to use hotlist_set_default_folder() if they want to use this
functionality.

svn path=/trunk/netsurf/; revision=13139
2011-11-10 12:22:48 +00:00
Michael Drake
ab45ecd228 Use lwc_string for box->id.
svn path=/trunk/netsurf/; revision=13093
2011-10-29 11:37:05 +00:00
Michael Drake
4abaf2f085 Intern bw->frag_id.
svn path=/trunk/netsurf/; revision=13090
2011-10-28 22:27:50 +00:00
Michael Drake
240fdc5187 Constify frag_id param.
svn path=/trunk/netsurf/; revision=13089
2011-10-28 22:25:00 +00:00
Michael Drake
dcc5a532bc Use nsurl to add fragment for URL bar display.
svn path=/trunk/netsurf/; revision=13088
2011-10-28 19:19:08 +00:00
Michael Drake
67b1dccf55 Increase default mem cache size.
svn path=/trunk/netsurf/; revision=13027
2011-10-10 11:40:26 +00:00
John Mark Bell
50f9420286 Only permit root windows to convert fetch requests to downloads
svn path=/trunk/netsurf/; revision=13026
2011-10-10 08:56:34 +00:00
Michael Drake
265bfdd323 Avoid a strlen.
svn path=/trunk/netsurf/; revision=13004
2011-10-08 12:22:29 +00:00
Michael Drake
f14184ee1d Pedantic style changes.
svn path=/trunk/netsurf/; revision=13001
2011-10-08 10:22:34 +00:00
John Mark Bell
4cd69b8aa9 Improve error handling
svn path=/trunk/netsurf/; revision=12997
2011-10-08 00:06:43 +00:00
John Mark Bell
59fdc29e66 Lose unnecessary logging
svn path=/trunk/netsurf/; revision=12993
2011-10-07 22:31:52 +00:00
Vincent Sanders
2f60ecea61 use the default resource:favicon.ico when a site has no icon of its own
svn path=/trunk/netsurf/; revision=12992
2011-10-07 22:22:15 +00:00
Michael Drake
62111d36be nsurl_ref returns the referenced nsurl.
svn path=/trunk/netsurf/; revision=12991
2011-10-07 22:18:27 +00:00
Michael Drake
2c636bc0a4 Don't fetch favicons for (i)frames.
svn path=/trunk/netsurf/; revision=12986
2011-10-07 21:49:29 +00:00
Vincent Sanders
4c829ae481 use resource:favicon.ico instead of resource:favicon.png
svn path=/trunk/netsurf/; revision=12982
2011-10-07 21:03:45 +00:00
Vincent Sanders
8a293636fb fix favicon default selection for non http(s) urls
svn path=/trunk/netsurf/; revision=12981
2011-10-07 20:47:34 +00:00
Vincent Sanders
33af42360f fix ico handler to actually decode to bitmap when called via get_internal
svn path=/trunk/netsurf/; revision=12980
2011-10-07 19:39:52 +00:00
John Mark Bell
c22373e000 Attempting to download favicons is silly
svn path=/trunk/netsurf/; revision=12979
2011-10-07 19:09:52 +00:00
Vincent Sanders
8f3d6d3649 consolidate code so a single codepath starts the retrival of the favicon
svn path=/trunk/netsurf/; revision=12978
2011-10-07 18:49:16 +00:00
Vincent Sanders
230779848e metadata links stored in contents
browser uses metadata links for favicons

svn path=/trunk/netsurf/; revision=12977
2011-10-07 18:12:47 +00:00
Vincent Sanders
52ad2c1e25 initial favicon support
svn path=/trunk/netsurf/; revision=12975
2011-10-06 23:31:55 +00:00
Michael Drake
9493cec576 Optimise hotlist loading by using nsurl instead of url_normalise. Also convert tree url post-edit normalisation to use nsurl. The treeviews still store urls as strings for now.
svn path=/trunk/netsurf/; revision=12970
2011-10-06 12:31:22 +00:00
John Mark Bell
d5bb9d98e7 Build resource: map at start time
Remove stylesheet url globals -- the core will always use resource:{default,quirks,adblock}.css as appropriate

svn path=/trunk/netsurf/; revision=12949
2011-10-05 08:32:52 +00:00
Michael Drake
898b01e721 More conversion to nsurl. (box->href, object params, imagemaps, (i)frames)
svn path=/trunk/netsurf/; revision=12933
2011-10-03 20:28:29 +00:00
Michael Drake
36eff6da2b Port more internals to nsurl. Front ends may need updating.
svn path=/trunk/netsurf/; revision=12926
2011-10-03 15:56:47 +00:00
Michael Drake
57547f7b1e Make llcache_handle_get_url return a nsurl.
svn path=/trunk/netsurf/; revision=12905
2011-09-28 14:21:35 +00:00
Michael Drake
861f88aa43 Port llcache to nsurl.
svn path=/trunk/netsurf/; revision=12904
2011-09-28 11:26:30 +00:00
John Mark Bell
e7dffc15b1 Fix bug #3413611: results page should be added to history
svn path=/trunk/netsurf/; revision=12878
2011-09-26 08:46:00 +00:00
Michael Drake
c98e37be1f Better caret positioning in scrolled frames.
svn path=/trunk/netsurf/; revision=12851
2011-09-21 21:11:16 +00:00
John Mark Bell
f27d5a3e15 Remove gui_multitask
svn path=/trunk/netsurf/; revision=12828
2011-09-21 00:25:09 +00:00
John Mark Bell
339bed7272 Virtualise content handler finalisation calls. Remove pointless implementations.
svn path=/trunk/netsurf/; revision=12797
2011-09-15 22:47:50 +00:00
Michael Drake
50508a6e75 Ensure root bw and gui window before asking front end to remove caret.
svn path=/trunk/netsurf/; revision=12795
2011-09-15 15:06:20 +00:00
Chris Young
b3bf57ed79 Stop Esc/Ctrl-[ crashing when browser_window selection is NULL
svn path=/trunk/netsurf/; revision=12786
2011-09-11 09:39:44 +00:00
Vincent Sanders
2d33a8f85a Make high level cache, low level cache and image cache all be initialised from passed parameters
Calculate all cache sizes from single memory cache size option and sanity check
have a single global struct to hold all parameters instead of several individual variables

svn path=/trunk/netsurf/; revision=12784
2011-09-10 00:55:39 +00:00
Vincent Sanders
dec633ca8e make high level cache take a parameter structure
make hlcache have a single global container

svn path=/trunk/netsurf/; revision=12779
2011-09-08 12:04:57 +00:00
Michael Drake
7bf7d2d745 Improve resizing frames.
svn path=/trunk/netsurf/; revision=12771
2011-09-07 12:27:37 +00:00
Vincent Sanders
69bee6fb71 move bitmap cache initialisation up a level
improve stats reporting

svn path=/trunk/netsurf/; revision=12770
2011-09-07 09:15:33 +00:00
Michael Drake
a8a28345dd Handle scrolled (i)frames.
svn path=/trunk/netsurf/; revision=12757
2011-09-06 18:39:28 +00:00
Michael Drake
57da2b3af1 Expose contextual content request API to front ends, via browser window layer.
svn path=/trunk/netsurf/; revision=12755
2011-09-06 18:11:10 +00:00
Michael Drake
f9478a4349 Remove old frame dimensions from browser_window struct.
svn path=/trunk/netsurf/; revision=12750
2011-09-06 10:44:47 +00:00
Michael Drake
33ebea90d5 Finish moving frame resizing over to new frame dimensions.
svn path=/trunk/netsurf/; revision=12749
2011-09-06 10:44:00 +00:00
Michael Drake
cd45ca469e Move to new bw dimensions.
svn path=/trunk/netsurf/; revision=12747
2011-09-06 10:24:28 +00:00
Michael Drake
dca97bc8d4 Remove unused browser_window_owner function.
svn path=/trunk/netsurf/; revision=12739
2011-09-05 15:41:35 +00:00
Michael Drake
0401d52f51 Remove gui_window_frame_resize_start() functions.
svn path=/trunk/netsurf/; revision=12738
2011-09-05 15:35:34 +00:00
Michael Drake
34fe2531f2 Remove gui_window_get_browser_window from core. Remove unused implementations from front ends. Rename the GTK front end implementation to nsgtk_get_browser_window and change the GTK front end to use that.
svn path=/trunk/netsurf/; revision=12737
2011-09-05 13:28:17 +00:00
Michael Drake
5be6bd452d Remove gui_window_position_frame() definition from core and remove all implementations from front ends.
svn path=/trunk/netsurf/; revision=12711
2011-09-04 18:20:24 +00:00
Michael Drake
19317c76ba Implement frames in the core.
svn path=/trunk/netsurf/; revision=12709
2011-09-04 17:24:45 +00:00
John Mark Bell
6807fa854d Sniff content types where appropriate.
We never sniff for CSS, nor for non-page artefacts (e.g. treeview icons)

svn path=/trunk/netsurf/; revision=12707
2011-09-04 06:28:09 +00:00
Michael Drake
f878fefeed Optimise out scrollbar action induced redraws with no effect.
svn path=/trunk/netsurf/; revision=12688
2011-08-31 13:04:50 +00:00
Michael Drake
525bf15f73 More robustification.
svn path=/trunk/netsurf/; revision=12678
2011-08-30 18:13:23 +00:00
Michael Drake
401072e305 Make more robust. E.g. zero length scrollbars.
svn path=/trunk/netsurf/; revision=12672
2011-08-27 09:13:23 +00:00
John Mark Bell
5f311d08ef Fix bug #3398114: only unref filename_value if we successfully obtained it
svn path=/trunk/netsurf/; revision=12670
2011-08-25 19:21:09 +00:00
Michael Drake
0794f8c4dd Fix step size for clicks on scrollbar arrow icons.
svn path=/trunk/netsurf/; revision=12669
2011-08-25 18:29:21 +00:00
Michael Drake
bbf77c54b9 Fix scrollbar click coords.
svn path=/trunk/netsurf/; revision=12668
2011-08-25 13:34:48 +00:00
Michael Drake
bbc06d6449 When scrollbar extents are updated, scale current offset appropriately.
svn path=/trunk/netsurf/; revision=12667
2011-08-25 09:21:41 +00:00
Michael Drake
65398660e5 When passing drag on to it's bw, we don't need to do anything if the drag is for the current bw.
svn path=/trunk/netsurf/; revision=12666
2011-08-24 21:53:58 +00:00
Michael Drake
ecff5eaf83 During drags, prevent mouse interaction with other widgets.
svn path=/trunk/netsurf/; revision=12665
2011-08-24 20:44:47 +00:00
Michael Drake
aa0b7ed5d7 Set up page drag start in iframes.
svn path=/trunk/netsurf/; revision=12664
2011-08-24 19:26:45 +00:00
Michael Drake
a47dff15dd Improve browser window drag tracking, so that drags in internal browser windows (iframes) carry on if pointer goes outside the bw that owns the drag.
svn path=/trunk/netsurf/; revision=12663
2011-08-24 18:22:22 +00:00
Michael Drake
24110be310 Fix treeview deselection redraw issue.
svn path=/trunk/netsurf/; revision=12662
2011-08-24 15:03:02 +00:00
Michael Drake
d579559f4d Remove current_redraw_browser global.
svn path=/trunk/netsurf/; revision=12661
2011-08-24 13:48:12 +00:00
Michael Drake
8103377519 Don't need to set current_redraw_browser any more.
svn path=/trunk/netsurf/; revision=12660
2011-08-24 13:45:46 +00:00
Michael Drake
63c07ee28d Core part of search improvement:
+ Split up browser window and content related elements of html & text search.
+ Associate search contexts with contents, rather than browser windows.
+ Remove highlighting of search terms dependency on current_redraw_browser.
+ Fixes issues with search contexts being applied to the wrong content.


svn path=/trunk/netsurf/; revision=12646
2011-08-24 12:29:30 +00:00
Chris Young
4364b280e7 Revert accidental change
svn path=/trunk/netsurf/; revision=12631
2011-07-28 19:29:43 +00:00
Chris Young
0979992f83 Fix memory leak
svn path=/trunk/netsurf/; revision=12630
2011-07-28 19:29:03 +00:00
John Mark Bell
63cc03a5dc Fix GCC 4.6 warnings in core
svn path=/trunk/netsurf/; revision=12629
2011-07-26 21:30:38 +00:00
Michael Drake
16b92d1613 Selection is now subordinate to html and text content types, and disassociated from browser windows. Note: search currently uses hlcache_handle_get_content() to go from bw to h to get at c for search highlighting via selection.
svn path=/trunk/netsurf/; revision=12626
2011-07-26 13:53:42 +00:00
Michael Drake
d97e99b02b Remove unused hlcache_handle from search context.
svn path=/trunk/netsurf/; revision=12625
2011-07-26 10:52:26 +00:00
John Mark Bell
cefcce0197 Shared URL nodes in the treeview actually want to be readonly. They certainly have no business not copying transient data.
svn path=/trunk/netsurf/; revision=12623
2011-07-24 11:40:08 +00:00
John Mark Bell
b0aeeb1e78 Fix double frees on download failure
svn path=/trunk/netsurf/; revision=12621
2011-07-23 18:10:19 +00:00
John Mark Bell
35cf89594d Abort loading content when closing window
svn path=/trunk/netsurf/; revision=12620
2011-07-23 17:53:57 +00:00
Michael Drake
430b63e242 Remove assumption of gui window from search.
svn path=/trunk/netsurf/; revision=12603
2011-07-14 10:27:24 +00:00
Michael Drake
9c91893028 Fix selection for non-gui browser windows (iframes).
Selection no longer uses current_redraw_browser.
Fix long-standing selection bugs on platforms that use action on release behaviour.

svn path=/trunk/netsurf/; revision=12598
2011-07-13 13:20:26 +00:00
Michael Drake
637f726a13 Scale caret height in core
svn path=/trunk/netsurf/; revision=12596
2011-07-11 10:33:43 +00:00
John Mark Bell
b34502af82 Refactor http utilities
svn path=/trunk/netsurf/; revision=12595
2011-07-08 08:38:17 +00:00
Michael Drake
bc91b72c56 Clean up text input code. Now desktop/textinput.{c|h} is concerend with browser windows only. HTML content specific stuff moved to render/textinput.{c|h} and disassociated from browser windows.
svn path=/trunk/netsurf/; revision=12587
2011-07-07 17:50:04 +00:00
Michael Drake
e2681caf9c Reduce forward declaration of functions.
svn path=/trunk/netsurf/; revision=12586
2011-07-07 11:50:45 +00:00
Michael Drake
e4a0bebd27 Pass struct rect to browser_window_update_box(), rather than union content_msg_data.
svn path=/trunk/netsurf/; revision=12584
2011-07-06 15:34:49 +00:00
Michael Drake
727aa61bb6 Pass struct rect to gui_window_update_box(), rather than union content_msg_data.
svn path=/trunk/netsurf/; revision=12574
2011-07-06 12:39:26 +00:00
Michael Drake
865af5f235 Fix update_box coords when issued from scaled iframe.
svn path=/trunk/netsurf/; revision=12573
2011-07-06 11:58:09 +00:00
Michael Drake
5412ae7251 Use prescribed method for discovering browser window position.
svn path=/trunk/netsurf/; revision=12572
2011-07-06 10:30:58 +00:00
Michael Drake
9f2ea3be4c Iframe scrollbars.
svn path=/trunk/netsurf/; revision=12571
2011-07-05 20:13:28 +00:00
Michael Drake
1f9b970f57 Set focus browser_window in place_caret.
svn path=/trunk/netsurf/; revision=12570
2011-07-04 12:15:21 +00:00
Michael Drake
a6d4f9cb30 Function to find out if browser window has a selection. Front ends should use this API. RISC OS front end updated.
svn path=/trunk/netsurf/; revision=12556
2011-07-02 16:43:20 +00:00
Michael Drake
3f485e083d Minor selection changes.
svn path=/trunk/netsurf/; revision=12555
2011-07-02 16:12:00 +00:00
Michael Drake
dde300ea7d Set selection browser window as before, for now.
svn path=/trunk/netsurf/; revision=12553
2011-07-02 12:18:04 +00:00
Chris Young
4147c185c8 When launching multiple URLs from a treeview, allow to open one window with multiple
tabs instead of one window per URL.  Make compatible frontends do this by default.

svn path=/trunk/netsurf/; revision=12552
2011-07-02 11:41:06 +00:00
Michael Drake
f9566b6405 Set/unset selection context's browser window on content_open/content_close.
svn path=/trunk/netsurf/; revision=12551
2011-07-01 11:16:43 +00:00
Michael Drake
9c4b9f5c94 Fix up RISC OS front end.
svn path=/trunk/netsurf/; revision=12545
2011-06-30 17:51:58 +00:00
Michael Drake
eddae6af06 Remove plotter table global. Pass a redraw context around redraw functions. Knockout could be handled better. Note: untested on most front ends.
svn path=/trunk/netsurf/; revision=12543
2011-06-30 15:48:07 +00:00
Michael Drake
416a6452d5 Function to get root browser window.
svn path=/trunk/netsurf/; revision=12531
2011-06-28 21:09:57 +00:00
Michael Drake
3128ecf2a5 Unify content_redraw params in content_redraw_data struct. Core and RISC OS content handlers updated.
svn path=/trunk/netsurf/; revision=12529
2011-06-28 20:17:39 +00:00
Michael Drake
b57c2e0bee Move rectangle type to utils/types.h
svn path=/trunk/netsurf/; revision=12525
2011-06-28 15:18:48 +00:00
Michael Drake
25e7c86fb7 Make search_term_highlighted a core function.
svn path=/trunk/netsurf/; revision=12524
2011-06-28 12:30:56 +00:00
Michael Drake
5c9155e606 Core form select widget now associated with HTML contents. Don't use current_redraw_browser for select widget redraw. Fixes core select widget in iframes.
svn path=/trunk/netsurf/; revision=12522
2011-06-28 11:15:39 +00:00
Michael Drake
c9fe1b604e HTML contents manage box scrollbars, rather than browser_windows.
svn path=/trunk/netsurf/; revision=12519
2011-06-27 22:21:15 +00:00
Michael Drake
a06bde0232 Remove obsolete comment.
svn path=/trunk/netsurf/; revision=12517
2011-06-27 18:35:39 +00:00