private void clearRows(){

		// i is which row we're in
		for(int i = 0; i < getGridHeight();){
			boolean hadEmptySpot = false;

			// j is which column we're in
			for(int j = 0; j < getGridWidth(); j++){
				if(!isSpotOccupied(i, j)){
					hadEmptySpot = true;
					break;
				}
			}

			//If there are not empty spots, the entire line is colors, delete it
			if(!hadEmptySpot){
				myAdapter.lineCleared();
				for(int j = 0; j < getGridWidth(); j++){
					myColors[i][j] = null;
				}

				// move all the above colors down
				// k for kolumn
				for(int k = i + 1; k < getGridHeight(); k++){
					for(int j = 0; j < getGridWidth(); j++){
						if(myColors[k][j] != null){
							myColors[k - 1][j] = myColors[k][j];
							myColors[k][j] = null;
						}
					}
				}
			}
			else{
				// if we didn't clear a row, check the one above it
				i++;
			}
		}
		repaint();
	}