Commit Graph

466 Commits

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