Also adjust to dynamic permissions after bumping target-SDK.
There still is some confusion about the concept of "external storage" in
the code. LocalDocuments already is "external storage" - clean that up a
little and use AppCompat function instead of using a legacy class for
ExternalDocuments provider.
Doesn't help for broken ROMs though, that would need guessing pathname
for a mounted SD (in addition to separate storage partition of builtin
storage).
Also c6e8c96d50 incorrectly changed the
conditional around, making the whole ExternalDocumentsProvider useless/a
copy of the Local one (i.e. the primary, first returned by the system).
Real fix for tdf#99539 likely was 66be4feef7
Change-Id: I88ca7742c0f2e89d63c338c8852ad88be0a46e4b
Reviewed-on: https://gerrit.libreoffice.org/45572
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
functionality to create new documents was added for tdf#106325 with
commit 1503769fe1
However the commit had some issues, most notably clipping of the shadow
effect and alignment issues to to scaling down (via the animation
effect, took me quite a while until I looked at that) with having a
centered pivot. I think it was due to those alignment issues that the
label was set to a fixed with - which is a problem for future
translation.
This commit:
* changes the animation to not scale down the initial views
* changes the FABs' setting to use compatPadding - this not only ensures
enough room for the shadow, but also allows for consistent look across
android versions. Side effect is that it needs more height, so
* the effect was adjusted accordingly, to shrink to/expand from the
lower-right corner of the parent view, instead of "mid-air"
* the labels were given a proper background drawable with rounded
corners and some padding for a (much more9 polished look
* formatting of the labels was split out to a style, for ease of
tweaking the looks
* add tools:visibility statement to see the elements in layout editor
* fixed the strings for the labels (and ID) to some less awkward ones
Change-Id: Ifd2d90ec8d23e40603edff19c9af9e0b32090c9f
Reviewed-on: https://gerrit.libreoffice.org/42033
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Added ability to insert pictures to Android Viewer.
You can take photo or select photo from device or
the cloud (Google photos, Dropbox). You can also
compress the picture before inserting it with multiple
compress grades. So far, inserting doesn't work for
Writer due LO native library issues (I think).
Change-Id: If6841ba04fe18585703c8b85909cf39747dbbc2f
Reviewed-on: https://gerrit.libreoffice.org/41150
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
Added insert/delete/hide/show/optimal width or height
/adjust width or heigth to Calc. These options
show in a floating menu near the headers when the
user taps on the headers. Also added selection on
headers, i.e., user can drag on headers to select
multiple columns/rows.
Change-Id: I7e1994d1fa81d80c110def035c2c065e838b49ac
Reviewed-on: https://gerrit.libreoffice.org/40684
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Adding Calc UI. Two blank views are added as
row and column headers. CommonCanvasElement
is used to draw header cells on the views. [WIP]
Change-Id: I37eaa82805045ab650fd127e54c8421c61a4ea27
Reviewed-on: https://gerrit.libreoffice.org/38936
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
Rearranged activity_main.xml in order to fix the bug
of app bar invisible on lower versions of Android
devices.
Change-Id: Ic4ec9435ce9ef55a2596600c143114c899c30ac2
Reviewed-on: https://gerrit.libreoffice.org/36950
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
This commit adds the BottomSheetBehavior to the
formatting toolbar appearing from bottom.
CoordinatorLayout replaces the RelativeLayout in activity_main
and bottom toolbar is made the child of it.
Also, Add 'adjustPan' option to LibreOfficeMainActivity's
windowSoftInputMode flag so as to prevent soft keyboard
from pushing the views up
Change-Id: Ic9999c1177ac238bc7c482a69daec4e629fe6d93
Reviewed-on: https://gerrit.libreoffice.org/35768
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
This commit adds the ability to create a new document using
existing file system browsing in the app.
Usage of StorageAccessFramework to create new document
has been ditched as it is not backward compatible.
Change-Id: I852c3de337613cb01e689d532476d2c5f932c1b3
Reviewed-on: https://gerrit.libreoffice.org/36195
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
Added the function of focusing on the word you search. Two
methods were added. The first one is searchResultSelection,
which parses a JSONObject passed from LOK and focuses
on the text selection. The second one is
moveViewportToMakeSelectionVisible. It handles well both
documents and spreadsheets. I also tried to add a
search not found toast message. Also corrected a typo.
Change-Id: I4453c01afc520bf4deae4c2bd71adea2fe856d7e
Reviewed-on: https://gerrit.libreoffice.org/35715
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
This commit will add the ability to create a new document.
A FAB is used in home screen which on expansion gives
four options namely new writer document, new impress,
new Sheet or new Draw. Two new events loadNewDocument
and saveDocumentAs have been added.
Another major change includes the use of constraint layout
in LOUIActivity layout as it decreases nesting of views and
improves the app performance. This was needed because
of the new FAB layouts being added.
Support for vector drawables has been enabled.
Change-Id: Ia3ea17f73c0d8514f8ddb7b9a1cbd2ce7de6ac08
Reviewed-on: https://gerrit.libreoffice.org/35183
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
- added some initial implementation of the bottom tab-bar, which
has 3 tabs - character, paragraph, insert
- insert has not (completely) working insert line and rect shapes
- add ability to shring/grow font as alternative to select its size
Change-Id: If039f985403a8155d1e011953043f2979b4bfa91
Editing toolbar_bottom to include two more options:
1- Inserting numbering format lists
2- Inserting bullets format lists
Change-Id: I35f9238c45ab253ea75c693f7a76601408e36f9a
Reviewed-on: https://gerrit.libreoffice.org/35106
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
This makes it MUCH easier to see what sort option is currently
selected. Removed the mechanism of switching between labels when
the option is toggled, and instead put all the options into a menu.
Change-Id: I44142dc842d983d5438faeb06b67046bad235308
Reviewed-on: https://gerrit.libreoffice.org/34640
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Aleksandar Stefanović <theonewithideas@gmail.com>
This commit will combine the code of ListItemAdapter &
GridItemAdapter in LibreOfficeUIActivity to one
ExplorerItemAdapter which will handle both the view
types.
Change-Id: I45c1f5124afee82ff0b78f13609acd37be87fde1
Reviewed-on: https://gerrit.libreoffice.org/34680
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Aleksandar Stefanović <theonewithideas@gmail.com>
Tested-by: Aleksandar Stefanović <theonewithideas@gmail.com>
This commit improves the user experience of different
Document Providers in the app.
In case ext sd card is not present, the option is disabled
in Navigation Menu.
If the device does not support USB OTG,
the option is disabled.
LibreOfficeUIActivity registers a broadcast receiver
in onCreate which detects if a USB device is connected
and directs the user to Settings page to configure it.
In case of errors in configuration in any case,
user is directed to Settings activity after appropriate toast.
Change-Id: I680f78a679e2071ce8330c8168d7aa4e95041723
Reviewed-on: https://gerrit.libreoffice.org/34650
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Aleksandar Stefanović <theonewithideas@gmail.com>
I made them add programatically before, because I was unsure
whether the list was dynamic, but when I found out that the five
items on the list are actually static, I realized that it's better
to declare menu items in XML, because of the performance and
readibility.
Change-Id: I044abe356e51b26ac13328fcf451cabc9e70a3ea
Reviewed-on: https://gerrit.libreoffice.org/34342
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Aleksandar Stefanović <theonewithideas@gmail.com>
Moved file filtering from a toolbar spinner to a menu option.
The toolbar title is now free to display some other information.
The options are grouped, so they display radio buttons, and show
which item is selected. The radio group default selection is the
one defined in the settings.
Change-Id: Ib8d8716ec0038d2cd273423c756563680b84ae55
Reviewed-on: https://gerrit.libreoffice.org/34019
Reviewed-by: Aleksandar Stefanović <theonewithideas@gmail.com>
Tested-by: Aleksandar Stefanović <theonewithideas@gmail.com>
Moved "storage provider settings" to the navigation drawer, because
it makes more sense to put it below the storage options, than in a
overflow menu. Also, switched positions of "Settings" and "About",
because About is always the last item, by convention.
Change-Id: If6d621abfee7a3bdda28311a9cadf35ea674f852
Reviewed-on: https://gerrit.libreoffice.org/34073
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Aleksandar Stefanović <theonewithideas@gmail.com>
Explorer file view option in Settings is working now.
To listen to the preference updates in the app
a custom class SettingsListernerModel has been added.
SettingsListenerModel.java file contains the methods
to instantiate and set OnSettingPreferenceChangedListener
in the implementing class.
LibreOfficeUIActivity implements this listener
and it is triggered by onSharedPreferenceChanged() method
in SettingsActivity.
This class can also be used to listen to other preference changes
in Settings.
Change-Id: I063024df01cf183d2a6211648e32805795af20a9
Reviewed-on: https://gerrit.libreoffice.org/34012
Reviewed-by: Aleksandar Stefanović <theonewithideas@gmail.com>
Tested-by: Aleksandar Stefanović <theonewithideas@gmail.com>
The recents mechanism works like this:
Every time the file is opened, it saves that file to the shared
preferences set, by putting it in the first place, and removing the
oldest file from the list, if there are more than 4 recent files.
It also adds dynamic App Shortcuts if the device is 7.0 and above.
Screenshot: http://imgur.com/a/7kWOl
Edited the layout to add a new RecyclerView for recent items, as
well as the headers for both the recycler view's. Recent files
appear only if in home directory, below app bar and above the
file browser. This could be subjected to change in the future.
Screenshot of the recents section: http://imgur.com/a/qrqZq
Change-Id: I5c99aa26351d9ad2313e18b5b696d04a782e6155
Reviewed-on: https://gerrit.libreoffice.org/33759
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Replaced empty spinner with the document title in the Main (viewer)
activity. Had to edit the themes to not disable title, and edit the
manifest to make the desired activities use that theme. If the theme
is set in the "application" tag, it will apply the theme globablly.
Also cleaned up and tightened the ToolbarController.
Change-Id: I5099860787b5f84d01c98c5e53ade519c2f89cc4
Reviewed-on: https://gerrit.libreoffice.org/33306
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Aleksandar Stefanović <theonewithideas@gmail.com>