platform/framework/web/chromium-efl.git
6 years ago[MM] Utilize |WebMediaPlayerParams| while creating media engine instance
sm.venugopal [Wed, 18 Nov 2015 16:22:21 +0000 (21:52 +0530)]
[MM] Utilize |WebMediaPlayerParams| while creating media engine instance

|WebMediaPlayerParams| is passed on as argument to be in sync with
upstream code.

Together with: I6e6e327c9a0ba04986f157582321de5ad01e32aa

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

Reviewed by: a1.gomes, sns.park

Change-Id: I6d93e70974f2ffa9f45925cbd3ddde1bcc4a1706
Signed-off-by: sm.venugopal <sm.venugopal@samsung.com>
6 years agoRe-enable option for message pump optimization
Pawel Forysiuk [Thu, 30 Jul 2015 14:11:29 +0000 (16:11 +0200)]
Re-enable option for message pump optimization

It was disabled by [1] because of regression in touch/click behaviour
in WCS test pages like gesture.html and select_picker_test.html.

1.  Fix the implementation of timer delay code. The code previously tried to
micro-manage timer delays. The intention of those delays was to make code
more robust. Unfortunately it would lead to perpetually postponing one task
instead of spawning new ones. Drop the code adding arbitrary delays.

2.  Make "limit-memory-allocation-in-schedule-delayed-work" flag be enabled
by default again.

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

Original beta/m42 patch: http://165.213.202.130/gerrit/#/c/84369/

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

Reviewed by: a1.gomes, msu.koo, sns.park

Change-Id: I1be8b12e84d6a1678e6ab070cf79868076bae5c4
Signed-off-by: Pawel Forysiuk <p.forysiuk@samsung.com>
6 years ago'Save image' and 'Save link' doesn't work on context menu
p.niemirski [Mon, 10 Aug 2015 07:55:06 +0000 (09:55 +0200)]
'Save image' and 'Save link' doesn't work on context menu

[Problem]  Nothing happened after invoke 'Save image' and 'Save link'
commands from context menu. No message, no file is saved.
[Cause]    Paths for downloads were set wrong on Tizen v3.0.
[Solution] Set proper paths for given platform.

From now on, 'libtzplatform-config' library will be used to get
proper patch on Tizen v3.0.

Original beta/m42 patch: http://165.213.202.130/gerrit/#/c/84031/

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

Reviewed by: a.renevier, a1.gomes, sns.park

Change-Id: I00f9fcaff8e2f0786e9913a92d25e871f91a590b
Signed-off-by: p.niemirski <p.niemirski@samsung.com>
6 years agoShow or hide the elm_naviframe when is called ewk_view_visibility_set()
ByungJun Kim [Tue, 17 Nov 2015 02:36:05 +0000 (11:36 +0900)]
Show or hide the elm_naviframe when is called ewk_view_visibility_set()

If ewk_view_visibility_set() is called, white screen is shown in mobile.
Since background of elm_naviframe is white, white screen is appear.
When ewk_view_visiblity_set() is called,
elm_naviframe needs shown or hidden.

This patch brought in M42 (http://165.213.202.130/gerrit/#/c/88300/).

Reviewed by: a1.gomes, djmix.kim, msu.koo

Change-Id: I2ae719a8d563c7732a9ba3769e22f1780e8613fb
Signed-off-by: ByungJun Kim <bj1987.kim@samsung.com>
6 years agoFix path of system folder in spec file
Youngsoo Choi [Mon, 17 Aug 2015 10:19:35 +0000 (19:19 +0900)]
Fix path of system folder in spec file

[issue]
The folder '%TZ_SYS_RO_ICONS' and '%TZ_SYS_RO_PACKAGE' have been created
on root path like below.

>> root@localhost:/# ls /
>> %TZ_SYS_RO_ICONS    boot  home        media  proc  sbin  tmp
>> %TZ_SYS_RO_PACKAGE  dev   lib         mnt    root  srv   usr
>> bin                 etc   lost+found  opt    run   sys   var

[resolve]
To make the '%TZ_SYS_' definitions properly work,
a package 'libtzplatform-config' needs to be installed.

The package provides the definitions via following file.
>> /PATH/TO/BUILD-ROOTS/scratch.armv7l.0/etc/tizen-platform.conf

Note that the definitions are only valid from tizen v3.0,
supporting multi-user mode.

Also, unused definition '_dbusservicedir' and '_systemduserservicedir' are removed.

original patch: http://165.213.202.130/gerrit/#/c/85251/

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

Reviewed by: sns.park

Change-Id: Ia8e0dece9d4a7031c35447bfa4c19165436ae406
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
6 years agoPass "enable-viewport" flag for "ubrowser --mobile"
Grzegorz Czajkowski [Fri, 20 Nov 2015 13:33:39 +0000 (14:33 +0100)]
Pass "enable-viewport" flag for "ubrowser --mobile"

Mobile build by default turns on WebPreferences::viewport_meta_enabled
This results in setting WebPreferences::viewport_enabled as well:

RenderViewHostImpl::ComputeWebkitPrefs() {
...
prefs.viewport_enabled =
command_line.HasSwitch(switches::kEnableViewport) ||
prefs.viewport_meta_enabled;
}

Since viewport_meta_enabled(true) is set on Renderer side via
ApplyCustomSettings() for ubrowser --mobile, earlier call to
ComputeWebkitPrefs() always sets viewport_enabled to false.

This patch passes "enable-viewport" flag (switches::kEnableViewport)
for ubrowser to make it similar to mobile builds.

This results in different path code while determining layout size
(settings->viewportEnabled() is widely checked on Blink side),
also disabling zooming after tap and showing disambiguation popup for
mobile sites.

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

Reviewed by: a1.gomes, sns.park

Change-Id: I3be1b4381c627c485e0db5254b4d796c5cd454e1
Signed-off-by: Grzegorz Czajkowski <g.czajkowski@samsung.com>
6 years agoEnable ewk_context_favicon_database_get() also for mobile
Marcin Niesluchowski [Wed, 12 Aug 2015 10:32:27 +0000 (12:32 +0200)]
Enable ewk_context_favicon_database_get() also for mobile

ewk_context_favicon_database_get() for mobile profile is not implemented.
Api exists but is defined only for tv profile.

Remove tv profile ifdefs making it work regardless build profile.

Original beta/m42_2311_t patch:
- http://165.213.202.130/gerrit/#/c/85271/

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

Reviewed by: sns.park

Change-Id: Ie3931c5ca7a523162556882d36b654758034d32b
Signed-off-by: Marcin Niesluchowski <m.niesluchow@samsung.com>
6 years agoFixing wrong evas_object hierarchy in eweb_view.
ByungJun Kim [Wed, 16 Sep 2015 07:58:51 +0000 (16:58 +0900)]
Fixing wrong evas_object hierarchy in eweb_view.

Previously, using |evas_object_below_get| to get the parent webview
cause warning and required addition of some defensive codes.

To prevent from warning, we should use evas_object_above_get() as
evas_object_below_get() has been misused.
This patch refactored to get the parent webView
from "evas_object_above_get", which is guided by
(https://docs.enlightenment.org/stable/efl/group__Evas__Font__Group.html)

Before the fix, evas_object_ isn't part of the EFL/Elementary layout
tree. So we needed to get value of width and height from ecore_evas.
With this patch, evas_object_ is part of the elementary layout tree.
This defensive code is no longer needed.

Original m42 patch:
- http://165.213.202.130/gerrit/#/c/87501/ .

Change-Id: I677dbde037b798773552de8473a62fdbb8b344ed
Signed-off-by: ByungJun Kim <bj1987.kim@samsung.com>
6 years agoLong press on empty fields should show context menu if needed
Antonio Gomes [Thu, 19 Nov 2015 22:57:06 +0000 (18:57 -0400)]
Long press on empty fields should show context menu if needed

If one long-presses an empty input field, we enter selection mode:
magnifier is show, etc.
This is a bad UX, and does not match other mobile browsers.

Patch changes that to show context menu right way, with clipboard
options if applicable. This matches other mobile browsers: firefox
mobile, chrome and s-browser.

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

Change-Id: I002f57a1224431a915740d87e7694db358153493
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoImplement TitleWasSet() for EWK
sihoons.yang [Wed, 18 Nov 2015 13:55:47 +0000 (22:55 +0900)]
Implement TitleWasSet() for EWK

On Chromium Upstream, NOTIFICATION_WEB_CONTENTS_DISCONNECTED
and NotificationService was deprecated([1], [2]) and reflected
to ours([3]). Because of this ewk_back_forward_list_item_title_get()
has a problem that return empty.

In this patch, TitleWasSet() is introduced to enable
|ewk_back_forward_list_item_title_get()| from Chromium's guideline([2]).

[1] http://code.google.com/p/chromium/issues/detail?id=170921
[2] https://codereview.chromium.org/1242953004/patch/1/10004
[3] http://165.213.202.130/gerrit/#/c/92076

Change-Id: I44b4fe8a05f219b3efc7217eb242643c9b61876a
Signed-off-by: sihoons.yang <sihoons.yang@samsung.com>
6 years agoDo not zoom-to-focused-element when long pressing.
Antonio Gomes [Thu, 19 Nov 2015 22:55:37 +0000 (18:55 -0400)]
Do not zoom-to-focused-element when long pressing.

zoom-to-focused element should happen on tap.
Long press should not trigger it, as it gives us a bad experience.

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

Change-Id: I2d20a6ba247330b7a92781042dffc0c205624edd
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoImplement "Share link" context menu option for Tizen OS
p.pajak [Tue, 10 Nov 2015 08:53:54 +0000 (09:53 +0100)]
Implement "Share link" context menu option for Tizen OS

According to Tizen3.0_mobile_Web_Browser_Browser_UI_Guideline, there should
be a "Share link" option when user opens the context menu for a link
by doing a long press. This patch implements this option for Tizen OS.

Note that the share option requires a share-panel application
which is currently absent on Tizen 3.0

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

Change-Id: I51e9a460a2fcb57d298f3521dfe40bcd1a4433a6
Signed-off-by: p.pajak <p.pajak@samsung.com>
6 years agoClose javascript popup when EWebView is deleted.
ByungJun Kim [Thu, 3 Sep 2015 01:10:19 +0000 (10:10 +0900)]
Close javascript popup when EWebView is deleted.

If EWebView is deleted, it calls destructor of JavaScriptModalDialogEfl
but destructor does nothing.
Destructor needs to close JS popup.

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

Change-Id: Ib66e6afd43a2665e07ba7588f5bbeeb63f73b187
Signed-off-by: ByungJun Kim <bj1987.kim@samsung.com>
6 years agoAdd popup callbacks for closing with Esc key
Lukasz Bialek [Sat, 19 Sep 2015 09:42:45 +0000 (11:42 +0200)]
Add popup callbacks for closing with Esc key

[Issue] http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14099
[Problem] Popups are not closed when Esc button is pressed
[Cause] Only Mobile branch supports callbacks for HW back button
[Solution] Add callbacks for Esc button and connect them with
           existing popup-closing code

Original beta/m42 patch:
http://165.213.202.130/gerrit/#/c/87930/

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

Change-Id: Ic7656ee4a034b95aa5ee71ac85c79711e57d15e7
Signed-off-by: Lukasz Bialek <l.bialek@samsung.com>
6 years agoRefactored context menu controller
Wojciech Bielawski [Mon, 16 Nov 2015 15:10:43 +0000 (16:10 +0100)]
Refactored context menu controller

1. Fill _context_menu_listdata when is_text_selection_ is true
2. Prohibit out of array boundary indexing
3. removed redundant variable _appended_item_size

Original beta/m42 patch:
http://165.213.202.130/gerrit/#/c/85782/

Signed-off-by: Wojciech Bielawski <w.bielawski@samsung.com>
Change-Id: Ic53167c11ea06f73e589c3af399f3e431b53b530

6 years agoRemove an erroneous scroll callback calls from ScrollDetector::OnChangeScrollOffset.
Sanghyup Lee [Fri, 20 Nov 2015 01:20:29 +0000 (10:20 +0900)]
Remove an erroneous scroll callback calls from ScrollDetector::OnChangeScrollOffset.

This fixes a scrolling issue/crash.

Since renderer process perform all scrolling operation,
we don't have to handle this events on browser side.
Furthermore browser process handles this event using
ScrollDetector object which emits EFL's smart callbacks,
but there are no events registered on this callback.

Original M42 patch: http://165.213.202.130/gerrit/#/c/82644/

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

Change-Id: Id6fcf4120a0d396a3dbbbd6fb5c378666b0671b5
Signed-off-by: Sanghyup Lee <sh53.lee@samsung.com>
6 years agoWrongly computed string length in database initialization.
Wojciech Bielawski [Tue, 25 Aug 2015 14:23:09 +0000 (16:23 +0200)]
Wrongly computed string length in database initialization.

Compute proper string length and only if string is not null.

Original beta/m42_2311_t patch:
- http://165.213.202.130/gerrit/#/c/85780/

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

Change-Id: I06a19c2f6e413709d7dbf8f5097ab1ee499b28c4
Signed-off-by: Wojciech Bielawski <w.bielawski@samsung.com>
6 years agoDeliver file_storage_type
Marcin Kędzierski [Wed, 9 Sep 2015 13:14:00 +0000 (15:14 +0200)]
Deliver file_storage_type

In SetStoragePathOnIOThread we call SetCookieStoragePath without third
argument, file_storage. It should be set because value for this is
known.

Original beta/m42 patch:
http://165.213.202.130/gerrit/#/c/86851/

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

Reviewed by: a.renevier, d.waslicki, msu.koo

Change-Id: I249b12d17c44e8a66249a29d97db1b3b28c664ca
Signed-off-by: Marcin Kędzierski <m.kedzierski@samsung.com>
6 years agoFlush Cookies before quiting
Marcin Kędzierski [Wed, 2 Sep 2015 09:44:46 +0000 (11:44 +0200)]
Flush Cookies before quiting

In Chromium cookies are stored in two situations. First periodically
every 30 seconds and when closing the browser. In chromium_efl the
second method doesn't work. This causes loosing cookies.
This patch adds storing cookies when closing the browser. When eweb_view
is being destroyed, DeleteSessionCookiesSync is called. This function
removes expired cookies and flushes other.

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

This patch is based on patch from m40:
http://165.213.202.130/gerrit/#/c/77017

Reviewed by: a.renevier, d.waslicki, msu.koo

Change-Id: I14a8ddc4136a628467b4fe31d1f71fd4a4179d73
Signed-off-by: Marcin Kędzierski <m.kedzierski@samsung.com>
6 years agoDelete resource context on IO thread
Marcin Kędzierski [Fri, 28 Aug 2015 07:44:07 +0000 (09:44 +0200)]
Delete resource context on IO thread

ewk_shutdown can't close application correctly. One of problems
is removing resources context on UI thread. It should be done on IO
thread because during deleting all resource requests they should be
cancelled and this works on IO thread. This patch moves deleting
resource context to IO thread.

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

Original beta/m42 patch: http://165.213.202.130/gerrit/#/c/86086/

Signed-off-by: Marcin Kędzierski <m.kedzierski@samsung.com>
Reviewed by: a.renevier, d.waslicki, djmix.kim, msu.koo

Change-Id: I5504bfc6216ce4d3cc909920c7df1801cd728d1f

6 years agoAdd djmix.kim as an owner of chromium-efl
Dongwoo Joshua Im [Thu, 19 Nov 2015 08:17:47 +0000 (17:17 +0900)]
Add djmix.kim as an owner of chromium-efl

Change-Id: I50f1833bd5685117ea1479d2eba93535eeb2b0a2
Signed-off-by: Dongwoo Joshua Im <dw.im@samsung.com>
6 years agoIntegrate chromedriver in a simpler way.
Antonio Gomes [Mon, 3 Aug 2015 03:18:06 +0000 (23:18 -0400)]
Integrate chromedriver in a simpler way.

In patches [1] and [2], chromedriver was originally
integrated to chromium-efl by forking chrome/chrome_tests.gypi
and making the needed changes: ewk/efl_integration/chromedriver_efl.gypi.

After studying chromedriver build, it was found out that
chrome/chrome.gyp is its main entry point.
Given that chrome.gyp does far more than only warm-up
chromedriver builds, it is not feasible to simply
including it from chromium-efl side.

This patch relies on the s-chromium patch [3] in order to
simplify our chromedriver integration. Now, chromedriver_efl.gypi
(our fork) can be deleted, and we can simply build
'chromedriver' target, instead of 'chromedriver_efl'
Also, we can refer to 'chromedriver' everywhere instead
of 'chromedriver_efl'.

[1] http://165.213.202.130/gerrit/#/c/83743
[2] http://165.213.202.130/gerrit/#/c/83742
[3] http://165.213.202.130/gerrit/#/c/95036

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/85836/ reviewed by
Janusz Majnert, SeungSeop Park.

Together with: Id66b0fe16d6f94c7698dc056f3f1f71f4e536e5f

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

Reviewed by: a.renevier, a1.gomes, sns.park

Change-Id: I314e3853fb740848102026cbdeaa6881242ac8c0
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoAdd WillReleaseScriptContext on RenderFrameObserverEfl
DongJun Kim [Thu, 19 Nov 2015 07:11:56 +0000 (16:11 +0900)]
Add WillReleaseScriptContext on RenderFrameObserverEfl

|WillReleaseScriptContext| is not implemented
on |RenderFrameObserverEfl| in latest code.

For this reason, |DynamicPluginStopSession| is not called,
when |window.close| is executed by WRT.

This patch is for adding |WillReleaseScriptContext| on |RenderFrameObserverEfl|.

Original beta/m42 patch: http://165.213.202.130/gerrit/#/c/87472

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

Reviewed by: a.renevier, msu.koo

Change-Id: Ic1af7c7d99aba94bb0f7e7d7edfdb60114059549
Signed-off-by: DongJun Kim <djmix.kim@samsung.com>
6 years agoRefactor ewk extensible api implementation
Wojciech Bielawski [Thu, 19 Nov 2015 08:15:11 +0000 (09:15 +0100)]
Refactor ewk extensible api implementation

This patch is to refactor:
- remove Ewk_Extensible_API enum from API side since it's not used there
- fix out of array boundary traversal

Original beta/m42 patch:
http://165.213.202.130/gerrit/#/c/85781/

Reviewed by: a.renevier, d.waslicki, j.majnert, msu.koo

Change-Id: I0e536316a3353d9acdd82bdb98980f87c715a001
Signed-off-by: Wojciech Bielawski <w.bielawski@samsung.com>
6 years agoFix ewk_view_visibility_set.
Sanghyup Lee [Thu, 5 Nov 2015 09:45:27 +0000 (18:45 +0900)]
Fix ewk_view_visibility_set.

Visibility state should be changed by ewk_view_visibility_set API.
It means RenderWidgetHostImpl::WasShown|WasHidden should be called.

This behavior overlap with |ewk_view_page_visibility_state_set|.
Therefore, this CL merge EWebView::WasShown|WasHidden and EWebView::Show|Hide.

Original M42 patch: http://165.213.202.130/gerrit/#/c/94374/

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

Reviewed by: a1.gomes, djmix.kim, j.majnert, sns.park

Change-Id: Id475c52afd8f12f360e145cea3bd9573bf65cfd4
Signed-off-by: Sanghyup Lee <sh53.lee@samsung.com>
6 years agoUpdate WebContentsImplEfl::CreateNewWindow to m47 version
Tomasz Czekala [Wed, 18 Nov 2015 11:39:29 +0000 (12:39 +0100)]
Update WebContentsImplEfl::CreateNewWindow to m47 version

WebContentsImplEfl::CreateNewWindow and
WebContentsImplEfl::HandleNewWebContentsCreate are mainly a copy of
WebContentsImpl::CreateNewWindow with some code added, but it wasn't
updated to m47 version of this method. This patch updates it.

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

Reviewed by: a.renevier, a1.gomes, d.waslicki, msu.koo, sns.park

Change-Id: I5f213e4be567b540c448676391f28943f65604fb
Signed-off-by: Tomasz Czekala <t.czekala@samsung.com>
6 years agoCreate initial implementation of Wayland clipboard
Pawel Niemirski [Fri, 16 Oct 2015 14:51:52 +0000 (16:51 +0200)]
Create initial implementation of Wayland clipboard

[Issue#] http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=12685
[Problem] Clipboard integration for Wayland is not implemented. This
causes internal clipboard implementation to crash.
[Cause] There is no proper support on Wayland side
[Solution] For now Wayland clipboard is simulated as simple
map. This fixes internal clipboard problems and
prevents crashes. However, inter-application actions
are not possible.

Original beta/m42 patch:
http://165.213.202.130/gerrit/#/c/88493/ , reviewed by
DONGJUN KiM, arno renevier.

Original Author: Lukasz Bialek <l.bialek@samsung.com>

Reviewed by: a.renevier, d.waslicki, djmix.kim, msu.koo

Change-Id: I164f42d204c5864f066a1218c028f9e83fd0c830
Signed-off-by: Pawel Niemirski <p.niemirski@samsung.com>
6 years agoHandle placeholder message for missing plugins being untranslated.
Pawel Forysiuk [Mon, 16 Nov 2015 12:03:45 +0000 (13:03 +0100)]
Handle placeholder message for missing plugins being untranslated.

kPluginMissingMessage was initialised to untranslated string
because of dgettext call being unable to fetch translated version.
Call dgettext on the actual use instead.

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

Reviewed by: a.renevier, a1.gomes, d.waslicki, djmix.kim, msu.koo

Change-Id: Ibeb451dd364c8e4678ad2b5c3d26f1e85bb483c7
Signed-off-by: Pawel Forysiuk <p.forysiuk@samsung.com>
6 years agoImplement "Open" context menu option for links
p.pajak [Fri, 13 Nov 2015 16:17:03 +0000 (17:17 +0100)]
Implement "Open" context menu option for links

According to Tizen3.0_mobile_Web_Browser_Browser_UI_Guideline, there should
be an "Open" option, which opens a link in the current window, when user opens
the context menu by doing a long press on a link.
This patch implements this option.

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

Reviewed by: a.renevier, d.waslicki, djmix.kim, msu.koo

Change-Id: I6a2d3b002e1f2892939cf30e4427928120b626d7
Signed-off-by: p.pajak <p.pajak@samsung.com>
6 years agoFix out of array boundary indexing in autofill popup
Wojciech Bielawski [Tue, 25 Aug 2015 14:41:17 +0000 (16:41 +0200)]
Fix out of array boundary indexing in autofill popup

Corrected static array indexing. Operations on raw strings replaced
with STL's string operations.

Original beta/m42 patch:
http://165.213.202.130/gerrit/#/c/85783/

Reviewed by: a.renevier, a1.gomes, d.waslicki, j.majnert, msu.koo

Change-Id: I42dcd0b745fa6cadd69864f5b0d0c25130b2d71b
Signed-off-by: Wojciech Bielawski <w.bielawski@samsung.com>
6 years ago[MM][CAPI] |player_prepare_async| returns error
sm.venugopal [Tue, 17 Nov 2015 07:18:05 +0000 (12:48 +0530)]
[MM][CAPI] |player_prepare_async| returns error

|player_prepare_async| is already initiated and is taking time to complete
the task. In mean time wrong state is sent to WebCore which then initiates
PLAY. Since player prepare is not complete, state is IDLE and player prepare
is called again.

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

Reference: http://suprem.sec.samsung.net/gerrit/#/c/55223/

Reviewed by: msu.koo, sm.venugopal, sns.park

Change-Id: Ia68d837ebfd2aa90c3cacdbcca48a9f9e621a4a5
Signed-off-by: sm.venugopal <sm.venugopal@samsung.com>
6 years agoAdded Chromium authors copyright to web_contents_impl_efl.cc
Tomasz Czekala [Fri, 13 Nov 2015 10:27:23 +0000 (11:27 +0100)]
Added Chromium authors copyright to web_contents_impl_efl.cc

In web_contents_impl_efl.cc we copied parts of CreateNewWindow and
HandleNewWebContentsCreate code from base class implementation, so we
need to add Chromium authors copyright to the file

Reviewed by: a1.gomes, msu.koo

Change-Id: Id88b5d51b923c5ef95832b12535745ba7648e5fe
Signed-off-by: Tomasz Czekala <t.czekala@samsung.com>
6 years agoRemoval of appending mobile specific flags to TV
uzair.jaleel [Thu, 30 Jul 2015 12:23:33 +0000 (17:53 +0530)]
Removal of appending mobile specific flags to TV

command line flags specific to mobile like "use-mobile-user-agent" and
"use-mobile-viewport-style" are appended by default when we run ubrowser
on mobile and TV and also this results in duplication as these flags are
already present in command_line_efl.cc which is common to all apps like
mini_browser, efl_webview_app and ubrowser.

M42 patch: http://165.213.202.130/gerrit/#/c/84358/

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

Reviewed by: a1.gomes, sns.park

Change-Id: I916e4f270c182087e18d6bb022a7727d0e8e9590
Signed-off-by: uzair.jaleel <uzair.jaleel@samsung.com>
6 years agoDeletion of shader and program objects after use.
uzair.jaleel [Tue, 1 Sep 2015 06:03:16 +0000 (11:33 +0530)]
Deletion of shader and program objects after use.

Currently both shader objects and program objects are created for
each new instance of RWHV and never deleted. We need to detach and
delete our shader objects as soon as possible. That way the driver
can free up all the memory it is using to hold a copy of the shader
source and unlinked object code, which can be quite substantial.

M42 patch: http://165.213.202.130/gerrit/#/c/86240/

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

Reviewed by: a1.gomes, sns.park, venu.musham

Change-Id: I2242557f7f5ab7db662af5f3c1c87a6e38087935
Signed-off-by: uzair.jaleel <uzair.jaleel@samsung.com>
6 years agoEnable glFlush on tizen 3.0.
venu.musham [Wed, 7 Oct 2015 04:22:48 +0000 (09:52 +0530)]
Enable glFlush on tizen 3.0.

glFinish was used when glFlush gave blackscreen on tizen 3.0.
glFlush issue for FBO is fixed in DDK.
This commit enables glFlush again.

DDK Issue: http://168.219.209.56/jira/browse/TSAM-40
m42-commit: http://165.213.202.130/gerrit/#/c/89758/
Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14782

Reviewed by: a1.gomes, dhyuna.ko, siba.samal, sns.park

Change-Id: I84a6237ecf9b6d0457a3718bc12d391ae7e65adf
Signed-off-by: venu.musham <venu.musham@samsung.com>
6 years ago[MM][MSE][CAPI] Implement MSE with CAPI port.
k2.nagaraju [Wed, 21 Oct 2015 04:58:04 +0000 (10:28 +0530)]
[MM][MSE][CAPI] Implement MSE with CAPI port.

This CL uses CAPI player to play MSE videos.
Using CAPI es player for playing and
media_packet for rendering.

Bug: http://168.219.209.56/jira/browse/TSAM-308

Original M42 patch: http://165.213.202.130/gerrit/#/c/83824/

Reviewed by: sm.venugopal, sns.park

Change-Id: I010ba280ea355ce59b3826e16ba1fce76f56ec96
Signed-off-by: k2.nagaraju <k2.nagaraju@samsung.com>
6 years agofixup! Add size optimization GCC options
SeungSeop Park [Mon, 16 Nov 2015 04:03:17 +0000 (13:03 +0900)]
fixup! Add size optimization GCC options

In http://165.213.202.130/gerrit/#/c/75146/17, only arm 32 bit architecure
was considered. This patch is to do the same for arm 64 bit.

By this CL, the size of libchromium-ewk.so changes as follows.
- Before: 106M (73M if strip)
- After : 84M  (47M if strip)

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

Reviewed by: a1.gomes, msu.koo

Change-Id: I2be86adf2690b8ea8f0b2563a9513542a273d70b
Signed-off-by: SeungSeop Park <sns.park@samsung.com>
6 years ago[MM][M47] Fix segment fault with GetUserMedia
ws29.jung [Wed, 18 Nov 2015 01:20:24 +0000 (10:20 +0900)]
[MM][M47] Fix segment fault with GetUserMedia

With Camera capture, new function(OnIncomingCapturedYuvData) is introduced
on M47 and replacing |OnIncomingCapturedVideoFrame| to new function resolve
the segmentation fault problem with GetUserMedia.
Also, using new function does not require allocate buffer on efl(client) side,
so allocating and deallocating functions are removed.

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

Reviewed by: sm.venugopal, sns.park

Change-Id: I86a8ebdd67a177c27feb5193f2c5c45b43ec1041
Signed-off-by: ws29.jung <ws29.jung@samsung.com>
6 years agoASCII input is not inserted in prompt popups.
jiyoonseol [Thu, 29 Oct 2015 10:56:06 +0000 (06:56 -0400)]
ASCII input is not inserted in prompt popups.

Call 'evas_obeject_focus_set' before the prompt popup is shown.

Digits and some special characters (ASCII code) are not inserted in
prompt popup.
ASCII code is inserted by EVAS_OBJECT_KEY_DOWN_CALLBACK.
(characters are inserted by ECORE_IMF.)
Because prompt popup is shown before it is focused,
EVAS_OBJECT_KEY_DOWN_CALLBACK is not delivered to prompt popup.

Bug: http://168.219.209.56/jira/browse/TSAM-447

Reviewed by: a1.gomes, d.waslicki, djmix.kim, sns.park

Change-Id: I08f632cc942526c284da802cdd5910640790d864
Signed-off-by: jiyoonseol <jiyoon.seol@samsung.com>
6 years agoApply hide/restore selection controls logic to zoom in/out.
Antonio Gomes [Fri, 13 Nov 2015 05:49:11 +0000 (01:49 -0400)]
Apply hide/restore selection controls logic to zoom in/out.

When one scrolls around, handles and context menu get temporarily
hidden, and are shown again when the gesture finishes.
In order to match s-browser behavior, patch extends that logic
to zoom in/out gestures.
In summary, once user starts to pinch, controls are temporarily
hidden (similarly to scroll). They are restored when user lift
up his fingers.
Setter and getter methods are also renamed to SetControlsTemporarilyHidden
and AreControlsTemporarilyHidden.

These are the scenarios:

Scrolls
1) when user starts to scroll one ScrollBegin gets emitted.
2) when user stops to scroll one ScrollEnd gets emitted.
So, it is a simple 1:1.

Start pinch zoom
1) When user starts to pinch zoom, first ScrollBegin is emitted, and then
PinchBegin is emitted, so we call SetControlsTemporarilyHidden(true) twice.
The first call, sets hidden status to true, and actually hide the controls.
The second call early returns on line 102.

Stop pinch zoom
1) When user lift up both fingers at the same time, ScrollEnd and PinchEnd are
emitted, so we call SetControlsTemporarilyHidden(false) twice.
The first call checks there is no finger touching the screen. If no, then it sets
status to false, and request showing the controls again. The second call earl
returns in line 102.

2) When user lifts up only one finger, and keeps another down, only PinchEnd
is called. At this point, it calls SetControlsTemporarilyHidden(false), checks
that one finger is still down, and early returns in line 111 - scrolling is
happening now. When user lifts up the last finger, ScrollEnd is emitted,
and SetControlsTemporarilyHidden(false) is called. At this point, it confirms
that no fingers are down, sets the status to false, and request showing
of controls again.

Note that to make sure no finger is on screen, patch exposes
RWHVEfl::pointer_state's GetPointerCount method.

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

Reviewed by: a.renevier, djmix.kim, sns.park

Change-Id: Ic627be821e9146d3c360463c4a4832d30ab68715
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoRemove unused variable "ret" in RenderWidgetHostViewEfl::PaintToSurface()
kriti.s [Mon, 3 Aug 2015 06:31:39 +0000 (12:01 +0530)]
Remove unused variable "ret" in RenderWidgetHostViewEfl::PaintToSurface()

M42 patch: http://165.213.202.130/gerrit/#/c/84456/

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

Reviewed by: sns.park, venu.musham

Change-Id: I0c685811d22f2bcf7f44b53b42e7e5a37012219f
Signed-off-by: kriti.s <kriti.s@samsung.com>
Signed-off-by: Chandan Padhi <c.padhi@samsung.com>
6 years ago[MM] Add gstreamer-fft library and FFTFrameGStreamer.cpp
Hyemi [Fri, 30 Oct 2015 12:41:00 +0000 (21:41 +0900)]
[MM] Add gstreamer-fft library and FFTFrameGStreamer.cpp

Change implementation of FFTFrame to use GST FFT library
to remove dependency of FFmpeg library.

1. Add use_gstreamer_fft feature in supplement.gypi
2. Add FFTFrameGStreamer.cpp under chromium_impl
3. Add external dependencies for s-chromium branch

Together with: I4fed3adf4ff682852c922bc1d240e653efe9e722

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

Reviewed by: a1.gomes, sns.park

Change-Id: I40121101333fa735ded3bde9f813c036b8aa2c28
Signed-off-by: Hyemi Shin <hyemi.sin@samsung.com>
6 years agoAlternative solution for enabling setAutoZoomFocusedNodeToLegibleScale on desktop.
Antonio Gomes [Tue, 17 Nov 2015 17:37:07 +0000 (13:37 -0400)]
Alternative solution for enabling setAutoZoomFocusedNodeToLegibleScale on desktop.

Patch ties setAutoZoomFocusedNodeToLegibleScale up with a known
EFL/mobile specific runtime toggle: 'mobile-viewport-style'.
This allows setAutoZoomFocusedNodeToLegibleScale to get set when
ubrowser --mobile is called on desktop.

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

Reviewed by: a.renevier, sns.park

Change-Id: Ib435118732ddbc439a7df13d0ed32223fad5c174
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoCorrection in Javascript console message logging.
Chandan Padhi [Wed, 26 Aug 2015 11:07:01 +0000 (16:37 +0530)]
Correction in Javascript console message logging.

Currently, the base/top level url is always logged in the console
message irrespective of the file from which the message actually
comes from, which is incorrect.
With this patch, the filename from where the message actually comes
is logged in the console.
This makes debugging JS errors relatively easier.

M42 patch: http://165.213.202.130/gerrit/#/c/85872/

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

Reviewed by: a1.gomes, sns.park, venu.musham

Change-Id: I471a8381fbfee572943913dc2fafd3e38f8791c9
Signed-off-by: Chandan Padhi <c.padhi@samsung.com>
6 years agoChange velocity tracker strategy to INT1
Tomasz Czekala [Tue, 17 Nov 2015 16:31:10 +0000 (17:31 +0100)]
Change velocity tracker strategy to INT1

By using the default velocity tracker strategy (namely LSQ2) we have
been facing issues like scrolling sometimes happening on the
opposite direction of fingers movement. It is caused by poor touch
event's time (sometimes 2 events with different position have very
similar or the same time). LSQ2 strategy is sensitive to such errors.

Patch temporarily changes chromium-efl default velocity tracker
strategy to INT1, a more robust strategy. Once platform side start
to report more accurate event data, we can consider use LSQ2 again.

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

Reviewed by: a1.gomes, msu.koo

Change-Id: Ide4f2f98ad0042cef92f8dcc5ea0250294c9079c
Signed-off-by: Tomasz Czekala <t.czekala@samsung.com>
6 years ago[MM][MSE] Multiple DemuxerSeekDone calls
puru [Mon, 16 Nov 2015 10:05:19 +0000 (15:35 +0530)]
[MM][MSE] Multiple DemuxerSeekDone calls

MediaSourceDelegateEfl calls DemuxerSeekDone multiple times,
hence seek offset is updated many times.

Cherry-pick(beta/m42): http://165.213.202.130/gerrit/#/c/93731/

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

Reviewed by: sm.venugopal, sns.park

Change-Id: I664287631605b947fd983144116a54aac3a780f5
Signed-off-by: puru <puru.dharma@samsung.com>
6 years agoEwk_Settings are not preserved after domain change
Grzegorz Czajkowski [Fri, 6 Nov 2015 12:04:53 +0000 (13:04 +0100)]
Ewk_Settings are not preserved after domain change

By default, Chromium creates a renderer process for each
instance of a site the user visits [1]. This result in
creating a new instance of |content::WebPreferences|.
Those preferences are mostly determined on command switches:

WebPreferences RenderViewHostImpl::ComputeWebkitPrefs() {
WebPreferences prefs;
prefs.web_security_enabled =
!command_line.HasSwitch(switches::kDisableWebSecurity);
...
GetContentClient()->browser()->OverrideWebkitPrefs(this, &prefs);
return prefs;
}
After that, newly determined |prefs| are sent to renderer.

The problem is that |Ewk_Settings| has own instance of
|content::WebPreferences| which client (through ewk_settings* API)
is able to change. Once renderer gets changed, RVHImpl calls
ComputeWebkitPrefs() not including client changes at all.
In consequence, settings are not sync between Browser and Renderer.

This patch ensures creation of Ewk_Settings during EWebView
initializaion. First call to ContentBrowserClientEfl::OverrideWebkitPrefs
allows using default WebPreferences values which are computed
based on command line switches. Successive, override RHVImpl's prefs
in favour of Ewk_Settings.

Since Ewk_Setings has own store for EFL specific prefs [2]
there is a need to handle them separately when renderer (RenderView)
is created. What's crucial there, is to send the message to proper
|RVH| which is passed via RenderViewCreated. Using |RVH| from
EWebView/WebContents at that time would result in sending message
to outgoing process.

[1] https://www.chromium.org/developers/design-documents/process-models
[2] http://165.213.202.130/gerrit/#/c/92971/

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

Reviewed by: a1.gomes, d.waslicki, sns.park

Change-Id: I53f42080243ae6087c05435d586862c2022f7575
Signed-off-by: Grzegorz Czajkowski <g.czajkowski@samsung.com>
6 years agoRename AutofillManagerDelegateEfl to AutofillClientEfl.
Antonio Gomes [Mon, 16 Nov 2015 20:46:12 +0000 (16:46 -0400)]
Rename AutofillManagerDelegateEfl to AutofillClientEfl.

The fixes a broken nomeclature we carry over since chromium-efl
forked chrome's autofill implementation in [1].

[1] http://suprem.sec.samsung.net/gerrit/#/c/2335/

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

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

Reviewed by: sns.park

Change-Id: I689b9c007ed6f127f921f3f96021ad22c825f58d
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoProper calculate the handle base
Antonio Gomes [Fri, 13 Nov 2015 17:47:13 +0000 (13:47 -0400)]
Proper calculate the handle base

There two places where we set the "base" position for a handle:
::ShowHandleAndContextMenuIfRequired and ::HandleDragEndNotification.

If one looks close, will realize that they set the base position
using different heuristics:
(1) the former sets it to the CENTER point of the selection bound.
(2) the later sets it to BOTTOM_{LEFT,RIGHT} point of the selection bound.

In a comment on the code, (1) explains why it uses "CENTER":
"dragging one handle would cause movement of the other".
Although this is really the case if we stop using the center
point in favor of bottom_{left,right}, this fixes the problem on
the wrong place. Moreover, (1) actually causes a bug noticeable when
user performs text selection on pages with different font sizes, e.g.:

<head>
<style>
h1 { font-size: 850%; }
p  { font-size: 100%; }
</style>
</head>
<body>
<h1>This is heading</h1>
<p>This is a paragraph.</p>
</body>

When user starts dragging a handle, we calculate the so named "diff_point",
which is an offset from the handle "base" point (set as described above) and
user's actual touch point. On a move, the current handle position is
subtracted by the "diff_point", and result is sent to the renderer as a
selection point.

If user is selecting a text whose font is big, the diff_point will be calculated
as the offset between the center point of the selection bound and the
touch point, which will be large. Then if users drags the handle to select
a content with a smaller font size.
the large "diff_point" value does not apply to the small size content, and
will cause the handle to be disconnected from the selection point.

Patch fixes this by always setting "base position" to the bottom_{left,right}
of the selection bound.
This is also what TouchHandle (used Aura/Android) does; in
ui/touch_selection/touch_handle.cc, see the logic that sets touch_drag_offset_.
Also, patch computes a new offset based on the line height that avoids
synthesizing a point on a line above (or below) the intended line.
See help function .ComputeLineOffsetFromBottom' which mimics its counterpart in
from ui/touch_selection/touch_selection_controller.cc.

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

Reviewed by: a.renevier, sns.park

Change-Id: I4352958c279c00a4b7dc9e882d639cde0c91f11e
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agofixup! Hide large handle upon typing.
Antonio Gomes [Wed, 11 Nov 2015 18:47:44 +0000 (14:47 -0400)]
fixup! Hide large handle upon typing.

Move the logic that hides a handle upon user typing
to a hook that is actually called when input field values change.

This fixes a problem where the "hide" logic does not play well
with the zoom-focused-field-to-center logic (enabled by [1]).

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

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

Reviewed by: a.renevier, djmix.kim, sns.park

Change-Id: I7b853a0ba155843343c9fbd7434ea43bcb66847d
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoDo not show large handle when tap on empty fields
Antonio Gomes [Tue, 10 Nov 2015 17:58:21 +0000 (13:58 -0400)]
Do not show large handle when tap on empty fields

Composited selection updates contain a bit of information
to tell if the current (caret) selection is on a empty
form control.

Patch makes use of that info in order to make chromium-efl
to match other mobile browsers (sbrowser, chrome and firefox mobile)
with respect to focus empty fields.

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

Reviewed by: a.renevier, djmix.kim, sns.park

Change-Id: Ib3e012787dff63c0018ee80a8c43253261ed76ca
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[M42-Merge]Flag for enabling rendering of video frames of type TBM surface
uzair.jaleel [Mon, 5 Oct 2015 11:23:27 +0000 (16:53 +0530)]
[M42-Merge]Flag for enabling rendering of video frames of type TBM surface

Added flag 'TIZEN_TBM_SUPPORT' for enabling rendering support
for frames of type TBM surface.

M42 patch: http://165.213.202.130/gerrit/#/c/89553/

Bug: http://suprem.sec.samsung.net/jira/browse/CBEFL-599

Reviewed by: a1.gomes, sns.park

Change-Id: I1fa08bc55c4c84f4ae923d19fb85b6202afe5939
Signed-off-by: uzair.jaleel <uzair.jaleel@samsung.com>
Signed-off-by: Chandan Padhi <c.padhi@samsung.com>
6 years ago[M42-Merge] Move ScopedRestoreNonOwnedEGLContext class to seperate files.
Chandan Padhi [Wed, 16 Sep 2015 14:09:28 +0000 (19:39 +0530)]
[M42-Merge] Move ScopedRestoreNonOwnedEGLContext class to seperate files.

This patch moves ScopedRestoreNonOwnedEGLContext class implementation to
seperate files so that it can be used in GLSurfaceEGL::InitializeOneOff
in gl_surface_egl.cc to fix the evas gl context failure issue on Note4.

M42 patch: http://165.213.202.130/gerrit/#/c/87556/

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

Reviewed by: a1.gomes, sns.park

Change-Id: I066a2de6ac2134007da6e5a83d4fed9c169a2467
Signed-off-by: Chandan Padhi <c.padhi@samsung.com>
6 years agoRemove control status that are obsolete now
Antonio Gomes [Tue, 10 Nov 2015 05:07:22 +0000 (01:07 -0400)]
Remove control status that are obsolete now

Logic of the following controls have been obsolete by
simpler mechanisms:

* single_tap_performed
* show_only_large_handle_
* restore_showing_large_handle_on_gesture_end_
* postponed_
* show_after_scroll_
* should_restore_selection_menu_
* selection_acked_on_tap_
* was_scrolled_

Patch nukes them out.

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

Reviewed by: a.renevier, sns.park

Change-Id: I9d6ee7ffebc8dd7ae7ac00a0c57197cbccbd41dc
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoMake the reasons for showing handles and context menu explicit.
Antonio Gomes [Mon, 9 Nov 2015 23:41:10 +0000 (19:41 -0400)]
Make the reasons for showing handles and context menu explicit.

As of now there is a mix of reasons that request context menu
and selection handles show.
To keep control of what gets shown and when, currently there are
lots of state variables, conditions. To list some, we can name:

* show_after_scroll_
* should_restore_selection_menu_
* selection_acked_on_tap_
* single_tap_performed_
* show_only_large_handle_

Additionally, control is spreadied around different methods,
and is hard to follow.

In order to make it all simpler, patch introduces a single
control that allow us to handle case by case. It is an enum class
named "Reason" whose enum items list include:

* ScrollOrZoomGestureEnded
* HandleDragged
* HandleReleased
* LongPressMoved
* LongPressEnded
* Tap
* RequestedByContextMenu
* Irrelevant

"Irrelevant" enum item represents a case where a selection change
happaned without being asked by chromium-efl, e.g. a text selected by JS.

This way we can control show/not show of context menu and handles
in a simpler way, and eliminate all other mentioned controls (to be done
in a future patch for simplicity).

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

Reviewed by: a.renevier, a1.gomes, djmix.kim, sns.park

Change-Id: I6ea5a1146ab38d0478b8cbef036db6724c33cf87
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[M42-Merge] ewk_context_application_cache_delete_all crashes on API tests
sihoons.yang [Thu, 12 Nov 2015 07:03:00 +0000 (16:03 +0900)]
[M42-Merge] ewk_context_application_cache_delete_all crashes on API tests

[issue] Segfault occurs when ewk_context_application_cache_delete_all
is called.

[cause] if ewk_context_application_cache_delete_all API call is faster
than AppCacheServiceImpl::Initialize, segmentation fault occurs.

[solution] ewk_context_application_cache_delete_all
API and AppCacheServiceImpl::Initialize are put the same thread.

M42 patch: http://165.213.202.130/gerrit/#/c/86735/4

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

Reviewed by: a1.gomes, hh4813.kim, sns.park

Change-Id: Id145919cbd1315a0c0a9950138dad59f467c71f2
Signed-off-by: sihoons.yang <sihoons.yang@samsung.com>
6 years ago[MM][CAPI] handling dom onerror event on page load for MediaElement
Umesh Kumar Patel [Mon, 27 Jul 2015 08:06:04 +0000 (13:36 +0530)]
[MM][CAPI] handling dom onerror event on page load for MediaElement

Any media-src related error during page load was not handled,
due to which dom event |onerror| was not called and causes
Audio and Video onerror tct testcase failure.

Calling player_prepare_async during page load to handle.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14703
Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13396
Bug: http://168.219.209.56/jira/browse/TSAM-127

Reviewed by: sns.park

Change-Id: Idcdc65b86fc464d06f055701d475040251c78f39
Signed-off-by: Umesh Kumar Patel <umeshk.patel@samsung.com>
6 years agoRemove unneded request to show selection handles / context menu.
Antonio Gomes [Mon, 9 Nov 2015 16:33:17 +0000 (12:33 -0400)]
Remove unneded request to show selection handles / context menu.

With our new text selection implementation, we have much
more control about when selection handles will be shown,
and the allowed call sites.

Patch removes lots of unneeded call to ::UpdateSelectionDataAndShow
and ::ShowHandleAndContextMenuIfRequired.

Reasons are below:
- RenderWidgetHostViewEfl::DidStopFlinging:
SelectionControllerEfl::HandleGesture: no need to call
::UpdateSelectionDataAndShow manually, because SetScrollStatus
is also called in both cases, and it does take care of calling
::ShowHandleAndContextMenuIfRequired in the relevant situations.

- SelectionControllerEfl::HandleDragBeginNotification: No need to
manually call ::ShowHandleAndContextMenuIfRequired because it will
be call when the next composited selection update pass happens.

- SelectionControllerEfl::HandleLongPressMoveEvent:
SelectionControllerEfl::HandleLongPressEndEvent:
SelectionControllerEfl::IsSelectionValid: no need to activate
selection mode from none of these methods. At these points, it
already be ON.

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

Reviewed by: a.renevier, djmix.kim, sns.park

Change-Id: I86491da9785413ecf694c1480cd071984b679507
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoUnify mouse_press_ and handle_being_dragged_ controls
Antonio Gomes [Fri, 6 Nov 2015 19:29:47 +0000 (15:29 -0400)]
Unify mouse_press_ and handle_being_dragged_ controls

These two duplicate each other.

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

Reviewed by: a.renevier, djmix.kim, sns.park

Change-Id: I08b05b222dac2fdeac73598da7693462200c5cbf
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[MM] Fix crash on refresh html page while playing the video.
msu.koo [Wed, 11 Nov 2015 12:34:10 +0000 (21:34 +0900)]
[MM] Fix crash on refresh html page while playing the video.

Crash happens on refresh, because media packet comes after player destroyed.

This patch introduced 2 guards to solve this.
- Introduced weak_factory not to make the pending tasks outlive over player.
- Introduced validity checking for player before handling MediaPacketUpdated.

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

Reviewed by: a1.gomes, sns.park

Change-Id: I0f02417abad6159765d88debcf9cba3050a9b006
Signed-off-by: msu.koo <msu.koo@samsung.com>
6 years ago[Mobile] Fix BACK key does not exit fullscreen on ubrowser.
Siba Samal [Wed, 11 Nov 2015 11:13:34 +0000 (16:43 +0530)]
[Mobile] Fix BACK key does not exit fullscreen on ubrowser.

Added callbacks for 'fullscreen,enterfullscreen' & 'fullscreen,exitfullscreen'
to notify ewk_view about Player's view mode change.

Also added EEXT_CALLBACK_BACK callback on normal webview (webpage)
to navigate to previous page if backward is possible.

Bug: http://168.219.209.56/jira/browse/TSAM-577

Reviewed by: a1.gomes, sns.park

Change-Id: I63bbb8936dc9504b5986a93f2a2afb46aa2ba89c
Signed-off-by: Siba Samal <siba.samal@samsung.com>
6 years ago[MM] Fix to access Camerahandle with singleton way.
esnada [Thu, 10 Sep 2015 06:34:11 +0000 (15:34 +0900)]
[MM] Fix to access Camerahandle with singleton way.

Before this patch, to get the information from camera,
camera is keeping created/destroyed.
And this causes blocking IOs inside camcorder framework,
which induct some delays.

This patch is to access the camera as Singleton way to
- Minimize the instantiations of camera handles.
- Minimize the IO overhead inside camcorder framework.

Bug: http://168.219.209.56/jira/browse/TSAM-317

cherry-picked from M42: http://165.213.202.130/gerrit/#/c/86888/

Reviewed by: msu.koo, sns.park

Change-Id: I6c949d34dfd8a12226b381937bd3d76037bf044e
Signed-off-by: esnada <msu.koo@samsung.com>
6 years ago[MM][ME] player_set_streaming_playback_rate API added
y0.kim [Thu, 29 Oct 2015 12:12:39 +0000 (21:12 +0900)]
[MM][ME] player_set_streaming_playback_rate API added

[Problem]  playback rate of streaming can NOT be changed
[Cause]    existing API |player_set_playback_rate()| only works for local file
[Solution] If not local file, use |player_set_streaming_playback_rate|
which is a newly added internal API by our request.

Bug: http://168.219.209.56/jira/browse/TSAM-525

Reviewed by: sns.park

Change-Id: Id41f4c7557558c2034d7449b58638981d364df47
Signed-off-by: y0.kim <y0.kim@samsung.com>
Signed-off-by: SeungSeop Park <sns.park@samsung.com>
6 years ago[MM] Webaudio with CAPI port.
puru [Tue, 3 Nov 2015 08:50:04 +0000 (14:20 +0530)]
[MM] Webaudio with CAPI port.

This patch implements:
1. Webaudio using CAPI player.
2. Decoded output data handling from CAPI interface.
3. Factory interface for webaudio instance creation.

Original M42 patch: http://165.213.202.130/gerrit/#/c/83775/

Bug: http://168.219.209.56/jira/browse/TSAM-56

Reviewed by: sns.park

Change-Id: I413f1f53c7f066620182ce1075f807e06f354ddd
Signed-off-by: puru <puru.dharma@samsung.com>
Signed-off-by: SeungSeop Park <sns.park@samsung.com>
6 years ago[MM] Implement CAPI-based Asynchronous Audio I/O
bollavaram.s [Thu, 1 Oct 2015 09:22:23 +0000 (14:52 +0530)]
[MM] Implement CAPI-based Asynchronous Audio I/O

This commit includes
- added CAPI-based audio I/O
- Set CAPI-based audio I/O as default.
- Use of asynchronous CAPI for performance

Original M42 patches:
- http://165.213.202.130/gerrit/#/c/82224
- http://165.213.202.130/gerrit/#/c/90199
- http://165.213.202.130/gerrit/#/c/91738

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=11535
Bug: http://168.219.209.56/jira/browse/TSAM-422
Bug: http://168.219.209.56/jira/browse/TSAM-538

Reviewed by: sns.park

Change-Id: I0d959b790a8c75c1a1a5f6047df833a842bdb155
Signed-off-by: y0.kim <y0.kim@samsung.com>
Signed-off-by: bollavaram.s <bollavaram.s@samsung.com>
Signed-off-by: SeungSeop Park <sns.park@samsung.com>
6 years ago[MM] Segmentation fault on calling CAPI APIs during destruction
sangdeug.kim [Fri, 11 Sep 2015 10:54:39 +0000 (19:54 +0900)]
[MM] Segmentation fault on calling CAPI APIs during destruction

Set |player_| as 0 to prevent using invalid handler.

|PlayerPrepared| callback which is set in |player_prepare_async| is called
after calling |Destroy| but it's invalid call path.
To unset remained callbacks, calling the |player_unprepare| in |Destroy|.
|player_unprepare| unset the callback which is set from |player_prepare_async|
and |player_set_position| api.

original M42 patches:
http://165.213.202.130/gerrit/#/c/87061/
http://165.213.202.130/gerrit/#/c/87220/

Bug: http://168.219.209.56/jira/browse/TSAM-379

Reviewed by: sns.park

Change-Id: I37cb9d4955acb12b0c40c5fa5d5ff12cc199d818
Signed-off-by: sangdeug.kim <sangdeug.kim@samsung.com>
6 years agoCome up with an alternative solution for kEnableViewportMeta removal.
Antonio Gomes [Tue, 10 Nov 2015 21:14:27 +0000 (17:14 -0400)]
Come up with an alternative solution for kEnableViewportMeta removal.

According to [1], ports should enabled it at build time,
from content/public/common/web_preferences.cc. See [2].

[1] https://code.google.com/p/chromium/issues/detail?id=513214
[2] http://165.213.202.130/gerrit/#/c/92446/

Patch then removes the inexisting command line flag call,
and make the funcionality available for desktop builds
(ubrowser --mobile) by tying it to kUseMobileViewportStyle.

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

Reviewed by: a.renevier, sns.park

Change-Id: I3c737a9c20e59b00e63a5fa31996ae6f05ddf9d6
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoAdd "Open" context menu option for image
Pawel Niemirski [Wed, 28 Oct 2015 15:24:49 +0000 (16:24 +0100)]
Add "Open" context menu option for image

According to Tizen3.0_Mobile_Web Browser_UI guide, when user does
a long press on an image, the context menu should contain "Open" option
which allows to open image in current tab.

Patch implements this option.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/92546/ , reviewed by
Antonio Gomes, DONGJUN KiM

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

Reviewed by: a1.gomes, djmix.kim, sns.park

Change-Id: Ieaeaf669d2e75791a0e980c620d63eb75f124815
Signed-off-by: Pawel Niemirski <p.niemirski@samsung.com>
6 years agoColor picker is too narrow to contain color selector layout
Piotr Ganicz [Mon, 9 Nov 2015 14:32:27 +0000 (15:32 +0100)]
Color picker is too narrow to contain color selector layout

Minimal width of color picker defined in control.edc is too
large. As a result some elements stick out widget.

Patch removes the minimal width set for color pickers to ensure
automatic resize of the widget when we call APIs like:

evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);

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

Reviewed by: a1.gomes, sns.park

Change-Id: I3979087cbd7111f9713a6c7fda3292e6ae3a4223
Signed-off-by: Piotr Ganicz <p.ganicz@samsung.com>
6 years agoUse public context menu enum in internal implementation
Lukasz Bialek [Mon, 26 Oct 2015 10:41:57 +0000 (11:41 +0100)]
Use public context menu enum in internal implementation

There are two enums in the code connected with context menus -
Ewk_Context_Menu_Item_Tag (public one) and ContextMenuOption (internal).
They have to stay in sync, otherwise context menus created externally
will not work properly.

In order to provide reliability, internal implementation has been
converted to use Ewk_Context_Menu_Item_Tag enum. Moreover, context menu
item type enums have been unified as well. This prevents bugs
occuring because of modification of enums in only one place.

Original beta/m42 patch:
- http://165.213.202.130/gerrit/#/c/92025/ , reviewed by
Antonio Gomes, Janusz Majnert.

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

Reviewed by: a1.gomes, sns.park

Change-Id: I10326d8352043f3acca044a0a3416e3bcf453e0c

6 years ago[M42-Merge] fixup! Changed implementation of EWebView::GetSnapshot
dhyuna.ko [Tue, 21 Jul 2015 07:12:03 +0000 (16:12 +0900)]
[M42-Merge] fixup! Changed implementation of EWebView::GetSnapshot

MakeCurrent is missing in EWebView::GetSnapshot() where Evas_GL_API is used.
This results in error below inside EvasGL when EvasGL API is called.
"Unable to retrieve Current Engine"

Static allocation of quite large amount of memory caused crash.

Query for GL_IMPLEMENTATION_COLOR_READ_FORMAT returns GL_RGBA, so to use
GL_BGRA results in GL_INVALID_OPERATION error in the case of glReadPixels.

The functionality of EWebView::GetSnapshot was verified on both mobile (Note4)
and tv (XU3).

Original Commit: http://165.213.202.130/gerrit/#/c/83886/

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

Reviewed by: a1.gomes, dhyuna.ko, siba.samal, sns.park

Change-Id: Ie1dd9cf096e4fc92cde6e952f8c318a06da0e7f7
Signed-off-by: dhyuna.ko <dhyuna.ko@samsung.com>
Signed-off-by: venu.musham <venu.musham@samsung.com>
6 years agoNo autozoom after tap on input filed
Grzegorz Czajkowski [Wed, 16 Sep 2015 10:35:06 +0000 (12:35 +0200)]
No autozoom after tap on input filed

blink::WebViewImpl::computeScaleAndScrollForFocusedNode calculates a new scale
for text in editable fields to be legible. However, there is a constraint
m_maximumLegibleScale which is by default set to 1 preventing setting a newly
calculated scale which is usually larger than 1.

Enlarge maximum legible scale for Tizen to allow auto zoom after tap.

Additionally, call ScrollFocusedEditableNodeIntoRect regardless of im_context_
in order to have it for non virtual keyboard (desktop) builds.

Do not scroll and zoom autofocused elements unless IME is expected to be shown.

This is squash of two beta/m42 patches:
1. http://web.sec.samsung.net/gerrit/#/c/84212/ reviewed by
Antonio Gomes, Janusz Majnert

2. http://web.sec.samsung.net/gerrit/#/c/88233/ reviewed by:
Antonio Gomes, DONGJUN KiM:

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

Reviewed by: a.renevier, a1.gomes, sns.park

Change-Id: I0aad6a6fb0ee3a17f15b7c8bd0785ad4e1c0f145
Signed-off-by: Grzegorz Czajkowski <g.czajkowski@samsung.com>
6 years agofixup! [M47_2526] Chromium upversion to m47_2526 branch
KangYong Park [Tue, 27 Oct 2015 08:47:03 +0000 (17:47 +0900)]
fixup! [M47_2526] Chromium upversion to m47_2526 branch

Removed the "EWK_BRINGUP" definition about battery.
Because there is
"device.h" in
"local/BUILD-ROOTS/scratch.armv7l.0/usr/include/system/device.h"

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

Reviewed by: a1.gomes, mohan.reddy, sns.park

Change-Id: Idcb69da8cee1228104f75305f4c2c977666818c9
Signed-off-by: KangYong Park <kaka.park@samsung.com>
6 years agofixup! [M47_2526] Chromium upversion to m47_2526 branch
Sanghyup Lee [Mon, 9 Nov 2015 23:24:42 +0000 (08:24 +0900)]
fixup! [M47_2526] Chromium upversion to m47_2526 branch

RVH::SetTextZoomFactor was removed from s-chromium.
This patch fixes broken path to set text zoom factor.

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

Reviewed by: a1.gomes, hh4813.kim, sns.park

Change-Id: I4f0959b2215a0eb9425817a84ea91ff1e8406db3
Signed-off-by: Sanghyup Lee <sh53.lee@samsung.com>
6 years agomake unittests less verbose
Arnaud Renevier [Fri, 2 Oct 2015 19:02:32 +0000 (12:02 -0700)]
make unittests less verbose

Right now, the unittests are verbose and produce a lot of outputs. This
makes it difficult to debug them.

This patch sets different levels of logging: debug, info, warning and
error. By default, debug messages aren't showed anymore. That way, it
will be easier to see when something actually goes wrong in a test.

It's possible to display them again by setting the environment variable
UTC_MIN_LOG to DEBUG

Reviewed by: a1.gomes, hh4813.kim, sns.park

Change-Id: I6f4e8d61ff5ec24eaccec5240d3fa106edd8ff7c
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agouse ecore evas fullscreen api in efl_webview_app
Arnaud Renevier [Thu, 5 Nov 2015 00:20:32 +0000 (16:20 -0800)]
use ecore evas fullscreen api in efl_webview_app

In efl_webview_app, use ecore_evas_fullscreen_set directly instead of
getting screen size, and setting it with x11/wayland specific APIs

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

Reviewed by: a1.gomes, sns.park

Change-Id: Ib87a44eaee5b9e43dbaf66345aa3e62c8bc4a0c9
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years ago[m47_2526] Fix delegated renderer destruction.
venu.musham [Thu, 5 Nov 2015 09:27:51 +0000 (14:57 +0530)]
[m47_2526] Fix delegated renderer destruction.

Delegated renderer OutputSurface now needs to be destroyed on the
same thread they were created. OutputSurface::DetachFromClient() can
be used to destroy any resources that need to be destroyed on the thread
that the OutputSurface has been bound to.

Fixes crash issue on closing window.

[CL]: https://codereview.chromium.org/1336733002

Reviewed by: a.renevier, a1.gomes, dhyuna.ko, hyuki.kim, sns.park

Change-Id: Iab160ed56eec58be5929114606556fc0d97053de
Signed-off-by: venu.musham <venu.musham@samsung.com>
6 years agoUnfork Autofill support: Clean up PersonalDataManagerFactory
Antonio Gomes [Tue, 20 Oct 2015 20:50:15 +0000 (16:50 -0400)]
Unfork Autofill support: Clean up PersonalDataManagerFactory

Patch is the first step towards unforking our Autofill
and PassworkManager supports.
It removes lots of methods declared in PersonalDataManagerFactory
class that were just serving as bridge to PersonalDataManager:
- AddProfile
- UpdateProfile
- RemoveByGUID
- GetProfileByGUID

Additionally, patch removes some methods that were not used
anywhere, including:
- GetProfileCount
- GetProfileByIndex
- GetCreditCardCount
- GetCreditCardByIndex
- AddCreditCard
- UpdateCreditCard
- GetCreditCardByGUID

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

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

Reviewed by: sns.park

Change-Id: I2380048b101c0bb1d56f9a2e52640b0cc7c653ff
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agofixup! [M47_2516] Chromium upversion to m47_2516 branch
SeungSeop Park [Fri, 6 Nov 2015 06:54:20 +0000 (15:54 +0900)]
fixup! [M47_2516] Chromium upversion to m47_2516 branch

We have following dependency:
chrome_resources.gyp:packed_resources
-> extensions/renderer/resources/extensions_renderer_resources.grd
-> ${mojom_root}/chrome\browser\media\router\media_router.mojom.js

The build breaks because of missing media_router.mojom.js, which is
expected to be auto-generated but not in our case. So, patch adds a
gyp dependency to generate the file, and removes the corresponding
patch file which was added temporarily to bypass the issue.

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

Reviewed by: a.renevier, a1.gomes, sns.park

Change-Id: I9349af672c6cc7e52edc99d91d74b357f11d9edc
Signed-off-by: SeungSeop Park <sns.park@samsung.com>
6 years ago[Tizen 3.0][EWK API] Change the implementation ewk_view_page_visibility_set
Andrzej Badowski [Fri, 23 Oct 2015 15:23:23 +0000 (17:23 +0200)]
[Tizen 3.0][EWK API] Change the implementation ewk_view_page_visibility_set

Change the implementation of ewk_view_page_visibibility_set means
calling RenderWidgetHostImpl::WasShown or WasHidden functions.
These functions, among others, sends a message to the renderer.
The message handler calls the function OnWasHidden or the function
OnWasShown side renderer.
The current implementation does not differ from the implementation
ewk_view_visibility_set.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14555.
Reviewed by: Antonio Gomes, Janusz Majnert

Reviewed by: a1.gomes, j.majnert, sns.park

Change-Id: I89e84d92386ded7916b9f0671216b1adc6c99ad2
Signed-off-by: Andrzej Badowski <a.badowski@samsung.com
(cherry picked from commit 87f64fa1041d65d6b48036c5e07af406b56bff4c)

6 years ago[M42-Merge] Add GetSnapshotAsync Implementation.
venu.musham [Wed, 4 Nov 2015 10:41:41 +0000 (16:11 +0530)]
[M42-Merge] Add GetSnapshotAsync Implementation.

- Remove delegated renderer flags:
Delegated rendering is always on on all platforms including
tizen, except for Layout Tests that use composite-to-mailbox.
Remove corresponding flags in tizen.

- Add GetSnapshotAsync implementation for delegated renderer
case, migrate m42 commit:http://165.213.202.130/gerrit/#/c/86297/

[CL]: https://codereview.chromium.org/1355883003

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

Reviewed by: a1.gomes, dhyuna.ko, sns.park

Change-Id: I863e5d1c154346b4c20a088058a5ad05fc93e577
Signed-off-by: venu.musham <venu.musham@samsung.com>
6 years ago[MM] Multimedia up-version to M47
karthick.m1 [Tue, 3 Nov 2015 15:10:35 +0000 (20:40 +0530)]
[MM] Multimedia up-version to M47

1. WebAudio is working
2. MSE is working.
3. ME is working.

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

Change-Id: Idcd94dbbc836f39be8d1116903c1dd65bda2c947
Signed-off-by: karthick.m1 <karthick.m1@samsung.com>
6 years agoUnfork password manager implementation
Antonio Gomes [Fri, 23 Oct 2015 21:30:08 +0000 (17:30 -0400)]
Unfork password manager implementation

In beta/m34, the password manager was a chrome specific
feature, sitting within src/chrome.
In order to have it available to chromium-efl, [1]
forked chrome's code into chromium-efl/impl/.

Since then, the feature has been factored out off
of chrome/ and made its way into components/.
Chromium-efl continued to use its own "forked" implementation,
which were a continuos source of issues now that we
have to adapt beta/m34 based interfaces with the rest
of chromium.

Patch switches chromium-efl to use chromium's general purpose
password manager implementation, allowing us to not only remove
lots of code, but also benefiting from upstream fixes.

The following "forked" files were removed from
ewk/efl_integration/browser/password_manager/ :

* content_password_manager_driver.cc/h
* password_form_manager.cc/h
* password_generation_manager.cc/h
* password_manager.cc/h
* password_manager_client.cc/h
* password_manager_driver.h
* password_manager_util.h
* password_manager_util_efl.cc

Basic, password saving and filing works, as well as
the toggle on/off for the feature.

Note: in password_store_factory.cc, patch removes a
call to LoginDatabase::Init, because this now happens from
PasswordStoreDefault::InitOnDBThread() (chromium code).
Leave this here triggers ASSERTs in runtime due to double
initialization of DB.

[1] http://suprem.sec.samsung.net/gerrit/#/c/2335/

Original beta/m42 patch:
- 165.213.202.130/gerrit/#/c/91887/ , reviewed by
Janusz Majnert, SeungSeop Park.

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

Reviewed by: a.renevier, a1.gomes, djmix.kim, sns.park

Change-Id: I461f4be5a320a2f8f61b9136641bdef842ab2c90
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agofixup! [M47_2526] Chromium upversion to m47_2526 branch
Antonio Gomes [Thu, 5 Nov 2015 19:55:24 +0000 (15:55 -0400)]
fixup! [M47_2526] Chromium upversion to m47_2526 branch

Patch implements AutofillManagerDelegateEfl::IsContextSecure based on
chrome's implementation. Method itself is a hook called by
AutofillManager class, when handling credit card forms autofill.
(see chrome/browser/ui/autofill/chrome_autofill_client.cc).

Android also shares the same implementation.

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

Reviewed by: a.renevier, hh4813.kim, sns.park

Change-Id: Iaaadd437836e5869e37933dcd9d580328781120c
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoAssert @autofill::PersonalDataManager::IsExperimentalWalletIntegrationEnabled()
Antonio Gomes [Mon, 26 Oct 2015 19:35:30 +0000 (15:35 -0400)]
Assert @autofill::PersonalDataManager::IsExperimentalWalletIntegrationEnabled()

Any preference before being queried out needs to be set first.
In the specific case of kAutofillWalletSyncExperimentEnabled
it happens when AutofillManager::RegisterProfilePrefs is called.

However, chromium-efl is being initializing preferences on demand,
at the time "browser context" is created.
Patch adds this specific missing one.

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

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

Reviewed by: a.renevier, sns.park

Change-Id: I7af2e61bbc28fff9794206f6178d6791decbbe15
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoUnimplement RenderWidgetHostViewEfl::MovePluginWindows
Arnaud Renevier [Wed, 4 Nov 2015 23:24:59 +0000 (15:24 -0800)]
Unimplement RenderWidgetHostViewEfl::MovePluginWindows

MovePluginWindows is supposed to move plugin windows which have been
added to RenderWidgetHostView. But plugin windows are never added
to RenderWidgetHostView. It has been the case since at least m40
https://codereview.chromium.org/234533002.

MovePluginWindows can actually be an empty method.

Reviewed by: a1.gomes, sns.park

Change-Id: If7fb2732d367e922c52dd5883a4b6dfd9d9de485
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agoHide large handle upon typing.
Antonio Gomes [Thu, 5 Nov 2015 17:25:55 +0000 (13:25 -0400)]
Hide large handle upon typing.

Currently chromium-efl differs from chrome for android
as well as s-browser and firefox mobile in the way it
handles the visibility of the large handle while user types
some text in: chromium-efl is the only one that keep
the large handle visible while user typing.

Patch changes it so that the large handle gets hidden once
user start typing in the field.

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

Reviewed by: a.renevier, djmix.kim, sns.park

Change-Id: Ibfa4ad888b5c3975765f1b3f788f0657800345e3
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoChanged settings are not sometimes applied to Renderer when Browser starts
Grzegorz Czajkowski [Wed, 4 Nov 2015 10:31:40 +0000 (11:31 +0100)]
Changed settings are not sometimes applied to Renderer when Browser starts

If renderer is not ready to receive messages, we collect
them inside std::set<> collection. When renderer is back,
the messages are propagated via IPC system.

The problem is that due to std::set sorting hash function,
the last inserted element is not guaranteed to be the last
in collection.

Last updated value for particular setting is expected to be
the most recent (and finally applied to Renderer).

Use std::vector instead of std::set to keep insertion sequence.

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

Reviewed by: a.renevier, a1.gomes, sns.park

Change-Id: Iaeb956e538d7f3409483053ff9f4f144601b2fa7
Signed-off-by: Grzegorz Czajkowski <g.czajkowski@samsung.com>
6 years ago[MM] Fix video play when OMX decoder is enabled
ws29.jung [Wed, 26 Aug 2015 05:08:45 +0000 (14:08 +0900)]
[MM] Fix video play when OMX decoder is enabled

Now copying YUV plane to shared memory uses correct start point of
each plane's pointer.
Before this change, there was segmentation fault because it was trying to
access complete YUV size where plane[0] was allocated of only Y size.

In addition, NV12 to I420 logic is updated because old logic tried to
convert image to I420 with actual width and height size whether
CAPI uses 16 byte aligned size.

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

Reviewed by: s.kamath, sm.venugopal, sns.park

Change-Id: Iafd3f4308405356d968091a19b9b2681ad820f1b
Signed-off-by: ws29.jung <ws29.jung@samsung.com>
6 years agouse ecore_evas_resize instead of x/wayland method
Arnaud Renevier [Wed, 4 Nov 2015 19:39:36 +0000 (11:39 -0800)]
use ecore_evas_resize instead of x/wayland method

When we need to resize a window, we are currently getting the underlying
wayland or x11 window, and resizing it. But instead, we can use directly
ecore_evas_resize which does not depend on wayland or x11

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

Reviewed by: a1.gomes, sns.park

Change-Id: I9a33f67ccf4092811a01d232a63440b06a34156e
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agoFixes: shouldForceJHBuild isn't called
Arnaud Renevier [Wed, 4 Nov 2015 18:34:57 +0000 (10:34 -0800)]
Fixes: shouldForceJHBuild isn't called

shouldForceJHBuild is never called in build_desktop.sh
Also, bash function have an exit value, but do not return a value that
can be used as-is in test condition.

So as a fix, instead of checking for the return value, we delete the
stamp file inside the method if needed. The method is now named
forceJHBuildIfNeeded.

Reviewed by: a1.gomes

Change-Id: Ib9374e99990fc9dbef16d51158967273ed9ccd30
Signed-off-by: Arnaud Renevier <a.renevier@samsung.com>
6 years agoImplement ewk_settings_auto_fitting_set
Grzegorz Czajkowski [Tue, 3 Nov 2015 12:08:13 +0000 (13:08 +0100)]
Implement ewk_settings_auto_fitting_set

Some pages, for example, google.com are classified as mobile content due to
following condition:

// Document.cpp
if (m_docType->publicId().startsWith("-//wapforum//dtd xhtml mobile 1."))
m_isMobileDocument = true;

This results in collecting xhtmlmp.css style to define viewport properties:

@viewport {
width: auto;
/* Ideally these should be removed. Currently here to avoid test result regressions. */
min-zoom: 0.25;
max-zoom: 5;
}

As a result, we end up using 0.25 page scale while rendering. To prevent this,
mobile builds are adjusting content to viewport by:

void RenderView::ApplyWebPreferences(...) {
...
settings->setShrinksViewportContentToFit(true);
}

"ubrowser --mobile" needs to call ewk_settings_auto_fitting_set(true) to adjust content.

To implement this API, divide EwkSettings into:
1. content::WebPreferences (managed by chromium's content).
2. WebPreferencesEfl (Efl specific settings that renderer needs to be aware of).
3. public methods (set/get) to manage particular settings (accessible inside
Browser process only).

Get rid of |WebViewSettings::link_effects_enabled| which does not need to be sent
to renderer. Instead, define EwkSettings::get/setLinkEffectEnabled().

Reuse content::WebPreferences to pass javascript_can_open_windows_automatically.

Rename WebViewSettings to WebPreferencesEfl to be main store for EFL settings which
do not exist inside content::WebPreferences.

This is squash of beta/m42 patches:
1. http://165.213.202.130/gerrit/#/c/88657/
reviewed by: Antonio Gomes, DONGJUN KiM, Janusz Majnert, SeungSeop Park, arno renevier

2. http://165.213.202.130/gerrit/#/c/88881/
reviewed by: DONGJUN KiM, Janusz Majnert

3. http://165.213.202.130/gerrit/#/c/91502/
reviewed by: Antonio Gomes, Janusz Majnert

Together with: Id93cf96af154384d9ee0da76c982e68c8880867b

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

Reviewed by: a1.gomes, sns.park

Change-Id: I31c80affdd9c2e26bc583b84841db2cd4002b391
Signed-off-by: Grzegorz Czajkowski <g.czajkowski@samsung.com>
6 years agoUnfork Autofill support: Use AwPrefStore rather than AutofillPrefStore
Antonio Gomes [Tue, 20 Oct 2015 22:07:16 +0000 (18:07 -0400)]
Unfork Autofill support: Use AwPrefStore rather than AutofillPrefStore

EFL port forked Android webview's AwPrefStore into
AutofillPrefStore. Patch makes use of the original
directly to avoid it to get bitrotted.

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

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

Reviewed by: j.majnert, sns.park

Change-Id: I8cb31f91e150e3c20c102239b40de0af915bfade
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoShow the large handle upon first tap.
Antonio Gomes [Fri, 30 Oct 2015 18:19:44 +0000 (14:19 -0400)]
Show the large handle upon first tap.

Currently chromium-efl differs from chrome for android
as well as s-browser and firefox mobile in the way it
enters caret selection mode (i.e. large handle shown).
In some cases, user has to tap twice on an input field
in order to get the large handle shown.

Patch changes it so that only one tap is needed to enter
caret selection mode.
Additionally, patch unifies two routines used to handle
"tap" gestures.

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

Reviewed by: a.renevier, a1.gomes, sns.park

Change-Id: I595fdf531a1644a0179280a7b362984ec252f9c3
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agoLet the composited selection data tell about "editable content".
Antonio Gomes [Fri, 30 Oct 2015 20:00:45 +0000 (16:00 -0400)]
Let the composited selection data tell about "editable content".

This information comes as part of the composited selection data.
Lets use it instead of other sources.

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

Reviewed by: a.renevier, a1.gomes, djmix.kim, sns.park

Change-Id: I5dd964d04695e8f2ec121220b9efeaadc16adf6b
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years agofixup! [M47_2526] Chromium upversion to m47_2526 branch
Hyemi [Mon, 2 Nov 2015 07:30:49 +0000 (16:30 +0900)]
fixup! [M47_2526] Chromium upversion to m47_2526 branch

libffmpegsumo.so is no longer generated from chromium.

Note for chromium changes:
- gyp target 'ffmpegsumo' is renamed to 'ffmpeg' and statically linking
the ffmpeg library [1]
- gyp flag |build_ffmpegsumo| removed [2]

[1] https://codereview.chromium.org/1141703002
[2] https://codereview.chromium.org/1234083004

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

Reviewed by: a1.gomes, sns.park

Change-Id: I12fdb39f7a54e507b54b00b739ecabe761cbda45
Signed-off-by: Hyemi <hyemi.sin@samsung.com>
6 years agoSimplify SelectionControllerEfl state machine: eliminate "caret selection" setter
Antonio Gomes [Fri, 30 Oct 2015 18:10:14 +0000 (14:10 -0400)]
Simplify SelectionControllerEfl state machine: eliminate "caret selection" setter

Our text selection implementation works similar to a state
machine with the following states, to mention some:
- enabled on/off;
- caret selection on/off
- editable selecton on/off
- etc

Specifially about the "caret" selection "state", although it is
possible to set it on and off manually today, it should only be
set by the selection controller in one specific case: start and end
selections are equal, and focused node is content editable.

Based on that, patch simplifies the logic that sets this state,
without cause behavior changes.

Additionally some member variables from SelectionBoxEfl class are
removed: editable_ (redudant) and is_caret_selection_ (unneeded).

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

Reviewed by: a.renevier, djmix.kim, sns.park

Change-Id: Ib8fa1ca2efab23944b1d0777db776d46a40d0ab6
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
6 years ago[m47_2526] Reenabled delegated renderer.
venu.musham [Fri, 30 Oct 2015 07:26:42 +0000 (12:56 +0530)]
[m47_2526] Reenabled delegated renderer.

RasterThreadImpl is removed from surface initialization.
Move ui raster thread to ContextFactory for enabling delegated
renderer.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=14581
Bug: http://168.219.209.56/jira/browse/TSAM-554

Together with: I426b0130d757030ef974792c02e051879504d1d8

Reviewed by: a1.gomes, dhyuna.ko, sns.park

Change-Id: Ifabdbf634b699911bf97a937bb741c5d7683f08d
Signed-off-by: venu.musham <venu.musham@samsung.com>
6 years agofixup! [M47_2526] Chromium upversion to m47_2526 branch
Youngcheol Kang [Wed, 28 Oct 2015 07:19:59 +0000 (16:19 +0900)]
fixup! [M47_2526] Chromium upversion to m47_2526 branch

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:

[1] Enter chroot
$ gbs chroot --root ~/GBS-ROOT/local/BUILD-ROOTS/scratch.aarch64.0/

[2] Copy over src/third_party/ffmpeg to chroot (e.g.: /home/abuild)
$ cp -rf src/third_party/ffmpeg
~/GBS-ROOT/local/BUILD-ROOTS/scratch.aarch64.0/home/abuild/

[3] Execute the below comment in ffmpeg directory
$ cd ffmpeg
$ ./chromium/scripts/build_ffmpeg.py linux arm64
$ ./chromium/scripts/copy_config.sh
$ python chromium/scripts/generate_gyp.py

[4] Edit ffmpeg.gyp; add "asm_sources" to the build

[5] 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=14507

Reviewed by: a1.gomes, sns.park

Change-Id: I238cb36c294e27d9dce3a163a7a41c474d5f2360
Signed-off-by: Youngcheol Kang <ychul.kang@samsung.com>
6 years ago[Odroid][WCS] No logs for touch events on gesture.html
Antonio Gomes [Tue, 13 Oct 2015 16:00:59 +0000 (12:00 -0400)]
[Odroid][WCS] No logs for touch events on gesture.html

After [1], touch events stopped being forcibly enabled
for chromium-efl. That was the correct thing to do,
given that there are Tizen profiles where touch does
not play at: TV, desktop.

When ubrowser is launched on Tizen (both TV and mobile),
it makes a call to ewk_view_touch_events_enabled_set(true).
Same happens when it is launched on desktop with "--mobile"
parameter.
In the call chain, EWebView::SetTouchEventsEnabled is called
and enables touch in WCVEfl and RWHVEfl level.

However, problem relies on the fact that the API layer status
of touch events gets disconnected to content layer level status.
At content layer level, touch events are only enabled
to Tizen mobile builds, as one can see from the snippet below at
tizen_src/ewk/efl_integration/command_line_efl.cc:

78 #if defined(OS_TIZEN_MOBILE)
79   p_command_line->AppendSwitchASCII(switches::kTouchEvents,
80                                     switches::kTouchEventsEnabled);

Patch fixes that inconsistency by hooking up content layer's
touch event status to ewk_view_touch_events_enabled_set call chain.

As a consequence, "ubrowser --mobile" on desktop also get
its touch events emulation fixed: double tap to zoom works,
as well as the sample sites [2], [3] and [4].

[1] http://165.213.202.130/gerrit/92823
[2] http://www.google.com/intl/en/about/careers/locations/
[3] https://patrickhlauke.github.io/touch/tests/event-listener.html
[4] WSC/gestures.html

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

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

Reviewed by: a.renevier, sns.park

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