Commit Graph

892 Commits

Author SHA1 Message Date
Chris Young
ff333828b7 Warn when closing multiple tabs 2012-12-08 17:47:57 +00:00
Chris Young
69647cc6a4 Respond to Ctrl-C by immediately quitting. TCP/IP stack exit expects this. 2012-12-07 23:35:57 +00:00
Chris Young
40076ea422 Allow the size of the web search gadget to be user-set 2012-12-06 23:40:13 +00:00
Chris Young
61723e01c1 Avoid NULL pointer access 2012-12-05 18:14:45 +00:00
Chris Young
c88c4fa214 Don't need to attempt to free on remove, as the only entry point has already done this. 2012-12-01 15:23:11 +00:00
Chris Young
ee79de5244 Attempt to do some re-layout if the toolbar is added after the window opens. 2012-12-01 15:15:12 +00:00
Chris Young
ffcb07b8b2 Make hotlist toolbar actually work 2012-12-01 00:27:46 +00:00
Chris Young
61872ab3a4 Debug 2012-11-29 22:44:30 +00:00
Chris Young
23dc635e1a Make hotlist toolbar work and update (only updates on hotlist window close currently) 2012-11-29 22:13:42 +00:00
Chris Young
168d09c878 Improve the look of the hotlist toolbar 2012-11-28 22:42:23 +00:00
Chris Young
2437ca84a8 Hotlist toolbar needs to be ABOVE the tab bar 2012-11-28 19:44:40 +00:00
Chris Young
4e4bc9c135 Don't force a redraw after adding the toolbar, because we (currently) only add it immediately at window creation. 2012-11-28 19:43:24 +00:00
Chris Young
56d5e6963a Actually show the toolbar. It looks awful. 2012-11-28 19:41:18 +00:00
Chris Young
09bc58f7c2 Create a toolbar from the "Toolbar" folder within the hotlist. Note: makes no attempt to either free the toolbar or make the toolbar work. 2012-11-28 19:29:43 +00:00
Chris Young
6641b082f8 Fix the display of the drag save icon 2012-11-11 23:17:00 +00:00
Chris Young
efbfbbc967 Fix a serious crash that occurs if the underlying window is closed during a hook function invoked from it. 2012-10-31 20:50:22 +00:00
Chris Young
df70c7daa3 Ensure stack size is at least 128KB 2012-10-19 20:27:10 +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
Chris Young
a5bd3d112c fix warnings 2012-10-11 20:13:38 +01:00
Michael Drake
29356734eb Include desktop/browser_private.h. 2012-08-22 13:16:20 +01:00
Michael Drake
45736594a1 Get presence of text input cleanly. 2012-08-20 22:03:59 +01:00
Chris Young
59784ba852 fix mask 2012-08-11 17:19:54 +01:00
Chris Young
69ad5db2d1 convert throbber to use standard bitmap functions; remove p96 dependency 2012-08-10 22:59:38 +01:00
Chris Young
2364d68367 avoid scaled images getting incorrect mask 2012-08-10 18:30:01 +01:00
Chris Young
1547aebdbb remove depth gadget, as doesn't let us select <256 colours anyway 2012-08-07 23:13:42 +01:00
Chris Young
61c268269a display depth gadget on screenmode requester 2012-08-07 23:09:40 +01:00
Chris Young
6748845042 fix display of favicon in palette-mapped modes 2012-08-07 23:07:16 +01:00
Chris Young
0d8aca4f12 use abstracted function 2012-08-07 21:22:51 +01:00
Chris Young
dd7935bb1f abstract the native bitmap fetcher functions, and make the favicon collection use the new one. 2012-08-07 21:09:49 +01:00
Chris Young
1ef7336f22 revert begin/endrefresh image avoidance - this isn't the cause of the simplerefresh damage region deadlock 2012-08-05 23:06:01 +01:00
Chris Young
b777549cc2 avoid crash if pen list is not set 2012-08-05 22:59:09 +01:00
Chris Young
ff8d7d974c Avoid redrawing palette-mapped images during BeginRefresh/EndRefresh (ie. SimpleRefresh damage redraw) as one of the DataTypes functions are causing an Intuition deadlock. 2012-08-05 22:29:35 +01:00
Chris Young
a46c5ae09f Merge branch 'master' into chris/palette-mapped-plotters 2012-08-05 14:29:12 +01:00
Chris Young
1e02eba193 Ask GID_ICON to redraw itself before we draw over the top of it. Unfortunately it redraws itself as a grey box, rather than the underlying window's backfill hook. 2012-08-05 14:26:41 +01:00
Chris Young
55c08431ee Fix build 2012-08-05 11:37:27 +01:00
Chris Young
d577a48bb7 Abstract pen obtain/release and structure so we can add these to a physical browser window's list 2012-08-05 11:28:48 +01:00
Chris Young
da4968b8e0 Allow selecting <16-bit wcreenmodes so we can easily see what needs doing. 2012-08-04 15:44:57 +01:00
Chris Young
20e99e4f20 Remove visible and invalid uses of git revision hashes. Anybody who needs to know hich revision it is can check about:testament, to everybody else the string is meaningless. 2012-07-01 16:40:24 +01:00
Chris Young
560d5d2035 Allow a comma-separated list of fonts to be specified in font_unicode_list
to provide more preferred fonts.  eg. if a user has dedicated Japanese
and Korean fonts available they might want a config like:
font_unicode:Japanese
font_unicode_list:Korean,Code2000
This will scan Japanese and Korean fonts first, then fill in any blanks
with Code2000 (followed by alphabetically all other fonts installed)

svn path=/trunk/netsurf/; revision=13917
2012-05-09 22:23:10 +00:00
Chris Young
36e9d114ea Stop abusing certain Messages; add some dedicated non-crazy HelpHints
svn path=/trunk/netsurf/; revision=13912
2012-05-07 15:06:48 +00:00
Chris Young
d5608581b9 Integrate Unicode font scanner into NetSurf.
NetSurf will now use any available font when trying to print
characters that are missing from the current font.
TODO: Preferred font list.

svn path=/trunk/netsurf/; revision=13905
2012-05-05 15:58:17 +00:00
Chris Young
9b984e8b3f Only struct gui_window_2 should use variable name 'gwin'. gui_window is
always 'g'.

svn path=/trunk/netsurf/; revision=13899
2012-04-29 16:13:53 +00:00
Chris Young
286a128e1b Change menus so menu functions are called internally by window.class
(RA_HandleInput). This makes menu selection more reliable and stops us
missing menu events which appeared to be getting lost within the
HANDLEINPUT method.

svn path=/trunk/netsurf/; revision=13898
2012-04-29 15:59:37 +00:00
Chris Young
2d854c549c Make simple refresh a configurable option
svn path=/trunk/netsurf/; revision=13896
2012-04-28 23:23:29 +00:00
Chris Young
682b2f2420 Fix simplerefresh. When dragging windows back on-screen, damaged areas are
still not repaired fully.  Overlapping windows have no such problem.
Menu events seem to be getting lost in simple refresh mode (this may be
related to event triggered for redrawing the area under the menu when it is
closed)

svn path=/trunk/netsurf/; revision=13895
2012-04-28 22:53:50 +00:00
Chris Young
8d4678b04b Add AppWindow ourself rather than letting window.class create it. Initial
tests indicate we are no longer losing icon drop events although there is
still an "event leak" somewhere.
Fix warnings.

svn path=/trunk/netsurf/; revision=13894
2012-04-28 19:43:46 +00:00
Chris Young
b4977fbdcc Replace strncpy with strlcpy, as strncpy is not guaranteed to be
NULL-terminated. (thx Colin Wenzel)

svn path=/trunk/netsurf/; revision=13881
2012-04-18 18:54:15 +00:00
Chris Young
5b79dbe36f Update NetSurf's system colours when OS prefs change
svn path=/trunk/netsurf/; revision=13822
2012-04-07 17:16:32 +00:00
Chris Young
183174b25a Move status basr left one pixel
svn path=/trunk/netsurf/; revision=13786
2012-04-02 18:05:09 +00:00
Chris Young
d434749953 Remove old commented out tags
svn path=/trunk/netsurf/; revision=13784
2012-03-31 21:51:44 +00:00
Chris Young
7a12cad439 Change the status bar frameiclass to a gaugeiclass, as it is more
aesthetically pleasing, and also allows us to show progress bar if it is
possible to get this data from the core in the future.

svn path=/trunk/netsurf/; revision=13783
2012-03-31 21:49:50 +00:00
Chris Young
e8d90a532a Search user data dir first for resources
svn path=/trunk/netsurf/; revision=13779
2012-03-30 19:28:37 +00:00
Chris Young
e30905be75 Use 'user' env-var to determine username
svn path=/trunk/netsurf/; revision=13778
2012-03-30 18:18:15 +00:00
Chris Young
38b310ad5f Move user-specifics out of Resources
svn path=/trunk/netsurf/; revision=13768
2012-03-28 22:17:27 +00:00
Chris Young
307df869c3 fix build
svn path=/trunk/netsurf/; revision=13729
2012-03-26 20:25:10 +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
Chris Young
3db30dfd84 Fix scaled fast scrolling. Curiously this has solved the form select menu
problem :S

svn path=/trunk/netsurf/; revision=13505
2012-03-03 15:50:05 +00:00
Chris Young
2cd44ec454 Fix offsets when page scaled and scrolled
svn path=/trunk/netsurf/; revision=13504
2012-03-03 15:41:14 +00:00
Chris Young
3e77ceeb81 allow both x and y dimensions of redraw tiles to be configured
svn path=/trunk/netsurf/; revision=13502
2012-02-29 19:09:55 +00:00
Chris Young
b7f7293802 random changes
svn path=/trunk/netsurf/; revision=13474
2012-02-26 15:44:14 +00:00
Chris Young
bb17cc2529 Don't do schedule message handling on a while loop.. it sometimes causes
long pauses in user input.

svn path=/trunk/netsurf/; revision=13472
2012-02-26 11:03:09 +00:00
Chris Young
79c5485e27 Add tiled refresh, with tiles of max size option_redraw_tile_size. This
reduces the size of our off-screen bitmap and associated memory.
Only works with browser windows at present. History and treeviews still
have full window refresh/bitmap.
Setting the option to 0 brings back the old behaviour.

svn path=/trunk/netsurf/; revision=13468
2012-02-25 18:42:33 +00:00
Chris Young
20e825c8f4 More simple refresh. This would work (provided the user hasn't scrolled),
however we appear to be losing events (refresh and menu events are not
always being received)

svn path=/trunk/netsurf/; revision=13466
2012-02-24 23:18:24 +00:00
Chris Young
ce0d219328 typo
svn path=/trunk/netsurf/; revision=13465
2012-02-24 20:03:38 +00:00
Chris Young
b517cf331a option_screen_compositing to enable switching compositing for NetSurf's own
screen on/off.

Some experimentation with compositing and simple/smart refresh reveals that
simple refresh windows with compositing on for the screen behave the same
as smart refresh windows. Smart refresh windows with compositing off use
more gfx memory than when compositing is on. Simple refresh windows with
compositing off will probably be more memory efficient, as we are using
an off-screen bitmap to render the browsing area anyway. However due to
this bitmap being re-used over multiple tabs/windows, it does not always
reflect what should be on the window, so performing a redraw of damaged
areas may be the only option. Need to read damaged regions from layer
(probably through struct Region *DamageList) and check on performance vs
memory or make the window refresh type configurable.  Simple refresh code
#ifdefed out for now for further investigation later.

svn path=/trunk/netsurf/; revision=13464
2012-02-24 20:00:51 +00:00
Chris Young
b0b08b4eaf Remove "NetSurf" from release version string, that's on the splash anyway.
svn path=/trunk/netsurf/; revision=13443
2012-02-12 18:02:49 +00:00
Chris Young
9c7ced69d2 Shift status bar text over by a pixel and reposition the frame slightly.
Don't use WBorBottom as that is not particulary relevant to what we're
trying to do.

svn path=/trunk/netsurf/; revision=13441
2012-02-11 23:17:47 +00:00
Chris Young
efa55dd3f1 Fix build
svn path=/trunk/netsurf/; revision=13403
2012-01-15 15:57:02 +00:00
Chris Young
9f08a052d0 Allow confining the pointer to part of the window during drags. Actually
we aren't acting on this for any current drag types, but if we need to do
so in the future (eg. frame resizing), this is the code to do it.  The trap
lasts 10 IntuiTicks so is re-asserted on every mouse move when an active
drag is in effect.  Drag type must be set to GDRAGGING_NONE to clear.

svn path=/trunk/netsurf/; revision=13401
2012-01-11 21:41:55 +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
Chris Young
13a2ceb766 Remove unnecessary cache of scroll position
svn path=/trunk/netsurf/; revision=13344
2011-12-24 13:24:09 +00:00
Chris Young
56b6970c92 Search for DejaVu Serif Italic before DejaVu Serif Oblique, this fixes the fonts used
on the splash screen if newer DejaVu fonts have been installed and the old ones
removed.

svn path=/trunk/netsurf/; revision=13342
2011-12-24 12:57:42 +00:00
Chris Young
135a11db35 Fix scrollbar scroll
svn path=/trunk/netsurf/; revision=13341
2011-12-24 12:49:55 +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
Chris Young
879383e21e Pass keyboard scroll events to the core
svn path=/trunk/netsurf/; revision=13334
2011-12-23 22:14:00 +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
Chris Young
8d685d7ac0 Use core file drop.
Loop through entire list of dropped files.
If multiple files are dropped and not handled by core, open in tabs;
Activate the window on first file drop to workaround a bug where the window needed to
be clicked before the file would appear.
As using core functionality, DataTypes no longer used to parse dropped files (likely
to be rarely needed anyway).


svn path=/trunk/netsurf/; revision=13218
2011-12-02 12:47:11 +00:00
Chris Young
a7af4ba0c1 Pass mouse scrollwheel events to the core first
svn path=/trunk/netsurf/; revision=13201
2011-11-29 20:58:57 +00:00
Chris Young
b14c4f0a0b Revert r13138
svn path=/trunk/netsurf/; revision=13144
2011-11-10 14:22:02 +00:00
Chris Young
87c5f14c08 Update the title of the initial tab, even when the tab bar is hidden (ensures the
correct title will be present if it is made visible)

svn path=/trunk/netsurf/; revision=13138
2011-11-09 19:22:49 +00:00
Chris Young
4cbe7d9d94 Remove any need for LangNames to be imported as a Messages file
svn path=/trunk/netsurf/; revision=13099
2011-10-29 14:14:13 +00:00
Chris Young
b84ebeed36 Stop abusing Messages with continual load of LangNames
svn path=/trunk/netsurf/; revision=13098
2011-10-29 13:51:19 +00:00
Chris Young
d0ad76a77a Simplify
svn path=/trunk/netsurf/; revision=13097
2011-10-29 13:35:55 +00:00
Chris Young
4a0de7cd5c Allow usage of a resource.map file to map resource: requests to other files.
svn path=/trunk/netsurf/; revision=13096
2011-10-29 13:32:53 +00:00
Chris Young
62900af515 Search the current theme dir for resources.
svn path=/trunk/netsurf/; revision=13091
2011-10-29 11:24:29 +00:00
Chris Young
c1afe81e06 Complete extended context menus
svn path=/trunk/netsurf/; revision=13076
2011-10-23 13:15:44 +00:00
Chris Young
a4f14eb0e9 Avoid horizontal pixel-height lines of the background appearing when "fast scrolling"
down the page.  There is a similar problem with scrolling up pages which may be a bug
in ami_do_redraw_limits or plotters (probably bitmap tile plotter), as drawing
additional pixel lines after scrolling is not redrawing the affected area.
Example sites where this problem is apparent:
http://www.nintendolife.com (border pattern does not redraw)
http://www.amigaos.net/content/72/supported-hardware (clouds show through the main
text area)

svn path=/trunk/netsurf/; revision=13072
2011-10-22 13:52:13 +00:00
Chris Young
6959a30b26 Move non-requester user file operations to file.c
svn path=/trunk/netsurf/; revision=13065
2011-10-15 15:27:56 +00:00
Chris Young
c3fafd63f8 Move all main file req save ops to file.c
svn path=/trunk/netsurf/; revision=13064
2011-10-15 14:55:03 +00:00
Chris Young
ad8a965548 Start to consolidate user file operation into one file
svn path=/trunk/netsurf/; revision=13062
2011-10-15 14:09:35 +00:00
Chris Young
70aad31df6 Default search ico should only come from theme
svn path=/trunk/netsurf/; revision=13011
2011-10-08 13:49:31 +00:00
Chris Young
3bb98823f7 correct filename
svn path=/trunk/netsurf/; revision=12996
2011-10-07 23:26:39 +00:00
Chris Young
39b490d1f0 Add favicon to iconification icon
svn path=/trunk/netsurf/; revision=12995
2011-10-07 23:12:12 +00:00
Chris Young
f9ca9f3595 comment removal
svn path=/trunk/netsurf/; revision=12988
2011-10-07 21:53:35 +00:00
Chris Young
c8d9e012e5 favicon fixes
svn path=/trunk/netsurf/; revision=12985
2011-10-07 21:41:31 +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
Chris Young
b9a40d8e47 Fix crash when switching tabs
svn path=/trunk/netsurf/; revision=12932
2011-10-03 18:08:52 +00:00
Michael Drake
e52aaecd7a Fix up for nsurl changes. Untested.
svn path=/trunk/netsurf/; revision=12928
2011-10-03 16:41:55 +00:00
Chris Young
87ba84abfe Disable RAmiga-U temporarily as ActivateGadget() is causing a bizarre but fatal
interaction with context menus.

svn path=/trunk/netsurf/; revision=12913
2011-09-29 22:13:13 +00:00
Chris Young
5d7c1caffe Also read mimetype mappings from mimetypes.user
svn path=/trunk/netsurf/; revision=12876
2011-09-25 17:03:37 +00:00
Chris Young
4573560c61 increase keyboard scroll speed to 10px
svn path=/trunk/netsurf/; revision=12875
2011-09-25 10:08:23 +00:00
Chris Young
215c31ac0d When pressing mouse button don't try to go forwards in history first... instead make
releasing mouse button 5 go forwards in history.

svn path=/trunk/netsurf/; revision=12873
2011-09-24 15:20:05 +00:00
John Mark Bell
f27d5a3e15 Remove gui_multitask
svn path=/trunk/netsurf/; revision=12828
2011-09-21 00:25:09 +00:00
Chris Young
9bb586769a Remove AMINS_FRAME
svn path=/trunk/netsurf/; revision=12801
2011-09-16 18:00:39 +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
Chris Young
049a3eb80a Fix search icon disappearing when layout size bar dragged
svn path=/trunk/netsurf/; revision=12790
2011-09-12 22:38:51 +00:00
Chris Young
6a5b10c685 Convert keypresses to UCS4. Fixes issue with typing Euro symbol (¤). Probably fixes
other characters in more exotic character sets.

svn path=/trunk/netsurf/; revision=12789
2011-09-12 21:56:15 +00:00
Chris Young
f5d91344b7 Change option to get accepted languages from Locale into a checkbox so it updates at
startup

svn path=/trunk/netsurf/; revision=12787
2011-09-11 14:53:33 +00:00
Chris Young
9d952f2ae2 Setting screen signals this late doesn't work, so revert r12486 completely and return
to busy-looping (but a bit friendlier this time, waiting 1 second between attempts)

svn path=/trunk/netsurf/; revision=12785
2011-09-10 23:25:49 +00:00
Chris Young
8e67ad8051 Select fonts, sizes and colours for splash screen text rather than relying on system
default

svn path=/trunk/netsurf/; revision=12776
2011-09-07 23:01:53 +00:00
Chris Young
98a0c25344 Use Michael Drake's proper splash screen
svn path=/trunk/netsurf/; revision=12773
2011-09-07 18:38:08 +00:00
Chris Young
0f79ab2c19 Avoid button flicker
svn path=/trunk/netsurf/; revision=12761
2011-09-06 20:58:26 +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
Chris Young
330227d87a Remove more checks for browser_window_type
svn path=/trunk/netsurf/; revision=12719
2011-09-04 22:35:11 +00:00
Chris Young
985bf9e191 Remove browser_window type from ami_create_menu()
Remove DrawInfo too, as only there for image menus which never worked.

svn path=/trunk/netsurf/; revision=12718
2011-09-04 22:26:24 +00:00
Michael Drake
235bc41941 Fix indentation.
svn path=/trunk/netsurf/; revision=12714
2011-09-04 18:53:54 +00:00
Michael Drake
202f972199 Delete a whole bunch of redundant tests for browser_window_type. Front ends now only ever have any connection to browser windows of type BROWSER_WINDOW_NORMAL. Still a couple of uses in there; ami_menu_create() shouldn't need take a browser_window_type param now.
svn path=/trunk/netsurf/; revision=12713
2011-09-04 18:50:46 +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
John Mark Bell
4b189ab0bc Squash warnings resulting from mismatched type expectations
svn path=/trunk/netsurf/; revision=12701
2011-09-02 22:09:23 +00:00
Chris Young
25fea2721d Avoid calling AllocSignal() until the last minute, as it causes PM_OPEN to initiate
an Intuition or Input deadlock.
Re-enable context menus as they are now safe.
Remove sticky context menus option as this can be set in GUI prefs as a global option.

svn path=/trunk/netsurf/; revision=12698
2011-09-02 17:31:47 +00:00
Chris Young
1cb60828ea Don't refresh buttons when enabling/disabling. Fixes bitmap alpha/overprinting
problem (thanks to Simon Archer)

svn path=/trunk/netsurf/; revision=12694
2011-08-31 19:53:34 +00:00
Michael Drake
42467f16dd Don't need to set current_redraw_browser any more.
svn path=/trunk/netsurf/; revision=12654
2011-08-24 13:33:58 +00:00
Chris Young
39e5c04da7 Fix warnings
svn path=/trunk/netsurf/; revision=12616
2011-07-23 14:06:13 +00:00
Chris Young
31d1313944 Ensure buttons update (stop button activates) when new URL starts to load
svn path=/trunk/netsurf/; revision=12606
2011-07-16 13:53:22 +00:00
Michael Drake
ed8778ddb3 Fix up Amiga for r12574 API change.
svn path=/trunk/netsurf/; revision=12575
2011-07-06 12:42:17 +00:00
Chris Young
b1e425a967 Correctly select FILLPEN or FOREGROUNDPEN for scroller knob colour
svn path=/trunk/netsurf/; revision=12569
2011-07-03 18:20:18 +00:00
Chris Young
d253daa020 Pick scroller gadget colours from the screen's DrawInfo pens
svn path=/trunk/netsurf/; revision=12568
2011-07-03 17:22:23 +00:00
Chris Young
9d30f67d54 Fix AppIcons for non-HTML contents
svn path=/trunk/netsurf/; revision=12564
2011-07-03 11:47:54 +00:00
Chris Young
aa8e6de67d Make AmiDock icon behave a little more sensibly when all windows are iconified.
svn path=/trunk/netsurf/; revision=12563
2011-07-03 11:20:00 +00:00
Chris Young
e3447be7a3 Iconfication; only enabled when running on WB screen at present
svn path=/trunk/netsurf/; revision=12562
2011-07-03 11:05:18 +00:00
Chris Young
bb7408a56e When opening new tabs next to the active one, open them sequentially until the tab is
switched away from.  This is more akin to how Firefox etc do it.  Make this the
default.

svn path=/trunk/netsurf/; revision=12561
2011-07-02 22:40:45 +00:00
Chris Young
bdc0d994c1 Add an option to open new tabs next to the current tab. Needs some additional logic
as opening multiple tabs results in the new tabs being in reverse order to that
expected.

svn path=/trunk/netsurf/; revision=12559
2011-07-02 22:04:51 +00:00
Chris Young
910c6d314f Put a search icon where the old search favicon was
svn path=/trunk/netsurf/; revision=12558
2011-07-02 19:38:54 +00:00
Chris Young
6fd47035c1 Fix compilation
svn path=/trunk/netsurf/; revision=12547
2011-06-30 18:58:52 +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
2bedf4d88f Frond ends signal end of drag with call to browser_window_mouse_track.
svn path=/trunk/netsurf/; revision=12515
2011-06-27 17:45:17 +00:00
Chris Young
f747bbb79e Shortcut backspace = go back one page in history
svn path=/trunk/netsurf/; revision=12506
2011-06-25 16:00:02 +00:00
Michael Drake
dea7683985 Remove gui_window_set_scale().
svn path=/trunk/netsurf/; revision=12502
2011-06-24 12:01:24 +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
Chris Young
548e1f2f77 Ensure the WB screen gets unlocked, avoid passing a NULL to CloseScreen
svn path=/trunk/netsurf/; revision=12491
2011-06-19 11:16:48 +00:00
Chris Young
e61ad6326a screen type should be PUBLICSCREEN not CUSTOMSCREEN
svn path=/trunk/netsurf/; revision=12490
2011-06-18 17:58:36 +00:00
Chris Young
2dd8fcd6d0 initialise context menus regardless of user's preferences on startup
svn path=/trunk/netsurf/; revision=12489
2011-06-18 17:40:27 +00:00
Chris Young
66b52c0af0 Reinstate waiting for visitor windows to close if the public screen could not be
closed.  Do it properly this time, with signals.

svn path=/trunk/netsurf/; revision=12486
2011-06-16 18:46:43 +00:00
Chris Young
a7c9fbfa04 remove no_iframes
svn path=/trunk/netsurf/; revision=12482
2011-06-15 17:40:36 +00:00
Chris Young
f2ef7ba6ba up = down and down = up
svn path=/trunk/netsurf/; revision=12454
2011-06-03 18:11:19 +00:00
Chris Young
4270e80d7a Make 4th mouse button go back in history, and 5th go forward. Untested.
svn path=/trunk/netsurf/; revision=12453
2011-06-03 18:08:17 +00:00
Chris Young
f214d3ecc8 Allow mixing of AmigaOS and NetSurf command line options
svn path=/trunk/netsurf/; revision=12449
2011-05-30 18:17:09 +00:00
Chris Young
ca8d2c9feb update variable names
svn path=/trunk/netsurf/; revision=12382
2011-05-11 18:34:43 +00:00
Chris Young
1f1fe78c17 New style MIME typing; maps MIME types to DataTypes and DefIcon format names.
Currently only able to resolve DataTypes to MIME Types.

TODO:
- DT MIME type guessing needs mostly removing (only use if no matches in mimetypes
file)
- Migrate the rest of filetype.c to the new format (can filetype using icon.library
and reverse lookup MIME type, for example)
- Use to distinguish between CONTENT_IMAGE types
- Simplify so DefIcon type defaults to lowercase DataType name

svn path=/trunk/netsurf/; revision=12360
2011-05-09 22:11:18 +00:00
Chris Young
489c35c5f7 Simple initialisation splash screen
svn path=/trunk/netsurf/; revision=12303
2011-05-07 22:21:41 +00:00
Chris Young
208363fe2a Rename DataTypes related code/files/defines to avoid confusion and aid adding support
for other DataType classes.
Disable MNG/WebP by default as they aren't common and the required libs are quite
large; DataTypes can handle these formats for now.

svn path=/trunk/netsurf/; revision=12284
2011-05-06 22:42:37 +00:00
John Mark Bell
e71691bae8 Merge branches/jmb/content-factory to trunk
svn path=/trunk/netsurf/; revision=12283
2011-05-06 20:40:09 +00:00
Chris Young
06213b4dd2 Make Y DPI a configurable option. Default is 72 (AmigaOS standard)
svn path=/trunk/netsurf/; revision=12237
2011-04-25 17:43:22 +00:00
Chris Young
be16cd70c5 Fix treeview display
svn path=/trunk/netsurf/; revision=12233
2011-04-22 17:17:05 +00:00
Chris Young
0a24f4dbca Aspect-corrected font DPI (files missing from previous commit)
svn path=/trunk/netsurf/; revision=12231
2011-04-22 16:54:11 +00:00
Chris Young
83914b9c3e Set font DPI from nscss_screen_dpi to ensure it is always in sync
Reset font DPI when opening screens to allow us to correct for aspect ratio in the
future

svn path=/trunk/netsurf/; revision=12229
2011-04-22 16:06:46 +00:00
Chris Young
c737dbd5f8 Use PROGDIR: instead of current dir when setting the path to the executable for
AmiUpdate

svn path=/trunk/netsurf/; revision=12223
2011-04-22 13:55:25 +00:00
Chris Young
dad9306e2a print caret at scroll position netsurf believes the page is at, rather than where the
gui says it is

svn path=/trunk/netsurf/; revision=12108
2011-03-19 22:40:02 +00:00
Chris Young
e8ca07b0dc Redraw the area under a caret when it is cleared, rather than relying on a potentially
out-of-date off-screen copy of what used to be there.

svn path=/trunk/netsurf/; revision=12107
2011-03-19 13:00:45 +00:00
Chris Young
ef02bcc122 Enable fast scrolling for non-HTML contents
svn path=/trunk/netsurf/; revision=12103
2011-03-17 23:13:50 +00:00
Michael Drake
d86e8b49c4 Remove what should now be redundant special casing of text/plain.
svn path=/trunk/netsurf/; revision=12099
2011-03-17 18:53:04 +00:00
Michael Drake
a70c32422a gui_find_resource --> gui_get_resource_url.
svn path=/trunk/netsurf/; revision=12089
2011-03-17 11:57:09 +00:00
Chris Young
7e64826e60 Move remaining popupmenu.class stuff to context_menu.c, and #ifdef it for
__amigaos4__ only.

svn path=/trunk/netsurf/; revision=12077
2011-03-16 18:53:58 +00:00
Chris Young
a81a7b5af2 Only extend the clipping area for plain text contents
svn path=/trunk/netsurf/; revision=12063
2011-03-15 18:43:13 +00:00
Chris Young
1cfc5b8970 More rigourous MIME type checking for CSS allows us to remove the icons from included
CSS files.

svn path=/trunk/netsurf/; revision=12049
2011-03-14 18:53:13 +00:00
Chris Young
6a7402b330 Empty the schedule list before freeing and closing resources
svn path=/trunk/netsurf/; revision=12034
2011-03-13 19:43:56 +00:00
Chris Young
d3b8961017 Move timer initialisation for scheduler so netsurf_init can queue scheduled events.
svn path=/trunk/netsurf/; revision=12033
2011-03-13 19:26:16 +00:00
Chris Young
dd5b65e33b Search for resources in user's preferred languages, en, and outside the
language-specific dirs.

svn path=/trunk/netsurf/; revision=12030
2011-03-13 18:33:57 +00:00
Chris Young
02361309ed Remove gui_globals scale as no longer needed
svn path=/trunk/netsurf/; revision=11962
2011-03-10 20:07:14 +00:00
Chris Young
5ac45472c7 Fix broken CONTENT_PLUGIN API.
Add a default content handler for Amiga using the plugin interface, which passes
unknown files (currently images only) through DataTypes.

svn path=/trunk/netsurf/; revision=11924
2011-03-06 13:58:02 +00:00
Chris Young
f892e59d76 Direct rendering. Testing only; has problems with inline image placement, grey
background for all text, won't work with Cairo renderer, may crash with certain
gfx lib operations (AreaFill).  However, seems to be much faster in 16-bit mode than
off-screen buffered rendering.

svn path=/trunk/netsurf/; revision=11913
2011-03-05 14:36:55 +00:00
Chris Young
912b3bcde8 Enable selection of rendering engine (graphics.library, Cairo) at runtime, if we're
compiled with Cairo support.

svn path=/trunk/netsurf/; revision=11912
2011-03-05 11:42:31 +00:00
Chris Young
020239fd62 Use browser_window_redraw_ready
svn path=/trunk/netsurf/; revision=11907
2011-03-04 19:13:23 +00:00
Chris Young
a1d8f565c8 Use BltBitMapTags
svn path=/trunk/netsurf/; revision=11906
2011-03-04 19:05:12 +00:00
Chris Young
46915c6b7b Brand new windows should not be cloning an existing browser_window or they pick up old
local history.
Brand new tabs should not either but that appears to be unavoidable at present.

svn path=/trunk/netsurf/; revision=11872
2011-03-01 19:09:57 +00:00
Vincent Sanders
9660442e92 remove obsolete, unused gui_window_redraw API
svn path=/trunk/netsurf/; revision=11870
2011-03-01 14:31:54 +00:00
Chris Young
b768440a58 Memory leak
svn path=/trunk/netsurf/; revision=11864
2011-02-28 22:12:34 +00:00
Chris Young
4a174fd670 Allow context menus in arbitrary positions outside the browsing area.
Add a Local History item to a new back button context menu, eventually this will give
a recent history list.

svn path=/trunk/netsurf/; revision=11858
2011-02-28 19:31:35 +00:00
Chris Young
b0635ea5dd Rename confusingly-named file; Remove about from unsupported protocols, as will never
reach this code now.

svn path=/trunk/netsurf/; revision=11829
2011-02-26 17:38:43 +00:00
Chris Young
8bda9725b8 Very basic resource selection (resource: simply points to PROGDIR:Resources)
svn path=/trunk/netsurf/; revision=11781
2011-02-23 23:29:24 +00:00
Chris Young
124de0c84a Disable fast scrolling for scaled contents for now
svn path=/trunk/netsurf/; revision=11779
2011-02-23 23:11:26 +00:00
Vincent Sanders
0231675abf add resource handling
move gtk and framebuffer to use generic resource handling

svn path=/trunk/netsurf/; revision=11772
2011-02-23 22:27:55 +00:00
Chris Young
0ca3e6e00e Get one timer message per signal to allow other non-scheduled events to be actioned.
This fixes a curious pause upon starting NetSurf.

svn path=/trunk/netsurf/; revision=11713
2011-02-19 20:01:11 +00:00
Chris Young
3123192dfc Move timer.device stuff to schedule.c
svn path=/trunk/netsurf/; revision=11712
2011-02-19 17:19:38 +00:00
Chris Young
6bced73998 Modify scheduler to use a binary heap (using libpbl).
Scheduled events are now in event time order, so schedule_run simply takes the top
event off the heap and runs it (if we're polling, rather than having received a signal
that the next event is due to be run, we check first that we have passed the scheduled
time).

This should provide performance benefits as we are no longer trawling the entire list
of scheduled events (potentially hundreds) every time an event is signalled or the
schedule list is polled.

svn path=/trunk/netsurf/; revision=11703
2011-02-16 21:29:39 +00:00
Chris Young
7d03e1f969 New tabs should show the homepage
svn path=/trunk/netsurf/; revision=11701
2011-02-16 19:14:48 +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
Chris Young
db2f823e99 Don't clear window before redraw or blit if the redraw didn't complete
svn path=/trunk/netsurf/; revision=11669
2011-02-13 19:59:32 +00:00
Chris Young
5487b42cb7 Fix clip parameters, plain text scrolling now works
svn path=/trunk/netsurf/; revision=11650
2011-02-12 10:54:41 +00:00
Chris Young
da130ad67d port to new api
svn path=/trunk/netsurf/; revision=11649
2011-02-12 10:39:21 +00:00
Chris Young
c247d54fb5 Port to browser_window_redraw()
- Scrolling text contents only shows the initial screenful
- Fast-scrolling HTML while scaled does not work properly (this is an old issue)

svn path=/trunk/netsurf/; revision=11646
2011-02-11 19:03:01 +00:00
Chris Young
4703d643f5 Fix some long-standing issues with events not getting captured, make sure the
timer.device version of the scheduler is working and make it the default.

svn path=/trunk/netsurf/; revision=11637
2011-02-09 21:52:28 +00:00
Chris Young
8895e0a0bc Kiosk mode now fills screen every time
svn path=/trunk/netsurf/; revision=11544
2011-01-30 22:15:16 +00:00
Chris Young
2cc738f2f0 Pick the CSS system colours from the pens in the screen DrawInfo table, and force
repicking them if the screen changes.
Think these are right - some of the CSS descriptions are a bit ambiguous.

svn path=/trunk/netsurf/; revision=11532
2011-01-30 17:30:32 +00:00
Daniel Silverstone
699f0cb344 Make the tree icon dir a non-option
svn path=/trunk/netsurf/; revision=11422
2011-01-20 14:05:13 +00:00
John Mark Bell
64b26c85a3 More #ifdef __amigaos4__. This is getting a little messy.
svn path=/trunk/netsurf/; revision=11235
2011-01-06 23:50:50 +00:00
John Mark Bell
d83f683e96 Sprinkle some #ifdef __amigaos4__ around
svn path=/trunk/netsurf/; revision=11230
2011-01-06 23:17:17 +00:00
Chris Young
de5cbf9ee4 Make drag scrolls work more reliably and only within 10px of render area
svn path=/trunk/netsurf/; revision=11093
2010-12-18 23:34:56 +00:00
Chris Young
96cb4b40e7 Allow double-clicks in main browser and middle button double-clicks in treeview
svn path=/trunk/netsurf/; revision=11083
2010-12-16 23:28:33 +00:00
Vincent Sanders
60c840628f Small refactor to change icon names to being passed in from frontends instead of core treeview globals
svn path=/trunk/netsurf/; revision=11053
2010-12-14 00:18:24 +00:00
Michael Drake
5eaeaed909 Remove Hubbub and Wapcaplet initialisation and finalisation.
svn path=/trunk/netsurf/; revision=10980
2010-12-04 20:14:33 +00:00
Chris Young
c14f335454 Fix serious crash if NetSurf is running twice (once with the FORCE switch) on a
NetSurf-created public screen, and the sessions are quit in the reverse order to which
they were launched.

svn path=/trunk/netsurf/; revision=10950
2010-11-21 23:30:35 +00:00
Chris Young
835d033e7b Amiga icon loader. Treeviews will now use the user's icons for content types.
svn path=/trunk/netsurf/; revision=10925
2010-10-30 14:23:38 +00:00
Chris Young
078ff2fd51 Move drag icon stuff to own file; fix warnings
svn path=/trunk/netsurf/; revision=10922
2010-10-30 11:20:53 +00:00
Chris Young
d250c43e4f Fix content icons in treeviews
svn path=/trunk/netsurf/; revision=10918
2010-10-29 18:05:48 +00:00
Chris Young
bdf3c32f44 Only allow auto-scroll on selection and selection drags
svn path=/trunk/netsurf/; revision=10904
2010-10-24 17:51:00 +00:00
Chris Young
5d40458ad5 Auto-scroll on drags beyond window boundaries
svn path=/trunk/netsurf/; revision=10894
2010-10-19 22:22:03 +00:00
John Mark Bell
6173bb0e6c Merge treeview-redux to trunk
svn path=/trunk/netsurf/; revision=10865
2010-10-05 19:14:46 +00:00
Chris Young
c46e0e6015 Ensure kiosk_mode and frame windows are (a) handled the same wrt menus and (b) not
trying to manipulate non-existant menus

svn path=/trunk/netsurf/; revision=10855
2010-09-28 18:03:03 +00:00
Chris Young
6124966ab9 Revert previous change
svn path=/trunk/netsurf/; revision=10800
2010-09-19 12:58:25 +00:00
Chris Young
f3bf62bdbb Try to avoid corruption when moving cursor around in text boxes
svn path=/trunk/netsurf/; revision=10799
2010-09-19 12:38:23 +00:00
Chris Young
300d094f2f Remove unused #include
svn path=/trunk/netsurf/; revision=10795
2010-09-17 23:31:15 +00:00
Chris Young
86b6535b85 Prevent assert on non-HTML contents
svn path=/trunk/netsurf/; revision=10789
2010-09-16 20:55:25 +00:00
Chris Young
c0332c4394 Use core file fetcher
svn path=/trunk/netsurf/; revision=10759
2010-09-12 10:23:12 +00:00
Chris Young
b3a3988ff0 Add startup and shutdown ARexx scripts (default to startup.nsrx and shutdown.nsrx)
Remove PROGDIR: from arexx_dir default as AM_EXECUTE can't find files in PROGDIR:

svn path=/trunk/netsurf/; revision=10719
2010-08-28 23:46:08 +00:00
Chris Young
0a70f6ede1 Correct font name
svn path=/trunk/netsurf/; revision=10683
2010-08-06 17:29:57 +00:00
Chris Young
294a55ad4d off by one
svn path=/trunk/netsurf/; revision=10673
2010-07-31 11:43:25 +00:00
Chris Young
95a6de5f7e Show an icon under the pointer for drag saves (missed from previous commit)
svn path=/trunk/netsurf/; revision=10671
2010-07-28 21:33:51 +00:00
Chris Young
acf46e01a8 Allow text selection dragging across (NetSurf) windows. DisplayBeep if it is dropped
somewhere invalid.

svn path=/trunk/netsurf/; revision=10665
2010-07-27 21:41:21 +00:00
Chris Young
7bf81dbf35 Fix clipping for non-HTML contents
svn path=/trunk/netsurf/; revision=10664
2010-07-26 19:52:24 +00:00
Chris Young
f7e3254798 Fix menu disable on tab switch and Cut
svn path=/trunk/netsurf/; revision=10661
2010-07-24 19:57:27 +00:00
Chris Young
004aee8281 Amiga: Add "cut" option; make cut/copy/paste menus context sensitive; allow dragging
selections within NetSurf window to text fields (does not work across windows).

todo: switching tabs will reset cut/copy/paste menus to initial state; cut option is
putting something on the clipboard which causes a crash when pasting it back

svn path=/trunk/netsurf/; revision=10660
2010-07-24 16:39:37 +00:00
Chris Young
d36758ad97 Fix some types
If "easy" charset conversion fails, return a copy of the original string.

svn path=/trunk/netsurf/; revision=10580
2010-06-26 16:26:05 +00:00
Chris Young
9bc784e8d7 More calculation fixes
svn path=/trunk/netsurf/; revision=10567
2010-06-06 18:50:48 +00:00
Chris Young
13a4a1633c Remove scroll positions from ami_do_redraw_limits, fix positional calcs in
gui_window_set_scroll

svn path=/trunk/netsurf/; revision=10564
2010-06-05 10:37:02 +00:00
Chris Young
5753d59505 When redrawing part of a page, draw with respect to the position NetSurf believes the
scrollbars are in, rather than where they actually are.  This resolves an issue with
graphical corruption and animations, when using the scrollbars to scroll the page (the
anim redraw was happening before the event to say the scrollbar had moved was being
received)

svn path=/trunk/netsurf/; revision=10563
2010-06-05 09:59:38 +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
Chris Young
f55c11dbd6 Amiga font code revamped and fixed. Will now fall back to a different font if the
character isn't present in the current one, this needs a complete or near-complete
Unicode font in order to be useful - Code2000 and Bitstream Cyberbit are auto-detected
by NetSurf on startup if none is configured.  Japanese websites now display correctly,
along with Japanese characters within Google UK search results etc.

svn path=/trunk/netsurf/; revision=10551
2010-05-06 10:02:58 +00:00
Daniel Silverstone
5e887908b3 Consolidate several 'myrealloc' functions into ns_realloc, rename one which *is* different, thereby eliminating the word 'myrealloc' from the NS codebase
svn path=/trunk/netsurf/; revision=10530
2010-04-30 16:06:03 +00:00
John Mark Bell
000e6ad3de It turns out that realloc(ptr, 0) --> free(ptr) is not actually required by the C standard (whereas realloc(NULL, size) --> malloc(size) is).
Therefore, explicitly model the behaviour expected by our libraries (that realloc of 0 size is equivalent to free).

svn path=/trunk/netsurf/; revision=10524
2010-04-30 07:00:58 +00:00
Chris Young
74647b752d Reformat all tabs when window size changes
svn path=/trunk/netsurf/; revision=10504
2010-04-27 22:40:28 +00:00
Chris Young
90079085bb Ensure menu state is correct when switching tabs
svn path=/trunk/netsurf/; revision=10476
2010-04-24 19:05:53 +00:00
Chris Young
695af237a9 Use our ca-bundle by default, rather than one in devs: which may not exist
svn path=/trunk/netsurf/; revision=10456
2010-04-22 18:33:29 +00:00
Chris Young
b6937419e1 Fix broken event handling.
Any structures attached to the window_list *must* have a struct nsObject * as their
first entry, and handle events outside of gui.c.

svn path=/trunk/netsurf/; revision=10332
2010-04-09 22:38:51 +00:00
Chris Young
6835a312b7 Remove verbose_log from options file
Copy libz as I've built 1.2.4 and it has faster gzip code

svn path=/trunk/netsurf/; revision=10230
2010-04-03 10:24:43 +00:00
Chris Young
5bae5edd7b Use DataTypes to read text files that are dropped into text boxes, this allows more
exotic formats to be read such as IFF FTXT.

svn path=/trunk/netsurf/; revision=10229
2010-04-02 16:25:55 +00:00
Chris Young
d927f70ad7 ...and right a bit
svn path=/trunk/netsurf/; revision=10228
2010-04-02 10:49:18 +00:00
Chris Young
d8da93037a Move status bar text up a bit...
svn path=/trunk/netsurf/; revision=10227
2010-04-02 10:29:20 +00:00
Chris Young
d3276dfbaf netsurf_init expects a char ***, not a char **
Change command template so URL is a keyword.  This avoids the platform code
re-interpreting core options (eg -v as a URL).
Move screen open code slightly so "NetSurf ?" shows the template visibly, rather than
opening an empty screen and the user not knowing what is happening.

svn path=/trunk/netsurf/; revision=10224
2010-04-01 17:44:42 +00:00
Chris Young
fcce190701 netsurf_init expects a pointer, not an int
svn path=/trunk/netsurf/; revision=10216
2010-03-30 18:21:20 +00:00
Vincent Sanders
e00fb7bd2d second pass at startup refactor removing the gui_init callback
svn path=/trunk/netsurf/; revision=10205
2010-03-29 20:03:44 +00:00
Vincent Sanders
7e67527267 first part of initialisation refactor move gui_init2 into frontends
svn path=/trunk/netsurf/; revision=10202
2010-03-29 16:59:30 +00:00
Chris Young
74108d1e09 Allow NetSurf to be opened from the CLI without a URL specified.
Add new switch FORCE which will force a new instance of NetSurf to open rather than
opening a new window in the already-running application (intended for debugging when
NetSurf has crashed)

svn path=/trunk/netsurf/; revision=10189
2010-03-28 16:42:33 +00:00
Chris Young
5bb5cedec5 Changes required for new-cache
svn path=/trunk/netsurf/; revision=10186
2010-03-28 15:51:05 +00:00
Chris Young
f6d0a6aa05 If a file isn't dropped over a text box or a file box, just load it.
svn path=/trunk/netsurf/; revision=10148
2010-03-23 23:09:17 +00:00
Chris Young
01cf7baac6 Tidy up. Can almost tell what is going on in gui_init now.
svn path=/trunk/netsurf/; revision=10146
2010-03-23 22:55:56 +00:00
Chris Young
861b5b4953 Factor Amiga theme-related code out to a new file. This includes all throbber and
mouse pointer code (which are "theme modifiable") as well as normal theme reading
code.

svn path=/trunk/netsurf/; revision=10145
2010-03-23 22:27:33 +00:00
Chris Young
dd5370ef83 Avoid corruption of bottom window border after resize
svn path=/trunk/netsurf/; revision=10140
2010-03-21 14:53:09 +00:00
Chris Young
c17ff1e9ae Squash memory leak and an offset problem related to helphints
svn path=/trunk/netsurf/; revision=10137
2010-03-17 22:15:03 +00:00
Chris Young
1fedc6a36a More HelpHints, these will work on OS4.1u1 and higher only.
svn path=/trunk/netsurf/; revision=10136
2010-03-17 21:43:23 +00:00
Chris Young
7220e03e7d Help hints, mainly for the tabs but also massage messages strings HelpToolbar0-4 & 14
into a format we can use on the main toolbar gadgets.  A couple of gadgets still
missing strings.

svn path=/trunk/netsurf/; revision=10134
2010-03-16 23:55:39 +00:00
Chris Young
04769b3f07 Remove caret when window is inactive, re-add when window becomes active again.
svn path=/trunk/netsurf/; revision=10133
2010-03-15 19:00:21 +00:00
Chris Young
50692dc63c Remove caret while "fast scrolling" to prevent caret-trails over the display.
svn path=/trunk/netsurf/; revision=10132
2010-03-15 18:48:14 +00:00
Chris Young
66730eb138 Only draw search favicon on normal browser windows
svn path=/trunk/netsurf/; revision=10127
2010-03-14 15:33:59 +00:00
Chris Young
33be95d328 Fix compilation
svn path=/trunk/netsurf/; revision=10074
2010-02-22 19:18:27 +00:00
Chris Young
f7c654885c Attempt fix for OS4.0
svn path=/trunk/netsurf/; revision=10073
2010-02-21 21:24:58 +00:00
Chris Young
da54611fb6 Try to avoid the tab switching if closing a tab other than the current one (doesn't
seem to work, the act of clicking close must implicity switch to that tab)
Remove extraneous Add Tab button layout group

svn path=/trunk/netsurf/; revision=10058
2010-02-14 15:32:54 +00:00
Chris Young
a380b15070 Add an Add Tab button.
Could probably do with an image for this for the default theme (currently falls back
to a textual "+")

svn path=/trunk/netsurf/; revision=10053
2010-02-14 14:00:33 +00:00
Chris Young
e1c41ba712 New window/tab now opens a blank window/tab rather than one showing the current URL
svn path=/trunk/netsurf/; revision=10051
2010-02-14 12:51:30 +00:00
Chris Young
63226802bf Tidy up includes
Add a separator bar between the toolbar and the main browser area/tabs

svn path=/trunk/netsurf/; revision=10050
2010-02-14 12:26:12 +00:00
Chris Young
099ed24184 Improved tabs for OS4.1u1:
* Tabs now have a close gadget embedded
* The tab bar only displays if there is more than one tab open
* Changed the AISS theme "tab loading" image to something more appropriate

Under OS4.0 the old tab close button and permanent tab bar still applies (needs
testing as these changes may well have broken it)

Users of OS4.1 prior to Update 1 will probably need to update!

svn path=/trunk/netsurf/; revision=10045
2010-02-14 00:46:53 +00:00
Chris Young
73827546ef Fix new warnings. Not sure if I should be declaring all the gadgets as Object *, but
that is less casting than declaring them all as struct Gadget * - and allows the
merging of object and gadget arrays, which were causing a few problems previously.

svn path=/trunk/netsurf/; revision=10039
2010-02-13 18:03:05 +00:00
Chris Young
b2376c1656 Proper download notification code, should also open the file if the notification is
double-clicked, although it doesn't seem to work.

svn path=/trunk/netsurf/; revision=10037
2010-02-13 17:31:10 +00:00
Chris Young
0b29da0700 Remove status bar checks which are now in the core.
svn path=/trunk/netsurf/; revision=9969
2010-02-11 18:49:03 +00:00
Vincent Sanders
e01d93f344 Refactor main into the frontends
remove unused embedded global

svn path=/trunk/netsurf/; revision=9851
2010-01-20 20:32:30 +00:00
Chris Young
3662b3781f Prevent crash if screen could not be opened and prefs are subsequently changed.
svn path=/trunk/netsurf/; revision=9810
2010-01-15 23:05:41 +00:00
Chris Young
44a834a08d Prevent status bar text overflow
svn path=/trunk/netsurf/; revision=9797
2010-01-08 23:13:20 +00:00
Chris Young
a3d82a3634 Search and a couple of other new options
svn path=/trunk/netsurf/; revision=9756
2009-12-23 13:29:10 +00:00
Chris Young
b11df61394 Functional search bar; search icon doesn't refresh if the search area is resized
however.

svn path=/trunk/netsurf/; revision=9755
2009-12-22 23:04:59 +00:00
Chris Young
df64fb7903 Non-functional search bar
svn path=/trunk/netsurf/; revision=9754
2009-12-21 23:25:35 +00:00
Chris Young
d2b2000367 Vertically centre the main row of toolbar gadgets as it looks much neater.
svn path=/trunk/netsurf/; revision=9752
2009-12-20 21:39:43 +00:00
Chris Young
f723272cf2 Make favicons work properly with tabs
svn path=/trunk/netsurf/; revision=9742
2009-12-19 13:42:48 +00:00
Chris Young
b53a3273c1 Preliminary favicon support - doesn't display properly due to endian issue in
libnsbmp

svn path=/trunk/netsurf/; revision=9740
2009-12-19 00:39:52 +00:00
Chris Young
46eaa6a058 Simple web search implementation
svn path=/trunk/netsurf/; revision=9735
2009-12-18 17:52:31 +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
Chris Young
4346b2b62b Allow hiding of Docky icon by setting hide_docky_icon:1
(bit of a workaround involved as REGAPP_NoIcon doesn't
appear to check the tag value)

svn path=/trunk/netsurf/; revision=9725
2009-12-13 12:14:43 +00:00
Chris Young
4bcd8ee1ba Added keyboard navigation of tabs, using Alt+Left/Right
svn path=/trunk/netsurf/; revision=9724
2009-12-13 11:52:58 +00:00
Chris Young
bc4abe9087 Fix some potential issues with lists not being freed properly
svn path=/trunk/netsurf/; revision=9677
2009-11-15 23:11:41 +00:00
Chris Young
976e5db268 Missing break
svn path=/trunk/netsurf/; revision=9662
2009-11-04 08:14:17 +00:00
Chris Young
fcaa11f548 Added F5 for reload, purely because I'm getting fed up of people asking for it.
svn path=/trunk/netsurf/; revision=9661
2009-11-04 08:06:52 +00:00
Chris Young
dcbe08d458 PageUp/Down, Home/End etc page scrolling now working.
Most menu shortcuts now available even when the pointer is hovering over the browser
window (menu disabled mode)
RAmiga-R (reload page) and RAmiga-U (activate URL bar) available from keyboard
shortcuts but not from the menu.
This fixes unsat bug #81

svn path=/trunk/netsurf/; revision=9660
2009-11-03 23:17:57 +00:00
Chris Young
1b89eb8397 Basic keyboard scrolling
svn path=/trunk/netsurf/; revision=9658
2009-11-02 23:12:28 +00:00
Chris Young
e5b8264dd8 New key handling code borrowed from the treeview branch.
svn path=/trunk/netsurf/; revision=9657
2009-11-02 23:02:53 +00:00
Chris Young
019eff10c1 Amiga print UI
svn path=/trunk/netsurf/; revision=9655
2009-11-01 14:53:04 +00:00
Chris Young
9f6a4d9745 Revert previous change, causing instability.
svn path=/trunk/netsurf/; revision=9649
2009-10-16 19:49:56 +00:00
Chris Young
4059d2b096 Fix-up the timer.device scheduler and reinstate it as default. Unfortunately this
doesn't remove the need for INTUITICKS messages as we still need to break out for page
reflow (which doesn't use the scheduler), but it should make animations more accurate.

svn path=/trunk/netsurf/; revision=9648
2009-10-15 21:35:29 +00:00
Chris Young
8753b5a35d Implement the ability to stay in memory if all windows are closed. This and no window
on startup can be used together to make NetSurf "quick launch" and always available.

svn path=/trunk/netsurf/; revision=9603
2009-10-03 11:00:10 +00:00
Chris Young
12ac8eb215 Add options for "no quit on last window close" (disabled - not implemented) and
"no window on startup"

svn path=/trunk/netsurf/; revision=9601
2009-09-29 18:24:19 +00:00
Chris Young
cf1d796491 Added application.library messages New Doc and Open Doc.
Added option_startup_no_window to allow NetSurf to be opened without an initial
browser window (unless a URL is specified on the command line or by extended
selection)

Provision for option_close_no_quit for NetSurf to stay in memory when all browser
windows are closed (not implemented yet)

svn path=/trunk/netsurf/; revision=9600
2009-09-28 22:17:09 +00:00
Chris Young
abf51104fe Register with application.library.
Icon appears on AmiDock - ToFront, Open Prefs and (Force) Quit commands work.
Open (and maybe Print) Document could potentially be added.
Not sure if AppIcon-style drag'n'drop works with application.library-registered apps
by default (once Open supported).

svn path=/trunk/netsurf/; revision=9599
2009-09-28 18:00:40 +00:00
Chris Young
2b6b97e6c1 Fix obviously wrong logic and tweak the status display area frame slightly so it looks
better (or at least fits in with the OS look better)

svn path=/trunk/netsurf/; revision=9592
2009-09-17 21:44:07 +00:00
Chris Young
a35b96ace7 Modify bottom border status gadget so that it has a frame. When the gadget is
refreshed now it will erase the gadget area before redrawing, allowing to use
RefreshGList instead of RefreshWindowFrame.  This is significantly faster as
RefreshWindowFrame redraws more than the function name suggests.

svn path=/trunk/netsurf/; revision=9577
2009-09-15 22:49:33 +00:00
Chris Young
7f369b829b Fix crash when switching to tabs that are still loading
svn path=/trunk/netsurf/; revision=9562
2009-09-08 22:59:47 +00:00
Chris Young
a3d57f2c3c Indicate when tabs are loading. Currently this only works with the AISS theme (and
probably only under OS4.1), showing a yellow flag on tabs which are currently loading.

In the future this could be expanded to show a proper animated throbber on loading
tabs, maybe instead of the main throbber.

svn path=/trunk/netsurf/; revision=9548
2009-09-06 11:23:35 +00:00
Chris Young
dac634f6fd Make throbber operate correctly according to the tab currently displayed.
svn path=/trunk/netsurf/; revision=9547
2009-09-06 10:48:14 +00:00
Chris Young
3c72fddaa0 Make the new horizontal scroller work the same way as the old one and teh vertical
scroller.

svn path=/trunk/netsurf/; revision=9536
2009-09-04 22:00:09 +00:00
Chris Young
ee6e1df605 Fix kiosk mode
svn path=/trunk/netsurf/; revision=9535
2009-09-04 18:10:15 +00:00
Chris Young
d9deb85bf3 Remove unnecessary RethinkLayout() for tabs under OS4.1 (removes flicker when
compositing off)

svn path=/trunk/netsurf/; revision=9530
2009-08-31 22:10:05 +00:00
Chris Young
f43b786c50 Support Alt
svn path=/trunk/netsurf/; revision=9529
2009-08-31 21:48:57 +00:00
Chris Young
8d72c1106c Fix fast scrolling when scaled
svn path=/trunk/netsurf/; revision=9524
2009-08-31 12:12:00 +00:00
Chris Young
057bbb634f Fix box redraw when scaled, fast scrolling now works in the upwards direction, but
not down :)

svn path=/trunk/netsurf/; revision=9522
2009-08-31 12:05:35 +00:00
Chris Young
984973015a Increase mouse wheel scroll speed again. This should bring it up to the same speed as
OS4's built-in stuff.

svn path=/trunk/netsurf/; revision=9516
2009-08-31 10:16:23 +00:00
Chris Young
44ffe7b85d Fix scroll position
svn path=/trunk/netsurf/; revision=9514
2009-08-30 22:05:09 +00:00
Chris Young
06107bf050 Mostly working scale. Fast scrolling doesn't work when scaled, and neither does
updating boxes (GIF anims etc)

svn path=/trunk/netsurf/; revision=9513
2009-08-30 21:43:14 +00:00
Chris Young
768fea80aa revert accidental change
svn path=/trunk/netsurf/; revision=9506
2009-08-30 10:22:26 +00:00
Chris Young
78834c0036 Show printing progress
svn path=/trunk/netsurf/; revision=9505
2009-08-30 10:14:16 +00:00
Chris Young
68610c1fb1 Attempt to fix kiosk_mode, still not working.
svn path=/trunk/netsurf/; revision=9499
2009-08-29 15:57:23 +00:00
Chris Young
138d0754c9 Font scaling - scaling now works for printing, need 2nd attempt at implementing it for
browsing.

svn path=/trunk/netsurf/; revision=9496
2009-08-29 14:24:47 +00:00
Chris Young
0b6f91dd61 Changes for asynchronous printing. Currently disabled, as NetSurf window doesn't
redraw while printing in progress

svn path=/trunk/netsurf/; revision=9495
2009-08-29 14:00:57 +00:00
Chris Young
4e9480e6c7 Fix page dragging etc
svn path=/trunk/netsurf/; revision=9493
2009-08-29 10:16:19 +00:00
Chris Young
965329b600 gadget tag/position tweaks
svn path=/trunk/netsurf/; revision=9491
2009-08-28 23:26:55 +00:00
Chris Young
d3039fea7b Move status bar to bottom window border, as per NetSurf standard. Thanks to Thomas
Rapp and others for info on how to do this.
Currently there seems to be a glitch which is cancelling events, making typing in
gadgets very difficult and mouse dragging almost impossible.

svn path=/trunk/netsurf/; revision=9490
2009-08-28 23:12:18 +00:00
Chris Young
3295d71a2f First attempt at Amiga printing support. Doesn't quite work - a column on the left
will print, but the rest of the page is an unexpected pastel pink.

svn path=/trunk/netsurf/; revision=9410
2009-08-23 15:59:41 +00:00
Chris Young
8d34071b8e Tweak throbber anim speed
svn path=/trunk/netsurf/; revision=9348
2009-08-18 13:06:28 +00:00
Chris Young
45e05288f0 Fix compile
svn path=/trunk/netsurf/; revision=9302
2009-08-14 17:53:28 +00:00
Chris Young
3d3bd874dc Disable resize with contents. This should stop the resize lockups once and for all.
svn path=/trunk/netsurf/; revision=8950
2009-08-01 13:16:16 +00:00
John Mark Bell
ddeadd1c02 Merge LibCSS port to trunk.
svn path=/trunk/netsurf/; revision=8752
2009-07-23 23:05:34 +00:00
Chris Young
b20949a350 Replace URL bar with custom StringView class. Thanks to Stephen Fellner, Rene W Olsen
and Joerg Strohmayer.

svn path=/trunk/netsurf/; revision=8723
2009-07-23 11:23:34 +00:00
Chris Young
0ef4d08580 Fix OS4.0 key duplication issue (unsat bug#62)
and there was much rejoicing

svn path=/trunk/netsurf/; revision=8617
2009-07-18 11:36:41 +00:00
Chris Young
01d87bd5ba Remove old progress pointer hack
svn path=/trunk/netsurf/; revision=8562
2009-07-15 17:44:25 +00:00
Chris Young
801ef751af Move all the layers code into plotters.c and refactor to use gui_globals structure
Purge option_direct_render

svn path=/trunk/netsurf/; revision=8425
2009-07-09 18:52:55 +00:00
Chris Young
651228e64d Migrate plotters to use a gui_globals pointer rather than RastPort.
svn path=/trunk/netsurf/; revision=8378
2009-07-07 19:28:34 +00:00
Chris Young
ab2391ade1 Don't make the global bitmap a friend of the screen bitmap, instead allocate it so
that alpha blitting and Cairo operations work correctly.  Running NetSurf on a 16-bit
screen is now possible without bits of the display missing or obliterated, however it
does suffer a small performance hit.

svn path=/trunk/netsurf/; revision=8331
2009-07-05 18:15:55 +00:00
Chris Young
5886f232c4 turn iconification back off as it isn't working reliably.
svn path=/trunk/netsurf/; revision=8312
2009-07-04 18:01:46 +00:00
Chris Young
f611631a5f Basic iconification support
svn path=/trunk/netsurf/; revision=8310
2009-07-04 16:12:27 +00:00
Chris Young
afbc9e9b6e Remove debug code
svn path=/trunk/netsurf/; revision=8178
2009-06-30 07:23:14 +00:00
Chris Young
3f59ba7662 Should be static, attempt to fix odd crash.
svn path=/trunk/netsurf/; revision=8176
2009-06-30 07:02:52 +00:00
Chris Young
ec2dba8579 Make all the buttons on the first two options tabs work.
May need to improve theme selection so it at least checks it is a valid theme and/or
provide a list of themes instead of a file requester.
Language selection could benefit from also having a drop-down chooser gadget too.

svn path=/trunk/netsurf/; revision=7910
2009-06-21 22:12:52 +00:00
Chris Young
040da4cf7b Amiga Options GUI template code and a bonus "redraw" option in the menu
svn path=/trunk/netsurf/; revision=7900
2009-06-20 22:29:43 +00:00
Chris Young
856fde9a4e Don't ask for a screenmode when one is not set unless we actually need it.
Immediately save Options once the user has selected a screenmode.
This now makes it possible to ask whether they want NetSurf to run on the Workbench or
a new NetSurf screen during installation.

svn path=/trunk/netsurf/; revision=7895
2009-06-20 13:29:30 +00:00
Chris Young
98092d7f16 If the extent changes, make sure the next redraw does the entire visible area,
otherwise it goes a bit weird in faster_scroll mode.

svn path=/trunk/netsurf/; revision=7889
2009-06-20 09:57:26 +00:00
Chris Young
85c2f83dc9 Actually return a value if the function requires it.
More faster_scroll fixes, redraws properly now when clicking anchor links.

svn path=/trunk/netsurf/; revision=7885
2009-06-19 18:32:31 +00:00
Chris Young
f0acd5bfb7 Allow setting throbber speed in Theme definition file
svn path=/trunk/netsurf/; revision=7807
2009-06-15 18:41:14 +00:00
Chris Young
abdfed143c reset scroll values to reflect position for new content
svn path=/trunk/netsurf/; revision=7800
2009-06-14 12:34:53 +00:00
Chris Young
0c1d88b218 Ensure page fully updates when faster_scroll active and clicking on a link with an
anchor point.

svn path=/trunk/netsurf/; revision=7710
2009-06-04 18:19:27 +00:00
Chris Young
c4e27563c4 Pass scroller position to ami_do_redraw_limits, this fixes gaps and overlaps in fast
scroll mode.
Make faster_scroll the default as it is useful now.  Will remove the option to disable
it after further testing.

svn path=/trunk/netsurf/; revision=7703
2009-06-03 19:44:43 +00:00
Chris Young
42ba4e23a5 Fix new pages not always rendering when using faster_scroll
svn path=/trunk/netsurf/; revision=7692
2009-06-03 07:14:24 +00:00
Chris Young
df678b6d60 Basic SSL certificate verification for Amiga version
Treeview window is not browseable (TimedDOSRequester is blocking)
Needs some strings writing

svn path=/trunk/netsurf/; revision=7675
2009-05-31 22:12:42 +00:00
Chris Young
3a2df205c2 Don't fast scroll when the user is scrolling more than one window's worth in any
direction

svn path=/trunk/netsurf/; revision=7674
2009-05-31 20:14:15 +00:00
Chris Young
a49b8cdcf0 set_scroll should only activate faster_scroll if it is set in the options
svn path=/trunk/netsurf/; revision=7669
2009-05-31 15:19:46 +00:00
Chris Young
0ccf0e0d97 Fix minor problems with tab switching
svn path=/trunk/netsurf/; revision=7668
2009-05-31 15:17:35 +00:00
Chris Young
8e8d36156a Fix faster_scroll
svn path=/trunk/netsurf/; revision=7667
2009-05-31 15:05:26 +00:00
Chris Young
1e42e3a7ce Fully clear clipregion, stops eg. only a little bit of images being shown if the previous
page had an animated GIF

svn path=/trunk/netsurf/; revision=7662
2009-05-31 10:14:55 +00:00
Chris Young
c277afc6d9 This really fixes the resize bug (#63)
svn path=/trunk/netsurf/; revision=7630
2009-05-29 22:56:49 +00:00
Chris Young
6770f7b9f9 Re-check window dimensions before copying contents in. This stops window borders
getting corrupted and crashes when resizing (unsat bug#63)

svn path=/trunk/netsurf/; revision=7628
2009-05-29 22:30:15 +00:00
Chris Young
6ac80f3e05 Vague attempt at direct rendering
THIS IS NOT AND PROBABLY NEVER WILL BE IN ANY WAY USEFUL EXCEPT FOR DEBUGGING!
In particular it will probably crash when opening/closing multiple windows and the
display is offset incorrectly.

svn path=/trunk/netsurf/; revision=7547
2009-05-25 22:32:38 +00:00
Chris Young
181615779d Change back to Smart Refresh windows
svn path=/trunk/netsurf/; revision=7543
2009-05-25 10:13:53 +00:00
Chris Young
8ac6d344f5 Prevent gadget and menu disable/enable magic from acting on frames (this fixes bug#207
at bugs.os4depot.net)

svn path=/trunk/netsurf/; revision=7541
2009-05-24 13:13:27 +00:00
Chris Young
3a93fd1085 Fix crash when pages are loading
svn path=/trunk/netsurf/; revision=7537
2009-05-23 19:06:58 +00:00
Chris Young
6f120338ed Add ability to copy SVGs to the clipboard and save in IFF DR2D format.
svn path=/trunk/netsurf/; revision=7523
2009-05-19 07:23:56 +00:00
Chris Young
47fa825ae0 Add Save as IFF to main menus
Disable menu items that aren't relevant for current content

svn path=/trunk/netsurf/; revision=7521
2009-05-17 10:40:42 +00:00
Chris Young
c523d9f20b Populate option_accept_language with the user's preferred languages, in order.
LangNames now contains the language codes for all languages available with OS4.1, plus
Welsh (http://aminet.net/package/misc/misc/welsh_lang).  There are no other 3rd party
.language files available for OS4 that I am aware of, but any new ones can easily be
added if/when they become available.

These may now not be exactly the same as the RISC OS names, but that can be resolved
by renaming directories for new translations (current ones are OK), or reverting back
to the AmigaOS names for Messages files paths.

svn path=/trunk/netsurf/; revision=7452
2009-05-09 18:56:12 +00:00
Chris Young
14a6c56748 CompositeTags() was clipping one pixel too close.
svn path=/trunk/netsurf/; revision=7432
2009-05-07 22:40:52 +00:00
Chris Young
e7cbf49fb9 Some optimisations, makes page rendering much quicker at least on OS4.1.
svn path=/trunk/netsurf/; revision=7431
2009-05-07 18:40:33 +00:00
Chris Young
84873deeff Add Abort button to download window
svn path=/trunk/netsurf/; revision=7384
2009-04-30 18:40:26 +00:00
Chris Young
160ec892e1 Make it a bit easier to see the text under the cursor, by complementing rather than
obliterating.

svn path=/trunk/netsurf/; revision=7372
2009-04-29 17:05:40 +00:00
Chris Young
98996a4a97 Ignore screen_modeid if it isn't a hex value
svn path=/trunk/netsurf/; revision=7326
2009-04-26 21:27:48 +00:00
Chris Young
00e37846b2 Speed up scrollwheel scrolling due to complaints :)
Restrict screen mode requester to 24 and 32-bit modes only, as the alpha blitting
doesn't work in 16-bit modes (may not work in 24-bit either, but I'm not sure and
Classic OS4 users are likely to have 24-bit cards so don't really want to restrict it
further)

svn path=/trunk/netsurf/; revision=7316
2009-04-25 21:51:40 +00:00
John Mark Bell
daf7a52dd6 Hubbub is no longer optional.
Remove libxml2 parser binding.

svn path=/trunk/netsurf/; revision=7115
2009-04-17 00:54:27 +00:00
Chris Young
9f4851d288 Fix ARexx download queue - GummiSurf now works, and manual ARexx-initiated downloads
will be processed in turn rather than simultaneously.

svn path=/trunk/netsurf/; revision=7075
2009-04-14 18:51:10 +00:00
Chris Young
9f39880e8c fix compilation
svn path=/trunk/netsurf/; revision=7054
2009-04-06 17:25:21 +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
Chris Young
76665e8886 Update to use browser_window_refresh_url_bar()
svn path=/trunk/netsurf/; revision=7000
2009-03-30 18:04:30 +00:00
Chris Young
736cb29be0 Stop screen updates going odd when animated GIFs are in the page.
Much simpler tests than before too.

svn path=/trunk/netsurf/; revision=6985
2009-03-29 10:53:51 +00:00
Chris Young
2785f18af5 Mouse scrollwheel support
svn path=/trunk/netsurf/; revision=6976
2009-03-28 23:51:39 +00:00
Chris Young
67719a64e6 Add a note about those lines I commented out earlier.. have remembered why they were
there.  Leave them commented out pending a fix.

svn path=/trunk/netsurf/; revision=6975
2009-03-28 20:36:07 +00:00
Chris Young
b180dd1a11 Stop cursor drawing off the page
Implement gui_window_save_as_link
Fix warnings


svn path=/trunk/netsurf/; revision=6970
2009-03-28 15:43:12 +00:00
Chris Young
2bf6bd72b8 Remove some checks before redraw, as they only seem to achieve stopping redraws
happening when we need them.

svn path=/trunk/netsurf/; revision=6969
2009-03-28 14:44:16 +00:00
Chris Young
2cfe83a921 Minor fixes
svn path=/trunk/netsurf/; revision=6967
2009-03-28 12:56:59 +00:00
Chris Young
a28f64386e Implement a download queue for ARexx-initiated downloads. Working manually, however
GummiSurf is causing it to crash for some reason.

Split download/save routines off into a new file.

svn path=/trunk/netsurf/; revision=6966
2009-03-28 12:50:19 +00:00
Chris Young
487223feb9 Make NetSurf look a little closer to the default OS4 theme
svn path=/trunk/netsurf/; revision=6950
2009-03-27 20:04:34 +00:00
Chris Young
4a8b0ca787 Call bitmap_save() for native drag saves.
(still does nothing as bitmap_save isn't implemented yet)

svn path=/trunk/netsurf/; revision=6903
2009-03-26 18:22:24 +00:00
Chris Young
8d58a8b87b Add save_complete to drag save
svn path=/trunk/netsurf/; revision=6896
2009-03-26 08:26:01 +00:00
Chris Young
07af1bd8fd Change pointer imagery when dragging
Disable drag saving when not running on the Workbench screen

svn path=/trunk/netsurf/; revision=6882
2009-03-25 19:59:10 +00:00
Chris Young
be609c1dfa Some sort of drag-save implementation.
Limitations:
  NetSurf must be running on the Workbench screen
  Only drags to Workbench disk/drawer windows or icons are supported
  Text selection drags are always called netsurf_text_file

Until workbench.library gets a proper function to handle dragging from applications,
this is as good as it will get.

Bugs:
  Pointer imagery needs to change to reflect the dragging, and prevent the usual
pointer changes while the drag is in progress
  Functionality needs to be disabled if NetSurf isn't running on the Workbench screen
(will currently act as if things are being dropped on the WB screen)
  Overwrites existing files without prompting

svn path=/trunk/netsurf/; revision=6865
2009-03-25 00:03:43 +00:00
Chris Young
5b2d816d86 Move gui_drag_save_selection() into the same file as gui_drag_save_object() as they
will have common code when implemented.

svn path=/trunk/netsurf/; revision=6859
2009-03-24 18:53:22 +00:00
Chris Young
ede9c4858d Update to new _available() functions
svn path=/trunk/netsurf/; revision=6858
2009-03-24 18:28:02 +00:00
Chris Young
c9fc91c6e4 Set history scroll offsets
svn path=/trunk/netsurf/; revision=6815
2009-03-22 00:12:12 +00:00
Chris Young
317fb4ec91 Rexx dir should default to PROGDIR: too
svn path=/trunk/netsurf/; revision=6796
2009-03-17 21:34:01 +00:00
Chris Young
f648479aec Access Resources relative to program directory rather than current directory.
svn path=/trunk/netsurf/; revision=6795
2009-03-17 21:25:20 +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
Chris Young
eabb5339a3 Close history and search windows when associated browser window closes.
svn path=/trunk/netsurf/; revision=6786
2009-03-15 11:29:33 +00:00
Chris Young
eab55f2c5a Fix warnings
Fall back to default theme if specified one can't be found

svn path=/trunk/netsurf/; revision=6785
2009-03-15 11:21:46 +00:00
Chris Young
d3d7fc7c66 Stop browser resizes from crashing.
I really don't like using Forbid() and Permit() but the lock-up seems to be caused by
the window continuing the resize while the reformat is taking place and this appears
to be the only way to stop it.  Resizes are relatively rare so shouldn't cause
problems.

svn path=/trunk/netsurf/; revision=6784
2009-03-14 16:18:09 +00:00
Chris Young
305ab859ad Remove gap between the tab close gadget and the first tab
svn path=/trunk/netsurf/; revision=6776
2009-03-11 19:23:57 +00:00
Chris Young
502879043b Fix scroll position for new pages/tabs
svn path=/trunk/netsurf/; revision=6744
2009-03-09 07:21:19 +00:00
Chris Young
a074bdbe54 Stop NetSurf jumping back to the top of the document when scrolling before the page
has finished loading.

svn path=/trunk/netsurf/; revision=6742
2009-03-08 23:40:58 +00:00
Chris Young
0bdcf4b8e2 Implement thumbnail creation
svn path=/trunk/netsurf/; revision=6736
2009-03-08 17:41:24 +00:00
Chris Young
f6951c0d51 Mostly-working local history window
svn path=/trunk/netsurf/; revision=6733
2009-03-08 16:24:52 +00:00
Chris Young
cbae6a91dd Stop local history from crashing, display mostly works (no thumbnails and offset wrong
to window), no event handling other than closing the window.

svn path=/trunk/netsurf/; revision=6730
2009-03-08 12:52:44 +00:00
Chris Young
b0e61211f9 Clear clip regions after rendering finished.
svn path=/trunk/netsurf/; revision=6728
2009-03-07 20:52:50 +00:00
John Mark Bell
847b776285 Purge NETSURF_USE_SSL and WITH_SSL
svn path=/trunk/netsurf/; revision=6599
2009-02-22 15:07:50 +00:00
Chris Young
5668fa1154 Remove default theme's dependency on AISS
svn path=/trunk/netsurf/; revision=6567
2009-02-18 20:04:59 +00:00
Chris Young
f90e43e2b0 Fix a bug where public screens would remain open if NetSurf was the last visitor
window to close.

svn path=/trunk/netsurf/; revision=6485
2009-02-14 12:29:07 +00:00
Chris Young
b3bc3eb896 Don't bother trying to render things that are completely off the screen
svn path=/trunk/netsurf/; revision=6412
2009-02-10 18:53:17 +00:00
Chris Young
e1133726c9 Fix animated GIF display
svn path=/trunk/netsurf/; revision=6397
2009-02-08 10:12:27 +00:00
Chris Young
2c78e54298 Really stop overwriting window borders (also fix fast scrolling down, and break fast
scrolling up)

svn path=/trunk/netsurf/; revision=6394
2009-02-07 16:40:56 +00:00
Chris Young
146e26a403 Some attempt at faster scrolling - can be enabled with option faster_scroll:1
svn path=/trunk/netsurf/; revision=6364
2009-02-05 12:20:23 +00:00
Chris Young
73b761ecf5 Try to stop rendering of things that can't be seen
svn path=/trunk/netsurf/; revision=6362
2009-02-04 18:10:10 +00:00
Chris Young
c8a8a7808e Tidy-up of redraw code
svn path=/trunk/netsurf/; revision=6345
2009-02-01 22:54:31 +00:00
Chris Young
350ab68077 gui_window_update_box and gui_window_redraw now only update the relevant areas.. I
think.  They are liable to destroy things outside of the render area as well
currently.

svn path=/trunk/netsurf/; revision=6342
2009-02-01 21:28:59 +00:00
Chris Young
ad6f72667b Remove the caret by replacing it with the area under the caret, rather than the area
displayed somewhere else on the page.

svn path=/trunk/netsurf/; revision=6338
2009-02-01 18:36:17 +00:00
Chris Young
e8399d8a76 Oops, probably shouldn't double-convert text
svn path=/trunk/netsurf/; revision=6330
2009-02-01 13:30:47 +00:00
Chris Young
1c1347a215 Convert UTF-8 titles to local charset for display in tabs
Disable keyboard shortcuts for tabs as an underscore in the title was causing
keypresses to be ignored or tabs to be switched unexpectedly

svn path=/trunk/netsurf/; revision=6329
2009-02-01 13:26:21 +00:00
Chris Young
fb0a2116a3 Change to use names instead of numbers for keypresses
Add missing keypresss

svn path=/trunk/netsurf/; revision=6328
2009-02-01 13:01:46 +00:00
Chris Young
4cf6935761 Added context menu option to download the link target.
Added SAVEAS/K to OPEN ARexx command to download a URL instead of displaying it.

svn path=/trunk/netsurf/; revision=6326
2009-01-31 23:45:25 +00:00
Chris Young
83d696ace7 This is the actual fix for the crashing, although this is temporary as the
implementation needs changing.

svn path=/trunk/netsurf/; revision=6283
2009-01-26 18:38:47 +00:00
Chris Young
aa2df8c599 This appears to fix an odd crash
svn path=/trunk/netsurf/; revision=6262
2009-01-25 11:18:42 +00:00
Chris Young
b5ee67b20e Handle key-presses manually for greater control, and to remove some keyboard
copy'n'paste annoyances.  Caps lock still fails to work though.

svn path=/trunk/netsurf/; revision=6261
2009-01-25 00:36:30 +00:00
Chris Young
0ec4f9482c Clear render area properly when switching tabs
svn path=/trunk/netsurf/; revision=6116
2009-01-17 16:13:56 +00:00
Chris Young
cd4f5ebd08 nsfont_width implemented for Unicode text
cache outline fonts for big speedup

still need to implement other text size functions
and also bold and italic fonts

svn path=/trunk/netsurf/; revision=6095
2009-01-16 20:05:21 +00:00
Chris Young
e7a06713af Some redraw optimisations
svn path=/trunk/netsurf/; revision=6071
2009-01-15 20:03:15 +00:00
Chris Young
60338f768f Allocate the file requester after reading the options which contain the values we need
to put in the allocation request

svn path=/trunk/netsurf/; revision=6068
2009-01-15 12:26:06 +00:00
Chris Young
bb090ee7c3 Reinstate WINDOW_Qualifier - the AutoDoc is wrong, it returns a uint32 not a uint16.
This should stop shift and ctrl keys from appearing to get stuck down.

svn path=/trunk/netsurf/; revision=6035
2009-01-10 23:10:54 +00:00
Chris Young
ccbf443125 Revert WINDOW_Qualifier change which was supposed to make shift and ctrl keyboard
reading more reliable, but for some reason wasn't returning the keyboard state as it
should.

svn path=/trunk/netsurf/; revision=6034
2009-01-10 22:57:23 +00:00
Chris Young
4a706860a5 If screen mode ID is not set in the options, prompt for a screenmode on startup. This
replaces the old BestModeID() guess based on the window_screen_width,
window_screen_height and screen_depth options.

use_workbench has been replaced with use_pubscreen.  If set, NetSurf will attempt to
open on the named public screen.  If this fails it will fall back to Workbench (it
will not fall back to opening an own screen).
use_pubscreen:Workbench is equivalent to use_workbench:1

Allocate ASL file requesters specially for saves, to keep a consistent load/save
interface.  May also need a seperate one for the ARexx file requester.

svn path=/trunk/netsurf/; revision=6025
2009-01-10 21:31:21 +00:00
Chris Young
59f551171c Fix crash when launching NetSurf if it is already running.
svn path=/trunk/netsurf/; revision=5941
2008-12-28 12:35:55 +00:00
Chris Young
495fa6c648 Minor changes for Amiga Cairo build
svn path=/trunk/netsurf/; revision=5940
2008-12-28 12:24:18 +00:00
Chris Young
dbc6d8793f Reduce memory usage
svn path=/trunk/netsurf/; revision=5926
2008-12-26 19:04:57 +00:00
Chris Young
5bff3e3287 Update for new SDK
svn path=/trunk/netsurf/; revision=5915
2008-12-20 10:54:59 +00:00
Chris Young
0951de5c0e Clear display area when switching tabs
Remove always_open_tabs
Move pointer filenames to theme files


svn path=/trunk/netsurf/; revision=5908
2008-12-13 23:25:42 +00:00
Chris Young
a121a3cd73 Fixed display of plain text files beyond the initial visible area.
svn path=/trunk/netsurf/; revision=5898
2008-12-10 19:30:00 +00:00
Chris Young
3e71585311 When a visitor window was present on NetSurf's public screen and NetSurf was quit, the
screen would fail to close.  Re-launching NetSurf would then fail to open a public
screen as a public screen with the same name was already open.  The window would end
up on the Workbench screen and then crash as the pointer to the screen being used was
NULL.

This fixes the problem by closing the ARexx port early (this stops any new sessions
from thinking NetSurf is still running) and looping until Intuition closes the screen.
Running NetSurf will check for a public screen of name NetSurf if opening a new screen
fails and use this if present.  It will also fall back to using the Workbench screen
if both opening a new screen and locking an existing NetSurf screen fails.

svn path=/trunk/netsurf/; revision=5886
2008-12-07 21:50:04 +00:00
Chris Young
7c695048ae Make NetSurf's screen a public screen with the name "NetSurf".
svn path=/trunk/netsurf/; revision=5885
2008-12-06 10:43:25 +00:00
Chris Young
17bc053fbf NetSurf will now check if it is already running (ie. if ARexx port NETSURF exists),
and quit and send an OPEN command to the one in memory if this is the case.

Setting files as projects of NetSurf is now possible, as is multi-select launching
from Workbench.  Multi-selects are not passed through using ARexx yet, only the first
file in the list will be opened if NetSurf is already running.

Plain text files which have no MIMETYPE tooltype are now correctly identified as
text/plain instead of text/ascii, allowing them to be opened locally.

svn path=/trunk/netsurf/; revision=5698
2008-11-16 14:42:40 +00:00
Chris Young
d6874d05b1 Allow opening of local files from anywhere, not just the parent of the current dir.
svn path=/trunk/netsurf/; revision=5695
2008-11-15 15:28:17 +00:00
Chris Young
3b6476130d mime type overflow and tab switching fixes.
svn path=/trunk/netsurf/; revision=5660
2008-11-09 14:02:04 +00:00
Chris Young
834eb20101 AmigaOS implementation of complete page save.
svn path=/trunk/netsurf/; revision=5653
2008-11-08 23:08:55 +00:00
Chris Young
d934e52dc6 Minor fixes, changing some defaults to safer values, screen_modeid should now work.
Added screen_depth to stop it complaining when trying to BestModeID() a 32-bit screen
on a system that doesn't have one.


svn path=/trunk/netsurf/; revision=5650
2008-11-03 19:21:40 +00:00
Chris Young
cae0d4a43b Change memory allocations to MEMF_PRIVATE to enable paging on OS4.1.
svn path=/trunk/netsurf/; revision=5649
2008-11-02 00:21:49 +00:00
Chris Young
124899e5bc ARexx menu with items populated from arexx_dir.
svn path=/trunk/netsurf/; revision=5632
2008-10-26 12:25:26 +00:00
Chris Young
30b09368e7 Track the current/last used browser window (at the moment, just for ARexx).
Extended ARexx port.  First two are primarily for openurl.library:
* OPEN now takes a parameter NEW=NEWWINDOW/S to open the URL in a new window (default
is
to open in the current browser window)
* TOFRONT will bring NetSurf's screen to the front (this may be extended in the future
to bring the current browser window to the front - which might be better for when it
is running on the WB screen)

Next is to make it easy to support getvideo.rexx:
* GETURL returns the URL of the current browser window in RESULT

GetVideo.nsrx script will get the current URL and pass it to rexx:getvideo.rexx
Currently there is no way to call ARexx scripts directly from NetSurf, or any way to
specify whether to save, play or saveplay the video without editing the script.

[clipboard.c/clipboard.h were missing from previous commit]

svn path=/trunk/netsurf/; revision=5631
2008-10-25 23:22:34 +00:00
Chris Young
2f4beda48c Complete (but quite minimal at the moment) context menu implementation for AmigaOS:
Links, objects and upload file boxes have their own menu item or submenu.

Context menus can be enable/disabled and be made "sticky" with the following options:
context_menu
sticky_context_menu

Seperated clipboard related code out to clipboard.c to make it easier to maintain and
add the ability to copy URLs to the clipboard.  Copying images to the clipboard will
come later.


svn path=/trunk/netsurf/; revision=5629
2008-10-25 16:37:08 +00:00
Chris Young
5624bf590d Initial context menus. Five possible options (copy link to clipboard, download link,
show object, save object and select file for upload), only one implemented at the
moment.  Menu structure/strings need some thought and tidy-up (with object and URL
options in their own sub-menus?)

svn path=/trunk/netsurf/; revision=5612
2008-10-21 18:04:27 +00:00
Chris Young
1fffdafe21 Prepare for context menus
svn path=/trunk/netsurf/; revision=5607
2008-10-20 18:06:46 +00:00
Chris Young
ddb6946431 Various fixes in relation to tabs.
svn path=/trunk/netsurf/; revision=5598
2008-10-19 11:33:05 +00:00
Chris Young
cde05b7d9f Basic theme support.
NetSurf will use the theme pointed to by the Options file "theme:".  Default is
Resources/Themes/Default

This directory must contain a file called Theme which indicates which files should be
used for which images.  The number of frames in the Throbber must also be specified
here.  See Resources/Themes/Default/Theme for an example.

svn path=/trunk/netsurf/; revision=5592
2008-10-18 13:56:12 +00:00
Chris Young
1d8bbfae4c Implemented the ability to add hotlist entries to the Hotlist menu. Modified the
default Hotlist links so they show up in the menu.  Currently deleting items from the
menu is dangerous.

To add to the Hotlist menu, add a folder node called "Menu" to the root node of the
hotlist tree.

Items in this folder node up to a maximum (currently) of 40 items will be added to the
Hotlist menu, within the limits of the Intuition menu system.

Items in folders within the Menu folder node will be converted to subitems in the
menu.

Folder nodes with no entries and folder nodes at level 3 in the heirarchy will become
menu items with no action.  Items deeper will not be included in the menu at all.

eg.

Root
 |
 +- Menu
      |
      +- Netsurf
      |     |
      |     +- NetSurf Homepage
      |     |
      |     +- More NetSurf links
      |                |
      |                +- NetSurf bugtracker
      |
      +- Google

Will look something like the following within the menu:

|NetSurf »| - |NetSurf Homepage  |
|Google   |   |More NetSurf links|



svn path=/trunk/netsurf/; revision=5577
2008-10-14 22:43:02 +00:00
Chris Young
5bf4caf6ba AmiUpdate support.
svn path=/trunk/netsurf/; revision=5564
2008-10-13 18:01:25 +00:00
Chris Young
86042c61ea Improved Amiga treeview support. Now creates trees for cookies and history (history
doesn't populate at the moment).  Can add folders and edit titles in hotlist
treeviews, and delete entries in all treeviews.

svn path=/trunk/netsurf/; revision=5542
2008-10-11 21:38:04 +00:00
Chris Young
dfec4035dd List traversing tidy-up.
svn path=/trunk/netsurf/; revision=5499
2008-10-06 18:20:16 +00:00
Chris Young
2808d77089 Full quit function and associated ARexx command (QUIT)
svn path=/trunk/netsurf/; revision=5498
2008-10-06 17:47:31 +00:00
Chris Young
be787cabb1 Closing entire windows instead of just tabs is now possible
svn path=/trunk/netsurf/; revision=5497
2008-10-06 07:07:33 +00:00
Chris Young
afa472c874 Fixed some problems with tabs, added a tab close gadget.
svn path=/trunk/netsurf/; revision=5489
2008-10-05 21:20:12 +00:00
Chris Young
4708c7b259 Kiosk mode (borderless window, no gadgets or menu etc)
To enable, set kiosk_mode:1

Requested for upcoming Amiga show.


svn path=/trunk/netsurf/; revision=5484
2008-10-05 14:22:02 +00:00
Chris Young
ec72e05bdc AmigaOS tabs implementation.
Two new strings: NewTab, CloseTab

Two new options:
always_open_tabs indicates to open tabs instead of windows by default
new_tab_is_active makes any new tab the current one (default is to open tabs in
background)

svn path=/trunk/netsurf/; revision=5483
2008-10-05 13:17:18 +00:00
Chris Young
bd94b12422 Incomplete support for tabbed browsing.
svn path=/trunk/netsurf/; revision=5482
2008-10-04 23:29:17 +00:00
Chris Young
a0b8680a6d Minimal ARexx port.
Port name: NETSURF
Commands supported: OPEN

OPEN URL/A
Opens URL specified by URL argument in new browser window.


svn path=/trunk/netsurf/; revision=5462
2008-09-29 19:35:30 +00:00
Chris Young
4da1f6cd23 - Accept a URL as an argument to open that page on startup (this is needed for OpenURL
support)
- Fix loads of warnings

svn path=/trunk/netsurf/; revision=5460
2008-09-28 22:50:13 +00:00