aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Code completion in custom views now picks up newly added attrs"Tor Norbye2012-05-294-10/+111
|\
| * Code completion in custom views now picks up newly added attrsTor Norbye2012-05-254-10/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When ADT encounters a custom view, it creates a view descriptor for that custom view, and in ADT 20 it also finds the associated styles and records these as attributes, which means code completion and the property sheet will show these properties. However, once the descriptor has been lazily created, it never changes. If you go and edit the styles.xml file specifying the attributes for your custom view, you need to restart the IDE before code completion will pick up these changes. This changeset makes this behavior more dynamic: It will now pick up edits to the files specifying styles for a custom view. Change-Id: I365119e18c74378a0a039c1e7a22641c94acf002
* | Merge "Support selector syntax for thumbnails in templates"Tor Norbye2012-05-2912-103/+237
|\ \
| * | Support selector syntax for thumbnails in templatesTor Norbye2012-05-2512-103/+237
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes the thumbnail handling from templates from ad-hoc attributes to a more selector-centric system. The template can specify one or more thumbnails along with parameter values associated with those thumbnails. When the user edits an attribute, the wizard reevaluates the thumbnail and picks the best match (meaning one of the thumbnails that matches all the parameter values, and among those the one that matches the most.) (This changeset also moves the metadata code into a new class.) Change-Id: Ic75d58573df5b2ea200c6b2861bbf36ce17ea1c3
* | | Merge "logcat: Allow users to set colors for different priorities."Siva Velusamy2012-05-254-17/+188
|\ \ \
| * | | logcat: Allow users to set colors for different priorities.Siva Velusamy2012-05-254-17/+188
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch enables users to customize the colors used for log messages of different priority levels. These settings are available in the Android -> Logcat -> Colors preference page. This fixes: http://code.google.com/p/android/issues/detail?id=31494 Change-Id: I9430f573f84f09d00bfe25d6e53eeccf4e338e9d
* | | | Merge "Remove check to UiElementNode.hasError() in format call"Tor Norbye2012-05-251-16/+14
|\ \ \ \
| * | | | Remove check to UiElementNode.hasError() in format callTor Norbye2012-05-251-16/+14
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The XML editor would check node.hasError() and only format if that method returned false. The idea is that it shouldn't attempt to prettyprint a DOM that might contain errors. However, turns out that method is unrelated to the DOM model; it's simply an error state which can be *set* on nodes. This is used by for example the manifest editor to put error icons on certain fields. However, it is never set on nodes in the layout editor, and calling hasError() isn't cheap (because it iterates over all attributes and recursively over all the children checking the hasError state on all of them). Since this will never return true, we might as well remove the call. Change-Id: Iae176c8de1bb28460835a41faad75324acf97ebf
* | | | Merge "NPE fix."Tor Norbye2012-05-251-1/+7
|\ \ \ \ | |_|/ / |/| | / | | |/ | |/|
| * | NPE fix.Tor Norbye2012-05-251-1/+7
|/ / | | | | | | Change-Id: I5885993d43b8edbf965314fe6f3248262c87a251
* | Merge "Include release names in minSdkVersion code completion"Tor Norbye2012-05-253-41/+42
|\ \ | |/ |/|
| * Include release names in minSdkVersion code completionTor Norbye2012-05-253-41/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | Fix the code completion in manifest files such that when completing the minSdkVersion value, it lists not just the API numbers but the Android version and code names for all versions. This takes advantage of the new version name table, where the previous versions only listed names it could look up from the installed SDKs. This changeset also uses the same mechanism for completing targetSdkVersion. Change-Id: I61f06047ba4bf112da3b980c0e85325e9f9ab7c5
* | Merge "Fix style resource completion, and update unit tests"Tor Norbye2012-05-2512-58/+55
|\ \
| * | Fix style resource completion, and update unit testsTor Norbye2012-05-2412-58/+55
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changeset fixes code completion in style definitions (which did not work when the attribute being completed was not a known Android attribute, but was referencing one). It also updates the various code completion unit tests, which were no longer passing because the golden files contained the attribute types in a different order (it now deliberately lists references after other types, like colors). It also changes the default editors used in completion unit tests from the legacy editor types to the new common editor type, and closes the editors after each completion, to avoid out-of-memory scenarios. Change-Id: I5f947c9175524f12cb4d0a5590b0bab23a4a07dc
* | Merge "Fix misc minor issues"Tor Norbye2012-05-256-10/+27
|\ \ | |/ |/|
| * Fix misc minor issuesTor Norbye2012-05-256-10/+27
|/ | | | | | | | Fixes some NPEs and avoid logging a common issue (which is already listed inline in the layout editor error display). Change-Id: I6a62f37ec845ca081e1dc7fc8ad857a7ec4e9a29
* Merge "Added check for mText property in getText()"Jean-Baptiste Queru2012-05-241-1/+5
|\
| * Added check for mText property in getText()Diego Torres Milano2012-05-031-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | Sometimes the node's property is not 'text:mText' but just 'mText'. A new test was added to getText() to check for both properties and not throwing unnecessarily the RuntimeException("No text property on node"). This has been tested by monkyrunner tests using EasyMonkeyDevice that runs correctly after this patch is applied. Change-Id: I5399169b906e28eeee0a17ab298a724cc5bb9b51 Signed-off-by: Diego Torres Milano <dtmilano@gmail.com>
* | Merge "Improved lint integration in the layout editor"Tor Norbye2012-05-2436-290/+1336
|\ \
| * | Improved lint integration in the layout editorTor Norbye2012-05-2436-290/+1336
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changeset improves the lint integration in the layout editor in the following ways: - The outline now shows error or warning indicators in the bottom left corners of the icons for any specific views that have one or more lint warnings associated with them. There is a tooltip if you hover over the icon which displays the lint message. - The layout editor canvas displays little warning indicators in the bottom right corner of the views (provided the views are larger than the icons; e.g. empty layouts, as well as views that are zoomed out very far will not show lint indicators). - There is a tooltip hover in the canvas as well. In order to avoid obscuring content, it shows up at the bottom of the view. It might also show multiple lines: one for each lint warning in a view near the cursor. (This is important if you for example have a warning both on a layout and a widget inside that layout.) - The error indicator in the upper right corner, which used to be a (too small) warning icon is instead an issue count now. Clicking on the issue count opens up the lint file dialog. - The lint file dialog now contains a button to suppress issues by attributes (and fixed some other minor bugs related to keeping expanded categories expanded across refreshes and setting an initial selection). - Lint is run automatically when the layout is opened up (3 seconds after the first successful render). This makes the error indicators show up (until now, it would only run single-file-lint after the first edit operation). Change-Id: I306aca390d70bf025f5e86fc21ae7b6bc0036d8d
* | | Merge "New Template Wizard support"Tor Norbye2012-05-24100-137/+6144
|\ \ \ | |/ / |/| |
| * | New Template Wizard supportTor Norbye2012-05-22100-137/+6144
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changeset adds several new templates, to create a new project, a new activity, a new custom view, etc. More importantly, it contains support for these wizards (and the corresponding code generation) to be driven by templates. A wizard contains metadata which provides a name, description and icon for the template, as well as a list of parameters, along with type and constraint metadata for those parameters. When a wizard is created for this template, it automatically adds UI elements to input the parameters and to validate the input. Parameters can also specify their default values as templated expressions using the other variables on the page, so in the New Blank Activity wizard for example, editing the activity name automatically updates the suggested layout name, by repeatedly evaluating a template expression to compute a layout name from an activity name. There's a recipe file for each template which states what actions to take to create the template. In addition to obviously copying resources (such as icons and jar files) and instantiating templates (to rewrite text using variables and FreeMarker logic), it can also merge XML contents (to for example insert activity registration metadata into the manifest file, or add string definitions to the strings.xml file), and it can cause files to be opened when the template is created. Tne new wizards also use JFace's decorator support to provide help and to mark text fields that contain errors, when one or more of the page fields do not validate, as well as to show tip text along the bottom of the page. One example of this is that it explains what a "package name" is when the package field has focus. This changeset also contains a "Template Development Wizard" which lets you point to a local directory containing a template definition, and run a test wizard from there. This is useful for developing, debugging and testing templates. Change-Id: I08e7d2464a1ef00d09517f0154c42681249a7ff6
* | | Merge "Fix interface method lookup in the API Detector"Tor Norbye2012-05-223-5/+47
|\ \ \ | |/ / |/| |
| * | Fix interface method lookup in the API DetectorTor Norbye2012-05-223-5/+47
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | The api-versions.xml file is being updated in a separate CL to pick up some metadata which was missing, such as some enumeration constants. As part of the update, it's also removing the duplication of all the interface methods in the classes that implement those methods. This changeset updates the API Lookup code to handle this correctly. It will now properly visit the interface hierarchy, not just the superclass hierarchy, when computing the full set of methods and fields inherited into a class, as well as when it determines the introduced-in API level for each method. Change-Id: If19697b9812eaa072536057daa5cffe3589a0c75
* | Merge "Setting to enable preview packages."Raphael Moll2012-05-2211-54/+253
|\ \
| * | Setting to enable preview packages.Raphael Moll2012-05-2211-54/+253
| | | | | | | | | | | | Change-Id: I7af78e81e5433396c7a1039782ab8ceda35187a0
* | | Merge "Fix file permissions"Tor Norbye2012-05-229-0/+0
|\ \ \
| * | | Fix file permissionsTor Norbye2012-05-229-0/+0
|/ / / | | | | | | | | | | | | | | | | | | Remove the execute permission on some source files in the repository. Change-Id: Ic33ee9b20fd4fa9824487c2d8741f5668a0ffcfb
* | | Merge "Manifest merge for ADT."Xavier Ducrohet2012-05-2112-94/+310
|\ \ \
| * | | Manifest merge for ADT.Xavier Ducrohet2012-05-2112-94/+310
| |/ / | | | | | | | | | Change-Id: I635098594605af497a8b7d244e502385b8f34d1e
* | | Merge "Move XML code to the common library"Tor Norbye2012-05-21104-523/+567
|\ \ \
| * | | Move XML code to the common libraryTor Norbye2012-05-20104-523/+567
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ManifestMerger library needs to look up the prefix to use for the Android namespace, and the Document.lookupPrefix method is not implemented by the Eclipse DOM implementation (which throws an exception). However, we have an implementation of this in the ADT plugin. This changeset creates a new XmlUtils class in the common/ library (which is accessible by both ADT and the manifest merger, and the anttasks where the manifest merger is used), and moves the namespace prefix lookup code in there. It also moves the XML escape methods into that class. It also adds a new method to the ManifestMerger for merging directly from documents (rather than files), and makes sure that all the merging code goes via the prefix utility method rather than calling the document.lookupPrefix method. Finally, it moves the various string constants associated with XML namespaces into the single XmlUtils class, since these were spread across several different classes before (and many of them are needed in the XmlUtils class). The vast majority of the diffs in this changeset are related to simple import statement changes to reflect the new locations of these constants. Change-Id: Ib8f3d0e5c89e47e61ea509a23925af7b6580abee
* | | | Merge "ndk: Show DeviceChooserDialog only when necessary."Siva Velusamy2012-05-213-63/+117
|\ \ \ \ | |_|/ / |/| | |
| * | | ndk: Show DeviceChooserDialog only when necessary.Siva Velusamy2012-05-213-63/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ADT launcher has a cache of what device was used for a particular launch, and reuses that device if the user has specified that the same device should be used for future launches. This patch moves that cache out to a separate class and reuses the same cache for the NDK launcher as well. Change-Id: I8aa266746e33dac82c9f16ca8877230e26c45c09
* | | | Merge "ndk: Display suggestion to enable NDK_DEBUG"Siva Velusamy2012-05-213-2/+6
|\ \ \ \ | |/ / /
| * | | ndk: Display suggestion to enable NDK_DEBUGSiva Velusamy2012-05-213-2/+6
|/ / / | | | | | | | | | | | | | | | | | | If there is an error while launching gdbserver, display a hint suggesting that NDK_DEBUG=1 should be added to the make command. Change-Id: Ie563365019a5d40cfa403bccaa0e659f4a9f7bb9
* | | Merge "ndk: Fix license header"Siva Velusamy2012-05-2111-22/+22
|\ \ \
| * | | ndk: Fix license headerSiva Velusamy2012-05-2111-22/+22
|/ / / | | | | | | | | | | | | | | | NDK plugin is under EPL. Change-Id: I2af41f4e390511ed18474968c9f6de1bb6621774
* | | Merge "Fix resource validator for style resources"Tor Norbye2012-05-212-1/+9
|\ \ \
| * | | Fix resource validator for style resourcesTor Norbye2012-05-182-1/+9
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes issue 31414: Extract style from XML layout doesn't allow . (dot) in the name The root issue is that in value files, you can use "." as part of the resource name; it gets remapped to _ in the R file. Change-Id: I59bf9d7ceb36be832dde64f557d023dd6d1d29e0
* | | Merge "SDK Manager: Settings to control download cache."Raphael Moll2012-05-2110-172/+422
|\ \ \
| * | | SDK Manager: Settings to control download cache.Raphael Moll2012-05-1810-172/+422
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SDK Manager > Tools > Options now has a checkbox to deactivate the download cache. It also indicates the path to the cache directory, its size and a button to clear the cache immediately. This only affects the sdk manager files for the download cache, it doesn't clear other cached files such as the lint binaries. Also restructured the settings controller a tiny bit. There's more that could be restructured here but it's not a priority right now. Change-Id: I474e6155bdc041770f3f7664366d0d92bd96d9b0
* | | Merge "ndk: Add Ndk Debug Launch Shortcut."Siva Velusamy2012-05-218-34/+220
|\ \ \
| * | | ndk: Add Ndk Debug Launch Shortcut.Siva Velusamy2012-05-188-34/+220
| |/ / | | | | | | | | | Change-Id: I41545372977a1505a6131238c92df16c91552317
* | | Merge "31592: "The <activity> xxx is not registered in the manifest""Tor Norbye2012-05-215-0/+47
|\ \ \
| * | | 31592: "The <activity> xxx is not registered in the manifest"Tor Norbye2012-05-215-0/+47
| |/ / | | | | | | | | | | | | | | | | | | | | | Handle cases where the package name contains upper case characters. http://code.google.com/p/android/issues/detail?id=31592 Change-Id: I0db7831cc34fc4497de46df75f1e19e908ac13fd
* | | Merge "NPE fix when launching test project"Siva Velusamy2012-05-201-6/+6
|\ \ \ | |/ / |/| |
| * | NPE fix when launching test projectskyisle2012-05-211-6/+6
|/ / | | | | | | | | | | | | | | When launching test proejct, it start to read test size setting from the launch configuration. If it is never set before, it can be null. Change-Id: I8493c5aca20969c9fe0fda1b210f432022cd099f Signed-off-by: skyisle <skyisle@gmail.com>
* | Merge "ndk: Add support for debugging on mips target"Siva Velusamy2012-05-183-21/+40
|\ \
| * | ndk: Add support for debugging on mips targetSiva Velusamy2012-05-183-21/+40
| | | | | | | | | | | | Change-Id: I47cb9636192005d91166a6949c8b40ef88d0905f