OSDN Git Service

HScroll関連の調整
authorHiromitsu Shioya <hiroshica@gmail.com>
Thu, 14 Jan 2010 18:13:21 +0000 (03:13 +0900)
committerHiromitsu Shioya <hiroshica@gmail.com>
Thu, 14 Jan 2010 18:13:21 +0000 (03:13 +0900)
AndroidManifest.xml
src/com/hiroshica/android/input/nicownn2/TextCandidatesViewManager.java

index 039cc11..9963268 100644 (file)
@@ -16,7 +16,7 @@
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.hiroshica.android.input.nicownn2"
-         android:versionCode="1204" android:versionName="1.2.0.4">
+         android:versionCode="1205" android:versionName="1.2.0.5">
   <uses-permission xmlns:android="http://schemas.android.com/apk/res/android" android:name="android.permission.VIBRATE"/>
     <application android:icon="@drawable/icon" android:label="NicoWnn">
 
index ade70c8..9610bee 100644 (file)
@@ -440,7 +440,7 @@ public class TextCandidatesViewManager implements CandidatesViewManager, Gesture
                params.addRule(RelativeLayout.ALIGN_PARENT_TOP);
                params.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
                TextView textView = createCandidateView();
-               textView.setLayoutParams(params);
+               //textView.setLayoutParams(params);
                mViewCandidateList2nd.addView(textView);
                mViewCandidateTemplate = textView;
 
@@ -636,9 +636,8 @@ public class TextCandidatesViewManager implements CandidatesViewManager, Gesture
 
                setViewLayout(CandidatesViewManager.VIEW_TYPE_NORMAL);
 
-               //display1stCandidates(converter, mViewWidth * 2);
-               display1stCandidates(converter, mViewWidth + (mViewWidth / 2));
-               mTargetScrollWidth = mViewWidth / 4;
+               display1stCandidates(converter, mViewWidth * 3);
+               mTargetScrollWidth = mViewWidth / 2;
                
                //if (false == mIsLockHScroll) {
                mViewBodyHScroll.scrollTo(0, 0);
@@ -1118,6 +1117,7 @@ public class TextCandidatesViewManager implements CandidatesViewManager, Gesture
 
        /** @see android.view.GestureDetector.OnGestureListener#onDown */
        public boolean onDown(MotionEvent arg0) {
+               checkUpdate1stCandidates(0);
                return false;
        }
 
@@ -1164,9 +1164,11 @@ public class TextCandidatesViewManager implements CandidatesViewManager, Gesture
                        }
                }
                //if (arg0 != null && arg1 != null && arg1.getX() > arg0.getX()) {
+               /*
                if (arg2 > 0) {
-                       checkUpdate1stCandidates();
+                       checkUpdate1stCandidates(arg2);
                }
+               */
                return consumed;
        }
 
@@ -1180,19 +1182,22 @@ public class TextCandidatesViewManager implements CandidatesViewManager, Gesture
                if (mViewBodyVScroll.getScrollY() != 0) {
                        mIsScroll = true;
                }
-               checkUpdate1stCandidates();
+               if (MotionEvent.ACTION_MOVE == arg1.getAction()) {
+                       checkUpdate1stCandidates(arg1.getX() - arg0.getX());
+               }
                return false;
        }
        /*
         * 
         */
-       private void checkUpdate1stCandidates() {
+       private void checkUpdate1stCandidates(float distx) {
                if (true == mIsFullView) {
                        return;
                }
                boolean update = false;
-               int getscroll = mViewBodyHScroll.getScrollX();
-               int size = mWnnWordArray.size();
+               int size       = mWnnWordArray.size();
+               int getscroll  = mViewBodyHScroll.getScrollX();
+               getscroll += (int)distx;
                while ((getscroll >= mTargetScrollWidth) && (m1stWordCount < size)) {
                        display1stCandidates(mConverter, mViewWidth);
                        mTargetScrollWidth += mViewWidth;
@@ -1222,7 +1227,11 @@ public class TextCandidatesViewManager implements CandidatesViewManager, Gesture
         */ 
        public int measureText(CharSequence text, int start, int end) {
                TextPaint paint = mViewCandidateTemplate.getPaint();
-               return (int)paint.measureText(text, start, end);
+               int getwidth = (int)paint.measureText(text, start, end);
+               if (CANDIDATE_MINIMUM_WIDTH > getwidth) {
+                       getwidth = CANDIDATE_MINIMUM_WIDTH;
+               }
+               return getwidth;
        }
 
        /**