Changeset 161526 in webkit


Ignore:
Timestamp:
Jan 8, 2014 4:59:16 PM (10 years ago)
Author:
ryuan.choi@samsung.com
Message:

[EFL] Merge ewk_view_single into ewk_view
https://bugs.webkit.org/show_bug.cgi?id=126508

Reviewed by Gyuyoung Kim.

Source/WebKit:

  • PlatformEfl.cmake: Removed ewk_view_single.cpp.

Source/WebKit/efl:

Since ewk_view_tiled is removed at r161134, we don't need to keep
ewk_view_single out of ewk_view.cpp.

This patch moves the logic of ewk_view_single to ewk_view and refactors it.
In addition, replaces 0.00001 to episilon.

  • ewk/ewk_view.cpp:

(_ewk_view_smart_add):
(_ewk_view_smart_resize): Merged with the logic of ewk_view_single.
(_ewk_view_screen_move): Moved from ewk_view_single.cpp.
(_ewk_view_scroll_process): Ditto.
(_ewk_view_smart_scrolls_process): Ditto.
(_ewk_view_smart_repaints_process): Ditto.
(_ewk_view_smart_calculate): Removed unnecessary check routine for scrolls_process.
(_ewk_view_smart_zoom_weak_set):
(_ewk_view_smart_zoom_weak_smooth_scale_set):
(ewk_view_base_smart_set): Merged smart method of ewk_view_single.
(ewk_view_single_smart_set):
(_ewk_view_single_smart_class_new):
(ewk_view_single_add):
(ewk_view_bg_color_set):
(ewk_view_pre_render_region):
(ewk_view_scrolls_process):

  • ewk/ewk_view.h:
  • ewk/ewk_view_private.h: Removed unncessary functions.
  • ewk/ewk_view_single.cpp: Removed.
Location:
trunk/Source/WebKit
Files:
1 deleted
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r161525 r161526  
     12014-01-08  Ryuan Choi  <ryuan.choi@samsung.com>
     2
     3        [EFL] Merge ewk_view_single into ewk_view
     4        https://bugs.webkit.org/show_bug.cgi?id=126508
     5
     6        Reviewed by Gyuyoung Kim.
     7
     8        * PlatformEfl.cmake: Removed ewk_view_single.cpp.
     9
    1102014-01-08  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
    211
  • trunk/Source/WebKit/PlatformEfl.cmake

    r161525 r161526  
    143143    efl/ewk/ewk_touch_event.cpp
    144144    efl/ewk/ewk_view.cpp
    145     efl/ewk/ewk_view_single.cpp
    146145    efl/ewk/ewk_web_database.cpp
    147146    efl/ewk/ewk_window_features.cpp
  • trunk/Source/WebKit/efl/ChangeLog

    r161518 r161526  
     12014-01-08  Ryuan Choi  <ryuan.choi@samsung.com>
     2
     3        [EFL] Merge ewk_view_single into ewk_view
     4        https://bugs.webkit.org/show_bug.cgi?id=126508
     5
     6        Reviewed by Gyuyoung Kim.
     7
     8        Since ewk_view_tiled is removed at r161134, we don't need to keep
     9        ewk_view_single out of ewk_view.cpp.
     10
     11        This patch moves the logic of ewk_view_single to ewk_view and refactors it.
     12        In addition, replaces 0.00001 to episilon.
     13
     14        * ewk/ewk_view.cpp:
     15        (_ewk_view_smart_add):
     16        (_ewk_view_smart_resize): Merged with the logic of ewk_view_single.
     17        (_ewk_view_screen_move): Moved from ewk_view_single.cpp.
     18        (_ewk_view_scroll_process): Ditto.
     19        (_ewk_view_smart_scrolls_process): Ditto.
     20        (_ewk_view_smart_repaints_process): Ditto.
     21        (_ewk_view_smart_calculate): Removed unnecessary check routine for scrolls_process.
     22        (_ewk_view_smart_zoom_weak_set):
     23        (_ewk_view_smart_zoom_weak_smooth_scale_set):
     24        (ewk_view_base_smart_set): Merged smart method of ewk_view_single.
     25        (ewk_view_single_smart_set):
     26        (_ewk_view_single_smart_class_new):
     27        (ewk_view_single_add):
     28        (ewk_view_bg_color_set):
     29        (ewk_view_pre_render_region):
     30        (ewk_view_scrolls_process):
     31        * ewk/ewk_view.h:
     32        * ewk/ewk_view_private.h: Removed unncessary functions.
     33        * ewk/ewk_view_single.cpp: Removed.
     34
    1352014-01-08  Anders Carlsson  <andersca@apple.com>
    236
  • trunk/Source/WebKit/efl/ewk/ewk_view.cpp

    r161223 r161526  
    907907    const Evas_Smart_Class* smartClass = evas_smart_class_get(smart);
    908908    const Ewk_View_Smart_Class* api = reinterpret_cast<const Ewk_View_Smart_Class*>(smartClass);
    909     EINA_SAFETY_ON_NULL_RETURN(api->backing_store_add);
    910909    EWK_VIEW_SD_GET(ewkView, smartData);
    911910
     
    935934    EWK_VIEW_PRIV_GET(smartData, priv);
    936935
    937     smartData->backing_store = api->backing_store_add(smartData);
    938     if (!smartData->backing_store) {
     936    smartData->backing_store = evas_object_image_add(smartData->base.evas);
     937    if (EINA_UNLIKELY(!smartData->backing_store)) {
    939938        ERR("Could not create backing store object.");
    940939        return;
    941940    }
    942941
     942    const Ecore_Evas* ecoreEvas = ecore_evas_ecore_evas_get(smartData->base.evas);
     943    const char* engine = ecore_evas_engine_name_get(ecoreEvas);
     944    if (!strncmp(engine, "opengl_x11", strlen("opengl_x11")))
     945        evas_object_image_content_hint_set(smartData->backing_store, EVAS_IMAGE_CONTENT_HINT_DYNAMIC);
     946
     947    evas_object_image_alpha_set(smartData->backing_store, false);
     948    evas_object_image_smooth_scale_set(smartData->backing_store, smartData->zoom_weak_smooth_scale);
     949    evas_object_pass_events_set(smartData->backing_store, true);
    943950    evas_object_smart_member_add(smartData->backing_store, ewkView);
    944951    evas_object_show(smartData->backing_store);
    945     evas_object_pass_events_set(smartData->backing_store, true);
    946952
    947953    smartData->events_rect = evas_object_rectangle_add(smartData->base.evas);
     
    9991005    // these should be queued and processed in calculate as well!
    10001006    evas_object_resize(smartData->backing_store, w, h);
     1007    evas_object_image_size_set(smartData->backing_store, w, h);
    10011008
    10021009    smartData->changed.size = true;
    10031010    _ewk_view_smart_changed(smartData);
     1011
     1012    if (smartData->animated_zoom.zoom.current < std::numeric_limits<float>::epsilon()) {
     1013        Evas_Object* clip = evas_object_clip_get(smartData->backing_store);
     1014        Evas_Coord x, y, contentWidth, contentHeight;
     1015        evas_object_image_fill_set(smartData->backing_store, 0, 0, w, h);
     1016        evas_object_geometry_get(smartData->backing_store, &x, &y, 0, 0);
     1017        evas_object_move(clip, x, y);
     1018        ewk_frame_contents_size_get(smartData->main_frame, &contentWidth, &contentHeight);
     1019        if (w > contentWidth)
     1020            w = contentWidth;
     1021        if (h > contentHeight)
     1022            h = contentHeight;
     1023        evas_object_resize(clip, w, h);
     1024    }
    10041025}
    10051026
     
    10111032}
    10121033
     1034static inline void _ewk_view_screen_move(uint32_t* image, size_t destinationX, size_t destinationY, size_t sourceX, size_t sourceY, size_t copyWidth, size_t copyHeight, size_t imageWidth)
     1035{
     1036    uint32_t* sourceBegin = image + (imageWidth * sourceY) + sourceX;
     1037    uint32_t* destinationBegin = image + (imageWidth * destinationY) + destinationX;
     1038
     1039    size_t copyLength = copyWidth * 4;
     1040
     1041    int moveLineUpDown;
     1042    int row;
     1043
     1044    if (sourceY >= destinationY) {
     1045        row = 0;
     1046        moveLineUpDown = 1;
     1047    } else {
     1048        row = copyHeight - 1;
     1049        moveLineUpDown = -1;
     1050    }
     1051
     1052    uint32_t* source, * destination;
     1053    if ((destinationX > sourceX && destinationX < sourceX + copyWidth)
     1054        || (destinationX < sourceX && destinationX + copyWidth > sourceX)) {
     1055        for (size_t i = 0; i < copyHeight; ++i, row += moveLineUpDown) {
     1056            source = sourceBegin + (imageWidth * row);
     1057            destination = destinationBegin + (imageWidth * row);
     1058            memmove(destination, source, copyLength);
     1059        }
     1060    } else {
     1061        for (size_t i = 0; i < copyHeight; ++i, row += moveLineUpDown) {
     1062            source = sourceBegin + (imageWidth * row);
     1063            destination = destinationBegin + (imageWidth * row);
     1064            memcpy(destination, source, copyLength);
     1065        }
     1066    }
     1067}
     1068
     1069static inline void _ewk_view_scroll_process(Ewk_View_Smart_Data* smartData, void* pixels, Evas_Coord width, Evas_Coord height, const WebCore::IntSize& scrollOffset, const WebCore::IntRect& rectToScroll)
     1070{
     1071    int scrollX = rectToScroll.x();
     1072    int scrollY = rectToScroll.y();
     1073    int scrollWidth = rectToScroll.width();
     1074    int scrollHeight = rectToScroll.height();
     1075
     1076    if (abs(scrollOffset.width()) >= scrollWidth || abs(scrollOffset.height()) >= scrollHeight) {
     1077        ewk_view_repaint_add(smartData->_priv, scrollX, scrollY, scrollWidth, scrollHeight);
     1078        return;
     1079    }
     1080
     1081    if (scrollX < 0) {
     1082        scrollWidth += scrollX;
     1083        scrollX = 0;
     1084    }
     1085    if (scrollY < 0) {
     1086        scrollHeight += scrollY;
     1087        scrollY = 0;
     1088    }
     1089
     1090    if (scrollX + scrollWidth > width)
     1091        scrollWidth = width - scrollX;
     1092    if (scrollY + scrollHeight > height)
     1093        scrollHeight = height - scrollY;
     1094
     1095    if (scrollWidth <= 0 || scrollHeight <= 0)
     1096        return;
     1097
     1098    int sourceX = scrollOffset.width() < 0 ? abs(scrollOffset.width()) : 0;
     1099    int sourceY = scrollOffset.height() < 0 ? abs(scrollOffset.height()) : 0;
     1100    int destinationX = scrollOffset.width() < 0 ? 0 : scrollOffset.width();
     1101    int destinationY = scrollOffset.height() < 0 ? 0 : scrollOffset.height();
     1102    int copyWidth = scrollWidth - abs(scrollOffset.width());
     1103    int copyHeight = scrollHeight - abs(scrollOffset.height());
     1104    if (scrollOffset.width() || scrollOffset.height()) {
     1105        _ewk_view_screen_move(static_cast<uint32_t*>(pixels), destinationX, destinationY, sourceX, sourceY, copyWidth, copyHeight, width);
     1106        evas_object_image_data_update_add(smartData->backing_store, destinationX, destinationY, copyWidth, copyHeight);
     1107    }
     1108
     1109    Eina_Rectangle verticalUpdate;
     1110    verticalUpdate.x = destinationX ? 0 : copyWidth - 1;
     1111    verticalUpdate.y = 0;
     1112    verticalUpdate.w = abs(scrollOffset.width());
     1113    verticalUpdate.h = scrollHeight;
     1114    if (verticalUpdate.w && verticalUpdate.h)
     1115        ewk_view_repaint_add(smartData->_priv, verticalUpdate.x, verticalUpdate.y, verticalUpdate.w, verticalUpdate.h);
     1116
     1117    Eina_Rectangle horizontalUpdate;
     1118    horizontalUpdate.x = destinationX;
     1119    horizontalUpdate.y = destinationY ? 0 : copyHeight - 1;
     1120    horizontalUpdate.w = copyWidth;
     1121    horizontalUpdate.h = abs(scrollOffset.height());
     1122    if (horizontalUpdate.w && horizontalUpdate.h)
     1123        ewk_view_repaint_add(smartData->_priv, horizontalUpdate.x, horizontalUpdate.y, horizontalUpdate.w, horizontalUpdate.h);
     1124}
     1125
     1126static void _ewk_view_smart_scrolls_process(Ewk_View_Smart_Data* smartData)
     1127{
     1128    Evas_Coord imageWidth, imageHeight;
     1129    const WTF::Vector<WebCore::IntSize>& scrollOffsets = smartData->_priv->m_scrollOffsets;
     1130    const WTF::Vector<WebCore::IntRect>& rectsToScroll = smartData->_priv->m_rectsToScroll;
     1131
     1132    if (!scrollOffsets.size())
     1133        return;
     1134
     1135    evas_object_image_size_get(smartData->backing_store, &imageWidth, &imageHeight);
     1136
     1137    WebCore::IntRect rectToScroll(0, 0, imageWidth, imageHeight);
     1138    WebCore::IntSize scrollOffset;
     1139    for (size_t i = 0; i < scrollOffsets.size(); ++i) {
     1140        rectToScroll.intersect(rectsToScroll[i]);
     1141        scrollOffset += scrollOffsets[i];
     1142    }
     1143
     1144    if (scrollOffset.isZero())
     1145        return;
     1146
     1147    void* pixels = evas_object_image_data_get(smartData->backing_store, 1);
     1148    _ewk_view_scroll_process(smartData, pixels, imageWidth, imageHeight, scrollOffset, rectToScroll);
     1149
     1150    evas_object_image_data_set(smartData->backing_store, pixels);
     1151
     1152    return;
     1153}
     1154
     1155static Eina_Bool _ewk_view_smart_repaints_process(Ewk_View_Smart_Data* smartData)
     1156{
     1157    if (smartData->animated_zoom.zoom.current < std::numeric_limits<float>::epsilon()) {
     1158        Evas_Object* clip = evas_object_clip_get(smartData->backing_store);
     1159
     1160        // reset effects of zoom_weak_set()
     1161        evas_object_image_fill_set(smartData->backing_store, 0, 0, smartData->view.w, smartData->view.h);
     1162        evas_object_move(clip, smartData->view.x, smartData->view.y);
     1163
     1164        Evas_Coord width = smartData->view.w;
     1165        Evas_Coord height = smartData->view.h;
     1166
     1167        Evas_Coord centerWidth, centerHeight;
     1168        ewk_frame_contents_size_get(smartData->main_frame, &centerWidth, &centerHeight);
     1169        if (width > centerWidth)
     1170            width = centerWidth;
     1171
     1172        if (height > centerHeight)
     1173            height = centerHeight;
     1174
     1175        evas_object_resize(clip, width, height);
     1176    }
     1177
     1178    Evas_Coord imageWidth, imageHeight;
     1179    evas_object_image_size_get(smartData->backing_store, &imageWidth, &imageHeight);
     1180
     1181    Eina_Tiler* tiler = eina_tiler_new(imageWidth, imageHeight);
     1182    if (!tiler) {
     1183        ERR("could not create tiler %dx%d", imageWidth, imageHeight);
     1184        return false;
     1185    }
     1186
     1187    ewk_view_layout_if_needed_recursive(smartData->_priv);
     1188
     1189    size_t count;
     1190    const Eina_Rectangle* paintRequest = ewk_view_repaints_pop(smartData->_priv, &count);
     1191    const Eina_Rectangle* paintRequestEnd = paintRequest + count;
     1192    for (; paintRequest < paintRequestEnd; paintRequest++)
     1193        eina_tiler_rect_add(tiler, paintRequest);
     1194
     1195    Eina_Iterator* iterator = eina_tiler_iterator_new(tiler);
     1196    if (!iterator) {
     1197        ERR("could not get iterator for tiler");
     1198        eina_tiler_free(tiler);
     1199        return false;
     1200    }
     1201
     1202#if USE(TILED_BACKING_STORE)
     1203    WebCore::Frame* mainFrame = EWKPrivate::coreFrame(smartData->main_frame);
     1204    if (mainFrame && mainFrame->tiledBackingStore())
     1205        mainFrame->tiledBackingStore()->coverWithTilesIfNeeded();
     1206#endif
     1207
     1208    Ewk_Paint_Context* context = ewk_paint_context_from_image_new(smartData->backing_store);
     1209    ewk_paint_context_save(context);
     1210
     1211    Eina_Rectangle* rect;
     1212    EINA_ITERATOR_FOREACH(iterator, rect) {
     1213        ewk_view_paint(smartData->_priv, context, rect);
     1214        evas_object_image_data_update_add(smartData->backing_store, rect->x, rect->y, rect->w, rect->h);
     1215    }
     1216
     1217#if ENABLE(INSPECTOR)
     1218    WebCore::Page* page = EWKPrivate::corePage(smartData->self);
     1219    if (page) {
     1220        WebCore::InspectorController* controller = page->inspectorController();
     1221        if (controller->highlightedNode())
     1222            controller->drawHighlight(*context->graphicContext);
     1223    }
     1224#endif
     1225
     1226    ewk_paint_context_restore(context);
     1227    ewk_paint_context_free(context);
     1228
     1229    eina_tiler_free(tiler);
     1230    eina_iterator_free(iterator);
     1231
     1232    return true;
     1233}
     1234
    10131235static void _ewk_view_smart_calculate(Evas_Object* ewkView)
    10141236{
     
    10161238    EWK_VIEW_PRIV_GET(smartData, priv);
    10171239    EINA_SAFETY_ON_NULL_RETURN(smartData->api->contents_resize);
    1018     EINA_SAFETY_ON_NULL_RETURN(smartData->api->scrolls_process);
    10191240    EINA_SAFETY_ON_NULL_RETURN(smartData->api->repaints_process);
    10201241    Evas_Coord x, y, width, height;
     
    10601281    smartData->changed.position = false;
    10611282
    1062     if (!smartData->api->scrolls_process(smartData))
    1063         ERR("failed to process scrolls.");
     1283    smartData->api->scrolls_process(smartData);
    10641284    _ewk_view_scrolls_flush(priv);
    10651285
     
    11861406    return ((priv->animatedZoom.zoom.range * delta)
    11871407            + priv->animatedZoom.zoom.start);
     1408}
     1409
     1410static Eina_Bool _ewk_view_smart_zoom_weak_set(Ewk_View_Smart_Data* smartData, float zoom, Evas_Coord centerX, Evas_Coord centerY)
     1411{
     1412    float scale = zoom / smartData->animated_zoom.zoom.start;
     1413    Evas_Coord w = smartData->view.w * scale;
     1414    Evas_Coord h = smartData->view.h * scale;
     1415    Evas_Coord deltaX, deltaY, contentWidth, contentHeight;
     1416    Evas_Object* clip = evas_object_clip_get(smartData->backing_store);
     1417
     1418    ewk_frame_contents_size_get(smartData->main_frame, &contentWidth, &contentHeight);
     1419    if (smartData->view.w > 0 && smartData->view.h > 0) {
     1420        deltaX = (w * (smartData->view.w - centerX)) / smartData->view.w;
     1421        deltaY = (h * (smartData->view.h - centerY)) / smartData->view.h;
     1422    } else {
     1423        deltaX = 0;
     1424        deltaY = 0;
     1425    }
     1426
     1427    evas_object_image_fill_set(smartData->backing_store, centerX + deltaX, centerY + deltaY, w, h);
     1428
     1429    if (smartData->view.w > 0 && smartData->view.h > 0) {
     1430        deltaX = ((smartData->view.w - w) * centerX) / smartData->view.w;
     1431        deltaY = ((smartData->view.h - h) * centerY) / smartData->view.h;
     1432    } else {
     1433        deltaX = 0;
     1434        deltaY = 0;
     1435    }
     1436    evas_object_move(clip, smartData->view.x + deltaX, smartData->view.y + deltaY);
     1437
     1438    if (contentWidth < smartData->view.w)
     1439        w = contentWidth * scale;
     1440    if (contentHeight < smartData->view.h)
     1441        h = contentHeight * scale;
     1442    evas_object_resize(clip, w, h);
     1443
     1444    return true;
     1445}
     1446
     1447static void _ewk_view_smart_zoom_weak_smooth_scale_set(Ewk_View_Smart_Data* smartData, Eina_Bool smooth_scale)
     1448{
     1449    evas_object_image_smooth_scale_set(smartData->backing_store, smooth_scale);
    11881450}
    11891451
     
    12891551
    12901552    api->contents_resize = _ewk_view_smart_contents_resize;
     1553    api->scrolls_process = _ewk_view_smart_scrolls_process;
     1554    api->repaints_process = _ewk_view_smart_repaints_process;
    12911555    api->zoom_set = _ewk_view_smart_zoom_set;
     1556    api->zoom_weak_set = _ewk_view_smart_zoom_weak_set;
     1557    api->zoom_weak_smooth_scale_set = _ewk_view_smart_zoom_weak_smooth_scale_set;
    12921558    api->flush = _ewk_view_smart_flush;
    12931559    api->pre_render_region = _ewk_view_smart_pre_render_region;
     
    13151581
    13161582    return true;
     1583}
     1584
     1585Eina_Bool ewk_view_single_smart_set(Ewk_View_Smart_Class* api)
     1586{
     1587    return ewk_view_base_smart_set(api);
     1588}
     1589
     1590static inline Evas_Smart* _ewk_view_single_smart_class_new(void)
     1591{
     1592    static Ewk_View_Smart_Class api = EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION(ewkViewSingleName);
     1593    static Evas_Smart* smart = 0;
     1594
     1595    if (EINA_UNLIKELY(!smart)) {
     1596        ewk_view_base_smart_set(&api);
     1597        smart = evas_smart_class_new(&api.sc);
     1598    }
     1599
     1600    return smart;
     1601}
     1602
     1603Evas_Object* ewk_view_single_add(Evas* canvas)
     1604{
     1605    return evas_object_smart_add(canvas, _ewk_view_single_smart_class_new());
    13171606}
    13181607
     
    14251714    EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData);
    14261715    EINA_SAFETY_ON_NULL_RETURN(smartData->api);
    1427     EINA_SAFETY_ON_NULL_RETURN(smartData->api->bg_color_set);
    14281716
    14291717    if (alpha < 0) {
     
    14541742    smartData->bg_color.a = alpha;
    14551743
    1456     smartData->api->bg_color_set(smartData, red, green, blue, alpha);
     1744    evas_object_image_alpha_set(smartData->backing_store, alpha < 255);
    14571745
    14581746    WebCore::FrameView* view = smartData->_priv->mainFrame->view();
     
    19272215    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, false);
    19282216    EINA_SAFETY_ON_NULL_RETURN_VAL(smartData->api->pre_render_region, false);
    1929     float currentZoom;
    19302217    Evas_Coord contentsWidth, contentsHeight;
    19312218
     
    19362223        return false;
    19372224
    1938     currentZoom = ewk_frame_page_zoom_get(smartData->main_frame);
    1939 
    1940     if (currentZoom < 0.00001)
     2225    float currentZoom = ewk_frame_page_zoom_get(smartData->main_frame);
     2226    if (currentZoom < std::numeric_limits<float>::epsilon())
    19412227        return false;
     2228
    19422229    if (!ewk_frame_contents_size_get(smartData->main_frame, &contentsWidth, &contentsHeight))
    19432230        return false;
     
    27273014}
    27283015
    2729 const Vector<WebCore::IntSize>& ewk_view_scroll_offsets_get(const Ewk_View_Private_Data* priv)
    2730 {
    2731     ASSERT(priv);
    2732     return priv->m_scrollOffsets;
    2733 }
    2734 
    2735 const Vector<WebCore::IntRect>& ewk_view_scroll_rects_get(const Ewk_View_Private_Data* priv)
    2736 {
    2737     ASSERT(priv);
    2738     return priv->m_rectsToScroll;
    2739 }
    2740 
    27413016/**
    27423017 * Add a new repaint request to queue.
     
    27833058    EINA_SAFETY_ON_NULL_RETURN(smartData);
    27843059    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv);
    2785     if (!smartData->api->scrolls_process(smartData))
    2786         ERR("failed to process scrolls.");
     3060
     3061    smartData->api->scrolls_process(smartData);
    27873062    _ewk_view_scrolls_flush(priv);
    27883063}
  • trunk/Source/WebKit/efl/ewk/ewk_view.h

    r161134 r161526  
    154154    Evas_Object *(*window_create)(Ewk_View_Smart_Data *sd, Eina_Bool javascript, const Ewk_Window_Features *window_features); /**< creates a new window, requested by webkit */
    155155    void (*window_close)(Ewk_View_Smart_Data *sd); /**< closes a window */
    156     // hooks to allow different backing stores
    157     Evas_Object *(*backing_store_add)(Ewk_View_Smart_Data *sd); /**< must be defined */
    158     Eina_Bool (*scrolls_process)(Ewk_View_Smart_Data *sd); /**< must be defined */
     156    void (*scrolls_process)(Ewk_View_Smart_Data *sd); /**< must be defined */
    159157    Eina_Bool (*repaints_process)(Ewk_View_Smart_Data *sd); /**< must be defined */
    160158    Eina_Bool (*contents_resize)(Ewk_View_Smart_Data *sd, int w, int h);
     
    162160    Eina_Bool (*zoom_weak_set)(Ewk_View_Smart_Data *sd, float zoom, Evas_Coord cx, Evas_Coord cy);
    163161    void (*zoom_weak_smooth_scale_set)(Ewk_View_Smart_Data *sd, Eina_Bool smooth_scale);
    164     void (*bg_color_set)(Ewk_View_Smart_Data *sd, unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha);
    165162    void (*flush)(Ewk_View_Smart_Data *sd);
    166163    Eina_Bool (*pre_render_region)(Ewk_View_Smart_Data *sd, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, float zoom);
     
    204201 * in the @a Ewk_View_Smart_Class structure.
    205202 */
    206 #define EWK_VIEW_SMART_CLASS_VERSION 7UL
     203#define EWK_VIEW_SMART_CLASS_VERSION 8UL
    207204
    208205/**
     
    216213 * @see EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION
    217214 */
    218 #define EWK_VIEW_SMART_CLASS_INIT(smart_class_init) {smart_class_init, EWK_VIEW_SMART_CLASS_VERSION, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
     215#define EWK_VIEW_SMART_CLASS_INIT(smart_class_init) {smart_class_init, EWK_VIEW_SMART_CLASS_VERSION, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
    219216
    220217/**
  • trunk/Source/WebKit/efl/ewk/ewk_view_private.h

    r161134 r161526  
    149149
    150150const Eina_Rectangle* ewk_view_repaints_pop(Ewk_View_Private_Data* priv, size_t* count);
    151 const Vector<WebCore::IntSize>& ewk_view_scroll_offsets_get(const Ewk_View_Private_Data*);
    152 const Vector<WebCore::IntRect>& ewk_view_scroll_rects_get(const Ewk_View_Private_Data*);
    153151
    154152void ewk_view_repaint_add(Ewk_View_Private_Data* priv, Evas_Coord x, Evas_Coord y, Evas_Coord width, Evas_Coord height);
Note: See TracChangeset for help on using the changeset viewer.