Commit Graph

129 Commits

Author SHA1 Message Date
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
Michael Drake
23eea5de9f Fix bw->drag_type to be aware of remaining drag types.
svn path=/trunk/netsurf/; revision=12514
2011-06-27 17:29:49 +00:00
Michael Drake
5a4c8916ef If iframes are reformatted due to containing document reflow, don't need to redraw them since they will be redrawn when the containing document is redrawn. Make iframe handling more robust.
svn path=/trunk/netsurf/; revision=12497
2011-06-24 09:30:33 +00:00
Michael Drake
543a08ca22 Delete redundant function declaration.
svn path=/trunk/netsurf/; revision=12480
2011-06-15 13:46:41 +00:00
Michael Drake
53f4da3420 First pass at core iframes. Currently lacking scrollbars.
svn path=/trunk/netsurf/; revision=12474
2011-06-14 20:00:18 +00:00
Michael Drake
ac447fc293 s/scroll/scrollbar/ and improve scrollbar widget comments.
svn path=/trunk/netsurf/; revision=12363
2011-05-09 22:49:17 +00:00
Daniel Silverstone
93e9bfe323 Shunt the schedule function definitions to desktop/schedule.h. Shunt the hlcache/llcache to using schedule to get their cleanups run.
svn path=/trunk/netsurf/; revision=12029
2011-03-13 18:26:46 +00:00
Daniel Silverstone
1ba5d85c1a Make schedule/schedule_remove use a typedef for their callback argument
svn path=/trunk/netsurf/; revision=11985
2011-03-12 19:23:40 +00:00
Michael Drake
a66575dfeb Remove thumbnail_create() from browser.h. Make RO front end use the core thumbnail_redraw function. Make other front ends include the right header for thumbnail_create().
svn path=/trunk/netsurf/; revision=11716
2011-02-19 22:17:54 +00:00
John Mark Bell
f42ed976e5 Constify
svn path=/trunk/netsurf/; revision=11680
2011-02-14 19:17:08 +00:00
Michael Drake
5cefc9584a Pass clip rect to browser_window_redraw as pointer.
svn path=/trunk/netsurf/; revision=11672
2011-02-13 23:04:26 +00:00
Michael Drake
62bc7706d9 Update browser_window_redraw comment.
svn path=/trunk/netsurf/; revision=11668
2011-02-13 17:06:40 +00:00
Michael Drake
2d69afeec6 Fix broken plotting on RO with locked contents and buffered rendering.
svn path=/trunk/netsurf/; revision=11667
2011-02-13 16:44:32 +00:00
Michael Drake
fedcbf6656 Pass clip rect to browser_window_redraw as struct.
svn path=/trunk/netsurf/; revision=11648
2011-02-11 19:36:33 +00:00
Vincent Sanders
9a183018ea improve browser_window_redraw width and height handling
svn path=/trunk/netsurf/; revision=11642
2011-02-11 00:14:22 +00:00
Vincent Sanders
2a8e8a5cf1 add browser_window_redraw() method to make content_redraw calls from frontends common RISC OS, atari, amiga and beos have not been updated
svn path=/trunk/netsurf/; revision=11640
2011-02-10 22:35:41 +00:00
Michael Drake
8e07f9388c More useful comment about what bw->scroll is for.
svn path=/trunk/netsurf/; revision=10936
2010-11-03 16:07:30 +00:00
Michael Drake
b010a25771 + Refactor input handling from browser window code into content
handlers.
+ Disentangle all box tree manipulation from browser window
  code and put it where it belongs.
+ Move other content specific and other irrelevant code from
  browser window handling to appropriate places.
+ Put mouse state enum in new mouse header, since it's not just
  used by browser window code, and it is used by treeview
  windows on the treeview branch.

svn path=/trunk/netsurf/; revision=10561
2010-06-04 09:35:08 +00:00
Vincent Sanders
2fd1476f8c The schedule_run function is only called by the frontends so remove it from the core header and add its definition to the frontend headers.
Alter the framebuffer schedule_run to return the time untill the next event.


svn path=/trunk/netsurf/; revision=10512
2010-04-28 22:39:37 +00:00
Michael Drake
f310569df4 Calling a hlcache_handle "content" is confusing.
svn path=/trunk/netsurf/; revision=10266
2010-04-07 12:09:38 +00:00
Daniel Silverstone
270ef59a98 Merge jmb/new-cache; r=dsilvers,rs=vince
svn path=/trunk/netsurf/; revision=10180
2010-03-28 12:56:39 +00:00
Vincent Sanders
cf322aeda3 Review fixups from Daniel Silverstone
Ensure status text statistics are initialised
Fix documentation and indentation of status text variables.

svn path=/trunk/netsurf/; revision=9968
2010-02-11 10:58:26 +00:00
Vincent Sanders
1537981da5 cache the status text to reduce teh number of window status update calls to teh frontend
svn path=/trunk/netsurf/; revision=9965
2010-02-10 23:37:06 +00:00
John Mark Bell
355799ce0b Merge branches/MarkieB/gtkmain to trunk.
svn path=/trunk/netsurf/; revision=9729
2009-12-17 23:55:02 +00:00
Michael Drake
13afa0ff4c Merge Paul Blokus' selectscroll branch. Adds core select menu widget for forms and core scrollbar widget.
svn path=/trunk/netsurf/; revision=9289
2009-08-14 10:37:33 +00:00
Michael Drake
f18904ca67 Indicate activity with the progress pointer for a second after you click a link and as the "auto" pointer while stuff is loading.
svn path=/trunk/netsurf/; revision=8525
2009-07-14 15:53:12 +00:00
John Mark Bell
5feb7018c5 Replace parent_url with a pointer to the parent content.
svn path=/trunk/netsurf/; revision=8428
2009-07-10 00:26:37 +00:00
John Mark Bell
ca96353d9f Merged revisions 7764-7977,7979-8058 via svnmerge from
svn://svn.netsurf-browser.org/branches/paulblokus/textinput

........
  r7769 | paulblokus | 2009-06-11 22:26:16 +0100 (Thu, 11 Jun 2009) | 4 lines
  
  replace global history window with an empty window for future tests
  add the necessary files
  first lines ported
........
  r7771 | paulblokus | 2009-06-11 23:51:46 +0100 (Thu, 11 Jun 2009) | 1 line
  
  more functions
........
  r7772 | paulblokus | 2009-06-12 02:07:36 +0100 (Fri, 12 Jun 2009) | 1 line
  
  redraw working
........
  r7777 | paulblokus | 2009-06-12 11:35:45 +0100 (Fri, 12 Jun 2009) | 3 lines
  
  plotter fix
  make use of the provided clipping rectangle
........
  r7781 | paulblokus | 2009-06-12 16:26:51 +0100 (Fri, 12 Jun 2009) | 3 lines
  
  callbacks for taxtarea to request a [caret]redraw
  basic caret handling drawing
........
  r7782 | paulblokus | 2009-06-12 22:36:50 +0100 (Fri, 12 Jun 2009) | 1 line
  
  single character insertion
........
  r7783 | paulblokus | 2009-06-12 22:41:37 +0100 (Fri, 12 Jun 2009) | 1 line
  
  single character insertion
........
  r7784 | paulblokus | 2009-06-12 23:55:40 +0100 (Fri, 12 Jun 2009) | 3 lines
  
  fixed caret clipping
  arrows, delete and backspace
........
  r7812 | paulblokus | 2009-06-16 14:55:41 +0100 (Tue, 16 Jun 2009) | 1 line
  
  remove bug causing NS hang on \n in textarea
........
  r7816 | paulblokus | 2009-06-16 16:29:48 +0100 (Tue, 16 Jun 2009) | 1 line
  
  Enter, Home, End keys
........
  r7817 | paulblokus | 2009-06-16 16:56:16 +0100 (Tue, 16 Jun 2009) | 1 line
  
  Ctrl + Home/End
........
  r7818 | paulblokus | 2009-06-16 17:16:51 +0100 (Tue, 16 Jun 2009) | 1 line
  
  redraw caret only on caret moves
........
  r7821 | paulblokus | 2009-06-16 20:18:30 +0100 (Tue, 16 Jun 2009) | 1 line
  
  line end/start delete
........
  r7822 | paulblokus | 2009-06-16 23:43:42 +0100 (Tue, 16 Jun 2009) | 1 line
  
  selection drawing + select all
........
  r7823 | paulblokus | 2009-06-17 02:31:07 +0100 (Wed, 17 Jun 2009) | 3 lines
  
  auto scrolling on caret moves
  clear selection
........
  r7845 | paulblokus | 2009-06-18 17:35:03 +0100 (Thu, 18 Jun 2009) | 1 line
  
  page up/down
........
  r7846 | paulblokus | 2009-06-18 17:38:45 +0100 (Thu, 18 Jun 2009) | 1 line
  
   remove unnecessary fix
........
  r7847 | paulblokus | 2009-06-18 18:00:16 +0100 (Thu, 18 Jun 2009) | 1 line
  
  clipping fixes
........
  r7849 | paulblokus | 2009-06-18 18:21:02 +0100 (Thu, 18 Jun 2009) | 1 line
  
  scroll fix
........
  r7850 | paulblokus | 2009-06-18 18:45:13 +0100 (Thu, 18 Jun 2009) | 1 line
  
  simplified redraw request logic
........
  r7855 | paulblokus | 2009-06-18 19:56:24 +0100 (Thu, 18 Jun 2009) | 1 line
  
  front end passing mouse events
........
  r7858 | paulblokus | 2009-06-18 22:18:39 +0100 (Thu, 18 Jun 2009) | 3 lines
  
  drag selection
  bug fixes
........
  r7860 | paulblokus | 2009-06-18 23:32:39 +0100 (Thu, 18 Jun 2009) | 3 lines
  
  take selection into account on keypress of different types
  a few bugs fixed
........
  r7876 | paulblokus | 2009-06-19 13:43:07 +0100 (Fri, 19 Jun 2009) | 3 lines
  
  pango nsfont_split fix
  a few textarea fixes
........
  r7879 | paulblokus | 2009-06-19 17:33:10 +0100 (Fri, 19 Jun 2009) | 4 lines
  
  newline handling seems to work this way
  clear selection on mouse click
  more bug fixes
........
  r7880 | paulblokus | 2009-06-19 18:16:27 +0100 (Fri, 19 Jun 2009) | 3 lines
  
  no caret option
  selection follows drag
........
  r7883 | paulblokus | 2009-06-19 19:08:44 +0100 (Fri, 19 Jun 2009) | 3 lines
  
  o width selection bug fix
  caret at correct side of drag selection
........
  r7918 | paulblokus | 2009-06-22 21:01:28 +0100 (Mon, 22 Jun 2009) | 3 lines
  
  fix caret positioning at line end
  CR removal in input methods
........
  r7919 | paulblokus | 2009-06-22 21:34:39 +0100 (Mon, 22 Jun 2009) | 1 line
  
  fix crash on 0 length text
........
  r7926 | paulblokus | 2009-06-23 09:53:56 +0100 (Tue, 23 Jun 2009) | 3 lines
  
  change LF into spaces for single line widget
  text normalisation at one place
........
  r7931 | paulblokus | 2009-06-23 10:51:25 +0100 (Tue, 23 Jun 2009) | 1 line
  
  cleanup
........
  r7933 | paulblokus | 2009-06-23 11:17:22 +0100 (Tue, 23 Jun 2009) | 1 line
  
  fix selection draw
........
  r7935 | paulblokus | 2009-06-23 11:41:30 +0100 (Tue, 23 Jun 2009) | 1 line
  
  guard readonly
........
  r7942 | paulblokus | 2009-06-24 08:19:39 +0100 (Wed, 24 Jun 2009) | 1 line
  
  applied changes suggested by jmb
........
  r7943 | paulblokus | 2009-06-24 09:04:49 +0100 (Wed, 24 Jun 2009) | 1 line
  
  little fixes
........
  r7945 | paulblokus | 2009-06-24 12:50:14 +0100 (Wed, 24 Jun 2009) | 1 line
  
  correct line length and wrapping
........
  r7947 | paulblokus | 2009-06-24 14:32:36 +0100 (Wed, 24 Jun 2009) | 3 lines
  
  fixed page up/down broken in last commit
  changed logic for caret positioning on soft breaks
........
  r7949 | paulblokus | 2009-06-24 16:31:42 +0100 (Wed, 24 Jun 2009) | 1 line
  
  remove temporary/test code
........
  r7975 | paulblokus | 2009-06-25 16:00:46 +0100 (Thu, 25 Jun 2009) | 1 line
  
  changes suggested by jmb
........
  r7976 | paulblokus | 2009-06-25 16:33:23 +0100 (Thu, 25 Jun 2009) | 1 line
  
  added ro_ prefix to RISC OS textarea code
........

svn path=/trunk/netsurf/; revision=8060
2009-06-27 13:59:25 +00:00
John Mark Bell
2531079866 Revert r6973. Apparently, it causes loads of problems.
svn path=/trunk/netsurf/; revision=7047
2009-04-05 19:17:24 +00:00
John Mark Bell
b230423267 Change URL bar contents when switching tabs in GTK frontend.
Remove fixed-size buffer from core URL string handling.

Credit: Mark Benjamin.

svn path=/trunk/netsurf/; revision=6998
2009-03-30 15:46:26 +00:00
Michael Drake
0a7e10819b Add functions for checking if back/forward/stop/reload actions are currently available for a given browser window.
svn path=/trunk/netsurf/; revision=6827
2009-03-23 22:22:30 +00:00
John Mark Bell
58cd142338 Remember the scroll position in the history, so that it's maintained when going back. (credit: Paweł Blokus)
svn path=/trunk/netsurf/; revision=6793
2009-03-17 12:26:41 +00:00
Vincent Sanders
cbf07e1bc3 make schedule_run return if it has active jobs to schedule
svn path=/trunk/netsurf/; revision=6447
2009-02-11 22:33:55 +00:00
Adrian Lees
34fdcf3aec And these files too, please
svn path=/trunk/netsurf/; revision=6297
2009-01-30 05:07:07 +00:00
Rob Kendrick
afdf592637 Merge Mike's tabs changes. Still needs some cleaning.
svn path=/trunk/netsurf/; revision=5189
2008-08-24 10:31:38 +00:00
Michael Drake
2319b6032e + Change core to handle different front end click behaviour
styles. (Act on mouse button press or on button release.)
+ Click hold on CSS scrollbar arrows now pauses before
  starting to auto-repeat.
+ Click hold on scrollbar wells will now auto-repeat.

svn path=/trunk/netsurf/; revision=4268
2008-06-06 13:58:56 +00:00
John Mark Bell
b15a6af3d2 s/wchar_t/uint32_t/g
We always assumed that the keycode type was 32bits wide, anyway. wchar_t isn't guaranteed to be that big, so isn't remotely portable.

svn path=/trunk/netsurf/; revision=4165
2008-05-16 09:37:22 +00:00
Daniel Silverstone
f025f23c52 Remove the old and crap gesture core
svn path=/trunk/netsurf/; revision=3537
2007-09-14 18:33:32 +00:00
Vincent Sanders
2f864eeecc Update all source code file headers to reflect GPL version 2 only and contain appropriate licence text
svn path=/trunk/netsurf/; revision=3486
2007-08-08 16:16:03 +00:00
John Mark Bell
cc684469df Fix division by 0 caused by uninitialised scale value.
Break out initialisation of common parts of struct browser_window into their own function.

svn path=/trunk/netsurf/; revision=3481
2007-08-07 07:58:04 +00:00