| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
| |
If an EosWindow is on a composite TV screen, then add the "composite"
CSS class to it. Also add a constant, EOS_STYLE_CLASS_COMPOSITE. This
allows us to do specific styling for composite.
[endlessm/eos-sdk#3930]
|
|
|
|
|
|
|
|
|
| |
This function simply queries the resolution of a screen, or the default
screen if none is given. A resolution of 720x480 or 720x576 indicates a
composite TV, since we don't allow the user to select those resolutions
for themselves.
[endlessm/eos-sdk#3930]
|
|
|
|
|
|
|
|
| |
We have one utility function currently living in eosinit.c. Since we are
about to have another one, we should put them in a file for utility
functions.
[endlessm/eos-sdk#3930]
|
|\
| |
| | |
Center titlebar widget
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For some reason, the on_stack_hover() handler was getting enter/leave
events from other GdkWindows besides the one belonging to the GtkStack.
I'm not sure why this didn't happen before, but this makes sure that we
only react to events on the window that we care about.
[endlessm/eos-sdk#3782]
|
| |
| |
| |
| |
| |
| | |
Less code, more data.
[endlessm/eos-sdk#3782]
|
| |
| |
| |
| |
| |
| |
| | |
GtkWindow already adds a "titlebar" CSS class, so rolling our own is not
necessary. We can replace ".top-bar" with "EosWindow .titlebar".
[endlessm/eos-sdk#3782]
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
GTK already provides a "maximized" CSS class on GtkWindow, so now that we
have the :not selector, we can use that instead of adding our own
"unmaximized" class. This allows us to cut out more code, including a
signal emission on every window state change.
[endlessm/eos-sdk#3782]
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A lot of the functionality that we wrote in EosTopBar has been
implemented in GtkHeaderBar in the meantime. Using upstream code is
better because we don't have to maintain it, and can cut ~200 lines out
of our library.
Two discrepancies between the old and new EosTopBar is that the header
bar has now gained a right-click menu on which you can close the app (I
am leaving that in for now, as it's consistent with the other apps) and
there is a separator between the window minimize button and the credits
button. (The separator itself is invisible, but it adds another few
pixels of inter-widget space that weren't there before.)
[endlessm/eos-sdk#3782]
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Properly, object properties should not be set in init() in C, because
construct properties are later reset to their default values. Instead,
the constructed() vfunc should be used.
This doesn't matter for the current code, since none of the set
properties are construct properties, but I'm going to be doing something
in one of the following commits where it does matter.
[endlessm/eos-sdk#3782]
|
| |
| |
| |
| |
| |
| |
| | |
eos_window_default_delete() was left over from something that we don't do
anymore.
[endlessm/eos-sdk#3782]
|
|/
|
|
|
|
|
|
| |
These were mistakenly added to a page that doesn't get included in the
documentation index. This creates a new page, "system", for utilities for
gathering information about the system.
[endlessm/eos-sdk#3071]
|
|
|
|
|
|
| |
Forgot some null checks which made thing blow up when either the
left on center widget was not added
[endlessm/eos-sdk#3683]
|
|
|
|
|
|
|
|
|
|
| |
This is an attempt to stop the top bar from jumping around on the
knowledge apps in composite mode.
This won't stop the top bar from jumping in size in all cases, if
you have different sized widgets forcing the top bar size to change
on different pages of the page manager, this won't really help you.
[endlessm/eos-sdk#3683]
|
|
|
|
|
|
| |
If one of our custom widgets is bigger than our topbar height,
we should accommodate it.
[endlessm/eos-sdk#3683]
|
|
|
|
|
|
|
| |
Our license-serving API is no longer exclusive to Creative Commons licenses,
hence we should not make explicit, hardcoded references to CC in our code.
[endlessm/eos-sdk#3471]
|
|
|
|
|
|
|
|
|
|
| |
We originally treated the get_locale method in the eoslicense API as a critical
initialization section. This no longer holds, since we could have different
locales for different types of licenses (e.g. creativecommons licenses are
translated, hence the locale will be "es", whereas GFDL licenses are not
translated, hence the locale will be "C").
[endlessm/eos-sdk#3471]
|
|
|
|
|
|
|
|
|
|
|
| |
Turns out that we removed and added a CSS provider on every size allocate
even when it had the same style content. This bug was exposed by using
Adwaita's spinner theming because the animation caused too many
relayouts. Instead, only change the CSS provider if the calculated font
scaling factor has actually changed. This should improve performance by
quite a bit.
[endlessm/eos-sdk#3634]
|
|
|
|
|
|
|
|
|
| |
The apiversion.h header provides symbols that are used in the public
headers, so it definitely needs to be installed. Ignore it in the gtk-doc
makefile, however, so we don't have to document its symbols, which are
not for public consumption.
[endlessm/eos-sdk#3071]
|
|
|
|
|
|
| |
We just added new public API, so inaugurate the 0.5 unstable series.
[endlessm/eos-sdk#3071]
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds EOS_SDK_MAJOR_VERSION, EOS_SDK_MINOR_VERSION and
EOS_SDK_MICRO_VERSION as macros in eosversion.h whose values are
generated from configure with AC_SUBST, rather than in config.h using
AC_DEFINE.
They are also public API, so they get documenation and Since:
annotations.
[endlessm/eos-sdk#3071]
|
|
|
|
|
|
|
| |
The localization of the license display name is done by the API directly, so
the consuming methods should not do it again.
[endlessm/eos-sdk#3532]
|
|
|
|
|
|
|
|
| |
We had originally added an assertion when the license API was called with an
invalid license shortname, but since right now those shortnames are handled
programatically by the applications, it is better to remove the asertion.
[endlessm/eos-sdk#3532]
|
|
|
|
|
|
|
|
| |
Since GTK 3.10, window-restore-symbolic has been the name for this icon,
not window-unmaximize-symbolic. We have recently changed eos-theme to
use the correct name, so we must change eos-sdk as well.
[endlessm/eos-shell#5567]
|
|
|
|
|
|
|
|
| |
Some of Wikipedia's images are attributed under GNU's Free Documentation
Licenses. Hence, our license-serving API should provide the description and
filename for these licenses when requested.
[endlessm/eos-sdk#3471]
|
|
|
|
|
|
|
| |
We add a new type of license, "Copyrighted free use", to our license-serving API.
This license is used by several images from Wikipedia.
[endlessm/eos-sdk#3471]
|
|
|
|
|
|
| |
We now have a gtk supported way to add to an overlay without blocking
input. Let's stop messing with input shapes directly
[endlessm/eos-sdk#3204]
|
|
|
|
|
|
| |
Added missing documentation entries.
[endlessm/eos-sdk#3111]
|
|
|
|
|
|
|
|
|
|
| |
Added a new API to serve locally-stored copies of Creative Commons' license
files, for a specified license level. This method uses the user's locale
to serve the appropriate version of the file.
(Philip & Fernando)
[endlessm/eos-sdk#3111]
|
|
|
|
|
|
|
|
| |
Added macros for 0.4 availability
(Philip & Fernando)
[endlessm/eos-sdk#3111]
|
|
|
|
|
|
|
|
| |
The macro for 0.2 availability was wrongly pointing to 0.0
(Philip & Fernando)
[endlessm/eos-sdk#3111]
|
|
|
|
|
|
|
| |
We need to add more than one file to it, in more than one Makefile, and
this is susceptible to confusion.
[endlessm/eos-sdk#291]
|
|
|
|
| |
Or tests will fail on the runtime deprecation warning.
|
|
|
|
|
|
|
| |
These licenses are used in the new batch of image attributions coming
from eos-knowledge-apps.
[endlessm/eos-sdk#3052]
|
|
|
|
| |
[endlessm/eos-sdk#3052]
|
|
|
|
|
|
|
|
| |
Any strings read from external sources that are used as Pango markup
should be escaped before using. Also, add translator comments indicating
when a string is Pango markup.
[endlessm/eos-sdk#3052]
|
|
|
|
|
|
|
|
|
| |
This adds a fourth topbar button, to the left of the minimize button,
that is invisible by default. When you mouse over the space where it
would be, it appears. When you click on it, it activates the image
credits dialog.
[endlessm/eos-sdk#2934]
|
|
|
|
|
|
|
|
| |
Since the first thing we do is load the attribution information from the
file and the object is useless if that fails, then we may as well make
the file a construct property and implement GInitable.
[endlessm/eos-sdk#2934]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a rough implementation of an "About"-like dialog for image
attribution in SDK applications. You can press the 'secret' hotkey
Shift+Ctrl+A to get a dialog with thumbnails and attribution information
for the images in the app's GResource. Clicking on the thumbnail opens
the image's original URI in the browser, if known. Clicking on the text
opens the image's license text in the browser, if known.
For this, you need to add a JSON file to the app's GResource and pass its
GResource path to the EosApplication:image-attribution-file property. The
format of this JSON file is described in the documentation for
EosApplication.
The dialog uses GtkTreeView because we didn't have GtkListBox when I
started implementing it over a year ago. This places some limitations on
the UI; the links behave weirdly and the mouse pointer doesn't change to
a hand when hovering over the links.
[endlessm/eos-sdk#2934]
|
|
|
|
|
|
| |
It's unused, and we should put it on notice before removing it.
[endlessm/eos-sdk#2733]
|
|\
| |
| | |
Remove clamp_allocation
|
| |
| |
| |
| |
| |
| |
| | |
The function clamp_allocation is no longer necessary and has the possibility of
introducing new problems, as in the case with fullscreen WebKit videos.
[endlessm/eos-sdk#1893]
|
|/
|
|
|
|
|
| |
This changes the package version to 0.1 and adds versioning macros for
the 0.2 stable series.
[endlessm/eos-sdk#2736]
|
|
|
|
|
|
| |
600 pixels is bigger than our work area at our minimum resolution of
800x600 and it was giving us terminal warnings. The 30 pixels is
needed for the bottom bar to display properly
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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]
|
|
|
|
|
|
| |
Flip the horizontal cell allocation when in RTL.
[endlessm/eos-sdk#2432]
|
|
|
|
|
|
|
| |
The first version is going to be version 0.0, after which we will
bump up to development version 0.1.
[endlessm/eos-sdk#418]
|
|
|
|
|
|
| |
As for new designs.
[endlessm/eos-shell#3386]
|