* Added elm_mirrored_get/set to set the system mirrored mode
* Added elm_widget_mirrored/get/set to set each widget's mirrored mode.
* Added code to set the system mirrored mode from translations to elementary and added translations for all the rtl languages. (a trick to load according to locale).
* Future commits will include specific widgets mirrored mode handling.
Work by Aharon Hillel and Tom Hacohen.
SVN revision: 56673
Mr. Wonguk Jeong made a patch for elm_module.
This patch is for changing the timing of module loading.
For now, module loading is done in elm_init
Thus, modules are always loaded, even if the application does not use
them.
So this patch deferred the timing of module loading to
"_elm_module_find_as".
SVN revision: 56586
Subject: [E-devel] [Patch] environment parameter - ELM_EFFECT_ENABLE
I want to add the environment parameter "ELM_EFFECT_ENABLE".
It will play a role as the enablement for the effect of all widget.
SVN revision: 56572
When searching for an icon in a theme, efreet needs to load the specific
cache for the theme. So if an icon doesn't exist, this will be a huge
overhead. So it is better to find a theme on init, and then stick with
it.
SVN revision: 55004
Edje caching primitives exposed in Elm, too, now, and stored at
config. Also, there's now a poller running for all Elm apps doing
cache flushing. All these things have configurable values, of course.
Testing config version bumping too, it should work.
SVN revision: 54851
Now working on exposing edje caching too, and having a cache dumping
poller. Patch also replaces some focus_overalay object functions,
too.
SVN revision: 54770
I'm now populating the default theme with text classes, just commit
with one for now. There can be tweakings at Elm config app's UI fonts
page, I know, but that will come later (editable preview field, font
hinting/fallback, blablabla).
WARNING: for users testing elm config, an old "rm -rf
~/.elementary/config" might be needed here, after this commit.
SVN revision: 54681
out of bounds, that is when the content is finished. In this way
the user note that the content is at the end.
All the others finger-scroll implementation (iphone,android) works this way ;)
This is configurable by the 'thumbscroll_border_friction' config value,
and by the 'ELM_THUMBSCROLL_BORDER_FRICTION' var.
0.0 means: disable the friction
0.5 is the default
1.0 means: maximum friction
I have tested this with every scroller in elm_test and seems to work
well in all the occurence, if you see somthing strange in some scroller
please let me know.
DaveMDS
SVN revision: 54170
Changes in Elementary Config application's UI now *persist*.
Not doing right now, but should be simple:
- profile deletion
- profile addition
SVN revision: 53977
There's still a little bugger that can be noticed with the Scroller 2 test
and elm_conform still needs to handle this as scroller does.
SVN revision: 53778
This is still a work in progress. The idea is to have two different profiles:
one to be used on desktops and another for mobiles. To make it possible, I've
added some fields to the config struct and in the following commits the widgets
will start using that configuration so when they are created the default
configuration of the profile is applied.
SVN revision: 53726
Previously, if there were buttons with menus in the toolbar, they would be
added but not its menu items. Even though this is working fine, this is a
hack, since Elm_Menu should really offer reparenting or something like that
-- and this will destroy and recreate the whole menu structure on every
toolbar resize.
SVN revision: 53695
Basically, get the group from widget theme, using the string passed to
elm_object_cursor_set, get hot spots x and y from the theme (keeps the object
and these two integers on cursor struct).
Cursor is set with ecore_evas_object_cursor_set()
Some functions to change style were added to the api.
SVN revision: 52760
This defines a new theme group for elm_scrolled_entry:
"elm/scroller/entry/$THEME". Themes that wants to support the icon/end
feature in scrolled entry should implement parts "elm.swallow.icon" and
"elm.swallow.end". Black&White theme has been changed, Effeniht changes
to come on a later commit.
SVN revision: 52657
Now owner widget (elm_widget) is just used to listen for theme changes
and create/destroy the tooltip data. The actual mouse events operates
on all Evas_Object and is the one where tooltip data is actually
stored.
The public API is basically the same, just the event_info is now NULL
to avoid confusion.
The internal API introduces elm_object_sub_tooltip_content_cb_set()
and as the first parameter the eventarea. While this may be confusing,
as the second parameter is the actual elementary object, it is the one
that all other calls receive, like elm_object_tooltip_hide() or
elm_object_tooltip_unset(), thus it does make sense to have such order.
Also internal API, elm_widget_item_tooltip_* functions were
added. They are a variation of the widget API to handle its items, as
such the func() gets one more parameter: item, and the del_cb() gets
the item as event_info (that's why the public widget version got
event_info always NULL, to not confuse with this one!)
Widgets with items that makes sense to have tooltips got extra API:
* toolbar
* list
* gengrid
* genlist
SVN revision: 52173
Tooltips are set using elm_object_tooltip_content_cb_set(), that
returns the desired Evas_Object to use as contents, or using the
helper function elm_object_tooltip_text_set() that uses that
underneath.
The behavior is controlled part on elm_config, theme and user
application. In elm_config one defines the tooltip timeout. The theme
defines the padding around cursor x/y and window border x/y, as well
as the look and feel. Last but not least, the user application may
want to change the tooltip style with elm_object_tooltip_style_set().
Have fun!
This code was initially written by Tiago Falcao and Fabiano Fidencio,
I did some API review and changed some bits.
TODO: elm widget item support, like with toolbar items.
SVN revision: 52150
Lots of widgets have items that are not Evas_Object of type elm_widget
per se, like Elm_List_Item or Elm_Toolbar_Item. They all have, or
should have, some common attributes and functions such as data,
del_cb, a view object and a parent/owner widget. Thus this is being
provided and will be later used in future patches.
Right now I opted to hide elm_widget_item_del_cb_set(),
elm_widget_item_data_get(), elm_widget_item_data_set() inside
elm_priv.h and keep the old functions as wrappers to the new. But
maybe in future we can remove them and have the user to call the
common function.
Future extensions will use this base, such as tooltip support.
SVN revision: 52116
This is not doing much now, just the version field in the struct,
some stuff stolen from E and a base to use when new things are added.
There are some comments in the code about what to do in certain cases
that E does not have, like a system update, new config and apps linked
to the old version still running when the config Atoms are updated. These
things we'll probably be addressed as they are needed, as well as come
clean up in quick code I ditched in there, but it would be good to do so
with more feedback from the good guys around that like to break SVN
every now and then.
Since the commit message is already long enough, I'm adding some more crap
just for the sake of doing so. I could go with some tl;dr thing as well,
but I don't feel like resuming what's up there.
Have a nice day.
SVN revision: 51843
elm_object_signal_listen add callback(s) for edje object(s) of the widget.
elm_object_signal_unlisten delete this callback.
They're general functions, and every widget should set hooks for these.
It will improve elm extension flexibility. We have already
elm_object_signal_emit to send signals for the widgets theme, adding callbacks
is an expected step.
It provides a way to support sound on widgets. For example, in the elm extension
we could emit "file_to_play", "play", and add a callback with
elm_object_signal_listen for "*", "play". The callback function could use
the signal received to request the file to be played by the backend
sound system.
Certainly we should look for a better way to provide support for sound
on edje, but for now, it does the work. And anyway, it's only a use case
for these new functions.
SVN revision: 49868
This function sends a signal to the edje object of the obj.
It's a general function, and every widget should set a hook for this.
I'm setting a hook only for the spinner now, but soon I will work on other widgets.
SVN revision: 49681
is parent of an Evas_Object.
With these in place, one can check if the given object is an elmentary
widget and query for the first widget that is parent, so we can add
them and keep focus chain correct, useful for Edje externals, patch to
follow.
SVN revision: 47374
This plays well with edje's own deferred calculations. Usually size
hints are set on children and edje will flag itself as dirty, but real
calculations are deferred to "calculate" phase before rendering.
For now this unbreaks elm_layout with contents... but other types such
as GROUP, BOX and TABLE remain broken: when they change their internal
state (ie: child object is packed into box or table), this will not
trigger elm_layout.
That said, we need a better solution. Maybe ask edje to emit signals
when one of its children change hints (it already listen to this
anyway), in this case elm_layout should listen to those instead of
connecting directly to objects given through elm_layout_content_set().
SVN revision: 43752
* putting policy into modules
* multitouch handling being able to be farmed off to modules
* farming off things that are not compatible with license/code of elm into a
3rd party piece of code via a clean defined interface API
2. fix doc image - dont need it
3. fix toolbar bounce settings. was wrong
SVN revision: 42793
2. add bouncing at ends for scroller and config for it
3. fix quicklaunch to be cserver-freidnly thanks to its fork tricks
4. add signals to scroller when scrolling and hitting edges
5. pants.
SVN revision: 40549
* casts: remove internal "Item" and use "Elm_XXXX_Item" for carousel,
list, genlist and toolbar.
* warning: fix const on lots of getter apis, the object should be
const, and not the return! Of course lists that are returned and
are not supposed to be modified are still returned as const, but
maybe we should return iterators!
* list/genlist: fix selected_set() to be a bit (marginally)
faster. Do not operate if state has not changed and if it did
changed we're sure we're not in the object->selected list.
SVN revision: 39208
fix some theme size calc issues
make all widgets able to... do finger size! this way a ui can be tweaked with
1 value (finger size) if it is to be finger or mouse/stylus driven. and it
was so simple to add in.
work on genlist - beginning to display items and scroll.
SVN revision: 38995
add tests for these
add tests for inheriting scaling factor from parent
fix test app to use list now instead of box+buttons (cleaner)
SVN revision: 38909
2. make elementary be able to determine theme from
PREFIX/share/elementary/themes or ~/.elementary/themes (~/ takes preference)
currently using a delimited list of theme names in order to check like:
mytheme/fallback/morestuff/default
(if the last theme entry is on default it is added explicitly).
this allows multiple theme files bascially to work a bit like a fontset - try
the first one - if not there, try the next and so on. set $ELM_THEME to your
theme setting
3. determine prefix and thus data dir - where system themes go. if it can't
rely on dladdr, or the compiled-in prefix/data dir, you can set $ELM_PREFIX
and/or $ELM_DATA_DIR accordingly.
SVN revision: 38568
leats my mouse and keyboard do - and windows are fullscreen of course... and
really you have a technical limit of 1 window... but hey! that's the fb!
SVN revision: 38077