Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
On cases where the system directory cannot be opened, dpid will not load
the builtin plugins causing Dillo to fail to work properly with file: or
data: URLs. Reporting a failure to open the directory allows users to
determine the cause of the problem.
See: https://github.com/dillo-browser/dillo/issues/337
|
|
|
|
|
|
Line numbers can be referenced using the fragment L + line number. For
example, file://foo/bar.txt#L42 will cause Dillo to scroll to line 42.
Fixes: https://github.com/dillo-browser/dillo/issues/330
|
|
Allows the user to define additional entries in the link menu which will
execute the given program/script. Each actions is defined using the
"link_action" option. The link URL is stored in the $url enviroment
variable and the current page in $origin, so the user can customize how
do the handling.
Here is a simple example to add three new entries:
link_action="Debug variables:echo url=$url origin=$origin"
link_action="Open in MPV:mpv $url"
link_action="Open in Firefox:firefox $url"
The command is spawned in a forked process using the system() call,
which uses the shell to expand any variable. In particular, the $url
variable is set to the current URL being opened.
Fixes: https://github.com/dillo-browser/dillo/issues/3
|
|
Add the target commit.h as a dependency of version.o, so it gets
generated before being included in version.cc, otherwise when doing a
parallel build it can fail.
|
|
Compare the commit used in the last rebuild to determine if it has
changed, rather than using a phony target which always causes a rebuild.
|
|
Send the user agent to the downloads DPI so we can use the same as
Dillo uses from the http_user_agent option.
See: https://lists.mailman3.com/hyperkitty/list/dillo-dev@mailman3.com/thread/A6IHJ4TBGHJ3CT2UOMEAROSG2WRTRO6U/
|
|
The returned value from Fl::version() is a floating point number like
1.0303, not 10303, so we correct it to follow Fl::api_version().
|
|
When git is available, records the git commit in the dillo binary, so
dillo -v reports the version and the commit. Otherwise only the release
version is reported (as we do now).
The commit is *always* recomputed when "make" is called. This allows
switching branches, doing a dirty rebuild and still get the correct
commit with "dillo -v".
Using AC_INIT() doesn't update the commit when the source is already
configured.
Fixes: https://github.com/dillo-browser/dillo/issues/288
|
|
The Fl:api_version() method is not available on FLTK 1.3.3 and older, it
needs to use Fl::version() instead.
|
|
Makes disabling certain formats posible without the need to rebuild
Dillo from source.
See: https://github.com/dillo-browser/dillo/pull/312
|
|
Limit the push events to the master branch, otherwise they will be
running twice on every feature branch and PR.
|
|
Homebrew has updated the default version of FLTK to 1.4, which is
causing rendering issues in Dillo. So for now, we build with FLTK 1.3 by
pinning it.
See: https://github.com/Homebrew/homebrew-core/pull/198029
See: https://github.com/dillo-browser/dillo/issues/246
|
|
|
|
|
|
|
|
|
|
See: https://www.toomanyatoms.com/software/mobilized_dillo.html
Authored-By: dogma
|
|
When reporting the version of Dillo with -v, print also the version of
the libraries it is currently using, as well as the features that were
enabled at build time. Notice the versions are reported by reading them
at runtime, so we can detect the version loaded at run time, regardless
of which version was used at link time.
All features are always printed, but prefixes with + if enabled or - if
disabled. This allows checking if the feature was disabled at configure
time or if it is missing in that version of Dillo.
|
|
|
|
|
|
|
|
There are several problems that need to be resolved before we can switch
to FLTK 1.4. The support is intentionally disabled until it is ready.
See: https://github.com/dillo-browser/dillo/issues/246
|
|
Following https://datatracker.ietf.org/doc/html/rfc7230#section-5.3.1,
the path must not be empty, even if we have a query:
> If the target URI's path component is empty, the client MUST send "/"
> as the path within the origin-form of request-target.
Notice URIs can have empty paths, this is a restriction of HTTP only.
Fixes: https://github.com/dillo-browser/dillo/issues/302
|
|
To prevent the page from triggering the emergency stop at
resizeIdle(), we reset the resize counter when the viewport is resized.
Fixes: https://github.com/dillo-browser/dillo/issues/300
|
|
Buttons also have their own Layout, which will try to resize every time
the window has changed. We are only interested in the top-level layout,
as is the one that has a problem on some pages.
|
|
This suppresses a warning on more modern systems while preserving
the ability of older systems and CI/CD to run the test suite.
> WARNING: The convert command is deprecated in IMv7, \
> use "magick" instead of "convert" or "magick convert"
Signed-off-by: Matt Jolly <kangie@gentoo.org>
|
|
|
|
|
|
|
|
Reloads the current page on all windows when the SIGUSR1 is received.
This is useful to update the page when it is being edited.
Fixes: https://github.com/dillo-browser/dillo/issues/255
|
|
Some images have the same background color as the page so they don't
have a visible border. Always adding a border on images with a link
breaks this property. Links continue to be discoverable by hovering with
the mouse.
Fixes: https://github.com/dillo-browser/dillo/issues/270
|
|
The requisition box includes the margin, padding and border. To compute
the aspect ratio of the image we need to remove them to get the content
box. Once the adjustment is done, we add the borders again.
|
|
|
|
|
|
The aspect ratio is now preserved by Widget::correctRequisition(), so we
don't need to do more steps after the call.
|
|
|
|
When CSS min-{width,height} > max-{width,height} set the
max-{width,heigh} to the maximum value min-{width,height}.
|
|
Images should preserve their own aspect ratio, which is determined by
the image buffer size, also known as the intrinsic size. Currently, when
a child requests a requisition to be corrected by correctRequisition(),
only the size was adjusted, ignoring the aspect ratio.
The new Widget ratio variable holds the desired aspect ratio for the
widget, and will only be taken into account when non-zero. In that case,
then correcting the requisition, a naive algorithm tries to first
increase the length of the small size to fill the preferred aspect
ratio. In the case that it is not enough, the larger size is then
decreased to fit the aspect ratio. And if that doesn't work either, the
aspect ratio is not enforced and the widget will be distorted.
There are special cases for correctRequisition() depending if the parent
exists or not. The same approach is taken for both cases, but using the
viewport size instead of the parent size.
|
|
For cases where the available height is being computed and the CSS
style has the height to auto, there available height is infinite. Don't
return the viewport unless forceValue is set.
|
|
|
|
|
|
When a widget calls the parent to correct its own requisition, let the
child widget perform adjustments on the requisition. This allows images
to control the height when the parent changes the width, so the image
can preserve its own aspect ratio.
|
|
|
|
|
|
When correcting a requisition, percent values were not being computed
which prevents the min-height or max-height values to be taken into
account.
|