Commit Graph

482 Commits

Author SHA1 Message Date
Michael Drake
49bed056dd Make browser_window_navigate (un)verifiable flag match browser_window_create. 2014-02-10 22:40:04 +00:00
Michael Drake
af014bce99 Allow tab creation without history clone. Changes browser_window_create and browser_window_navigate flags. 2014-02-10 14:08:45 +00:00
Michael Drake
ea79e85fcd Clean up gui_window creation API. 2014-02-09 13:07:39 +00:00
Michael Drake
3d7cd77982 Simplify local history interface. 2014-02-08 22:43:54 +00:00
Michael Drake
2cd2e5b054 Use API to get scale. 2014-02-08 20:50:14 +00:00
Michael Drake
2c727e03d0 Use API to get bw extents. 2014-02-08 20:18:55 +00:00
Vincent Sanders
3455d66921 reduce desktop/browser.h unecessary includes 2014-02-03 17:56:24 +00:00
Vincent Sanders
886a3106db move utf8 local conversion operations to table 2014-02-01 22:17:36 +00:00
Vincent Sanders
427f127fa9 remove further extraneous includes 2014-02-01 14:23:58 +00:00
Vincent Sanders
db33103fa3 clean up desktop/gui.h include usage 2014-01-29 21:35:53 +00:00
Vincent Sanders
7cb0619fe8 fix dumb typos from utf8 error return refactor 2014-01-28 22:39:25 +00:00
Vincent Sanders
654da2ffb5 move utf8 conversion routines to use nserror instead of their own error enum 2014-01-28 21:40:13 +00:00
Vincent Sanders
8ce0a10670 move path_to_url and url_to_path to fetch operation table 2014-01-25 23:01:32 +00:00
Vincent Sanders
69778e2945 move framebuffer fetch operations to their own module 2014-01-24 08:39:01 +00:00
Vincent Sanders
0475693394 create table for fetcher operations and move all operations into it 2014-01-23 00:00:18 +00:00
Vincent Sanders
a2247a75a3 cleanup copyright headers and some doc comments 2014-01-16 13:24:14 +00:00
Vincent Sanders
d47fed4524 move 401 login into operation table 2014-01-16 00:52:17 +00:00
Vincent Sanders
38cb39339a move filename_from_path and path_add_part into gui operation tables 2014-01-16 00:01:25 +00:00
Vincent Sanders
bd065d4a43 split browser gui operations up 2014-01-15 19:37:05 +00:00
Vincent Sanders
68eaec5cb4 complete move of remaining core gui functions 2014-01-15 12:28:55 +00:00
Vincent Sanders
0075eab194 move remaining gui operations to table 2014-01-14 23:31:54 +00:00
Vincent Sanders
8dfe225153 move download operations to download table 2014-01-14 16:04:02 +00:00
Vincent Sanders
d18c8ed452 move teh final optional window operations into the table 2014-01-13 22:54:19 +00:00
Vincent Sanders
e82d83f184 move four more optional window operations to table 2014-01-13 14:51:27 +00:00
Vincent Sanders
d70e371cd9 move two more mandantory window operations to table 2014-01-13 11:38:35 +00:00
Vincent Sanders
7227c29bba move window scroll getter and setter into operations table 2014-01-13 01:08:15 +00:00
Vincent Sanders
5a962586fb move mandantory window update and redraw operations into table 2014-01-12 23:50:54 +00:00
Vincent Sanders
4b49b4ac77 move more optional window operations into table including removing unused hide_pointer operation altogether 2014-01-12 22:55:26 +00:00
Vincent Sanders
b7736bae2f split gui operations into core and window and move more operations into tables 2014-01-12 17:07:34 +00:00
Vincent Sanders
56bb9582b1 move set title, set url, start and stop throbber window operations to gui table 2014-01-12 10:27:41 +00:00
Vincent Sanders
c8496df3df move window creation and destruction into table 2014-01-11 22:34:12 +00:00
Vincent Sanders
d3c392c3d3 Initial conversion of netsurf gui to callback vtable 2014-01-11 14:20:30 +00:00
Daniel Silverstone
f97c1fc605 Add some more frontend stubs and fix up some others 2014-01-05 17:37:21 +00:00
Vincent Sanders
f7916866e3 remove all references to using libMNG 2014-01-04 17:07:11 +00:00
Michael Drake
6ca908a192 Use libnsfb's tiled bitmap function, instead of tiling ourselves. 2013-10-28 23:05:48 +00:00
Michael Drake
10bc47a709 Register destruction function for browser widget. 2013-10-23 22:17:36 +01:00
Michael Drake
4fa77f9686 Add font_finalise. 2013-10-23 21:32:16 +01:00
Michael Drake
897cbb7df1 Free font face id descriptors. 2013-10-23 21:25:52 +01:00
Michael Drake
555924a73d Call font finaliser on quit. 2013-10-23 21:24:55 +01:00
Michael Drake
e1a96ecfe1 Register destruction callback to free text widget text. 2013-10-23 19:58:20 +01:00
Michael Drake
97aceb5a68 Pass KEY_UNDO and KEY_REDO to core. (Currently ignored.) 2013-09-30 21:38:11 +01:00
Michael Drake
fe67bd95d7 There must be a next widget for swap_siblings. 2013-09-05 14:24:17 +01:00
Michael Drake
cf8ffa412a Remove old hotlist, cookies, and history_global_core modules.
New versions of expand/collapse node functions for these modules aren't yet implemented.
2013-09-02 22:41:04 +01:00
Michael Drake
4473f4b8a8 Remove tree icon_name globals from all the front ends. 2013-09-02 16:39:46 +01:00
Michael Drake
5c7ca39ada Remove tree_url_node module. Had to disable treeview scanning in amiga and cocoa front ends. Amiga front end very likely broken. 2013-09-02 14:17:09 +01:00
Michael Drake
c56560c2ac Suppress most fbtk logging when FBTK_LOGGING is unset. 2013-08-29 12:28:37 +01:00
Michael Drake
a1eb1dec73 LOG macro terminates line itself. 2013-08-29 12:27:47 +01:00
Michael Drake
5ca6862a87 FONT_SIZE_SCALE is for preserving fractional parts, so use it properly. 2013-08-29 12:04:37 +01:00
Michael Drake
68078d7ea7 Fix up for cookies_old rename. 2013-07-22 10:21:37 +01:00
Michael Drake
3f45e53539 s/history_core/local_history/ 2013-07-10 11:55:42 +01:00
Vincent Sanders
bccaa05fdb add finalisation to options and document the API better 2013-06-01 16:09:39 +01:00
Vincent Sanders
df62a917da move framebuffer to new options API 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
Vincent Sanders
a5355ec557 change all core and frontend options headers to new format 2013-05-28 14:16:10 +01:00
Vincent Sanders
35dacc3671 move the logging initialisation out to be call by frontends
This allows each frontend to pass a distinct callback to configure the
output file stream appropriately for their use.
2013-05-23 11:50:57 +01:00
Michael Drake
0a91a057e9 Add support for delete key. 2013-05-12 19:49:47 +01:00
Michael Drake
631265ef6b Front ends have no reason to include desktop/selection.h now. 2013-05-10 12:16:05 +01:00
Michael Drake
9644d0594c Remove struct selection from gui_drag_save_selection, so gui.h doesn't need it now. 2013-05-10 11:54:26 +01:00
Vincent Sanders
98369b74e2 fixup message splitting with updated tool 2013-05-02 09:24:18 +01:00
Michael Drake
ad0e79d85c More appropriate system colours. 2013-04-09 15:43:34 +01:00
Michael Drake
fe1a40cbf4 Allow override of default window width/height individually. 2013-04-09 14:38:07 +01:00
Michael Drake
9178ede40b Avoid double/triple click stuff for scrollwheeling. 2013-03-28 10:13:41 +00:00
Michael Drake
037beb44fb Pass caret clip rect out to front ends. (Nothing actually using them yet.) 2013-03-05 22:54:51 +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
15e61743a3 Add button to quit by default. Not having it confuses people who run it as intended on the framebuffer, and it can still be turned off should somone wish to. 2013-02-12 20:18:01 +00:00
Michael Drake
c2584d3f8b Add support for double and triple clicks. 2013-02-12 14:22:09 +00:00
Michael Drake
7af0614202 Make delete line key enum value name less missleading. (Doesn't cut to clipboard.) 2013-02-11 10:34:06 +00:00
Michael Drake
3148f8a6c3 Make compatible with new nsfont_split expectations. Only splits on spaces. 2013-02-10 18:26:59 +00:00
Michael Drake
fc9199f14e Update framebuffer front end to implement new clipboard API. 2013-01-08 17:03:12 +00:00
Vincent Sanders
484fa8b110 move common include path setup to core Makefile 2012-12-20 15:27:07 +00:00
Vincent Sanders
c87cbe5655 split target defaults out 2012-12-13 19:26:24 +00:00
Vincent Sanders
45906b9dc2 make macro name more correct 2012-12-13 16:31:05 +00:00
John-Mark Bell
617d655c7b Remove libxml 2012-11-10 00:11:57 +00:00
Rob Kendrick (fatigue)
075e4336d8 Use FatMessages in framebuffer frontend 2012-11-04 11:44:55 +00:00
John-Mark Bell
f824ab8af4 Port save complete to libdom. 2012-11-03 23:19:45 +00:00
Vincent Sanders
5097223570 add javascript build support to framebuffer 2012-10-22 16:37:58 +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
d88a839937 Remove suspension of bmp/gif images. It's completely redundant with the convert on demand core image cache. 2012-10-14 20:03:18 +01:00
Michael Drake
5f7a3a7ada Widget can't be NULL. 2012-10-11 14:07:22 +01:00
Michael Drake
d9e7d58106 Fix up ripples from urldb change. 2012-10-11 11:20:02 +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
761c42840d Install netsurf.png too. 2012-09-29 22:15:32 +01:00
Michael Drake
19c8654f77 Add missing resources to intall target. 2012-09-29 22:06:26 +01:00
Michael Drake
84e1bf89d9 Add OSK icon. 2012-09-28 19:52:21 +01:00
Vincent Sanders
e237ebac8f Split install and package targets.
Install target is for installing on the local machine and package generates a package
2012-08-23 11:46:31 +01:00
Vincent Sanders
7604b76161 make the framebuffer resource path setting better 2012-08-22 16:58:11 +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
d106091d6e Pass font plot style out to front end clipboard append function. 2012-08-13 14:43:04 +01:00
Michael Drake
53a379ea45 Squash warning. 2012-08-10 12:17:34 +01:00
Michael Drake
eee26ed867 Squash set but unused variable warning. 2012-08-10 12:09:53 +01:00
Michael Drake
126141a52c Ensure text is at the right height for Freetype and Internal fonts. 2012-08-08 14:04:57 +01:00
Michael Drake
36d3056526 Grab pointer during drag. 2012-08-02 16:29:37 +01:00
Michael Drake
408dd00ed4 Use selection_copy_to_clipboard instead of peering at core innards. 2012-08-02 14:25:19 +01:00
Michael Drake
1d827d2cf3 Fix click travel tolerance calc. Has to travel more than 5px to become drag. 2012-08-02 12:06:47 +01:00
Michael Drake
c0bfe7dfdf Fix freetype nsfont_position_in_string to return nearest, rather than next. 2012-08-01 23:58:54 +01:00
Michael Drake
a92f2aa0a6 Simple clipboard support. Only used within browser window. 2012-08-01 23:45:09 +01:00
Michael Drake
75212235f8 Cleanup drag end. 2012-08-01 22:21:36 +01:00
Michael Drake
40a754a362 Convert move pointer during build and use it for page drag-scroll. 2012-08-01 21:48:16 +01:00
Michael Drake
30bc438ab0 Pass drags to core. Enables page drag-scrolling, text selection, frames scrollbars, etc. 2012-08-01 21:30:24 +01:00
Michael Drake
b238791002 Use enum instead of magic numbers for tracking key modifier states. Pass special keys to core (e.g. WORD_LEFT, SELECT_ALL, etc). 2012-08-01 14:47:20 +01:00
Michael Drake
46527795db Pass pointer hotspots to libnsfb. 2012-08-01 12:52:46 +01:00
Michael Drake
d84ad62a04 Scroll text in writable text widget so caret is always in view. 2012-08-01 09:29:26 +01:00
Michael Drake
465ebb2c7b Only writable text widget needs caret rendering. 2012-08-01 09:16:25 +01:00
Michael Drake
9e3db46b67 Handle CTRL modifier too. CTRL with cursor left/right is same as SHIFT. CTRL+U clears writable. 2012-07-31 22:55:08 +01:00
Michael Drake
21ce8800b8 Cursor left/right keys plus modifier move caret to extrems. 2012-07-31 22:40:47 +01:00
Michael Drake
75cc4a06be Factor out some repeated code. 2012-07-31 22:30:39 +01:00
Michael Drake
53183b2411 Make text input widget remove caret on "strip focus" event. 2012-07-31 22:18:44 +01:00
Michael Drake
9505fdcf84 Make browser window widget remove caret on "strip focus" event. 2012-07-31 22:16:06 +01:00
Michael Drake
72cb5b6ea4 Add widget callback for getting stripped of focus. Call it in the input setter, on previous input holder. 2012-07-31 22:14:48 +01:00
Michael Drake
daa47fce52 Use setter when giving clicked input focus. 2012-07-31 21:49:01 +01:00
Michael Drake
2999410af6 When a text input widget has its text set, and it has the caret, move the caret to the end. 2012-07-31 21:04:20 +01:00
Michael Drake
9a92e7bdeb Core's gui_window_remove_caret should only remove caret if the bw in question owns the caret. 2012-07-31 21:02:19 +01:00
Michael Drake
140795500c Claim, position, and render caret in text input widget. Currently does not remove caret when input widget is stripped of focus (because widget doesn't know). 2012-07-31 20:43:43 +01:00
Michael Drake
2e4bb2d020 Round to nearest point between chars in nsfont_position_in_string, instead of rounding down. 2012-07-31 20:41:27 +01:00
Michael Drake
941a48dabd When setting fbtk caret, register callback for redrawing caret removal. 2012-07-31 20:40:14 +01:00
Michael Drake
4125a8afdf Remove strlen from redraw functions. 2012-07-31 15:18:25 +01:00
Michael Drake
45b9d96678 Add support for editing text input widget contents from arbitrary position in string (instead of just end). 2012-07-31 15:13:52 +01:00
Michael Drake
90b0c48bb2 Split out common code to generate a font style for text input widget. 2012-07-31 14:06:57 +01:00
Michael Drake
f6436d54c8 Add caret to browser window widgets. Caret now shows when editing forms. 2012-07-31 14:05:39 +01:00
Michael Drake
8db6d74bcb Add basic awareness of text input caret to ftbk and functions to get/set caret pos. 2012-07-31 14:04:12 +01:00
Michael Drake
41f88e6937 Scrollbar behaviour fixes.
Stop scrollbar sliding at different rate from pointer.
Stop jump on drag start when scrollbar position indicator isn't at zero.
2012-07-27 14:05:13 +01:00
Michael Drake
382c2f2289 Only warp pointer once for a sequence of consecutive move events. Further reduces lag when dragging scrollbar. 2012-07-26 23:14:27 +01:00
Michael Drake
514bee5786 Handle consecutive queued mouse move events together. Reduces pointer lag when busy. 2012-07-26 22:38:38 +01:00
Michael Drake
8660bed543 Change a couple of 'if's to 'else if's. 2012-07-26 19:04:45 +01:00
Michael Drake
305938bb48 Avoid a load of repeat operations when panning by greater than viewport size. 2012-07-26 19:00:38 +01:00
Michael Drake
d9d7dcb758 Avoid redrawing the whole screen when scrolling by zero pixels. 2012-07-26 18:37:51 +01:00
Michael Drake
888d8eac4f A few tweaks from when I was looking for internal font renderer bug in wrong place. 2012-07-26 17:37:44 +01:00
Michael Drake
02561162a9 Add welcome page resources. Add symlinks to English welcome page to gtk and framebuffer. 2012-07-21 13:09:14 +01:00
Michael Drake
f7683fd019 Update URLs for glyph data. 2012-07-15 17:41:37 +01:00
Michael Drake
ce20021df7 Fix colour string matching. Lose unneeded case insensitivity in matching.
svn path=/trunk/netsurf/; revision=13739
2012-03-27 11:02:35 +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
Vincent Sanders
3576ad71cb fix up framebuffer build flags
fix select attributes

svn path=/trunk/netsurf/; revision=13643
2012-03-24 22:42:14 +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
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
67f2470d5a Pass whether background images are wanted in redraw_context.
svn path=/trunk/netsurf/; revision=13335
2011-12-23 22:39:25 +00:00
Michael Drake
ebebdfda4b Fix framebuffer build.
svn path=/trunk/netsurf/; revision=13222
2011-12-02 17:46:57 +00:00
Michael Drake
3299b9493b Call core to see if handles scroll wheel event first.
svn path=/trunk/netsurf/; revision=13198
2011-11-29 14:22:08 +00:00
Vincent Sanders
820312eb35 Update for modified libnsfb API
Make thumbnailing work

svn path=/trunk/netsurf/; revision=13159
2011-11-21 08:45:08 +00:00
Michael Drake
4e6828e7e1 Remove unused variable.
svn path=/trunk/netsurf/; revision=13095
2011-10-29 12:04:33 +00:00
John Mark Bell
787f4954ea Fix framebuffer
svn path=/trunk/netsurf/; revision=12984
2011-10-07 21:20:45 +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
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
52513e6c9f Reduce logging flood.
svn path=/trunk/netsurf/; revision=12919
2011-10-01 17:23:46 +00:00
John Mark Bell
f27d5a3e15 Remove gui_multitask
svn path=/trunk/netsurf/; revision=12828
2011-09-21 00:25:09 +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
e9aa4936d5 Remove dead code from gui_create_browser_window().
svn path=/trunk/netsurf/; revision=12712
2011-09-04 18:30:19 +00:00