HH Synthetic -- plugin for automated migration from Kotlin synthetics to View Binding.

Overview

hh-histories-view-binding-migration-plugin

HH Synthetic -- plugin for automated migration from Kotlin synthetics to View Binding.

Plugin usage

Try plugin

You can try download artifact from Releases, then install it from disk into your Android Studio Arctic Fox.

Attention!

This plugin was tested only for Android Studio Arctic Fox.

Setup for local development

  • Create local.properties file in root folder with the following content:
# Properties for launching Android Studio
androidStudioPath=/Users/p.strelchenko/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/203.7935034/Android Studio.app
androidStudioCompilerVersion=203.7717.56

Here:

  • androidStudioPath - Path to your local Android Studio;
  • androidStudioCompilerVersion - this version you could get from About screen of Android Studio

Android Studio About

You might also like...
A Kotlin compiler plugin implementation of AutoService

auto-service-kt A Kotlin compiler plugin implementation of AutoService. Usage Simply add the auto-service-kt Gradle Plugin. plugins { id("dev.zacswe

CKlib is a gradle plugin that will build and package C/C++/Objective-C code for Kotlin/Native.

C Klib CKlib is a gradle plugin that will build and package C/C++/Objective-C code for Kotlin/Native. The Problem When you want to access C-etc code f

Kotlin Native's Clang Compiler Plugin

Kotlin Native's Clang Compiler Plugin This plugin makes possible to use konon clang compiler. Support targets: Target Name Host compatibility linux_x6

Wiroforce godot plugin for kotlin
Wiroforce godot plugin for kotlin

Wiroforce Godot Plugin The purpose of this project is the creation of a plugin f

GPP is Android's unofficial release automation Gradle Plugin. It can do anything from building, uploading, and then promoting your App Bundle or APK to publishing app listings and other metadata.
GPP is Android's unofficial release automation Gradle Plugin. It can do anything from building, uploading, and then promoting your App Bundle or APK to publishing app listings and other metadata.

Gradle Play Publisher Gradle Play Publisher is Android's unofficial release automation Gradle Plugin. It can do anything from building, uploading, and

A Gradle plugin to report the number of method references in your APK on every build.
A Gradle plugin to report the number of method references in your APK on every build.

Dexcount Gradle Plugin A Gradle plugin to report the number of method references in your APK, AAR, or java module. This helps you keep tabs on the gro

This plugin help you to set material design icon to your project.
This plugin help you to set material design icon to your project.

Android Material Design Icon Generator Plugin This plugin help you to set material design icons to your Android project. Installation Manually Downloa

IntelliJ Plugin for Android Parcelable boilerplate code generation.
IntelliJ Plugin for Android Parcelable boilerplate code generation.

IntelliJ/Android Studio Plugin for Android Parcelable boilerplate code generation This tool generates an Android Parcelable implementation based on fi

A plugin for Android Studio and Intellij IDEA that speeds up your day to day android development.
A plugin for Android Studio and Intellij IDEA that speeds up your day to day android development.

ADB Idea A plugin for Android Studio and Intellij IDEA that speeds up your day to day android development. The following commands are provided: Uninst

Comments
  • Some improvements for plugin

    Some improvements for plugin

    • Add bindings after Companion Objects (if we have one)
    • Code formatting after changes (place multiple binding properties on new lines)
    • Support for bindings in Activities (by lazy delegate)
      • Added proper replacement for setContentView function
    • Support for multiple bindings in single .kt file:
      • For single bindings: "binding" naming
      • For multiple bindings: "firstLayoutNameBinding", "secondLayoutNameBinding" etc. naming
    • Support for "obsolete" binding using, without ViewBindingPropertyDelegate plugin:
      • Added separate action
      • Added binding initialization in Fragments onCreateView()
      • Added binding disposing in Fragments onDestroyView()
      • Added binding initialization in Views and try to remove existing view inflaters in init blocks
    • Fix adding view binding imports without leading whitespace
    • Added balloon notifications
    opened by steeshock 3
  • How to handle layout with <include> tag and/or subview

    How to handle layout with tag and/or subview

    I have already tried this library, cool. But it cannot handle the "include" tag.

    for the example, I have layout like this:

    <include
        android:id="@+id/container_a"
        layout="@layout/layout_a" />
    

    and my kotlin file like this:

    container_a.visibility = View.GONE // result should be `containerA.root.visibility = View.GONE`
    

    Thank you.

    additional notes: This one is just a little improvement, maybe we also need to handle subview (containerA.blablaView.visibility)

    opened by irsalshabirin 0
  • After migration, missing viewBindingPlugin?

    After migration, missing viewBindingPlugin?

    Nice idea for a plugin! I was dreading having to do this by hand for a large project.

    I tried this out with a project, after migrating a file I get the error on

    import ru.hh.shared.core.ui.framework.fragment_plugin.common.viewbinding.viewBindingPlugin

    Is it also necessary to add a library to get this plugin? If so what needs to be added to the dependencies in build.gradle?

    opened by matthewmayer 3
Releases(build-27)
Owner
HeadHunter
HeadHunter
BuildPlots-Plugin - PaperMC-Plugin for build contests written in Kotlin.

BuildPlotsPlugin PaperMC-Plugin for build contests. This is my first time using Kotlin and the first plugin I've written after a long time. It is stil

Lukas Heinzl 0 Jan 1, 2022
gradle-android-scala-plugin adds scala language support to official gradle android plugin

gradle-android-scala-plugin gradle-android-scala-plugin adds scala language support to official gradle android plugin. See also sample projects at htt

saturday06 345 Dec 10, 2022
eventbus-intellij-plugin 3.8 0.0 L1 Java Plugin to navigate between events posted by EventBus.

eventbus-intellij-plugin Plugin to navigate between events posted by EventBus. Post to onEvent and onEvent to Post Install There are two ways. Prefere

Shinnosuke Kugimiya 315 Aug 8, 2022
IntelliJ Idea Astor Plugin is a plugin that integrates Astor in Intellij Idea

IntelliJ Idea Astor Plugin IntelliJ Idea Astor Plugin is a plugin that integrates Astor in Intellij Idea. It communicates with a local/remote program

null 4 Aug 28, 2021
Intellij-platform-plugin-template - IntelliJ Platform Plugin Template

IntelliJ Platform Plugin Template TL;DR: Click the Use this template button and

null 0 Jan 1, 2022
K6-intellij-plugin - IntelliJ-based Plugin to run k6 tests locally or in the k6 Cloud from your IntelliJ IDE

IntelliJ-based Plugin to run k6 tests locally or in the k6 Cloud from your Intel

Mikhail Bolotov 8 Jan 2, 2023
Ownership-gradle-plugin - Gradle code ownership verification plugin

Gradle code ownership verification plugin A gradle plugin that will verify owner

null 4 Dec 15, 2022
A Intellij platform plugin to view truetype font file(.ttf) that includes icon glyphs usually

Icon Font Viewer 一个用于查看.ttf字体文件的Intellij平台(支持IDEA/Android Studio等)的插件,通常用于展示icon

null 7 Oct 22, 2022
Statistics View IntelliJ Plugin

StatisticsView IntelliJ plugin enables logging IDE code browsing activities and shows aggregated statistical information (e.g. accumulated file opened times) in the IDE Project view.

Yaohui Wang 9 Dec 12, 2022