From 7e64e1780dd8f40528017724fbb8ebd94ee9f45b Mon Sep 17 00:00:00 2001 From: Youmin Ha Date: Fri, 14 Dec 2012 19:11:42 +0900 Subject: [PATCH] Export 0.2.3 --- Makefile | 8 +- demos/tizen-winsets/index.html | 66 +------ demos/tizen-winsets/main.js | 10 - .../tizen-winsets/tips/list-sample/expandable.html | 13 -- demos/tizen-winsets/tips/list-sample/expandable.js | 22 --- demos/tizen-winsets/widgets/button/button.html | 6 +- demos/tizen-winsets/widgets/ctxpopup.html | 67 +++---- demos/tizen-winsets/widgets/ctxpopup.js | 12 +- demos/tizen-winsets/widgets/day-selector.html | 53 ------ ...virtualgrid-auto.html => virtualgrid-size.html} | 4 +- .../tizen-winsets/widgets/grid/virtualgrid-x.html | 2 +- .../widgets/list/list-dialogue-edit.html | 50 +++++ .../tizen-winsets/widgets/list/list-dialogue.html | 15 +- demos/tizen-winsets/widgets/list/list-edit.js | 17 ++ .../widgets/list/list-edit_field.html | 22 --- .../widgets/list/list-expandable.html | 43 ----- .../widgets/list/list-normal_anchor.html | 15 +- .../widgets/list/list-normal_anchor_h3.html | 15 +- .../widgets/list/list-normal_no_anchor.html | 15 +- .../widgets/list/list-normal_no_anchor_h3.html | 15 +- demos/tizen-winsets/widgets/list/list.html | 4 +- .../widgets/pagecontrol/pagecontrol-demo.js | 31 --- .../widgets/pagecontrol/pagecontrol.html | 20 -- .../widgets/pagelayout/backbutton-control.html | 14 +- .../widgets/pagelayout/backbutton-control.js | 13 +- .../backbutton/back-button-to-header.html | 2 +- .../pagelayout/backbutton/backbutton-normal.html | 19 +- .../pagelayout/backbutton/backbutton-normal2.html | 35 ---- .../pagelayout/backbutton/backbutton-normal3.html | 32 ---- .../dynamically-attatch-backbutton-to-footer.html | 11 +- .../dynamically-attatch-backbutton-to-header.html | 11 +- .../pagelayout/backbutton/no-back-button.html | 17 +- .../widgets/pagelayout/backbutton/no-footer.html | 16 +- demos/tizen-winsets/widgets/switch/switch.html | 21 --- demos/tizen-winsets/widgets/switch/switch.js | 8 - .../tizen-winsets/widgets/switch/toggleswitch.html | 43 +++++ libs/patch/0014-JQM-add-TIZEN-back-btn.patch | 138 ++++++++++++++ ...d-back-btn-option-and-remove-jqm-back-btn.patch | 51 ----- .../0020-JQM-Apply-tizen-style-context-popup.patch | 167 ++++++++-------- libs/patch/0021-JQM-add-tizen-toggle-switch.patch | 86 +++++++++ packaging/web-ui-fw.spec | 23 ++- src/loader/loader.js | 4 +- src/themes/tizen/common/jquery.mobile.button.less | 45 +++-- .../tizen/common/jquery.mobile.listview.less | 117 ++++-------- src/themes/tizen/common/jquery.mobile.theme.less | 7 +- .../common/jquery.mobile.tizen.datetimepicker.less | 6 +- .../common/jquery.mobile.tizen.multimediaview.less | 130 +++++++------ .../tizen/common/jquery.mobile.tizen.progress.less | 56 +----- .../common/jquery.mobile.tizen.progressbar.less | 29 ++- .../jquery.mobile.tizen.scrollview.handler.less | 28 ++- .../tizen/common/jquery.mobile.tizen.slider.less | 57 +++--- .../common/jquery.mobile.tizen.toggleswitch.less | 159 +++++----------- .../images/controls/00_slider_popup_bg.png | Bin 0 -> 3580 bytes .../images/controls/button/00_button_back.png | Bin 0 -> 3870 bytes .../controls/button/00_button_back_press.png | Bin 0 -> 3261 bytes .../images/controls/button/00_button_check.png | Bin 0 -> 1389 bytes .../controls/button/00_button_check_press.png | Bin 0 -> 580 bytes .../images/controls/button/00_button_gear.png | Bin 0 -> 4892 bytes .../button/00_button_gear_press.png} | Bin 3378 -> 3342 bytes .../images/controls/button/00_button_grid.png | Bin 0 -> 6436 bytes .../controls/button/00_button_grid_press.png | Bin 0 -> 3551 bytes .../images/controls/button/00_button_home.png | Bin 0 -> 646 bytes .../controls/button/00_button_home_press.png | Bin 0 -> 659 bytes .../images/controls/button/00_button_refresh.png | Bin 0 -> 3249 bytes .../controls/button/00_button_refresh_press.png | Bin 0 -> 3161 bytes .../images/controls/button/00_button_search.png | Bin 0 -> 6166 bytes .../controls/button/00_button_search_press.png | Bin 0 -> 6180 bytes .../images/controls/button/00_button_star.png | Bin 0 -> 1601 bytes .../controls/button/00_button_star_press.png | Bin 0 -> 966 bytes .../images/controls/button/00_button_warning.png | Bin 343 -> 318 bytes .../controls/button/00_button_warning_press.png | Bin 0 -> 343 bytes src/themes/tizen/tizen-white/style.less | 23 ++- .../barlayout/js/jquery.mobile.tizen.barlayout.js | 124 ------------ .../common/js/jquery.mobile.tizen.scrollview.js | 209 +++++++++++---------- src/widgets/dayselector/css/dayselector.css | 25 --- .../js/jquery.mobile.tizen.dayselector.js | 185 ------------------ .../js/jquery.mobile.tizen.expandablelist.js | 192 ------------------- .../handler/js/jquery.tizen.scrollview.handler.js | 32 +++- .../js/jquery.mobile.tizen.multimediaview.js | 206 +++++++++++--------- .../js/jquery.mobile.tizen.nocontents.js | 179 ------------------ .../js/jquery.mobile.tizen.pagecontrol.js | 204 -------------------- .../js/jquery.mobile.tizen.pagelayout.js | 30 ++- .../js/jquery.mobile.tizen.popupwindow.js | 8 +- .../js/jquery.mobile.tizen.ctxpopup.js | 9 +- .../progress/js/jquery.mobile.tizen.progress.js | 16 +- .../js/jquery.mobile.tizen.progressbar.js | 2 +- src/widgets/swipe/js/jquery.mobile.tizen.swipe.js | 55 +++--- .../js/jquery.mobile.tizen.virtualgrid.js | 51 ++++- .../expandablelist/expandablelist-tests.js | 106 ----------- tests/unit-tests/expandablelist/index.html | 30 --- .../fastscroll-tests.js} | 12 +- .../{shortcutscroll => fastscroll}/index.html | 6 +- tests/unit-tests/nocontents/index.html | 80 -------- tests/unit-tests/nocontents/nocontents-tests.js | 47 ----- tests/unit-tests/pagecontrol/index.html | 30 --- tests/unit-tests/pagecontrol/pagecontrol-tests.js | 40 ---- tests/unit-tests/searchbar/index.html | 3 +- tests/unit-tests/searchbar/searchbar-tests.js | 35 ++-- tests/unit-tests/swipe/index.html | 84 +++++++++ tests/unit-tests/swipe/swipe-tests.js | 86 +++++++++ tests/unit-tests/swipelist/index.html | 82 -------- tests/unit-tests/swipelist/swipelist-tests.js | 85 --------- tests/unit-tests/tests.js | 8 +- 103 files changed, 1473 insertions(+), 2681 deletions(-) mode change 100644 => 100755 demos/tizen-winsets/index.html delete mode 100644 demos/tizen-winsets/tips/list-sample/expandable.html delete mode 100644 demos/tizen-winsets/tips/list-sample/expandable.js delete mode 100644 demos/tizen-winsets/widgets/day-selector.html rename demos/tizen-winsets/widgets/grid/{virtualgrid-auto.html => virtualgrid-size.html} (91%) create mode 100755 demos/tizen-winsets/widgets/list/list-dialogue-edit.html create mode 100755 demos/tizen-winsets/widgets/list/list-edit.js delete mode 100755 demos/tizen-winsets/widgets/list/list-edit_field.html delete mode 100755 demos/tizen-winsets/widgets/list/list-expandable.html delete mode 100644 demos/tizen-winsets/widgets/pagecontrol/pagecontrol-demo.js delete mode 100644 demos/tizen-winsets/widgets/pagecontrol/pagecontrol.html delete mode 100755 demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal2.html delete mode 100755 demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal3.html delete mode 100755 demos/tizen-winsets/widgets/switch/switch.html delete mode 100644 demos/tizen-winsets/widgets/switch/switch.js create mode 100755 demos/tizen-winsets/widgets/switch/toggleswitch.html create mode 100644 libs/patch/0014-JQM-add-TIZEN-back-btn.patch delete mode 100644 libs/patch/0014-JQM-add-back-btn-option-and-remove-jqm-back-btn.patch create mode 100644 libs/patch/0021-JQM-add-tizen-toggle-switch.patch mode change 100644 => 100755 src/themes/tizen/common/jquery.mobile.tizen.slider.less create mode 100644 src/themes/tizen/tizen-white/images/controls/00_slider_popup_bg.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_back.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_back_press.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_check.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_check_press.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_gear.png rename src/themes/tizen/tizen-white/images/{00_slider_popup_bg.png => controls/button/00_button_gear_press.png} (77%) create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_grid.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_grid_press.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_home.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_home_press.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_refresh.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_refresh_press.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_search.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_search_press.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_star.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_star_press.png create mode 100644 src/themes/tizen/tizen-white/images/controls/button/00_button_warning_press.png delete mode 100755 src/widgets/barlayout/js/jquery.mobile.tizen.barlayout.js delete mode 100644 src/widgets/dayselector/css/dayselector.css delete mode 100755 src/widgets/dayselector/js/jquery.mobile.tizen.dayselector.js delete mode 100644 src/widgets/expandablelist/js/jquery.mobile.tizen.expandablelist.js delete mode 100644 src/widgets/nocontents/js/jquery.mobile.tizen.nocontents.js delete mode 100644 src/widgets/pagecontrol/js/jquery.mobile.tizen.pagecontrol.js delete mode 100644 tests/unit-tests/expandablelist/expandablelist-tests.js delete mode 100644 tests/unit-tests/expandablelist/index.html rename tests/unit-tests/{shortcutscroll/shortcutscroll-tests.js => fastscroll/fastscroll-tests.js} (58%) rename tests/unit-tests/{shortcutscroll => fastscroll}/index.html (92%) delete mode 100755 tests/unit-tests/nocontents/index.html delete mode 100644 tests/unit-tests/nocontents/nocontents-tests.js delete mode 100644 tests/unit-tests/pagecontrol/index.html delete mode 100644 tests/unit-tests/pagecontrol/pagecontrol-tests.js create mode 100644 tests/unit-tests/swipe/index.html create mode 100644 tests/unit-tests/swipe/swipe-tests.js delete mode 100644 tests/unit-tests/swipelist/index.html delete mode 100644 tests/unit-tests/swipelist/swipelist-tests.js diff --git a/Makefile b/Makefile index 40ef885..f12346e 100755 --- a/Makefile +++ b/Makefile @@ -3,7 +3,7 @@ SHELL := /bin/bash ## Project setting DEBUG ?= yes PROJECT_NAME = tizen-web-ui-fw -VERSION = 0.1 +VERSION = 0.2 VERSION_COMPAT = PKG_VERSION = $(shell cat packaging/web-ui-fw.spec | grep Version: | sed -e "s@Version:\s*@@" ) THEME_NAME = default @@ -92,7 +92,7 @@ LIBS_CSS_FILES +=\ endif -all: libs_prepare third_party widgets libs_cleanup loader themes version_compat compress +all: libs_prepare third_party widgets libs_cleanup loader themes version version_compat compress libs_prepare: # Prepare libs/ build... @@ -183,7 +183,6 @@ widgets: init third_party loader: widgets globalize cat 'src/loader/loader.js' >> ${FW_JS} - echo '(function($$){$$.tizen.frameworkData.pkgVersion="$(PKG_VERSION)";}(jQuery));' >> ${FW_JS} globalize: widgets @@ -195,6 +194,9 @@ globalize: widgets themes: make -C src/themes || exit $? +version: loader themes + echo '(function($$){$$.tizen.frameworkData.pkgVersion="$(PKG_VERSION)";}(jQuery));' >> ${FW_JS} + echo "$(PKG_VERSION)" > ${FRAMEWORK_ROOT}/../VERSION compress: widgets loader themes # Javacript code compressing diff --git a/demos/tizen-winsets/index.html b/demos/tizen-winsets/index.html old mode 100644 new mode 100755 index bafebdb..936a807 --- a/demos/tizen-winsets/index.html +++ b/demos/tizen-winsets/index.html @@ -49,7 +49,7 @@
  • Controls
  • Button
  • Check
  • -
  • Switch
  • +
  • ToggleSwitch
  • Radio
  • Searchbar
  • Entry
  • @@ -59,9 +59,7 @@
  • Gallery
  • Segment Control
  • Group Control(new segment)
  • -
  • Day Selector
  • SelectionInfo
  • -
  • PageControl
  • Token Text Area
  • PageLayout
  • @@ -95,17 +93,12 @@
  • Small Popup
  • Small Popup Interval
  • -
  • No Contents
  • -
  • No Contents - Text
  • -
  • No Contents - Picture
  • -
  • No Contents - Multimedia
  • -
  • No Contents - Unnamed
  • -
  • Grid view
  • Virtual Grid
  • Virtual Grid - Rotation
  • Virtual Grid - List
  • Virtual Grid - X
  • +
  • Virtual Grid - Size
  • Multimedia view
  • Multimedia view
  • @@ -114,7 +107,6 @@
  • Using custom Globalize culture files
  • 2 line text
  • Example for using listview
  • -
  • Example for using expandable list
  • Page transitions
  • @@ -275,57 +267,7 @@ - -
    -
    -

    No Contents

    -
    -
    -
    -

    Text Type

    -

    Text

    -
    -
    -
    - -
    -
    -

    No Contents

    -
    -
    -
    -

    Picture Type

    -

    Text

    -
    -
    -
    - -
    -
    -

    No Contents

    -
    -
    -
    -

    Multimedia Type

    -

    Text

    -
    -
    -
    - -
    -
    -

    No Contents

    -
    -
    -
    -

    Unnamed Type

    -
    -
    -
    - - - @@ -333,12 +275,12 @@ - - + + diff --git a/demos/tizen-winsets/main.js b/demos/tizen-winsets/main.js index 4c95e6c..c81be57 100755 --- a/demos/tizen-winsets/main.js +++ b/demos/tizen-winsets/main.js @@ -120,16 +120,6 @@ $( document ).bind("pagecreate", function () { console.log('option header was expanded'); }); - //day-selector codes... - $("#day-selector-check-all").live('vclick', function () { - $("#dayselector1").dayselector('selectAll'); - }); - - $("#day-selector-get-days").live('vclick', function () { - var valuesStr = $("#dayselector1").dayselector('value').join(', '); - $(".selectedDay").text( valuesStr ); - }); - /* Gen list : Dummy DB load */ $(".virtuallist_demo_page").live("pagecreate", function () { /* ?_=ts code for no cache mechanism */ diff --git a/demos/tizen-winsets/tips/list-sample/expandable.html b/demos/tizen-winsets/tips/list-sample/expandable.html deleted file mode 100644 index bf980c7..0000000 --- a/demos/tizen-winsets/tips/list-sample/expandable.html +++ /dev/null @@ -1,13 +0,0 @@ -
    -
    -

    Single-Page Application

    -
    - -
    -
      -
    -
    - -
    -
    -
    diff --git a/demos/tizen-winsets/tips/list-sample/expandable.js b/demos/tizen-winsets/tips/list-sample/expandable.js deleted file mode 100644 index cfaecac..0000000 --- a/demos/tizen-winsets/tips/list-sample/expandable.js +++ /dev/null @@ -1,22 +0,0 @@ -$( document ).bind( "pagebeforeshow", function () { - var id = 0, - add_ex = function () { - var li = '
  • exp1 parent
  • ' + - '
  • exp1-sub 1
  • ' + - '
  • exp1-sub 2
  • '; - - $("#mylist").append( li ).trigger("create"); - }, - add_item = function () { - var li = '
  • exp1-sub 3
  • '; - - $("#mylist").append( li ).trigger("create"); - }; - - add_ex(); - $("#mylist").listview("refresh"); - - add_item(); - $("#mylist").listview("refresh"); - $("#exp1").expandablelist("refresh"); -}); diff --git a/demos/tizen-winsets/widgets/button/button.html b/demos/tizen-winsets/widgets/button/button.html index 8cda236..194c7cc 100755 --- a/demos/tizen-winsets/widgets/button/button.html +++ b/demos/tizen-winsets/widgets/button/button.html @@ -44,12 +44,12 @@
  • data-icon = "info"
  • data-icon = "home"
  • data-icon = "search"
  • -
  • buttons with data-style - data-style will be deprecated. please check!!!
  • +
  • buttons with data-style
  • List item
  • List item
  • -
  • List item
  • +
  • List item
  • List item
  • -
  • List item
  • +
  • List item
  • custom buttons
  • Buttons Pages(not in list)
  • diff --git a/demos/tizen-winsets/widgets/ctxpopup.html b/demos/tizen-winsets/widgets/ctxpopup.html index da56206..b2e1722 100755 --- a/demos/tizen-winsets/widgets/ctxpopup.html +++ b/demos/tizen-winsets/widgets/ctxpopup.html @@ -92,38 +92,17 @@ Buttons -
    -
    - - - - - - - - - - - -
    - Meenie - - Mynie - - Mo -
    - Catch-a - - Tiger - - By-the -
    -
    +
    +
    -

    - Animation + +Animation
      @@ -141,8 +120,30 @@
    +
    +
    +MethodOpen +
    +
    +CloseTest + +
    +
    +
    + - - - - +
    + + +
    + \ No newline at end of file diff --git a/demos/tizen-winsets/widgets/ctxpopup.js b/demos/tizen-winsets/widgets/ctxpopup.js index ee86683..2109a71 100644 --- a/demos/tizen-winsets/widgets/ctxpopup.js +++ b/demos/tizen-winsets/widgets/ctxpopup.js @@ -1,9 +1,19 @@ $("#pop_js").live("vclick", function ( e ) { if ( $(e.target).is(".ui-btn-ctxpopup-close") ) { - $(this).popupwindow("close"); + $(this).popup("close"); } if ( $(e.target).is("#ctxpopup_update") ) { $("#btn_js").text("Peekaboo!"); $("#btn_js").buttonMarkup("refresh"); } }); + +var closeTest = function() +{ + alert('test'); +} +var popupTest = function() +{ + $("#pop_text_only").popup("open"); + return false; +}; \ No newline at end of file diff --git a/demos/tizen-winsets/widgets/day-selector.html b/demos/tizen-winsets/widgets/day-selector.html deleted file mode 100644 index 8a4851b..0000000 --- a/demos/tizen-winsets/widgets/day-selector.html +++ /dev/null @@ -1,53 +0,0 @@ -
    -
    -

    Day selector

    -
    - -
    -

    With a legend (also API demo)

    -
    - Choose some days -
    - -
    Check all
    -
    Get Days
    -

    The day(s) you selected are: - - (select a day first) - -

    -
    - -

    With a legend, with custom swatch

    -
    - Choose some days -
    -
    - -

    Without a legend

    -
    -
    -
    - -

    Without a legend, vertical layout

    - -

    Note that the checkboxes are visible as icons - (this is the default behaviour for vertical checkbox - controlgroups in jQuery Mobile).

    - -
    -
    - -
    - -

    With a legend, vertical layout

    - -
    - Choose some days -
    - -
    -
    - - - diff --git a/demos/tizen-winsets/widgets/grid/virtualgrid-auto.html b/demos/tizen-winsets/widgets/grid/virtualgrid-size.html similarity index 91% rename from demos/tizen-winsets/widgets/grid/virtualgrid-auto.html rename to demos/tizen-winsets/widgets/grid/virtualgrid-size.html index 399b97f..ae89ea2 100644 --- a/demos/tizen-winsets/widgets/grid/virtualgrid-auto.html +++ b/demos/tizen-winsets/widgets/grid/virtualgrid-size.html @@ -1,6 +1,6 @@
    -

    Virtual Grid - Auto

    +

    Virtual Grid - Size

    -
    +
    -
    +
    diff --git a/demos/tizen-winsets/widgets/pagelayout/backbutton-control.js b/demos/tizen-winsets/widgets/pagelayout/backbutton-control.js index f89cfb8..78e9eda 100755 --- a/demos/tizen-winsets/widgets/pagelayout/backbutton-control.js +++ b/demos/tizen-winsets/widgets/pagelayout/backbutton-control.js @@ -1,14 +1,13 @@ $( document ).bind("pagecreate", function () { - $("#genBackToFooter").bind("vmousedown", function (e) { - $(".ui-page-active").find(".ui-footer").barlayout("addBackBtn"); - }); + $(".ui-page-active").page( "addBackBtn", "footer" ); + }); $("#genBackToFooter2").bind("vmousedown", function (e) { - $(".ui-page-active").find(".ui-header").barlayout("addBackBtn"); - }); + $(".ui-page-active").page( "addBackBtn", "header" ); + }); $("#backButtonDemo5").bind("vmousedown", function (e) { - $(".ui-page-active").find(".ui-footer").hide(); - }); + $(".ui-page-active").find(".ui-footer").hide(); + }); }); diff --git a/demos/tizen-winsets/widgets/pagelayout/backbutton/back-button-to-header.html b/demos/tizen-winsets/widgets/pagelayout/backbutton/back-button-to-header.html index 7d70ee3..d897614 100755 --- a/demos/tizen-winsets/widgets/pagelayout/backbutton/back-button-to-header.html +++ b/demos/tizen-winsets/widgets/pagelayout/backbutton/back-button-to-header.html @@ -10,7 +10,7 @@
    -

    Case 6 :

    +

    Case 4 :

    Web Developer defines that back button will be attached to header
    This page declared "data-add-back-btn=header" to page
    1. check and draw back button to header

    diff --git a/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal.html b/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal.html index 4f52ec0..9ae2750 100755 --- a/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal.html +++ b/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal.html @@ -4,27 +4,30 @@ -
    -
    -

    Normal footer generate

    +
    +
    +

    Normal footer with back button

    -

    Case 1 :

    - Web Developer doesn't define footer in page
    - This page do not have <div> footer in html file
    - Framework automatically generate footer in case no footer definition in page


    +

    Case 3 :

    + Web Developer declare back btn option and make footer
    + back button displayed right bottom side of footer


    - <div data-role="page">
    + <div data-role="page" data-add-Back-Btn="true">
        <div data-role="header" data-position="fixed">
            <h1>back button sample</h1>
        </div>
        <div data-role="content">
        </div>
    +     <div data-role="footer" data-position="fixed">
    +     </div>
    </div>


    +
    +
    diff --git a/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal2.html b/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal2.html deleted file mode 100755 index db5f118..0000000 --- a/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal2.html +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - -
    -
    -

    Defined normal footer

    -
    - -
    -

    Case 2 :

    - Web Developer defines footer in page
    - This page has <div> footer in html file
    - Framework gets tizen theme of footer and styling footer


    -
    -

    - <div data-role="page">
    -     <div data-role="header" data-position="fixed">
    -         <h1>back button sample</h1>
    -     </div>
    -     <div data-role="content">
    -     </div>
    -     <div data-role="footer">
    -     </div>
    - </div>

    -

    -
    - -
    -
    -
    - - diff --git a/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal3.html b/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal3.html deleted file mode 100755 index cc09ca1..0000000 --- a/demos/tizen-winsets/widgets/pagelayout/backbutton/backbutton-normal3.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - -
    -
    -

    Defined back button in page

    -
    - -
    -

    Case 3 :

    - Web Developer defines back button in page
    - This page does not have <div> footer in html file
    - but declared back button in page
    - Framework generates footer then attach back button to footer


    -
    -

    - <div data-role="page" data-add-back-btn="footer">
    -     <div data-role="header" data-position="fixed">
    -         <h1>back button sample</h1>
    -     </div>
    -     <div data-role="content">
    -     </div>
    - </div>

    -

    -
    - -
    - - diff --git a/demos/tizen-winsets/widgets/pagelayout/backbutton/dynamically-attatch-backbutton-to-footer.html b/demos/tizen-winsets/widgets/pagelayout/backbutton/dynamically-attatch-backbutton-to-footer.html index 7294a78..f6fd28b 100755 --- a/demos/tizen-winsets/widgets/pagelayout/backbutton/dynamically-attatch-backbutton-to-footer.html +++ b/demos/tizen-winsets/widgets/pagelayout/backbutton/dynamically-attatch-backbutton-to-footer.html @@ -4,19 +4,19 @@ -
    +

    Back button to Header

    -

    Case 7 :

    +

    Case 5 :

    Web Developer declared only footer in page
    but need to add back button dynamically
    - select footer and call barlayout("addBackBtn") API

    + call page("addBackBtn", target) API

    - <div data-role="page" data-add-back-btn="none">
    + <div data-role="page">
        <div data-role="header" data-position="fixed">
            <h1>back button sample</h1>
        </div>
    @@ -30,8 +30,7 @@

    <script>
    -   var $elFooter = $(".ui-page-active").find(".ui-footer");
    -   $elFooter.barlayout("addBackBtn");
    +   $(".ui-page-active").page( "addBackBtn", "footer" );
    </script>


    diff --git a/demos/tizen-winsets/widgets/pagelayout/backbutton/dynamically-attatch-backbutton-to-header.html b/demos/tizen-winsets/widgets/pagelayout/backbutton/dynamically-attatch-backbutton-to-header.html index 0b4e640..4d7809c 100755 --- a/demos/tizen-winsets/widgets/pagelayout/backbutton/dynamically-attatch-backbutton-to-header.html +++ b/demos/tizen-winsets/widgets/pagelayout/backbutton/dynamically-attatch-backbutton-to-header.html @@ -4,19 +4,19 @@ -
    +

    Back button to Header

    -

    Case 7 :

    +

    Case 6 :

    Web Developer declared only footer in page
    but need to add back button dynamically in header
    - select header and call barlayout("addBackBtn") API

    + call page("addBackBtn", target) API

    - <div data-role="page" data-add-back-btn="none">
    + <div data-role="page">
        <div data-role="header" data-position="fixed">
            <h1>back button sample</h1>
        </div>
    @@ -30,8 +30,7 @@

    <script>
    -   var $elHeader = $(".ui-page-active").find(".ui-header");
    -   $elHeader.barlayout("addBackBtn");
    +   $(".ui-page-active").page( "addBackBtn", "header" );
    </script>


    diff --git a/demos/tizen-winsets/widgets/pagelayout/backbutton/no-back-button.html b/demos/tizen-winsets/widgets/pagelayout/backbutton/no-back-button.html index 8583755..d4f27ec 100755 --- a/demos/tizen-winsets/widgets/pagelayout/backbutton/no-back-button.html +++ b/demos/tizen-winsets/widgets/pagelayout/backbutton/no-back-button.html @@ -4,30 +4,31 @@ -
    +

    No back button

    -

    Case 5 :

    - Web Developer defines that back button will not use in this page
    - This page declared that this page will not use back button
    - declared "data-add-back-btn=none" to page
    - 1. draw footer to page
    - 2. check and do not draw back button to page

    +

    Case 2 :

    + Web Developer defines footer in page
    + no page option declared

    - <div data-role="page" data-add-back-btn="none">
    + <div data-role="page">
        <div data-role="header" data-position="fixed">
            <h1>back button sample</h1>
        </div>
        <div data-role="content">
        </div>
    +     <div data-role="footer" data-position="fixed">
    +     </div>
    </div>


    Go Back
    +
    +
    diff --git a/demos/tizen-winsets/widgets/pagelayout/backbutton/no-footer.html b/demos/tizen-winsets/widgets/pagelayout/backbutton/no-footer.html index 3701b61..2cb001f 100755 --- a/demos/tizen-winsets/widgets/pagelayout/backbutton/no-footer.html +++ b/demos/tizen-winsets/widgets/pagelayout/backbutton/no-footer.html @@ -4,21 +4,21 @@ -
    +
    -

    Defined normal footer

    +

    No footer page

    -

    Case 4 :

    - Web Developer defines that footer will not use in this page
    - This page declared that this page will not use footer (footer-exist)
    - 1. do not go to footerDraw routine

    +

    Case 1 :

    + Web Developer defines nothing page
    + This page show only header & content in page
    +

    - <div data-role="page" data-footer-exist="false">
    + <div data-role="page">
        <div data-role="header" data-position="fixed">
    -         <h1>back button sample</h1>
    +         <h1>no footer sample</h1>
        </div>
        <div data-role="content">
        </div>
    diff --git a/demos/tizen-winsets/widgets/switch/switch.html b/demos/tizen-winsets/widgets/switch/switch.html deleted file mode 100755 index a2759b9..0000000 --- a/demos/tizen-winsets/widgets/switch/switch.html +++ /dev/null @@ -1,21 +0,0 @@ -

    -
    -

    Switch

    -
    -
    -

    Image switches:

    -
    -
    -
    -

    Text switches (old UX):

    -
    -
    -

    Coordinated switches:

    -
    -
    -
    -
    -
    -

    Web UI Framework - Widgets gallery

    -
    -
    diff --git a/demos/tizen-winsets/widgets/switch/switch.js b/demos/tizen-winsets/widgets/switch/switch.js deleted file mode 100644 index da0a776..0000000 --- a/demos/tizen-winsets/widgets/switch/switch.js +++ /dev/null @@ -1,8 +0,0 @@ -$("#switch-demo").live("pageshow", function(e) { - $("#switch-1-coord").bind("change", function(e) { - $("#switch-2-coord").toggleswitch("option", "checked", $("#switch-1-coord").toggleswitch("option", "checked")); - }); - $("#switch-2-coord").bind("change", function(e) { - $("#switch-1-coord").toggleswitch("option", "checked", $("#switch-2-coord").toggleswitch("option", "checked")); - }); -}); diff --git a/demos/tizen-winsets/widgets/switch/toggleswitch.html b/demos/tizen-winsets/widgets/switch/toggleswitch.html new file mode 100755 index 0000000..bddb72d --- /dev/null +++ b/demos/tizen-winsets/widgets/switch/toggleswitch.html @@ -0,0 +1,43 @@ +
    +
    +

    ToggleSwitch

    +
    +
    + +

    + + + + +

    + + + + + + +

    + +
    + + +
    + + +
    +
    +

    Web UI Framework - Widgets gallery

    +
    +
    diff --git a/libs/patch/0014-JQM-add-TIZEN-back-btn.patch b/libs/patch/0014-JQM-add-TIZEN-back-btn.patch new file mode 100644 index 0000000..6534e12 --- /dev/null +++ b/libs/patch/0014-JQM-add-TIZEN-back-btn.patch @@ -0,0 +1,138 @@ +From 9194807cb435b256bf5f4d45f585e1ed0bbab303 Mon Sep 17 00:00:00 2001 +From: jinhyuk +Date: Wed, 12 Dec 2012 18:34:46 +0900 +Subject: [PATCH] JQM add TIZEN back btn + +Change-Id: If1c5e68cff21d78abcc499b9eac7a6a3222f09be +--- + libs/js/jquery-mobile-1.2.0/js/widgets/page.js | 13 +++++ + .../js/widgets/page.sections.js | 19 ++++++-- + ...d-back-btn-option-and-remove-jqm-back-btn.patch | 51 -------------------- + 3 files changed, 27 insertions(+), 56 deletions(-) + delete mode 100644 libs/patch/0014-JQM-add-back-btn-option-and-remove-jqm-back-btn.patch + +diff --git a/libs/js/jquery-mobile-1.2.0/js/widgets/page.js b/libs/js/jquery-mobile-1.2.0/js/widgets/page.js +index 256fbb2..d80bd26 100644 +--- a/libs/js/jquery-mobile-1.2.0/js/widgets/page.js ++++ b/libs/js/jquery-mobile-1.2.0/js/widgets/page.js +@@ -46,6 +46,19 @@ $.widget( "mobile.page", $.mobile.widget, { + } + }, + ++ addBackBtn : function ( target ) { ++ var $dest = $( ".ui-page-active .ui-footer" ); ++ ++ if ( target == "header" ) { ++ $dest = $( ".ui-page-active .ui-header" ); ++ } ++ backBtn = $( "" ) ++ .buttonMarkup( {icon: "header-back-btn", theme : "s"} ); ++ if ( !$dest.find( ".ui-btn-back").length ) { ++ backBtn.prependTo( $dest ); ++ } ++ }, ++ + keepNativeSelector: function() { + var options = this.options, + keepNativeDefined = options.keepNative && $.trim( options.keepNative ); +diff --git a/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js b/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js +index 7c05ecb..90a298a 100644 +--- a/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js ++++ b/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js +@@ -35,6 +35,7 @@ $( document ).bind( "pagecreate", function( e ) { + $headeranchors, + leftbtn, + rightbtn, ++ $dest = $page.find( ".ui-footer" ), + backBtn; + + $this.addClass( "ui-" + role ); +@@ -63,15 +64,23 @@ $( document ).bind( "pagecreate", function( e ) { + + // Auto-add back btn on pages beyond first view + if ( o.addBackBtn && +- role === "header" && +- $( ".ui-page" ).length > 1 && ++ ( role === "footer" || role === "header" ) && + $page.jqmData( "url" ) !== $.mobile.path.stripHash( location.hash ) && + !leftbtn ) { + +- backBtn = $( ""+ o.backBtnText +"" ) ++ if ( o.addBackBtn == "header" ) { ++ $dest = $page.find( ".ui-header" ); ++ } else { ++ $dest = $page.find( ".ui-footer" ); ++ } ++ ++ backBtn = $( "" ) + // If theme is provided, override default inheritance +- .attr( "data-"+ $.mobile.ns +"theme", o.backBtnTheme || thisTheme ) +- .prependTo( $this ); ++ .attr( "data-"+ $.mobile.ns +"theme", o.backBtnTheme || thisTheme ); ++ ++ if ( !$dest.find( ".ui-btn-back" ).length ) { ++ backBtn.prependTo( $dest ); ++ } + } + + // Page title +diff --git a/libs/patch/0014-JQM-add-back-btn-option-and-remove-jqm-back-btn.patch b/libs/patch/0014-JQM-add-back-btn-option-and-remove-jqm-back-btn.patch +deleted file mode 100644 +index 1ca3002..0000000 +--- a/libs/patch/0014-JQM-add-back-btn-option-and-remove-jqm-back-btn.patch ++++ /dev/null +@@ -1,51 +0,0 @@ +-From 252820a3ea292bf652d2ecd644c0126152a20f46 Mon Sep 17 00:00:00 2001 +-From: Jun Jinhyuk +-Date: Wed, 28 Nov 2012 14:25:58 +0900 +-Subject: [PATCH] JQM add back btn option and remove jqm back btn +- +-Signed-off-by: Jun Jinhyuk +---- +- .../js/widgets/page.sections.js | 16 ++-------------- +- 1 files changed, 2 insertions(+), 14 deletions(-) +- +-diff --git a/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js b/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js +-index 7c05ecb..cbf6786 100644 +---- a/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js +-+++ b/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js +-@@ -8,11 +8,12 @@ define( [ "jquery", "./page", "../jquery.mobile.core" ], function( $ ) { +- (function( $, undefined ) { +- +- $.mobile.page.prototype.options.backBtnText = "Back"; +--$.mobile.page.prototype.options.addBackBtn = false; +-+$.mobile.page.prototype.options.addBackBtn = "footer"; +- $.mobile.page.prototype.options.backBtnTheme = null; +- $.mobile.page.prototype.options.headerTheme = "a"; +- $.mobile.page.prototype.options.footerTheme = "a"; +- $.mobile.page.prototype.options.contentTheme = null; +-+$.mobile.page.prototype.options.footerExist = true; +- +- // NOTE bind used to force this binding to run before the buttonMarkup binding +- // which expects .ui-footer top be applied in its gigantic selector +-@@ -61,19 +62,6 @@ $( document ).bind( "pagecreate", function( e ) { +- rightbtn = rightbtn || $headeranchors.eq( 1 ).addClass( "ui-btn-right" ).length; +- } +- +-- // Auto-add back btn on pages beyond first view +-- if ( o.addBackBtn && +-- role === "header" && +-- $( ".ui-page" ).length > 1 && +-- $page.jqmData( "url" ) !== $.mobile.path.stripHash( location.hash ) && +-- !leftbtn ) { +-- +-- backBtn = $( ""+ o.backBtnText +"" ) +-- // If theme is provided, override default inheritance +-- .attr( "data-"+ $.mobile.ns +"theme", o.backBtnTheme || thisTheme ) +-- .prependTo( $this ); +-- } +-- +- // Page title +- $this.children( "h1, h2, h3, h4, h5, h6" ) +- .addClass( "ui-title" ) +--- +-1.7.4.1 +- +-- +1.7.9.5 + diff --git a/libs/patch/0014-JQM-add-back-btn-option-and-remove-jqm-back-btn.patch b/libs/patch/0014-JQM-add-back-btn-option-and-remove-jqm-back-btn.patch deleted file mode 100644 index 1ca3002..0000000 --- a/libs/patch/0014-JQM-add-back-btn-option-and-remove-jqm-back-btn.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 252820a3ea292bf652d2ecd644c0126152a20f46 Mon Sep 17 00:00:00 2001 -From: Jun Jinhyuk -Date: Wed, 28 Nov 2012 14:25:58 +0900 -Subject: [PATCH] JQM add back btn option and remove jqm back btn - -Signed-off-by: Jun Jinhyuk ---- - .../js/widgets/page.sections.js | 16 ++-------------- - 1 files changed, 2 insertions(+), 14 deletions(-) - -diff --git a/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js b/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js -index 7c05ecb..cbf6786 100644 ---- a/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js -+++ b/libs/js/jquery-mobile-1.2.0/js/widgets/page.sections.js -@@ -8,11 +8,12 @@ define( [ "jquery", "./page", "../jquery.mobile.core" ], function( $ ) { - (function( $, undefined ) { - - $.mobile.page.prototype.options.backBtnText = "Back"; --$.mobile.page.prototype.options.addBackBtn = false; -+$.mobile.page.prototype.options.addBackBtn = "footer"; - $.mobile.page.prototype.options.backBtnTheme = null; - $.mobile.page.prototype.options.headerTheme = "a"; - $.mobile.page.prototype.options.footerTheme = "a"; - $.mobile.page.prototype.options.contentTheme = null; -+$.mobile.page.prototype.options.footerExist = true; - - // NOTE bind used to force this binding to run before the buttonMarkup binding - // which expects .ui-footer top be applied in its gigantic selector -@@ -61,19 +62,6 @@ $( document ).bind( "pagecreate", function( e ) { - rightbtn = rightbtn || $headeranchors.eq( 1 ).addClass( "ui-btn-right" ).length; - } - -- // Auto-add back btn on pages beyond first view -- if ( o.addBackBtn && -- role === "header" && -- $( ".ui-page" ).length > 1 && -- $page.jqmData( "url" ) !== $.mobile.path.stripHash( location.hash ) && -- !leftbtn ) { -- -- backBtn = $( ""+ o.backBtnText +"" ) -- // If theme is provided, override default inheritance -- .attr( "data-"+ $.mobile.ns +"theme", o.backBtnTheme || thisTheme ) -- .prependTo( $this ); -- } -- - // Page title - $this.children( "h1, h2, h3, h4, h5, h6" ) - .addClass( "ui-title" ) --- -1.7.4.1 - diff --git a/libs/patch/0020-JQM-Apply-tizen-style-context-popup.patch b/libs/patch/0020-JQM-Apply-tizen-style-context-popup.patch index 7f3658f..a028a8a 100644 --- a/libs/patch/0020-JQM-Apply-tizen-style-context-popup.patch +++ b/libs/patch/0020-JQM-Apply-tizen-style-context-popup.patch @@ -1,18 +1,26 @@ -From 3efba1ecbb1a2cd09aad29850060d1703b52d682 Mon Sep 17 00:00:00 2001 +From 0df0afd2b03ab688210b9ff71d65dff73a33419c Mon Sep 17 00:00:00 2001 From: "hjnim.kim" -Date: Thu, 6 Dec 2012 14:47:57 +0900 -Subject: [PATCH] JQM Apply tizen style context popup +Date: Tue, 11 Dec 2012 19:14:31 +0900 +Subject: [PATCH] Apply tizen style context popup -Change-Id: I6a592010eebbce98a02c901b9c121eec2dff87fb --- - libs/js/jquery-mobile-1.2.0/js/widgets/popup.js | 86 +++++++++++++++++++---- - 1 files changed, 71 insertions(+), 15 deletions(-) + libs/js/jquery-mobile-1.2.0/js/widgets/popup.js | 95 ++++++++++++++++++++--- + 1 files changed, 84 insertions(+), 11 deletions(-) diff --git a/libs/js/jquery-mobile-1.2.0/js/widgets/popup.js b/libs/js/jquery-mobile-1.2.0/js/widgets/popup.js -index de2af2c..660bb7e 100644 +index de2af2c..6470bc4 100644 --- a/libs/js/jquery-mobile-1.2.0/js/widgets/popup.js +++ b/libs/js/jquery-mobile-1.2.0/js/widgets/popup.js -@@ -109,13 +109,13 @@ define( [ "jquery", +@@ -58,7 +58,7 @@ define( [ "jquery", + // https://github.com/jquery/jquery-mobile/issues/4784 + // + // NOTE this option is modified in _create! +- history: !$.mobile.browser.ie ++ history: false + }, + + _eatEventAndClose: function( e ) { +@@ -109,7 +109,7 @@ define( [ "jquery", }, _resizeTimeout: function() { @@ -21,42 +29,18 @@ index de2af2c..660bb7e 100644 // effectively rapid-open the popup while leaving the screen intact this._trigger( "beforeposition" ); this._ui.container - .removeClass( "ui-selectmenu-hidden" ) - .offset( this._placementCoords( this._desiredCoords( undefined, undefined, "window" ) ) ); -- -+ - this._resizeScreen(); - this._resizeData = null; - this._orientationchangeInProgress = false; -@@ -143,17 +143,19 @@ define( [ "jquery", - _create: function() { +@@ -144,7 +144,8 @@ define( [ "jquery", var ui = { screen: $( "
    " ), -- placeholder: $( "
    " ), + placeholder: $( "
    " ), - container: $( "
    " ) -+ placeholder: $( "
    " ), + container: $( "
    " ), + arrow : $("
    ") }, thisPage = this.element.closest( ".ui-page" ), myId = this.element.attr( "id" ), -- self = this; -+ self = this, -+ link; - - // We need to adjust the history option to be false if there's no AJAX nav. - // We can't do it in the option declarations because those are run before - // it is determined whether there shall be AJAX nav. -- this.options.history = this.options.history && $.mobile.ajaxEnabled && $.mobile.hashListeningEnabled; -+ this.options.history = false && $.mobile.ajaxEnabled && $.mobile.hashListeningEnabled; - - if ( thisPage.length === 0 ) { - thisPage = $( "body" ); -@@ -172,9 +174,10 @@ define( [ "jquery", - ui.screen.attr( "id", myId + "-screen" ); - ui.container.attr( "id", myId + "-popup" ); +@@ -174,7 +175,7 @@ define( [ "jquery", ui.placeholder.html( "" ); -+ ui.arrow.attr( "id", myId + "-arrow" ); } ui.container.append( this.element ); - @@ -64,37 +48,43 @@ index de2af2c..660bb7e 100644 // Add class to popup element this.element.addClass( "ui-popup" ); -@@ -361,8 +364,11 @@ define( [ "jquery", +@@ -276,7 +277,7 @@ define( [ "jquery", + }, + + _setTolerance: function( value ) { +- var tol = { t: 30, r: 15, b: 30, l: 15 }; ++ var tol = { t: 10, r: 10, b: 10, l: 10 }; + + if ( value ) { + var ar = String( value ).split( "," ); +@@ -361,7 +362,11 @@ define( [ "jquery", cx: winCoords.cx - this._tolerance.l - this._tolerance.r, cy: winCoords.cy - this._tolerance.t - this._tolerance.b }, - menuSize, ret; -- + menuSize, ret, + linkOffset = $(this.link).offset(), + positionOffsets = [], + correctionValue = [0,0], + arrayIdx; + // Clamp the width of the menu before grabbing its size this._ui.container.css( "max-width", rc.cx ); - menuSize = { -@@ -385,11 +391,50 @@ define( [ "jquery", - - // fix for $( document ).height() bug in core 1.7.2. - var docEl = document.documentElement, docBody = document.body, -- docHeight = Math.max( docEl.clientHeight, docBody.scrollHeight, docBody.offsetHeight, docEl.scrollHeight, docEl.offsetHeight ); -+ docHeight = Math.max( docEl.clientHeight, docBody.scrollHeight, docBody.offsetHeight, docEl.scrollHeight, docEl.offsetHeight ), -+ arrowtop, -+ arrowleft; +@@ -388,8 +393,48 @@ define( [ "jquery", + docHeight = Math.max( docEl.clientHeight, docBody.scrollHeight, docBody.offsetHeight, docEl.scrollHeight, docEl.offsetHeight ); ret.y -= Math.min( ret.y, Math.max( 0, ret.y + menuSize.cy - docHeight ) ); -- -- return { left: ret.x, top: ret.y }; ++ if ( this.positionTo === "window" ) ++ { ++ return { left: ret.x, top: ret.y , arrowleft: 0 , arrowtop: 0}; ++ } ++ + positionOffsets = [ linkOffset.left, + linkOffset.top, + docEl.clientHeight - ( linkOffset.top + $(this.link).height() ), + docEl.clientWidth - ( linkOffset.left + $(this.link).width() )]; + arrayIdx = positionOffsets.indexOf(Math.max.apply(window,positionOffsets)); ++ + switch( arrayIdx ) + { + case 0: @@ -117,32 +107,20 @@ index de2af2c..660bb7e 100644 + .addClass("ui-arrow top"); + break; + case 3: -+ correctionValue = [ $(this.link).width() , 0]; ++ correctionValue = [ ( menuSize.cx < $(this.link).width() ) ? ( $(this.link).width() / 2 ) + ( menuSize.cx / 2) : $(this.link).width() , 0]; + arrowtop = ( linkOffset.top - ret.y ) + ( $(this.link).height() / 2 ) - parseInt( $(this._ui.arrow).css("border-width") ); + arrowleft = - parseInt( $(this._ui.arrow).css("border-width") ) * 2; + $(this._ui.arrow).attr( "class", "" ) + .addClass("ui-arrow right"); + break; + } -+ if ( this.positionTo === "window" ) -+ { -+ correctionValue = [ 0, 0]; -+ } + +- return { left: ret.x, top: ret.y }; + return { left: ret.x + correctionValue[0], top: ret.y + correctionValue[1] , arrowleft: arrowleft , arrowtop: arrowtop}; }, _createPrereqs: function( screenPrereq, containerPrereq, whenDone ) { -@@ -532,7 +577,8 @@ define( [ "jquery", - return true; - } - return false; -- }()); -+ }()), -+ self = this; - - // Make sure options is defined - options = ( options || {} ); -@@ -569,7 +615,7 @@ define( [ "jquery", +@@ -569,7 +614,7 @@ define( [ "jquery", this._ui.container .removeClass( "ui-selectmenu-hidden" ) .offset( coords ); @@ -151,39 +129,60 @@ index de2af2c..660bb7e 100644 if ( this.options.overlayTheme && androidBlacklist ) { /* TODO: The native browser on Android 4.0.X ("Ice Cream Sandwich") suffers from an issue where the popup overlay appears to be z-indexed -@@ -587,6 +633,14 @@ define( [ "jquery", +@@ -587,6 +632,7 @@ define( [ "jquery", // TODO sort out why this._page isn't working this.element.closest( ".ui-page" ).addClass( "ui-popup-open" ); } -+ // -+ if ( self.positionTo !== "window") -+ { -+ $(self.element.get(0)).addClass("ui-ctxpopup"); -+ $(self._ui.container).removeClass("ui-popup-container").addClass("ui-ctxpopup-container"); -+ } else { -+ $(self._ui.arrow).hide(); -+ } ++ this._animate({ additionalCondition: true, transition: transition, -@@ -691,7 +745,8 @@ define( [ "jquery", +@@ -691,15 +737,42 @@ define( [ "jquery", // what should be in _open. Seems to be "visual" vs "history" for now open: function( options ) { var self = this, opts = this.options, url, hashkey, activePage, currentIsDialog, hasHash, urlHistory; - -+ self.link = options.link, -+ self.positionTo = options.positionTo; ++ // self.link = ( $(event.target).attr('data-role') === 'button') ? event.target : $(event.target).closest('[data-role="button"]')[0]; // make sure open is idempotent if( $.mobile.popup.active ) { return; -@@ -798,6 +853,7 @@ define( [ "jquery", - positionTo: $link.jqmData( "position-to" ), - link: $link - }); -+ popup._openButton = $link; - } - - //remove after delay + } +- + // set the global popup mutex + $.mobile.popup.active = this; +- ++ if( !options ) ++ { ++ options = []; ++ } ++ if ( !options.link ) ++ { ++ self.link = $(event.target).closest('a')[0]; ++ } else { ++ self.link = options.link; ++ } ++ self.positionTo = ( options != null && options.positionTo != null ) ? options.positionTo : "origin"; ++ if ( $(self.link).jqmData("position-to") !== "window") ++ { ++ $(self.element).addClass("ui-ctxpopup"); ++ $(self._ui.container).removeClass("ui-popup-container") ++ .addClass("ui-ctxpopup-container"); ++ } else { ++ $(self._ui.arrow).hide(); ++ } ++ if( !options.x ++ && self.positionTo !== "window" ) ++ { ++ options.x = $(self.link).offset().left + $(self.link).outerWidth() / 2; ++ } ++ if( !options.y ++ && self.positionTo !== "window" ) ++ { ++ options.y = $(self.link).offset().top + $(self.link).outerHeight() / 2; ++ } + // if history alteration is disabled close on navigate events + // and leave the url as is + if( !( opts.history ) ) { -- 1.7.5.4 diff --git a/libs/patch/0021-JQM-add-tizen-toggle-switch.patch b/libs/patch/0021-JQM-add-tizen-toggle-switch.patch new file mode 100644 index 0000000..40cb2b6 --- /dev/null +++ b/libs/patch/0021-JQM-add-tizen-toggle-switch.patch @@ -0,0 +1,86 @@ +From d91978cf6366c05780ed223264f65869387bc4a4 Mon Sep 17 00:00:00 2001 +From: Jun Jinhyuk +Date: Fri, 7 Dec 2012 10:33:32 +0900 +Subject: [PATCH] JQM add tizen toggle switch + +Change-Id: Iebd5611d298e67295edfe5ded449e11637be5425 +--- + .../jquery-mobile-1.2.0/js/widgets/forms/slider.js | 44 +++++++++++++++----- + 1 files changed, 33 insertions(+), 11 deletions(-) + +diff --git a/libs/js/jquery-mobile-1.2.0/js/widgets/forms/slider.js b/libs/js/jquery-mobile-1.2.0/js/widgets/forms/slider.js +index e7f5df0..2e682db 100644 +--- a/libs/js/jquery-mobile-1.2.0/js/widgets/forms/slider.js ++++ b/libs/js/jquery-mobile-1.2.0/js/widgets/forms/slider.js +@@ -81,6 +81,10 @@ $.widget( "mobile.slider", $.mobile.widget, { + domHandle.className = 'ui-slider-handle'; + domSlider.appendChild( domHandle ); + ++ if ( $( control ).find( "option" ).length && $( control ).find( "option" ).text() === "" ) { ++ $( domSlider ).addClass( "ui-toggle-switch" ); ++ } ++ + handle.buttonMarkup({ corners: true, theme: theme, shadow: true }) + .attr({ + "role": "slider", +@@ -324,7 +328,12 @@ $.widget( "mobile.slider", $.mobile.widget, { + }, + + refresh: function( val, isfromControl, preventInputUpdate ) { ++ var imgToggle = false, ++ appHandle; + ++ if ( $( this.handle ).parents().is( ".ui-toggle-switch" ) ) { ++ imgToggle = true; ++ } + // NOTE: we don't return here because we want to support programmatic + // alteration of the input value, which should still update the slider + if ( this.options.disabled || this.element.attr('disabled')) { +@@ -397,20 +406,33 @@ $.widget( "mobile.slider", $.mobile.widget, { + title: cType === "input" ? newval : control.find( "option" ).eq( newval ).getEncodedText() + }); + +- if ( this.valuebg ) { +- this.valuebg.css( "width", percent + "%" ); ++ if ( !imgToggle ) { ++ if ( this.valuebg ) { ++ this.valuebg.css( "width", percent + "%" ); ++ } + } + + // drag the label widths +- if ( this._labels ) { +- var handlePercent = this.handle.width() / this.slider.width() * 100, +- aPercent = percent && handlePercent + ( 100 - handlePercent ) * percent / 100, +- bPercent = percent === 100 ? 0 : Math.min( handlePercent + 100 - aPercent, 100 ); +- +- this._labels.each(function() { +- var ab = $( this ).is( ".ui-slider-label-a" ); +- $( this ).width( ( ab ? aPercent : bPercent ) + "%" ); +- }); ++ if ( imgToggle ) { ++ appHandle = $( this.handle ).parents( ".ui-slider" ); ++ if ( $( this.handle ).attr("aria-valuenow") === "on" ) { ++ appHandle.children( "span.ui-slider-label-a" ).show(); ++ appHandle.children( "span.ui-slider-label-b" ).hide(); ++ } else { ++ appHandle.children( "span.ui-slider-label-b" ).show(); ++ appHandle.children( "span.ui-slider-label-a" ).hide(); ++ } ++ } else { ++ if ( this._labels ) { ++ var handlePercent = this.handle.width() / this.slider.width() * 100, ++ aPercent = percent && handlePercent + ( 100 - handlePercent ) * percent / 100, ++ bPercent = percent === 100 ? 0 : Math.min( handlePercent + 100 - aPercent, 100 ); ++ ++ this._labels.each(function() { ++ var ab = $( this ).is( ".ui-slider-label-a" ); ++ $( this ).width( ( ab ? aPercent : bPercent ) + "%" ); ++ }); ++ } + } + + if ( !preventInputUpdate ) { +-- +1.7.4.1 + diff --git a/packaging/web-ui-fw.spec b/packaging/web-ui-fw.spec index 9051c8a..bc57d1e 100644 --- a/packaging/web-ui-fw.spec +++ b/packaging/web-ui-fw.spec @@ -1,5 +1,5 @@ Name: web-ui-fw -Version: 0.2.2 +Version: 0.2.3 Release: 0 Summary: Tizen Web UI Framework Library Group: Development/Other @@ -31,6 +31,7 @@ make DESTDIR=%{buildroot} install %manifest web-ui-fw.manifest /usr/share/tizen-web-ui-fw/*/js /usr/share/tizen-web-ui-fw/latest +/usr/share/tizen-web-ui-fw/VERSION ############################### %package -n web-ui-fw-theme-tizen-gray @@ -82,6 +83,20 @@ Summary: Tizen Web UI Framework Demo Application: tizen winset demo ############################### %changelog +* Fri Dec 14 2012 Minkyu Kang 0.2.3 +- FIX: + - slider: add image + - button: data-icon support, styles fix + - progressbar: modify the background + - scrollview: auto scrolling bug fix + - pagelayout: IME concept is changed +- Spec changes: + - dialogue: add edit mode + - nocontents: removed + - pagecontrol: removed + - dayselector: removed + - expandablelist: removed + * Thu Dec 10 2012 Youmin Ha 0.2.2 - FIX: - chang searchbar/slider images @@ -170,12 +185,6 @@ Summary: Tizen Web UI Framework Demo Application: tizen winset demo - Spec changes: - UX guide v0.4 : button, layout -* Fri Oct 26 2012 Youmin Ha 0.1.58 -- FIX: - - scrollview: Fix outer scroll amount - - tabbar: fix tapping twice - - popupwindow: fix left position - * Wed Oct 24 2012 Youmin Ha 0.1.57 - FIX: - expandablelist: icon color fix diff --git a/src/loader/loader.js b/src/loader/loader.js index 11bfd80..96cc6aa 100644 --- a/src/loader/loader.js +++ b/src/loader/loader.js @@ -151,9 +151,9 @@ If developers do not give a viewport meta tag, Tizen Web UI Framework automatica // Set framework data, only when they are given. tokens = src.split(/[\/\\]/); version_idx = -3; - this.frameworkData.rootDir = elem.getAttribute( 'data-framework-root' ) + this.frameworkData.rootDir = ( elem.getAttribute( 'data-framework-root' ) || tokens.slice( 0, tokens.length + version_idx ).join( '/' ) - || this.frameworkData.rootDir; + || this.frameworkData.rootDir ).replace( /^file:(\/\/)?/, '' ); this.frameworkData.version = elem.getAttribute( 'data-framework-version' ) || tokens[ tokens.length + version_idx ] || this.frameworkData.version; diff --git a/src/themes/tizen/common/jquery.mobile.button.less b/src/themes/tizen/common/jquery.mobile.button.less index bcd5b7f..3528955 100755 --- a/src/themes/tizen/common/jquery.mobile.button.less +++ b/src/themes/tizen/common/jquery.mobile.button.less @@ -18,7 +18,11 @@ .ui-btn-inline { display: inline-block; } .ui-btn-inner { padding: .5em 18 * @unit_base; display: block; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; position: relative; zoom: 1; } .ui-header .ui-btn-inner, .ui-footer .ui-btn-inner, .ui-bar .ui-btn-inner { padding: 0.7em 0 0.7em; } /* wongi_1024 : Button text middle align */ -.ui-header .ui-btn-inner.ui-btn-icon-only , .ui-footer .ui-btn-inner, .ui-bar .ui-btn-inner.ui-btn-icon-only { padding: .4em 8 * @unit_base .5em; } /* wongi_1024 : Button text middle align */ +.ui-header .ui-btn-inner.ui-btn-icon-only , .ui-footer .ui-btn-inner, .ui-bar .ui-btn-inner.ui-btn-icon-only +{ + padding: .4em 8 * @unit_base .5em; + .LESSborder-radius-all(1.2rem); +} /* wongi_1024 : Button text middle align */ .ui-btn-icon-notext { width: 24 * @unit_base; height: 24 * @unit_base; } .ui-btn-icon-notext .ui-btn-inner { padding: 2 * @unit_base 1 * @unit_base 2 * @unit_base 3 * @unit_base; } .ui-btn-icon-notext .ui-btn-text { position: absolute; left: -999 * @unit_base; } @@ -100,6 +104,13 @@ box-shadow: none; } +.ui-header .ui-btn.ui-btn-corner-all, +.ui-footer .ui-btn.ui-btn-corner-all +{ + .LESSborder-radius-all(1.2rem); + font-weight:bold; +} + .ui-scroll-jump-top-bg .ui-btn-icon-left .ui-btn-inner { padding-left: 0; @@ -170,17 +181,17 @@ .ui-icon-delete {.tizen-icon-common; background-image: url(images/controls/button/00_button_expand_cancel.png); } .ui-icon-plus {.tizen-icon-common; background-image: url(images/controls/button/00_button_plus.png); } .ui-icon-minus {.tizen-icon-common; background-image: url(images/controls/button/00_button_expand_minus.png); } -.ui-icon-check { } -.ui-icon-gear { } -.ui-icon-refresh { } +.ui-icon-check {.tizen-icon-common; background-image: url(images/controls/button/00_button_check.png); } +.ui-icon-gear {.tizen-icon-common; background-image: url(images/controls/button/00_button_gear.png); } +.ui-icon-refresh {.tizen-icon-common; background-image: url(images/controls/button/00_button_refresh.png); } .ui-icon-forward {.tizen-icon-common; background-image: url(images/controls/button/00_button_expand_send.png); } -.ui-icon-back { } -.ui-icon-grid { } -.ui-icon-star {.tizen-icon-common; background-image: url(images/00_winset_icon_favorite_on.png); } +.ui-icon-back {.tizen-icon-common; background-image: url(images/controls/button/00_button_back.png); } +.ui-icon-grid {.tizen-icon-common; background-image: url(images/controls/button/00_button_grid.png); } +.ui-icon-star {.tizen-icon-common; background-image: url(images/controls/button/00_button_star.png); } .ui-icon-alert {.tizen-icon-common; background-image: url(images/controls/button/00_button_warning.png); } .ui-icon-info {.tizen-icon-common; background-image: url(images/controls/button/00_button_info.png); } -.ui-icon-home { } -.ui-icon-search { } +.ui-icon-home {.tizen-icon-common; background-image: url(images/controls/button/00_button_home.png); } +.ui-icon-search {.tizen-icon-common; background-image: url(images/controls/button/00_button_search.png); } .ui-icon-call {.tizen-icon-common; background-image: url(images/controls/button/00_button_call.png); } .ui-icon-rename {.tizen-icon-common; background-image: url(images/controls/button/00_button_rename.png); } @@ -225,17 +236,17 @@ .ui-btn-down-s .ui-icon-delete {.tizen-icon-common; background-image: url(images/controls/button/00_button_expand_cancel_press.png); } .ui-btn-down-s .ui-icon-plus {.tizen-icon-common; background-image: url(images/controls/button/00_button_plus_press.png); } .ui-btn-down-s .ui-icon-minus {.tizen-icon-common; background-image: url(images/controls/button/00_button_expand_minus_press.png); } -.ui-btn-down-s .ui-icon-check { } -.ui-btn-down-s .ui-icon-gear { } -.ui-btn-down-s .ui-icon-refresh { } +.ui-btn-down-s .ui-icon-check {.tizen-icon-common; background-image: url(images/controls/button/00_button_check_press.png); } +.ui-btn-down-s .ui-icon-gear {.tizen-icon-common; background-image: url(images/controls/button/00_button_gear_press.png); } +.ui-btn-down-s .ui-icon-refresh {.tizen-icon-common; background-image: url(images/controls/button/00_button_refresh_press.png); } .ui-btn-down-s .ui-icon-forward {.tizen-icon-common; background-image: url(images/controls/button/00_button_expand_send_press.png); } -.ui-btn-down-s .ui-icon-back { } -.ui-btn-down-s .ui-icon-grid { } -.ui-btn-down-s .ui-icon-star {.tizen-icon-common; background-image: url(images/00_winset_icon_favorite_on_press.png); } +.ui-btn-down-s .ui-icon-back {.tizen-icon-common; background-image: url(images/controls/button/00_button_back_press.png); } +.ui-btn-down-s .ui-icon-grid {.tizen-icon-common; background-image: url(images/controls/button/00_button_grid_press.png); } +.ui-btn-down-s .ui-icon-star {.tizen-icon-common; background-image: url(images/controls/button/00_button_star_press.png); } .ui-btn-down-s .ui-icon-alert {.tizen-icon-common; background-image: url(images/controls/button/00_button_warning_press.png); } .ui-btn-down-s .ui-icon-info {.tizen-icon-common; background-image: url(images/controls/button/00_button_info_press.png); } -.ui-btn-down-s .ui-icon-home { } -.ui-btn-down-s .ui-icon-search { } +.ui-btn-down-s .ui-icon-home {.tizen-icon-common; background-image: url(images/controls/button/00_button_home_press.png); } +.ui-btn-down-s .ui-icon-search {.tizen-icon-common; background-image: url(images/controls/button/00_button_search_press.png); } .ui-btn-down-s .ui-icon-call {.tizen-icon-common; background-image: url(images/controls/button/00_button_call_press.png); } .ui-btn-down-s .ui-icon-rename {.tizen-icon-common; background-image: url(images/controls/button/00_button_rename_press.png); } diff --git a/src/themes/tizen/common/jquery.mobile.listview.less b/src/themes/tizen/common/jquery.mobile.listview.less index a2af156..fb64de1 100755 --- a/src/themes/tizen/common/jquery.mobile.listview.less +++ b/src/themes/tizen/common/jquery.mobile.listview.less @@ -193,10 +193,10 @@ .LESStext-no-ellipsis(); } - .ui-toggleswitch { + .ui-toggle-switch { &:last-child { top : 50%; - margin-top : -20 * @unit_base; + margin-top : -17 * @unit_base; display : inline-block; position : absolute; @@ -204,13 +204,6 @@ right : 0px; } } - .ui-toggleswitch.ui-toggleswitch-image-style { - &:last-child { - margin-top : -17 * @unit_base; - - right : 0px; - } - } [data-role="button"] { &:last-child { @@ -776,6 +769,42 @@ li:not(.ui-li-has-multiline) .ui-li-text-sub { } } +// Edit list mode +.ui-listview { + li.ui-li-dialogue-edit{ + padding-left : 116 * @unit_base; + padding-top : 12 * @unit_base; + padding-bottom : 12 * @unit_base; + + .ui-edit-title { + position : absolute; + left : 10 * @unit_base; + width : 91 * @unit_base; + padding-right : 8 * @unit_base; + display : inline-block; + top : 50%; + margin-top : -13 * @unit_base; + + border-right-color : rgba(185, 184, 178, 1); + border-right-width : 1px; + border-right-style : solid; + } + + input { + font-size : 22 * @unit_base; + background : transparent; + outline-color : transparent; + width : 100%; + padding-left : 0px; + padding-right : 0px; + } + } + + > .ui-li.ui-li-dialogue-edit.ui-li-has-right-btn { + padding-right : 110 * @unit_base; + } +} + // ========= // bubble li // ========= @@ -889,73 +918,3 @@ li:not(.ui-li-has-multiline) .ui-li-text-sub { } } -// Expandable list animation -.ui-listview { - .ui-li-expanded { - background-color: @color_list_expandable_expanded_bg; - } - .ui-li-expanded .ui-li-expanded { // 3rd~ more depth - background-color: @color_list_expandable_expanded_bg; - } - .ui-li-expandable-shown { - // Down arrow - .LESSimg-expanded-icon; - } - .ui-li-expandable-hidden { - // Right arrow - .LESSimg-expand-icon; - } - .ui-li-expanded { - overflow-x: hidden; - } - .ui-li-expand-transition-show { - visibility: visible; - -webkit-transition: all 0.2s ease; - -moz-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - -ms-transition: all 0.2s ease; - transition: all 0.2s ease; - } - .ui-li-expand-transition-hide { - visibility: hidden; - height: 0px !important; - min-height: 0px !important; - padding-top: 0px; - padding-bottom: 0px; - border-top: 0px !important; - border-bottom: 0px !important; - -webkit-transition: all 0.2s ease; - -moz-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - -ms-transition: all 0.2s ease; - transition: all 0.2s ease; - } -} - - -.LESSimg-expand-icon(@right:@list-li-padding-horizontal, @size:37*@unit_base) { - .ui-li-expand-icon { - background-image: url(images/00_button_expand_closed.png); - background-size: 100%; - position: absolute; - top: 50%; - width: 37 * @unit_base; - height: 37 * @unit_base; - margin-top: -(@size/2); - right: 18 * @unit_base; - } -} - -.LESSimg-expanded-icon(@right:@list-li-padding-horizontal, @size:37*@unit_base) { - .ui-li-expanded-icon { - background-image: url(images/00_button_expand_opened.png); - background-size: 100%; - position: absolute; - top: 50%; - width: 37 * @unit_base; - height: 37 * @unit_base; - margin-top: -(@size/2); - right: 18 * @unit_base; - } -} - diff --git a/src/themes/tizen/common/jquery.mobile.theme.less b/src/themes/tizen/common/jquery.mobile.theme.less index 5291b85..83c1111 100755 --- a/src/themes/tizen/common/jquery.mobile.theme.less +++ b/src/themes/tizen/common/jquery.mobile.theme.less @@ -199,17 +199,18 @@ } [data-role="controlgroup"] { - width : 245 * @unit_base; /* temp value */ - margin-left : auto; margin-right : auto; margin-top : 6 * @unit_base; /* temp value */ margin-bottom : 6 * @unit_base; /* temp value */ + padding-left : 58 * @unit_base; + padding-right : 58 * @unit_base; + [data-role="button"] { background : transparent; - width : 77 * @unit_base; + min-width : 77 * @unit_base; border-style : solid; border-color : @color_bar_divider_line; diff --git a/src/themes/tizen/common/jquery.mobile.tizen.datetimepicker.less b/src/themes/tizen/common/jquery.mobile.tizen.datetimepicker.less index c211694..58fc0ab 100755 --- a/src/themes/tizen/common/jquery.mobile.tizen.datetimepicker.less +++ b/src/themes/tizen/common/jquery.mobile.tizen.datetimepicker.less @@ -3,7 +3,7 @@ .ui-datefield { .ui-datefield-seperator { display: inline-block; - min-width: 30 * @unit_base; + min-width: 10 * @unit_base; text-align: center; } @@ -12,7 +12,7 @@ } .ui-datefield-tab { - min-width: 60 * @unit_base; + min-width: 20 * @unit_base; } .ui-btn-box-s .ui-btn-inner.ui-btn-hastxt { padding: 0.1em 0.5em; @@ -39,7 +39,7 @@ margin-top: -0.3em; height: 28 * @unit_base; right: auto; - position: relative; + position: relative ! important; } .ui-datetime-text-sub { diff --git a/src/themes/tizen/common/jquery.mobile.tizen.multimediaview.less b/src/themes/tizen/common/jquery.mobile.tizen.multimediaview.less index eb288e1..431a0e2 100755 --- a/src/themes/tizen/common/jquery.mobile.tizen.multimediaview.less +++ b/src/themes/tizen/common/jquery.mobile.tizen.multimediaview.less @@ -19,38 +19,10 @@ z-index : @z_base_header_footer + 100 !important; } -.ui-multimediaview-video { - background-color : @color_multimediaview_control_bg !important; -} - .ui-multimediaview-control span { display : inline-block; } -.ui-multimediaview-control span.ui-play-icon { - background-image : url(./images/00_button_play.png); -} - -.ui-multimediaview-control span.ui-pause-icon { - background-image : url(./images/00_button_pause.png); -} - -.ui-multimediaview-control span.ui-volume-icon { - background-image : url(./images/controls/00_slider_button_volume_02.png); -} - -.ui-multimediaview-control span.ui-mute-icon { - background-image : url(./images/controls/00_slider_button_volume_01.png); -} - -.ui-multimediaview-control span.ui-fullscreen-on { - background-image : url(./images/00_button_fullscreen_on.png); -} - -.ui-multimediaview-control span.ui-fullscreen-off { - background-image : url(./images/00_button_fullscreen_off.png); -} - .ui-multimediaview-control { position : absolute; display : block; @@ -68,24 +40,20 @@ background-repeat : no-repeat; width : 74 * @unit_base_multimediaview; height : 74 * @unit_base_multimediaview; - .LESSborder-radius-all( 6 * @unit_base_multimediaview); - background-color : @color_multimediaview_button_bg; margin : 4 * @unit_base_multimediaview; } .ui-multimediaview-control .ui-playpausebutton { - background-color : transparent !important; float : left; } .ui-multimediaview-control .ui-timestamplabel { text-align : center; - color : @color_multimediaview_timestamp_text; float : left; } .ui-multimediaview-control .ui-timestamplabel p { - margin-top : -6 * @unit_base_multimediaview; + margin-top : -9.8 * @unit_base_multimediaview; margin-left : 4 * @unit_base_multimediaview; padding : 0; text-align : center; @@ -96,12 +64,11 @@ .ui-multimediaview-control .ui-durationlabel { text-align : center; - color : @color_multimediaview_duration_text; float : right; } .ui-multimediaview-control .ui-durationlabel p { - margin-top : -6 * @unit_base_multimediaview; + margin-top : -9.8 * @unit_base_multimediaview; margin-right : 4 * @unit_base_multimediaview; padding : 0; text-align : center; @@ -111,7 +78,7 @@ } .ui-multimediaview-control .ui-seekbar { - margin-top : 16 * @unit_base_multimediaview; + margin-top : 11.5 * @unit_base_multimediaview; padding-left : 4 * @unit_base_multimediaview; padding-right : 4 * @unit_base_multimediaview; height : 16 * @unit_base_multimediaview; @@ -123,7 +90,6 @@ padding : 0; width : 100%; height : 16 * @unit_base_multimediaview; - background-color : @color_multimediaview_bar_gray; border-radius : 1.5em; } @@ -132,11 +98,6 @@ padding : 0; height : 16 * @unit_base_multimediaview; position : absolute; - background : -webkit-gradient(linear, left top, left bottom, from(#6298D9), to(#295B98)); - background : -moz-linear-gradient(top, #6298D9, #295B98); - background : -o-linear-gradient(top, #6298D9, #295B98); - background : -ms-linear-gradient(top, #6298D9, #295B98); - background-color : @color_multimediaview_bar_active; border-radius : 1.5em; } @@ -157,7 +118,6 @@ width : 160 * @unit_base_multimediaview; height : 16 * @unit_base_multimediaview; position : absolute; - background-color : @color_multimediaview_bar_gray; border-radius : 1.5em; } @@ -166,11 +126,6 @@ padding : 0; height : 16 * @unit_base_multimediaview; position : absolute; - background : -webkit-gradient(linear, left top, left bottom, from(#6298D9), to(#295B98)); - background : -moz-linear-gradient(top, #6298D9, #295B98); - background : -o-linear-gradient(top, #6298D9, #295B98); - background : -ms-linear-gradient(top, #6298D9, #295B98); - background-color : @color_multimediaview_bar_active; border-radius : 1.5em; } @@ -180,11 +135,78 @@ width : 30 * @unit_base_multimediaview; height : 30 * @unit_base_multimediaview; position : absolute; - background-color : @color_multimediaview_bar_handle; - background : -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), to(#E6E6E6)); - background : -moz-linear-gradient(top, #FFFFFF, #E6E6E6); - background : -o-linear-gradient(top, #FFFFFF, #E6E6E6); - background : -ms-linear-gradient(top, #FFFFFF, #E6E6E6); - border : solid 1px @color_multimediaview_button_border; + border-style: solid; + border-width: 1px; border-radius : 1.5em; } + +/* S +-----------------------------------------------------------------------------------------------------------*/ + +.ui-multimediaview-s { + .ui-multimediaview-video { + background-color : @color_multimediaview_control_bg; + } + + .ui-timestamplabel { + color : @color_multimediaview_timestamp_text; + } + + .ui-durationlabel { + color : @color_multimediaview_duration_text; + } + + span.ui-button { + background-color : @color_multimediaview_button_bg; + } + + span.ui-play-icon { + background-image : url(./images/00_button_play.png); + } + + span.ui-pause-icon { + background-image : url(./images/00_button_pause.png); + } + + span.ui-volume-icon { + background-image : url(./images/controls/00_slider_button_volume_02.png); + } + + span.ui-mute-icon { + background-image : url(./images/controls/00_slider_button_volume_01.png); + } + + span.ui-fullscreen-on { + background-image : url(./images/00_button_fullscreen_on.png); + } + + span.ui-fullscreen-off { + background-image : url(./images/00_button_fullscreen_off.png); + } + + .ui-seekbar { + .ui-duration { + background-color : @color_multimediaview_bar_gray; + } + + .ui-currenttime { + .LESSmultimediaview_bar_active_style(); + } + } + + .ui-volumebar { + .ui-guide { + background-color : @color_multimediaview_bar_gray; + } + + .ui-value { + .LESSmultimediaview_bar_active_style(); + } + + .ui-handler { + .LESSmultimediaview_bar_handle_style(); + border-color : @color_multimediaview_button_border; + } + } +} + diff --git a/src/themes/tizen/common/jquery.mobile.tizen.progress.less b/src/themes/tizen/common/jquery.mobile.tizen.progress.less index 0b6103d..f68c42b 100644 --- a/src/themes/tizen/common/jquery.mobile.tizen.progress.less +++ b/src/themes/tizen/common/jquery.mobile.tizen.progress.less @@ -45,35 +45,6 @@ } } -.ui-progress-pending-bg { - position: relative; - top: 0; - margin-left: @bar-margin; - margin-right: @bar-margin; - height: 18 * @unit_base; - - //FIXME - //background-image: url(images/00_winset_list_progress_bg.png); - background-color: @color_progress_bar0; - .LESSborder-radius-all( 10 * @unit_base ); -} - -.ui-progress-container-pending { - position: relative; - overflow: hidden; - - top: 5 * @unit_base; - height: @bar-height; - margin-left: 5 * @unit_base; - margin-right: 5 * @unit_base; - - .LESSborder-radius-all( 10 * @unit_base ); - border: 1px; - border-style: solid; - border-color: rgb(180, 180, 180); - .LESSbox-shadow(1px, -1px, 1px, rgb(180, 180, 180)); -} - .ui-progress-pending { position: relative; top: 0; @@ -82,37 +53,16 @@ padding-top: 0; padding-bottom: 0; - background: -webkit-linear-gradient(-45deg, - transparent, - transparent 10%, - @color_progress_bar1 10%, - @color_progress_bar1 20%, - transparent 20%, - transparent 30%, - @color_progress_bar1 30%, - @color_progress_bar1 40%, - transparent 40%, - transparent 50%, - @color_progress_bar1 50%, - @color_progress_bar1 60%, - transparent 60%, - transparent 70%, - @color_progress_bar1 70%, - @color_progress_bar1 80%, - transparent 80%, - transparent 90%, - @color_progress_bar1 90%); - background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, rgba(0,0,0,0)), color-stop(25%, rgba(0,0,0,0)), - color-stop(25%, @color_progress_bar1), - color-stop(50%, @color_progress_bar1), + color-stop(25%, @color_progress_value0), + color-stop(50%, @color_progress_value0), color-stop(50%, rgba(0,0,0,0)), color-stop(75%, rgba(0,0,0,0)), - color-stop(75%, @color_progress_bar1)); + color-stop(75%, @color_progress_value0)); background-color: @color_progress_bar0; diff --git a/src/themes/tizen/common/jquery.mobile.tizen.progressbar.less b/src/themes/tizen/common/jquery.mobile.tizen.progressbar.less index 774d291..cbef91c 100644 --- a/src/themes/tizen/common/jquery.mobile.tizen.progressbar.less +++ b/src/themes/tizen/common/jquery.mobile.tizen.progressbar.less @@ -14,13 +14,18 @@ .ui-progressbar-value { height: 100%; - //FIXME - //background-image: url(images/00_winset_list_progress_bar.png); - background-color: @color_progress_bar1; + background-image: -webkit-gradient( + linear, + left bottom, + left top, + color-stop(0, @color_progress_value0), + color-stop(1, @color_progress_value1) + ); .LESSborder-radius-all( 10 * @unit_base ); + .LESSbox-shadow(-1px, -1px, 1px, rgb(179, 200, 226)); } -.ui-progress-bg { +.ui-progressbar-bg { position: relative; overflow: hidden; @@ -32,8 +37,9 @@ .LESSborder-radius-all( 10 * @unit_base ); border: 1px; border-style: solid; - border-color: rgb(180, 180, 180); - .LESSbox-shadow(1px, -1px, 1px, rgb(180, 180, 180)); + border-color: @color_progress_boarder; + .LESSbox-shadow(1px, -1px, 1px, @color_progress_boarder); + background-color: @color_progress_bar0; } .ui-progressbar { @@ -42,8 +48,13 @@ margin-right: @bar-margin; height: @bar-height; - //FIXME - //background-image: url(images/00_winset_list_progress_bg.png); - background-color: @color_progress_bar0; + background-image: -webkit-gradient( + linear, + left bottom, + left top, + color-stop(0, @color_progress_bar1), + color-stop(1, @color_progress_bar0) + ); + .LESSbox-shadow(1px, 1px, 0px, white); .LESSborder-radius-all( 10 * @unit_base ); } diff --git a/src/themes/tizen/common/jquery.mobile.tizen.scrollview.handler.less b/src/themes/tizen/common/jquery.mobile.tizen.scrollview.handler.less index 0b5853e..e0ff36a 100755 --- a/src/themes/tizen/common/jquery.mobile.tizen.scrollview.handler.less +++ b/src/themes/tizen/common/jquery.mobile.tizen.scrollview.handler.less @@ -7,14 +7,14 @@ overflow : hidden; } -.ui-handler-y { +.ui-handler-direction-y { top : 10 * @unit_base_handler; right : 10 * @unit_base_handler; bottom : 10 * @unit_base_handler; width : 48 * @unit_base_handler; } -.ui-handler-x { +.ui-handler-direction-x { right : 10 * @unit_base_handler; bottom : 10 * @unit_base_handler; left : 10 * @unit_base_handler; @@ -31,22 +31,36 @@ position : absolute; top : 0; left : 0; - background-color : @color_scrollview_handler_bg; background-position : center; background-repeat : no-repeat; .LESSborder-radius-all(5 * @unit_base_handler); } -.ui-handler-y .ui-handler-thumb { +.ui-handler-direction-y .ui-handler-thumb { width : 48 * @unit_base_handler; height : 214 * @unit_base_handler; - background-image : url("images/00_scroll_bar_handler.png"); background-size : 48 * @unit_base_handler 40 * @unit_base_handler; } -.ui-handler-x .ui-handler-thumb { +.ui-handler-direction-x .ui-handler-thumb { width : 214 * @unit_base_handler; height : 48 * @unit_base_handler; - background-image : url("images/00_scroll_bar_handler_hor.png"); background-size : 40 * @unit_base_handler 48 * @unit_base_handler; } + +/* S +-----------------------------------------------------------------------------------------------------------*/ + +.ui-handler-s { + .ui-handler-thumb { + background-color : @color_scrollview_handler_bg; + } + + .ui-handler-direction-y .ui-handler-thumb { + background-image : url("images/00_scroll_bar_handler.png"); + } + + .ui-handler-direction-x .ui-handler-thumb { + background-image : url("images/00_scroll_bar_handler_hor.png"); + } +} diff --git a/src/themes/tizen/common/jquery.mobile.tizen.slider.less b/src/themes/tizen/common/jquery.mobile.tizen.slider.less old mode 100644 new mode 100755 index e52668f..11c88ab --- a/src/themes/tizen/common/jquery.mobile.tizen.slider.less +++ b/src/themes/tizen/common/jquery.mobile.tizen.slider.less @@ -20,8 +20,19 @@ select.ui-slider-switch { position: relative; vertical-align: middle; + height: 18 * @unit_base; margin-left: 16 * @unit_base; margin-right: 16 * @unit_base; + + background-image: -webkit-gradient( + linear, + left bottom, + left top, + color-stop(0, @color_progress_bar1), + color-stop(1, @color_progress_bar0) + ); + .LESSbox-shadow(1px, 1px, 0px, white); + .LESSborder-radius-all( 10 * @unit_base ); } .ui-slider-icon-bg { @@ -34,7 +45,7 @@ select.ui-slider-switch { position: absolute; vertical-align: middle; - top: -0.35rem; + top: -0.5rem; left: -50 * @unit_base; height: @img-height; width: @img-width; @@ -52,7 +63,7 @@ select.ui-slider-switch { .ui-slider-right-bright { position: absolute; - top: -0.35rem; + top: -0.5rem; right: -50 * @unit_base; height: @img-height; width: @img-width; @@ -71,7 +82,7 @@ select.ui-slider-switch { .ui-slider-left-text { position: absolute; - top: -0.35rem; + top: -0.5rem; left: -52 * @unit_base; height: 37 * @unit_base; width: 37 * @unit_base; @@ -83,7 +94,7 @@ select.ui-slider-switch { .ui-slider-right-text { position: absolute; - top: -0.35rem; + top: -0.5rem; right: -52 * @unit_base; height: 37 * @unit_base; width: 37 * @unit_base; @@ -92,19 +103,23 @@ select.ui-slider-switch { color: rgb(100, 100, 100); } -div.ui-slider { - display: inline-block; - overflow: visible; +div.ui-slider:not(.ui-toggle-switch) { + position: relative; - height: 18 * @unit_base; - width: 100%; + top: 5 * @unit_base; + height: 7 * @unit_base; + margin-left: 5 * @unit_base; + margin-right: 5 * @unit_base; - //FIXME - //background-image: url(images/00_progress_bg.9.png); - background-color: rgb(236,233,229); + .LESSborder-radius-all( 10 * @unit_base ); + border: 1px; + border-style: solid; + border-color: @color_progress_boarder; + .LESSbox-shadow(1px, -1px, 1px, @color_progress_boarder); + background-color: @color_progress_bar0; .ui-btn { - top: -0.45rem; + top: -0.8rem; margin-top: 0; } .ui-btn-inner { @@ -136,14 +151,14 @@ a.ui-slider-handle { width: @popup-width; height: @popup-height; - top: -56 * @unit_base; + top: -60 * @unit_base; padding-top: 0.1rem; color: @color_slider_popup_text; text-align: center; font-size: 1.5rem; - background: url(images/00_slider_popup_bg.png) no-repeat; + background: url(images/controls/00_slider_popup_bg.png) no-repeat; .LESSbackground-size(@popup-width, @popup-height); } @@ -151,20 +166,18 @@ a.ui-slider-handle { position: relative; top: -36 * @unit_base; - height: 18 * @unit_base; + height: 7 * @unit_base; width: 0; - //FIXME - //background-image: url(images/00_progress_bar.9.png); background-image: -webkit-gradient( linear, left bottom, left top, - color-stop(0.2, rgb(236,233,229)), - color-stop(0.2, rgb(54,119,155)), - color-stop(0.8, rgb(54,119,195)), - color-stop(0.8, rgb(236,233,229)) + color-stop(0, @color_progress_value0), + color-stop(1, @color_progress_value1) ); + .LESSborder-radius-all( 10 * @unit_base ); + .LESSbox-shadow(-1px, -1px, 1px, rgb(179, 200, 226)); } .ui-slider-handle-press { diff --git a/src/themes/tizen/common/jquery.mobile.tizen.toggleswitch.less b/src/themes/tizen/common/jquery.mobile.tizen.toggleswitch.less index ede462e..784ae08 100755 --- a/src/themes/tizen/common/jquery.mobile.tizen.toggleswitch.less +++ b/src/themes/tizen/common/jquery.mobile.tizen.toggleswitch.less @@ -1,131 +1,64 @@ @import "config.less"; -.ui-toggleswitch { - height: 40 * @unit_base; - width: 30 * @unit_base; - overflow: hidden; - .ui-toggleswitch-mover { - position: relative; - font-size : 13 * @unit_base; - line-height : 20 * @unit_base; - display: block; - .ui-toggleswitch-off { - border-radius: 5 * @unit_base; - color: @color_text_sub; - .LESStoggleswitch_off_style; - height: 40 * @unit_base; - .ui-toggleswitch-img{ - width: 100%; - position: absolute; - padding-top: 7 * @unit_base; - .ui-toggleswitch-sign{ - position: absolute; - width: 66 * @unit_base; - height: 35 * @unit_base; - /*left: 50%;*/ - margin-left:-2px; - background: url(images/00_button_off.png) no-repeat; - background-size: cover; - -ms-background-size: cover; - -webkit-background-size: cover; - -o-background-size: cover; - -moz-background-size: cover; - } - } - } +div.ui-slider.ui-toggle-switch { + width: 66 * @unit_base; + height: 35 * @unit_base; + background-color : transparent; - .ui-toggleswitch-on { - display: none; - border-radius: 5 * @unit_base; - .LESStoggleswitch_on_style; - height: 40 * @unit_base; - color: white; - .ui-toggleswitch-img{ - width: 100%; - position: absolute; - padding-top: 6 * @unit_base; - text-align: center; - .ui-toggleswitch-sign{ - position: absolute; - width: 66 * @unit_base; - height: 35 * @unit_base; - left: 50%; - margin-left:-7px; - background: url(images/00_button_on.png) no-repeat; - background-size: cover; - -ms-background-size: cover; - -webkit-background-size: cover; - -o-background-size: cover; - -moz-background-size: cover; - } - } - } + .ui-slider-label { + position: absolute; + width: 66 * @unit_base; + height: 35 * @unit_base; + background-size: cover; + -ms-background-size: cover; + -webkit-background-size: cover; + -o-background-size: cover; + -moz-background-size: cover; - .ui-toggleswitch-reed { - position: absolute; - border-radius: 5 * @unit_base; - width: 28 * @unit_base; - .LESStoggleswitch_reed_style; - top: 20 * @unit_base; - height: 19 * @unit_base; - left: 1px; + &.ui-slider-label-a { + background: url(images/00_button_on.png) no-repeat; } - .ui-toggleswitch-text { - width: 100%; - position: absolute; - text-align: center; - text-overflow: ellipsis; + &.ui-slider-label-b { + background: url(images/00_button_off.png) no-repeat; } } -} - -.ui-toggleswitch-state-checked { - .ui-toggleswitch-mover { - .ui-toggleswitch-reed { - top: 1px; - } - .ui-toggleswitch-text { - top: 20 * @unit_base; - } - .ui-toggleswitch-img{ - top: 20 * @unit_base; - } - .ui-toggleswitch-on { - display: block; - } - - .ui-toggleswitch-off { - display: none; + .ui-slider-inneroffset { + a { + background : none; } } } -.ui-toggleswitch.ui-toggleswitch-image-style { - display : inline-block; - - width : 66 * @unit_base; - height : 35 * @unit_base; - .ui-toggleswitch-mover { - - .ui-toggleswitch-off, - .ui-toggleswitch-on { - background-image : none; - - height : 66 * @unit_base; - width : 35 * @unit_base; +div.ui-slider.ui-slider-switch:not(.ui-toggle-switch) { + position : relative; + width : 5.5em; + height : 32 * @unit_base; - .ui-toggleswitch-img { - padding-top : 0px; - top : 0px; - - .ui-toggleswitch-sign { - left : 0px; - margin-left : 0px; - } - } + a.ui-slider-handle { + position : absolute; + background : rgba(255, 255, 255, 1); + top : -34 * @unit_base; + margin-top : 30 * @unit_base; + border-radius : 15 * @unit_base; + border : 2px solid gray; + } + span { + position : absolute; + overflow : hidden; + text-align : center; + height : 32 * @unit_base; + font-weight : bold; + border-radius : 10 * @unit_base; + &.ui-slider-label-a { + left : 0px; + color : white; + } + &.ui-slider-label-b { + right : 0px; + color : black; } } } \ No newline at end of file diff --git a/src/themes/tizen/tizen-white/images/controls/00_slider_popup_bg.png b/src/themes/tizen/tizen-white/images/controls/00_slider_popup_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..adb5342154823a47805153c195ffe2e6d94ed497 GIT binary patch literal 3580 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 literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_back.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_back.png new file mode 100644 index 0000000000000000000000000000000000000000..f87dcaf542bd8e62b08da684118652b4f61df7c4 GIT binary patch literal 3870 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 ZkPMt(&*eDgL-6nlp!LmAWqK~5{{#C#aYg_D literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_back_press.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_back_press.png new file mode 100644 index 0000000000000000000000000000000000000000..9e5efd59fac694ea25e527146d2b0a9c8e1abc82 GIT binary patch literal 3261 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 literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_check_press.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_check_press.png new file mode 100644 index 0000000000000000000000000000000000000000..edfb7883a2ecc9d94bc16fa1030128cab3270db1 GIT binary patch literal 580 zcmeAS@N?(olHy`uVBq!ia0vp^ULefD1|(%J94Z7-jKx9jP7LeL$-D$|*pj^6T^Rm@ z;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-AbW|YuPgf<9&UCi`R2`k|UsP5DnGHufX{GyT%LH^G6AQn zeyJB{t_l}17XN?Y_gg7bmrXCcwfqlNnQhss)IL)#BVxt#bxYp8z2-DGR3o(9_I>T; z1mEl5?#z*(W@NQ9BLbg+!T29T@)1AXZjA;Vkg%t#pUXO@ GgeCxZlJ-de literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_gear.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_gear.png new file mode 100644 index 0000000000000000000000000000000000000000..74f3b2335c85035477b55f157ad27e45f266d493 GIT binary patch literal 4892 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 AO8@`> diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_grid.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_grid.png new file mode 100644 index 0000000000000000000000000000000000000000..39b2aea4c59217b705a505fc5d9933c8be19f7a6 GIT binary patch literal 6436 zcmYLMbyU>P*Z$BQA|>4j!os?Av*fY}y0Fq9xrB5}3rH!kbc#y1ASECxAR)adNT(nz zB}>12|M;Ev%(*l7+&}J|8#DKL;vVa1QIWHd0{}n;(^f~^o;v>tDe>*jHrC|{0Oa~k zYHE)kJG%S0dpo*&aKY5nxIDbv9h{!q13{Ig+7;(0k8=5U>wmDvS6duMWMFvh9P7kQONQ9OEDw=rV z`B?%6Kp`RUY|z$b6?iNPJQECCp8&%1aoIt5fLR(h172YYz;)L?RvmDZ2dYM&#%ln^ z;sCt^yhj%JB?^ecj2yIqx@G_~LQ7E(kWvETPhz8m0Ky>PSwAmt01%Z8&}$wVDI7eg zq1_O^%~W>1LMxxFMuZuus3(b$5s2gd2#o0gy_7Y+b&d+CD=_=s!w3nQrK2GLC`@6v zjrQm&V1&A6WJD^liP}nZtCRSK$Hr#$`uAw1hYA2J`-F~Pi-n5EQE3DUH)o8FJpRj##=GR!>FM8VYrk}Qpk~(JjY6(bT~-*QtLJB-3YVuR zOJ7#_A|6^qXc6L;x`vK*i`hoeWKlMA>q%Od%@jA6>=QgaFq>9mVfxi4be@UoIj@f% z7W2eG(L&$&u{U-riy{{UN{f;}owE{NP>N`og)PB9xFD^u4`$^Q01n&Szy7#SN)YZC zxjgEBv#)%mRmcy7JHXJly=AG+2QvKLpxj3a0P2Mi!gZ>w$6uL6FvM(MiRQjiTt1VE zg7WorL204ncHwMZ&xER8LhrvCu45N|CiX*xT>|sO@l~n^HK+^OLapdQb8byq@b!Ls z1R0@fKj~d-?wMFTn|Nd1L{g^gXdL%fZ9=*PKCXdS`X@Z_6iIC`BHoY-sm*?<=!GvE zW3Kr*MZO<+`10~qyB0VtqW+2E56VWh)-q|9D9!g2V|G5^oFvA=+%d0DEQ+tC-ffIk zI?~J}DXH~|WBxFcKzg2wgL=E6A7wEe)_OjGHts-cPJFy-8=ub!&p@AWj zBJ_uHS#zjr8|xbD{n9SuV&jvzGeag#MiBL+OOPkE4E{;r^PRIEW}AoL7-MY_-buQo zyJECKv1&cid~|VY4+UG3@nIi}46$@rO{^P&cT=Q1S3;YGH+5jf&ZVA2Hcf=d^(3-=9m$7a8v6~<{yG%e@d!X z43T}YsQdSFnMs&Y_xzb_vvf=DO(fjwGZdEwZ)a^}(`36NjfI{VNN2}HLUM>pTdkq01+%8m=uY4mUdjviXPY3%6w`Ei(T> zrF&TgUo685blpoA0y{R&*+Rsw46j_zOHZ^Yjfop5`G{vJN0=49NqV{~u#5H09z0RA z=vGlHwobRsT#ia<9as49Q}c}`&1@~H!MVrc+6dNN= zEgCed^Q-wM+p612@07OcrRr4{OrpB$4w?p<%A4=i{r*KfThrv)6k?6CVL~;3tLffL z?MMyz9P;K$k%TH{n!1wRls(k@lNY_*Q@Mqlk-RyI*bT$?tJxinr8UI;rw_gg189P2s8W( z+>2oD&O~LoS^IzW)4Qs#3tLqgRFhs-zx@5Rn%l8|C%KyYbR%mdWyFa(`f=!=$uSb^ zb?b!gP)fn*m}sL{%84Ga#w_FDOiBOoIW_M^^>g(M^@Us%SYNhQR7X-+sRHDzFeCk0 z;^YoG79?CF<@Wr`;^pp9%u4Zmgb6+Fw;#;WEb8{D*h_`4hJYwTg{BDgBEKhFNrP7_xl`CM(@#AuRs3_L~jzp&-wovO1euGu^(e>Bg z+!C6_IMPW5TpE(Ah)hJuo1i6s3{CG(36s>L?2Q~chvUA>W>gkD7~UOf_&%E~owxt? zW|yvuZW-NF{0eR)%5J>gQROUKuizOtOTNlL^x)M~;wpuf_$Fc3pZb-%MwvCC9Re>N zxkOlg{r>W6Bc97P1(N)CbjbGH)UJiTv6#tXqxJc#d{!lfxcD0SS*A>euwVD*0)Df` zxPR}=o=f{wUfI)XH|l_O*j!%_Eij|bsK{K;q;{j4p7}(z`1I56$v=%*vCQH7vu%-0 zYONnS66E*KfBv zR@qgZR-2Fcscd#V_iKMH%o*cfcr-qzbxIr^IeMLPl0>6Ml$4z`_=@V)c7cqNtn7-i z*VX1_soJRBs6YYJ_516=8YV`uP~6Y$sgd!l@pqYrnW>$w!NpfwnC*MDv%Out9A5?k zAYjYmrx&|l{pbAI_dhJs=&uEHh26h#Jo|WJFjjhzdM`EghL9lZ=+YJcGu^tFWUq_0~e>p>5&~02Fus6FeX%kNMU};sbl6K{7{4LBh=WG5YO108l@LsjC_W z%$HbLkpy>l2shzxv>B`3ZDqN)=sFKz#Mt!v7Mvjn4cz9euq4=Cjwk(lalhZ ztc-b(R)6Jx+kT!1_=~Ld*1wGWl z$;OwBJl}uQLAxghRgM3MKL02N`If^iwh)>BQ(3~Hq_ZI$wroE-cHc~KhLJ9dj=qAt z6_Ez`%hSpfE}CtHoe(OX+Dh=cZcfdkEHpwStT{k} z9#RMv8;+px!#iOA7~gV`6!r~SG7sgL@(LB&_?O@tKiJGfPr^($rlusx$N=q7TFmOL zCsT9+d|12zee(k5!e7nX%82PWyD-r<$<^jqTeLD7+VBLd?(NKI8a_rJ_DJCeqy{H+ zxjC)Sa9^euZ6Ep`wC`)mJ|$hYhV6ep&2trljrK5?O6j`VDj&^1{MGn|Q`Pl-wosI~ z1-64v@CQ@Yu=u`@4jH(2lmKVLNSVM?Usx}7<}Zh)7BD$<*)El_pldiQO{2F}fMPo* zrK`UP+47Xp;t%VBd#~`!g`5)kk_|UWj_fEVWJoa6fFFL{n`9lY2)$Gvs_^c->ZHZa z-*11NcSj#9!5#oZ9`C4U#hNvtsR$i%?jfQ&C^qFww~2N!!F*%Dz7N_8sLMTC)2I}0 zg^jdj7QyjEGSVbP#aih9$^w>0{tF~a+W<8%wyls|J7txvu*Je)8^uSTbLN+LYtC6W>FgG_#g?W z!^hwSDmD6>p(hDieCxJWb{g0ts*7>at6Wdzz^j7{K!$c+?F`$w%aDUN#dL8=qP=y63$`$c=75EU*TEfZdI8 zPC3m-RIk^`$?N#dXxgRJnGa+FxFTxthQ43~XQq$FK^584D#?bcyc<*vayF8uv^4E0 zF4#fm+&AP1PP)9f5Ga%4e)*W!jMTbd_TM1zuYZqc-}2)`adHOiTqlwfDkX%b0c5_P z8NubE)}&Gz)=^3h4o2UYZwOV;$2yyB-_L-6csnz!9ncB-uvvyHqwOLCGE(yl9QCYx zQh(r&5iH@-5K_&Z0)ZJt#^bBVJ0U1Tx)2dlcN^Yso|s=4_4Sl%v08_&D+Y zPK)quT;y$p_|HAzloHby|{t+)IXCcMXjQxt+FTci2;nge7LrEB^Yc>~M?W zL)fg+q)+$Fp@Pxfs5h@X9He=`-?(9nAX<4 z1P0O@ZKiXhHPb23@(ZkLq?}@V_7NS?oEUlj>I87&V0x^AU$+A(rWo8S#&9P{`-z*D zq%*X2nqTukqk!2qIAV=OtZtWN>Ff1(u%1yAZANjL8@|Ueu-?&@i73gMhQc1Wu$WHG z*n@jBwXgdUO@|(*oKeCccsmqJpG`>@d+~xSoBJnn!tgwT6{&<40xhsaLdBhNU=X24 z5W)IZqz0Np@JtJB$uFyg1p}ZF({xA_&t8>OgIX@4?kl#1d)>d*PcFYyK7WK4iBu$8 z>Ul2U+fMLIA8iF`DDZ0wX)Brrs4G+x+6&3}HkxO5GqNpyx;5WcegMxi`wXSJ1KLys z+~7i2?<*>P0#axNfx)<)$`%!DPelcFS%ovKZT`zwxcH8b9IsfJf+Hzjz8*=w9tznu zzd*S(5A>pzOx6Q|A8yS|+AqS_PVw0ApM`CRZfoI-$E}U;`UOR1TbLk!PEacdwmn7P zw7m!nxmv2Icv_lPP*$Rtr2orvCktd(>m|HXFBOwbU^5-DHn4D)`DKRGL zDit1CQE~36vw5ah>g|n0dILizWxr6N8cVWtn3jqP4jrKm4%?n*QIb0#-8dgLQl?}D zGi*zV#5e0M8X#|p0;dnVIE}%Cs0wCJQ+c}dEpY<6!sv~>!CS(&u}4svHJwA-CCQf= zK)73bSeLi9G4y;Q>rEA1||?Xiri6yFwm}YY&-zc7rOeEg|7#>5FSW!qX~n}nA`0&@F_|FvAZXoQ*ahB zr^%-D6;~ZOu2$KL&NOT}8pI6T{Q`FApL-;hI|3nabYs_Wcg84-R2F>sBg%IQ{9S5F zVm%r`OC1|{+tld43H1I7Z_hkFIyi1&RZ6xfIk)bCx#y_O4)Jk#v4dX->GCLGZjq}$?L4}A3dkrF ze|l$0#{yQhzqx0tpoy)HCUC9bX(xQPpN16(+pqypQohgPg?l=)r*DUSKA>RXmwr($ zCnC`xuSWXTOC^5yAT=0DDcV^8Kb)lPn$5czf9~99 z`|4~y0an0aoA>7tmdd^+bMc^)1l6+)1!B4sb7Qt0RiI;vEvhEX$Y&% zk)cpwr_k!vi1(UQfB|r+5G6i4q(|fts@Wg70e^7hpGe9*w~Xvl1)8OnH0(-6g#cc_r04vs^Na?%V}UGZY}4n9bVWFX^TRk5$=&YJ2Gm;xd+4R$p~XmH02I{0@xTp_SS$TYuzknDB>oga8uQ z%ve;v3yBo1t@+HF#-@zNtlW)1x!@&AfU+pMLmk@d5E&vIl#ym$iz(#mvDKKo$6~z`#tq`|_ zM;dP@Gmzq%Q%WUOnx7ryQ3qif1l$Yf)-@5h!Hq~o s%BP2vJ)OKUga4y#|IgrVIyb|BhpxpFm5dGDx1Oz@Z0f2-7z;ux~O9+4z06=<WDR*FRcSTFz- zW=q650N5=6FiBTtNC2?60Km==3$g$R3;-}uh=nNt1bYBr$Ri_o0EC$U6h`t_Jn<{8 z5a%iY0C<_QJh>z}MS)ugEpZ1|S1ukX&Pf+56gFW3VVXcL!g-k)GJ!M?;PcD?0HBc- z5#WRK{dmp}uFlRjj{U%*%WZ25jX z{P*?XzTzZ-GF^d31o+^>%=Ap99M6&ogks$0k4OBs3;+Bb(;~!4V!2o<6ys46agIcq zjPo+3B8fthDa9qy|77CdEc*jK-!%ZRYCZvbku9iQV*~a}ClFY4z~c7+0P?$U!PF=S z1Au6Q;m>#f??3%Vpd|o+W=WE9003S@Bra6Svp>fO002awfhw>;8}z{#EWidF!3EsG z3;bXU&9EIRU@z1_9W=mEXoiz;4lcq~xDGvV5BgyU zp1~-*fe8db$Osc*A=-!mVv1NJjtCc-h4>-CNCXm#Bp}I%6j35eku^v$Qi@a{RY)E3 zJ#qp$hg?Rwkvqr$GJ^buyhkyVfwECO)C{#lxu`c9ghrwZ&}4KmnvWKso6vH!8a<3Q zq36)6Xb;+tK10Vaz~~qUGsJ8#F2=(`u{bOVlVi)VBCHIn#u~6ztOL7=^<&SmcLWlF zMZgI*1b0FpVIDz9SWH+>*hr`#93(Um+6gxa1B6k+CnA%mOSC4s5&6UzVlpv@SV$}* z))J2sFA#f(L&P^E5{W}HC%KRUNwK6<(h|}}(r!{C=`5+6G)NjFlgZj-YqAG9lq?`C z$c5yc>d>VnA`E_*3F2Qp##d8RZb=H01_mm@+|Cqnc9PsG(F5HIG_C zt)aG3uTh7n6Et<2In9F>NlT@zqLtGcXcuVrX|L#Xx)I%#9!{6gSJKPrN9dR61N3(c z4Tcqi$B1Vr8Jidf7-t!G7_XR2rWwr)$3XQ?}=hpK0&Z&W{| zep&sA23f;Q!%st`QJ}G3cbou<7-yIK2z4nfCCCtN2-XOGSWo##{8Q{ATurxr~;I`ytDs%xbip}RzP zziy}Qn4Z2~fSycmr`~zJ=lUFdFa1>gZThG6M+{g7vkW8#+YHVaJjFF}Z#*3@$J_By zLtVo_L#1JrVVB{Ak-5=4qt!-@Mh}c>#$4kh<88)m#-k<%CLtzEP3leVno>={htGUuD;o7bD)w_sX$S}eAxwzy?UvgBH(S?;#HZiQMoS*2K2 zT3xe7t(~nU*1N5{rxB;QPLocnp4Ml>u<^FZwyC!nu;thW+pe~4wtZn|Vi#w(#jeBd zlf9FDx_yoPJqHbk*$%56S{;6Kv~mM9!g3B(KJ}#RZ#@)!hR|78Dq|Iq-afF%KE1Brn_fm;Im z_u$xr8UFki1L{Ox>G0o)(&RAZ;=|I=wN2l97;cLaHH6leTB-XXa*h%dBOEvi`+x zi?=Txl?TadvyiL>SuF~-LZ;|cS}4~l2eM~nS7yJ>iOM;atDY;(?aZ^v+mJV$@1Ote z62cPUlD4IWOIIx&SmwQ~YB{nzae3Pc;}r!fhE@iwJh+OsDs9zItL;~pu715HdQEGA zUct(O!LkCy1<%NCg+}G`0PgpNm-?d@-hMgNe6^V+j6x$b<6@S<$+<4_1hi}Ti zncS4LsjI}fWY1>OX6feMEuLErma3QLmkw?X+1j)X-&VBk_4Y;EFPF_I+q;9dL%E~B zJh;4Nr^(LEJ3myURP{Rblsw%57T)g973R8o)DE9*xN#~;4_o$q%o z4K@u`jhx2fBXC4{U8Qn{*%*B$Ge=nny$HAYq{=vy|sI0 z_vss+H_qMky?OB#|JK!>IX&II^LlUh#rO5!7TtbwC;iULyV-Xq?ybB}ykGP{?LpZ? z-G|jbTmIbG@7#ZCz;~eY(cDM(28Dyq{*m>M4?_iynUBkc4TkHUI6gT!;y-fz>HMcd z&t%Ugo)`Y2{>!cx7B7DI)$7;J(U{Spm-3gBzioV_{p!H$8L!*M!p0uH$#^p{Ui4P` z?ZJ24cOCDe-w#jZd?0@)|7iKK^;6KN`;!@ylm7$*nDhK&GcDTy000JJOGiWi{{a60 z|De66lK=n!32;bRa{vGf6951U69E94oEQKA00(qQO+^RX3=0Pv1CFVXQ2+n~5lKWr zRCwC$TRo2>Aq>UQ7E!wVN7Jpg+dpwv-A4!iFfF^RgUdr0v+G@7!m!9#+cFmi(<9UX|NTNz9Dtpd=0ifw2 zzkYlZO#AnXIm8&j zEcA#l62zJEBTwvs38j?)vQQGE$QL70(Y)*K0-AbW|YuPgf<9&UDVZSj@m%NZD$*gRbvLo)8Y zoo3rDYpD!PULM*wwph{l&Q9L@kNc9K5a32>2LP>s7;QT)_Toq$A;IteAI*= zw_m(^RrF?#*^djCqUyicyx({Iwc+fuJyZ7X+qW!6FIYq5p4L)3R?#}n8umqP`JeI^ zteA4kX6uPhwoG1sS>83QZ|i#3c>aL3eWatnzsb|qUCpYpk=q=#_Ka{qSBTcpw{Lad zmRVPLn@jQDegC~TCv&Z7RCeF-$Dg-;N!q9&)?HXw*!bAOMM-e;y(NF=-OW3mv@v1x z$NH%?tygcr<{HMIb?Nc*U?2=zU<#t!dhVv@lCowU00W*Ndbfo cZT`rvVSK4`P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iyz` z2OBv^rAgxe00I+9L_t(&-tE^ts8V4Z$MNrT=?J1rDsrO5pvbqIt!HZr8p=qt0}bL* zTeL<)ceve%Xt_in*btc1rS}GhAP5o>9OB3wf(uPS;0q{1pu^J=ai@-S?(jhW&-@_% zIFI@jgb+dqA%qY@2-GTv%H^{5JdfFIX5@%iEJmSFpw()rz=NyRs_u5X09clVQp%{Y zT5A@I1))#~$8l&h8h?F*hx}e}JRTE`MoA7cZl=_C3GmcffHRW5@3I?#**DnN096Ev@xc&-3c-cAFd5 zuNgV^;iJctN+nXM)LEs}hoFOx0lPrh@Q3^ZNGqkLfv&Vt>Kjl5J{vmpC-4zC=Qmae z@t?G`>$-X{7%-Vk%p0H-$z+mzK2NjR4BpbUT1|I49V1&>YmL^L<#Ks&Ej=2Ih(sd9 z<8jv4bAM9K6cxA1d_HG18Zn*v|0?+owk!+Vwt4-sW#nga=h+hg&KE1Jt@&ofYAtQ* z*!|wW-65Ox|0lOnOZR%c`sq_AjUBtW^#Ip($>nlqlv1C94nF?7r9*~4DK!b& z(tE%a;Jd+NzXF&1#tI>%rKP2%rKP2%rOj*Ue!pKodL&LPcG$?V_wH{~sZ>a()6&xa t+R|lU&)~6NfTFat5JCtcgb?Du`~nDl+><}Pdtd+n002ovPDHLkV1gn2EV2Lq literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_refresh.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..3233cda6fec9a46ed2c7193ded69fe587f776662 GIT binary patch literal 3249 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 literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_refresh_press.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_refresh_press.png new file mode 100644 index 0000000000000000000000000000000000000000..a499929e182cf5f151c2cfa6f961d2aa737aa4a0 GIT binary patch literal 3161 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 literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_search.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_search.png new file mode 100644 index 0000000000000000000000000000000000000000..4b2a33604a0b91fa89c88d620aa40caaf05afead GIT binary patch literal 6166 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 literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_search_press.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_search_press.png new file mode 100644 index 0000000000000000000000000000000000000000..4545ea35e982a6e382712d3965b99045af607152 GIT binary patch literal 6180 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 literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_warning.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_warning.png index 86300bba2e75649bedb249c022dce09c8549c9f8..f92e3c15d49e0a7b11e4080bf92cc5b7a6a52879 100644 GIT binary patch delta 230 zcmcc4w2x^*LOnOTAuGqipFRu>4EsD?978H@y}f0~*JL2l@K9-)dcvnVna)mTEAONx z)d+Pl=5zf&YLg@5>J%1gYBB<~FfeE?z2YLV=>6}il3bbN0>*KR?w^boY~}LMSlA-u z1tgr%85W)^=6tq2By*j^xg@qcz9M&)n*Wt$Q$F2^j=#Q@=WxO2NAo>|QztAIeyHL8 z>fwLe4x!V}8v~p;Ri^~}f6NmtQN8!9&H4Uqxu3sRt^K-J=k)2%JRo*9l@&YEU{rw;B3UpM>WbNQQ5?m&G&ASf7_*s=b+_wLf1-+#iAjxGE(bB}o7 zil$TTr({}-Tsc)moH$jd1UPZF0x^v7cXq(x3WL(?#>Z!DU*FDUY!@n#bZgI!6#0u$ z)%msRrT=EEF*>nU_MukvtEc~MR|uVceXz=DX#jufDMyX%_qe837|S2`)p@)7bIGZU zjT~RCkL=l9eq;N+smU&HtY6Cu7M49`2DvTP-X_WTqxQmtAP~>f)z4*}Q$iB}hbC`h diff --git a/src/themes/tizen/tizen-white/images/controls/button/00_button_warning_press.png b/src/themes/tizen/tizen-white/images/controls/button/00_button_warning_press.png new file mode 100644 index 0000000000000000000000000000000000000000..86300bba2e75649bedb249c022dce09c8549c9f8 GIT binary patch literal 343 zcmeAS@N?(olHy`uVBq!ia0vp^ULefD1|(%J94Z7-jKx9jP7LeL$-D$|*pj^6T^Rm@ z;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-AbW|YuPgf<9#(c^$#b3?HUWjMd%8G=RNQ)d z%hvC(gFwSYNoi}&j;7g9xOOJy9SWQ@yM^oGgQd=zW`U;;?g?Kv`{Hx?n^EpSeLx^6 z7@63y{=E0@(wyIa!jg_H{55lrc;JerQ|+f@T8mscRYjaQRi^|vakc_6jPZANz+r>Z z>&C}tY+v8bWo#EJk#uX%juiQeQPugi>ZSi?tT8&VR`#J*^sA@;ZC41LetodYX=wm| z>M2K!?f1B*Rv614_tkm3`*X>ujEx*$t&i;4U4CQxy{XAAZ>(R-3l^3=W(GMe*4`$` V_@nm11W?d1c)I$ztaD0e0sznnfq(!2 literal 0 HcmV?d00001 diff --git a/src/themes/tizen/tizen-white/style.less b/src/themes/tizen/tizen-white/style.less index 676cd46..f52c1c9 100755 --- a/src/themes/tizen/tizen-white/style.less +++ b/src/themes/tizen/tizen-white/style.less @@ -431,8 +431,11 @@ /*************************************************************************** Progress ***************************************************************************/ -@color_progress_bar0: rgb(226, 223, 219); -@color_progress_bar1: rgb(54, 119, 195); +@color_progress_bar0: rgb(202, 200, 196); +@color_progress_bar1: rgb(246, 243, 239); +@color_progress_boarder: rgb(163, 160, 158); +@color_progress_value0: rgb(54, 119, 195); +@color_progress_value1: rgb(150, 184, 224); /*************************************************************************** @@ -454,6 +457,22 @@ @color_multimediaview_bar_handle : rgb(249, 249, 249); @color_multimediaview_button_border : rgb(186, 185, 180); +.LESSmultimediaview_bar_active_style{ + background-color : @color_multimediaview_bar_active; + background-image : -webkit-gradient(linear, left top, left bottom, from(rgb(98, 137, 217)), to(rgb(41, 91, 152))); + background-image : -moz-linear-gradient(top, rgb(98, 137, 217), rgb(41, 91, 152)); + background-image : -o-linear-gradient(top, rgb(98, 137, 217), rgb(41, 91, 152)); + background-image : -ms-linear-gradient(top, rgb(98, 137, 217), rgb(41, 91, 152)); +} + +.LESSmultimediaview_bar_handle_style{ + background-color : @color_multimediaview_bar_handle; + background-image : -webkit-gradient(linear, left top, left bottom, from(rgb(255, 255, 255)), to(rgb(230, 230, 230))); + background-image : -moz-linear-gradient(top, rgb(255, 255, 255), rgb(230, 230, 230)); + background-image : -o-linear-gradient(top, rgb(255, 255, 255), rgb(230, 230, 230)); + background-image : -ms-linear-gradient(top, rgb(255, 255, 255), rgb(230, 230, 230)); +} + /*************************************************************************** tokentextarea diff --git a/src/widgets/barlayout/js/jquery.mobile.tizen.barlayout.js b/src/widgets/barlayout/js/jquery.mobile.tizen.barlayout.js deleted file mode 100755 index 023d48b..0000000 --- a/src/widgets/barlayout/js/jquery.mobile.tizen.barlayout.js +++ /dev/null @@ -1,124 +0,0 @@ -( function ( $, undefined ) { - - $.widget( "mobile.barlayout", $.mobile.widget, { - options: { - addBackBtn: false , - backBtnText: "Back", - initSelector: ":jqmData(role='header'), :jqmData(role='footer')" - }, - _create: function () { - var self = this; - /* this call api will be moved to jquery.mobile.page.section.js patch */ - /* call _generateFooter in header(just 1 time in first step) because to calculate another layout width footer/header */ - /* skip below step to attach bind/addclass only 1 time */ - self._generateFooter(); - self._addBackbutton(); - self._disableSelection(); - }, - - /* Make dummy footer - * because minimum fixed bar needs to attach back button - * check footer exist on current page, then check footer-Exist option check */ - _generateFooter: function () { - var self = this, - $el = self.element, - $elPage = $el.closest( ".ui-page" ), - dummyFooter; - - if ( $elPage.children(":jqmData(role='footer')").length == 0 && $elPage.data().page.options.footerExist != false ) { - dummyFooter = $( "" ) - .insertAfter( $elPage.find( ".ui-content" ) ); - } - }, - - _addBackbutton: function ( target, status ) { - // need to add parameter target wherels this requert occurs header/footer - var self = this, - $el = self.element, - $elHeader = $el.jqmData( "role" ) === "header" ? $el : $el.siblings( ":jqmData(role='header')" ), - $elFooter = $el.jqmData( "role" ) === "footer" ? $el : $el.siblings( ":jqmData(role='footer')" ), - $elPage = $el.closest( ".ui-page" ), - backBtn, - attachElement = $elFooter, - o = $elPage.data( "page" ).options; - - /* Back button skip case : - * 1. footer does not exist and addBackBtn is set to "footer" - * 2. user define data-add-Back-Btn = "false" - */ - if ( status != "external" ) { - if ( $elPage.data().page.options.addBackBtn == "none" || ( $elPage.data().page.options.addBackBtn == "footer" && $elPage.data().page.options.footerExist == false ) ) { - return true; - } - } - - attachElement = ( $elPage.data().page.options.addBackBtn === "header" ) ? $elHeader : $elFooter; - - backBtn = $( "" ) - .buttonMarkup( {icon: "header-back-btn", theme : "s"} ); - - if ( status == "external" ) { - if ( $el.is(".ui-page") ) { - $elHeader = $el.find( ":jqmData(role='header')" ); - $elFooter = $el.find( ":jqmData(role='footer')" ); - attachElement = ( target === "header" ) ? $elHeader : $elFooter; - } else { - attachElement = $el; - } - if ( attachElement.find(".ui-btn-back").length == 0 ) { - backBtn.prependTo( attachElement ); - } - } - - if ( $elPage.jqmData( "url" ) !== $.mobile.path.stripHash( location.hash ) ) { - if ( attachElement.find(".ui-btn-back").length == 0) { - backBtn.prependTo( attachElement ); - } - } - - /* jQM 1.1.0 does not need this code. - navigation.js control whole back buttons. */ - /* - backBtn.bind( "vclick", function( event ) { - window.history.back(); - }); - */ - }, - - _disableSelection : function () { - var self = this, - $el = self.element, - $elHeader = $el.jqmData( "role" ) === "header" ? $el : $el.siblings( ":jqmData(role='header')" ), - $elFooter = $el.jqmData( "role" ) === "footer" ? $el : $el.siblings( ":jqmData(role='footer')" ); - - // disable selection - $.mobile.tizen.disableSelection( $elHeader ); - $.mobile.tizen.disableSelection( $elFooter ); - - // disable context menu - $.mobile.tizen.disableContextMenu( $elHeader ); - $.mobile.tizen.disableContextMenu( $elFooter ); - }, - - addBackBtn : function ( target ) { - this._addBackbutton( target, "external" ); - }, - - - show: function () { - var self = $( this.element ); - self.show(); - self.siblings( ".ui-content" ).pagelayout( "updatePageLayout" ); - }, - - hide: function () { - var self = $( this.element ); - self.hide(); - self.siblings( ".ui-content" ).pagelayout( "updatePageLayout" ); - }, - - }); - $( document ).bind("pagecreate", function ( e ) { - $.mobile.barlayout.prototype.enhanceWithin( e.target ); - }); -})( jQuery ); diff --git a/src/widgets/common/js/jquery.mobile.tizen.scrollview.js b/src/widgets/common/js/jquery.mobile.tizen.scrollview.js index 1ec7d70..fc39fbf 100644 --- a/src/widgets/common/js/jquery.mobile.tizen.scrollview.js +++ b/src/widgets/common/js/jquery.mobile.tizen.scrollview.js @@ -201,14 +201,14 @@ y = 0, scroll_height = 0, self = this, - bouncing = function ( dir ) { + end_effect = function ( dir ) { setTimeout( function () { - self._bouncing_dir = dir; - self._setBouncing( self._$view, "in" ); + self._effect_dir = dir; + self._setEndEffect( "in" ); }, 100 ); setTimeout( function () { - self._setBouncing( self._$view, "out" ); + self._setEndEffect( "out" ); }, 350 ); }, vt = this._vTracker, @@ -236,13 +236,13 @@ this._outerScroll( y - vt.getRemained() / 3, scroll_height ); if ( scroll_height > 0 ) { - bouncing( 1 ); + end_effect( 1 ); } } else if ( vt.isMax() ) { this._outerScroll( vt.getRemained() / 3, scroll_height ); if ( scroll_height > 0 ) { - bouncing( 0 ); + end_effect( 0 ); } } } @@ -269,7 +269,7 @@ var translate, transition; - if ( this._bouncing ) { + if ( this._endEffect ) { return; } @@ -295,11 +295,11 @@ }); }, - _setBouncing: function ( $ele, dir ) { + _setEndEffect: function ( dir ) { var scroll_height = this._getViewHeight() - this._$clip.height(); if ( this._softkeyboard ) { - if ( this._bouncing_dir ) { + if ( this._effect_dir ) { this._outerScroll( -scroll_height - this._softkeyboardHeight, scroll_height ); } else { @@ -309,97 +309,20 @@ } if ( dir === "in" ) { - if ( this._bouncing ) { + if ( this._endEffect ) { return; } - this._bouncing = true; - this._bouncing_count = 1; - - this._bouncing_org_x = 1; - this._bouncing_org_y = 1; - - this._bouncing_x = 0.99; - this._bouncing_y = 0.99; - - this._setOverflowIndicator( this._bouncing_dir ); + this._endEffect = true; + this._setOverflowIndicator( this._effect_dir ); } else if ( dir === "out" ) { - if ( !this._bouncing ) { + if ( !this._endEffect ) { return; } - this._bouncing = false; - this._bouncing_count = 1; - - this._bouncing_org_x = this._bouncing_x; - this._bouncing_org_y = this._bouncing_y; - - this._bouncing_x = 1; - this._bouncing_y = 1; - this._setOverflowIndicator( this._bouncing_dir ); - } else { - return; - } - - this._doBouncing( $ele, dir ); - }, - - _doBouncing: function ( $ele, dir ) { - var translate, - origin, - x_rate, - y_rate, - frame = 10, - self = this; - - if ( $.support.cssTransform3d ) { - translate = "translate3d(" + this._sx + "px," + this._sy + "px, 0px)"; - } else { - translate = "translate(" + this._sx + "px," + this._sy + "px)"; - } - - if ( dir === "in" ) { - x_rate = this._bouncing_org_x - ( this._bouncing_org_x - - this._bouncing_x ) / frame * this._bouncing_count; - y_rate = this._bouncing_org_y - ( this._bouncing_org_y - - this._bouncing_y ) / frame * this._bouncing_count; - - translate += " scale(" + x_rate + "," + y_rate + ")"; - } else if ( dir === "out" ) { - x_rate = this._bouncing_org_x + ( this._bouncing_x - - this._bouncing_org_x ) / frame * this._bouncing_count; - y_rate = this._bouncing_org_y + ( this._bouncing_y - - this._bouncing_org_y ) / frame * this._bouncing_count; - - translate += " scale(" + x_rate + "," + y_rate + ")"; - } else { - return; - } - - if ( this._bouncing_dir ) { - origin = "50% " + ( this._bouncing_y * 100 - 10 ) + "%"; - } else { - origin = "50% 10%"; - } - - $ele.css({ - "-moz-transform": translate, - "-webkit-transform": translate, - "-ms-transform": translate, - "-o-transform": translate, - "transform": translate, - "-webkit-transform-origin": origin, - }); - - this._bouncing_count++; - - if ( this._bouncing_count > frame ) { - return; + this._endEffect = false; + this._setOverflowIndicator( this._effect_dir ); } - - setTimeout( function () { - self._doBouncing( $ele, dir ); - }, this._timerInterval ); }, _setCalibration: function ( x, y ) { @@ -437,20 +360,21 @@ if ( y > 0 ) { this._sy = 0; - if ( scroll_height > 0 ) { - this._bouncing_dir = 0; - this._setBouncing( this._$view, "in" ); + if ( this._didDrag && scroll_height > 0 ) { + this._effect_dir = 0; + this._setEndEffect( "in" ); } } else if ( y < -scroll_height ) { this._sy = -scroll_height; - if ( scroll_height > 0 ) { - this._bouncing_dir = 1; - this._setBouncing( this._$view, "in" ); + if ( this._didDrag && scroll_height > 0 ) { + this._effect_dir = 1; + this._setEndEffect( "in" ); } } else { - if ( this._bouncing && this._sy !== y ) { - this._bouncing = false; + if ( this._endEffect && this._sy !== y ) { + this._endEffect = false; + this._setOverflowIndicator(); } this._sy = y; @@ -849,8 +773,8 @@ this._disableTracking(); - if ( this._bouncing ) { - this._setBouncing( this._$view, "out" ); + if ( this._endEffect ) { + this._setEndEffect( "out" ); this._hideScrollBars(); this._hideOverflowIndicator(); } @@ -1098,6 +1022,81 @@ $v.bind( this._dragEvt, this._dragCB ); + $v.bind( "keydown", function ( e ) { + var elem, + elem_top, + screen_h; + + if ( e.keyCode == 9 ) { + return false; + } + + elem = $c.find(".ui-focus"); + + if ( elem === undefined ) { + return; + } + + elem_top = elem.offset().top; + screen_h = $c.offset().top + $c.height() - elem.height(); + + if ( self._softkeyboard ) { + screen_h -= self._softkeyboardHeight; + } + + if ( ( elem_top < 0 ) || ( elem_top > screen_h ) ) { + self.scrollTo( 0, self._sy - elem_top + + elem.height() + $c.offset().top, 0); + } + + return; + }); + + $v.bind( "keyup", function ( e ) { + var input, + elem, + elem_top, + screen_h; + + if ( e.keyCode != 9 ) { + return; + } + + /* Tab Key */ + + input = $( this ).find(":input"); + + for ( i = 0; i < input.length; i++ ) { + if ( !$( input[i] ).hasClass("ui-focus") ) { + continue; + } + + if ( i + 1 == input.length ) { + elem = $( input[0] ); + } else { + elem = $( input[i + 1] ); + } + + elem_top = elem.offset().top; + screen_h = $c.offset().top + $c.height() - elem.height(); + + if ( self._softkeyboard ) { + screen_h -= self._softkeyboardHeight; + } + + if ( ( elem_top < 0 ) || ( elem_top > screen_h ) ) { + self.scrollTo( 0, self._sy - elem_top + + elem.height() + $c.offset().top, 0); + } + + elem.focus(); + + break; + } + + return false; + }); + $c.bind( "updatelayout", function ( e ) { var sy, vh, @@ -1117,8 +1116,10 @@ return; } - if ( self._sy - sy <= -vh ) { - self.scrollTo( 0, sy, + if ( sy > 0 ) { + self.scrollTo( 0, 0, 0 ); + } else if ( self._sy - sy <= -vh ) { + self.scrollTo( 0, self._sy, self.options.snapbackDuration ); } else if ( self._sy - sy <= vh + self.options.moveThreshold ) { self.scrollTo( 0, sy, diff --git a/src/widgets/dayselector/css/dayselector.css b/src/widgets/dayselector/css/dayselector.css deleted file mode 100644 index 45482e7..0000000 --- a/src/widgets/dayselector/css/dayselector.css +++ /dev/null @@ -1,25 +0,0 @@ -/* dayselector CSS */ -.ui-dayselector { - display: inline-block; -} - -.ui-dayselector label { - height: 56px; - width: 64px; -} - -.ui-dayselector-label-6 { - color: blue; -} - -.ui-dayselector-label-0 { - color: red; -} - -.todons-dayselector-disabled .ui-dayselector-label-6 { - color: #121212; -} - -.todons-dayselector-disabled .ui-dayselector-label-0 { - color: #363636; -} diff --git a/src/widgets/dayselector/js/jquery.mobile.tizen.dayselector.js b/src/widgets/dayselector/js/jquery.mobile.tizen.dayselector.js deleted file mode 100755 index 30eacc6..0000000 --- a/src/widgets/dayselector/js/jquery.mobile.tizen.dayselector.js +++ /dev/null @@ -1,185 +0,0 @@ -/* - * jQuery Mobile Widget @VERSION - * - * This software is licensed under the MIT licence (as defined by the OSI at - * http://www.opensource.org/licenses/mit-license.php) - * - * *************************************************************************** - * Copyright (C) 2011 by Intel Corporation Ltd. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - * *************************************************************************** - * - * Authors: Rijubrata Bhaumik - * Elliot Smith - */ - -// Displays a day selector element: a control group with 7 check -// boxes which can be toggled on and off. -// -// The widget can be invoked on fieldset element with -// $(element).dayselector() or by creating a fieldset element with -// data-role="dayselector". If you try to apply it to an element -// of type other than fieldset, results will be unpredictable. -// -// The default is to display the controlgroup horizontally; you can -// override this by setting data-type="vertical" on the fieldset, -// or by passing a type option to the constructor. The data-type -// attribute has precedence. -// -// If no ID is supplied for the dayselector, one will be generated -// automatically. -// -// Methods: -// -// value: Return the day numbers (0=Sunday, ..., 6=Saturday) of -// the selected checkboxes as an array. -// -// selectAll: Select all 7 days of the week by automatically "ticking" -// all of the checkboxes. -// -// Options: -// -// theme : Override the data-theme of the widget; note that the -// order of preference is: 1) set from data-theme attribute; -// 2) set from option; 3) set from closest parent data-theme; -// 4) default to 'c' -// -// type: 'horizontal' (default) or 'vertical'; specifies the type -// of controlgroup to create around the day check boxes. -// -// days: array of day names, Sunday first; defaults to English day -// names; the first letters are used as text for the checkboxes -/** - @class Dayselector - The day selector widget shows a grouped button on the screen for selecting weekdays.
    To add a day selector widget to the application, use the following code: - -
    - -
    -*/ -(function ( $, window, undefined ) { - $.widget( "tizen.dayselector", $.mobile.widget, { - options: { - initSelector: 'fieldset:jqmData(role="dayselector")', - theme: null, - type: 'horizontal', - days: ['Sunday', - 'Monday', - 'Tuesday', - 'Wednesday', - 'Thursday', - 'Friday', - 'Saturday'] - }, - - defaultTheme: 's', - - _create: function () { - var days, - parentId, - i, - day, - letter, - id, - labelClass, - checkbox, - label; - - this.element.addClass( 'ui-dayselector' ); - - this.options.type = this.element.jqmData( 'type' ) || this.options.type; - - this.options.theme = this.element.jqmData( 'theme' ) || - this.options.theme || - this.element.closest( ':jqmData(theme)').jqmData('theme' ) || - this.defaultTheme; - - days = this.options.days; - - this.element.attr( 'data-' + $.mobile.ns + 'type', this.options.type ); - - parentId = this.element.attr( 'id' ) || - 'dayselector' + ( new Date() ).getTime(); - - for ( i = 0; i < days.length; i++ ) { - day = days[i]; - letter = day.slice(0, 1); - - if ( window.Globalize ) { - //TODO may some modification required to support - // start week day difference upon cultures. - letter = window.Globalize.culture().calendars.standard.days.namesShort[i]; - } - id = parentId + '_' + i; - labelClass = 'ui-dayselector-label-' + i; - - checkbox = $( '' ) - .attr( 'id', id ) - .attr( 'value', i ); - - label = $( '' ) - .attr( 'for', id ) - .addClass( labelClass ); - - this.element.append( checkbox ); - this.element.append( label ); - } - - this.checkboxes = this.element - .find( ':checkbox' ) - .checkboxradio( { theme: this.options.theme } ); - - this.element.controlgroup( { excludeInvisible: false } ); - }, - - _setOption: function ( key, value ) { - if ( key === "disabled" ) { - this._setDisabled( value ); - } - }, - - _setDisabled: function ( value ) { - $.Widget.prototype._setOption.call(this, "disabled", value); - this.element[value ? "addClass" : "removeClass"]("ui-disabled"); - }, - - value: function () { - var values = this.checkboxes.filter( ':checked' ).map( function () { - return this.value; - } ).get(); - - return values; - }, - - selectAll: function () { - this.checkboxes - .attr( 'checked', 'checked' ) - .checkboxradio( 'refresh' ); - } - - } ); /* End of Widget */ - - // auto self-init widgets - $( document ).bind( "pagebeforecreate", function ( e ) { - var elts = $( $.tizen.dayselector.prototype.options.initSelector, e.target ); - elts.not( ":jqmData(role='none'), :jqmData(role='nojs')" ).dayselector(); - } ); - -}( jQuery, this ) ); diff --git a/src/widgets/expandablelist/js/jquery.mobile.tizen.expandablelist.js b/src/widgets/expandablelist/js/jquery.mobile.tizen.expandablelist.js deleted file mode 100644 index c7338f8..0000000 --- a/src/widgets/expandablelist/js/jquery.mobile.tizen.expandablelist.js +++ /dev/null @@ -1,192 +0,0 @@ -/* *************************************************************************** - * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - * *************************************************************************** - */ -/** - * Displays vertical multi-level list. - * - * To apply, add the attribute data-expandable="true" and id="parentid" to a
  • element for parent list item - * and add the arrribute data-expanded-by="parentid" to a
  • element for child list item. - * - * HTML Attributes: - * data-expandable: Parent list item must have 'true' value for this attribute - * data-expanded-by: Child list item expanded by parent list item must have 'true' value for this attribute - * data-initial-expansion: If you want expandable list to be expanded initially, set this value as 'true' - * - * Example: - *
  • Parent
  • - *
  • Child
  • - */ - -/** - @class Expandablelist - The expandable list widget shows a parent list view where the list items expand into child lists. When the list is in a collapsed state, only the parent list items are shown. If the user clicks a list item, the child list for that list item is displayed with a transition effect. If the user clicks the parent list item again, the child list collapses and is hidden.

    Each child list is created as part of its parent expandable list item so that the child list and its parent expandable list item share the same ID. The child list ID is defined with the data-expanded-by option. - -
  • Parent
  • - // Rest of the parent list items -
  • Child
  • -*/ -/** - @property {String} data-expanded-by - Specifies the ID of the parent expandable list item -*/ -/** - @property {Boolean} data-initial-expansion - Defines whether the child list is expanded when the parent expandable list is loaded. -*/ -/** - @property {Boolean} data-expandable - Defines whether the list item can be expanded in to a child list. -*/ -( function ( $, undefined ) { - - $.widget( "tizen.expandablelist", $.mobile.widget, { - options: { - initSelector: ":jqmData(expandable='true')" - }, - - _hide: function ( e ) { - $( e ).removeClass( 'ui-li-expand-transition-show' ) - .addClass( 'ui-li-expand-transition-hide' ); - }, - _show: function ( e ) { - $( e ).removeClass( 'ui-li-expand-transition-hide' ) - .addClass( 'ui-li-expand-transition-show' ); - }, - _hide_expand_img: function ( e ) { - $( e ).removeClass( 'ui-li-expandable-hidden' ) - .addClass( 'ui-li-expandable-shown' ); - - $( e ).find( ".ui-li-expand-icon" ) - .addClass( "ui-li-expanded-icon" ) - .removeClass( "ui-li-expand-icon" ); - }, - _show_expand_img: function ( e ) { - $( e ).removeClass( 'ui-li-expandable-shown' ) - .addClass( 'ui-li-expandable-hidden' ); - - $( e ).find( ".ui-li-expanded-icon" ) - .addClass( "ui-li-expand-icon" ) - .removeClass( "ui-li-expanded-icon" ); - }, - - _set_expand_arrow: function ( self, e, parent_is_expanded ) { - if ( parent_is_expanded ) { - self._hide_expand_img( e ); - } else { - self._show_expand_img( e ); - } - if ( $( e[0] ).data( "expandable" ) && parent_is_expanded == false ) { - var children = $( e ).nextAll( ":jqmData(expanded-by='" + $( e ).attr( 'id' ) + "')" ); - children.each( function ( idx, child ) { - self._set_expand_arrow( self, child, e.is_expanded ); - } ); - } - }, - - _toggle: function ( self, e, parent_is_expanded ) { - if ( ! parent_is_expanded ) { - self._show( e ); - } else { - self._hide( e ); - if ( $( e ).data( "expandable" ) && e.is_expanded == true ) { - var children = $( e ).nextAll( ":jqmData(expanded-by='" + $( e ).attr( 'id' ) + "')" ); - children.each( function ( idx, child ) { - self._toggle( self, child, e.is_expanded ); - } ); - e.is_expanded = false; - } - } - }, - _is_hidden: function ( e ) { - return ( $( e ).height( ) == 0); - }, - - refresh: function () { - if ( this._handler ) { - this.element.unbind(); - this._handler = null; - } - this._create(); - }, - - _create: function ( ) { - - var children = $( this.element ).nextAll( ":jqmData(expanded-by='" + $( this.element ).attr( 'id' ) + "')" ), - e = this.element, - self = this, - expanded = e.nextAll( ":jqmData(expanded-by='" + e[0].id + "')" ), - initial_expansion = e.data( "initial-expansion" ), - is_expanded = false, - parent_id = null; - - if ( children.length == 0 ) { - return; - } - - if ( initial_expansion == true ) { - parent_id = e.data( "expanded-by" ); - if ( parent_id ) { - if ( $( "#" + parent_id ).is_expanded == true) { - is_expanded = true; - } - } else { - is_expanded = true; - } - } - - e[0].is_expanded = is_expanded; - if ( e[0].is_expanded ) { - self._hide_expand_img( e ); - $(e).append( "
    " ); - } else { - self._show_expand_img( e ); - $(e).append( "
    " ); - } - - if ( e[0].is_expanded ) { - expanded.each( function ( i, e ) { self._show( e ); } ); - } else { - expanded.each( function ( i, e ) { self._hide( e ); } ); - } - - expanded.addClass( "ui-li-expanded" ); - - this._handler = e.bind( 'vclick', function ( ) { - var _is_expanded = e[0].is_expanded; - expanded.each( function ( i, e ) { self._toggle( self, e, _is_expanded ); } ); - e[0].is_expanded = ! e[0].is_expanded; - - self._set_expand_arrow( self, e, e[0].is_expanded ); - }); - } - - - }); // end: $.widget() - - - $( document ).bind( "pagecreate create", function ( e ) { - $( $.tizen.expandablelist.prototype.options.initSelector, e.target ) - .not( ":jqmData(role='none'), :jqmData(role='nojs')" ) - .expandablelist( ); - }); - -} ( jQuery ) ); diff --git a/src/widgets/handler/js/jquery.tizen.scrollview.handler.js b/src/widgets/handler/js/jquery.tizen.scrollview.handler.js index 120853a..36a2532 100755 --- a/src/widgets/handler/js/jquery.tizen.scrollview.handler.js +++ b/src/widgets/handler/js/jquery.tizen.scrollview.handler.js @@ -89,10 +89,13 @@ var originSetOption = $.tizen.scrollview.prototype._setOption, createHandler = function ( target ) { var $view = target, - prefix = "
    ", scrollview = $view.data( "scrollview" ), - direction = scrollview.options.direction, + options = scrollview.options, + direction = options.direction, + parentTheme = $.mobile.getInheritedTheme( scrollview, "s" ), + theme = options.theme || parentTheme, isHorizontal = ( scrollview.options.direction === "x" ), _$view = scrollview._$view, _$clip = scrollview._$clip, @@ -121,14 +124,12 @@ return; } - $view.append( prefix + direction + suffix ); + $view.addClass( " ui-handler-" + theme ).append( [ prefix, direction, suffix ].join( "" ) ); handler = $view.find( ".ui-handler" ); handlerThumb = $view.find( ".ui-handler-thumb" ).hide(); handlerHeight = ( isHorizontal ? handlerThumb.width() : handlerThumb.height() ); handlerMargin = ( isHorizontal ? parseInt( handler.css( "right" ), 10 ) : parseInt( handler.css( "bottom" ), 10 ) ); - scrollview.enableHandler( scrollview.options.handler ); - $.extend( $view, { moveData : null }); @@ -296,10 +297,27 @@ } }, + _setHandlerTheme: function ( handlerTheme ) { + if ( !handlerTheme ) { + return; + } + + var oldClass = "ui-handler-" + this.options.handlerTheme, + newClass = "ui-handler-" + handlerTheme; + + this.element.removeClass( oldClass ).addClass( newClass ); + this.options.handlerTheme = handlerTheme; + }, + _setOption: function ( key, value ) { - if ( key === "handler") { + switch ( key ) { + case "handler": this.enableHandler( value ); - } else { + break; + case "handlerTheme": + this._setHandlerTheme( value ); + break; + default: originSetOption.call( this, key, value ); } }, diff --git a/src/widgets/multimediaview/js/jquery.mobile.tizen.multimediaview.js b/src/widgets/multimediaview/js/jquery.mobile.tizen.multimediaview.js index 4fa1ede..0703938 100755 --- a/src/widgets/multimediaview/js/jquery.mobile.tizen.multimediaview.js +++ b/src/widgets/multimediaview/js/jquery.mobile.tizen.multimediaview.js @@ -135,88 +135,53 @@ */ ( function ( $, document, window, undefined ) { $.widget( "tizen.multimediaview", $.mobile.widget, { - options : { - theme : null, - controls : true, - fullScreen : false, - initSelector : "video, audio" + options: { + theme: null, + controls: true, + fullScreen: false, + initSelector: "video, audio" }, - _create : function () { + + _create: function () { var self = this, view = self.element, viewElement = view[0], option = self.options, + parentTheme = $.mobile.getInheritedTheme( view, "s" ), + theme = option.theme || parentTheme, role = "multimediaview", control = null; $.extend( this, { - role : null, - isControlHide : false, - controlTimer : null, - isVolumeHide : true, - isVertical : true, - backupView : null + role: null, + isControlHide: false, + controlTimer: null, + isVolumeHide: true, + isVertical: true, + backupView: null }); self.role = role; view.addClass( "ui-multimediaview" ); control = self._createControl(); + control.find( ".ui-button" ).each( function ( index ) { + $( this ).buttonMarkup( { corners: true, theme: theme, shadow: true } ); + }); if ( view[0].nodeName === "VIDEO" ) { - control.addClass( "ui-multimediaview-video" ); + control.addClass( "ui-" + role + "-video" ); } control.hide(); - view.wrap( "
    " ).after( control ); - if ( option.controls ) { - if ( view.attr("controls") ) { - view.removeAttr( "controls" ); - } + view.wrap( [ "
    " ].join( "" ) ).after( control ); + if ( option.controls && view.attr( "controls" ) ) { + view.removeAttr( "controls" ); } self._addEvent(); - - $( document ).bind( "pagechange.multimediaview", function ( e ) { - var $page = $( e.target ); - if ( $page.find( view ).length > 0 && viewElement.autoplay ) { - viewElement.play(); - } - - if ( option.controls ) { - control.show(); - self._resize(); - } - }).bind( "pagebeforechange.multimediaview", function ( e ) { - if ( viewElement.played.length !== 0 ) { - viewElement.pause(); - control.hide(); - } - }); - $( window ).bind( "resize.multimediaview orientationchange.multimediaview", function ( e ) { - if ( !option.controls ) { - return; - } - var $page = $( e.target ), - $scrollview = view.parents( ".ui-scrollview-clip" ); - - $scrollview.each( function ( i ) { - if ( $.data( this, "scrollview" ) ) { - $( this ).scrollview( "scrollTo", 0, 0 ); - } - }); - - // for maintaining page layout - if ( !option.fullScreen ) { - $( ".ui-footer:visible" ).show(); - } else { - $( ".ui-footer" ).hide(); - self._fitContentArea( $page ); - } - - self._resize(); - }); }, - _resize : function () { + + _resize: function () { var view = this.element, parent = view.parent(), control = parent.find( ".ui-multimediaview-control" ), @@ -234,7 +199,8 @@ this._updateSeekBar(); this._updateVolumeState(); }, - _resizeControl : function ( offset, width, height ) { + + _resizeControl: function ( offset, width, height ) { var self = this, view = self.element, viewElement = view[0], @@ -285,7 +251,8 @@ durationLabel.show(); } }, - _resizeFullscreen : function ( isFullscreen ) { + + _resizeFullscreen: function ( isFullscreen ) { var self = this, view = self.element, parent = view.parent(), @@ -301,10 +268,10 @@ if ( isFullscreen ) { if ( !self.backupView ) { self.backupView = { - width : view[0].style.getPropertyValue( "width" ) || "", - height : view[0].style.getPropertyValue( "height" ) || "", - position : view.css( "position" ), - zindex : view.css( "z-index" ) + width: view[0].style.getPropertyValue( "width" ) || "", + height: view[0].style.getPropertyValue( "height" ) || "", + position: view.css( "position" ), + zindex: view.css( "z-index" ) }; } docWidth = $( "body" )[0].clientWidth; @@ -313,8 +280,8 @@ view.width( docWidth ).height( docHeight - 1 ); view.addClass( "ui-" + self.role + "-fullscreen" ); view.offset( { - top : 0, - left : 0 + top: 0, + left: 0 }); } else { if ( !self.backupView ) { @@ -323,8 +290,8 @@ view.removeClass( "ui-" + self.role + "-fullscreen" ); view.css( { - "width" : self.backupView.width, - "height" : self.backupView.height, + "width": self.backupView.width, + "height": self.backupView.height, "position": self.backupView.position, "z-index": self.backupView.zindex }); @@ -332,9 +299,11 @@ } parent.show(); }, - _addEvent : function () { + + _addEvent: function () { var self = this, view = self.element, + option = self.options, viewElement = view[0], control = view.parent().find( ".ui-multimediaview-control" ), playpauseButton = control.find( ".ui-playpausebutton" ), @@ -350,6 +319,47 @@ durationBar = seekBar.find( ".ui-duration" ), currenttimeBar = seekBar.find( ".ui-currenttime" ); + $( document ).unbind( ".multimediaview" ).bind( "pagechange.multimediaview", function ( e ) { + var $page = $( e.target ); + if ( $page.find( view ).length > 0 && viewElement.autoplay ) { + viewElement.play(); + } + + if ( option.controls ) { + control.show(); + self._resize(); + } + }).bind( "pagebeforechange.multimediaview", function ( e ) { + if ( viewElement.played.length !== 0 ) { + viewElement.pause(); + control.hide(); + } + }); + + $( window ).unbind( ".multimediaview" ).bind( "resize.multimediaview orientationchange.multimediaview", function ( e ) { + if ( !option.controls ) { + return; + } + var $page = $( e.target ), + $scrollview = view.parents( ".ui-scrollview-clip" ); + + $scrollview.each( function ( i ) { + if ( $.data( this, "scrollview" ) ) { + $( this ).scrollview( "scrollTo", 0, 0 ); + } + }); + + // for maintaining page layout + if ( !option.fullScreen ) { + $( ".ui-footer:visible" ).show(); + } else { + $( ".ui-footer" ).hide(); + self._fitContentArea( $page ); + } + + self._resize(); + }); + view.bind( "loadedmetadata.multimediaview", function ( e ) { if ( !isNaN( viewElement.duration ) ) { durationLabel.find( "p" ).text( self._convertTimeFormat( viewElement.duration ) ); @@ -384,19 +394,19 @@ self._resize(); }).bind( "error.multimediaview", function ( e ) { switch ( e.target.error.code ) { - case e.target.error.MEDIA_ERR_ABORTED : + case e.target.error.MEDIA_ERR_ABORTED: window.alert( 'You aborted the video playback.' ); break; - case e.target.error.MEDIA_ERR_NETWORK : + case e.target.error.MEDIA_ERR_NETWORK: window.alert( 'A network error caused the video download to fail part-way.' ); break; - case e.target.error.MEDIA_ERR_DECODE : + case e.target.error.MEDIA_ERR_DECODE: window.alert( 'The video playback was aborted due to a corruption problem or because the video used features your browser did not support.' ); break; - case e.target.error.MEDIA_ERR_SRC_NOT_SUPPORTED : + case e.target.error.MEDIA_ERR_SRC_NOT_SUPPORTED: window.alert( 'The video could not be loaded, either because the server or network failed or because the format is not supported.' ); break; - default : + default: window.alert( 'An unknown error occurred.' ); break; } @@ -521,7 +531,8 @@ }); }); }, - _removeEvent : function () { + + _removeEvent: function () { var self = this, view = self.element, control = view.parent().find( ".ui-multimediaview-control" ), @@ -539,7 +550,8 @@ volumeBar.unbind( ".multimediaview" ); volumeHandle.unbind( ".multimediaview" ); }, - _createControl : function () { + + _createControl: function () { var self = this, view = self.element, control = $( "" ), @@ -575,12 +587,7 @@ seekBar.append( durationBar ).append( currenttimeBar ).append( durationLabel ).append( timestampLabel ); playpauseButton.addClass( "ui-play-icon" ); - if ( view[0].muted ) { - $( volumeButton ).addClass( "ui-mute-icon" ); - } else { - $( volumeButton ).addClass( "ui-volume-icon" ); - } - + volumeButton.addClass( view[0].muted ? "ui-mute-icon" : "ui-volume-icon" ); volumeBar.append( volumeGuide ).append( volumeValue ).append( volumeHandle ); volumeControl.append( volumeBar ); @@ -594,7 +601,8 @@ return control; }, - _startTimer : function ( duration ) { + + _startTimer: function ( duration ) { this._endTimer(); if ( !duration ) { @@ -614,13 +622,15 @@ control.fadeOut( "fast" ); }, duration ); }, - _endTimer : function () { + + _endTimer: function () { if ( this.controlTimer ) { clearTimeout( this.controlTimer ); this.controlTimer = null; } }, - _convertTimeFormat : function ( systime ) { + + _convertTimeFormat: function ( systime ) { var ss = parseInt( systime % 60, 10 ).toString(), mm = parseInt( ( systime / 60 ) % 60, 10 ).toString(), hh = parseInt( systime / 3600, 10 ).toString(), @@ -630,7 +640,8 @@ return time; }, - _updateSeekBar : function ( currenttime ) { + + _updateSeekBar: function ( currenttime ) { var self = this, view = self.element, duration = view[0].duration, @@ -652,7 +663,8 @@ currenttimeBar.offset( durationOffset ).width( timebarWidth ); timestampLabel.find( "p" ).text( self._convertTimeFormat( currenttime ) ); }, - _updateVolumeState : function () { + + _updateVolumeState: function () { var self = this, view = self.element, control = view.parent().find( ".ui-multimediaview-control" ), @@ -681,7 +693,8 @@ volumeHandle.offset( handlerOffset ); volumeValue.width( parseInt( volumeGuideWidth * ( volume ), 10 ) ); }, - _setVolume : function ( value ) { + + _setVolume: function ( value ) { var viewElement = this.element[0]; if ( value < 0.0 || value > 1.0 ) { @@ -690,6 +703,7 @@ viewElement.volume = value; }, + _fitContentArea: function ( page, parent ) { if ( typeof parent == "undefined" ) { parent = window; @@ -705,10 +719,11 @@ height = wh - ( hh + fh ) - ( pt + pb ); $content.offset( { - top : ( hh + pt ) + top: ( hh + pt ) }).height( height ); }, - width : function ( value ) { + + width: function ( value ) { var self = this, args = arguments, view = self.element; @@ -721,7 +736,8 @@ self._resize(); } }, - height : function ( value ) { + + height: function ( value ) { var self = this, view = self.element, args = arguments; @@ -734,7 +750,8 @@ self._resize(); } }, - fullScreen : function ( value ) { + + fullScreen: function ( value ) { var self = this, view = self.element, control = view.parent().find( ".ui-multimediaview-control" ), @@ -764,7 +781,8 @@ self._resize(); } }, - refresh : function () { + + refresh: function () { this._resize(); } }); diff --git a/src/widgets/nocontents/js/jquery.mobile.tizen.nocontents.js b/src/widgets/nocontents/js/jquery.mobile.tizen.nocontents.js deleted file mode 100644 index 9b5ccd5..0000000 --- a/src/widgets/nocontents/js/jquery.mobile.tizen.nocontents.js +++ /dev/null @@ -1,179 +0,0 @@ -/* *************************************************************************** - * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - * *************************************************************************** - * - * Author: Minkyu Kang - */ - -/* - * nocontents widget - * - * HTML Attributes - * - * data-role: set to 'nocontents'. - * data-type: type of nocontents. You can set text, picture, multimedia and unnamed. - * - * Deprecated in Tizen 2.0 beta : data-text1, data-text2 - * - * APIs - * - * N/A - * - * Events - * - * N/A - * - * Examples - * - * Default - *
    - *

    Unnamed Type

    - *

    Text

    - *
    - * - * - * Text Type - *
    - * - * Picture Type - *
    - * - * Multimedia Type - *
    - * - * Unnamed Type - *
    - * or - *
    - * - */ -/** - @class NoContents - The no contents widget is used if a list has no items. - To add a no contents widget to the application, use the following code: - -
    -

    Main Text

    -

    Sub Text

    -
    - -*/ -/** - @property {String} data-type - Defines the no contents widget type. The type options are text, picture, multimedia, and unnamed. - The default value is unnamed. -*/ -(function ( $, window, undefined ) { - $.widget( "tizen.nocontents", $.mobile.widget, { - max_height: 0, - icon_img: null, - text_bg: null, - - _get_height: function () { - var $page = $('.ui-page-active'), - $content = $page.children('.ui-content'), - $header = $page.children('.ui-header'), - $footer = $page.children('.ui-footer'), - $view = $content.children('.ui-scrollview-view'), - header_h = $header.outerHeight() || 0, - footer_h = $footer.outerHeight() || 0, - padding_t = (parseFloat( $content.css('padding-top') ) || 0) + - (parseFloat( $view.css('padding-top') ) || 0), - padding_b = (parseFloat( $content.css('padding-bottom') ) || 0) + - (parseFloat( $view.css('padding-bottom') ) || 0), - content_h = $( window ).height() - header_h - footer_h - - (padding_t + padding_b); - - $content.height( content_h ); - - return content_h; - }, - - _align: function () { - var content_height = this._get_height(), - icon_height = this.icon_img.height(), - text_height = 0, - content_gap = 0, - text_top = 0, - icon_top = 0, - i; - - if ( this.text_bg.length ) { - text_height = $( this.text_bg[0] ).height() * this.text_bg.length; - content_gap = $( this.text_bg[0] ).height(); - } - - icon_top = ( content_height - ( icon_height + content_gap + text_height ) ) / 2; - - if ( icon_top < content_gap ) { - icon_top = content_gap; - } - - this.icon_img.css( 'top', icon_top ); - - text_top = icon_top + icon_height + content_gap; - - for ( i = 0; i < this.text_bg.length; i++ ) { - $( this.text_bg[i] ).css( 'top', text_top ); - text_top += $( this.text_bg[i] ).height(); - } - }, - - _create: function () { - var elem = this.element, - icon_type = $( this.element ).jqmData('type'); - - console.warn("nocontent widget will be deprecated. Please fix your application."); - - switch ( icon_type ) { - case "picture": - case "multimedia": - case "text": - break; - default: - icon_type = "unnamed"; - break; - } - - $( elem ).addClass( "ui-nocontents" ); - this.icon_img = $('
    '); - - this.text_bg = $( elem ).find("p").addClass("ui-nocontents-text"); - - $( elem ).prepend( this.icon_img ); - - this._align(); - - $( window ).bind( 'resize', function () { - $( elem ).nocontents( 'refresh' ); - }); - }, - - refresh: function () { - this._align(); - } - }); - - $( document ).bind( "pagecreate create", function ( e ) { - $( e.target ).find(":jqmData(role='nocontents')").nocontents(); - }); -}( jQuery, this )); diff --git a/src/widgets/pagecontrol/js/jquery.mobile.tizen.pagecontrol.js b/src/widgets/pagecontrol/js/jquery.mobile.tizen.pagecontrol.js deleted file mode 100644 index 08f117c..0000000 --- a/src/widgets/pagecontrol/js/jquery.mobile.tizen.pagecontrol.js +++ /dev/null @@ -1,204 +0,0 @@ -/* *************************************************************************** - * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - * *************************************************************************** - * - * Author: Youmin Ha - */ - -/** - * Pagecontrol widget shows number bullets, receives touch event for each bullet, - * and runs your callback for each touch event. - * - * HTML Attributes: - * - * Pagecontrol widget uses
    element as an element itself. It takes following attributes. - * - * data-role: This widget must have 'pagecontrol' as data-role value. - * data-max: Maximum nimber of pagecontrol bullets. This property must not exceed 10. - * data-value: Initially selected value of the pagecontrol widget. Must between 1 and data-max. If this attribute is not given, initial value is set to 1. - * - * APIs: - * - * setValue( value ) - * : Set current value. Actually triggers 'change' event to the widget with given value. - * @param[in] value A value to be changed. - * - * getValue( ) - * : Get current value. - * @return Current value. - * - * Events: - * - * change: Raised when a value is changed, by setting it by javascript, or by user's touch event. - * - * Examples: - * - *
    - * ... - * - */ - -/** - @class PageControl - The page control widget shows a numbered list on the screen. It can receive a touch event from each list item, and run a callback for each touch event.
    To add a page control widget to the application, use the following code: - -
    - $("#foo").bind("change", function(ev, val) - { - Console.log("Value is changed to " + val); - } ); - - The page control can define a callback for the change event, which is fired when a list item value is changed.
    You can use the value method with the page control to set or get the current page control value: - -
    - var oldVal = $("#foo").pagecontrol("value"); - $("#foo").pagecontrol("value", 2); -*/ -/** - @property {Number} data-max - Defines the number of items in the list. - The value must be between 1 and 10, and the default value is 1. -*/ -/** - @property {Number} data-value - Defines the number of the initially selected list item. - The value must be between 1 and data-max, and the default value is 1. -*/ - -(function ($, undefined) { - $.widget( "tizen.pagecontrol", $.mobile.widget, { - options: { - initSelector: ":jqmData(role='pagecontrol')" - }, - - // subroutine: find a child by value - _getBtn: function ( value ) { - return $( this.element ).children( ":jqmData(value='" + value + "')" ); - }, - - // subroutine: change active button by value - _changeActiveBtn: function ( newNum ) { - var oldNum = $( this.element ).data( 'value' ); - - // Check value - if ( newNum < 1 || newNum > $( this.element ).data( "max" ) ) { - return false; - } - - this._getBtn( oldNum ).removeClass( 'page_n_selected' ) - .addClass( 'page_n_unselected' ); - this._getBtn( newNum ).removeClass( 'page_n_unselected' ) - .addClass( 'page_n_selected' ); - }, - - _triggerChange: function ( event ) { - // Trigger change event - $( this ).trigger( 'change', $( this ).data( 'value' ) ); - }, - - _create: function ( ) { - }, - - _init: function ( ) { - var self = this, - e = this.element, - maxVal = e.data( "max" ), - value = e.attr( "data-value" ), - i = 0, - btn = null, - buf = null, - page_margin_class = 'page_n_margin_42'; - - - // Set default values - if ( ! maxVal ) { - maxVal = 1; - } else if ( maxVal > 10 ) { - maxVal = 10; - } - e.data( "max", maxVal ); - - if ( ! value ) { - value = 1; - } - e.data( "value", value ); - - // Set pagecontrol class - e.addClass( 'pagecontrol' ); - - // Set empty callback variable - self.changeCallback = null; - - // Add icon classes - for ( i = 1; i <= maxVal; i++ ) { - btn = $( '
    ' ); - e.append( btn ); - if ( i == value ) { - btn.removeClass( 'page_n_unselected' ) - .addClass( 'page_n_selected' ); - } - // bind vclick event to each icon - btn.bind( 'vclick', this._triggerChange ); - } - - // pagecontrol element's change event - e.bind( 'change', function ( event, value ) { - // 1. Change activated button - self._changeActiveBtn( value ); - - // 2. Store new value (DO NOT change this order!) - e.data( 'value', value ); - - }); - }, - - value: function ( val ) { - var pc = $( this.element ); - - if ( val && typeof val == "number" ) { - this._changeActiveBtn( val ); - pc.data( 'value', val ); - } else { - return pc.data( "value" ); - } - } - - }); // end: $.widget() - - - $( document ).bind( "pagecreate create", function ( e ) { - $( $.tizen.pagecontrol.prototype.options.initSelector, e.target ) - .not( ":jqmData(role='none'), :jqmData(role='nojs')" ) - .pagecontrol( ); - }); - -} ( jQuery ) ); - diff --git a/src/widgets/pagelayout/js/jquery.mobile.tizen.pagelayout.js b/src/widgets/pagelayout/js/jquery.mobile.tizen.pagelayout.js index 0904e8f..39d4164 100755 --- a/src/widgets/pagelayout/js/jquery.mobile.tizen.pagelayout.js +++ b/src/widgets/pagelayout/js/jquery.mobile.tizen.pagelayout.js @@ -194,6 +194,14 @@ .addClass( "ui-btn-footer-right" ); } }); + + if ( $elFooter.find( ".ui-controlgroup" ).length ) { + footerControlButton = $elFooter.find( ".ui-controlgroup a" ); + footerControlButtonWidth = 100 / $elFooter.find( ".ui-controlgroup a" ).length; + footerControlButton.each( function ( i ) { + footerControlButton.eq( i ).css( "max-width", footerControlButtonWidth + "%" ); + }); + } }, _bindPageEvents: function () { @@ -262,6 +270,18 @@ } } }); + + window.addEventListener( "softkeyboardchange", function( e ) { + var $elFooter = $( ".ui-page-active .ui-footer" ), + thisPage = this; + + if ( e.state == "on" ) { + $elFooter.hide(); + } else if (e.state == "off") { + $elFooter.show(); + } + self.updatePagePadding( thisPage, e.state ); + }); }, _bindContentControlEvents: function () { @@ -318,18 +338,22 @@ }, */ // This will set the content element's top or bottom padding equal to the toolbar's height - updatePagePadding: function ( tbPage ) { + updatePagePadding: function ( tbPage, imestatus ) { var $el = this.element, header = $el.siblings( ".ui-header" ).length; // This behavior only applies to "fixed", not "fullscreen" - if ( this.options.fullscreen ) { return; } + if ( this.options.fullscreen && imestatus ) { return; } tbPage = tbPage || $el.closest( ".ui-page" ); + if ( imestatus == "on" ) { + $el.height( window.innerHeight - $el.siblings( ".ui-header" ).height() - + parseFloat( $el.css("padding-top") ) - + parseFloat( $el.css("padding-bottom") ) ); + } $( tbPage ).css( "padding-" + ( header ? "top" : "bottom" ), $el.siblings( ".ui-header" ).outerHeight() ); }, - /* 1. Calculate and update content height */ updatePageLayout: function ( receiveType ) { var $elFooter, diff --git a/src/widgets/popupwindow/js/jquery.mobile.tizen.popupwindow.js b/src/widgets/popupwindow/js/jquery.mobile.tizen.popupwindow.js index 5458567..6a604c6 100755 --- a/src/widgets/popupwindow/js/jquery.mobile.tizen.popupwindow.js +++ b/src/widgets/popupwindow/js/jquery.mobile.tizen.popupwindow.js @@ -29,9 +29,13 @@ * * Authors: Gabriel Schulhof , * Elliot Smith + * Hyunjung Kim */ /* + * % Popupwindow widget do not use anymore(will be deprecated, internal use only) + * + * * Shows other elements inside a popup window. * * To apply, add the attribute data-role="popupwindow" to a
    element inside @@ -86,7 +90,7 @@ */ /** - @class Popup + class Popupwindow The pop-up widget shows a list of items in a pop-up window in the middle of the screen. It automatically optimizes the pop-up window size within the screen. To add a pop-up widget to the application, use the following code: @@ -112,6 +116,8 @@
    The pop-up can define callbacks for events as described in the jQueryMobile documentation for pop-up events.
    You can use methods with the pop-up as described in the jQueryMobile documentation for pop-up methods. + + @deprecated 2.0 verisons */ /** diff --git a/src/widgets/popupwindow_ctxpopup/js/jquery.mobile.tizen.ctxpopup.js b/src/widgets/popupwindow_ctxpopup/js/jquery.mobile.tizen.ctxpopup.js index 0b06aed..ecd7188 100755 --- a/src/widgets/popupwindow_ctxpopup/js/jquery.mobile.tizen.ctxpopup.js +++ b/src/widgets/popupwindow_ctxpopup/js/jquery.mobile.tizen.ctxpopup.js @@ -28,8 +28,12 @@ * *************************************************************************** * * Authors: Gabriel Schulhof + * Hyunjung Kim */ +/* + * % ContextPopup widget do not use anymore(will be deprecated, internal use only) + */ // This widget is implemented in an extremely ugly way. It should derive from $.tizen.popupwindow, but it doesn't // because there's a bug in jquery.ui.widget.js which was fixed in jquery-ui commit // b9153258b0f0edbff49496ed16d2aa93bec07d95. Once a version of jquery-ui containing that commit is released @@ -39,7 +43,7 @@ // the prototype of the subclass. The prototype of the superclass should remain unchanged. /** - @class ContextPopup + class ContextPopup The context pop-up widget shows a list of options and automatically optimizes its size within the screen. This widget is intended for a small list of options for a larger list, use the List widget.
    The context pop-up widget requires a target button, which must be clicked to open the context pop-up. In the default application theme, an arrow pointer is displayed at the top-left corner of the context pop-up widget when it is opened.

    To add a context pop-up widget to the application, use the following code: // Target button @@ -62,6 +66,8 @@ You can use methods with the context pop-up as described in the [jQueryMobile documentation for pop-up methods.][2] [1]: http://jquerymobile.com/demos/1.2.0-alpha.1/docs/pages/popup/events.html [2]: http://jquerymobile.com/demos/1.2.0-alpha.1/docs/pages/popup/methods.html + + @deprecated 2.0 verisons */ (function ( $, undefined ) { @@ -85,6 +91,7 @@ }, _create: function () { + console.warn("ctxpopup() was deprecated. use popup() instead."); if ( !this.element.data( "popupwindow" ) ) { this.element.popupwindow(); } diff --git a/src/widgets/progress/js/jquery.mobile.tizen.progress.js b/src/widgets/progress/js/jquery.mobile.tizen.progress.js index 864e068..2c4d7c7 100755 --- a/src/widgets/progress/js/jquery.mobile.tizen.progress.js +++ b/src/widgets/progress/js/jquery.mobile.tizen.progress.js @@ -165,12 +165,16 @@ style = this.options.style; } - _html = '
    ' + - '
    ' + - '
    '; - - if ( style === "pending" ) { - _html = '
    ' + _html + '
    '; + if ( style == "circle" ) { + _html = '
    ' + + '
    ' + + '
    '; + } else if ( style === "pending" ) { + _html = '
    ' + + '
    ' + + '
    ' + + '' + + '
    '; } this.html = $( _html ); diff --git a/src/widgets/progressbar/js/jquery.mobile.tizen.progressbar.js b/src/widgets/progressbar/js/jquery.mobile.tizen.progressbar.js index 68c3a8f..b77609f 100755 --- a/src/widgets/progressbar/js/jquery.mobile.tizen.progressbar.js +++ b/src/widgets/progressbar/js/jquery.mobile.tizen.progressbar.js @@ -64,7 +64,7 @@ this.valueDiv = $( "
    " ) .appendTo( this.element ); - this.valueDiv.wrap("
    "); + this.valueDiv.wrap("
    "); this.oldValue = this._value(); this._refreshValue(); diff --git a/src/widgets/swipe/js/jquery.mobile.tizen.swipe.js b/src/widgets/swipe/js/jquery.mobile.tizen.swipe.js index 0bbfacf..776667d 100644 --- a/src/widgets/swipe/js/jquery.mobile.tizen.swipe.js +++ b/src/widgets/swipe/js/jquery.mobile.tizen.swipe.js @@ -32,7 +32,7 @@ * Hyunjung Kim */ -// Widget which turns a list into a "swipe": +// Widget which turns a html element into a "swipe": // i.e. each list item has a sliding "cover" which can be swiped // to the right (to reveal buttons underneath) or left (to // cover the buttons again). Clicking on a button under a swipe @@ -54,11 +54,11 @@ /** @class Swipe - The swipe widget shows a list view on the screen where the list items can be swiped vertically to show a menu. - To add a swipe list widget to the application, use the following code: + The swipe widget shows a view on the screen where the items can be swiped vertically to show a menu. + To add a swipe widget to the application, use the following code: -
      -
    • +
        +
      • OK
        Cancel
        @@ -70,49 +70,51 @@
      - You can use methods with the swipe as described in the jQueryMobile documentation for list view methods. + You can use methods with the swipe as described in the jQueryMobile documentation for view methods. */ /** @property {String} data-role - Creates a swipe list using the HTML unordered list (>ul<) element. + Creates a swipe using the HTML unordered view (>ul<) element. The default value is swipe. - Creates a swipe list item cover using an HTML $gt;div$lt; element. This cover can be swiped to show the content beneath it. - The default value is swipelist-item-cover. + Creates a swipe item cover using an HTML $gt;div$lt; element. This cover can be swiped to show the content beneath it. + The default value is swipe-item-cover. */ /** @method open - uncover swipelist item + uncover swipe item */ /** @method close - cover swipelist item + cover swipe item */ /** - @method isOpen + @method opened return coveritem status( coverd or uncovred ) */ /** @event animationstart - The swipe list can define a callback for the animationstart event, which is fired after a list item is swipe and the swipe animation is start: + The swipe can define a callback for the animationstart event, which is fired after a item is swipe and the swipe animation is start: */ /** @event animationend - The swipe list can define a callback for the animationend event, which is fired after a list item is swiped and the swipe animation is complete: - -
        -
      • -
        OK
        -
        Cancel
        -
        -

        This is a swipelist item cover.
        + The swipe can define a callback for the animationend event, which is fired after a item is swiped and the swipe animation is complete: + +

          +
        • +
          +
          OK
          +
          Cancel
          +
          +
          +

          This is a swipe item cover.
          This will be swiped out when swipe event comes.

        $("#foo").bind("animationend", function (ev) { - Console.log("Swipelist cover's animation is complete."); + Console.log("Swipe cover's animation is complete."); }); */ (function ($) { @@ -147,13 +149,12 @@ defaultCoverTheme = 'ui-body-' + this.options.theme; - // swipe is a listview if ( !this.element.parent().hasClass('ui-listview') ) { this.element.parent().listview(); } this.element.addClass('ui-swipe'); - // get the list item covers + // get the item covers covers = this.element.find(':jqmData(role="swipe-item-cover")'); item = this.element.find(':jqmData(role="swipe-item")'); @@ -210,7 +211,7 @@ this.element.removeClass('ui-swipe'); - // get the list item covers + // get the item covers cover = this.element.find(':jqmData(role="swipe-item-cover")'); item = this.element.find(':jqmData(role="swipe-item")'); @@ -272,7 +273,7 @@ .each( function () { if ( this !== self.element.get(0) && - $( this ).swipe("isOpen") ) { + $( this ).swipe("opened") ) { $( this ).swipe("close"); } } @@ -303,7 +304,7 @@ } ); }, - isOpen: function () { + opened: function () { return this._isopen; }, diff --git a/src/widgets/virtualgrid/js/jquery.mobile.tizen.virtualgrid.js b/src/widgets/virtualgrid/js/jquery.mobile.tizen.virtualgrid.js index 1df4aea..7b0b5e6 100644 --- a/src/widgets/virtualgrid/js/jquery.mobile.tizen.virtualgrid.js +++ b/src/widgets/virtualgrid/js/jquery.mobile.tizen.virtualgrid.js @@ -348,7 +348,7 @@ _cellSize : undefined, _currentItemCount : 0, _itemCount : 1, - _isAuto : true, + _inheritedSize : null, // timer _timerInterval : 0, @@ -398,6 +398,9 @@ return; } + // read defined properties(width and height) from dom element. + self._inheritedSize = self._getinheritedSize(self.element); + // set a scroll direction. self._direction = opts.direction === 'x' ? true : false; @@ -519,7 +522,7 @@ self._clipSize = self._calculateClipSize(); self._calculateColumnSize(); self._initPageProperty(); - self._setScrollBarSize( ); + self._setScrollBarSize(); }, _initPageProperty : function () { @@ -563,8 +566,40 @@ } }, + _getinheritedSize : function ( elem ) { + var $target = $(elem), + height, + width, + ret = { + isDefinedWidth : false, + isDefinedHeight : false, + width : 0, + height : 0 + }; + + while ( $target[0].nodeType === Node.ELEMENT_NODE && (ret.isDefinedWidth === false || ret.isHeightDefined === false )) { + height = $target[0].style.height; + width = $target[0].style.width; + + if (ret.isDefinedHeight === false && height !== "" ) { + // Size was defined + ret.isDefinedHeight = true; + ret.height = parseInt(height, 10); + } + + if ( ret.isDefinedWidth === false && width !== "" ) { + // Size was defined + ret.isDefinedWidth = true; + ret.width = parseInt(width, 10); + } + $target = $target.parent(); + } + return ret; + }, + resize : function ( ) { var self = this, + ret = null, rowsPerView = 0, itemCount = 0, totalRowCnt = 0, @@ -574,7 +609,7 @@ clipPosition = 0; itemCount = self._calculateColumnCount(); - if ( self._isAuto && itemCount != self._itemCount ) { + if ( itemCount != self._itemCount ) { totalRowCnt = parseInt(self._numItemData / itemCount , 10 ); self._totalRowCnt = self._numItemData % itemCount === 0 ? totalRowCnt : totalRowCnt + 1; prevcnt = self._itemCount; @@ -1083,6 +1118,11 @@ $parent = $(self.element).parent(), paddingValue = 0, clipSize = $(window).width(); + + if ( self._inheritedSize.isDefinedWidth ) { + return self._inheritedSize.width; + } + if ( $parent.hasClass("ui-content") ) { paddingValue = parseInt($parent.css("padding-left"), 10); clipSize = clipSize - ( paddingValue || 0 ); @@ -1102,6 +1142,11 @@ footer = null, paddingValue = 0, clipSize = $(window).height(); + + if ( self._inheritedSize.isDefinedHeight ) { + return self._inheritedSize.height; + } + if ( $parent.hasClass("ui-content") ) { paddingValue = parseInt($parent.css("padding-top"), 10); clipSize = clipSize - ( paddingValue || 0 ); diff --git a/tests/unit-tests/expandablelist/expandablelist-tests.js b/tests/unit-tests/expandablelist/expandablelist-tests.js deleted file mode 100644 index fdb3381..0000000 --- a/tests/unit-tests/expandablelist/expandablelist-tests.js +++ /dev/null @@ -1,106 +0,0 @@ -/** - * Expandablelist test - * - * Youmin Ha - */ -( function ( $ ) { - var DEBUG = true; - - $.mobile.defaultTransition = "none"; - - module( "ExpandableList", { - setup: function ( ) { - var page = $( 'div#expandablelist-main:jqmData(role="page")' ), - initHtml = '
        \ -
        \ -

        expandable list

        \ -
        \ -
        \ -
          \ -
        • exp1
        • \ -
        • exp1-1
        • \ -
        • exp1-1-1
        • \ -
        • exp2
        • \ -
        \ -
        \ -
        ', - obj; - - if( DEBUG ) { - page.show( ); - } - page.append( $( initHtml ) ); - - obj = $( ':jqmData(role="listview")' ); - obj.listview( ); - - obj = $( ':jqmData(expandable="true")' ); - obj.expandablelist( ); - }, - teardown: function ( ) { - var page = $( 'div#expandablelist-main:jqmData(role="page")' ); - page.empty( ); - - if( DEBUG ) { - page.hide( ); - } - } - } ); - - function expandCollapseTest ( ) { - var transitionTimeout = 1000, - elist = $( ":jqmData(expandable='true')" ), - li1, - li1_1, - li1_1_1, - val; - - elist.expandablelist( ); - ok( elist, "expandablelist object creation" ); - - li1 = $( "li#exp1" ); - li1_1 = $( "li#exp1-1" ); - li1_1_1 = $( "li#exp1-1-1" ); - - val = li1_1.height( ); - console.log( "li1_1's height=" + val ); - notEqual( val, 0, "Expanded listitem with expandable parent having data-initial-expansion=true must be visible (height > 0)" ); - - equal( li1_1_1.height(), 0, "Expanded listitem with expandable parent having data-initial-expansion=false must not be visible (height == 0)" ); - - li1_1.trigger( 'vclick' ); - setTimeout( function ( ) { - notEqual( li1_1_1.height( ), 0, "After click, expanded listitem must be visible (height > 0)" ); - - li1.trigger( 'vclick' ); - setTimeout( function ( ) { - // All children must be collapsed when top-level expandable listitem is clicked. - equal( li1_1.height(), 0, "After click, all children must be collapsed. (height == 0)" ); - equal( li1_1_1.height(), 0, "After click, all children must be collapsed. (height == 0)" ); - - start( ); - }, transitionTimeout ); - - }, transitionTimeout ); - } - - asyncTest( "Basic expand-collapse test", 6, function ( ) { - expandCollapseTest( ); - } ); - - asyncTest( "style test - checkbox" , 6, function ( ) { - var li = $( "li#exp1-1" ), - subitem = $( '' ); - - // Prepare - li.append( subitem ); - li.addClass( 'ui-li-1line-check1' ) - .addClass( 'ui-li-dialogue' ); - subitem.checkboxradio( ); - li.trigger( 'refresh' ); - - // Run - expandCollapseTest( ); - } ); - -} ) ( jQuery ); diff --git a/tests/unit-tests/expandablelist/index.html b/tests/unit-tests/expandablelist/index.html deleted file mode 100644 index b02d616..0000000 --- a/tests/unit-tests/expandablelist/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - Expandable list test - - - - - - - - - - - - -
        -

        Test : Expandable list

        -

        -

        -
          -
          -
          -
          - - - diff --git a/tests/unit-tests/shortcutscroll/shortcutscroll-tests.js b/tests/unit-tests/fastscroll/fastscroll-tests.js similarity index 58% rename from tests/unit-tests/shortcutscroll/shortcutscroll-tests.js rename to tests/unit-tests/fastscroll/fastscroll-tests.js index be36178..7e0bc53 100644 --- a/tests/unit-tests/shortcutscroll/shortcutscroll-tests.js +++ b/tests/unit-tests/fastscroll/fastscroll-tests.js @@ -1,21 +1,21 @@ /* - * Unit Test: Shortcut Scroll + * Unit Test: FastScroll * * Minkyu Kang */ (function ($) { - module("Shortcut Scroll"); + module("FastScroll"); - var unit_shortcutscroll = function ( list ) { + var unit_fastscroll = function ( list ) { var widget, shortcut, divider; - widget = list.parentsUntil(".ui-content").parent().find(".ui-shortcutscroll"); + widget = list.parentsUntil(".ui-content").parent().find(".ui-fastscroll"); /* Create */ - ok( widget.hasClass("ui-shortcutscroll"), "Create" ); + ok( widget.hasClass("ui-fastscroll"), "Create" ); shortcut = widget.find("li"); divider = list.find(".ui-li-divider"); @@ -27,7 +27,7 @@ }; test( "shortcut", function () { - unit_shortcutscroll( $("#shortcut") ); + unit_fastscroll( $("#shortcut") ); }); }( jQuery )); diff --git a/tests/unit-tests/shortcutscroll/index.html b/tests/unit-tests/fastscroll/index.html similarity index 92% rename from tests/unit-tests/shortcutscroll/index.html rename to tests/unit-tests/fastscroll/index.html index babeb60..18cca7f 100755 --- a/tests/unit-tests/shortcutscroll/index.html +++ b/tests/unit-tests/fastscroll/index.html @@ -11,7 +11,7 @@ - + Shortcut Scroll @@ -26,12 +26,12 @@
          -
          +

          Shortcut Scroll

          -
            +
            • A
            • Anton
            • Arabella
            • diff --git a/tests/unit-tests/nocontents/index.html b/tests/unit-tests/nocontents/index.html deleted file mode 100755 index 25aa56e..0000000 --- a/tests/unit-tests/nocontents/index.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - - - No Contents - - - - -

              No Contents

              -

              -
              -

              -
                - -
                - -
                -
                -

                No Contents

                -
                -
                -
                -

                text1

                -

                text2

                -
                -
                -
                - -
                -
                -

                No Contents

                -
                -
                -
                -

                text1

                -

                text2

                -
                -
                -
                - -
                -
                -

                No Contents

                -
                -
                -
                -

                text1

                -

                text2

                -
                -
                -
                - -
                -
                -

                No Contents

                -
                -
                -
                -

                text1

                -

                text2

                -
                -
                -
                - -
                - - - diff --git a/tests/unit-tests/nocontents/nocontents-tests.js b/tests/unit-tests/nocontents/nocontents-tests.js deleted file mode 100644 index 8e504cf..0000000 --- a/tests/unit-tests/nocontents/nocontents-tests.js +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Unit Test: Nocontents - * - * Minkyu Kang - */ - -(function ($) { - module("Nocontents"); - - var unit_nocontents = function ( widget, type ) { - var background, - text, - i; - - /* Create */ - widget.nocontents(); - - ok( widget.hasClass("ui-nocontents"), "Create" ); - - /* Check Background */ - background = widget.children( ".ui-nocontents-icon-" + type ); - ok( background, "Background" ); - - /* Check Texts */ - text = widget.children("p"); - - for ( i = 0; i < text.length; i++ ) { - ok( $( text[i] ).hasClass("ui-nocontents-text"), "Text" + i ); - } - }; - - test( "text type", function () { - unit_nocontents( $("#nocontents_text"), "text" ); - }); - - test( "picture type", function () { - unit_nocontents( $("#nocontents_pic"), "picture" ); - }); - - test( "multimedia type", function () { - unit_nocontents( $("#nocontents_mul"), "multimedia" ); - }); - - test( "unnamed type", function () { - unit_nocontents( $("#nocontents_un"), "unnamed" ); - }); -}( jQuery )); diff --git a/tests/unit-tests/pagecontrol/index.html b/tests/unit-tests/pagecontrol/index.html deleted file mode 100644 index f919221..0000000 --- a/tests/unit-tests/pagecontrol/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - Pagecontrol test - - - - - - - - - - - - - -

                Test : Pagecontrol

                -

                -

                -
                  - -
                  - -
                  - - diff --git a/tests/unit-tests/pagecontrol/pagecontrol-tests.js b/tests/unit-tests/pagecontrol/pagecontrol-tests.js deleted file mode 100644 index 17c7b4e..0000000 --- a/tests/unit-tests/pagecontrol/pagecontrol-tests.js +++ /dev/null @@ -1,40 +0,0 @@ -/** - * pagecontrol test - */ -( function ( $ ) { - $.mobile.defaultTransition = "none"; - - module( "PageControl" ); - - test( "Basic pagecontrol test", function ( ) { - var pc = $( '
                  ' ) - .attr( { - 'data-max': 10, - 'data-value': 2 - } ), - nb; - - pc.pagecontrol( ); - - ok( pc, "pagecontrol object creation" ); - nb = pc.children( 'div.page_n' )[1]; // 2nd button - console.dir( nb ); - ok( $(nb).hasClass( 'page_n_selected' ), "first button should be activated" ); - equal( $( pc ).pagecontrol( "value" ), 2, "value() method must return 2" ); - - nb = pc.children( 'div.page_n' )[9]; - ok( nb, "last number button should exist" ); - pc.one( "change", function( ev, val ) { - equal( val, 10, "pagecontrol element's value must be set when click event comes." ); - ok( $( nb ).hasClass( 'page_n_selected' ), "after click, clicked button should be changed to number type" ); - equal( $( pc ).pagecontrol( "value" ), 10, "value() method must return 10" ); - - $( pc ).pagecontrol( "value", 5 ); - equal( $( pc ).pagecontrol( "value" ), 5, "value() method must return 5 after running .value(5)" ); - - } ); - $(nb).trigger( "click" ); - } ); - -} ) ( jQuery ); - diff --git a/tests/unit-tests/searchbar/index.html b/tests/unit-tests/searchbar/index.html index 59cecb2..89a00d4 100755 --- a/tests/unit-tests/searchbar/index.html +++ b/tests/unit-tests/searchbar/index.html @@ -28,10 +28,11 @@
              +

              Searchbar

              - +

              Hairston

              diff --git a/tests/unit-tests/searchbar/searchbar-tests.js b/tests/unit-tests/searchbar/searchbar-tests.js index 27f5752..4f06686 100755 --- a/tests/unit-tests/searchbar/searchbar-tests.js +++ b/tests/unit-tests/searchbar/searchbar-tests.js @@ -13,7 +13,7 @@ $( document ).ready( function () { asyncTest( "Searchbar", function () { /* Initialize */ - var $divSearchbar = $( "div.input-search-bar" ), + var $divSearchbar = $( "#searchbar-unit-test div.input-search-bar" ), $input = $( "input" ); equal( $divSearchbar.length, 1, "initialized" ); @@ -21,8 +21,7 @@ $( document ).ready( function () { equal( $divSearchbar.find( "div.ui-input-search input.ui-input-text" ).length, 1 ); equal( $divSearchbar.find( "div.ui-input-search a.ui-input-clear" ).hasClass( "ui-input-clear-hidden" ), true ); equal( $divSearchbar.find( "div.ui-input-search div.ui-image-search" ).length, 1 ); - equal( $divSearchbar.find( "a.ui-input-cancel" ).hasClass( "ui-btn" ), true ); - equal( $divSearchbar.find( "a.ui-input-cancel" ).hasClass( "ui-btn-icon-cancel" ), true ); + equal( $("#searchbar-content p").filter( function ( index ) { return $( this ).css( "display" ) != "none"; } ).length, 30 ); @@ -30,44 +29,44 @@ $( document ).ready( function () { /* Public Method */ /* disable */ $( "#searchInput" ).searchbar( "disable" ); - equal( $( "div.ui-input-search" ).hasClass( "ui-disabled" ), true, "disable" ); + equal( $( "#searchbar-unit-test div.ui-input-search" ).hasClass( "ui-disabled" ), true, "disable" ); equal( $( "#searchInput" ).attr( "disabled" ), "disabled" ); /* enable */ $( "#searchInput" ).searchbar( "enable" ); - equal( $( "div.ui-input-search" ).hasClass( "ui-disabled" ), false, "enable" ); + equal( $( "#searchbar-unit-test div.ui-input-search" ).hasClass( "ui-disabled" ), false, "enable" ); equal( $( "#searchInput" ).attr( "disabled" ), undefined ); /* Event */ /* Search : Input and trigger change */ $input.focus(); - equal( $( "div.ui-image-search" ).css( "display" ), "none", "Input and trigger change" ); + equal( $( "div.ui-image-search" ).css( "display" ), "block", "Input and trigger change" ); $input.val( "a" ).trigger( "change" ); - equal( $("#searchbar-content p").filter( function ( index ) { - return $( this ).css( "display" ) != "none"; - } ).length, 24 ); - - $input.val( "ar" ).trigger( "change" ); - equal( $("#searchbar-content p").filter( function ( index ) { - return $( this ).css( "display" ) != "none"; - } ).length, 10 ); - $input.val( "are" ).trigger( "change" ); equal( $("#searchbar-content p").filter( function ( index ) { return $( this ).css( "display" ) != "none"; } ).length, 1 ); - /* Clear button preesed. */ + /* Clear button pressed. */ $( "a.ui-input-clear" ).trigger( "click" ); equal( $("#searchbar-content p").filter( function ( index ) { return $( this ).css( "display" ) != "none"; } ).length, 30 ); equal( $divSearchbar.find( "div.ui-input-search a.ui-input-clear" ).hasClass( "ui-input-clear-hidden" ), true, "Clear button pressed" ); - equal( $divSearchbar.find( "a.ui-input-cancel" ).hasClass( "ui-btn" ), true ); - equal( $divSearchbar.find( "a.ui-input-cancel" ).hasClass( "ui-btn-icon-cancel" ), true ); + + /* Button test */ + equal( $( ".ui-btn" ).hasClass( "ui-btn" ), true ); + equal( $divSearchbar.find( "> .ui-btn" ).jqmData("icon"), "call" ); + + /* Cancel test*/ + equal( $( ".ui-input-cancel" ).hasClass( "ui-btn" ), true ); + equal( $( ".ui-input-cancel" ).hasClass( "ui-btn-icon-cancel" ), true ); + + equal( $( ".ui-input-cancel" ).hasClass( "ui-btn" ), true ); + equal( $( ".ui-input-cancel" ).hasClass( "ui-btn-icon-cancel" ), true ); /* Cancel button pressed. */ $( "a.ui-btn-icon-cancel" ).trigger( "click" ); diff --git a/tests/unit-tests/swipe/index.html b/tests/unit-tests/swipe/index.html new file mode 100644 index 0000000..b8e4d6f --- /dev/null +++ b/tests/unit-tests/swipe/index.html @@ -0,0 +1,84 @@ + + + + + + + + + + + + + Swipe + + + +

              Swipe Tests

              +

              +

              +
                +
              + +
              +
              +
                +
              • +
                +
                Twitter
                +
                Twitter
                +
                Facebook
                +
                Facebook
                +
                +
                + Swipe2 +
                +
              • +
              • +
                +
                Twitter
                +
                Twitter
                +
                Facebook
                +
                Facebook
                +
                +
                + Swipe1 +
                +
              • +
              +
              +
              +
                +
              • +
                +
                Twitter
                +
                Twitter
                +
                Facebook
                +
                Facebook
                +
                +
                +
                subtext
                +
                2line-leftsub2
                +
                +
              • +
              • +
                +
                Twitter
                +
                Twitter
                +
                Facebook
                +
                Facebook
                +
                +
                +
                subtext
                +
                1line-leftsub1
                +
                +
              • +
              +
              +
              + + + diff --git a/tests/unit-tests/swipe/swipe-tests.js b/tests/unit-tests/swipe/swipe-tests.js new file mode 100644 index 0000000..3a8e3fb --- /dev/null +++ b/tests/unit-tests/swipe/swipe-tests.js @@ -0,0 +1,86 @@ +/* + * swipe unit tests + * + * Hyunjung Kim + * + */ + +( function ( $ ) { + + module("swipe"); + + var unit_swipe = function( swipe, type ) { + var covers, + cover, + coverStart, + item, + slideLeftDone = function () { + ok(true, "Animation Complete - sliding left"); + cover.unbind("animationComplete"); + equal(cover.position().left, coverStart, "Position - Cover"); + start(); + }, + slideRightDone = function () { + ok(true, "Animation Complete - sliding right"); + setTimeout(function () { + cover.unbind("animationComplete"); + cover.bind("animationComplete", slideLeftDone); + item.trigger("swipeleft"); + }, 0); + }; + + $("#swipepage").page(); + swipe.swipe(); + ok(swipe.hasClass("ui-swipe"), "Create - Swipe"); + + covers = swipe.find("div.ui-swipe-item-cover"); + cover = covers.first(); + + coverStart = cover.position().left; + item = swipe.find("div.ui-swipe-item").first(); + + cover.bind("animationComplete", slideRightDone); + cover.trigger("swiperight"); + stop(); + + equal( swipe.find("div.ui-swipe-item").length , 1, "Count - Swipeable li"); + equal( covers.length , 1, "Count - cover"); + + equal( covers.get(0).innerText, + "Swipe2", + "Check - Cover string value"); + }; + + var unit_swipe_destroy = function(swipe, type) { + var covers, + new_page = $("#swipedestorypage"); + + new_page.page(); + swipe.swipe(); + ok(swipe.hasClass("ui-swipe"),"Create - Swipe"); + covers = swipe.find("div.ui-swipe-item-cover"); + equal( swipe.find("div.ui-swipe-item").length , 1, "Count - Swipeable ui-swipe-item"); + + equal( covers.length , 1, "Count - cover"); + + swipe.swipe("destroy"); + + equal(new_page.has('.ui-swipe').length, 0, "Destroy - swipe"); + equal(new_page.has('.ui-swipe-item').length, 0 , "Destroy - item" ); + equal(new_page.has('.ui-swipe-item-cover').length, 0, "Destroy - cover"); + + }; + + asyncTest( " swipe ", function() { + expect(7); + unit_swipe( $("#swipewidget"), "swipe" ); + start(); + }); + + asyncTest( " swipe - destory", function() { + expect(6), + unit_swipe_destroy( $("#swipedestroy"), "swipedestroy"), + start() + }); + +} ) ( jQuery ); \ No newline at end of file diff --git a/tests/unit-tests/swipelist/index.html b/tests/unit-tests/swipelist/index.html deleted file mode 100644 index ea75f56..0000000 --- a/tests/unit-tests/swipelist/index.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - Swipelist - - - -

              Swipelist Tests

              -

              -

              -
                -
              - -
              -
              -
                -
                  -
                • -
                  Twitter
                  -
                  Twitter
                  -
                  Facebook
                  -
                  Facebook
                  -
                  -
                  subtext
                  -
                  2line-leftsub2
                  -
                  -
                • -
                • -
                  Twitter
                  -
                  Twitter
                  -
                  Facebook
                  -
                  Facebook
                  -
                  -
                  subtext
                  -
                  1line-leftsub1
                  -
                  -
                • -
                -
              -
              -
              -
                -
                  -
                • -
                  Twitter
                  -
                  Twitter
                  -
                  Facebook
                  -
                  Facebook
                  -
                  -
                  subtext
                  -
                  2line-leftsub2
                  -
                  -
                • -
                • -
                  Twitter
                  -
                  Twitter
                  -
                  Facebook
                  -
                  Facebook
                  -
                  -
                  subtext
                  -
                  1line-leftsub1
                  -
                  -
                • -
                -
              -
              -
              - - - diff --git a/tests/unit-tests/swipelist/swipelist-tests.js b/tests/unit-tests/swipelist/swipelist-tests.js deleted file mode 100644 index 23ff373..0000000 --- a/tests/unit-tests/swipelist/swipelist-tests.js +++ /dev/null @@ -1,85 +0,0 @@ -/* - * swipelist unit tests - * - * Hyunjung Kim - * - */ - -( function ( $ ) { - - module("swipelist"); - - var unit_swipe = function( swipelist, type ) { - var covers, - cover, - coverStart, - item, - slideLeftDone = function () { - ok(true, "Animation Complete - sliding left"); - cover.unbind("animationComplete"); - equal(cover.position().left, coverStart, "Position - Cover"); - start(); - }, - slideRightDone = function () { - ok(true, "Animation Complete - sliding right"); - setTimeout(function () { - cover.unbind("animationComplete"); - cover.bind("animationComplete", slideLeftDone); - item.trigger("swipeleft"); - }, 0); - }; - - $("#swipelistpage").page(); - swipelist.swipelist(); - - ok(swipelist.hasClass("ui-swipelist"),"Create - Swipelist"); - covers = swipelist.find("li *.ui-swipelist-item-cover"); - cover = covers.first(); - coverStart = cover.position().left; - item = swipelist.find("li").first(); - - cover.bind("animationComplete", slideRightDone); - cover.trigger("swiperight"); - stop(); - - equal( swipelist.find("li.ui-swipelist-item").length , 2, "Count - Swipeable li"); - equal( covers.length , 2, "Count - cover"); - - equal(covers.find("span.ui-swipelist-item-cover-inner:contains('1line-leftsub1')").length, - 1, - "Check - Cover string value"); - }; - - var unit_swipe_destroy = function(swipelist, type) { - var covers, - new_page = $("#swipedestorypage"); - - new_page.page(); - swipelist.swipelist(); - ok(swipelist.hasClass("ui-swipelist"),"Create - Swipelist"); - covers = swipelist.find("li *.ui-swipelist-item-cover"); - - equal( swipelist.find("li.ui-swipelist-item").length , 2, "Count - Swipeable li"); - equal( covers.length , 2, "Count - cover"); - - swipelist.swipelist("destroy"); - - equal(new_page.has('.ui-swipelist').length, 0, "Destroy - list"); - equal(new_page.has('.ui-swipelist-item').length, 0 , "Destroy - item" ); - equal(new_page.has('.ui-swipelist-item-cover').length, 0, "Destroy - cover"); - - }; - - asyncTest( " swipelist ", function() { - expect(7); - unit_swipe( $("#swipewidget"), "swipelist" ); - start(); - }); - - asyncTest( " swipelist - destory", function() { - expect(6), - unit_swipe_destroy( $("#swipedestroy"), "swipelistdestroy"), - start() - }); - -} ) ( jQuery ); diff --git a/tests/unit-tests/tests.js b/tests/unit-tests/tests.js index 92a7130..d1efa12 100644 --- a/tests/unit-tests/tests.js +++ b/tests/unit-tests/tests.js @@ -6,25 +6,21 @@ var TESTS = { "check", "controlbar", "datetimepicker", - "dayselector", - "expandablelist", "extendablelist", "handler", "gallery", "multimediaview", "navigationbar", - "nocontents", "notification", - "pagecontrol", "popupwindow", "popupwindow_ctxpopup", "progressbar", "radio", "searchbar", "segmentcontrol", - "shortcutscroll", + "fastscroll", "slider", - "swipelist", + "swipe", "toggleswitch", "tokentextarea", "virtuallist", -- 2.7.4