WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Patch
bug-100213-20121025172432.patch (text/plain), 6.80 KB, created by
KyungTae Kim
on 2012-10-25 01:25:56 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
KyungTae Kim
Created:
2012-10-25 01:25:56 PDT
Size:
6.80 KB
patch
obsolete
>Subversion Revision: 132457 >diff --git a/Source/WebKit2/ChangeLog b/Source/WebKit2/ChangeLog >index fabed770c8acb2d25d5376741a75443d5472b135..72d9b420b7d97eeb520728eba0bfe8c676b357bd 100644 >--- a/Source/WebKit2/ChangeLog >+++ b/Source/WebKit2/ChangeLog >@@ -1,3 +1,19 @@ >+2012-10-25 KyungTae Kim <ktf.kim@samsung.com> >+ >+ [WK2][EFL] Add ewk_view_pagination_mode_set/get() APIs >+ https://bugs.webkit.org/show_bug.cgi?id=100213 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Add ewk_view_pagination_mode_set/get() APIs for paginated display. >+ >+ * UIProcess/API/efl/ewk_view.cpp: >+ (ewk_view_pagination_mode_set): >+ (ewk_view_pagination_mode_get): >+ * UIProcess/API/efl/ewk_view.h: >+ * UIProcess/API/efl/tests/test_ewk2_view.cpp: >+ (TEST_F): >+ > 2012-10-24 Joone Hur <joone.hur@intel.com> > > [EFL][AC] Unreviewed, fix build break when AC is enabled >diff --git a/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp b/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp >index 506ed827cfe3dbb5738aa77f98267720975fabbf..bed3c9b857e580238e874b1a7ca1c1d8955f5c96 100644 >--- a/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp >+++ b/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp >@@ -1486,3 +1486,28 @@ Eina_Bool ewk_view_inspector_close(Evas_Object* ewkView) > return false; > #endif > } >+ >+// Ewk_Pagination_Mode should be matched up orders with WebCore::Pagination::Mode. >+COMPILE_ASSERT_MATCHING_ENUM(EWK_PAGINATION_MODE_UNPAGINATED, WebCore::Pagination::Unpaginated); >+COMPILE_ASSERT_MATCHING_ENUM(EWK_PAGINATION_MODE_LEFT_TO_RIGHT, WebCore::Pagination::LeftToRightPaginated); >+COMPILE_ASSERT_MATCHING_ENUM(EWK_PAGINATION_MODE_RIGHT_TO_LEFT, WebCore::Pagination::RightToLeftPaginated); >+COMPILE_ASSERT_MATCHING_ENUM(EWK_PAGINATION_MODE_TOP_TO_BOTTOM, WebCore::Pagination::TopToBottomPaginated); >+COMPILE_ASSERT_MATCHING_ENUM(EWK_PAGINATION_MODE_BOTTOM_TO_TOP, WebCore::Pagination::BottomToTopPaginated); >+ >+Eina_Bool ewk_view_pagination_mode_set(Evas_Object* ewkView, Ewk_Pagination_Mode mode) >+{ >+ EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, false); >+ EWK_VIEW_IMPL_GET_OR_RETURN(smartData, impl, false); >+ >+ impl->pageProxy->setPaginationMode(static_cast<WebCore::Pagination::Mode>(mode)); >+ >+ return true; >+} >+ >+Ewk_Pagination_Mode ewk_view_pagination_mode_get(const Evas_Object* ewkView) >+{ >+ EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, EWK_PAGINATION_MODE_INVALID); >+ EWK_VIEW_IMPL_GET_OR_RETURN(smartData, impl, EWK_PAGINATION_MODE_INVALID); >+ >+ return static_cast<Ewk_Pagination_Mode>(impl->pageProxy->paginationMode()); >+} >diff --git a/Source/WebKit2/UIProcess/API/efl/ewk_view.h b/Source/WebKit2/UIProcess/API/efl/ewk_view.h >index 39210d2e0814a707d68161bf7fa27b6dfe0ad398..6beabaf661a295777470eb827ebf66546facfd93 100644 >--- a/Source/WebKit2/UIProcess/API/efl/ewk_view.h >+++ b/Source/WebKit2/UIProcess/API/efl/ewk_view.h >@@ -271,6 +271,19 @@ enum Ewk_Find_Options { > typedef enum Ewk_Find_Options Ewk_Find_Options; > > /** >+ * Enum values used to set pagination mode. >+ */ >+typedef enum { >+ EWK_PAGINATION_MODE_INVALID = -1, /**< invalid pagination mode that will be returned when error occured. */ >+ EWK_PAGINATION_MODE_UNPAGINATED, /**< default mode for pagination. not paginated */ >+ EWK_PAGINATION_MODE_LEFT_TO_RIGHT, /**< go to the next page with scrolling left to right horizontally. */ >+ EWK_PAGINATION_MODE_RIGHT_TO_LEFT, /**< go to the next page with scrolling right to left horizontally. */ >+ EWK_PAGINATION_MODE_TOP_TO_BOTTOM, /**< go to the next page with scrolling top to bottom vertically. */ >+ EWK_PAGINATION_MODE_BOTTOM_TO_TOP, /**< go to the next page with scrolling bottom to top vertically. */ >+ EWK_PAGINATION_MODE_END /**< number of pagination mode */ >+} Ewk_Pagination_Mode; >+ >+/** > * Sets the smart class APIs, enabling view to be inherited. > * > * @param api class definition to set, all members with the >@@ -793,6 +806,29 @@ EAPI Eina_Bool ewk_view_inspector_show(Evas_Object *o); > */ > EAPI Eina_Bool ewk_view_inspector_close(Evas_Object *o); > >+ >+/** >+ * Set pagination mode to the current web page. >+ * >+ * @param o view object to set the pagenation mode >+ * @param mode The Ewk_Pagination_Mode to set >+ * >+ * @return @c EINA_TRUE on success or @c EINA_FALSE on failure >+ */ >+EAPI Eina_Bool ewk_view_pagination_mode_set(Evas_Object *o, Ewk_Pagination_Mode mode); >+ >+/** >+ * Get pagination mode of the current web page. >+ * >+ * The default value is EWK_PAGINATION_MODE_UNPAGINATED. >+ * When error occured, EWK_PAGINATION_MODE_INVALID is returned. >+ * >+ * @param o view object to get the pagination mode >+ * >+ * @return The pagination mode of the current web page >+ */ >+EAPI Ewk_Pagination_Mode ewk_view_pagination_mode_get(const Evas_Object *o); >+ > #ifdef __cplusplus > } > #endif >diff --git a/Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_view.cpp b/Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_view.cpp >index 11affd9c4e7db8e64dd02efc0e67c1031d742e81..c0dd89bff1a9b14af0615ccb5c480b7b522d15d7 100644 >--- a/Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_view.cpp >+++ b/Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_view.cpp >@@ -967,3 +967,33 @@ TEST_F(EWK2UnitTestBase, ewk_view_scale) > ASSERT_TRUE(loadUrlSync(environment->defaultTestPageUrl())); > ASSERT_FLOAT_EQ(1, ewk_view_scale_get(webView())); > } >+ >+ >+TEST_F(EWK2UnitTestBase, ewk_view_pagination) >+{ >+ ASSERT_TRUE(loadUrlSync(environment->defaultTestPageUrl())); >+ >+ // Default pagination value is EWK_PAGINATION_MODE_UNPAGINATED >+ ASSERT_EQ(EWK_PAGINATION_MODE_UNPAGINATED, ewk_view_pagination_mode_get(webView())); >+ >+ ASSERT_TRUE(ewk_view_pagination_mode_set(webView(), EWK_PAGINATION_MODE_LEFT_TO_RIGHT)); >+ // Reload page to check the pagination mode. >+ ASSERT_TRUE(loadUrlSync(environment->defaultTestPageUrl())); >+ ASSERT_EQ(EWK_PAGINATION_MODE_LEFT_TO_RIGHT, ewk_view_pagination_mode_get(webView())); >+ >+ ASSERT_TRUE(ewk_view_pagination_mode_set(webView(), EWK_PAGINATION_MODE_RIGHT_TO_LEFT)); >+ ASSERT_TRUE(loadUrlSync(environment->defaultTestPageUrl())); >+ ASSERT_EQ(EWK_PAGINATION_MODE_RIGHT_TO_LEFT, ewk_view_pagination_mode_get(webView())); >+ >+ ASSERT_TRUE(ewk_view_pagination_mode_set(webView(), EWK_PAGINATION_MODE_TOP_TO_BOTTOM)); >+ ASSERT_TRUE(loadUrlSync(environment->defaultTestPageUrl())); >+ ASSERT_EQ(EWK_PAGINATION_MODE_TOP_TO_BOTTOM, ewk_view_pagination_mode_get(webView())); >+ >+ ASSERT_TRUE(ewk_view_pagination_mode_set(webView(), EWK_PAGINATION_MODE_BOTTOM_TO_TOP)); >+ ASSERT_TRUE(loadUrlSync(environment->defaultTestPageUrl())); >+ ASSERT_EQ(EWK_PAGINATION_MODE_BOTTOM_TO_TOP, ewk_view_pagination_mode_get(webView())); >+ >+ ASSERT_TRUE(ewk_view_pagination_mode_set(webView(), EWK_PAGINATION_MODE_UNPAGINATED)); >+ ASSERT_TRUE(loadUrlSync(environment->defaultTestPageUrl())); >+ ASSERT_EQ(EWK_PAGINATION_MODE_UNPAGINATED, ewk_view_pagination_mode_get(webView())); >+}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 100213
:
170340
|
170572
|
170582
|
170603
|
170621