Gelmiş geçmiş en büyük porno sitemiz olan 2pe de her zaman en kaliteli pornoları sunmayı hedefledik. Diğer video sitemiz olan vuam da ise hd porno ağırlıklı çalışmalara başladık.

  1. #711
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    I made this change and it's working very well with Firefox. Clicking on the scrollbar arrows will cause the grid to always scroll by 1 row and not 0 or 1. Clicking inside the scrollbar, for page scrolling, also works as well. This was tested with Firefox 3.6. Will look at IE 6 next.

    The modification to onLiveScroll is in green below.

    Code:
        onLiveScroll : function()
        {
            var scrollTop = this.liveScroller.dom.scrollTop;
     
            var cursor = Math.floor((scrollTop)/this.rowHeight);
     
            if (Ext.isGecko) {
                var delta = (scrollTop) % this.rowHeight;
                if (delta !== 0) {
                    if (scrollTop > this.lastScrollPos) {
                        this.adjustScrollerPos(this.rowHeight - delta, true);
                    } else {
                        this.adjustScrollerPos(-(delta), true);
                    }
                }
            }
     
            this.rowIndex = cursor;
     
            // the lastRowIndex will be set when refreshing the view has finished
            if (cursor == this.lastRowIndex) {
                return;
            }
     
            this.updateLiveRows(cursor);
     
            this.lastScrollPos = this.liveScroller.dom.scrollTop;
        },
    I'm hoping I can do something similar for IE and Safari.

  2. #712
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    Well, it's much harder to get the single-row scrolling to work correctly with Safari and IE 6 when clicking on the 2 scroll buttons. The onLiveScroll is called 3 times for IE and twice for Safari for each click. The handleWheel is working though and that scrolls the the grid by one row in either direction.

    The code changes in my previous post is beneficial for Firefox 3.6. Scrolling is nice for both the scroll wheel and the scroll bar.

  3. #713
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    Made some progress here and the scrollbar arrows are now scrolling the grid by one row (up or down) and not 0 at times for Firefox, 2 for Webkit and 3 for IE 6/7 (will test IE 8 as well).

    Will post the code changes later on. The awesome livegrid user extension is a go now for me.

  4. #714
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    The following highlights the code changes I have made to make the scroll buttons scroll the grid by one row only (up or down). I was able to combine the logic for Opera, IE 6/7/8 and WebKit into one. Gecko requires its own separate logic.

    First, the onLiveScroll function is entered 3 times on each click for IE 6/7/8. To solve this, scrollDelay needs to be set to 1 or higher (1 will do though). It can be set as follow in your config:

    Code:
        var myView = new Ext.ux.grid.livegrid.GridView({
            nearLimit : 100,
           scrollDelay : Ext.isIE ? 1 : 0,
            loadMask  : {
                msg :  'Buffering. Please wait...'
            }
        });
    Or, it can be done inside the ext-ux-livegrid user extension. This is the method I chose.

    Code:
        /**
         * @cfg {Number} scrollDelay The number of microseconds a call to the
         * onLiveScroll-lisener should be delayed when the scroll event fires
         */
       this.scrollDelay = Ext.isIE ? 1 : 0;
    The scroll wheel works for all browsers as expected. Therefore, I don't want to change the behavior for that once the onLiveScroll event is called.

    The one line change to handleWheel is highlighted in red below.

    Code:
        handleWheel : function(e)
        {
            if (this.rowHeight == -1) {
                e.stopEvent();
                return;
            }
            var d = e.getWheelDelta();
     
           this.isWheelEvent = true;
            this.adjustScrollerPos(-(d*this.rowHeight));
     
            e.stopEvent();
        },
    Here is the updated onLiveScroll function. This has been tested with IE 6/7/8, Firefox 3.6, Safari 4 and Opera 10.5. Please note that for IE, scrollDelay set to 1 is required. I made this a default in GridView.js for IE and 0 for other browsers.

    Code:
        onLiveScroll : function()
        {
           var scrollTop = this.liveScroller.dom.scrollTop,
               cursor, delta;
     
           if (this.isWheelEvent) {
               delete this.isWheelEvent;
           } else {
               if (Ext.isGecko) {
                   if (Math.abs(scrollTop - this.lastScrollPos) < 30) {
                       delta = scrollTop % this.rowHeight;
                       if (delta !== 0) {
                           delta = (scrollTop > this.lastScrollPos)? this.rowHeight - delta :-(delta);
                           this.adjustScrollerPos(delta, true);
                           scrollTop = this.liveScroller.dom.scrollTop;
                       }
                   }
               } else {
                   if (Math.abs(scrollTop - this.lastScrollPos) < 80) {
                       delta = (scrollTop > this.lastScrollPos)? this.rowHeight :-(this.rowHeight);
                       this.adjustScrollerPos(-1, true, this.lastScrollPos + delta);
                       scrollTop = this.liveScroller.dom.scrollTop;
                   }
               }
           }
     
           cursor = Math.floor((scrollTop)/this.rowHeight);
     
            this.rowIndex = cursor;
     
            // the lastRowIndex will be set when refreshing the view has finished
            if (cursor == this.lastRowIndex) {
                return;
            }
     
            this.updateLiveRows(cursor);
     
            this.lastScrollPos = this.liveScroller.dom.scrollTop;
        },
    I need to be able to "goTo" new position. The new position is passed as the 3rd argument (optional).

    Code:
        adjustScrollerPos : function(pixels, suspendEvent, newPos)
        {
            if (pixels == 0) {
                return;
            }
            var liveScroller = this.liveScroller;
            var scrollDom    = liveScroller.dom;
     
            if (suspendEvent === true) {
                liveScroller.un('scroll', this.onLiveScroll, this);
            }
            this.lastScrollPos   = scrollDom.scrollTop;
     
           if (Ext.isDefined(newPos)) {
               scrollDom.scrollTop = newPos;
           } else {
                scrollDom.scrollTop += pixels;
           }
     
            if (suspendEvent === true) {
                scrollDom.scrollTop = scrollDom.scrollTop;
                liveScroller.on('scroll', this.onLiveScroll, this, {buffer : this.scrollDelay});
            }
        }
    In another programming language such as Visual Basic or C#, one can specify how many pixels for the scrollbar thumb to move when clicking on the arrows. It would be nice if CSS allowed us to specify the smallChange/largeChange properties for the scrollbar thumb. I searched and couldn't fine a way to do this. Therefore, we have to adjust the thumb position accordingly to keep it in sync with the grid's rowHeight value.

    Again, for IE 6/7/8, scrollDelay needs to be set. Fortunately, 1 will do.

    Cheers,
    Mario

  5. #715
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    I have made a small change and updated the previous post.

    To allow 0 for newPos, I changed this to use Ext.isDefined instead of doing: if (newPos) { ...

    Code:
            if (Ext.isDefined(newPos)) {
                scrollDom.scrollTop = newPos;
            } else {
                scrollDom.scrollTop += pixels;
            }

  6. #716
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    IE 6 requires 60 as the scrollbar thumb moves by 60 pixels when clicking on the arrows. IE 8 moves the thumb by more than 60 pixels. Therefore, 60 isn't enough. It's dynamic and depends on the height of the window.

    To ensure one row scrolling, when clicking on the scroll arrows, I changed the 2 values: 30 for Firefox and 80 for others.

    Perhaps this was a waste of time as I just looked at the grid samples that come with Ext JS. Those will scroll 2.5 rows, 2, or 3 or anywhere in between. I had no idea these were doing that.

    In any event, this completes what I wanted to achieve with the scrollbar. I thought that clicking on either of the scrollbar arrows should scroll the grid by one row -- similar to Excel. Firefox at times will not scroll the live grid at all and requires 2 clicks. That is what led me to do this work.

    Code:
        onLiveScroll : function()
        {
            var scrollTop = this.liveScroller.dom.scrollTop,
                cursor, delta;
     
            if (this.isWheelEvent) {
                delete this.isWheelEvent;
            } else {
                if (Ext.isGecko) {
                    if (Math.abs(scrollTop - this.lastScrollPos) < 30) {
                        delta = scrollTop % this.rowHeight;
                        if (delta !== 0) {
                            delta = (scrollTop > this.lastScrollPos)? this.rowHeight - delta :-(delta);
                            this.adjustScrollerPos(delta, true);
                            scrollTop = this.liveScroller.dom.scrollTop;
                        }
                    }
                } else {
                    if (Math.abs(scrollTop - this.lastScrollPos) < 80) {
                        delta = (scrollTop > this.lastScrollPos)? this.rowHeight :-(this.rowHeight);
                        this.adjustScrollerPos(-1, true, this.lastScrollPos + delta);
                        scrollTop = this.liveScroller.dom.scrollTop;
                    }
                }
            }
     
            cursor = Math.floor((scrollTop)/this.rowHeight);
     
            this.rowIndex = cursor;
     
            // the lastRowIndex will be set when refreshing the view has finished
            if (cursor == this.lastRowIndex) {
                return;
            }
     
            this.updateLiveRows(cursor);
     
            this.lastScrollPos = this.liveScroller.dom.scrollTop;
        },

  7. #717
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    The idea above works great with Firefox. I'm seeing the behaviour of the grid and scrolling when the total records in the store is 52. As IE moves the scroll by 40+ pixels, it looks jerky due to adjusting the scrollbar to match the 1 row size of 21 pixels. It's fine if the total records is 2000+ though.

    I will only leave in the part for Firefox as it requires 2 clicks to scroll at times when clicking on the scroll arrows. This is what I intended to fix in the first place.

    It's too bad we are not able, via a CSS attribute, to specify the number of pixels to move for the scrollbar when clicking on either arrows. The optimum value would be the row height.

    Humm...

  8. #718
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    I think this can be solved.

    For example, instead of setting the height of the scroller div to totalRows * rowHeight, it should instead factor in the scrollbar thumb movement in pixels.

    Firefox is 14. Therefore, the height for the scrollbar div should be 14 * totalRows and not 21 (rowHeight) * totalRows.

    WebKit is 40.
    IE 6 is 50.

    Then, it should be possible to make scrolling consistent, including single row scrolling when clicking on the scrollbar arrows. And the behaviour should be the same with 52 or 5000 total records in the store.

    It's just a thought.

    The question for me now is on whether the movement of the scrollbar thumb is the same, in number of pixels, when clicking on the arrows for 50 or 5000 total records. The answer is yes for IE 6. It's 50 pixels at a time for both. Firefox remains at 14 and WebKit still at 40.

    At this point, I strongly believe the LiveGrid user extension will work smoother if factoring these values instead of rowHeight for the scrollbar. This should also help reduce some of the math involved for adjusting the scrollbar position and the end result a faster LiveGrid.

  9. #719
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    This explains why, in the current implementation, IE 6 scrolls the grid by 3 rows and WebKit by 2 rows. Also, Firefox will not move and requires 2 clicks depending on which row you're on.

    All of this can be solved. That is my humble opinion after a weekend retreat with the LiveGrid user extension.

    What works as far as scrolling goes.
    Scrolling via the mouse wheel works as expected. Very smooth and nice.

    What's not quite ready and described above.
    Scrolling by clicking on the scrollbar arrows (up/down). This is what I'm after.

    Keyboard page down/up only works if the scrollbar has focus.

  10. #720
    Sencha User
    Join Date
    Jun 2009
    Posts
    750
    Vote Rating
    0
    meroy is on a distinguished road

      0  

    Default


    It's actually possible.

    What's needed is to set minScrollMovement instead (new config) at runtime and use that for setting the hight of the scroller div and for adjusting the scroller position. It's working quite smoothly right now with Firefox. I have commented out my changes and I'm not having to click twice on the scrollbar arrow to scroll one row no matter what row I'm on. Previously, with 040 or 041, it requires 2 clicks for some rows.

    This requires testing and also need to factor in page scrolling (clicking inside the scrollbar).

    The rowHeight config is used solely for the grid and not the scroller div.

    I just need to validate the minimum scroller movement for all browsers and set it at run time. Scrolling is smooth no matter if the total records is 50 or 5000.

    Code:
    minScrollMovement : Ext.isIE ? 50 : Ext.isGecko ? 14 : Ext.isWebKit ? 40 : 21,   // using 21 as a default otherwise
    This is turning out better than my first attempt at addressing the mouse click on the scrollbar arrrows. The behaviour can be made consistent among the browsers.

Thread Participants: 248

  1. JeffHowden (1 Post)
  2. Animal (4 Posts)
  3. rodiniz (1 Post)
  4. galdaka (2 Posts)
  5. mdissel (1 Post)
  6. Wolfgang (1 Post)
  7. zzo (2 Posts)
  8. Frank (1 Post)
  9. herve (2 Posts)
  10. ericd (2 Posts)
  11. RWaters (5 Posts)
  12. Digital God (1 Post)
  13. Dumbledore (11 Posts)
  14. KimH (1 Post)
  15. pjordan (1 Post)
  16. cpantel (1 Post)
  17. mystix (3 Posts)
  18. wanclark (1 Post)
  19. MD (3 Posts)
  20. drew (1 Post)
  21. jheid (15 Posts)
  22. tsprague (1 Post)
  23. Confused (2 Posts)
  24. thesilentman (1 Post)
  25. andreas.linde (1 Post)
  26. violinista (1 Post)
  27. redxiii (1 Post)
  28. akannu (1 Post)
  29. theo (1 Post)
  30. Troy Wolf (3 Posts)
  31. chh (4 Posts)
  32. Phenothiasine (1 Post)
  33. danh2000 (1 Post)
  34. tobiu (1 Post)
  35. badgerd (1 Post)
  36. mlarese (1 Post)
  37. pluesch0r (1 Post)
  38. krycek (1 Post)
  39. gtaylor (4 Posts)
  40. ftftft (1 Post)
  41. hallikpapa (7 Posts)
  42. tech-nova (1 Post)
  43. provagino (1 Post)
  44. mjlecomte (2 Posts)
  45. iancmcc (1 Post)
  46. andrei.neculau (7 Posts)
  47. zieli1 (1 Post)
  48. meteorbites (1 Post)
  49. brookd (3 Posts)
  50. alexpetri (1 Post)
  51. urskipfer (1 Post)
  52. JEBriggs (1 Post)
  53. magunes117 (6 Posts)
  54. shiweiwei97 (3 Posts)
  55. vpell (1 Post)
  56. gelleneu (4 Posts)
  57. ohhowihateie (2 Posts)
  58. Andrewd2 (1 Post)
  59. Jacob (1 Post)
  60. cherbert (2 Posts)
  61. DragonFist (1 Post)
  62. marcoas (1 Post)
  63. Shmoo (1 Post)
  64. GraemeBryce (1 Post)
  65. w011117 (1 Post)
  66. luxxxian (1 Post)
  67. loverofdream (1 Post)
  68. lvanderree (1 Post)
  69. robw (1 Post)
  70. SeaSharp (1 Post)
  71. xpressive (1 Post)
  72. jeremia (1 Post)
  73. wm003 (21 Posts)
  74. miti (1 Post)
  75. sfrancolla (1 Post)
  76. Blob (1 Post)
  77. WoLpH (5 Posts)
  78. khatuido (3 Posts)
  79. zacware (3 Posts)
  80. mepfuso (2 Posts)
  81. wasp (1 Post)
  82. sharpguy (1 Post)
  83. stevets (1 Post)
  84. fred (1 Post)
  85. eliasp (3 Posts)
  86. h0tzenpl0tz (1 Post)
  87. tonedeaf (1 Post)
  88. Zolcsi (3 Posts)
  89. dearsina (1 Post)
  90. efattal (3 Posts)
  91. franck34 (3 Posts)
  92. tyr (1 Post)
  93. cybertaz (1 Post)
  94. zergworld (8 Posts)
  95. sekundek (1 Post)
  96. cs_alpha (3 Posts)
  97. Sultanalifezar (3 Posts)
  98. emily (7 Posts)
  99. jwendt@iscinternational.com (1 Post)
  100. sinma (1 Post)
  101. ItsMee (3 Posts)
  102. Nic (1 Post)
  103. sksoft (4 Posts)
  104. mjhaston (1 Post)
  105. mattb (4 Posts)
  106. jenner (1 Post)
  107. 2le (1 Post)
  108. bluefeet (1 Post)
  109. PremiereGlobal (2 Posts)
  110. rtozati (1 Post)
  111. KirkOlson (4 Posts)
  112. False Maria (1 Post)
  113. jbd007 (5 Posts)
  114. c.barca (1 Post)
  115. nctag (34 Posts)
  116. kfironit123 (1 Post)
  117. Emt (1 Post)
  118. ub3rn00b (12 Posts)
  119. Ballsacian1 (1 Post)
  120. mprice (1 Post)
  121. srikanthnukala (2 Posts)
  122. Mots (2 Posts)
  123. yhwh (1 Post)
  124. el777 (1 Post)
  125. JoomlaMan (1 Post)
  126. sanjivank (1 Post)
  127. sdetweil (1 Post)
  128. Snakehit (1 Post)
  129. msynovic (2 Posts)
  130. Snuyt (1 Post)
  131. as (2 Posts)
  132. pkmiec (2 Posts)
  133. epoks (2 Posts)
  134. NoahK17 (1 Post)
  135. praneeth528 (2 Posts)
  136. bemn (1 Post)
  137. Remy (1 Post)
  138. Daniel_Brazil_Campinas (1 Post)
  139. freddyk (4 Posts)
  140. dshorthouse (1 Post)
  141. dahman7 (1 Post)
  142. Canard64 (1 Post)
  143. dkuz (2 Posts)
  144. xsuniwov (1 Post)
  145. neha.chopra (1 Post)
  146. Eric24 (2 Posts)
  147. Mandeep (2 Posts)
  148. ttbgwt (6 Posts)
  149. suzan (1 Post)
  150. tenthcup (5 Posts)
  151. excelsis (5 Posts)
  152. DaveBrewster (6 Posts)
  153. rusty124 (1 Post)
  154. bcmatz (3 Posts)
  155. bjcullinan (1 Post)
  156. sstratton (4 Posts)
  157. Scorpie (1 Post)
  158. supercharge2 (3 Posts)
  159. Bing Qiao (6 Posts)
  160. tmaung (1 Post)
  161. xenon (4 Posts)
  162. sureaintme (5 Posts)
  163. animeshsingh (2 Posts)
  164. NicoP (29 Posts)
  165. cyfl (2 Posts)
  166. simplessus (1 Post)
  167. imnphd (1 Post)
  168. mono blaine (5 Posts)
  169. Kango_V (5 Posts)
  170. cain06 (1 Post)
  171. charak (2 Posts)
  172. vayumahesh (1 Post)
  173. Gabor Turi (1 Post)
  174. daeghran (2 Posts)
  175. maceido (5 Posts)
  176. sgoswami (1 Post)
  177. rubaiz (1 Post)
  178. Jabe (1 Post)
  179. ecarrenho (1 Post)
  180. mpereira (1 Post)
  181. changhua (4 Posts)
  182. alexw23 (1 Post)
  183. fxmisticat (5 Posts)
  184. extjssiva (1 Post)
  185. f1xxx3r (1 Post)
  186. SimoAmi (1 Post)
  187. aj3423 (1 Post)
  188. kkothari (2 Posts)
  189. jmariani (28 Posts)
  190. ibet (3 Posts)
  191. SunWuKung (1 Post)
  192. micgala (2 Posts)
  193. inptisto (1 Post)
  194. TheColonel (1 Post)
  195. cdeguzman (1 Post)
  196. ektanit (6 Posts)
  197. James Wang (1 Post)
  198. PCBingoB (1 Post)
  199. flylaputa (1 Post)
  200. MacSimon (1 Post)
  201. pibree (2 Posts)
  202. Markus (1 Post)
  203. aleister999 (2 Posts)
  204. adamli (2 Posts)
  205. jmaisel (4 Posts)
  206. pdugas (1 Post)
  207. plaak (1 Post)
  208. coriolis (2 Posts)
  209. weazil (4 Posts)
  210. fwiethof (1 Post)
  211. meroy (19 Posts)
  212. lxf1101 (2 Posts)
  213. stephen.friedrich (3 Posts)
  214. vinepod (1 Post)
  215. yuriy (2 Posts)
  216. completej (1 Post)
  217. dan_jf (1 Post)
  218. harel (2 Posts)
  219. veenvliet.morion (2 Posts)
  220. yura620310 (1 Post)
  221. barncat (1 Post)
  222. DmitrySistor (2 Posts)
  223. pclovec (3 Posts)
  224. Ranma13 (1 Post)
  225. swang (4 Posts)
  226. calugaru.cristian (5 Posts)
  227. mohan_b (1 Post)
  228. karlsnyder0 (2 Posts)
  229. JimmyInMD (2 Posts)
  230. tolitius (1 Post)
  231. a.labeau (2 Posts)
  232. benjixx (1 Post)
  233. psm1963 (1 Post)
  234. sosy (1 Post)
  235. nosferatum (10 Posts)
  236. daddie888 (1 Post)
  237. ixvivxi (1 Post)
  238. dp814082 (1 Post)
  239. nickelj (4 Posts)
  240. wifi4psp (1 Post)
  241. drian (1 Post)
  242. su-aska (1 Post)
  243. SebTardif (1 Post)
  244. danceric (1 Post)
  245. DTSman (1 Post)
  246. brian.moeskau (1 Post)
  247. Neethi (2 Posts)
  248. sango (1 Post)