Commit Graph

168 Commits

Author SHA1 Message Date
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 4747bbbfb2 HTML drags now go via content msg. 2013-02-08 13:22:53 +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 d9e7d58106 Fix up ripples from urldb change. 2012-10-11 11:20:02 +01:00
Michael Drake 38a9c374a4 Remove unused functions. 2012-10-09 15:26:32 +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
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 d307a854fc Clean up includes. 2012-08-22 10:37:22 +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 a4f796e217 Let *_drop_file_at_point determine if a drop is possible. 2012-08-20 12:12:10 +01:00
Michael Drake e177fa49c2 Move mouse pointer enums to mouse header. 2012-08-17 09:45:15 +01:00
Michael Drake 35fd2ad7f2 Don't use GUI_POINTERs in content handlers. 2012-08-16 22:21:08 +01:00
Vincent Sanders 25cdea3351 doxygen serious warning cleanup 2012-07-24 16:19:49 +01:00
Vincent Sanders 4c89c9d5df improve javascript support
svn path=/trunk/netsurf/; revision=13962
2012-06-10 22:17:30 +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 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 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
Vincent Sanders 6ebaecccaf Totaly prefunctry binding to spidermonkey
svn path=/trunk/netsurf/; revision=13360
2012-01-01 21:42:38 +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 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 4abaf2f085 Intern bw->frag_id.
svn path=/trunk/netsurf/; revision=13090
2011-10-28 22:27:50 +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
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 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 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 dca97bc8d4 Remove unused browser_window_owner function.
svn path=/trunk/netsurf/; revision=12739
2011-09-05 15:41:35 +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 d579559f4d Remove current_redraw_browser global.
svn path=/trunk/netsurf/; revision=12661
2011-08-24 13:48:12 +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
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 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 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 9f2ea3be4c Iframe scrollbars.
svn path=/trunk/netsurf/; revision=12571
2011-07-05 20:13:28 +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 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 b57c2e0bee Move rectangle type to utils/types.h
svn path=/trunk/netsurf/; revision=12525
2011-06-28 15:18:48 +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 625c685f41 browser_window_mouse_drag_end is private now, and can be removed once contents handle all their own interaction.
svn path=/trunk/netsurf/; revision=12516
2011-06-27 18:19:47 +00:00