aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-10-13Add new scrollbar page modeRodrigo Arias Mallo
The scroll page mode changes the behavior of the mouse when clicking on the vertical scrollbar. When enabled with scrollbar_page_mode=YES, clicking with the left button anywhere on the vertical scrollbar will cause the page to scroll down one page. With the right button, to scroll up one page. Holding Shift temporarily reverts the value of the option.
2024-10-13Add support for left scrollbarRodrigo Arias Mallo
Implements support for placing the vertical scrollbar on the left side by setting scrollbar_on_left=YES on dillorc. By default, continues to be on the right side. See: https://www.toomanyatoms.com/software/mobilized_dillo.html Authored-By: dogma
2024-10-06Test the C++ compiler worksRodrigo Arias Mallo
Stops the configure process if the C++ compiler doesn't work, otherwise it will fail at build time. Fixes: https://github.com/dillo-browser/dillo/issues/187
2024-10-05Add support for more CSS unitsRodrigo Arias Mallo
Implements support for ch, rem, vw, vh, vmin and vmax units of CSS lengths. For now the units relative to the viewport are only computed once, and they won't change when the window is resized, but only when the page is reloaded. See: https://www.toomanyatoms.com/software/mobilized_dillo.html Authored-By: dogma
2024-10-05Define CssLength as struct instead of intRodrigo Arias Mallo
The int type doesn't have a fixed size, and is only guarantee to hold 16 bits. The current implementation assumes a size of at least 32 bits, an uses three bits to encode the type of information stored in the rest. To add more types of lengths we would need to take more bits from the value itself. A simpler approach is just to use a enumeration to take care of the type of length and a union to encapsulate the different lengths values.
2024-10-04Add doc/install.md to releaseAlex
2024-10-03Use command -v instead of whichmeat
2024-10-01Trigger a close of td, th and tr tags on tbodyRodrigo Arias Mallo
When previous TD, TH or TR tags were left open, close them when a TBODY tag is found.
2024-10-01Add unclosed tag test for tbody, thead and tfootRodrigo Arias Mallo
2024-09-11Fix Google search by adding gbv=1 paramRodrigo Arias Mallo
If not given, it will cause any search attempt to go to a redirect page, which forces the user to click a small link to go to another search with the gbv=1 param set (along with other tracking parameters). Providing it from the start avoids the hassle.
2024-09-11Switch to HTTPS for Google searchRodrigo Arias Mallo
Use HTTPS by default, as Google won't redirect to HTTPS on its own.
2024-09-11Fix heap use after free in TLS conn on errorsRodrigo Arias Mallo
When a error causes the TLS connection to fail and stop, the conn struct is free on Tls_close_by_key(), so writing to conn->in_connect is not correct after that point. The solution is to only set the flag when the it is still valid. Reported-by: Alex <a1ex@dismail.de> Link: https://lists.mailman3.com/hyperkitty/list/dillo-dev@mailman3.com/thread/TY2JYCIPC7IQ32U6VC7ZOV3FVFFOE5K3/
2024-09-10Generate boundary by choosing a random characterRodrigo Arias Mallo
Instead of rejecting random characters that are not in the boundary character set, draw a random index and select the character at that position. The probability distribution is not perfectly uniform with this method, but reduces the number of calls to rand() by 4 times on average.
2024-09-02Restrict boundary to alphanum charactersRodrigo Arias Mallo
Makes it less likely that server implementations may break due to unexpected boundary characters. It also allows us to avoid quotes around the boundary.
2024-09-02Avoid searching for boundary in file contentXavier Del Campo Romero
Making the boundary string very unlikely to collide with the file to upload allows Dillo to assume it would never be found and avoids the expensive memmem() check. Even if major implementations tend to add several '-' characters to multipart/form-data boundaries, this is not enforced by RFC 2046, so it can be increase to 70 random characters. See: https://lists.mailman3.com/hyperkitty/list/dillo-dev@mailman3.com/thread/VUB5PIOPJZ2VTCVGQPBZMGOYEISTXCFX/
2024-08-11Round CSS value after applying zoom levelRodrigo Arias Mallo
When a 1px value is used for the border, any zoom level that makes it smaller makes the resulting size 0, so it disappears. Using round instead leaves more room for zooming out before it disappears. Fixes: https://github.com/dillo-browser/dillo/issues/240
2024-08-11Stick to POSIX make rulesRodrigo Arias Mallo
Using $< in a non-suffix rule context is a GNUmake idiom Reported-by: Alex <a1ex@dismail.de>
2024-08-07Disable CSS messages for nowRodrigo Arias Mallo
Long CSS stylesheets may fill the console output hiding important messages. For now let's disable them, until we improve the mechanism to select which messages should be enabled at runtime.
2024-08-07Stop the layouting loop after 1000 iterationsRodrigo Arias
Prevents Dillo from hoarding the CPU due to an infinite loop in the layouting. We also return the control to FLTK to update the screen and process events each 100 iterations, to keep the window responsive. It doesn't fix the root cause of the github-infinite-loop test, but it does allow the rendering to finish with no differences with the reference test.
2024-08-07Add GitHub infinite loop HTML render testRodrigo Arias Mallo
2024-08-07Avoid C++11 default keywordRodrigo Arias Mallo
While we still require C++11 for the macros, there is no need to add another dependency for this case. Reported-by: dogma
2024-08-07Add entry about portability in ChangeLogRodrigo Arias Mallo
Also add missing hyphens on previous entries.
2024-08-07Remove unused init() functionRodrigo Arias Mallo
2024-08-07Use d_isascii() instead of isascii()Rodrigo Arias Mallo
Reviewed-by: dogma Tested-by: Alex (on OpenBSD)
2024-08-07Use dStrAsciiCasecmp instead of strncasecmpRodrigo Arias Mallo
Reviewed-by: dogma
2024-08-07Use POSIX-2001 for C++ tooRodrigo Arias Mallo
Reviewed-by: dogma
2024-08-07Use dStrdup instead of strdupRodrigo Arias Mallo
The strdup function is not available in POSIX-2001, so we use our own implementation in dlib: dStrdup. Reviewed-by: dogma
2024-08-07Avoid INADDR_LOOPBACK as it is an extensionRodrigo Arias Mallo
Instead use inet_addr("127.0.0.1") which is POSIX 2001 and also more clear. Reviewed-by: dogma
2024-08-07Use portable dUsleep() instead of usleep()Rodrigo Arias Mallo
Reviewed-by: dogma
2024-08-07Add portable usleep() replacementRodrigo Arias Mallo
Reviewed-by: dogma
2024-08-07Build tests with -pedanticRodrigo Arias Mallo
Reviewed-by: dogma
2024-08-07Fail on warnings in CIRodrigo Arias Mallo
Reviewed-by: dogma
2024-08-07Make Dillo C99 standard compliantRodrigo Arias Mallo
Reviewed-by: dogma
2024-08-07Report C compiler and flags on configure summaryRodrigo Arias Mallo
Reviewed-by: dogma
2024-08-07Remove -Waggregate-return warningRodrigo Arias Mallo
It is used by nanosvg library Reviewed-by: dogma
2024-08-07Fix pedantic warningsRodrigo Arias Mallo
Reviewed-by: dogma
2024-08-07Enable -pedantic and -std=c++11 by defaultRodrigo Arias Mallo
Reviewed-by: dogma
2024-07-27Add SVG support for currentColorRodrigo Arias Mallo
The currentColor special value for the fill and stroke attributes allows an image to follow the same foreground color of the surounding text.
2024-07-27Add SVG currentColor testRodrigo Arias Mallo
2024-07-26Use FLTK reported DPI for SVG imagesRodrigo Arias Mallo
2024-07-26Mention SVG support in the documentationRodrigo Arias Mallo
2024-07-26Add SVG support in ChangelogRodrigo Arias Mallo
2024-07-26Don't report unknown SVG elements for nowRodrigo Arias Mallo
Until we have a way to enable or disable messages, we shouldn't pollute the output log. These may as well be better suited for a bug-like window.
2024-07-26Add support for g and symbol inside defsRodrigo Arias Mallo
These are used by Wolfram equations, example: https://mathworld.wolfram.com/images/equations/FourierTransform/Inline7.svg https://mathworld.wolfram.com/FourierTransform.html
2024-07-26Warn about SVG ignored elementsRodrigo Arias Mallo
2024-07-26Add support for MathJax equations in nanosvgRodrigo Arias Mallo
Allows Dillo to render Wikipedia math equations.
2024-07-26Merge SVG support from mobilized Dillo forkRodrigo Arias Mallo
Uses the nanosvg library to add SVG support. See: https://www.toomanyatoms.com/software/mobilized_dillo.html Authored-By: dogma
2024-07-18Improve line number style for HTML sourceRodrigo Arias Mallo
Make the background of line numbers appear as a single color and increase the contrast to improve readability. Also add a bit of space and a separator line between the numbers and the code itself.
2024-07-18Add anchors in line numbers for HTML source viewRodrigo Arias Mallo
They allow linking to an specific line in the source code. This would be useful to add to the bug meter view, so the user can quickly jump to the error line in the HTML source. Fixes: https://github.com/dillo-browser/dillo/issues/214
2024-07-14Render JSON content as plain textRodrigo Arias Mallo
Some website endpoints return information in JSON, which is helpful to be read as plain text in some situations. The content can still be downloaded to disk using the save button or the context menu. An example is the following endpoint https://tls.browserleaks.com/tls, which provides TLS fingerprinting information in JSON, which will change when reloading the page (only when Dillo is linked with LibreSSL). The original page https://tls.browserleaks.com/ uses JS and cannot be used in Dillo. See: https://lists.mailman3.com/hyperkitty/list/dillo-dev@mailman3.com/message/6C5K4F6NBRUDSPNPWTXLQXCK3U3SI7DM/