| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
Nothing is using this. (The last users were eos-programming, stuck on an
old runtime; and eos-typing, defunct.)
As long as I'm removing SearchBox, may as well remove this too.
https://phabricator.endlessm.com/T20353
|
|
|
|
|
|
|
|
|
| |
This was used nowhere except in eos-knowledge-lib. We are going to make
many eos-knowledge-lib specific changes to it, so it's going to be
forked into there. After nothing uses it, it doesn't make sense to keep
it here given that we intend to slowly move away from using eos-sdk.
https://phabricator.endlessm.com/T20353
|
|
|
|
|
|
|
|
| |
Setting the width here can mean that the popup gets a different width
from the search box. Instead, we want it to match the search box's width
and ellipsize the label if there's not enough space.
https://phabricator.endlessm.com/T20352
|
|
|
|
|
|
|
|
|
|
|
|
| |
When clicking on a result from the autocomplete popup, we should select
the first index of the tree path. (The list is a flat list, so there is
always only one index.)
This prevents a warning about a missing property of
[Symbol.toPrimitive], because we were indexing this._items with the
indices array (which is not a primitive) instead of its first item.
https://phabricator.endlessm.com/T21027
|
|
|
|
|
|
| |
The C API has a convenience macro to initialise the location of the
probe in the source file. We should use an override for the start()
method in order to let GJS fill out the same data for us.
|
|
|
|
|
|
|
|
|
| |
In ES6, variables declared with "const" and "let" go into the "lexical
scope" rather than the normal scope. Therefore, they are not available as
properties on modules. GJS preserves the old behaviour with a warning,
but we should fix our code anyway.
https://phabricator.endlessm.com/T18106
|
|
|
|
|
|
| |
Unbreaks distcheck — and Jenkins.
https://phabricator.endlessm.com/T15612
|
|
|
|
|
|
|
|
|
|
| |
The connection test uses the network-available property and a URI check,
but the network-available property is set to TRUE even when the
connection is local or behind a captive portal, which means that the
test has different behaviours than just a simple connectivity check as
performed by NetworkManager.
https://phabricator.endlessm.com/T15612
|
|
|
|
|
|
|
|
| |
Instead of our own, which are nearly identical.
Also, remove our RTL special case for icon names, since recent GTK does
it for us automatically.
https://phabricator.endlessm.com/T11778
|
|
|
|
|
|
|
| |
GTK+ >= 3.12 will do that automatically by appending a '-rtl'
suffix to the icon name when needed.
https://phabricator.endlessm.com/T11002
|
|
|
|
|
|
|
|
|
| |
As agreed with the design team, all apps should include a generic
home button at the top left corner of the app window. Therefore, we
add a new generic button in the sdk to be used in all the different
apps for consistency.
[endlessm/eos-sdk#4030]
|
|\
| |
| | |
Don't enforce a minimum size for search box
|
| |
| |
| |
| |
| |
| |
| | |
Instead allow clients of this widget to set their
own minimum and maximum sizes.
[endlessm/eos-sdk#3974]
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
When running on small screens, some auto-complete result titles do not fit in
the screen. This was most often observed in composite mode (720x480) and 800x600
resolutions.
Now, we ellipsize the cell renderer accordingly by checking the screen width,
based on the responsive system breakpoints defined by the Design team.
(Fernando and Martin).
[endlessm/eos-sdk#4016]
|
|
|
|
|
|
| |
This way we can set the search box text without triggering the
signals for settings autocomplete entries
[endlessm/eos-sdk#3442]
|
|
|
|
|
|
| |
We'll leave it up to the application itself what to populate the
entry with after an autocomplete item is selected
[endlessm/eos-sdk#3442]
|
|
|
|
|
|
|
|
|
| |
The old GJS allowed you to access static methods on an instance of the
class that defined them. Not so with the new GJS. So instead of
any_widget.get_default_direction(), we now must do
Gtk.Widget.get_default_direction().
[endlessm/eos-sdk#3265]
|
|
|
|
|
|
|
| |
If the secondary icon is displayed, it should change the mouse cursor
to a hand as well.
[endlessm/eos-sdk#2962]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We now provide a new m4 module eos-coverage.m4, which is installed
into the system aclocal directory. This macro provides three
new commands for SDK consumers to use:
EOS_COVERAGE_REPORT([languages]) - Enables a "coverage report".
The first argument is a space separated list of unquoted
languages to collect coverage information for. Valid values
at the moment are "c" and "js". For each language specified,
the macro will check for support for collecting coverage and
enable reporting accordingly. Raw coverage output goes in
$(abs_top_builddir)/_coverage/output/$language accordingly.
The macro then checks to see if a coverage reporter, either
genhtml, or cobertura, is available and enables them. A reporter
must be installed and available for coverage reports to be
generated.
The coverage-genhtml is enabled if lcov is installed and available.
This is generally used by developers themselves as it creates a
self-contained report.
The coverage-covertura is enabled if a program called
lcov-result-merger is installed and a python module called
lcov_cobertura are installed. lcov-result-merger can be
installed from Node Package Manager. lcov_cobertura
can be installed from PyPI.
lcov-result-merger is necessary because each test suite is run
in a separate subprocess and so there will be multiple entries
per source file in the coverage.lcov file generated by gjs.
lcov_cobertura doesn't handle that properly and so the
results need to be merged together properly.
JavaScript Coverage Details
===========================
A variable called EOS_JS_COVERAGE_FILES should be defined
containing a list of all javascript files to be considered
a "part of" the coverage report, before EOS_COVERAGE_RULES
are substituted. For example:
EOS_JS_COVERAGE_FILES = $(SRCS)
@EOS_COVERAGE_RULES@
AM_JS_LOG_FLAGS += @EOS_COVERAGE_JS_LOG_FLAGS@
C/C++ Coverage Details
======================
Certain additions also need to be made for Makefiles where
coverage reporting is enabled on a C project:
@EOS_COVERAGE_RULES@
AM_CFLAGS += @EOS_C_COVERAGE_CFLAGS@
AM_LDFLAGS += @EOS_C_COVERAGE_LDFLAGS@
If a target's CFLAGS is overridden and AM_CFLAGS is not used,
then @EOS_C_COVERAGE_CFLAGS@ must be added to its CFLAGS.
Blacklisting patterns
=====================
If a path should not appear in the coverage report, then it can
be blacklisted by adding a glob expression to
EOS_COVERAGE_BLACKLIST_PATTERNS.
Clean rules
===========
A clean-coverage target is added to the dependencies for
the clean-local target automatically by EOS_COVERAGE_RULES.
[endlessm/eos-shell#2264]
|
|
|
|
|
|
|
|
|
|
| |
Previously, if you created an Endless.TopbarNavButton with no_show_all
set to TRUE, and subsequently called show() on it, it would not become
visible, because the child widgets were still not shown. By showing them
at construct time, we solve this problem because they immediately become
visible when the TopbarNavButton widget itself is shown.
[endlessm/eos-sdk#2495]
|
|
|
|
|
|
|
| |
The topbar navigation buttons are flipped on right-to-left (rtl) locales.
On this version of GTK, we manually select the corresponding -rtl icon names.
Notice that styling is also flipped.
|
|
|
|
|
|
|
|
| |
This changes the mouse pointer to be a 'hand' cursor when hovering over
certain clickable UI elements: the back/forward buttons on the title
bar, and the magnifying glass icon in the search box.
[endlessm/eos-sdk#1483]
|
|
|
|
|
|
|
|
| |
Code that should be applied to both the back and the forward button is
refactored into a foreach loop over an array containing the two
buttons. This is to avoid lots of duplicated code in the next commit.
[endlessm/eos-sdk#1483]
|
|
|
|
| |
This reverts commit 5b2cc64e43d16d0ac54fd2def0c5a821bb7391ea.
|
|
|
|
| |
This reverts commit de53c768b7315bfdd884871eb6f2699dbf0d9634.
|
|\
| |
| | |
EntryCompletion matches all results in model
|
| |
| |
| |
| |
| |
| |
| |
| | |
Previously we were using the entry completions default
match function which will filter words by prefix. However
we want all filtering to be done in the knowledge engine
in a smarter way so this entry completion should just match
on all results.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We can inject CSS earlier than we can run javascript that expects a
loaded DOM. COMMITTED is fired whenever data first starts being
received, so we should be able to append the CSS style tags at that
point
[endlessm/eos-sdk#1622]
|
|/
|
|
|
|
|
| |
This class could potentially be used by other pseudo-WebApps
in our system, so it makes sense to stick it in the SDK.
Provides functionality for cleanly injecting custom CSS and
JS into a webview.
|
|
|
|
|
|
| |
Some hacky css selecting is involved, but gets us a much nicer
completion drop down
[endlessm/eos-sdk#1578]
|
|
|
|
|
|
|
|
|
|
| |
TopBarNavButton can be used for browser-style back and forward
buttons in the title bar of a window.
TopBarNavButton currently uses CSS and rounded corners. 5-sided
button will be added later when assets are available.
[endlessm/eos-sdk#1294]
|
|\
| |
| | |
Add "Eos" prefix gtype names to our SDK overrides
|
| |
| |
| |
| | |
So they don't clash with gtype names in our apps
|
|\ \
| |/
|/| |
doConnectionTestAsync will now re-throw errors.
|
| |
| |
| |
| |
| |
| |
| | |
When an error callback isn't provided, doConnectionTestAsync will now re-throw the
error, instead of catching it.
[endlessm/eos-sdk#1394]
|
|/
|
|
|
|
|
|
|
| |
We reuse this same search box functionality in a
number of our apps so makes sense to stick it in the SDK.
Creates a search box that has autocompletion and provides
signals for when a search is triggered and when an
autocompletion entry is selected. Has its own default
styling which can be overridden.
|
|
|
|
|
|
|
|
| |
The Endless api now includes 2 methods for connection testing, one synchronous, and one
asynchronous. Both of these methods work by work ensuring that there is a network available,
and pinging the specified host if so.
[endlessm/eos-sdk#1383]
|
|
|
|
|
| |
Wasn't getting used in any apps so we are taking it out
[endlessm/eos-sdk#985]
|
|
|
|
|
|
|
| |
g_file_read_link can return a relative path, we were evaluating
that from the current working directory while can lead to
getCurrentFileDir returning non existent paths
[endlessm/eos-sdk#885]
|
|
|
|
|
|
| |
Will return the actual dir of the real file calling, instead
of the linked location.
[endlessm/eos-sdk#873]
|
|
|
|
|
|
| |
Fixes the aligment of the disclaimer button in eos-wikipedia
[endlessm/eos-sdk#490]
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Gtk 3.10 switched to baseline alignment for Gtk.Button label and
image widget. Which is not what we want. So I forall through the
internals and set the valign to fill (same as 3.8).
This isn't pretty, but unless Gtk provides some public API for
controlling our alignment, the only alternative is to use our
own box with our own internal widgets in AssetButton. Which would
be a lot of code duplicated from Gtk.Button
[endlessm/eos-sdk#427]
|
|
|
|
|
|
| |
If loading a file for one of the states of the asset button failed
we would call close on an undefined object, which caused a crash.
[endlessm/eos-sdk#390]
|
|
|
|
|
|
|
|
| |
The syntax can will hopefully stay the same for apps when this
widget gets rewritten in C. Added support for labels like the
standard button. Moved the overrides rules to a separate .inc
makefile so we can add more standard js libs if we want
[endlessm/eos-sdk#290]
|
|\
| |
| | |
Gjs override for getting the directory of the script being run
|
| |
| |
| |
| |
| | |
Adapted this from the english app
[endlessm/eos-sdk#127]
|
| |
| |
| |
| |
| |
| | |
documentation.
[endlessm/eos-sdk#79]
|
|/
|
|
|
|
| |
developer, as that will be deprecated in the future.
[endlessm/eos-sdk#79]
|
|
Added the autotooling to get our overrides installing as well.
[endlessm/eos-sdk#70]
|