Commit Graph

1219 Commits

Author SHA1 Message Date
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