platform/framework/web/chromium-efl.git
6 years agofixup! [M44_2403] Chromium upversion to m44_2403 branch
Arnaud Renevier [Thu, 17 Sep 2015 01:04:42 +0000 (18:04 -0700)]
fixup! [M44_2403] Chromium upversion to m44_2403 branch

Use StopChildProcess instead of base::KillProcess to kill a renderer
process.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14039

Reviewed by: a1.gomes, sns.park

Change-Id: Icfdb4a657cf63d82a90b2de1796aa8069d7d7e41
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agofixup! [M44_2403] Chromium upversion to m44_2403 branch
Arnaud Renevier [Thu, 17 Sep 2015 00:39:21 +0000 (17:39 -0700)]
fixup! [M44_2403] Chromium upversion to m44_2403 branch

Implement CreateReflector. Since beta m44, Reflector cannot be
instancied directly. We create a FakeReflector class, as is done in
InProcessContextFactory.

Bug: https://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14038

Reviewed by: a1.gomes, sns.park

Change-Id: I560c4eb7d1ea945220f3a673068425662fd9ed83
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agoContext menu only shows up once
Antonio Gomes [Mon, 14 Sep 2015 21:07:15 +0000 (17:07 -0400)]
Context menu only shows up once

When one long-presses links or images, a context menu
is to be shown for further user action. In our current
implementation, this was being done by making use of EFL
'genlist' widget.

As per the docs [1], 'genlist' is a widget aimed at being
used for sophisticated list content, with support to submenus,
runtime item modifications, etc.
Problem is that there seems to be a bug in EFL (affecting
even desktop), making the context menu to show always
an empty list for the second time it is invoked.

As a quick solution for the problem, patch replaces 'genlist'
by 'list'.

[1] https://docs.enlightenment.org/auto/elementary/group__Genlist.html

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/87251/ , reviewed by
Janusz Majnert, arno renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=6663

Reviewed by: a.renevier

Change-Id: I46efa39175d9ec9467db185cddd8347787a58607
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoMake context menu work on links and images.
Antonio Gomes [Thu, 10 Sep 2015 14:05:00 +0000 (10:05 -0400)]
Make context menu work on links and images.

Context menu were not being shown in response to long
press gestures on links and images.

These are the two cases context menu are shown:

1) user does a long press on selectable text and input fields:
context menu is only shown when user lift its finger up.
While finger is still down, user sees a magnifier glass with
zoomed in content, and can select different content as long
as it has not lifted up its finger yet.

2) user does a long press on a link and image:
context menu is shown right after the long press event gets triggered.

However, (2) was not triggering any context menu creation.
Problem was that EWebView::ShowContextMenu was calling
SelectionControllerEfl::HandleLongPress, and it was simply
calling a LOG for links and images cases.

Patch adds return value to SelectionControllerEfl::HandleLongPress to
work as an indicator that the context menu should be shown immediatly
or if it should be shown when users' finger is lifted up.

Original beta/m42 patches:
- http://165.213.202.130/gerrit/#/c/86940/ , reviewed by
Janusz Majnert, arno renevier.
- http://165.213.202.130/gerrit/#/c/86943/ , reviewed by
Jaesik Chang, arno renevier.
- http://165.213.202.130/gerrit/#/c/87569/ , reviewed by
Janusz Majnert, arno renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=6663

Reviewed by: a.renevier, sns.park

Change-Id: I6f9873582c1b3eccd1e5f084b177538b59093502
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoFix Disambiguation popup event handling.
Antonio Gomes [Thu, 3 Sep 2015 18:55:10 +0000 (14:55 -0400)]
Fix Disambiguation popup event handling.

Add the needed interfaces in RWHVEfl so that the clicking
events on the disambiguation popup get propagated down to
the engine.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/86481/ , reviewed by
Janusz Majnert, arno renevier.

Reviewed by: a.renevier

Change-Id: I961b4d8e558268f3c94f66c73473ecf358ead521
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoallow to build xwalk on m44
Arnaud Renevier [Tue, 15 Sep 2015 00:25:02 +0000 (17:25 -0700)]
allow to build xwalk on m44

Update build patch with latest version form chromium xwalk

In spec file: depends on dbus-glib. Modify dump.json path which has
changed in gyp. And update package versions

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13152

Reviewed by: a1.gomes, sns.park

Change-Id: Ic4fc5707b67605309d91fbdc3394f1287a467b4a
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agofixup! [M44_2403] Chromium upversion to m44_2403 branch
puru [Tue, 15 Sep 2015 08:56:58 +0000 (14:26 +0530)]
fixup! [M44_2403] Chromium upversion to m44_2403 branch

Build errors occurs when enabling MM feature, hence fixing them.

1. The arguments for ScopedPtrHashMap changed from <Key, value> to
<Key, ScopedPtr> updated the same.

2. VideoFrameCompositor constructor now accepts three arguments,
included compositor_task_runner as first argument.

3. UpdateCurrentFrame API was missing, hence added

4. Implementation for API UpdateCurrentFrame is changed,
and painting is done using PaintFrameUsingOldRenderingPath API

5. Implementation of OnIncomingCapturedVideoFrame API has changed,
such that we don't need to pass format, updated accordingly.

6. API ReserveOutputBuffer returns a scoped_ptr,
hence changed type for variable buffer_.

7. MessageLoopProxy is deprecated. Code should prefer to depend on
TaskRunner for passing task runners around.
scoped_refptr<base::MessageLoopProxy> -> scoped_refptr
<base::SingleThreadTaskRunner>

8. Removing some interfaces as not used anymore.

Verified ME, MSE, Webaudio working on Note4 64bit.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13291

Reviewed by: SeungSeop Park, Venugopal S M

Change-Id: I0e12ada6b85b1f91168a2e1d8fcd7541214f129a
Signed-off-by: puru <puru.dharma@samsung.com>
6 years agoRemove unused SelectionControllerEfl::IsShowingMagnifier.
Antonio Gomes [Fri, 28 Aug 2015 00:37:34 +0000 (20:37 -0400)]
Remove unused SelectionControllerEfl::IsShowingMagnifier.

SSIA.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/86029/ , reviewed by
Janusz Majnert, arno renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: Janusz Majnert

Change-Id: Icb13b23c477a49224d40b8bf22de03e2afab570e
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoRemove unused param from SelectionControllerEfl::UpdateSelectionDataAndShow
Antonio Gomes [Thu, 20 Aug 2015 16:13:04 +0000 (12:13 -0400)]
Remove unused param from SelectionControllerEfl::UpdateSelectionDataAndShow

SSIA.

Patch, also removes an unneeded 'else' after a 'return'.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/86030/ , reviewed by
Janusz Majnert, arno renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: Janusz Majnert

Change-Id: Ie863b4edda43db3bcbc3256a69bd9648a2299fbf
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoRemove now obsolete hit-test based mechanism
Antonio Gomes [Fri, 28 Aug 2015 19:35:19 +0000 (15:35 -0400)]
Remove now obsolete hit-test based mechanism

Our text selection implemented has aligned to chromium's
more, and started using composited frame swap based
messaging.

Additionally, it has moved away from the previous hit
test based implementation, where messages were sent
back and forth in order to figure the context of a gesture.

It now makes use of chromium's FrameHostMsg_ContextMenu
message to get context menu / long press gesture information,
and customize existing did-handle-tap like hooks for
its needs.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/86094/ , reviewed by
Janusz Majnert, arno renevier

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=6663

Reviewed by: arno renevier, Janusz Majnert, SeungSeop Park

Change-Id: Ibf76529ffe3fd96de7c29ae1e6a4a5fd7dfc471b
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoRemove Handle{LongPress,Tap}Gesture declaration
Antonio Gomes [Wed, 19 Aug 2015 17:32:40 +0000 (13:32 -0400)]
Remove Handle{LongPress,Tap}Gesture declaration

These are likely left over of a past commit.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/85430/ , reviewed by
Janusz Majnert, arno renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: Janusz Majnert

Change-Id: I09025426f03964ea9d8fafcf0aab45ae3345164d
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoMove away from AsyncHitTest messages to handle tap
Antonio Gomes [Fri, 28 Aug 2015 18:28:47 +0000 (14:28 -0400)]
Move away from AsyncHitTest messages to handle tap

We have an existing mechanism to post-handle tap events.
This mechanism lives in render_view_observer_efl.cc
and is used by the renderer to inform the browser to
play sound in response to clicking a link.
In order to have the context information, an extra hit
test is performed on the renderer side, and browser gets
notified by a message.

In order to eliminate the last client of the hit test
ping-pong messaging in the text selection code, patch
extends the mechanism described above to provided the
information needed by text selection (read is_content_editable),
in addition to the current link information.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/86093/ , reviewed by
Janusz Majnert, Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=6663

Reviewed by: Janusz Majnert

Change-Id: I0b5d7f0b0d457bd89e911a2768ce0c480f331f9b
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoMove away from AsyncHitTest messages to handle long press.
Antonio Gomes [Wed, 26 Aug 2015 23:11:05 +0000 (19:11 -0400)]
Move away from AsyncHitTest messages to handle long press.

As another step to move our text selection implementation
away from hit test messages, patch makes use of the existing
FrameHostMsg_ContextMenu message in order to update the
context menu data. Flow:

0- (..)
1- RenderFrameImpl::showContextMenu
2-       <<IPC>>
3- RenderFrameHostImpl::OnContextMenu
4- WebContentsViewDelegateEwk::ShowContextMenu
5- EWebView::ShowContextMenu
6- SelectionControllerEfl::HandleLongPressEvent
7- (..)

Note that EWebView::ShowContextMenu *needs* to get called twiced
when long press is being handled: First, when long press event
processing itself happens. This is called as part of the chain
that handles message FrameHostMsg_ContextMenu (see stable above).
The second call to EWebView::ShowContextMenu used to happen
when user lifts its finger, and context menu should actually
get shown.

Additionally, patch moves in advance the moment when
long_mouse_press_ is set to true: instead of setting it
in SelectionControllerEfl::HandleLongEventPrivate, it is
now set in ::HandleGesture. That allows EWebView::ShowContextMenu
to check for it reliably instead of checking for ::IsShowingMagnifier
Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=6663

Original beta/m42 patches:
- http://165.213.202.130/gerrit/#/c/85895/ , reviewed by
DONGJUN KiM, Janusz Majnert, Arnaud Renevier.
- http://165.213.202.130/gerrit/#/c/86028/ , reviewed by
Janusz Majnert, Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=6663

Reviewed by: Janusz Majnert

Change-Id: I3eabb73f56d1003cff738c817e42ba8eae4e14c6
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[tizen v2.4 tv] Changed gbs.conf to avoid build crash
Jongsoo Yoon [Tue, 8 Sep 2015 07:59:41 +0000 (16:59 +0900)]
[tizen v2.4 tv] Changed gbs.conf to avoid build crash

The latest tizen_v2.4 product repository is unstable.
It is better to stay at tztv-2.4-main2016-hawk-p_20150905.1 version
until the latest will be stable.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14332

Change-Id: I59ccb01542323551b7fd9ba7277aa97c6e9034a8
Signed-off-by: Jongsoo Yoon <join.yoon@samsung.com>
6 years agoReplaced EXPORT_API from EAPI
Jongsoo Yoon [Thu, 3 Sep 2015 07:15:48 +0000 (16:15 +0900)]
Replaced EXPORT_API from EAPI

Now the build breaks was occurred due to the update of EFL.
According to the EFL team, we cannot use the EAPI, because
the EAPI is internal API in EFL.
So, we should use the EXPORT_API in tizen.h instead of the EAPI.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14301

Reviewed by: SeungSeop Park, Antonio Gomes

Change-Id: Ic4b9c52fdad6c12d97c96c5f120ddd3ed509f9cf
Signed-off-by: Jongsoo Yoon <join.yoon@samsung.com>
6 years agoRemove ununsed ContextMenuType parameter of various methods.
Antonio Gomes [Fri, 28 Aug 2015 00:25:12 +0000 (20:25 -0400)]
Remove ununsed ContextMenuType parameter of various methods.

WebContentsViewDelegateEwk::ShowContextMenu calls
EWebView::ShowContextMenu which calls ContextMenuController
ctor. ContextMenuType is passed as a parameter through
them, but is not used.

Patch removes it.

Origin beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/86027/ , reviewed by
Laszlo Gombos, Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: Janusz Majnert

Change-Id: Idfff4e1fd961e8cfc68a478a20bbb23fed4c0c18
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoMove SelectionMagnifierEfl away from Ecore_Animator
Antonio Gomes [Tue, 25 Aug 2015 19:12:45 +0000 (15:12 -0400)]
Move SelectionMagnifierEfl away from Ecore_Animator

In order to initiate a text selection, user has to
press and hold its finger on a selectable content.
While user has not lifted, browser keeps selecting
the content underneath user's finger. In other words,
the selected content might change while user moves
his finger around.

The way this functionality is implemented today is
extremely inefficient though: once text selection starts
an Ecore_Animator based timeout fires at every mainloop run.
In the animation callback, the following is performed:
- a snapshot is requested to fill the magnifier glass canvas
(see SelectionMagnifierEfl::UpdateLocation)
- there is a request to select the content underneath
user's finger position
(see SelectionControllerEfl::HandleLongPressMoveEvent).

That happened continously at a high rate no matter if the
finger position had changed on not.

Patch fixed this by replacing the expensive timer based
implementation by an one based on finger movement.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/85786/ , reviewed by
DONGJUN KiM, Janusz Majnert and Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=11350

Reviewed by: Janusz Majnert

Change-Id: Iffa0374a49ee912274b61e97880f7e0a5f87c9b2
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoIntegrate Composited Text selection to chromium-efl
Antonio Gomes [Wed, 19 Aug 2015 17:34:34 +0000 (13:34 -0400)]
Integrate Composited Text selection to chromium-efl

The previous way of passing text selection data from
the renderer to browser was by making use of the message
ViewHostMsg_SelectionBoundsChanged.
However, upstream Aura and Android ports moved away from using
it in favor of using "Composited selection" updates instead.

Basically, when WebRuntimeFeatures::isCompositedSelectionUpdateEnabled
is enabled, the text selection data are a RenderFrame member,
available to the browser through listening to message
ViewHostMsg_SwapCompositorFrame.
In practice, RWHV{port}::SwapCompositorFrame method collects
the selection data, and handle it accordingly.

Apart from being more aligned to other upstream ports,
that integration allows us to remove some tweaks done
in common src/ code.

Additionally, the selection_data provided by the compositor
data, contains information about the visibility of a selection
anchor. Thus, SelectionControllerEfl::visibility_rect can be dropped.

Original beta/m42 patches:
- http://165.213.202.130/gerrit/#/c/85431/ , reviewed by
Janusz Majnert and Arnaud Renevier;
- http://165.213.202.130/gerrit/#/c/85784/ , reviewed by
Janusz Majnert and Arnaud Renevier;
Patch also reverts http://165.213.202.130/gerrit/#/c/84598/ ,
which did not work, in any case.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=6663

Reviewed by: arno renevier, Antonio Gomes

Change-Id: I6522c6ae1d58d81908c63446a33de6cb6fad9a97
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoAlign the SelectionControllEfl selects text to TouchSelectionController
Antonio Gomes [Wed, 19 Aug 2015 15:34:32 +0000 (11:34 -0400)]
Align the SelectionControllEfl selects text to TouchSelectionController

TouchSelectionController is the upstream class that handles
touch based text selection logic for Aura and Android.
We are on our way towards being able to use it, but
we still need to eliminate some hit-testing ping-pong
messages that SelectionControllerEfl relies on in order
to figure out the text selection context.

In the meanwhile, patch aligns our SelectionControllerEfl
logic with regards to how text selection is changed
upon user movements of selection handles.

Previously, every time the handle is dragged WCI::SelectionRange
was called. That required us to have control of which
handle comes first (see SelectionDataEfl::is_anchor_first_).

Patch changes that by doing the following:
- On mouse down, we set the selection range.
- On mouse move, we just adjust the selection 'extent' accordingly.

For reference, this is the logic in TouchSelectionController, as
one can see [1] and [2].

[1] http://bit.ly/1K6NmYj
[2] http://bit.ly/1UTzAve

Original beta/m42 patches:
- http://165.213.202.130/gerrit/#/c/85429/ , reviewed by
Janusz Majnert, Arnaud Renevier.
- http://165.213.202.130/gerrit/#/c/85705/ , reviewed by
Janusz Majnert, Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=6663

Reviewed by: Janusz Majnert, arno renevier

Change-Id: Ifba5ed44d335f25b15bc1975d3f54c2f9243dce6
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoSimplify SelectionControllerEfl::OnMouseMove
Antonio Gomes [Wed, 19 Aug 2015 15:18:45 +0000 (11:18 -0400)]
Simplify SelectionControllerEfl::OnMouseMove

By passing the SelectionHandleEfl object as a parameter
instead of its type, we can greatly simplify this method.

For instance, patch factors out the magnifier positioning
logic out of the switch, now that it is common for all 3
types of handles.

Additionally, now two cases in the 'switch' statement can be
colapsed (ones that handle HANDLE_TYPE_LEFT and RIGHT).

Last, patch also moves the declaration of the
local variables within the scope they are needed.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/85428/ , reviewed by
Janusz Majnert, Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: Janusz Majnert

Change-Id: Ie1b8a105e155e54e33e267d1ba70243a57234bd5
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoDefer to SelectionControllerEfl more gesture handling.
Antonio Gomes [Fri, 14 Aug 2015 16:15:29 +0000 (12:15 -0400)]
Defer to SelectionControllerEfl more gesture handling.

There is no funcionality change, but similarly to [1]
patch frees RWHVEfl from text selection specific gesture
handling. Logic now is centrilized SelectionControllerEfl.

This makes an eventual switch to chromium's composited
text selection more smooth from a RWHVEfl perspective.

The following class members and related logic were moved:
- should_restore_selection_menu_
- selection_acked_on_tap_
- single_tap_performed_
- was_scrolled_

[1] http://165.213.202.130/gerrit/#/c/86367

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/85200/ , reviewed by
Janusz Majnert, Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=6663

Reviewed by: arno renevier, Janusz Majnert, SeungSeop Park, David Michael Barr

Change-Id: I24115b21d4901ce1cb9070ac9f68a21c54843ead
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[tizen v2.4 tv] change repository from base_2016_backup to base_2016
Youngsoo Choi [Fri, 4 Sep 2015 02:34:30 +0000 (11:34 +0900)]
[tizen v2.4 tv] change repository from base_2016_backup to base_2016

The repository base_2016_backup has been replaced with base_2016.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14332

Change-Id: I0b722af18c7f9dc3b64556b3c69d88c37b4c291c
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
6 years agoRemove SelectionControllerEfl::IsCaretSelection and bogus logic
Antonio Gomes [Fri, 7 Aug 2015 17:20:24 +0000 (13:20 -0400)]
Remove SelectionControllerEfl::IsCaretSelection and bogus logic

SelectionControllerEfl::caret_selection_ is meaningless
class member currently. It is supposed to store the state
of either text selection is in "caret mode" or not. But this
is done in SelectionBoxEfl::GetCaretSelectionStatus.

In fact, ::caret_selection_ is set to 'true' at the ctor,
then set to true again in ::HandleLongPressEventPrivate.
Any associated if that checks for it is bogus since it is always
true. That includes its getter SelectionControllerEfl::IsCaretSelection.

Patch removes the associated code, and also code paths
that were unreachable before.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/84781/ reviewed by
Arnaud Renevier and Janusz Majnert

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: Janusz Majnert, arno renevier, SeungSeop Park

Change-Id: Iadbcc11f0800ceb4490a2b0ce37ee079dd45ebbb
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoSimplify SelectionControllerEfl::OnMouseDown
Antonio Gomes [Wed, 19 Aug 2015 14:42:28 +0000 (10:42 -0400)]
Simplify SelectionControllerEfl::OnMouseDown

By passing the SelectionHandleEfl object as a parameter
instead of its type, we can greatly simplify this method.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/85427/ , reviewed by
Janusz Majnert and Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: arno renevier, Janusz Majnert

Change-Id: I39617552aca386078d8ed110add788be650c5bdd
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoDefer to SelectionControllerEfl some gesture handling.
Antonio Gomes [Wed, 12 Aug 2015 20:14:26 +0000 (16:14 -0400)]
Defer to SelectionControllerEfl some gesture handling.

RWHVEfl class hosts most of our touch handling logic.
However some events/gestures are specific to text selection
and could be handled there.

Patch does that by adding HandleGesture{Begin,End} methods
to SelectionControllerEfl, as well as move the class variable
'restore_showing_large_handle_on_gesture_end_' there too.

That has some advanteges:
- it cleans up RWHVEfl
- It makes SelectionControllerEfl mode self-contained
- It make a future/possible replacement of SelectionControllerEfl
easier.

Origin beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/85092/ , reviewed by
Janusz Majnert and Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: arno renevier, Jaesik Chang, Janusz Majnert, SeungSeop Park

Change-Id: I09749ba363205a389d1790b92b412daa1d5e6bed
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoMove SelectionControllerEfl ownership to RWHVEfl
Antonio Gomes [Wed, 12 Aug 2015 18:24:11 +0000 (14:24 -0400)]
Move SelectionControllerEfl ownership to RWHVEfl

Patch moves ownership of this object from WebContentsViewEfl
to RWHVEfl.

This is because SelectionControllerEfl is essentially an RWHVEfl
object. Additionally, analogy classes like RWHVAndroid and RWHVAura
also own their respective TouchSelectionController instances.

Origin beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/85091/ , reviewed by
Janusz Majnert and Arnaud Renevier.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: arno renevier, Janusz Majnert

Change-Id: I84ed0ed9bc7535b8f2ebb003b7eeb9cdb1a3e951
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoDo not enter "caret" text selection mode for non editable content
Antonio Gomes [Mon, 10 Aug 2015 15:54:06 +0000 (11:54 -0400)]
Do not enter "caret" text selection mode for non editable content

Our SelectionControllerEfl implementation consists in a
state machine. States are:

-not in selection mode
-selection mode (two handles on regular page content / text)
-editable selection mode (two handles on editable content)
-caret selection mode (one handle/cursor on editable content)

In summary, we need to sync our own state machine with chromium's.

When PRESS_SHOW event is handled, it is checked if
underneath content is "editable". If it is, selection enters
in either "editable selection" mode or "caret mode".
Otherwise, we should not enter neither of such modes
Patch fixed this.

In practice, it fixes the following problem:

When context menu is to be shown, its location is calculated based
on the handle(s) location. There are two code paths.
- when both handles are shown (i.e. non caret selection mode).
- when only the large handle is shown (i.e. carent selection mode).

In case of (1), context menu is placed either close to the "start"
handle or "end" handle, in that order, depending of their
visibility.
In case of (2), only the "start" handle is checked, as it is
supposed to only when handle being shown.

If we were wrong in caret mode (code path (2) above), the wrong
code path would be used to calculate the position, and context menu
would get misplaced.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/84851/, reviewed by Hyunhak Kim
and Arnaurd Renevier

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14304

Reviewed by: arno renevier, Janusz Majnert, SeungSeop Park

Change-Id: I09f37fbf2d226d3a1feaef6aff5c3211188246db
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agofixup! [M44_2403] Chromium upversion to m44_2403 branch
Arnaud Renevier [Wed, 26 Aug 2015 22:07:29 +0000 (15:07 -0700)]
fixup! [M44_2403] Chromium upversion to m44_2403 branch

Enable permissions. Since m44, Permissions related methods have been
refactored out of ContentBrowserClient.

This patch creates a PermissionManagerEfl interfaces that subclasses
PermissionManager.

The callback has changed too. Instead of accepting a boolean, it accepts
a PermissionStatus which can be DENIED, GRANTED or ASK. We only return
DENIED or GRANTED, but need to update callback signatures.

In order to do so, we also refactor Ewk_Suspendable_Object. Callback is
no longer a direct member of the class. That way, subclasses
(_Ewk_Geolocation_Permission_Request and
_Ewk_Certificate_Policy_Decision) can have different callback
signatures.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14049

Reviewed by: Antonio Gomes, SeungSeop Park

Change-Id: I24b08137cf27c4ada57e92305e03957dd3b0681d
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agoBuildRequires ail when building crosswalk
Arnaud Renevier [Fri, 28 Aug 2015 22:49:30 +0000 (15:49 -0700)]
BuildRequires ail when building crosswalk

crosswalk now depends on ail

Reviewed by: SeungSeop Park, Antonio Gomes

Change-Id: Ice9727feeeaf638c8c50cdc22b00887efebff0c9
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agofixup! [M44_2403] Chromium upversion to m44_2403 branch
Arnaud Renevier [Tue, 25 Aug 2015 22:26:34 +0000 (15:26 -0700)]
fixup! [M44_2403] Chromium upversion to m44_2403 branch

update to new DevToolsHttpHandler signature

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14049

Reviewed by: SeungSeop Park, Antonio Gomes

Change-Id: I3c906a4749983edbef540ef3a385e0a00ee668e7
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agofixup! [M44_2403] Chromium upversion to m44_2403 branch
Arnaud Renevier [Mon, 24 Aug 2015 23:19:34 +0000 (16:19 -0700)]
fixup! [M44_2403] Chromium upversion to m44_2403 branch

For now, when typing in an input box, if autofill is enabled, browser
will crash. It is because pref_service of PersonalDataManager has not
been initialized.

This patch fixes the crash by initializing it. It safe for the moment to
pass a NULL account tracker. No server profile is registered in the
database.  So account tracker will not be used in PersonalDataManager.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14042

Reviewed by: Antonio Gomes, SeungSeop Park

Change-Id: I2fc70a6658273942fd1b2cadf77c1afaa32e9a04
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agoApplied the python acceleration for generating gyp files
Youngcheol Kang [Mon, 24 Aug 2015 01:50:51 +0000 (10:50 +0900)]
Applied the python acceleration for generating gyp files

The previous way of python acceleration used the below build option.
(--extra-packs python-base-x86-arm,python-x86-arm,python-xml-x86-arm)

However, the python-cross package is supported instead of above
packages in tizen 3.0 profile by platform team.
(https://review.tizen.org/gerrit/#/c/46462/)

Using the python-cross package, the speed of gyp generation gets faster
than before. (10~20min -> 1~2min)

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14255

Reviewed by: Antonio Gomes, SeungSeop Park

Change-Id: I8f82f24a55f2f4e4c1bf3765b1b0455d50a45a8d
Signed-off-by: Youngcheol Kang <ychul.kang@samsung.com>
6 years agofixup! [M44_2403] Chromium upversion to m44_2403 branch
Arnaud Renevier [Tue, 18 Aug 2015 01:03:00 +0000 (18:03 -0700)]
fixup! [M44_2403] Chromium upversion to m44_2403 branch

This patch fixes a crash when processing touch events. This happens when
running ubrowser with --mobile on the desktop, and clicking on a
document that doesn't have touch event handlers.

For example, on google.com with ubrowser --mobile, clicking somewhere,
and then moving the mouse (without first releasing it) results in a
crash.

Since m44, we don't use ShouldForwardTouchEvent, and and we always
forward the touch events to the renderer. But this means that we
shouldn't call AckSyncTouchEvent. Instead, ProcessAckedTouchEvent will
be called.

Reviewed by: Antonio Gomes, SeungSeop Park

Change-Id: I278fd83f59b74a764a3fa8ad683dfec55e4951d0
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agoallow content_shell to run in sandbox mode
Arnaud Renevier [Fri, 14 Aug 2015 21:06:54 +0000 (14:06 -0700)]
allow content_shell to run in sandbox mode

Calling elm_init/ecore_init and other efl init methods is not needed in
renderer process. Also, this prevents the process to be sandboxed
(because those methods call pthread_create, and for some reason, it is
not possible to enter sandbox mode afterwards).

So this patch do not calls those methods in a zygote process.

http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14251

Reviewed by: Antonio Gomes, Laszlo Gombos, SeungSeop Park

Change-Id: I15bf9d8f09952cfdb217ce3b3d4dc6e53bc7aacd
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agofixup! Bringup Text selection
Antonio Gomes [Tue, 11 Aug 2015 18:37:08 +0000 (14:37 -0400)]
fixup! Bringup Text selection

Patch removes RWHVEfl::SelectionRootBoundsChanged now that
ViewHostMsg_SelectionRootBoundsChanged and
ViewHostMsg_SelectionBounds_Params are condensed.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=12549

Together with: Ie0756433b5a5301000b23d97fb72ebf837caf4e8

Reviewed by: arno renevier, Balazs Kelemen, Hyunhak Kim, Antonio Gomes

Change-Id: Ic2878c9f6d09b11f89f79b18e443500fc63d1d6a
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[M44_2403] Add arm64 support to ffmpeg
Youngcheol Kang [Tue, 11 Aug 2015 11:04:57 +0000 (20:04 +0900)]
[M44_2403] Add arm64 support to ffmpeg

We need to regenerate this arm64 support patch in ffmpeg
until ffmpeg supports arm64 architecture in mainstream.

The following commands were executed within arm64 GBS wayland chroot:
$ # enter chroot
$ gbs chroot --root
~/GBS-ROOT-3.0-MOBILE-ARM64-WAYLAND/local/BUILD-ROOTS/scratch.aarch64.0/
$ # copy over src/third_party/ffmpeg to chroot (e.g.: /home/abuild)
$ cd ffmpeg
$ ./chromium/scripts/build_ffmpeg.py linux arm64
$ ./chromium/scripts/copy_config.sh
$ # edit chromium/scripts/generate_gyp.py; add "arm64" to support
platforms.
$ python chromium/scripts/generate_gyp.py
$ edit ffmpeg.gyp; add "asm_sources" to the build
$ # generate the patch against a unchanged ffmpeg copy

This patch referred to http://165.213.202.130/gerrit/#/c/80261

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14159

Reviewed by: Antonio Gomes, joonhwan kwon

Change-Id: Ic7e6b1a8ab9b3976f0cf3fc3eafb2a7d9202708a
Signed-off-by: Youngcheol Kang <ychul.kang@samsung.com>
6 years agoRemove dependencies of tizen v2.2.1
Youngsoo Choi [Fri, 7 Aug 2015 03:43:50 +0000 (12:43 +0900)]
Remove dependencies of tizen v2.2.1

The tizen v2.2.1 is not supported anymore.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14148

Reviewed by: SeungSeop Park, Antonio Gomes

Change-Id: I3072ff0cf6825caaf8cc487061df9ee0c3aae7d9
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
6 years ago[dev/m42][uBrowser] No selection handler on long text
Antonio Gomes [Thu, 6 Aug 2015 22:05:21 +0000 (18:05 -0400)]
[dev/m42][uBrowser] No selection handler on long text

Our text selection and context menu code has some logic
to _not_ show the context menu when it calculates handles
are not positioned properly. See for example, some of cases
returning 'false' in ContextMenuControllerEfl::ShowContextMenu.

This has two problems:
1) It only takes into account the "start" handle, and no
matter if the "end" handle were onscreen, it was ignored.
2) It was not only not showing the context menu.
By returning "false" in ContextMenuControllerEfl::ShowContextMenu,
selection was actually canceled, leaving SelectionController
and the renderer process selection code out of sync.

In s-browser (verified on S6) context menu is not shown
if both handles are offscreen and the selected content itself
is also offscreen.

Patch makes us behavior similarly to s-browser by.
implementing the first patch of the behavior described:
if no handles are on screen (i.e. both are scrolled away from
viewport), do not show the context menu.

Another big different from the previous behavior is that
we do not leave selection mode when handles are offscreen.
Instead, we do not show context menu only. Once handles
are onscreen again, context menu is shown just fine.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13431

Reviewed by: SeungSeop Park

Change-Id: Ic39d9497f2fa4400096bd8c8356183b0cab760d6
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoMake context menu available on desktop builds.
Antonio Gomes [Thu, 6 Aug 2015 22:05:49 +0000 (18:05 -0400)]
Make context menu available on desktop builds.

By setting the "copypaste" which is Tizen specific,
context menu fails to show.
Patch makes this workaround (as per the comment describing
it) OS Tizen specific.

Reviewed by: SeungSeop Park

Change-Id: Ie3342b1e50ca3e1d0f41bc6a4796a0e11b709428
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[M44_2403] Chromium upversion to m44_2403 branch
Youngcheol Kang [Wed, 29 Jul 2015 06:51:54 +0000 (15:51 +0900)]
[M44_2403] Chromium upversion to m44_2403 branch

This patch cherry-picked from below patches of dev/master branch,

[Origin Patch]

- [M43_2357] Chromium upversion to m43_2357 branch
  (http://165.213.202.130/gerrit/#/c/79126/)
- fixup! [M43_2357] Chromium upversion to m43_2357 branch
  (http://165.213.202.130/gerrit/#/c/80912/)
- Always forward touch events to the TouchEventQueue
  (http://165.213.202.130/gerrit/#/c/80137/)
- [M44_2403] Chromium upversion to m44_2403 branch
  (http://165.213.202.130/gerrit/#/c/81624/)
- [M44_2403][EWK_BRINGUP] modify to call WebContents::ClosePage()
  (http://165.213.202.130/gerrit/#/c/82170/)
- [M44_2403][EWK_BRINGUP] modify to call RenderViewHostImpl::Blur() directly
  (http://165.213.202.130/gerrit/#/c/82168/)

This patch deals with following upstream changes:

1. Folder and class name changes

- Changed the name of the LayoutThemeChromium* to the LayoutTheme*
- Changed the name of the devtools_target.h to the
  devtools_target_descriptor.h. Also the namespace and path changed to
  the components/devtools_discovery from the content/public/browser
- Changed the path of the content_renderer to the relative path from the
  absolute path
- Changed the path of the skcanvas_video_renderer.h to the media/blink
  from the media/filters
- Changed the path of the video_capture_types.h to the media/base from
  the media/video/capture
- Changed the namespace and path of the devtools_http_handler.h to the
  components/devtools_http_handler from the content/public/browser
  Because of this the namespace of the DevToolsDelegateEfl class in
  impl/ changed to the devtools_http_handler from the content
- Changed the namespace and path of the sqlite_persistent_cookie_store.h
  to the net/extras/sqlite from the content/browser/net

2. API changes

- Added the CreateGPUTimingClient API in the gfx::GLContext class
- Added the CreatePlugin API in LoadablePluginPlaceholder class
- Added the DidHostRunInsecureContent, HostRanInsecureContent API in
  SSLHostStateDelegate class
- Added the GetPermissionManager API in the BrowserContext class
- Added the GetFrontendResource, GetPageThumbnailData API in
  DevToolsHttpHandlerDelegate class
- Added the GetImageTextureTarget, GetTaskGraphRunner API in
  ContextFactory class
- Changed the argument of Compositor API in ui class
- Changed the argument of CreateNewWindow API in Shell class
- Changed the argument of CreateOutputSurface API in ContextFactory
  class
- Changed the argument of DownloadImage API in WebContentsImpl class
- Changed the argument of DidStartLoading API in RenderViewImpl class
- Changed the argument of EnterFullscreenModeForTab API in
  WebContentsDelegate class
- Changed the argument of InProcessGpuThread in content class
- Changed the argument of ReadbackYUV API in ReadbackYUVImpl class
- Changed the argument of RemoveReflector API in ContextFactory class
- Changed the argument of SQLitePersistentCookieStore API in net class
- Changed the argement of ReportValueChanged, SetValue, RemoveValue API
  in PersistentPrefStore class
- Changed the return type of CreateReflector API in ContextFactory class
- Changed the ExecuteJavaScriptForTests API to the
  ExecuteJavaScriptWithUserGestureForTests API in the RenderFrameHost
  class
- Changed the GetLastActivityTime API to the GetLastActiveTime API in
  the DevToolsTargetDescriptor class. Also the return type was changed
  to the base::Time from the base::TimeTicks
- Changed the OnUnmaskVerificationResult, GetRapporService,
  PropagateAutofillPredictions, IsAutocompleteSavingEnabled API in
  AutofillClient class
- Changed the PermissionType class to enum class
- Removed the Blur API in RenderWidgetHostView class
- Removed the BundlesFrontendResources, GetDebugFrontendDir API in
  DevToolsHttpHandlerDelegate class
- Removed the CreateMediaSourceErrorEvent API in MediaLog Class
- Removed the CreateNewTarget, EnumerateTargets, GetPageThumbnailData
  API in DevToolsManagerDelegate class
- Removed the DidCreateScriptContext API in ContentRendererClient class
- Removed the GetCompositorMessageLoop API in ContextFactory class
- Removed the IsAutocompleteSavingEnabled, DetectAccountCreationForms
  API in AutofillClient class
- Removed the OrientationLock API in ScreenOrientationDelegate class
- Removed the OrientationLock, OrientationUnlock class in
  WebContentsDelegate class
- Removed the ShouldForwardTouchEvent API in RenderWidgetHostImpl class
- Removed the WebContentsDestroyed API and added the ResetDialogState
  API in JavaScriptDialogManager class

3. Need to change API (TODO issues)

- The icu function has been changed. Temporary using the icu of the
  chromium instead of the system.
  (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13290)
- The multimedia function has been changed. Temporary disabling the
  'tizen_multimedia_support' flag
  (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14037)
- The Reflector class has been changed. Temporary disabling the codes
  (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14038)
- The KillProcessAPI was removed in base class. Temporary disabling the
  codes (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14039)
- Some switch was removed in the cc::switches class. Temporary disabling
  the codes (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14040)
- The GestureConfiguration class has been changed. Temporary disabling
  the 'gesture_detection' setting
  (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14041)
- The PersonalDataManager class has been changed. Temporary disabling
  the codes (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14042)
- The RequestPermission class has been changed. Temporary disabling the
  codes (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14043)
- The DevToolsHttpHandler class has been changed. Temporary disabling
  the codes (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14044)
- The g_app_info_launch_default_for_uri API was undefined in desktop
  build (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14045)
- The GPU function has been changed. Temporary disabling the
  'tizen_disable_gpu_thread' flag
  (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14046)
- The build breaks in libGLESv2.gypi. For the temporary solution the
  patch file into the /src/tizen_src/build/patches
  (http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14048)

4. Verification

- This patch supports to the mobile and tv target on Tizen 2.4 and 3.0
- There is no build breaks in all target
- The browser (efl_webview_app, mini_browser, ubrowser) is working in
  all target

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14049

Change-Id: Ic9f5cf9bde8340030ac8a296d6c324f35c547f3c
Signed-off-by: Youngcheol Kang <ychul.kang@samsung.com>
6 years agoFixing warnings of conflicted gcc switches for tizen v2.4 product tv
Youngsoo Choi [Tue, 4 Aug 2015 09:19:50 +0000 (18:19 +0900)]
Fixing warnings of conflicted gcc switches for tizen v2.4 product tv

[issue]
There are tons of warnings like below, during build for tizen v2.4 tv.
>> warning: switch -mcpu=cortex-a15.cortex-a7 conflicts with
>> -march=armv7-a switch

[cause]
The tizen v2.4 platform provides a switch '-mcpu=cortex-a15.cortex-a7'.
Simultaneously, some of chromium gyp try to insert a switch '-march=armv7-a'.

Current gcc version does not support a combination of the switches
'-mcpu=cortex-a15.cortex-a7' and '-march=armv7-a'.

[resolve]
The options '-mcpu' and '-march' are used to schedule things appropriately
for particular chip.

>> -march=cpu-type
>> Generate instructions for the machine type cpu-type.
>> The choices for cpu-type are the same as for -mcpu.
>> Moreover, specifying -march=cpu-type implies -mcpu=cpu-type.

According to above gnu docs, march implies mcpu,
so one of them can be chosen alone.

This patch utilizes platform switch '-mcpu=cortex-a15.cortex-a7',
instead of chromium switch '-march=armv7-a' to avoid the confliction,
and another platform switch '-mtune=cortex-a15.cortex-a7' too.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14098
Reviewed by: Antonio Gomes, SeungSeop Park

Change-Id: I933a78c8dda63809e5aa7bf82c67c0a0cc83891f
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
6 years agofixup! Bringup Text selection.
Youngcheol Kang [Wed, 5 Aug 2015 10:10:11 +0000 (19:10 +0900)]
fixup! Bringup Text selection.

Disabled the CompositedSelectionUpdate by disable-blink-features

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14120

Change-Id: Iea324e315b808581279bb6375f4d973f6d1fa4d3
Signed-off-by: Youngcheol Kang <ychul.kang@samsung.com>
6 years agoShare more configuration options between desktop and Tizen builds
Youngcheol Kang [Tue, 4 Aug 2015 05:05:28 +0000 (14:05 +0900)]
Share more configuration options between desktop and Tizen builds

This patch cherry-picked from the dev/master by Laszlo Gombos
Origin Patch : http://165.213.202.130/gerrit/#/c/83779

Sharing more options makes the desktop build closer
to Tizen specific builds and enablers better simulation
of Tizen environment on desktop.

This change also disables alsa, gconf, kerberos for
desktop builds.

Bug: None.

Change-Id: I7364cf703b8f20c1692a274de7d8c0a84c8fae0e
Signed-off-by: Youngcheol Kang <ychul.kang@samsung.com>
6 years agoIntroduce version-aware Tizen macros
Antonio Gomes [Tue, 4 Aug 2015 17:32:33 +0000 (13:32 -0400)]
Introduce version-aware Tizen macros

Previously there were #if defined(TIZEN_V_XXX) guards
over the code in order to condition compilation to specific
Tizen versions.
Although it works, it is not elegant and other parts of
the source base do not use similar practice.

Instead, expanding macros are used to condition code
to a specific compiler version or alike
(see GCC_VERSION in third_party/WebKit/Source/wtf/Compiler.h).

Patch implements and deploys a set of macros to improve the code:
- TIZEN_VERSION_EQ(major,minor,patch)
- TIZEN_VERSION_AT_LEAST(major,minor,patch)

The old TIZEN_V_XXX macros are still available
to be used by our sample apps (ubrowser, mini_browser,
and efl_webview_app) through tizen_version_defines_for_apps.gypi

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=7198
Reviewed by: SeungSeop Park, arno renevier

Change-Id: Id1df977540edfa95b2eb509db4743539157c3922
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[MM] Enabling MM features for Tizen v2.4 on TV
Umesh Kumar Patel [Fri, 31 Jul 2015 06:44:50 +0000 (12:14 +0530)]
[MM] Enabling MM features for Tizen v2.4 on TV

This patch contains following change list:
1. Using software path for MM, until pixmap is enabled.
2. Using GST Port for ME, as MediaPacket is not supported.
3. Changes to use legacy capi for HawkP 2.4
4. Moved related changes tizen_multimedia_use_capi_for_me
   to media_efl.gypi
5. Removed ASM related obsolete files
6. Other dependency and build error changes

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14072
Reviewed by: SeungSeop Park, Sharath Kamath

Change-Id: I1af848361483ed6d0dae0101621db02ec9884bbc
Signed-off-by: Umesh Kumar Patel <umeshk.patel@samsung.com>
6 years agoImplement ssl_host_state_delegate
DongJun Kim [Thu, 30 Jul 2015 11:23:58 +0000 (20:23 +0900)]
Implement ssl_host_state_delegate

Certificate popup have always showing up,
because certificate decisions are not remembering on "blink" side.

"ssl_host_state_delegate" is for managing decisions from user,
but it was not implemented on latest code.
We need to add it for resolving this issue.
Reviewed by: Hyunhak Kim, Janusz Majnert

Change-Id: I9d11b7414816431047c91a6c87cd83d93a9db192
Signed-off-by: DongJun Kim <djmix.kim@samsung.com>
6 years ago[MM] Proper use of tts_get_speed_range()
ws29.jung [Wed, 22 Jul 2015 11:12:33 +0000 (20:12 +0900)]
[MM] Proper use of tts_get_speed_range()

We should pass non-null parameters to |tts_get_speed_range|.
Otherwise, invalid parameter error would be raised by TTS engine.

In addition to fixing above, patch does followings as well.
- Update the logic of converting from float rate to int speed used by
  TTS engine. According to platform team, the rate-to-speed mapping varies
  depending on specific TTS engine on use, but current setting is roughly
  as follows:
    'tts_speed' | rate
    -----------------
    Min.        | 0.6
    Normal      | 1.0
    Max.        | 2.0
  Linear interpolation method is adopted to get |tts_speed| from
  an arbitrary |rate|.
- Make the private method that did the conversion as a local free function.
- Drop legacy 2.3 code path, which seems no longer valid.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13980
Reviewed by: SeungSeop Park, Sharath Kamath

Change-Id: Ic3964561b5fc8bf62d6d3e1f67c55669db978039
Signed-off-by: ws29.jung <ws29.jung@samsung.com>
6 years agoFix crash in WebContentsViewEfl::UpdateDragDest function
Youngcheol Kang [Tue, 4 Aug 2015 04:56:38 +0000 (13:56 +0900)]
Fix crash in WebContentsViewEfl::UpdateDragDest function

This patch cherry-picked from the dev/master by Hyunhak Kim
Origin Patch : http://165.213.202.130/gerrit/#/c/81251/

Due to patch on upsteam(https://codereview.chromium.org/950223006/#ps150001),
UpdateDragDest function is called too early before RenderWidgetHostView is created.
So, modify to check RenderWidgetHostView value in UpdateDragDest() and call it when
creating View.

Change-Id: I8d376259e60471847537e2a5caabc3150ee885e5
Signed-off-by: Youngcheol Kang <ychul.kang@samsung.com>
6 years ago[mobile][tizen v3.0] changes of sensor lib header
Youngcheol Kang [Tue, 4 Aug 2015 04:47:48 +0000 (13:47 +0900)]
[mobile][tizen v3.0] changes of sensor lib header

This patch cherry-picked from the dev/master by Youngsoo Choi
Origin Patch : http://165.213.202.130/gerrit/#/c/77837/

The header name of sensor lib has been changed
from sensor/sensors.h to sensor/sensor.h.

In addition, tizen v2.2.2 which is used only for tv doesn't
need to support the sensor feature.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=12483

Change-Id: I565461557a788b43dbbc2f6f9709b46b01946eab
Signed-off-by: Youngcheol Kang <ychul.kang@samsung.com>
6 years agoMark b.kelemen, l.gombos, sl.ostapenko as inactive.
Youngcheol Kang [Tue, 4 Aug 2015 05:01:53 +0000 (14:01 +0900)]
Mark b.kelemen, l.gombos, sl.ostapenko as inactive.

This patch cherry-picked from the dev/master by Laszlo Gombos
Origin Patch : http://165.213.202.130/gerrit/#/c/83366

This means they still qualified and authorized owners but
at the moment they not activly involved with the project.

Also sorted the inactive section.

Change-Id: If0928a883bb6c98ef6f3d3109e9d73acaaf7da08
Signed-off-by: Youngcheol Kang <ychul.kang@samsung.com>
6 years agoReplacing deprecated 'efl-assist' with 'efl-extension'
Youngsoo Choi [Mon, 3 Aug 2015 07:27:08 +0000 (16:27 +0900)]
Replacing deprecated 'efl-assist' with 'efl-extension'

The related APIs are changed to use 'efl-extension'.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14077
Reviewed by: Antonio Gomes, SeungSeop Park

Change-Id: I30ca226d679abc8ac3ab0f37520445bf934d32c0
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
6 years agoAdded option to uBrowser to enable web inspector server.
Wojciech Bielawski [Fri, 31 Jul 2015 08:40:37 +0000 (10:40 +0200)]
Added option to uBrowser to enable web inspector server.

Sometimes it's usefull to have a web inspector running on mobile/TV.
This patch provides new "context menu" option for uBrowser to start
web inspector server.
Reviewed by: Antonio Gomes, Daniel Waślicki

Change-Id: I83613375a83a1f6361a4c9a9a1a2ef10731d299d
Signed-off-by: Wojciech Bielawski <w.bielawski@samsung.com>
6 years agoDisable v8 command line options tweaking v8 garbage collector.
Pawel Forysiuk [Fri, 31 Jul 2015 09:58:34 +0000 (11:58 +0200)]
Disable v8 command line options tweaking v8 garbage collector.

They add some performance penalty and should probably be enabled
selectively only on very memory constrained devices.
Reviewed by: Antonio Gomes, kavitha devara

Change-Id: Id9f6e676fea9077b8a709577dd8e316051fa5c2a
Signed-off-by: Pawel Forysiuk <p.forysiuk@samsung.com>
6 years agoInitial support for tizen v2.4 product tv
Youngsoo Choi [Wed, 22 Jul 2015 01:12:35 +0000 (10:12 +0900)]
Initial support for tizen v2.4 product tv

1) Providing python acceleration
   It makes generating gyp extremely faster than before.

2) Solving python-base issue with supplementary repository
   This issue has been observed on tizen v2.2.1 as well.
   The following patch of python-base causes errors.
   >> subprocess-can-raise-OSError-EPIPE-when-communicatin.patch

3) Supporting prebuilt gold for tizen v2.4 tv
   The chromium-efl built by our own prebuilt gold can not be executed
   on target, so gold linker is newly built based on current platform.

4) Fixing not founding EGL header error
   Following error was happened.
   >> fatal error: EGL/egl.h: No such file or directory

5) Applying changed API usage of capi-appfw-application
   Tizen v2.4 and v3.0 tv support the changed API usage as mobile does.

6) Disabling multi-media feature
   Some of undefined multi-media variables are being used on x11.
   Enabling the feature will be handled in other patch set.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14033
Reviewed by: Antonio Gomes, SeungSeop Park

Change-Id: If510789d3e8990867ddd3618e072c43bbba0ab37
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
6 years agoRemove gcc46_compat_wrappers default include path
Antonio Gomes [Wed, 29 Jul 2015 17:15:13 +0000 (13:15 -0400)]
Remove gcc46_compat_wrappers default include path

This directory does not exist anymore, since we
remove GCC 4.6 support.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=12987
Reviewed by: Antonio Gomes, SeungSeop Park

Change-Id: I1acc42eb14e59900840c19bf5f9f735472f2ec16
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoUnify LOCALE_DIR resolve logic for desktop and GBS builds
Antonio Gomes [Wed, 29 Jul 2015 21:59:22 +0000 (17:59 -0400)]
Unify LOCALE_DIR resolve logic for desktop and GBS builds

Patch uses similar logic then EDJE_RESOURCES_DIR,
and eliminates more #if in our more.
Reviewed by: Janusz Majnert, SeungSeop Park

Change-Id: I45844c0a67cecf6c1801712aa4c4d85fa2b0c6c4
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agofixup! Make text selection feature available on desktop builds.
Antonio Gomes [Wed, 29 Jul 2015 20:20:22 +0000 (16:20 -0400)]
fixup! Make text selection feature available on desktop builds.

The original patch [1] had one problem:

No matter if one makes a debug or release build,
the value passed to GYP was the same, e.g.:

"$ build_desktop.sh --debug"

... was going to pass "-Dedje_dir=out.x64/Debug" to ninja,
regardless of the build configuration (Release or Debug), as show below.

$ grep -nHR edje_dir out.x64 --include=*.ninja
/out.x64/Debug/obj/content/content_common.ninja:
  '-DEDJE_DIR="/path>/out.x64/Debug/resources"'
/out.x64/Release/obj/content/content_common.ninja:
  '-DEDJE_DIR="/path>/out.x64/Debug/resources"'

See "Debug" in both ninja files.

To fix that, patch passes only the generic "out" directory to GYP,
and yields to GYP the responsibility to identify the build configuration.

"out" will allow us to use the logic to unify more codepaths,
including LOCALE_DIR.

[1] http://165.213.202.130/gerrit/#/c/84154/
Reviewed by: Janusz Majnert, SeungSeop Park

Change-Id: I6504ddb14ba4ee770701d61e26b28a108be68777
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[Chromedriver] Enable chromedriver build
Kamil Nowac [Wed, 15 Jul 2015 10:50:59 +0000 (12:50 +0200)]
[Chromedriver] Enable chromedriver build

Patch enables chromedriver build with --chromedriver flag
and fixes some major gypi problems.
Reviewed by: Antonio Gomes, Janusz Majnert

Change-Id: Ia51f2fb134867ae144ab76417848b01f8fde0741
Signed-off-by: Kamil Nowac <k.nowac@samsung.com>
6 years ago[EWKAPI] Implementation features of tizen extensible api
Sebastian Stolinski [Wed, 29 Jul 2015 06:57:43 +0000 (08:57 +0200)]
[EWKAPI] Implementation features of tizen extensible api

Patch adds functions ewk_context_tizen_extensible_api_string_set
and ewk_context_tizen_extensible_api_string_getewk_object_unref

This API is requested by WRT team. WRT used this api since tizen 2.4

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=11696

Reviewed by: DONGJUN KiM, Janusz Majnert, Karol Furmaniak
Signed-off-by: Sebastian Stolinski <s.stolinski@samsung.com>
Change-Id: Ib5ccf0146b6a2126d4abf12d866fd3ab86192269

6 years agoFix for black screen issue on tizen 2.4 product TV
Chandan Padhi [Wed, 29 Jul 2015 12:11:40 +0000 (17:41 +0530)]
Fix for black screen issue on tizen 2.4 product TV

Currently, glFlush gives black screen on tizen 2.4 product tv
similar to that in Note4 and XU3.
This patch uses glFinish instead of glFlush in SwapBuffers.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14021
Reviewed by: Antonio Gomes, DaeHyun Ko, Siba Samal, venu musham

Change-Id: I09e55ff7aaff0eb8407c28524fbc03c9c506e211
Signed-off-by: Chandan Padhi <c.padhi@samsung.com>
6 years agoRevert "Set same 'Source' name for chromium-efl-libs.spec and crosswalk-bin.spec"
hh4813.kim [Fri, 24 Jul 2015 04:43:41 +0000 (13:43 +0900)]
Revert "Set same 'Source' name for chromium-efl-libs.spec and crosswalk-bin.spec"

This reverts commit 40e0e4088732224c3c812860bf065d8bd72c17e1.

Due to SR build failed on OBS, revert the commit.

Comments: build fail : chromium-efl-libs
[  229s] + rm -rf chromium-efl-libs-42.2311.0.11
[  229s] + /bin/gzip -dc /home/abuild/rpmbuild/SOURCES/chromium-efl-42.2311.0.11.tar.gz
[  229s] + /bin/tar -xf -
[  301s] + STATUS=0
[  301s] + [ 0 -ne 0 ]
[  301s] + cd chromium-efl-libs-42.2311.0.11
[  301s] /var/tmp/rpm-tmp.ROzt89: line 32: cd: chromium-efl-libs-42.2311.0.11: No such file or directory

Git project: [platform/framework/web/chromium-efl]
Tag: submit/tizen_mobile/20150721.055717
Reviewed by: Antonio Gomes, DONGJUN KiM

Change-Id: Ia500c33d83a37791f3a5c5a63c4d0dd14f381e84
Signed-off-by: hh4813.kim <hh4813.kim@samsung.com>
6 years agoMake text selection feature available on desktop builds.
Antonio Gomes [Fri, 24 Jul 2015 20:31:36 +0000 (16:31 -0400)]
Make text selection feature available on desktop builds.

In GBS builds, we pass edje_dir value used to specify EDJ
resources' location as a GYP parameter (see -Dedje_dir in
chromium-efl.spec, for instance).

In order to have text selection on desktop builds, patch
does the same from build/common.sh.
Also, it makes GBS and desktop builds to take the same
codepath when resolving the respective edj path, eliminating
Reviewed by: Janusz Majnert, SeungSeop Park

Change-Id: Ia00bef1690f97ea77ff763718e6b36b6534fd9d0
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agofixup! Add command line switches for memory optimization patches recently merged.
Pawel Forysiuk [Mon, 27 Jul 2015 08:33:58 +0000 (10:33 +0200)]
fixup! Add command line switches for memory optimization patches recently merged.

Patch disables "--grow-semi-space-by-n-pages" and
"--custom-semi-space-growth=0" switches from V8's js-flags.
It seems to introduce performance regression in sunspider 1.0.2 test.

Note that [1] only enables the switch. Feature itself was worked on in [2].

[1] http://165.213.202.130/gerrit/#/c/83144/
[2] http://165.213.202.130/gerrit/#/c/81306/
Reviewed by: Antonio Gomes, kavitha devara

Change-Id: Ic827b59966b5d505223431d84e387e7a8390d9f4
Signed-off-by: Pawel Forysiuk <p.forysiuk@samsung.com>
6 years agofixup! Implement Delegate renderer using frame buffer object on Tizen.
Chandan Padhi [Thu, 23 Jul 2015 11:34:22 +0000 (17:04 +0530)]
fixup! Implement Delegate renderer using frame buffer object on Tizen.

In delegated rendering, only one texture is used for composition of
layers(write to the texture) and drawing onto evasgl surface(read
from the texture), both in the browser process. Hence, there is no
need to hold back a pending mailbox texture.
This patch removes the unnescessary std::swap while drawing the
texture to evasgl surface.
Reviewed by: DaeHyun Ko, venu musham

Change-Id: I4d518eb44eae6703c26ad1dfee11adf23d34b2fd
Signed-off-by: Chandan Padhi <c.padhi@samsung.com>
6 years agoAdded custom edc file for selection handles.
Marcin Lapinski [Fri, 17 Jul 2015 16:09:17 +0000 (18:09 +0200)]
Added custom edc file for selection handles.

This patch is nessesary because efl on odroid Tizen 3.0 platform
changed way of styling selection handles, and does not provides
style files for handles.

Reviewed by: Antonio Gomes, Janusz Majnert
Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13434
Change-Id: Ic73ba7afea616ad7143c654e91622b9be5adb5a5

6 years ago[WCS][Plug-in] Implement Missing plug-in placeholder
Umesh Kumar Patel [Thu, 23 Jul 2015 08:56:26 +0000 (14:26 +0530)]
[WCS][Plug-in] Implement Missing plug-in placeholder

Plug-ins are not supported by chromium-efl, However it is not notified
to end user.

This patch implements the missing plug-in placeholder to notify this.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13988
Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13234
Reviewed by: SeungSeop Park, Venugopal S M

Change-Id: I28c0c2962514f89dcf47ab523068d87c236f7b5d
Signed-off-by: Umesh Kumar Patel <umeshk.patel@samsung.com>
6 years agofixup! [MM] CAPI port code refactor
k2.nagaraju [Thu, 23 Jul 2015 05:24:50 +0000 (10:54 +0530)]
fixup! [MM] CAPI port code refactor

Media duration precision lost because ConvertMilliSecondsToSeconds returns
duration as double and it is getting assigned to int.
Rollback to original code.
Reviewed by: SeungSeop Park, Venugopal S M

Change-Id: I1db828bf1c7b486f1e5bc05f6d326592682d2d16
Signed-off-by: k2.nagaraju <k2.nagaraju@samsung.com>
6 years agoFix VersionInfo::ProductNameAndVersionForUserAgent()
Antonio Gomes [Wed, 22 Jul 2015 15:06:58 +0000 (08:06 -0700)]
Fix VersionInfo::ProductNameAndVersionForUserAgent()

Our current implementation of this method returns something
that is not expected by caller sites:

Current:
- "Chromium/aa.bb.cc.dd efl-webkit 0.0.0.0".

Expected (see [1] and [2]):
- "Chromium/aa.bb.cc.dd".

This value is exposed to the engine through ContentClientEfl::GetProduct()
and currently it breaks chromedriver as one can see in [3].

Given that the "efl-webengine 0.0.0.0" suffix is not updated for one
year, it is meaningless and also break the expectation that caller
sites have, patch removes it.

[1] http://bit.ly/1Jfn4Tk
[2] http://bit.ly/1JxVjBc
[3] http://bit.ly/1KktFgA
Reviewed by: SeungSeop Park, arno renevier

Change-Id: I0016390d99f65d6731eda94fa2f24c11c7f7a5fb

6 years agoUse gold linker all for non-arm64 builds on Tizen3.
Antonio Gomes [Wed, 22 Jul 2015 20:24:13 +0000 (13:24 -0700)]
Use gold linker all for non-arm64 builds on Tizen3.

Currently, we use platform gold for Tizen3 TV profile,
and our "home made" linker gold on Tizen3 Mobile profile,
no matter if it is 64bit and 32bit.

Patch changes it so that all Tizen3 ARM 32bit builds
use platform linker gold, and restrict use of our "home made"
linker on Tizen3 ARM 64bit builds, and Tizen2.

As a result, binaries are sligtly smaller:

     Binary           | Size Before | Size After
_________________________________________________
| xwalk               | 1744736     | 1691760  |
| libchromium-ewk.so  | 60752484    | 58894276 |
_________________________________________________

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=9044
Reviewed by: arno renevier, mohan reddy

Change-Id: Ic33fe85ec1cbede4504d5b6c8462de0eebfb4e67
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoClean up FileChooserControllerEfl class. Reviewed by: Antonio Gomes, Hyunhak Kim
Sanghyup Lee [Thu, 23 Jul 2015 09:57:51 +0000 (18:57 +0900)]
Clean up FileChooserControllerEfl class. Reviewed by: Antonio Gomes, Hyunhak Kim

Change-Id: I3aa1dfbe92851a5e35bc1e8d1ca6472331e862dc
Signed-off-by: Sanghyup Lee <sh53.lee@samsung.com>
6 years agoSimplify memory management in BrowserContextEfl
Arnaud Renevier [Tue, 21 Jul 2015 21:30:52 +0000 (14:30 -0700)]
Simplify memory management in BrowserContextEfl

resource_context_ does not need to be deleted in IO thread.

set_url_request_context_getter takes direct URLRequestContextGetterEfl
pointer argument to avoid the creation of a temporary scoped_refptr
Reviewed by: Antonio Gomes, Hyunhak Kim

Change-Id: I77cae67173d96919f1c5833a91677861bf9b44a6
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agofixup! Make it possible to link crosswalk against libchromium-ewk.so
Antonio Gomes [Wed, 22 Jul 2015 17:39:12 +0000 (10:39 -0700)]
fixup! Make it possible to link crosswalk against libchromium-ewk.so

Patch fixes Tizen3 mobile profile ARM 32bit build when
--xwalk parameter is passed.

Error:
[XXs] /lib/libpkgmgr_parser.so: error: undefined reference to 'smack_setlabel'

Build line:
$ tizen_src/build/build_mobile.sh --xwalk -P tzmb_v3.0_arm-wayland -A armv7l

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13316
Reviewed by: Hyunhak Kim, arno renevier

Change-Id: I158db5a9a479015b143e4608c07a67aa803d1067
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agofixup! Remove unneeded dependencies when building chromium-efl-libs and crosswalk-bin
Antonio Gomes [Tue, 21 Jul 2015 19:32:54 +0000 (12:32 -0700)]
fixup! Remove unneeded dependencies when building chromium-efl-libs and crosswalk-bin

Patch adds some explicit dependencies now needed when
building with "--xwalk".

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13316
Reviewed by: Hyunhak Kim, SeungSeop Park, arno renevier

Change-Id: I422eaf97aa82612906c79234201167d13995aa78
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoScale factor should be considered in EWebView::GetScrollSize
Sanghyup Lee [Wed, 22 Jul 2015 03:41:19 +0000 (12:41 +0900)]
Scale factor should be considered in EWebView::GetScrollSize

Application can scroll the webpage by using ewk_view_scroll_by().
At that time, scroll position is calculated and stored in browser
independent of renderer.

Currently scroll position in browser dosen't changed on the page
which is scrollable only when it is scaled up. It because wrong
scrollable size which calculated without scale factor.

This patch uses scaled contents size to calculate scrollable size.
Reviewed by: Hyunhak Kim, Janusz Majnert, Karol Furmaniak

Change-Id: I2d8c9e7c9c880793d3fb51de1ada58f2fa2ab67a
Signed-off-by: Sanghyup Lee <sh53.lee@samsung.com>
6 years agofixup! Add command line switches for memory optimization patches recently merged.
Antonio Gomes [Tue, 21 Jul 2015 20:33:49 +0000 (16:33 -0400)]
fixup! Add command line switches for memory optimization patches recently merged.

Patch disables the kLimitMemoryAllocationInScheduleDelayedWork switch.
After [1], overall touch interaction got broken including link clicking.

Broken scenario: open WCS pages like gesture.html or
select_picker_test.html and try to touch/click; it fails.
Problem reproduced on target (note4) and desktop builds
(ubrowser --mobile).

Note that [1], only enables the switch. Feature itself was worked on in
[2].

[1] http://165.213.202.130/gerrit/#/c/83144/
[2] http://165.213.202.130/gerrit/#/c/81312/
Reviewed by: Karol Furmaniak, Prashant Nevase, Tomasz Weglarski

Change-Id: Ib3cb5259e574ff1cd53132ae7fc9029e01e1f80d
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[MM] Seek on pause is misbehaving
sm.venugopal [Tue, 14 Jul 2015 14:19:15 +0000 (19:49 +0530)]
[MM] Seek on pause is misbehaving

|delayed_player_state_| variable was not reset after usage. Hence player
started to play after seek.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13603
Reviewed by: SeungSeop Park, Sharath Kamath

Change-Id: I9e74da6bb552f3a0d178dc90167cbf275cebaec7
Signed-off-by: sm.venugopal <sm.venugopal@samsung.com>
6 years agoImplement ewk_view_page_zoom_get/set
Tomasz Czekala [Mon, 20 Jul 2015 12:08:24 +0000 (14:08 +0200)]
Implement ewk_view_page_zoom_get/set

Added implementation for ewk_view_page_zoom_get/set and fixed
implementation for ewk_view_text_zoom_get/set, which was setting page
zoom instead of text zoom

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13328
Reviewed by: Antonio Gomes, DONGJUN KiM

Change-Id: Idb208ca4152c02e59ec00f1b1e82731b458faa39
Signed-off-by: Tomasz Czekala <t.czekala@samsung.com>
6 years agofixup! [MM] Fix proper restart after video play ends
sm.venugopal [Mon, 20 Jul 2015 10:40:43 +0000 (16:10 +0530)]
fixup! [MM] Fix proper restart after video play ends

In paused state, if seeking just update delayed state variable
and return.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13568
Reviewed by: SeungSeop Park, Sharath Kamath

Change-Id: I5612318faa33985520178ca0fc895d1a88880f75
Signed-off-by: sm.venugopal <sm.venugopal@samsung.com>
6 years agoRemove unneeded dependencies when building chromium-efl-libs and crosswalk-bin
Antonio Gomes [Mon, 20 Jul 2015 14:44:21 +0000 (07:44 -0700)]
Remove unneeded dependencies when building chromium-efl-libs and crosswalk-bin

Patch adds a 'building_strategy' variable to chromium-efl
GYP machinery. In build/system.gypi, it can be used to
filter dependencies in and out, according to what target
is being built: ewk, chromium-efl-libs or crosswalk-bin.

Patch could have replaced the existing 'building_crosswalk_bin'
by 'building_strategy', but the former is a crosswalk
upstream GYP variable, which has it own meaning in
xwalk/build/build.gypi.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13316
Reviewed by: SeungSeop Park, arno renevier

Change-Id: I724341bed2ae1cbae1dc50bbc18e5a5451f35973
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoRemove 'pango' dependency from crosswalk-bin.spec and jhbuild.modules
Antonio Gomes [Mon, 20 Jul 2015 20:06:55 +0000 (13:06 -0700)]
Remove 'pango' dependency from crosswalk-bin.spec and jhbuild.modules

Pango is not needed anymore, and disabled (-Duse_pango=0).
Some rounds of pango dendency removal happened in [1] and [2].
This patch takes care of the desktop bits and crosswalk-bin
(which did not exist at the time).

[1] http://165.213.202.130/gerrit/#/c/81515/
[2] http://165.213.202.130/gerrit/#/c/81783/

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13279
Reviewed by: SeungSeop Park, arno renevier

Change-Id: Ie3970d38eedbdcf9300ec7997e4c055237c34f39
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoRestrict -fno-use-linker-plugin to when using custom linker gold
Antonio Gomes [Mon, 20 Jul 2015 22:23:46 +0000 (15:23 -0700)]
Restrict -fno-use-linker-plugin to when using custom linker gold

chromium-efl on Tizen3 TV profile successfully builds and
runs with built-in gold linker (installed with
"BuildRequires: binutils-gold").
On Tizen3 Mobile profile though (Arm 64bit) custom
linker gold is still required to run.

Only disable linker-plugin (LTO) on the later.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=9044
Reviewed by: SeungSeop Park, arno renevier

Change-Id: I96f74d2e57fdad0217482aac8e4bbb40c0b1d33a
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoewk_settings_default_text_encoding_name_set does set encoding.
Karol Furmaniak [Fri, 17 Jul 2015 08:39:07 +0000 (10:39 +0200)]
ewk_settings_default_text_encoding_name_set does set encoding.

[Problem]: After call ewk_settings_default_text_encoding_name_set
encoding is not set because preferences are not updated after set.
[Solution] Added updating preferences after set encoding.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13643
Reviewed by: Antonio Gomes, Jaesik Chang

Change-Id: Ic03ba6ceb47d1d7defc3235bbc8b132d1cdb09b7
Signed-off-by: Karol Furmaniak <k.furmaniak@samsung.com>
6 years agofixup! Introduce 'crosswalk-bin.spec'.
hh4813.kim [Fri, 17 Jul 2015 00:47:44 +0000 (09:47 +0900)]
fixup! Introduce 'crosswalk-bin.spec'.

This patch temporarily fixes a GBS build error of 'crosswalk-bin.spec'
related to 'rpmlint'. It happens when build_{tv/mobile}.sh scripts are
not used, and gbs <parameters> is called directly.

Similar fix is also present in chromium-efl.spec.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13316
Reviewed by: Antonio Gomes, DONGJUN KiM

Change-Id: Ic95092ee6c570d2e47e05e550b0cdd621714e8c5
Signed-off-by: hh4813.kim <hh4813.kim@samsung.com>
6 years agoAdd symbols which are needed by crosswalk
yh106.jung [Fri, 17 Jul 2015 08:08:55 +0000 (17:08 +0900)]
Add symbols which are needed by crosswalk

Patch adds all symbols which are needed by crosswalk into filter file
when --xwalk option is enabled.

Notice:
Mangled symbol name is different between 32-bit architecture
and 64-bit architecture due to unsigned and long integer size.
Please give attention to it when you add new symbol.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13316
Reviewed by: Antonio Gomes, Hyunhak Kim, SeungSeop Park, arno renevier

Change-Id: Ide823c1d8de7b1f5213e0f9c9b306d54fbc192fd
Signed-off-by: yh106.jung <yh106.jung@samsung.com>
6 years agoSet same 'Source' name for chromium-efl-libs.spec and crosswalk-bin.spec
hh4813.kim [Fri, 17 Jul 2015 02:25:44 +0000 (11:25 +0900)]
Set same 'Source' name for chromium-efl-libs.spec and crosswalk-bin.spec

To avoid duplicated source file creation by 3 specs in packaging,
use the same source file name of chromium-efl.spec.

On OBS build, duplicated source files are created for each specs.
- chromium-efl-42.2311.0.29.tar.gz : 1.98GB
- chromium-efl-libs-42.2311.0.11.tar.gz : 1.98GB
- crosswalk-bin-14.42.333.0.tar.gz : 1.98GB
So, OBS team has requested to use the same source file name for 3 specs.
Reviewed by: Antonio Gomes, DONGJUN KiM, arno renevier

Change-Id: I65b58bab425a55b87aabd791df3c738e7a04926e
Signed-off-by: hh4813.kim <hh4813.kim@samsung.com>
6 years agoSwitch xwalk repo from github to CT
hh4813.kim [Thu, 16 Jul 2015 04:40:36 +0000 (13:40 +0900)]
Switch xwalk repo from github to CT

This patch switch crosswalk-efl repo to CT
Reviewed by: Antonio Gomes, DONGJUN KiM

Change-Id: I60da474331e7125c05f19143ed5d7e05bf5c7644
Signed-off-by: hh4813.kim <hh4813.kim@samsung.com>
6 years agoFix multi-item <select> on desktop builds
Antonio Gomes [Thu, 16 Jul 2015 20:06:36 +0000 (16:06 -0400)]
Fix multi-item <select> on desktop builds

There is a couple of small issues on the current implementation
of multi-item selects (read <select multiple="">...</select>)
when tested on desktop builds.

Patch basically:

* make Tizen-specific the assumption that 'elm_genlist_item_index_get'
  starts iterating from index '1'. This is really the case on GBS
  builds, but not on desktop builds.
  Looking at the public docs and EFL code, there is nothing about it.
  Also, on desktop builds, it was causing menuitems to be persisted in
  the wrong index when closing and opening a <select multiple=""> popups.

* change the insertion logic of selected menuitems into their container
  so that indexes are always sorted.
  Each menuitem in a select has a corresponding index.
  Active menuitem's indexes are stored in an array, and values
  vary from 0 to n-1, where 'n' is the number of menuitems.
  When an item is selected, its index used to be inserted unsorted,
  at the end of the array. On desktop builds, this was confusing the
  "compareChangedItems" function and causing index lookups to fail.

Test: WCS/select_picker_test.html
Reviewed by: DONGJUN KiM, arno renevier

Change-Id: I97faccb6ed627ed81473155610a2115333975381
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoAvoid temporary string object creation
Arnaud Renevier [Wed, 15 Jul 2015 23:03:25 +0000 (16:03 -0700)]
Avoid temporary string object creation

Eliminate the pattern std::string + std::string(argument).
Instead, use std::string + argument to avoid the creation
of a temporary string object.
Reviewed by: Antonio Gomes, Hyunhak Kim

Change-Id: If2970562ecb7bf3d8e7c67dfbe5dee97f811a19f
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years ago[M40 Merge] Block zoom in/out when html element is in fullscreen.
kriti.s [Wed, 3 Jun 2015 13:38:11 +0000 (19:08 +0530)]
[M40 Merge] Block zoom in/out when html element is in fullscreen.

Added handling pinching events in web_contents_delegate_efl. If they
happen when there is a fullscreen and pinching zoom is enabled they
are ignored.

This patch is dependent on http://165.213.202.130/gerrit/#/c/77423

m40 patch: http://165.213.202.130/gerrit/#/c/76547/
Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=12364
Reviewed by: Antonio Gomes, SeungSeop Park (OOO July 15~17), Siba Samal, venu musham

Change-Id: I703bc3e7786f6db2dd93cf6fe072347144de1a6f
Signed-off-by: kriti.s <kriti.s@samsung.com>
Signed-off-by: uzair.jaleel <uzair.jaleel@samsung.com>
Signed-off-by: Chandan Padhi <c.padhi@samsung.com>
6 years agoMake it possible to link crosswalk against libchromium-ewk.so
Antonio Gomes [Mon, 13 Jul 2015 17:08:49 +0000 (13:08 -0400)]
Make it possible to link crosswalk against libchromium-ewk.so

There is a demand that we are able to link xwalk (the binary)
against libchromium-ewk.so, instead of statically linking it
against chromium's internal libraries (e.g. lots .a files).
That would reduce 'xwalk' binary size, and optimize our
libchromium-ewk.so usage among the varions chromium-efl-based
apps (browser, xwalk, etc).

Patch provides such capability by making use of the reverse
"dependency injection" GYP technique. Basically, it injects
content into the empty placeholders added to crosswalk's GYP files,
and from chromium-efl side we can populate them as per our needs.

The above behavior is controlled by the GYP variable
'xwalk_link_against_chromium_ewk', which is only enabled
when building xwalk *not* in "development mode".

PS: "xwalk development mode" here means the optimized
build procedures provided by chromium-efl-libs and crosswalk-bin
packages.

In order to test this patch, symbols control in efl_integration.gypi
has to be disabled (Youngha Jung is working on a fix for that).
For now, just comment our the following two lines:

'-Wl,--version-script,<!(cd <(DEPTH) && pwd -P)/tizen_src/ewk/chromium-ewk.filter',
'-fvisibility=hidden',

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13316
Reviewed by: Hyunhak Kim, arno renevier

Change-Id: Ie67d22f1281c6670126108b65b73b2336d86db30
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agofixup! Introduce 'chromium-efl-libs.spec'.
hh4813.kim [Fri, 10 Jul 2015 11:27:07 +0000 (20:27 +0900)]
fixup! Introduce 'chromium-efl-libs.spec'.

This patch temporarily fixes a GBS build error of 'chromium-efl-libs.spec'
related to 'rpmlint'. It happens when build_{tv/mobile}.sh scripts are
not used, and gbs <parameters> is called directly.

Similar fix is also present in chromium-efl.spec.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13316
Reviewed by: Antonio Gomes, DONGJUN KiM, arno renevier

Change-Id: I0f0330d82f2b097c3dfd8e2036074ec4b7fd8a25
Signed-off-by: hh4813.kim <hh4813.kim@samsung.com>
6 years agoFix ewk_view_text_selection_clear
Sanghyup Lee [Thu, 9 Jul 2015 02:34:06 +0000 (11:34 +0900)]
Fix ewk_view_text_selection_clear

When ewk_view_text_selection_clear() is called, selection in renderer
is cleared. But we should also clear selected text in browser.
Because we can get selected text in RWHVBase by using
ewk_view_text_selection_text_get().

This patch makes clear selected text in RWHVBase when
ewk_view_text_selection_clear() is called.
And remove unnecessary variable in EWebView.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13560
Reviewed by: Antonio Gomes, Jaesik Chang

Change-Id: Ib9ae750ed6361d9eb0e7f8b42c08fa59edd35511
Signed-off-by: Sanghyup Lee <sh53.lee@samsung.com>
6 years agoAdd command line switches for memory optimization patches recently merged.
Pawel Forysiuk [Fri, 10 Jul 2015 11:28:42 +0000 (13:28 +0200)]
Add command line switches for memory optimization patches recently merged.

This patch enables switches for following patches:

1. Limit memory allocations in MessagePumpForUIEf
   http://165.213.202.130/gerrit/81312
2. Add --limit-memory-allocation-in-schedule-delayed-work runtime option
   http://165.213.202.130/gerrit/81308
3. Defer creation of DisambiguationPopupEfl
   http://165.213.202.130/gerrit/81351
4. [MEM OPT] Grow semispace by N pages
   http://165.213.202.130/gerrit/81306
5. [MEM OPT] Shrink v8 new space to initial capacity in NewSpace::Shrink
   http://165.213.202.130/gerrit/81307

   This patch also enables ustream option "--enable-link-disambiguation-popup"
   for easier testing.
Reviewed by: Antonio Gomes, kavitha devara

Change-Id: I9b260f640c4f1bc6c16d8821c02a716965262f31
Signed-off-by: Pawel Forysiuk <p.forysiuk@samsung.com>
6 years ago[uBrowser] Added autofill feature.
Marcin Lapinski [Thu, 9 Jul 2015 09:34:19 +0000 (11:34 +0200)]
[uBrowser] Added autofill feature.

Reviewed by: Antonio Gomes, Janusz Majnert
Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13450
Change-Id: Icb255a1d95bfa0c4b8715e4aad4b740b7531cec7

6 years agofixup! Enabling switches for memory optimization patches. Reviewed by: DaeHyun Ko...
amit.kumar8 [Wed, 15 Jul 2015 09:25:49 +0000 (14:55 +0530)]
fixup! Enabling switches for memory optimization patches. Reviewed by: DaeHyun Ko, Eun Namgung, Prashant Nevase

Change-Id: Ica8109b736cd7ed1ebf0366a351bfd5663be9d7e
Signed-off-by: amit.kumar8 <amit.kumar8@samsung.com>
6 years agoFixed H/W back button
Michał Obrembski [Wed, 17 Jun 2015 10:45:54 +0000 (12:45 +0200)]
Fixed H/W back button

H/W back button wasn't working on Tizen 3.0 in Chromium-efl.
This was due changed keycode of HW back key.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13200
Reviewed by: Antonio Gomes, Janusz Majnert, Karol Furmaniak, Marcin Kolibabka, Piotr Grad

Change-Id: Icd140d70bc2ba6573e650f0e31ea0fa589771e70
Signed-off-by: Michał Obrembski <m.obrembski@samsung.com>
6 years ago[MM] CAPI port code refactor
jitu.patel [Wed, 17 Jun 2015 10:24:24 +0000 (15:54 +0530)]
[MM] CAPI port code refactor

This patch is for refactoring code of CAPI port for media element.

Reference: http://165.213.202.130/gerrit/#/c/72864/

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13055
Reviewed by: SeungSeop Park (OOO July 15~17), Venugopal S M

Change-Id: I7f411f51fa045a3b03639e5f43cf561e5a0dae33
Signed-off-by: Umesh Kumar Patel <umeshk.patel@samsung.com>
Signed-off-by: jitu.patel <jitu.patel@samsung.com>
6 years agofixup! Added autofill options to uBrowser menu.
Karol Furmaniak [Fri, 10 Jul 2015 05:34:02 +0000 (07:34 +0200)]
fixup! Added autofill options to uBrowser menu.

Now changing remember form data option depends on form
profile option but it shouldn't.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=12729
Reviewed by: Antonio Gomes, SeungSeop Park

Change-Id: I184814b7409f845f549052d50536108d439befef
Signed-off-by: Karol Furmaniak <k.furmaniak@samsung.com>
6 years agofixup! Enabling switches for memory optimization patches.
Arnaud Renevier [Fri, 10 Jul 2015 17:04:25 +0000 (10:04 -0700)]
fixup! Enabling switches for memory optimization patches.

Add dependency on base.gyp:base_static to not break component build.
Reviewed by: Prashant Nevase, SeungSeop Park

Change-Id: Ia179455a66e9c2f2e6063a619018e2d0c907984e
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agoRestructure chromium-efl.gyp (build entry point)
Antonio Gomes [Thu, 9 Jul 2015 12:25:59 +0000 (21:25 +0900)]
Restructure chromium-efl.gyp (build entry point)

Patch creates a "build_all"-like target for EWK,
where all the sample apps are set as 'dependencies'.
It also deliberately removes the explicit inclusion of
efl_integration.gypi (where the 'chromium-ewk' target is
declared).

Reasoning is that 'chromium-ewk' is set as an explicit
dependecy of all three targets currently listed in chromium-ewk.gyp,
so its inclusion is redundant.
Also, the explicit inclusion of efl_integration.gypi from
chromium-ewk.gyp caused GYP error when we try to set 'chromium-ewk'
target as a dependency for 'xwalk' target:

[XXs] IndexError: string index out of range while reading
includes of /(..)/tizen_src/ewk/chromium-ewk.gyp while trying to load
/(..)/tizen_src/ewk/chromium-ewk.gyp

Reference: https://groups.google.com/forum/#!topic/gyp-developer/J-0xR5wye30

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13316
Reviewed by: Hyunhak Kim, arno renevier

Change-Id: Ic30be2a2dd218c7da3a1b5398b222b1c926ee941
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>