@Override
      public boolean onTouch(View v, MotionEvent event) {

        // Change the background color on touch
        if (MotionEvent.ACTION_DOWN == event.getAction()) {

          text.setBackgroundColor(row.getResources().getColor(android.R.color.holo_blue_light));

          // Act on events
        } else if (MotionEvent.ACTION_UP == event.getAction()) {

          text.setBackgroundColor(row.getResources().getColor(android.R.color.white));

          // Remove default entry
          if (entry.equals(row.getResources().getString(R.string.cmenu_remstd))) {

            Preferences.setDefaultFile(row.getContext(), "");
            dialog.dismiss();

            // Start navigation
          } else if (entry.equals(row.getResources().getString(R.string.cmenu_nav))) {

            building.showNavigation();
            dialog.dismiss();

            // Display share options
          } else if (entry.equals(row.getResources().getString(R.string.cmenu_share))) {

            building.showShareOptions();
            dialog.dismiss();

            // Show Building information
          } else if (entry.equals(row.getResources().getString(R.string.cmenu_info))) {

            building.showBuildingInformation();
            dialog.dismiss();

            // Display the legende
          } else if (entry.equals(row.getResources().getString(R.string.cmenu_legende))) {

            building.showSymbolLegend();
            dialog.dismiss();

            // Set filter
          } else if (entry.equals(row.getResources().getString(R.string.cmenu_filter))) {

            building.showFilterOptions();
            dialog.dismiss();
          }
          v.performClick();

          // Change the background color back to normal when leaving the touch area
        } else if (MotionEvent.ACTION_CANCEL == event.getAction()) {

          text.setBackgroundColor(row.getResources().getColor(android.R.color.transparent));
        }
        return true;
      }